[petsc4py] 01/01: New upstream version 3.8.0
Drew Parsons
dparsons at moszumanska.debian.org
Fri Nov 3 07:39:00 UTC 2017
This is an automated email from the git hooks/post-receive script.
dparsons pushed a commit to annotated tag upstream/3.8.0
in repository petsc4py.
commit 7256f504d9178a7e663b88986876210a54122567
Author: Drew Parsons <dparsons at debian.org>
Date: Fri Nov 3 14:19:04 2017 +0800
New upstream version 3.8.0
---
CHANGES.rst | 6 +
DESCRIPTION.rst | 2 +-
LICENSE.rst | 2 +-
PKG-INFO | 7 +-
README.rst | 8 +-
conf/baseconf.py | 8 +-
demo/dmplex/adaptivity.py | 30 +
demo/ode/ce.py | 4 +-
demo/ode/heat.py | 1 +
demo/ode/orego.py | 6 +-
demo/ode/rober.py | 12 +-
demo/perftest/driver.c | 13 +-
demo/poisson3d/del2mat.h | 5 +-
demo/wrap-cython/Bratu3Dimpl.c | 6 -
demo/wrap-cython/makefile | 4 +-
demo/wrap-cython/setup.py | 66 +-
demo/wrap-swig/Bratu3D.c | 6 -
docs/CHANGES.html | 37 +-
docs/LICENSE.html | 32 +-
docs/apiref/api-objects.txt | 892 +-
docs/apiref/class-tree.html | 55 +-
docs/apiref/class_hierarchy_for__dmcomposi.png | Bin 2097 -> 0 bytes
docs/apiref/class_hierarchy_for__dmda_vec_.png | Bin 1811 -> 0 bytes
docs/apiref/class_hierarchy_for__is_buffer.png | Bin 1069 -> 0 bytes
docs/apiref/class_hierarchy_for__mat_stenc.png | Bin 1418 -> 0 bytes
docs/apiref/class_hierarchy_for__vec_buffe.png | Bin 1265 -> 0 bytes
docs/apiref/class_hierarchy_for__vec_local.png | Bin 1581 -> 0 bytes
docs/apiref/class_hierarchy_for_ao.png | Bin 1985 -> 0 bytes
docs/apiref/class_hierarchy_for_asmtype.png | Bin 1639 -> 0 bytes
docs/apiref/class_hierarchy_for_assemblyty.png | Bin 1519 -> 0 bytes
docs/apiref/class_hierarchy_for_boundaryty.png | Bin 1703 -> 0 bytes
docs/apiref/class_hierarchy_for_comm.png | Bin 785 -> 0 bytes
docs/apiref/class_hierarchy_for_compositet.png | Bin 1671 -> 0 bytes
docs/apiref/class_hierarchy_for_convergedr.png | Bin 2005 -> 0 bytes
docs/apiref/class_hierarchy_for_convergedr_2.png | Bin 2005 -> 0 bytes
docs/apiref/class_hierarchy_for_convergedr_3.png | Bin 2005 -> 0 bytes
docs/apiref/class_hierarchy_for_dm.png | Bin 7308 -> 0 bytes
docs/apiref/class_hierarchy_for_dmcomposit.png | Bin 3331 -> 0 bytes
docs/apiref/class_hierarchy_for_dmda.png | Bin 2303 -> 0 bytes
docs/apiref/class_hierarchy_for_dmplex.png | Bin 2549 -> 0 bytes
docs/apiref/class_hierarchy_for_dmshell.png | Bin 3043 -> 0 bytes
docs/apiref/class_hierarchy_for_elementtyp.png | Bin 1246 -> 0 bytes
docs/apiref/class_hierarchy_for_equationty.png | Bin 1631 -> 0 bytes
docs/apiref/class_hierarchy_for_error.png | Bin 8157 -> 0 bytes
docs/apiref/class_hierarchy_for_exactfinal.png | Bin 1379 -> 0 bytes
docs/apiref/class_hierarchy_for_factorshif.png | Bin 1862 -> 0 bytes
docs/apiref/class_hierarchy_for_format.png | Bin 913 -> 0 bytes
docs/apiref/class_hierarchy_for_gamgtype.png | Bin 1520 -> 0 bytes
docs/apiref/class_hierarchy_for_gasmtype.png | Bin 1727 -> 0 bytes
docs/apiref/class_hierarchy_for_infotype.png | Bin 1134 -> 0 bytes
docs/apiref/class_hierarchy_for_insertmode.png | Bin 1325 -> 0 bytes
docs/apiref/class_hierarchy_for_interpolat.png | Bin 1517 -> 0 bytes
docs/apiref/class_hierarchy_for_is.png | Bin 1810 -> 0 bytes
docs/apiref/class_hierarchy_for_ksp.png | Bin 2130 -> 0 bytes
docs/apiref/class_hierarchy_for_lgmap.png | Bin 2337 -> 0 bytes
docs/apiref/class_hierarchy_for_log.png | Bin 699 -> 0 bytes
docs/apiref/class_hierarchy_for_logclass.png | Bin 1275 -> 0 bytes
docs/apiref/class_hierarchy_for_logevent.png | Bin 1194 -> 0 bytes
docs/apiref/class_hierarchy_for_logstage.png | Bin 1351 -> 0 bytes
docs/apiref/class_hierarchy_for_maptype.png | Bin 1368 -> 0 bytes
docs/apiref/class_hierarchy_for_mat.png | Bin 1944 -> 0 bytes
docs/apiref/class_hierarchy_for_mgtype.png | Bin 1419 -> 0 bytes
docs/apiref/class_hierarchy_for_mode.png | Bin 937 -> 0 bytes
docs/apiref/class_hierarchy_for_normschedu.png | Bin 1733 -> 0 bytes
docs/apiref/class_hierarchy_for_normtype.png | Bin 1347 -> 0 bytes
docs/apiref/class_hierarchy_for_normtype_2.png | Bin 1347 -> 0 bytes
docs/apiref/class_hierarchy_for_nullspace.png | Bin 2637 -> 0 bytes
docs/apiref/class_hierarchy_for_object.png | Bin 29622 -> 0 bytes
docs/apiref/class_hierarchy_for_option.png | Bin 1142 -> 0 bytes
docs/apiref/class_hierarchy_for_option_2.png | Bin 1142 -> 0 bytes
docs/apiref/class_hierarchy_for_options.png | Bin 1178 -> 0 bytes
docs/apiref/class_hierarchy_for_orderingty.png | Bin 1760 -> 0 bytes
docs/apiref/class_hierarchy_for_partitione.png | Bin 2404 -> 0 bytes
docs/apiref/class_hierarchy_for_partitione_2.png | Bin 1567 -> 0 bytes
docs/apiref/class_hierarchy_for_pc.png | Bin 1903 -> 0 bytes
docs/apiref/class_hierarchy_for_problemtyp.png | Bin 1459 -> 0 bytes
docs/apiref/class_hierarchy_for_random.png | Bin 2387 -> 0 bytes
docs/apiref/class_hierarchy_for_scatter.png | Bin 2377 -> 0 bytes
docs/apiref/class_hierarchy_for_scattermod.png | Bin 1764 -> 0 bytes
docs/apiref/class_hierarchy_for_schurfactt.png | Bin 1728 -> 0 bytes
docs/apiref/class_hierarchy_for_schurprety.png | Bin 1594 -> 0 bytes
docs/apiref/class_hierarchy_for_section.png | Bin 2420 -> 0 bytes
docs/apiref/class_hierarchy_for_sf.png | Bin 1882 -> 0 bytes
docs/apiref/class_hierarchy_for_side.png | Bin 983 -> 0 bytes
docs/apiref/class_hierarchy_for_size.png | Bin 927 -> 0 bytes
docs/apiref/class_hierarchy_for_snes.png | Bin 2050 -> 0 bytes
docs/apiref/class_hierarchy_for_sortype.png | Bin 1706 -> 0 bytes
docs/apiref/class_hierarchy_for_stenciltyp.png | Bin 1467 -> 0 bytes
docs/apiref/class_hierarchy_for_structure.png | Bin 1060 -> 0 bytes
docs/apiref/class_hierarchy_for_sys.png | Bin 904 -> 0 bytes
docs/apiref/class_hierarchy_for_tao.png | Bin 2064 -> 0 bytes
docs/apiref/class_hierarchy_for_ts.png | Bin 1871 -> 0 bytes
docs/apiref/class_hierarchy_for_type.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_10.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_11.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_12.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_2.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_3.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_4.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_5.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_6.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_7.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_8.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_type_9.png | Bin 884 -> 0 bytes
docs/apiref/class_hierarchy_for_vec.png | Bin 2051 -> 0 bytes
docs/apiref/class_hierarchy_for_viewer.png | Bin 3234 -> 0 bytes
docs/apiref/class_hierarchy_for_viewerhdf5.png | Bin 3209 -> 0 bytes
docs/apiref/epydoc.css | 8 +-
docs/apiref/help.html | 6 +-
docs/apiref/identifier-index.html | 4005 +-
docs/apiref/module-tree.html | 2 +-
docs/apiref/petsc4py-module.html | 21 +-
docs/apiref/petsc4py.PETSc-module.html | 208 +-
docs/apiref/petsc4py.PETSc.AO-class.html | 39 +-
docs/apiref/petsc4py.PETSc.AO.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Comm-class.html | 37 +-
docs/apiref/petsc4py.PETSc.DM-class.html | 276 +-
.../petsc4py.PETSc.DM.BoundaryType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.DM.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.DMComposite-class.html | 49 +-
docs/apiref/petsc4py.PETSc.DMDA-class.html | 61 +-
.../petsc4py.PETSc.DMDA.ElementType-class.html | 74 +-
...etsc4py.PETSc.DMDA.InterpolationType-class.html | 74 +-
.../petsc4py.PETSc.DMDA.StencilType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.DMPlex-class.html | 349 +-
docs/apiref/petsc4py.PETSc.DMShell-class.html | 106 +-
docs/apiref/petsc4py.PETSc.Error-class.html | 32 +-
docs/apiref/petsc4py.PETSc.IS-class.html | 39 +-
docs/apiref/petsc4py.PETSc.IS.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.InsertMode-class.html | 74 +-
docs/apiref/petsc4py.PETSc.KSP-class.html | 47 +-
.../petsc4py.PETSc.KSP.ConvergedReason-class.html | 74 +-
docs/apiref/petsc4py.PETSc.KSP.NormType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.KSP.Type-class.html | 115 +-
docs/apiref/petsc4py.PETSc.LGMap-class.html | 106 +-
...tml => petsc4py.PETSc.LGMap.MapMode-class.html} | 82 +-
...s.html => petsc4py.PETSc.LGMap.Type-class.html} | 86 +-
docs/apiref/petsc4py.PETSc.Log-class.html | 55 +-
docs/apiref/petsc4py.PETSc.LogClass-class.html | 37 +-
docs/apiref/petsc4py.PETSc.LogEvent-class.html | 37 +-
docs/apiref/petsc4py.PETSc.LogStage-class.html | 37 +-
docs/apiref/petsc4py.PETSc.Mat-class.html | 202 +-
.../petsc4py.PETSc.Mat.AssemblyType-class.html | 74 +-
.../petsc4py.PETSc.Mat.FactorShiftType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Mat.InfoType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Mat.Option-class.html | 74 +-
.../petsc4py.PETSc.Mat.OrderingType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Mat.SORType-class.html | 74 +-
.../apiref/petsc4py.PETSc.Mat.Structure-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Mat.Type-class.html | 116 +-
docs/apiref/petsc4py.PETSc.NormType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.NullSpace-class.html | 52 +-
docs/apiref/petsc4py.PETSc.Object-class.html | 80 +-
docs/apiref/petsc4py.PETSc.Options-class.html | 36 +-
docs/apiref/petsc4py.PETSc.PC-class.html | 97 +-
docs/apiref/petsc4py.PETSc.PC.ASMType-class.html | 74 +-
.../petsc4py.PETSc.PC.CompositeType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.PC.GAMGType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.PC.GASMType-class.html | 74 +-
...ml => petsc4py.PETSc.PC.MGCycleType-class.html} | 88 +-
docs/apiref/petsc4py.PETSc.PC.MGType-class.html | 74 +-
.../petsc4py.PETSc.PC.SchurFactType-class.html | 74 +-
.../petsc4py.PETSc.PC.SchurPreType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.PC.Side-class.html | 74 +-
docs/apiref/petsc4py.PETSc.PC.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Partitioner-class.html | 39 +-
.../petsc4py.PETSc.PartitionerType-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Random-class.html | 39 +-
docs/apiref/petsc4py.PETSc.Random.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.SF-class.html | 39 +-
docs/apiref/petsc4py.PETSc.SF.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.SNES-class.html | 175 +-
.../petsc4py.PETSc.SNES.ConvergedReason-class.html | 74 +-
.../petsc4py.PETSc.SNES.NormSchedule-class.html | 74 +-
docs/apiref/petsc4py.PETSc.SNES.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Scatter-class.html | 39 +-
docs/apiref/petsc4py.PETSc.ScatterMode-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Section-class.html | 35 +-
docs/apiref/petsc4py.PETSc.Sys-class.html | 72 +-
docs/apiref/petsc4py.PETSc.TAO-class.html | 47 +-
docs/apiref/petsc4py.PETSc.TAO.Reason-class.html | 6 +-
docs/apiref/petsc4py.PETSc.TAO.Type-class.html | 6 +-
docs/apiref/petsc4py.PETSc.TS-class.html | 417 +-
.../petsc4py.PETSc.TS.ConvergedReason-class.html | 74 +-
.../petsc4py.PETSc.TS.EquationType-class.html | 74 +-
.../petsc4py.PETSc.TS.ExactFinalTime-class.html | 74 +-
.../petsc4py.PETSc.TS.ProblemType-class.html | 74 +-
...ss.html => petsc4py.PETSc.TS.RKType-class.html} | 85 +-
docs/apiref/petsc4py.PETSc.TS.Type-class.html | 76 +-
docs/apiref/petsc4py.PETSc.Vec-class.html | 59 +-
docs/apiref/petsc4py.PETSc.Vec.Option-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Vec.Type-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Viewer-class.html | 235 +-
.../apiref/petsc4py.PETSc.Viewer.Format-class.html | 96 +-
docs/apiref/petsc4py.PETSc.Viewer.Mode-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Viewer.Size-class.html | 74 +-
docs/apiref/petsc4py.PETSc.Viewer.Type-class.html | 81 +-
docs/apiref/petsc4py.PETSc.ViewerHDF5-class.html | 48 +-
.../petsc4py.PETSc._DMComposite_access-class.html | 55 +-
.../petsc4py.PETSc._DMDA_Vec_array-class.html | 37 +-
docs/apiref/petsc4py.PETSc._IS_buffer-class.html | 37 +-
docs/apiref/petsc4py.PETSc._Mat_Stencil-class.html | 37 +-
.../petsc4py.PETSc._Vec_LocalForm-class.html | 54 +-
docs/apiref/petsc4py.PETSc._Vec_buffer-class.html | 37 +-
docs/apiref/petsc4py.lib-module.html | 2 +-
docs/apiref/redirect.html | 2 +-
docs/apiref/toc-everything.html | 14 +-
docs/apiref/toc-petsc4py-module.html | 3 +-
docs/index.html | 32 +-
docs/index.rst | 2 +-
docs/petsc4py.1 | 26 +-
docs/petsc4py.info | 114 +-
docs/petsc4py.pdf | Bin 98083 -> 111155 bytes
docs/source/Makefile | 174 +-
docs/source/citing.rst | 2 +-
docs/source/conf.py | 275 +-
docs/source/install.rst | 12 +-
docs/source/links.txt | 2 -
docs/source/make.bat | 264 +-
docs/source/overview.rst | 2 +-
docs/source/sphinxfix.sty | 34 -
docs/usrman/.buildinfo | 2 +-
.../usrman/_sources/{citing.txt => citing.rst.txt} | 2 +-
docs/usrman/_sources/{index.txt => index.rst.txt} | 0
.../_sources/{install.txt => install.rst.txt} | 12 +-
.../usrman/_sources/{manual.txt => manual.rst.txt} | 0
.../_sources/{overview.txt => overview.rst.txt} | 2 +-
.../_sources/{tutorial.txt => tutorial.rst.txt} | 0
docs/usrman/_static/basic.css | 158 +-
docs/usrman/_static/{default.css => classic.css} | 19 +-
docs/usrman/_static/comment-bright.png | Bin 3500 -> 756 bytes
docs/usrman/_static/comment-close.png | Bin 3578 -> 829 bytes
docs/usrman/_static/comment.png | Bin 3445 -> 641 bytes
docs/usrman/_static/default.css | 257 +-
docs/usrman/_static/doctools.js | 55 +-
docs/usrman/_static/down-pressed.png | Bin 368 -> 222 bytes
docs/usrman/_static/down.png | Bin 363 -> 202 bytes
docs/usrman/_static/file.png | Bin 392 -> 286 bytes
docs/usrman/_static/jquery-3.1.0.js | 10074 +++
docs/usrman/_static/jquery.js | 6 +-
docs/usrman/_static/minus.png | Bin 199 -> 90 bytes
docs/usrman/_static/plus.png | Bin 199 -> 90 bytes
docs/usrman/_static/pygments.css | 4 +
docs/usrman/_static/searchtools.js | 168 +-
docs/usrman/_static/sidebar.js | 2 +-
docs/usrman/_static/underscore-1.3.1.js | 999 +
docs/usrman/_static/up-pressed.png | Bin 372 -> 214 bytes
docs/usrman/_static/up.png | Bin 363 -> 203 bytes
docs/usrman/_static/websupport.js | 32 +-
docs/usrman/citing.html | 58 +-
docs/usrman/genindex.html | 136 +-
docs/usrman/index.html | 58 +-
docs/usrman/install.html | 110 +-
docs/usrman/manual.html | 56 +-
docs/usrman/objects.inv | 9 +-
docs/usrman/overview.html | 60 +-
docs/usrman/search.html | 35 +-
docs/usrman/searchindex.js | 2 +-
docs/usrman/tutorial.html | 58 +-
petsc4py.egg-info/PKG-INFO | 7 +-
petsc4py.egg-info/SOURCES.txt | 110 +-
setup.cfg | 1 -
setup.py | 7 +-
src/PETSc.pxd | 4 +
src/PETSc/DM.pyx | 143 +-
src/PETSc/DMComposite.pyx | 10 +-
src/PETSc/DMDA.pyx | 6 +-
src/PETSc/DMPlex.pyx | 138 +-
src/PETSc/DMShell.pyx | 42 +-
src/PETSc/IS.pyx | 74 +-
src/PETSc/KSP.pyx | 41 +-
src/PETSc/Log.pyx | 12 +-
src/PETSc/Mat.pyx | 210 +-
src/PETSc/Object.pyx | 11 +-
src/PETSc/Options.pyx | 2 +-
src/PETSc/PC.pyx | 47 +-
src/PETSc/PETSc.pyx | 8 +-
src/PETSc/SNES.pyx | 94 +-
src/PETSc/Scatter.pyx | 23 +-
src/PETSc/Section.pyx | 2 +-
src/PETSc/Sys.pyx | 68 +-
src/PETSc/TAO.pyx | 22 +-
src/PETSc/TS.pyx | 257 +-
src/PETSc/Vec.pyx | 62 +-
src/PETSc/Viewer.pyx | 59 +-
src/PETSc/petscdef.pxi | 4 +-
src/PETSc/petscdm.pxi | 17 +
src/PETSc/petscdmcomposite.pxi | 4 +-
src/PETSc/petscdmda.pxi | 4 +-
src/PETSc/petscdmplex.pxi | 22 +-
src/PETSc/petscdmshell.pxi | 139 +
src/PETSc/petscis.pxi | 14 +-
src/PETSc/petscksp.pxi | 13 +-
src/PETSc/petsclinesearch.pxi | 13 +
src/PETSc/petscmat.pxi | 16 +-
src/PETSc/petscobj.pxi | 6 +-
src/PETSc/petscopt.pxi | 2 +-
src/PETSc/petscpc.pxi | 7 +-
src/PETSc/petscsnes.pxi | 30 +
src/PETSc/petscsys.pxi | 17 +-
src/PETSc/petscts.pxi | 209 +-
src/PETSc/petscvec.pxi | 5 +-
src/PETSc/petscvwr.pxi | 13 +-
src/__init__.py | 21 +-
src/include/compat/hdf5.h | 20 +-
src/include/compat/hypre.h | 20 +-
src/include/compat/mpi.h | 57 +-
src/include/compat/mumps.h | 24 +-
src/include/compat/tao.h | 10 +-
src/include/custom.h | 96 +-
src/include/initpkg.h | 4 -
src/include/petsc4py/PETSc.pxd | 3 +
src/include/petsc4py/petsc4py.PETSc.h | 45 +-
src/include/petsc4py/petsc4py.PETSc_api.h | 2 +-
src/include/petsc4py/petsc4py.i | 18 +-
src/lib/__init__.py | 4 +-
src/libpetsc4py/custom.h | 17 +-
src/libpetsc4py/libpetsc4py.c | 11331 +--
src/libpetsc4py/libpetsc4py.h | 29 +-
src/libpetsc4py/libpetsc4py.pyx | 45 +-
src/petsc4py.PETSc.c | 77221 ++++++++++++-------
src/petsc4py.PETSc.pyx | 6 +
test/runtests.py | 62 +-
test/test_dmda.py | 30 +
test/test_dmplex.py | 45 +
test/test_dmshell.py | 26 +-
test/test_ksp.py | 6 +-
test/test_mat_aij.py | 27 +-
test/test_snes.py | 5 +
test/test_sys.py | 5 -
test/test_ts.py | 16 +-
test/test_ts_py.py | 7 +-
332 files changed, 75377 insertions(+), 41826 deletions(-)
diff --git a/CHANGES.rst b/CHANGES.rst
index 720c1eb..ff8ca61 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -6,6 +6,12 @@ CHANGES: PETSc for Python
:Contact: dalcinl at gmail.com
+Release 3.8.0
+=============
+
+- Update to PETSc 3.8 release.
+
+
Release 3.7.0
=============
diff --git a/DESCRIPTION.rst b/DESCRIPTION.rst
index 640e0d2..5bc3c9b 100644
--- a/DESCRIPTION.rst
+++ b/DESCRIPTION.rst
@@ -49,5 +49,5 @@ project.
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
diff --git a/LICENSE.rst b/LICENSE.rst
index 2a42c14..efbc6b1 100644
--- a/LICENSE.rst
+++ b/LICENSE.rst
@@ -6,7 +6,7 @@ LICENSE: PETSc for Python
:Contact: dalcinl at gmail.com
-Copyright (c) 2016, Lisandro Dalcin.
+Copyright (c) 2017, Lisandro Dalcin.
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/PKG-INFO b/PKG-INFO
index ed8ef1e..a58768c 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,13 @@
Metadata-Version: 1.1
Name: petsc4py
-Version: 3.7.0
+Version: 3.8.0
Summary: PETSc for Python
Home-page: https://bitbucket.org/petsc/petsc4py/
Author: Lisandro Dalcin
Author-email: dalcinl at gmail.com
License: BSD
-Download-URL: https://bitbucket.org/petsc/petsc4py/downloads/petsc4py-3.7.0.tar.gz
+Download-URL: https://bitbucket.org/petsc/petsc4py/downloads/petsc4py-3.8.0.tar.gz
+Description-Content-Type: UNKNOWN
Description: PETSc for Python
================
@@ -58,7 +59,7 @@ Description: PETSc for Python
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
Keywords: scientific computing,parallel computing,PETSc,MPI
diff --git a/README.rst b/README.rst
index 423092d..26266a9 100644
--- a/README.rst
+++ b/README.rst
@@ -13,7 +13,7 @@ Dependencies
* A matching version of PETSc_ built with *shared/dynamic libraries*.
-* Python_ 2.6, 2.7, 3.2 or above.
+* Python_ 2.6, 2.7, 3.3 or above.
* A recent NumPy_ release.
@@ -23,3 +23,9 @@ Dependencies
.. _Python: http://www.python.org
.. _NumPy: http://www.numpy.org
.. _Cython: http://www.cython.org
+
+Documentation
+-------------
+* http://petsc4py.readthedocs.org/, This does not contain the epydoc-generated API reference.
+
+* https://pythonhosted.org/petsc4py/, This is for the last release, not the in-development version.
diff --git a/conf/baseconf.py b/conf/baseconf.py
index 9d396cf..1a8cab0 100644
--- a/conf/baseconf.py
+++ b/conf/baseconf.py
@@ -122,7 +122,7 @@ class PetscConfig:
'minor' : re.compile(r"#define\s+PETSC_VERSION_MINOR\s+(\d+)"),
'micro' : re.compile(r"#define\s+PETSC_VERSION_SUBMINOR\s+(\d+)"),
'patch' : re.compile(r"#define\s+PETSC_VERSION_PATCH\s+(\d+)"),
- 'release': re.compile(r"#define\s+PETSC_VERSION_RELEASE\s+(\d+)"),
+ 'release': re.compile(r"#define\s+PETSC_VERSION_RELEASE\s+(-*\d+)"),
}
petscversion_h = os.path.join(petsc_dir, 'include', 'petscversion.h')
with open(petscversion_h, 'rt') as f: data = f.read()
@@ -130,7 +130,7 @@ class PetscConfig:
minor = int(version_re['minor'].search(data).groups()[0])
micro = int(version_re['micro'].search(data).groups()[0])
release = int(version_re['release'].search(data).groups()[0])
- return (major, minor, micro), bool(release)
+ return (major, minor, micro), (release == 1)
def _get_petsc_config(self, petsc_dir, petsc_arch):
from os.path import join, isdir, exists
@@ -183,7 +183,9 @@ class PetscConfig:
petsc_inc = flaglist(self['PETSC_CC_INCLUDES'])
petsc_lib = flaglist(
'-L%s %s' % (self['PETSC_LIB_DIR'], self['PETSC_LIB_BASIC']))
- petsc_lib['runtime_library_dirs'].append(self['PETSC_LIB_DIR'])
+ # runtime_library_dirs is not supported on Windows
+ if sys.platform != 'win32':
+ petsc_lib['runtime_library_dirs'].append(self['PETSC_LIB_DIR'])
# Link in extra libraries on static builds
if self['BUILDSHAREDLIB'] != 'yes':
diff --git a/demo/dmplex/adaptivity.py b/demo/dmplex/adaptivity.py
new file mode 100644
index 0000000..db168e7
--- /dev/null
+++ b/demo/dmplex/adaptivity.py
@@ -0,0 +1,30 @@
+import sys,petsc4py
+petsc4py.init(sys.argv)
+from petsc4py import PETSc
+import numpy as np
+
+OptDB = PETSc.Options()
+
+dim = OptDB.getInt('dim', 2)
+plex = PETSc.DMPlex().createBoxMesh(dim, 4)
+plex.view()
+
+dim = plex.getDimension()
+vStart, vEnd = plex.getDepthStratum(0)
+numVertices = vEnd-vStart
+
+# Create a metric tensor field corresponding to a uniform mesh size of 0.1
+metric_array = np.zeros([numVertices,dim,dim])
+for met in metric_array:
+ met[:,:] = np.diag([100]*dim)
+metric = PETSc.Vec().createWithArray(metric_array)
+
+# Call adapt routine - boundary label None by default
+newplex = plex.adapt(metric)
+newplex.view()
+
+# Write to VTK file
+viewer = PETSc.Viewer().createVTK('mesh_base.vtk', 'w')
+viewer(plex)
+viewer = PETSc.Viewer().createVTK('mesh_adapt.vtk', 'w')
+viewer(newplex)
diff --git a/demo/ode/ce.py b/demo/ode/ce.py
index be9c4cd..67bde2b 100644
--- a/demo/ode/ce.py
+++ b/demo/ode/ce.py
@@ -33,12 +33,13 @@ lambda_ = OptDB.getScalar('lambda', 10.0)
ode = CE(lambda_)
J = PETSc.Mat().createDense([ode.n,ode.n], comm=ode.comm)
+J.setUp()
x = PETSc.Vec().createSeq(ode.n, comm=ode.comm)
f = x.duplicate()
ts = PETSc.TS().create(comm=ode.comm)
ts.setProblemType(ts.ProblemType.NONLINEAR)
-ts.setType(ts.Type.GL)
+ts.setType(ts.Type.GLLE)
ts.setIFunction(ode.evalFunction, f)
ts.setIJacobian(ode.evalJacobian, J)
@@ -47,6 +48,7 @@ ts.setTime(0.0)
ts.setTimeStep(0.001)
ts.setMaxTime(10)
ts.setMaxSteps(10000)
+ts.setExactFinalTime(PETSc.TS.ExactFinalTime.INTERPOLATE)
class Monitor(object):
def __init__(self, ode):
diff --git a/demo/ode/heat.py b/demo/ode/heat.py
index 2c5a356..62eeefb 100644
--- a/demo/ode/heat.py
+++ b/demo/ode/heat.py
@@ -109,6 +109,7 @@ ts.setTime(0.0)
ts.setTimeStep(ode.h**2)
ts.setMaxTime(1)
ts.setMaxSteps(100)
+ts.setExactFinalTime(PETSc.TS.ExactFinalTime.INTERPOLATE)
ts.setMaxSNESFailures(-1) # allow an unlimited number of failures (step will be rejected and retried)
snes = ts.getSNES() # Nonlinear solver
diff --git a/demo/ode/orego.py b/demo/ode/orego.py
index d8613ac..bbe0f56 100644
--- a/demo/ode/orego.py
+++ b/demo/ode/orego.py
@@ -29,6 +29,7 @@ OptDB = PETSc.Options()
ode = Orego()
J = PETSc.Mat().createDense([ode.n, ode.n], comm=ode.comm)
+J.setUp()
x = PETSc.Vec().createSeq(ode.n, comm=ode.comm)
f = x.duplicate()
@@ -48,6 +49,7 @@ ts.setTime(0.0)
ts.setTimeStep(0.1)
ts.setMaxTime(360)
ts.setMaxSteps(2000)
+ts.setExactFinalTime(PETSc.TS.ExactFinalTime.INTERPOLATE)
ts.setMaxSNESFailures(-1) # allow an unlimited number of failures (step will be rejected and retried)
# Set a different tolerance on each variable. Can use a scalar or a vector for either or both atol and rtol.
@@ -83,14 +85,14 @@ if OptDB.getBool('plot_history', True):
rc('text', usetex=True)
pylab.suptitle('Oregonator: TS \\texttt{%s}' % ts.getType())
- pylab.subplot(2,2,0)
+ pylab.subplot(2,2,1)
pylab.subplots_adjust(wspace=0.3)
pylab.semilogy(ii[:-1], np.diff(tt), )
pylab.xlabel('step number')
pylab.ylabel('timestep')
for i in range(0,3):
- pylab.subplot(2,2,i+1)
+ pylab.subplot(2,2,i+2)
pylab.semilogy(tt, xx[:,i], "rgb"[i])
pylab.xlabel('time')
pylab.ylabel('$x_%d$' % i)
diff --git a/demo/ode/rober.py b/demo/ode/rober.py
index b1add9d..9921e94 100644
--- a/demo/ode/rober.py
+++ b/demo/ode/rober.py
@@ -32,6 +32,7 @@ OptDB = PETSc.Options()
ode = Rober()
J = PETSc.Mat().createDense([ode.n, ode.n], comm=ode.comm)
+J.setUp()
x = PETSc.Vec().createSeq(ode.n, comm=ode.comm)
f = x.duplicate()
@@ -52,6 +53,7 @@ ts.setTime(0.0)
ts.setTimeStep(.001)
ts.setMaxTime(1e30)
ts.setMaxSteps(100)
+ts.setExactFinalTime(PETSc.TS.ExactFinalTime.INTERPOLATE)
ts.setFromOptions()
ode.evalSolution(0.0, x)
@@ -70,14 +72,16 @@ ii = np.asarray([v[0] for v in history])
tt = np.asarray([v[1] for v in history])
xx = np.asarray([v[2] for v in history])
-pylab.figure()
+pylab.suptitle('Rober')
+pylab.subplot(2,2,1)
+pylab.subplots_adjust(wspace=0.3)
pylab.semilogy(ii[:-1], np.diff(tt), )
-pylab.xlabel('step')
+pylab.xlabel('step number')
pylab.ylabel('timestep')
for i in range(0,3):
- pylab.figure()
- pylab.plot(tt, xx[:,i], "rgb"[i])
+ pylab.subplot(2,2,i+2)
+ pylab.semilogx(tt, xx[:,i], "rgb"[i])
pylab.xlabel('t')
pylab.ylabel('x%d' % i)
diff --git a/demo/perftest/driver.c b/demo/perftest/driver.c
index 3ee5bc9..37cfe18 100644
--- a/demo/perftest/driver.c
+++ b/demo/perftest/driver.c
@@ -12,8 +12,6 @@ typedef struct AppCtx {
PetscScalar h[3];
} AppCtx;
-#undef __FUNCT__
-#define __FUNCT__ "FormInitial"
PetscErrorCode FormInitial(PetscReal t, Vec X, void *ctx)
{
PetscScalar *x;
@@ -29,8 +27,6 @@ PetscErrorCode FormInitial(PetscReal t, Vec X, void *ctx)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "FormFunction"
PetscErrorCode FormFunction(TS ts, PetscReal t, Vec X, Vec Xdot,Vec F, void *ctx)
{
const PetscScalar *x;
@@ -52,8 +48,6 @@ PetscErrorCode FormFunction(TS ts, PetscReal t, Vec X, Vec Xdot,Vec F, void *ctx
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "RunTest"
PetscErrorCode RunTest(int nx, int ny, int nz, int loops, double *wt)
{
Vec x,f;
@@ -78,7 +72,8 @@ PetscErrorCode RunTest(int nx, int ny, int nz, int loops, double *wt)
ierr = TSThetaSetTheta(ts,1.0);CHKERRQ(ierr);
ierr = TSSetTimeStep(ts,0.01);CHKERRQ(ierr);
ierr = TSSetTime(ts,0.0);CHKERRQ(ierr);
- ierr = TSSetDuration(ts,10,1.0);CHKERRQ(ierr);
+ ierr = TSSetMaxTime(ts,1.0);CHKERRQ(ierr);
+ ierr = TSSetMaxSteps(ts,10);CHKERRQ(ierr);
ierr = TSSetExactFinalTime(ts,TS_EXACTFINALTIME_STEPOVER);CHKERRQ(ierr);
ierr = TSSetSolution(ts,x);CHKERRQ(ierr);
@@ -110,8 +105,6 @@ PetscErrorCode RunTest(int nx, int ny, int nz, int loops, double *wt)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "GetInt"
PetscErrorCode GetInt(const char* name, PetscInt *v, PetscInt defv)
{
PetscErrorCode ierr;
@@ -121,8 +114,6 @@ PetscErrorCode GetInt(const char* name, PetscInt *v, PetscInt defv)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "main"
int main(int argc, char *argv[])
{
double wt;
diff --git a/demo/poisson3d/del2mat.h b/demo/poisson3d/del2mat.h
index e129947..f5d4480 100644
--- a/demo/poisson3d/del2mat.h
+++ b/demo/poisson3d/del2mat.h
@@ -19,8 +19,6 @@ typedef struct {
PetscScalar *F;
} Del2Mat;
-#undef __FUNCT__
-#define __FUNCT__ "Del2Mat_mult"
/* y <- A * x */
PetscErrorCode Del2Mat_mult(Mat A, Vec x, Vec y)
{
@@ -40,8 +38,7 @@ PetscErrorCode Del2Mat_mult(Mat A, Vec x, Vec y)
ierr = VecRestoreArray(y,&yy);CHKERRQ(ierr);
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "Del2Mat_diag"
+
/*D_i <- A_ii */
PetscErrorCode Del2Mat_diag(Mat A, Vec D)
{
diff --git a/demo/wrap-cython/Bratu3Dimpl.c b/demo/wrap-cython/Bratu3Dimpl.c
index 0aeac90..26bcdf9 100644
--- a/demo/wrap-cython/Bratu3Dimpl.c
+++ b/demo/wrap-cython/Bratu3Dimpl.c
@@ -19,8 +19,6 @@
#include "Bratu3Dimpl.h"
-#undef __FUNCT__
-#define __FUNCT__ "FormInitGuess"
PetscErrorCode FormInitGuess(DM da, Vec X, Params *p)
{
PetscInt i,j,k,Mx,My,Mz,xs,ys,zs,xm,ym,zm;
@@ -91,8 +89,6 @@ PetscErrorCode FormInitGuess(DM da, Vec X, Params *p)
}
-#undef __FUNCT__
-#define __FUNCT__ "FormFunction"
PetscErrorCode FormFunction(DM da, Vec X, Vec F, Params *p)
{
PetscInt i,j,k,Mx,My,Mz,xs,ys,zs,xm,ym,zm;
@@ -183,8 +179,6 @@ PetscErrorCode FormFunction(DM da, Vec X, Vec F, Params *p)
}
-#undef __FUNCT__
-#define __FUNCT__ "FormJacobian"
PetscErrorCode FormJacobian(DM da, Vec X, Mat J, Params *p)
{
PetscInt i,j,k,Mx,My,Mz,xs,ys,zs,xm,ym,zm;
diff --git a/demo/wrap-cython/makefile b/demo/wrap-cython/makefile
index c94090a..2765573 100644
--- a/demo/wrap-cython/makefile
+++ b/demo/wrap-cython/makefile
@@ -17,9 +17,9 @@ run: build
${MPIEXEC} ${PYTHON} ${SCRIPT}.py
${MODULE}.so: ${MODULE}.pyx ${MODULE}impl.h ${MODULE}impl.c
- CC=${CC} F90=${FC} LDSHARED='${CLINKER} -shared' \
+ CC=${CC} F90=${FC} \
${PYTHON} setup.py -q build_ext --inplace
- ${RM} -r build ${MODULE}_wrap.c
+ ${RM} -r build ${MODULE}.c
.PHONY:clean
clean::
diff --git a/demo/wrap-cython/setup.py b/demo/wrap-cython/setup.py
index f9bcbb3..5b4c690 100644
--- a/demo/wrap-cython/setup.py
+++ b/demo/wrap-cython/setup.py
@@ -2,25 +2,14 @@
#$ python setup.py build_ext --inplace
-from numpy.distutils.command import build_src
+from distutils.core import setup
+from distutils.extension import Extension
+from Cython.Build import cythonize
-# a bit of monkeypatching ...
-import Cython.Compiler.Main
-build_src.Pyrex = Cython
-build_src.have_pyrex = True
-def have_pyrex():
- import sys
- try:
- import Cython.Compiler.Main
- sys.modules['Pyrex'] = Cython
- sys.modules['Pyrex.Compiler'] = Cython.Compiler
- sys.modules['Pyrex.Compiler.Main'] = Cython.Compiler.Main
- return True
- except ImportError:
- return False
-build_src.have_pyrex = have_pyrex
+import numpy
+import petsc4py
-def configuration(parent_package='',top_path=None):
+def configure():
INCLUDE_DIRS = []
LIBRARY_DIRS = []
LIBRARIES = []
@@ -38,27 +27,30 @@ def configuration(parent_package='',top_path=None):
if PETSC_ARCH: pass # XXX should warn ...
INCLUDE_DIRS += [join(PETSC_DIR, 'include')]
LIBRARY_DIRS += [join(PETSC_DIR, 'lib')]
- LIBRARIES += [#'petscts', 'petscsnes', 'petscksp',
- #'petscdm', 'petscmat', 'petscvec',
- 'petsc']
+ LIBRARIES += ['petsc']
# PETSc for Python
- import petsc4py
INCLUDE_DIRS += [petsc4py.get_include()]
- # Configuration
- from numpy.distutils.misc_util import Configuration
- config = Configuration('', parent_package, top_path)
- config.add_extension('Bratu3D',
- sources = ['Bratu3D.pyx',
- 'Bratu3Dimpl.c'],
- depends = ['Bratu3Dimpl.h'],
- include_dirs=INCLUDE_DIRS + [os.curdir],
- libraries=LIBRARIES,
- library_dirs=LIBRARY_DIRS,
- runtime_library_dirs=LIBRARY_DIRS)
- return config
-
-if __name__ == "__main__":
- from numpy.distutils.core import setup
- setup(**configuration(top_path='').todict())
+ # NumPy
+ INCLUDE_DIRS += [numpy.get_include()]
+
+ return dict(
+ include_dirs=INCLUDE_DIRS + [os.curdir],
+ libraries=LIBRARIES,
+ library_dirs=LIBRARY_DIRS,
+ runtime_library_dirs=LIBRARY_DIRS,
+ )
+
+extensions = [
+ Extension('Bratu3D',
+ sources = ['Bratu3D.pyx',
+ 'Bratu3Dimpl.c'],
+ depends = ['Bratu3Dimpl.h'],
+ **configure()),
+]
+
+setup(name = "Bratu3D",
+ ext_modules = cythonize(
+ extensions, include_path=[petsc4py.get_include()]),
+)
diff --git a/demo/wrap-swig/Bratu3D.c b/demo/wrap-swig/Bratu3D.c
index 9d66eee..71bbe6b 100644
--- a/demo/wrap-swig/Bratu3D.c
+++ b/demo/wrap-swig/Bratu3D.c
@@ -19,8 +19,6 @@
#include "Bratu3D.h"
-#undef __FUNCT__
-#define __FUNCT__ "FormInitGuess"
PetscErrorCode FormInitGuess(DM da, Vec X, Params *p)
{
PetscInt i,j,k,Mx,My,Mz,xs,ys,zs,xm,ym,zm;
@@ -91,8 +89,6 @@ PetscErrorCode FormInitGuess(DM da, Vec X, Params *p)
}
-#undef __FUNCT__
-#define __FUNCT__ "FormFunction"
PetscErrorCode FormFunction(DM da, Vec X, Vec F, Params *p)
{
PetscInt i,j,k,Mx,My,Mz,xs,ys,zs,xm,ym,zm;
@@ -183,8 +179,6 @@ PetscErrorCode FormFunction(DM da, Vec X, Vec F, Params *p)
}
-#undef __FUNCT__
-#define __FUNCT__ "FormJacobian"
PetscErrorCode FormJacobian(DM da, Vec X, Mat J, Params *p)
{
PetscInt i,j,k,Mx,My,Mz,xs,ys,zs,xm,ym,zm;
diff --git a/docs/CHANGES.html b/docs/CHANGES.html
index 2cef845..7edcead 100644
--- a/docs/CHANGES.html
+++ b/docs/CHANGES.html
@@ -3,14 +3,14 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.12: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
<title>CHANGES: PETSc for Python</title>
<meta name="author" content="Lisandro Dalcin" />
<style type="text/css">
/*
:Author: David Goodger (goodger at python.org)
-:Id: $Id: html4css1.css 7614 2013-02-21 15:55:51Z milde $
+:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
@@ -38,6 +38,14 @@ table.borderless td, table.borderless th {
.hidden {
display: none }
+.subscript {
+ vertical-align: sub;
+ font-size: smaller }
+
+.superscript {
+ vertical-align: super;
+ font-size: smaller }
+
a.toc-backref {
text-decoration: none ;
color: black }
@@ -162,12 +170,12 @@ h2.subtitle {
hr.docutils {
width: 75% }
-img.align-left, .figure.align-left, object.align-left {
+img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
-img.align-right, .figure.align-right, object.align-right {
+img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
@@ -178,6 +186,11 @@ img.align-center, .figure.align-center, object.align-center {
margin-right: auto;
}
+table.align-center {
+ margin-left: auto;
+ margin-right: auto;
+}
+
.align-left {
text-align: left }
@@ -195,6 +208,15 @@ div.align-right {
/* div.align-center * { */
/* text-align: left } */
+.align-top {
+ vertical-align: top }
+
+.align-middle {
+ vertical-align: middle }
+
+.align-bottom {
+ vertical-align: bottom }
+
ol.simple, ul.simple {
margin-bottom: 1em }
@@ -351,6 +373,13 @@ ul.auto-toc {
<td><a class="first last reference external" href="mailto:dalcinl%40gmail.com">dalcinl<span>@</span>gmail<span>.</span>com</a></td></tr>
</tbody>
</table>
+<div class="section" id="release-3-8-0">
+<h1>Release 3.8.0</h1>
+<ul>
+<li><p class="first">Update to PETSc 3.8 release.</p>
+</li>
+</ul>
+</div>
<div class="section" id="release-3-7-0">
<h1>Release 3.7.0</h1>
<ul>
diff --git a/docs/LICENSE.html b/docs/LICENSE.html
index 146bd78..ff78293 100644
--- a/docs/LICENSE.html
+++ b/docs/LICENSE.html
@@ -3,14 +3,14 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.12: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
<title>LICENSE: PETSc for Python</title>
<meta name="author" content="Lisandro Dalcin" />
<style type="text/css">
/*
:Author: David Goodger (goodger at python.org)
-:Id: $Id: html4css1.css 7614 2013-02-21 15:55:51Z milde $
+:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
@@ -38,6 +38,14 @@ table.borderless td, table.borderless th {
.hidden {
display: none }
+.subscript {
+ vertical-align: sub;
+ font-size: smaller }
+
+.superscript {
+ vertical-align: super;
+ font-size: smaller }
+
a.toc-backref {
text-decoration: none ;
color: black }
@@ -162,12 +170,12 @@ h2.subtitle {
hr.docutils {
width: 75% }
-img.align-left, .figure.align-left, object.align-left {
+img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
-img.align-right, .figure.align-right, object.align-right {
+img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
@@ -178,6 +186,11 @@ img.align-center, .figure.align-center, object.align-center {
margin-right: auto;
}
+table.align-center {
+ margin-left: auto;
+ margin-right: auto;
+}
+
.align-left {
text-align: left }
@@ -195,6 +208,15 @@ div.align-right {
/* div.align-center * { */
/* text-align: left } */
+.align-top {
+ vertical-align: top }
+
+.align-middle {
+ vertical-align: middle }
+
+.align-bottom {
+ vertical-align: bottom }
+
ol.simple, ul.simple {
margin-bottom: 1em }
@@ -351,7 +373,7 @@ ul.auto-toc {
<td><a class="first last reference external" href="mailto:dalcinl%40gmail.com">dalcinl<span>@</span>gmail<span>.</span>com</a></td></tr>
</tbody>
</table>
-<p>Copyright (c) 2016, Lisandro Dalcin.
+<p>Copyright (c) 2017, Lisandro Dalcin.
All rights reserved.</p>
<p>Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
diff --git a/docs/apiref/api-objects.txt b/docs/apiref/api-objects.txt
index d20d7b6..74da649 100644
--- a/docs/apiref/api-objects.txt
+++ b/docs/apiref/api-objects.txt
@@ -3,6 +3,7 @@ petsc4py.__credits__ petsc4py-module.html#__credits__
petsc4py.get_include petsc4py-module.html#get_include
petsc4py.init petsc4py-module.html#init
petsc4py.__package__ petsc4py-module.html#__package__
+petsc4py.get_config petsc4py-module.html#get_config
petsc4py.PETSc petsc4py.PETSc-module.html
petsc4py.PETSc.DEFAULT petsc4py.PETSc-module.html#DEFAULT
petsc4py.PETSc.COMM_NULL petsc4py.PETSc-module.html#COMM_NULL
@@ -37,6 +38,7 @@ petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.AO.Type petsc4py.PETSc.AO.Type-class.html
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.AO.__new__ petsc4py.PETSc.AO-class.html#__new__
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
@@ -76,11 +78,11 @@ petsc4py.PETSc.AO.app2petsc petsc4py.PETSc.AO-class.html#app2petsc
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.AO.view petsc4py.PETSc.AO-class.html#view
petsc4py.PETSc.AO.Type petsc4py.PETSc.AO.Type-class.html
-petsc4py.PETSc.AO.Type.MAPPING petsc4py.PETSc.AO.Type-class.html#MAPPING
petsc4py.PETSc.AO.Type.__qualname__ petsc4py.PETSc.AO.Type-class.html#__qualname__
petsc4py.PETSc.AO.Type.MEMORYSCALABLE petsc4py.PETSc.AO.Type-class.html#MEMORYSCALABLE
-petsc4py.PETSc.AO.Type.BASIC petsc4py.PETSc.AO.Type-class.html#BASIC
+petsc4py.PETSc.AO.Type.MAPPING petsc4py.PETSc.AO.Type-class.html#MAPPING
petsc4py.PETSc.AO.Type.ADVANCED petsc4py.PETSc.AO.Type-class.html#ADVANCED
+petsc4py.PETSc.AO.Type.BASIC petsc4py.PETSc.AO.Type-class.html#BASIC
petsc4py.PETSc.Comm petsc4py.PETSc.Comm-class.html
petsc4py.PETSc.Comm.tompi4py petsc4py.PETSc.Comm-class.html#tompi4py
petsc4py.PETSc.Comm.rank petsc4py.PETSc.Comm-class.html#rank
@@ -109,12 +111,16 @@ petsc4py.PETSc.DM petsc4py.PETSc.DM-class.html
petsc4py.PETSc.DM.getLGMap petsc4py.PETSc.DM-class.html#getLGMap
petsc4py.PETSc.DM.getStratumIS petsc4py.PETSc.DM-class.html#getStratumIS
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
+petsc4py.PETSc.DM.restoreLocalVec petsc4py.PETSc.DM-class.html#restoreLocalVec
+petsc4py.PETSc.DM.adaptMetric petsc4py.PETSc.DM-class.html#adaptMetric
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
-petsc4py.PETSc.DM.createGlobalVec petsc4py.PETSc.DM-class.html#createGlobalVec
-petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
+petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
+petsc4py.PETSc.DM.getDimension petsc4py.PETSc.DM-class.html#getDimension
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.DM.createMatrix petsc4py.PETSc.DM-class.html#createMatrix
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.DM.removeLabel petsc4py.PETSc.DM-class.html#removeLabel
+petsc4py.PETSc.DM.getLocalVec petsc4py.PETSc.DM-class.html#getLocalVec
petsc4py.PETSc.DM.coarsen petsc4py.PETSc.DM-class.html#coarsen
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.DM.getLabelValue petsc4py.PETSc.DM-class.html#getLabelValue
@@ -132,8 +138,9 @@ petsc4py.PETSc.DM.hasLabel petsc4py.PETSc.DM-class.html#hasLabel
petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.DM.setAppCtx petsc4py.PETSc.DM-class.html#setAppCtx
-petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
+petsc4py.PETSc.DM.createFieldDecomposition petsc4py.PETSc.DM-class.html#createFieldDecomposition
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
+petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.DM.view petsc4py.PETSc.DM-class.html#view
petsc4py.PETSc.DM.getDefaultSection petsc4py.PETSc.DM-class.html#getDefaultSection
@@ -141,10 +148,10 @@ petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
petsc4py.PETSc.DM.getBlockSize petsc4py.PETSc.DM-class.html#getBlockSize
petsc4py.PETSc.DM.refineHierarchy petsc4py.PETSc.DM-class.html#refineHierarchy
petsc4py.PETSc.DM.Type petsc4py.PETSc.DM.Type-class.html
-petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
+petsc4py.PETSc.DM.createGlobalVec petsc4py.PETSc.DM-class.html#createGlobalVec
petsc4py.PETSc.DM.getCoordinates petsc4py.PETSc.DM-class.html#getCoordinates
petsc4py.PETSc.DM.createInterpolation petsc4py.PETSc.DM-class.html#createInterpolation
-petsc4py.PETSc.DM.getDimension petsc4py.PETSc.DM-class.html#getDimension
+petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.DM.setVecType petsc4py.PETSc.DM-class.html#setVecType
petsc4py.PETSc.DM.globalToLocal petsc4py.PETSc.DM-class.html#globalToLocal
@@ -156,6 +163,7 @@ petsc4py.PETSc.DM.getPointSF petsc4py.PETSc.DM-class.html#getPointSF
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.DM.setSNESJacobian petsc4py.PETSc.DM-class.html#setSNESJacobian
petsc4py.PETSc.DM.createLabel petsc4py.PETSc.DM-class.html#createLabel
petsc4py.PETSc.DM.getMatrix petsc4py.PETSc.DM-class.html#getMatrix
petsc4py.PETSc.DM.getDefaultGlobalSection petsc4py.PETSc.DM-class.html#getDefaultGlobalSection
@@ -168,6 +176,7 @@ petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
petsc4py.PETSc.DM.setLabelValue petsc4py.PETSc.DM-class.html#setLabelValue
petsc4py.PETSc.DM.setCoordinates petsc4py.PETSc.DM-class.html#setCoordinates
petsc4py.PETSc.DM.createAggregates petsc4py.PETSc.DM-class.html#createAggregates
+petsc4py.PETSc.DM.adaptLabel petsc4py.PETSc.DM-class.html#adaptLabel
petsc4py.PETSc.DM.createMat petsc4py.PETSc.DM-class.html#createMat
petsc4py.PETSc.DM.createLocalVector petsc4py.PETSc.DM-class.html#createLocalVector
petsc4py.PETSc.DM.getCoordinateSection petsc4py.PETSc.DM-class.html#getCoordinateSection
@@ -179,6 +188,7 @@ petsc4py.PETSc.DM.getCoordinateDM petsc4py.PETSc.DM-class.html#getCoordinateDM
petsc4py.PETSc.DM.getNumLabels petsc4py.PETSc.DM-class.html#getNumLabels
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
petsc4py.PETSc.DM.createInjection petsc4py.PETSc.DM-class.html#createInjection
+petsc4py.PETSc.DM.setSNESFunction petsc4py.PETSc.DM-class.html#setSNESFunction
petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
@@ -189,10 +199,15 @@ petsc4py.PETSc.DM.setPointSF petsc4py.PETSc.DM-class.html#setPointSF
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
+petsc4py.PETSc.DM.getCoarsenLevel petsc4py.PETSc.DM-class.html#getCoarsenLevel
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
+petsc4py.PETSc.DM.getRefineLevel petsc4py.PETSc.DM-class.html#getRefineLevel
+petsc4py.PETSc.DM.setRefineLevel petsc4py.PETSc.DM-class.html#setRefineLevel
petsc4py.PETSc.DM.refine petsc4py.PETSc.DM-class.html#refine
petsc4py.PETSc.DM.createLocalVec petsc4py.PETSc.DM-class.html#createLocalVec
+petsc4py.PETSc.DM.getGlobalVec petsc4py.PETSc.DM-class.html#getGlobalVec
+petsc4py.PETSc.DM.setKSPComputeOperators petsc4py.PETSc.DM-class.html#setKSPComputeOperators
petsc4py.PETSc.DM.localToLocal petsc4py.PETSc.DM-class.html#localToLocal
petsc4py.PETSc.DM.__new__ petsc4py.PETSc.DM-class.html#__new__
petsc4py.PETSc.DM.getLabelSize petsc4py.PETSc.DM-class.html#getLabelSize
@@ -208,6 +223,7 @@ petsc4py.PETSc.DM.setDefaultSection petsc4py.PETSc.DM-class.html#setDefaultSecti
petsc4py.PETSc.DM.setLabelOutput petsc4py.PETSc.DM-class.html#setLabelOutput
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.DM.restoreGlobalVec petsc4py.PETSc.DM-class.html#restoreGlobalVec
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.DM.BoundaryType petsc4py.PETSc.DM.BoundaryType-class.html
petsc4py.PETSc.DM.BoundaryType.__qualname__ petsc4py.PETSc.DM.BoundaryType-class.html#__qualname__
@@ -217,27 +233,31 @@ petsc4py.PETSc.DM.BoundaryType.PERIODIC petsc4py.PETSc.DM.BoundaryType-class.htm
petsc4py.PETSc.DM.BoundaryType.MIRROR petsc4py.PETSc.DM.BoundaryType-class.html#MIRROR
petsc4py.PETSc.DM.BoundaryType.GHOSTED petsc4py.PETSc.DM.BoundaryType-class.html#GHOSTED
petsc4py.PETSc.DM.Type petsc4py.PETSc.DM.Type-class.html
-petsc4py.PETSc.DM.Type.NETWORK petsc4py.PETSc.DM.Type-class.html#NETWORK
-petsc4py.PETSc.DM.Type.DA petsc4py.PETSc.DM.Type-class.html#DA
petsc4py.PETSc.DM.Type.SLICED petsc4py.PETSc.DM.Type-class.html#SLICED
petsc4py.PETSc.DM.Type.SHELL petsc4py.PETSc.DM.Type-class.html#SHELL
-petsc4py.PETSc.DM.Type.CARTESIAN petsc4py.PETSc.DM.Type-class.html#CARTESIAN
-petsc4py.PETSc.DM.Type.REDUNDANT petsc4py.PETSc.DM.Type-class.html#REDUNDANT
-petsc4py.PETSc.DM.Type.PLEX petsc4py.PETSc.DM.Type-class.html#PLEX
-petsc4py.PETSc.DM.Type.PATCH petsc4py.PETSc.DM.Type-class.html#PATCH
+petsc4py.PETSc.DM.Type.NETWORK petsc4py.PETSc.DM.Type-class.html#NETWORK
petsc4py.PETSc.DM.Type.COMPOSITE petsc4py.PETSc.DM.Type-class.html#COMPOSITE
petsc4py.PETSc.DM.Type.MOAB petsc4py.PETSc.DM.Type-class.html#MOAB
+petsc4py.PETSc.DM.Type.REDUNDANT petsc4py.PETSc.DM.Type-class.html#REDUNDANT
+petsc4py.PETSc.DM.Type.DA petsc4py.PETSc.DM.Type-class.html#DA
petsc4py.PETSc.DM.Type.__qualname__ petsc4py.PETSc.DM.Type-class.html#__qualname__
+petsc4py.PETSc.DM.Type.CARTESIAN petsc4py.PETSc.DM.Type-class.html#CARTESIAN
+petsc4py.PETSc.DM.Type.PATCH petsc4py.PETSc.DM.Type-class.html#PATCH
+petsc4py.PETSc.DM.Type.PLEX petsc4py.PETSc.DM.Type-class.html#PLEX
petsc4py.PETSc.DMComposite petsc4py.PETSc.DMComposite-class.html
petsc4py.PETSc.DM.getLGMap petsc4py.PETSc.DM-class.html#getLGMap
petsc4py.PETSc.DM.getStratumIS petsc4py.PETSc.DM-class.html#getStratumIS
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
+petsc4py.PETSc.DM.restoreLocalVec petsc4py.PETSc.DM-class.html#restoreLocalVec
+petsc4py.PETSc.DM.adaptMetric petsc4py.PETSc.DM-class.html#adaptMetric
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
-petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
+petsc4py.PETSc.DM.createGlobalVec petsc4py.PETSc.DM-class.html#createGlobalVec
petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.DM.createMatrix petsc4py.PETSc.DM-class.html#createMatrix
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.DM.removeLabel petsc4py.PETSc.DM-class.html#removeLabel
+petsc4py.PETSc.DM.getLocalVec petsc4py.PETSc.DM-class.html#getLocalVec
petsc4py.PETSc.DM.coarsen petsc4py.PETSc.DM-class.html#coarsen
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.DM.getLabelValue petsc4py.PETSc.DM-class.html#getLabelValue
@@ -256,8 +276,9 @@ petsc4py.PETSc.DMComposite.getAccess petsc4py.PETSc.DMComposite-class.html#getAc
petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.DM.setAppCtx petsc4py.PETSc.DM-class.html#setAppCtx
-petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
+petsc4py.PETSc.DM.createFieldDecomposition petsc4py.PETSc.DM-class.html#createFieldDecomposition
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
+petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.DM.view petsc4py.PETSc.DM-class.html#view
petsc4py.PETSc.DM.getDefaultSection petsc4py.PETSc.DM-class.html#getDefaultSection
@@ -265,7 +286,7 @@ petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
petsc4py.PETSc.DM.getBlockSize petsc4py.PETSc.DM-class.html#getBlockSize
petsc4py.PETSc.DMComposite.getLGMaps petsc4py.PETSc.DMComposite-class.html#getLGMaps
petsc4py.PETSc.DM.Type petsc4py.PETSc.DM.Type-class.html
-petsc4py.PETSc.DM.createGlobalVec petsc4py.PETSc.DM-class.html#createGlobalVec
+petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.DM.getCoordinates petsc4py.PETSc.DM-class.html#getCoordinates
petsc4py.PETSc.DM.createInterpolation petsc4py.PETSc.DM-class.html#createInterpolation
petsc4py.PETSc.DM.getDimension petsc4py.PETSc.DM-class.html#getDimension
@@ -280,9 +301,10 @@ petsc4py.PETSc.DM.getPointSF petsc4py.PETSc.DM-class.html#getPointSF
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
petsc4py.PETSc.DMComposite.getLocalISs petsc4py.PETSc.DMComposite-class.html#getLocalISs
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.DM.setSNESJacobian petsc4py.PETSc.DM-class.html#setSNESJacobian
petsc4py.PETSc.DM.createLabel petsc4py.PETSc.DM-class.html#createLabel
petsc4py.PETSc.DM.getMatrix petsc4py.PETSc.DM-class.html#getMatrix
-petsc4py.PETSc.DM.getDefaultGlobalSection petsc4py.PETSc.DM-class.html#getDefaultGlobalSection
+petsc4py.PETSc.DM.setSNESFunction petsc4py.PETSc.DM-class.html#setSNESFunction
petsc4py.PETSc.DM.clearLabelValue petsc4py.PETSc.DM-class.html#clearLabelValue
petsc4py.PETSc.DM.convert petsc4py.PETSc.DM-class.html#convert
petsc4py.PETSc.DM.setDefaultGlobalSection petsc4py.PETSc.DM-class.html#setDefaultGlobalSection
@@ -293,6 +315,7 @@ petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.DM.setLabelValue petsc4py.PETSc.DM-class.html#setLabelValue
petsc4py.PETSc.DM.setCoordinates petsc4py.PETSc.DM-class.html#setCoordinates
petsc4py.PETSc.DM.createAggregates petsc4py.PETSc.DM-class.html#createAggregates
+petsc4py.PETSc.DM.adaptLabel petsc4py.PETSc.DM-class.html#adaptLabel
petsc4py.PETSc.DM.createMat petsc4py.PETSc.DM-class.html#createMat
petsc4py.PETSc.DM.createLocalVector petsc4py.PETSc.DM-class.html#createLocalVector
petsc4py.PETSc.DM.getCoordinateSection petsc4py.PETSc.DM-class.html#getCoordinateSection
@@ -304,6 +327,7 @@ petsc4py.PETSc.DM.getCoordinateDM petsc4py.PETSc.DM-class.html#getCoordinateDM
petsc4py.PETSc.DM.getNumLabels petsc4py.PETSc.DM-class.html#getNumLabels
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
petsc4py.PETSc.DM.createInjection petsc4py.PETSc.DM-class.html#createInjection
+petsc4py.PETSc.DM.getDefaultGlobalSection petsc4py.PETSc.DM-class.html#getDefaultGlobalSection
petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
@@ -316,13 +340,18 @@ petsc4py.PETSc.DMComposite.getEntries petsc4py.PETSc.DMComposite-class.html#getE
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
petsc4py.PETSc.DM.setDefaultSection petsc4py.PETSc.DM-class.html#setDefaultSection
+petsc4py.PETSc.DM.getCoarsenLevel petsc4py.PETSc.DM-class.html#getCoarsenLevel
petsc4py.PETSc.DMComposite.scatter petsc4py.PETSc.DMComposite-class.html#scatter
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
+petsc4py.PETSc.DM.getRefineLevel petsc4py.PETSc.DM-class.html#getRefineLevel
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
+petsc4py.PETSc.DM.setRefineLevel petsc4py.PETSc.DM-class.html#setRefineLevel
petsc4py.PETSc.DM.refine petsc4py.PETSc.DM-class.html#refine
petsc4py.PETSc.DM.createLocalVec petsc4py.PETSc.DM-class.html#createLocalVec
petsc4py.PETSc.DMComposite.getNumberDM petsc4py.PETSc.DMComposite-class.html#getNumberDM
+petsc4py.PETSc.DM.getGlobalVec petsc4py.PETSc.DM-class.html#getGlobalVec
+petsc4py.PETSc.DM.setKSPComputeOperators petsc4py.PETSc.DM-class.html#setKSPComputeOperators
petsc4py.PETSc.DM.refineHierarchy petsc4py.PETSc.DM-class.html#refineHierarchy
petsc4py.PETSc.DMComposite.__new__ petsc4py.PETSc.DMComposite-class.html#__new__
petsc4py.PETSc.DMComposite.getNumber petsc4py.PETSc.DMComposite-class.html#getNumber
@@ -341,6 +370,7 @@ petsc4py.PETSc.DMComposite.getGlobalISs petsc4py.PETSc.DMComposite-class.html#ge
petsc4py.PETSc.DM.setLabelOutput petsc4py.PETSc.DM-class.html#setLabelOutput
petsc4py.PETSc.DMComposite.gather petsc4py.PETSc.DMComposite-class.html#gather
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.DM.restoreGlobalVec petsc4py.PETSc.DM-class.html#restoreGlobalVec
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.DMDA petsc4py.PETSc.DMDA-class.html
petsc4py.PETSc.DM.getLGMap petsc4py.PETSc.DM-class.html#getLGMap
@@ -350,6 +380,8 @@ petsc4py.PETSc.DM.getStratumIS petsc4py.PETSc.DM-class.html#getStratumIS
petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
petsc4py.PETSc.DMDA.setRefinementFactor petsc4py.PETSc.DMDA-class.html#setRefinementFactor
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
+petsc4py.PETSc.DM.restoreLocalVec petsc4py.PETSc.DM-class.html#restoreLocalVec
+petsc4py.PETSc.DM.adaptMetric petsc4py.PETSc.DM-class.html#adaptMetric
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.DM.createGlobalVec petsc4py.PETSc.DM-class.html#createGlobalVec
petsc4py.PETSc.DMDA.getRanges petsc4py.PETSc.DMDA-class.html#getRanges
@@ -359,6 +391,7 @@ petsc4py.PETSc.DM.createMatrix petsc4py.PETSc.DM-class.html#createMatrix
petsc4py.PETSc.DMDA.getScatter petsc4py.PETSc.DMDA-class.html#getScatter
petsc4py.PETSc.DM.localToGlobal petsc4py.PETSc.DM-class.html#localToGlobal
petsc4py.PETSc.DM.removeLabel petsc4py.PETSc.DM-class.html#removeLabel
+petsc4py.PETSc.DM.getLocalVec petsc4py.PETSc.DM-class.html#getLocalVec
petsc4py.PETSc.DM.coarsen petsc4py.PETSc.DM-class.html#coarsen
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.DM.getLabelSize petsc4py.PETSc.DM-class.html#getLabelSize
@@ -385,11 +418,11 @@ petsc4py.PETSc.DMDA.dim petsc4py.PETSc.DMDA-class.html#dim
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.DM.setAppCtx petsc4py.PETSc.DM-class.html#setAppCtx
petsc4py.PETSc.DMDA.sizes petsc4py.PETSc.DMDA-class.html#sizes
-petsc4py.PETSc.DMDA.corners petsc4py.PETSc.DMDA-class.html#corners
+petsc4py.PETSc.DM.createFieldDecomposition petsc4py.PETSc.DM-class.html#createFieldDecomposition
petsc4py.PETSc.DMDA.boundary_type petsc4py.PETSc.DMDA-class.html#boundary_type
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
petsc4py.PETSc.DMDA.getOwnershipRanges petsc4py.PETSc.DMDA-class.html#getOwnershipRanges
-petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
+petsc4py.PETSc.DMDA.corners petsc4py.PETSc.DMDA-class.html#corners
petsc4py.PETSc.DMDA.getRefinementFactor petsc4py.PETSc.DMDA-class.html#getRefinementFactor
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.DMDA.getSizes petsc4py.PETSc.DMDA-class.html#getSizes
@@ -397,15 +430,16 @@ petsc4py.PETSc.DM.view petsc4py.PETSc.DM-class.html#view
petsc4py.PETSc.DM.getDefaultSection petsc4py.PETSc.DM-class.html#getDefaultSection
petsc4py.PETSc.DMDA.getGhostCorners petsc4py.PETSc.DMDA-class.html#getGhostCorners
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
+petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
petsc4py.PETSc.DMDA.globalToNatural petsc4py.PETSc.DMDA-class.html#globalToNatural
petsc4py.PETSc.DM.getBlockSize petsc4py.PETSc.DM-class.html#getBlockSize
petsc4py.PETSc.DM.refineHierarchy petsc4py.PETSc.DM-class.html#refineHierarchy
petsc4py.PETSc.DM.Type petsc4py.PETSc.DM.Type-class.html
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.DM.getCoordinates petsc4py.PETSc.DM-class.html#getCoordinates
-petsc4py.PETSc.DM.createInterpolation petsc4py.PETSc.DM-class.html#createInterpolation
+petsc4py.PETSc.DMDA.setProcSizes petsc4py.PETSc.DMDA-class.html#setProcSizes
petsc4py.PETSc.DMDA.setUniformCoordinates petsc4py.PETSc.DMDA-class.html#setUniformCoordinates
-petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
+petsc4py.PETSc.DM.getDimension petsc4py.PETSc.DM-class.html#getDimension
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.DM.setVecType petsc4py.PETSc.DM-class.html#setVecType
petsc4py.PETSc.DMDA.setBoundaryType petsc4py.PETSc.DMDA-class.html#setBoundaryType
@@ -420,6 +454,8 @@ petsc4py.PETSc.DMDA.ranges petsc4py.PETSc.DMDA-class.html#ranges
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
petsc4py.PETSc.DMDA.ghost_corners petsc4py.PETSc.DMDA-class.html#ghost_corners
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.DM.setSNESJacobian petsc4py.PETSc.DM-class.html#setSNESJacobian
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.DM.createLabel petsc4py.PETSc.DM-class.html#createLabel
petsc4py.PETSc.DM.getMatrix petsc4py.PETSc.DM-class.html#getMatrix
petsc4py.PETSc.DM.getDefaultGlobalSection petsc4py.PETSc.DM-class.html#getDefaultGlobalSection
@@ -438,6 +474,7 @@ petsc4py.PETSc.DMDA.ghost_ranges petsc4py.PETSc.DMDA-class.html#ghost_ranges
petsc4py.PETSc.DM.setCoordinates petsc4py.PETSc.DM-class.html#setCoordinates
petsc4py.PETSc.DM.createAggregates petsc4py.PETSc.DM-class.html#createAggregates
petsc4py.PETSc.DMDA.setStencil petsc4py.PETSc.DMDA-class.html#setStencil
+petsc4py.PETSc.DM.adaptLabel petsc4py.PETSc.DM-class.html#adaptLabel
petsc4py.PETSc.DM.createMat petsc4py.PETSc.DM-class.html#createMat
petsc4py.PETSc.DM.createLocalVector petsc4py.PETSc.DM-class.html#createLocalVector
petsc4py.PETSc.DMDA.setCoordinateName petsc4py.PETSc.DMDA-class.html#setCoordinateName
@@ -447,13 +484,13 @@ petsc4py.PETSc.DM.setMatType petsc4py.PETSc.DM-class.html#setMatType
petsc4py.PETSc.DM.setType petsc4py.PETSc.DM-class.html#setType
petsc4py.PETSc.DMDA.stencil petsc4py.PETSc.DMDA-class.html#stencil
petsc4py.PETSc.DMDA.getElementType petsc4py.PETSc.DMDA-class.html#getElementType
-petsc4py.PETSc.DMDA.setProcSizes petsc4py.PETSc.DMDA-class.html#setProcSizes
+petsc4py.PETSc.DM.BoundaryType petsc4py.PETSc.DM.BoundaryType-class.html
petsc4py.PETSc.DM.getCoordinateDM petsc4py.PETSc.DM-class.html#getCoordinateDM
petsc4py.PETSc.DMDA.duplicate petsc4py.PETSc.DMDA-class.html#duplicate
petsc4py.PETSc.DM.getNumLabels petsc4py.PETSc.DM-class.html#getNumLabels
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
-petsc4py.PETSc.DM.getDimension petsc4py.PETSc.DM-class.html#getDimension
petsc4py.PETSc.DM.createInjection petsc4py.PETSc.DM-class.html#createInjection
+petsc4py.PETSc.DM.setSNESFunction petsc4py.PETSc.DM-class.html#setSNESFunction
petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
@@ -468,13 +505,17 @@ petsc4py.PETSc.DMDA.getFieldName petsc4py.PETSc.DMDA-class.html#getFieldName
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.DMDA.getDim petsc4py.PETSc.DMDA-class.html#getDim
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
+petsc4py.PETSc.DM.getCoarsenLevel petsc4py.PETSc.DM-class.html#getCoarsenLevel
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
-petsc4py.PETSc.DM.BoundaryType petsc4py.PETSc.DM.BoundaryType-class.html
+petsc4py.PETSc.DM.getRefineLevel petsc4py.PETSc.DM-class.html#getRefineLevel
+petsc4py.PETSc.DM.setRefineLevel petsc4py.PETSc.DM-class.html#setRefineLevel
petsc4py.PETSc.DM.refine petsc4py.PETSc.DM-class.html#refine
petsc4py.PETSc.DM.createLocalVec petsc4py.PETSc.DM-class.html#createLocalVec
petsc4py.PETSc.DMDA.getInterpolationType petsc4py.PETSc.DMDA-class.html#getInterpolationType
petsc4py.PETSc.DMDA.create petsc4py.PETSc.DMDA-class.html#create
+petsc4py.PETSc.DM.getGlobalVec petsc4py.PETSc.DM-class.html#getGlobalVec
+petsc4py.PETSc.DM.setKSPComputeOperators petsc4py.PETSc.DM-class.html#setKSPComputeOperators
petsc4py.PETSc.DM.localToLocal petsc4py.PETSc.DM-class.html#localToLocal
petsc4py.PETSc.DMDA.__new__ petsc4py.PETSc.DMDA-class.html#__new__
petsc4py.PETSc.DMDA.getAO petsc4py.PETSc.DMDA-class.html#getAO
@@ -495,27 +536,30 @@ petsc4py.PETSc.DM.setDefaultSection petsc4py.PETSc.DM-class.html#setDefaultSecti
petsc4py.PETSc.DMDA.getVecArray petsc4py.PETSc.DMDA-class.html#getVecArray
petsc4py.PETSc.DMDA.createNaturalVector petsc4py.PETSc.DMDA-class.html#createNaturalVector
petsc4py.PETSc.DMDA.setStencilWidth petsc4py.PETSc.DMDA-class.html#setStencilWidth
+petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
petsc4py.PETSc.DMDA.naturalToGlobal petsc4py.PETSc.DMDA-class.html#naturalToGlobal
+petsc4py.PETSc.DM.createInterpolation petsc4py.PETSc.DM-class.html#createInterpolation
petsc4py.PETSc.DM.setLabelOutput petsc4py.PETSc.DM-class.html#setLabelOutput
petsc4py.PETSc.DM.createGlobalVector petsc4py.PETSc.DM-class.html#createGlobalVector
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.DMDA.dof petsc4py.PETSc.DMDA-class.html#dof
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.DM.restoreGlobalVec petsc4py.PETSc.DM-class.html#restoreGlobalVec
petsc4py.PETSc.DMDA.getCoordinateName petsc4py.PETSc.DMDA-class.html#getCoordinateName
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.DMDA.getCorners petsc4py.PETSc.DMDA-class.html#getCorners
petsc4py.PETSc.DMDA.ElementType petsc4py.PETSc.DMDA.ElementType-class.html
petsc4py.PETSc.DMDA.ElementType.Q1 petsc4py.PETSc.DMDA.ElementType-class.html#Q1
-petsc4py.PETSc.DMDA.ElementType.P1 petsc4py.PETSc.DMDA.ElementType-class.html#P1
petsc4py.PETSc.DMDA.ElementType.__qualname__ petsc4py.PETSc.DMDA.ElementType-class.html#__qualname__
+petsc4py.PETSc.DMDA.ElementType.P1 petsc4py.PETSc.DMDA.ElementType-class.html#P1
petsc4py.PETSc.DMDA.InterpolationType petsc4py.PETSc.DMDA.InterpolationType-class.html
petsc4py.PETSc.DMDA.InterpolationType.Q1 petsc4py.PETSc.DMDA.InterpolationType-class.html#Q1
petsc4py.PETSc.DMDA.InterpolationType.Q0 petsc4py.PETSc.DMDA.InterpolationType-class.html#Q0
petsc4py.PETSc.DMDA.InterpolationType.__qualname__ petsc4py.PETSc.DMDA.InterpolationType-class.html#__qualname__
petsc4py.PETSc.DMDA.StencilType petsc4py.PETSc.DMDA.StencilType-class.html
petsc4py.PETSc.DMDA.StencilType.BOX petsc4py.PETSc.DMDA.StencilType-class.html#BOX
-petsc4py.PETSc.DMDA.StencilType.STAR petsc4py.PETSc.DMDA.StencilType-class.html#STAR
petsc4py.PETSc.DMDA.StencilType.__qualname__ petsc4py.PETSc.DMDA.StencilType-class.html#__qualname__
+petsc4py.PETSc.DMDA.StencilType.STAR petsc4py.PETSc.DMDA.StencilType-class.html#STAR
petsc4py.PETSc.DMPlex petsc4py.PETSc.DMPlex-class.html
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.DM.getLGMap petsc4py.PETSc.DM-class.html#getLGMap
@@ -523,16 +567,21 @@ petsc4py.PETSc.DMPlex.setSupportSize petsc4py.PETSc.DMPlex-class.html#setSupport
petsc4py.PETSc.DMPlex.setSupport petsc4py.PETSc.DMPlex-class.html#setSupport
petsc4py.PETSc.DM.getStratumIS petsc4py.PETSc.DM-class.html#getStratumIS
petsc4py.PETSc.DMPlex.distribute petsc4py.PETSc.DMPlex-class.html#distribute
+petsc4py.PETSc.DMPlex.constructGhostCells petsc4py.PETSc.DMPlex-class.html#constructGhostCells
petsc4py.PETSc.DMPlex.createExodus petsc4py.PETSc.DMPlex-class.html#createExodus
petsc4py.PETSc.DMPlex.getChart petsc4py.PETSc.DMPlex-class.html#getChart
+petsc4py.PETSc.DM.adaptMetric petsc4py.PETSc.DM-class.html#adaptMetric
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.DM.createGlobalVec petsc4py.PETSc.DM-class.html#createGlobalVec
-petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
+petsc4py.PETSc.DM.getDimension petsc4py.PETSc.DM-class.html#getDimension
petsc4py.PETSc.DMPlex.permute petsc4py.PETSc.DMPlex-class.html#permute
petsc4py.PETSc.DMPlex.createPointNumbering petsc4py.PETSc.DMPlex-class.html#createPointNumbering
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.DMPlex.getSupport petsc4py.PETSc.DMPlex-class.html#getSupport
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.DM.removeLabel petsc4py.PETSc.DM-class.html#removeLabel
+petsc4py.PETSc.DM.getLocalVec petsc4py.PETSc.DM-class.html#getLocalVec
+petsc4py.PETSc.DMPlex.setVecClosure petsc4py.PETSc.DMPlex-class.html#setVecClosure
petsc4py.PETSc.DMPlex.setConeOrientation petsc4py.PETSc.DMPlex-class.html#setConeOrientation
petsc4py.PETSc.DM.coarsen petsc4py.PETSc.DM-class.html#coarsen
petsc4py.PETSc.DM.setLabelValue petsc4py.PETSc.DM-class.html#setLabelValue
@@ -548,17 +597,20 @@ petsc4py.PETSc.DM.createGlobalVector petsc4py.PETSc.DM-class.html#createGlobalVe
petsc4py.PETSc.DM.getDefaultSF petsc4py.PETSc.DM-class.html#getDefaultSF
petsc4py.PETSc.DMPlex.getRefinementUniform petsc4py.PETSc.DMPlex-class.html#getRefinementUniform
petsc4py.PETSc.DM.setFromOptions petsc4py.PETSc.DM-class.html#setFromOptions
+petsc4py.PETSc.DMPlex.setPartitioner petsc4py.PETSc.DMPlex-class.html#setPartitioner
petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
petsc4py.PETSc.DM.setDimension petsc4py.PETSc.DM-class.html#setDimension
petsc4py.PETSc.DM.hasLabel petsc4py.PETSc.DM-class.html#hasLabel
petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.DM.setAppCtx petsc4py.PETSc.DM-class.html#setAppCtx
-petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
+petsc4py.PETSc.DM.createFieldDecomposition petsc4py.PETSc.DM-class.html#createFieldDecomposition
petsc4py.PETSc.DMPlex.createExodusFromFile petsc4py.PETSc.DMPlex-class.html#createExodusFromFile
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
petsc4py.PETSc.DMPlex.getHeightStratum petsc4py.PETSc.DMPlex-class.html#getHeightStratum
petsc4py.PETSc.DMPlex.getJoin petsc4py.PETSc.DMPlex-class.html#getJoin
+petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
+petsc4py.PETSc.DM.restoreLocalVec petsc4py.PETSc.DM-class.html#restoreLocalVec
petsc4py.PETSc.DMPlex.createFromCellList petsc4py.PETSc.DMPlex-class.html#createFromCellList
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.DMPlex.stratify petsc4py.PETSc.DMPlex-class.html#stratify
@@ -567,6 +619,7 @@ petsc4py.PETSc.DM.getDefaultSection petsc4py.PETSc.DM-class.html#getDefaultSecti
petsc4py.PETSc.DMPlex.getDepth petsc4py.PETSc.DMPlex-class.html#getDepth
petsc4py.PETSc.DMPlex.getRefinementLimit petsc4py.PETSc.DMPlex-class.html#getRefinementLimit
petsc4py.PETSc.DMPlex.getOrdering petsc4py.PETSc.DMPlex-class.html#getOrdering
+petsc4py.PETSc.DMPlex.getAdjacency petsc4py.PETSc.DMPlex-class.html#getAdjacency
petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
petsc4py.PETSc.DMPlex.getConeSize petsc4py.PETSc.DMPlex-class.html#getConeSize
petsc4py.PETSc.DMPlex.createSquareBoundary petsc4py.PETSc.DMPlex-class.html#createSquareBoundary
@@ -575,41 +628,50 @@ petsc4py.PETSc.DM.refineHierarchy petsc4py.PETSc.DM-class.html#refineHierarchy
petsc4py.PETSc.DM.Type petsc4py.PETSc.DM.Type-class.html
petsc4py.PETSc.DMPlex.orient petsc4py.PETSc.DMPlex-class.html#orient
petsc4py.PETSc.DM.getCoordinates petsc4py.PETSc.DM-class.html#getCoordinates
-petsc4py.PETSc.DMPlex.setChart petsc4py.PETSc.DMPlex-class.html#setChart
+petsc4py.PETSc.DMPlex.createFromFile petsc4py.PETSc.DMPlex-class.html#createFromFile
petsc4py.PETSc.DM.createInterpolation petsc4py.PETSc.DM-class.html#createInterpolation
-petsc4py.PETSc.DM.getDimension petsc4py.PETSc.DM-class.html#getDimension
+petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.DM.setVecType petsc4py.PETSc.DM-class.html#setVecType
petsc4py.PETSc.DM.globalToLocal petsc4py.PETSc.DM-class.html#globalToLocal
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
petsc4py.PETSc.DMPlex.markBoundaryFaces petsc4py.PETSc.DMPlex-class.html#markBoundaryFaces
+petsc4py.PETSc.DMPlex.uninterpolate petsc4py.PETSc.DMPlex-class.html#uninterpolate
+petsc4py.PETSc.DMPlex.setMatClosure petsc4py.PETSc.DMPlex-class.html#setMatClosure
+petsc4py.PETSc.DMPlex.getAdjacencyUseCone petsc4py.PETSc.DMPlex-class.html#getAdjacencyUseCone
petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
petsc4py.PETSc.DM.getLabelName petsc4py.PETSc.DM-class.html#getLabelName
petsc4py.PETSc.DM.setUp petsc4py.PETSc.DM-class.html#setUp
+petsc4py.PETSc.DMPlex.interpolate petsc4py.PETSc.DMPlex-class.html#interpolate
petsc4py.PETSc.DM.getPointSF petsc4py.PETSc.DM-class.html#getPointSF
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
petsc4py.PETSc.DM.createMatrix petsc4py.PETSc.DM-class.html#createMatrix
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.DM.setSNESJacobian petsc4py.PETSc.DM-class.html#setSNESJacobian
+petsc4py.PETSc.DMPlex.getVecClosure petsc4py.PETSc.DMPlex-class.html#getVecClosure
petsc4py.PETSc.DMPlex.getCone petsc4py.PETSc.DMPlex-class.html#getCone
petsc4py.PETSc.DMPlex.setTriangleOptions petsc4py.PETSc.DMPlex-class.html#setTriangleOptions
petsc4py.PETSc.DMPlex.generate petsc4py.PETSc.DMPlex-class.html#generate
petsc4py.PETSc.DM.getMatrix petsc4py.PETSc.DM-class.html#getMatrix
petsc4py.PETSc.DM.getDefaultGlobalSection petsc4py.PETSc.DM-class.html#getDefaultGlobalSection
-petsc4py.PETSc.DM.clearLabelValue petsc4py.PETSc.DM-class.html#clearLabelValue
+petsc4py.PETSc.DMPlex.getPointGlobal petsc4py.PETSc.DMPlex-class.html#getPointGlobal
petsc4py.PETSc.DM.convert petsc4py.PETSc.DM-class.html#convert
petsc4py.PETSc.DM.setDefaultGlobalSection petsc4py.PETSc.DM-class.html#setDefaultGlobalSection
-petsc4py.PETSc.DM.getCoordinatesLocal petsc4py.PETSc.DM-class.html#getCoordinatesLocal
+petsc4py.PETSc.DMPlex.setAdjacencyUseAnchors petsc4py.PETSc.DMPlex-class.html#setAdjacencyUseAnchors
petsc4py.PETSc.DM.getLabelOutput petsc4py.PETSc.DM-class.html#getLabelOutput
+petsc4py.PETSc.DMPlex.getAdjacencyUseClosure petsc4py.PETSc.DMPlex-class.html#getAdjacencyUseClosure
petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
petsc4py.PETSc.DMPlex.distributeOverlap petsc4py.PETSc.DMPlex-class.html#distributeOverlap
petsc4py.PETSc.DMPlex.insertCone petsc4py.PETSc.DMPlex-class.html#insertCone
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.DMPlex.setAdjacencyUseClosure petsc4py.PETSc.DMPlex-class.html#setAdjacencyUseClosure
+petsc4py.PETSc.DM.getRefineLevel petsc4py.PETSc.DM-class.html#getRefineLevel
petsc4py.PETSc.DMPlex.getSupportSize petsc4py.PETSc.DMPlex-class.html#getSupportSize
-petsc4py.PETSc.DMPlex.getMaxSizes petsc4py.PETSc.DMPlex-class.html#getMaxSizes
+petsc4py.PETSc.DMPlex.createCubeBoundary petsc4py.PETSc.DMPlex-class.html#createCubeBoundary
petsc4py.PETSc.DM.setCoordinates petsc4py.PETSc.DM-class.html#setCoordinates
petsc4py.PETSc.DM.createAggregates petsc4py.PETSc.DM-class.html#createAggregates
+petsc4py.PETSc.DM.adaptLabel petsc4py.PETSc.DM-class.html#adaptLabel
petsc4py.PETSc.DM.createMat petsc4py.PETSc.DM-class.html#createMat
petsc4py.PETSc.DM.createLocalVector petsc4py.PETSc.DM-class.html#createLocalVector
petsc4py.PETSc.DM.getCoordinateSection petsc4py.PETSc.DM-class.html#getCoordinateSection
@@ -626,26 +688,33 @@ petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
petsc4py.PETSc.DM.getNumLabels petsc4py.PETSc.DM-class.html#getNumLabels
petsc4py.PETSc.DMPlex.createSection petsc4py.PETSc.DMPlex-class.html#createSection
petsc4py.PETSc.DMPlex.vecGetClosure petsc4py.PETSc.DMPlex-class.html#vecGetClosure
-petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
+petsc4py.PETSc.DM.setSNESFunction petsc4py.PETSc.DM-class.html#setSNESFunction
+petsc4py.PETSc.DMPlex.getPointLocalField petsc4py.PETSc.DMPlex-class.html#getPointLocalField
petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
+petsc4py.PETSc.DM.clearLabelValue petsc4py.PETSc.DM-class.html#clearLabelValue
petsc4py.PETSc.DMPlex.getVertexNumbering petsc4py.PETSc.DMPlex-class.html#getVertexNumbering
petsc4py.PETSc.DM.getType petsc4py.PETSc.DM-class.html#getType
petsc4py.PETSc.Object.refcount petsc4py.PETSc.Object-class.html#refcount
petsc4py.PETSc.DMPlex.setRefinementUniform petsc4py.PETSc.DMPlex-class.html#setRefinementUniform
petsc4py.PETSc.DM.setPointSF petsc4py.PETSc.DM-class.html#setPointSF
-petsc4py.PETSc.DMPlex.createCubeBoundary petsc4py.PETSc.DMPlex-class.html#createCubeBoundary
+petsc4py.PETSc.DMPlex.getMaxSizes petsc4py.PETSc.DMPlex-class.html#getMaxSizes
petsc4py.PETSc.DMPlex.getTransitiveClosure petsc4py.PETSc.DMPlex-class.html#getTransitiveClosure
+petsc4py.PETSc.DM.getCoordinatesLocal petsc4py.PETSc.DM-class.html#getCoordinatesLocal
+petsc4py.PETSc.DMPlex.getPointGlobalField petsc4py.PETSc.DMPlex-class.html#getPointGlobalField
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
petsc4py.PETSc.DMPlex.setConeSize petsc4py.PETSc.DMPlex-class.html#setConeSize
petsc4py.PETSc.DMPlex.insertConeOrientation petsc4py.PETSc.DMPlex-class.html#insertConeOrientation
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.DMPlex.getMeet petsc4py.PETSc.DMPlex-class.html#getMeet
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
+petsc4py.PETSc.DM.getCoarsenLevel petsc4py.PETSc.DM-class.html#getCoarsenLevel
petsc4py.PETSc.DM.getAppCtx petsc4py.PETSc.DM-class.html#getAppCtx
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.DM.createInjection petsc4py.PETSc.DM-class.html#createInjection
+petsc4py.PETSc.DM.setRefineLevel petsc4py.PETSc.DM-class.html#setRefineLevel
petsc4py.PETSc.DMPlex.createCGNSFromFile petsc4py.PETSc.DMPlex-class.html#createCGNSFromFile
+petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
petsc4py.PETSc.DMPlex.createCohesiveSubmesh petsc4py.PETSc.DMPlex-class.html#createCohesiveSubmesh
petsc4py.PETSc.DMPlex.symmetrize petsc4py.PETSc.DMPlex-class.html#symmetrize
petsc4py.PETSc.DMPlex.distributeField petsc4py.PETSc.DMPlex-class.html#distributeField
@@ -654,6 +723,10 @@ petsc4py.PETSc.DM.BoundaryType petsc4py.PETSc.DM.BoundaryType-class.html
petsc4py.PETSc.DM.refine petsc4py.PETSc.DM-class.html#refine
petsc4py.PETSc.DM.createLocalVec petsc4py.PETSc.DM-class.html#createLocalVec
petsc4py.PETSc.DMPlex.setAdjacencyUseCone petsc4py.PETSc.DMPlex-class.html#setAdjacencyUseCone
+petsc4py.PETSc.DM.restoreGlobalVec petsc4py.PETSc.DM-class.html#restoreGlobalVec
+petsc4py.PETSc.DMPlex.getPointLocal petsc4py.PETSc.DMPlex-class.html#getPointLocal
+petsc4py.PETSc.DM.getGlobalVec petsc4py.PETSc.DM-class.html#getGlobalVec
+petsc4py.PETSc.DM.setKSPComputeOperators petsc4py.PETSc.DM-class.html#setKSPComputeOperators
petsc4py.PETSc.DM.localToLocal petsc4py.PETSc.DM-class.html#localToLocal
petsc4py.PETSc.DMPlex.__new__ petsc4py.PETSc.DMPlex-class.html#__new__
petsc4py.PETSc.DM.getLabelSize petsc4py.PETSc.DM-class.html#getLabelSize
@@ -662,6 +735,7 @@ petsc4py.PETSc.DM.coarsenHierarchy petsc4py.PETSc.DM-class.html#coarsenHierarchy
petsc4py.PETSc.DM.destroy petsc4py.PETSc.DM-class.html#destroy
petsc4py.PETSc.DMPlex.getConeOrientation petsc4py.PETSc.DMPlex-class.html#getConeOrientation
petsc4py.PETSc.DMPlex.createGmsh petsc4py.PETSc.DMPlex-class.html#createGmsh
+petsc4py.PETSc.DMPlex.setChart petsc4py.PETSc.DMPlex-class.html#setChart
petsc4py.PETSc.DMPlex.setRefinementLimit petsc4py.PETSc.DMPlex-class.html#setRefinementLimit
petsc4py.PETSc.Object.setAttr petsc4py.PETSc.Object-class.html#setAttr
petsc4py.PETSc.DM.createDefaultSF petsc4py.PETSc.DM-class.html#createDefaultSF
@@ -669,6 +743,7 @@ petsc4py.PETSc.DM.setCoordinatesLocal petsc4py.PETSc.DM-class.html#setCoordinate
petsc4py.PETSc.DM.clone petsc4py.PETSc.DM-class.html#clone
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
petsc4py.PETSc.DM.setDefaultSection petsc4py.PETSc.DM-class.html#setDefaultSection
+petsc4py.PETSc.DMPlex.getAdjacencyUseAnchors petsc4py.PETSc.DMPlex-class.html#getAdjacencyUseAnchors
petsc4py.PETSc.DM.setLabelOutput petsc4py.PETSc.DM-class.html#setLabelOutput
petsc4py.PETSc.DMPlex.createBoxMesh petsc4py.PETSc.DMPlex-class.html#createBoxMesh
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
@@ -683,14 +758,19 @@ petsc4py.PETSc.DM.getLGMap petsc4py.PETSc.DM-class.html#getLGMap
petsc4py.PETSc.DM.getStratumIS petsc4py.PETSc.DM-class.html#getStratumIS
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
petsc4py.PETSc.DMShell.setGlobalToLocal petsc4py.PETSc.DMShell-class.html#setGlobalToLocal
+petsc4py.PETSc.DM.restoreLocalVec petsc4py.PETSc.DM-class.html#restoreLocalVec
petsc4py.PETSc.DMShell.setCreateSubDM petsc4py.PETSc.DMShell-class.html#setCreateSubDM
+petsc4py.PETSc.DM.adaptMetric petsc4py.PETSc.DM-class.html#adaptMetric
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.DM.createGlobalVec petsc4py.PETSc.DM-class.html#createGlobalVec
petsc4py.PETSc.DM.clearLabelStratum petsc4py.PETSc.DM-class.html#clearLabelStratum
petsc4py.PETSc.DMShell.setCoarsen petsc4py.PETSc.DMShell-class.html#setCoarsen
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.DM.createMatrix petsc4py.PETSc.DM-class.html#createMatrix
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
+petsc4py.PETSc.DMShell.setCreateDomainDecompositionScatters petsc4py.PETSc.DMShell-class.html#setCreateDomainDecompositionScatters
petsc4py.PETSc.DM.removeLabel petsc4py.PETSc.DM-class.html#removeLabel
+petsc4py.PETSc.DM.getLocalVec petsc4py.PETSc.DM-class.html#getLocalVec
petsc4py.PETSc.DM.coarsen petsc4py.PETSc.DM-class.html#coarsen
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.DMShell.setLocalVector petsc4py.PETSc.DMShell-class.html#setLocalVector
@@ -710,8 +790,9 @@ petsc4py.PETSc.DM.hasLabel petsc4py.PETSc.DM-class.html#hasLabel
petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.DM.setAppCtx petsc4py.PETSc.DM-class.html#setAppCtx
-petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
+petsc4py.PETSc.DM.createFieldDecomposition petsc4py.PETSc.DM-class.html#createFieldDecomposition
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
+petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
petsc4py.PETSc.DMShell.setRefine petsc4py.PETSc.DMShell-class.html#setRefine
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.DMShell.setCreateInjection petsc4py.PETSc.DMShell-class.html#setCreateInjection
@@ -719,7 +800,6 @@ petsc4py.PETSc.DM.view petsc4py.PETSc.DM-class.html#view
petsc4py.PETSc.DM.getDefaultSection petsc4py.PETSc.DM-class.html#getDefaultSection
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
petsc4py.PETSc.DMShell.setLocalToGlobal petsc4py.PETSc.DMShell-class.html#setLocalToGlobal
-petsc4py.PETSc.DM.getDefaultSF petsc4py.PETSc.DM-class.html#getDefaultSF
petsc4py.PETSc.DM.getBlockSize petsc4py.PETSc.DM-class.html#getBlockSize
petsc4py.PETSc.DM.refineHierarchy petsc4py.PETSc.DM-class.html#refineHierarchy
petsc4py.PETSc.DM.Type petsc4py.PETSc.DM.Type-class.html
@@ -732,6 +812,7 @@ petsc4py.PETSc.DM.setVecType petsc4py.PETSc.DM-class.html#setVecType
petsc4py.PETSc.DMShell.setCreateGlobalVector petsc4py.PETSc.DMShell-class.html#setCreateGlobalVector
petsc4py.PETSc.DM.globalToLocal petsc4py.PETSc.DM-class.html#globalToLocal
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
+petsc4py.PETSc.DM.setCoordinatesLocal petsc4py.PETSc.DM-class.html#setCoordinatesLocal
petsc4py.PETSc.DMShell.setCreateMatrix petsc4py.PETSc.DMShell-class.html#setCreateMatrix
petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
petsc4py.PETSc.DM.getLabelName petsc4py.PETSc.DM-class.html#getLabelName
@@ -740,9 +821,10 @@ petsc4py.PETSc.DM.getPointSF petsc4py.PETSc.DM-class.html#getPointSF
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.DM.setSNESJacobian petsc4py.PETSc.DM-class.html#setSNESJacobian
petsc4py.PETSc.DM.createLabel petsc4py.PETSc.DM-class.html#createLabel
petsc4py.PETSc.DM.getMatrix petsc4py.PETSc.DM-class.html#getMatrix
-petsc4py.PETSc.DM.getDefaultGlobalSection petsc4py.PETSc.DM-class.html#getDefaultGlobalSection
+petsc4py.PETSc.DM.setSNESFunction petsc4py.PETSc.DM-class.html#setSNESFunction
petsc4py.PETSc.DM.clearLabelValue petsc4py.PETSc.DM-class.html#clearLabelValue
petsc4py.PETSc.DM.convert petsc4py.PETSc.DM-class.html#convert
petsc4py.PETSc.DM.setDefaultGlobalSection petsc4py.PETSc.DM-class.html#setDefaultGlobalSection
@@ -754,6 +836,7 @@ petsc4py.PETSc.DM.setLabelValue petsc4py.PETSc.DM-class.html#setLabelValue
petsc4py.PETSc.DMShell.setMatrix petsc4py.PETSc.DMShell-class.html#setMatrix
petsc4py.PETSc.DM.setCoordinates petsc4py.PETSc.DM-class.html#setCoordinates
petsc4py.PETSc.DM.createAggregates petsc4py.PETSc.DM-class.html#createAggregates
+petsc4py.PETSc.DM.adaptLabel petsc4py.PETSc.DM-class.html#adaptLabel
petsc4py.PETSc.DM.createMat petsc4py.PETSc.DM-class.html#createMat
petsc4py.PETSc.DM.createLocalVector petsc4py.PETSc.DM-class.html#createLocalVector
petsc4py.PETSc.DM.getCoordinateSection petsc4py.PETSc.DM-class.html#getCoordinateSection
@@ -763,9 +846,11 @@ petsc4py.PETSc.DMShell.create petsc4py.PETSc.DMShell-class.html#create
petsc4py.PETSc.DM.BoundaryType petsc4py.PETSc.DM.BoundaryType-class.html
petsc4py.PETSc.DMShell.setLocalToGlobalVecScatter petsc4py.PETSc.DMShell-class.html#setLocalToGlobalVecScatter
petsc4py.PETSc.DM.getCoordinateDM petsc4py.PETSc.DM-class.html#getCoordinateDM
+petsc4py.PETSc.DMShell.setCreateRestriction petsc4py.PETSc.DMShell-class.html#setCreateRestriction
petsc4py.PETSc.DM.getNumLabels petsc4py.PETSc.DM-class.html#getNumLabels
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
petsc4py.PETSc.DM.createInjection petsc4py.PETSc.DM-class.html#createInjection
+petsc4py.PETSc.DM.getDefaultGlobalSection petsc4py.PETSc.DM-class.html#getDefaultGlobalSection
petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
@@ -778,10 +863,16 @@ petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.DMShell.setCreateLocalVector petsc4py.PETSc.DMShell-class.html#setCreateLocalVector
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
+petsc4py.PETSc.DM.getCoarsenLevel petsc4py.PETSc.DM-class.html#getCoarsenLevel
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
-petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.DM.refine petsc4py.PETSc.DM-class.html#refine
+petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
+petsc4py.PETSc.DM.getRefineLevel petsc4py.PETSc.DM-class.html#getRefineLevel
+petsc4py.PETSc.DM.setRefineLevel petsc4py.PETSc.DM-class.html#setRefineLevel
+petsc4py.PETSc.DMShell.setCreateDomainDecomposition petsc4py.PETSc.DMShell-class.html#setCreateDomainDecomposition
petsc4py.PETSc.DM.createLocalVec petsc4py.PETSc.DM-class.html#createLocalVec
+petsc4py.PETSc.DM.getGlobalVec petsc4py.PETSc.DM-class.html#getGlobalVec
+petsc4py.PETSc.DM.setKSPComputeOperators petsc4py.PETSc.DM-class.html#setKSPComputeOperators
petsc4py.PETSc.DM.localToLocal petsc4py.PETSc.DM-class.html#localToLocal
petsc4py.PETSc.DMShell.__new__ petsc4py.PETSc.DMShell-class.html#__new__
petsc4py.PETSc.DM.getLabelSize petsc4py.PETSc.DM-class.html#getLabelSize
@@ -793,20 +884,21 @@ petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrea
petsc4py.PETSc.DMShell.setGlobalVector petsc4py.PETSc.DMShell-class.html#setGlobalVector
petsc4py.PETSc.Object.setAttr petsc4py.PETSc.Object-class.html#setAttr
petsc4py.PETSc.DM.createDefaultSF petsc4py.PETSc.DM-class.html#createDefaultSF
-petsc4py.PETSc.DM.setCoordinatesLocal petsc4py.PETSc.DM-class.html#setCoordinatesLocal
+petsc4py.PETSc.DM.getDefaultSF petsc4py.PETSc.DM-class.html#getDefaultSF
petsc4py.PETSc.DM.clone petsc4py.PETSc.DM-class.html#clone
petsc4py.PETSc.DM.setDefaultSection petsc4py.PETSc.DM-class.html#setDefaultSection
petsc4py.PETSc.DM.setLabelOutput petsc4py.PETSc.DM-class.html#setLabelOutput
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.DM.restoreGlobalVec petsc4py.PETSc.DM-class.html#restoreGlobalVec
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.Error petsc4py.PETSc.Error-class.html
-petsc4py.PETSc.Error.__str__ petsc4py.PETSc.Error-class.html#__str__
-petsc4py.PETSc.Error.__init__ petsc4py.PETSc.Error-class.html#__init__
petsc4py.PETSc.Error._traceback_ petsc4py.PETSc.Error-class.html#_traceback_
petsc4py.PETSc.Error.__nonzero__ petsc4py.PETSc.Error-class.html#__nonzero__
+petsc4py.PETSc.Error.__str__ petsc4py.PETSc.Error-class.html#__str__
petsc4py.PETSc.Error.__qualname__ petsc4py.PETSc.Error-class.html#__qualname__
petsc4py.PETSc.Error.__repr__ petsc4py.PETSc.Error-class.html#__repr__
+petsc4py.PETSc.Error.__init__ petsc4py.PETSc.Error-class.html#__init__
petsc4py.PETSc.IS petsc4py.PETSc.IS-class.html
petsc4py.PETSc.IS.getSize petsc4py.PETSc.IS-class.html#getSize
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
@@ -814,6 +906,7 @@ petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.IS.invertPermutation petsc4py.PETSc.IS-class.html#invertPermutation
petsc4py.PETSc.IS.__enter__ petsc4py.PETSc.IS-class.html#__enter__
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
@@ -900,26 +993,26 @@ petsc4py.PETSc.IS.isIdentity petsc4py.PETSc.IS-class.html#isIdentity
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.IS.sum petsc4py.PETSc.IS-class.html#sum
petsc4py.PETSc.IS.Type petsc4py.PETSc.IS.Type-class.html
-petsc4py.PETSc.IS.Type.GENERAL petsc4py.PETSc.IS.Type-class.html#GENERAL
petsc4py.PETSc.IS.Type.__qualname__ petsc4py.PETSc.IS.Type-class.html#__qualname__
petsc4py.PETSc.IS.Type.STRIDE petsc4py.PETSc.IS.Type-class.html#STRIDE
petsc4py.PETSc.IS.Type.BLOCK petsc4py.PETSc.IS.Type-class.html#BLOCK
+petsc4py.PETSc.IS.Type.GENERAL petsc4py.PETSc.IS.Type-class.html#GENERAL
petsc4py.PETSc.InsertMode petsc4py.PETSc.InsertMode-class.html
-petsc4py.PETSc.InsertMode.ADD_ALL petsc4py.PETSc.InsertMode-class.html#ADD_ALL
-petsc4py.PETSc.InsertMode.MAX_VALUES petsc4py.PETSc.InsertMode-class.html#MAX_VALUES
petsc4py.PETSc.InsertMode.INSERT petsc4py.PETSc.InsertMode-class.html#INSERT
+petsc4py.PETSc.InsertMode.ADD_ALL petsc4py.PETSc.InsertMode-class.html#ADD_ALL
petsc4py.PETSc.InsertMode.NOT_SET_VALUES petsc4py.PETSc.InsertMode-class.html#NOT_SET_VALUES
-petsc4py.PETSc.InsertMode.INSERT_BC_VALUES petsc4py.PETSc.InsertMode-class.html#INSERT_BC_VALUES
-petsc4py.PETSc.InsertMode.INSERT_BC petsc4py.PETSc.InsertMode-class.html#INSERT_BC
-petsc4py.PETSc.InsertMode.ADD petsc4py.PETSc.InsertMode-class.html#ADD
-petsc4py.PETSc.InsertMode.INSERT_ALL_VALUES petsc4py.PETSc.InsertMode-class.html#INSERT_ALL_VALUES
-petsc4py.PETSc.InsertMode.ADD_BC petsc4py.PETSc.InsertMode-class.html#ADD_BC
petsc4py.PETSc.InsertMode.MAX petsc4py.PETSc.InsertMode-class.html#MAX
petsc4py.PETSc.InsertMode.ADD_ALL_VALUES petsc4py.PETSc.InsertMode-class.html#ADD_ALL_VALUES
petsc4py.PETSc.InsertMode.__qualname__ petsc4py.PETSc.InsertMode-class.html#__qualname__
petsc4py.PETSc.InsertMode.INSERT_VALUES petsc4py.PETSc.InsertMode-class.html#INSERT_VALUES
+petsc4py.PETSc.InsertMode.ADD petsc4py.PETSc.InsertMode-class.html#ADD
petsc4py.PETSc.InsertMode.ADD_BC_VALUES petsc4py.PETSc.InsertMode-class.html#ADD_BC_VALUES
petsc4py.PETSc.InsertMode.ADD_VALUES petsc4py.PETSc.InsertMode-class.html#ADD_VALUES
+petsc4py.PETSc.InsertMode.INSERT_ALL_VALUES petsc4py.PETSc.InsertMode-class.html#INSERT_ALL_VALUES
+petsc4py.PETSc.InsertMode.ADD_BC petsc4py.PETSc.InsertMode-class.html#ADD_BC
+petsc4py.PETSc.InsertMode.MAX_VALUES petsc4py.PETSc.InsertMode-class.html#MAX_VALUES
+petsc4py.PETSc.InsertMode.INSERT_BC_VALUES petsc4py.PETSc.InsertMode-class.html#INSERT_BC_VALUES
+petsc4py.PETSc.InsertMode.INSERT_BC petsc4py.PETSc.InsertMode-class.html#INSERT_BC
petsc4py.PETSc.InsertMode.INSERT_ALL petsc4py.PETSc.InsertMode-class.html#INSERT_ALL
petsc4py.PETSc.KSP petsc4py.PETSc.KSP-class.html
petsc4py.PETSc.KSP.getPCSide petsc4py.PETSc.KSP-class.html#getPCSide
@@ -937,6 +1030,7 @@ petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.KSP.its petsc4py.PETSc.KSP-class.html#its
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.KSP.monitor petsc4py.PETSc.KSP-class.html#monitor
petsc4py.PETSc.KSP.setGMRESRestart petsc4py.PETSc.KSP-class.html#setGMRESRestart
petsc4py.PETSc.KSP.setOperators petsc4py.PETSc.KSP-class.html#setOperators
@@ -1052,48 +1146,48 @@ petsc4py.PETSc.KSP.solve petsc4py.PETSc.KSP-class.html#solve
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.KSP.setPythonContext petsc4py.PETSc.KSP-class.html#setPythonContext
petsc4py.PETSc.KSP.ConvergedReason petsc4py.PETSc.KSP.ConvergedReason-class.html
-petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_MAX_IT petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_MAX_IT
-petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_INDEFINITE_PC petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_INDEFINITE_PC
-petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_ATOL petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL
+petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_ITS petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ITS
petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_BREAKDOWN petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_BREAKDOWN
-petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_NONSYMMETRIC petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_NONSYMMETRIC
-petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_INDEFINITE_MAT petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_INDEFINITE_MAT
-petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_CG_CONSTRAINED petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_CG_CONSTRAINED
petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_DTOL petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_DTOL
-petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_BREAKDOWN_BICG petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_BREAKDOWN_BICG
-petsc4py.PETSc.KSP.ConvergedReason.ITERATING petsc4py.PETSc.KSP.ConvergedReason-class.html#ITERATING
-petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_ITS petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ITS
-petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_NULL petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_NULL
-petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_ATOL_NORMAL petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL_NORMAL
-petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_RTOL_NORMAL petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_RTOL_NORMAL
petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_STEP_LENGTH petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_STEP_LENGTH
petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_RTOL petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_RTOL
+petsc4py.PETSc.KSP.ConvergedReason.ITERATING petsc4py.PETSc.KSP.ConvergedReason-class.html#ITERATING
+petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_CG_CONSTRAINED petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_CG_CONSTRAINED
+petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_INDEFINITE_MAT petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_INDEFINITE_MAT
petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_HAPPY_BREAKDOWN petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_HAPPY_BREAKDOWN
+petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_NULL petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_NULL
+petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_MAX_IT petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_MAX_IT
petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_NANORINF petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_NANORINF
petsc4py.PETSc.KSP.ConvergedReason.__qualname__ petsc4py.PETSc.KSP.ConvergedReason-class.html#__qualname__
petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_ITERATING petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ITERATING
+petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_INDEFINITE_PC petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_INDEFINITE_PC
+petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_ATOL_NORMAL petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL_NORMAL
+petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_RTOL_NORMAL petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_RTOL_NORMAL
+petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_ATOL petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL
+petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_NONSYMMETRIC petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_NONSYMMETRIC
petsc4py.PETSc.KSP.ConvergedReason.CONVERGED_CG_NEG_CURVE petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_CG_NEG_CURVE
+petsc4py.PETSc.KSP.ConvergedReason.DIVERGED_BREAKDOWN_BICG petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_BREAKDOWN_BICG
petsc4py.PETSc.KSP.NormType petsc4py.PETSc.KSP.NormType-class.html
-petsc4py.PETSc.KSP.NormType.PRECONDITIONED petsc4py.PETSc.KSP.NormType-class.html#PRECONDITIONED
-petsc4py.PETSc.KSP.NormType.DEFAULT petsc4py.PETSc.KSP.NormType-class.html#DEFAULT
-petsc4py.PETSc.KSP.NormType.NORM_NONE petsc4py.PETSc.KSP.NormType-class.html#NORM_NONE
+petsc4py.PETSc.KSP.NormType.NORM_DEFAULT petsc4py.PETSc.KSP.NormType-class.html#NORM_DEFAULT
petsc4py.PETSc.KSP.NormType.UNPRECONDITIONED petsc4py.PETSc.KSP.NormType-class.html#UNPRECONDITIONED
petsc4py.PETSc.KSP.NormType.NONE petsc4py.PETSc.KSP.NormType-class.html#NONE
-petsc4py.PETSc.KSP.NormType.NO petsc4py.PETSc.KSP.NormType-class.html#NO
-petsc4py.PETSc.KSP.NormType.NORM_DEFAULT petsc4py.PETSc.KSP.NormType-class.html#NORM_DEFAULT
+petsc4py.PETSc.KSP.NormType.NORM_PRECONDITIONED petsc4py.PETSc.KSP.NormType-class.html#NORM_PRECONDITIONED
petsc4py.PETSc.KSP.NormType.NATURAL petsc4py.PETSc.KSP.NormType-class.html#NATURAL
+petsc4py.PETSc.KSP.NormType.NO petsc4py.PETSc.KSP.NormType-class.html#NO
+petsc4py.PETSc.KSP.NormType.DEFAULT petsc4py.PETSc.KSP.NormType-class.html#DEFAULT
+petsc4py.PETSc.KSP.NormType.PRECONDITIONED petsc4py.PETSc.KSP.NormType-class.html#PRECONDITIONED
petsc4py.PETSc.KSP.NormType.NORM_NATURAL petsc4py.PETSc.KSP.NormType-class.html#NORM_NATURAL
-petsc4py.PETSc.KSP.NormType.NORM_UNPRECONDITIONED petsc4py.PETSc.KSP.NormType-class.html#NORM_UNPRECONDITIONED
-petsc4py.PETSc.KSP.NormType.NORM_PRECONDITIONED petsc4py.PETSc.KSP.NormType-class.html#NORM_PRECONDITIONED
petsc4py.PETSc.KSP.NormType.__qualname__ petsc4py.PETSc.KSP.NormType-class.html#__qualname__
+petsc4py.PETSc.KSP.NormType.NORM_UNPRECONDITIONED petsc4py.PETSc.KSP.NormType-class.html#NORM_UNPRECONDITIONED
+petsc4py.PETSc.KSP.NormType.NORM_NONE petsc4py.PETSc.KSP.NormType-class.html#NORM_NONE
petsc4py.PETSc.KSP.Type petsc4py.PETSc.KSP.Type-class.html
petsc4py.PETSc.KSP.Type.PIPEFGMRES petsc4py.PETSc.KSP.Type-class.html#PIPEFGMRES
petsc4py.PETSc.KSP.Type.TFQMR petsc4py.PETSc.KSP.Type-class.html#TFQMR
petsc4py.PETSc.KSP.Type.PYTHON petsc4py.PETSc.KSP.Type-class.html#PYTHON
petsc4py.PETSc.KSP.Type.PIPECR petsc4py.PETSc.KSP.Type-class.html#PIPECR
petsc4py.PETSc.KSP.Type.IBCGS petsc4py.PETSc.KSP.Type-class.html#IBCGS
+petsc4py.PETSc.KSP.Type.LCD petsc4py.PETSc.KSP.Type-class.html#LCD
petsc4py.PETSc.KSP.Type.PIPECGRR petsc4py.PETSc.KSP.Type-class.html#PIPECGRR
-petsc4py.PETSc.KSP.Type.STCG petsc4py.PETSc.KSP.Type-class.html#STCG
petsc4py.PETSc.KSP.Type.QCG petsc4py.PETSc.KSP.Type-class.html#QCG
petsc4py.PETSc.KSP.Type.PIPECG petsc4py.PETSc.KSP.Type-class.html#PIPECG
petsc4py.PETSc.KSP.Type.PGMRES petsc4py.PETSc.KSP.Type-class.html#PGMRES
@@ -1105,9 +1199,9 @@ petsc4py.PETSc.KSP.Type.MINRES petsc4py.PETSc.KSP.Type-class.html#MINRES
petsc4py.PETSc.KSP.Type.FCG petsc4py.PETSc.KSP.Type-class.html#FCG
petsc4py.PETSc.KSP.Type.CGS petsc4py.PETSc.KSP.Type-class.html#CGS
petsc4py.PETSc.KSP.Type.DGMRES petsc4py.PETSc.KSP.Type-class.html#DGMRES
+petsc4py.PETSc.KSP.Type.CGGLTR petsc4py.PETSc.KSP.Type-class.html#CGGLTR
petsc4py.PETSc.KSP.Type.CG petsc4py.PETSc.KSP.Type-class.html#CG
petsc4py.PETSc.KSP.Type.LSQR petsc4py.PETSc.KSP.Type-class.html#LSQR
-petsc4py.PETSc.KSP.Type.GLTR petsc4py.PETSc.KSP.Type-class.html#GLTR
petsc4py.PETSc.KSP.Type.TCQMR petsc4py.PETSc.KSP.Type-class.html#TCQMR
petsc4py.PETSc.KSP.Type.BCGS petsc4py.PETSc.KSP.Type-class.html#BCGS
petsc4py.PETSc.KSP.Type.TSIRM petsc4py.PETSc.KSP.Type-class.html#TSIRM
@@ -1123,11 +1217,12 @@ petsc4py.PETSc.KSP.Type.PIPEFCG petsc4py.PETSc.KSP.Type-class.html#PIPEFCG
petsc4py.PETSc.KSP.Type.BCGSL petsc4py.PETSc.KSP.Type-class.html#BCGSL
petsc4py.PETSc.KSP.Type.BICG petsc4py.PETSc.KSP.Type-class.html#BICG
petsc4py.PETSc.KSP.Type.__qualname__ petsc4py.PETSc.KSP.Type-class.html#__qualname__
-petsc4py.PETSc.KSP.Type.LCD petsc4py.PETSc.KSP.Type-class.html#LCD
+petsc4py.PETSc.KSP.Type.FETIDP petsc4py.PETSc.KSP.Type-class.html#FETIDP
+petsc4py.PETSc.KSP.Type.CGNASH petsc4py.PETSc.KSP.Type-class.html#CGNASH
petsc4py.PETSc.KSP.Type.PREONLY petsc4py.PETSc.KSP.Type-class.html#PREONLY
petsc4py.PETSc.KSP.Type.GMRES petsc4py.PETSc.KSP.Type-class.html#GMRES
petsc4py.PETSc.KSP.Type.RICHARDSON petsc4py.PETSc.KSP.Type-class.html#RICHARDSON
-petsc4py.PETSc.KSP.Type.NASH petsc4py.PETSc.KSP.Type-class.html#NASH
+petsc4py.PETSc.KSP.Type.CGSTCG petsc4py.PETSc.KSP.Type-class.html#CGSTCG
petsc4py.PETSc.LGMap petsc4py.PETSc.LGMap-class.html
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
@@ -1142,9 +1237,11 @@ petsc4py.PETSc.LGMap.getBlockSize petsc4py.PETSc.LGMap-class.html#getBlockSize
petsc4py.PETSc.LGMap.apply petsc4py.PETSc.LGMap-class.html#apply
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.LGMap.block_size petsc4py.PETSc.LGMap-class.html#block_size
-petsc4py.PETSc.LGMap.size petsc4py.PETSc.LGMap-class.html#size
+petsc4py.PETSc.LGMap.Type petsc4py.PETSc.LGMap.Type-class.html
+petsc4py.PETSc.LGMap.setType petsc4py.PETSc.LGMap-class.html#setType
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.LGMap.__new__ petsc4py.PETSc.LGMap-class.html#__new__
petsc4py.PETSc.LGMap.applyBlockInverse petsc4py.PETSc.LGMap-class.html#applyBlockInverse
petsc4py.PETSc.LGMap.getBlockIndices petsc4py.PETSc.LGMap-class.html#getBlockIndices
@@ -1155,6 +1252,7 @@ petsc4py.PETSc.LGMap.applyInverse petsc4py.PETSc.LGMap-class.html#applyInverse
petsc4py.PETSc.LGMap.__call__ petsc4py.PETSc.LGMap-class.html#__call__
petsc4py.PETSc.LGMap.destroy petsc4py.PETSc.LGMap-class.html#destroy
petsc4py.PETSc.Object.getType petsc4py.PETSc.Object-class.html#getType
+petsc4py.PETSc.LGMap.size petsc4py.PETSc.LGMap-class.html#size
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
@@ -1163,14 +1261,13 @@ petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
petsc4py.PETSc.LGMap.applyBlock petsc4py.PETSc.LGMap-class.html#applyBlock
petsc4py.PETSc.Object.setOptionsPrefix petsc4py.PETSc.Object-class.html#setOptionsPrefix
petsc4py.PETSc.Object.__deepcopy__ petsc4py.PETSc.Object-class.html#__deepcopy__
-petsc4py.PETSc.Object.setFromOptions petsc4py.PETSc.Object-class.html#setFromOptions
petsc4py.PETSc.LGMap.getBlockInfo petsc4py.PETSc.LGMap-class.html#getBlockInfo
petsc4py.PETSc.Object.refcount petsc4py.PETSc.Object-class.html#refcount
+petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
petsc4py.PETSc.LGMap.indices petsc4py.PETSc.LGMap-class.html#indices
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
-petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
-petsc4py.PETSc.LGMap.MapType petsc4py.PETSc.LGMap.MapType-class.html
+petsc4py.PETSc.LGMap.setFromOptions petsc4py.PETSc.LGMap-class.html#setFromOptions
petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
petsc4py.PETSc.LGMap.getIndices petsc4py.PETSc.LGMap-class.html#getIndices
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
@@ -1183,6 +1280,7 @@ petsc4py.PETSc.LGMap.createIS petsc4py.PETSc.LGMap-class.html#createIS
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.LGMap.MapMode petsc4py.PETSc.LGMap.MapMode-class.html
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
@@ -1193,80 +1291,84 @@ petsc4py.PETSc.LGMap.block_info petsc4py.PETSc.LGMap-class.html#block_info
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.LGMap.view petsc4py.PETSc.LGMap-class.html#view
-petsc4py.PETSc.LGMap.MapType petsc4py.PETSc.LGMap.MapType-class.html
-petsc4py.PETSc.LGMap.MapType.DROP petsc4py.PETSc.LGMap.MapType-class.html#DROP
-petsc4py.PETSc.LGMap.MapType.MASK petsc4py.PETSc.LGMap.MapType-class.html#MASK
-petsc4py.PETSc.LGMap.MapType.__qualname__ petsc4py.PETSc.LGMap.MapType-class.html#__qualname__
+petsc4py.PETSc.LGMap.MapMode petsc4py.PETSc.LGMap.MapMode-class.html
+petsc4py.PETSc.LGMap.MapMode.__qualname__ petsc4py.PETSc.LGMap.MapMode-class.html#__qualname__
+petsc4py.PETSc.LGMap.MapMode.DROP petsc4py.PETSc.LGMap.MapMode-class.html#DROP
+petsc4py.PETSc.LGMap.MapMode.MASK petsc4py.PETSc.LGMap.MapMode-class.html#MASK
+petsc4py.PETSc.LGMap.Type petsc4py.PETSc.LGMap.Type-class.html
+petsc4py.PETSc.LGMap.Type.__qualname__ petsc4py.PETSc.LGMap.Type-class.html#__qualname__
+petsc4py.PETSc.LGMap.Type.HASH petsc4py.PETSc.LGMap.Type-class.html#HASH
+petsc4py.PETSc.LGMap.Type.BASIC petsc4py.PETSc.LGMap.Type-class.html#BASIC
petsc4py.PETSc.Log petsc4py.PETSc.Log-class.html
-petsc4py.PETSc.Log.getTime petsc4py.PETSc.Log-class.html#getTime
-petsc4py.PETSc.Log.logFlops petsc4py.PETSc.Log-class.html#logFlops
-petsc4py.PETSc.Log.getCPUTime petsc4py.PETSc.Log-class.html#getCPUTime
-petsc4py.PETSc.Log.__new__ petsc4py.PETSc.Log-class.html#__new__
-petsc4py.PETSc.Log.destroy petsc4py.PETSc.Log-class.html#destroy
-petsc4py.PETSc.Log.Class petsc4py.PETSc.Log-class.html#Class
-petsc4py.PETSc.Log.Stage petsc4py.PETSc.Log-class.html#Stage
petsc4py.PETSc.Log.begin petsc4py.PETSc.Log-class.html#begin
+petsc4py.PETSc.Log.__new__ petsc4py.PETSc.Log-class.html#__new__
+petsc4py.PETSc.Log.getTime petsc4py.PETSc.Log-class.html#getTime
petsc4py.PETSc.Log.getFlops petsc4py.PETSc.Log-class.html#getFlops
+petsc4py.PETSc.Log.view petsc4py.PETSc.Log-class.html#view
petsc4py.PETSc.Log.addFlops petsc4py.PETSc.Log-class.html#addFlops
+petsc4py.PETSc.Log.Class petsc4py.PETSc.Log-class.html#Class
+petsc4py.PETSc.Log.destroy petsc4py.PETSc.Log-class.html#destroy
+petsc4py.PETSc.Log.Stage petsc4py.PETSc.Log-class.html#Stage
+petsc4py.PETSc.Log.logFlops petsc4py.PETSc.Log-class.html#logFlops
petsc4py.PETSc.Log.Event petsc4py.PETSc.Log-class.html#Event
-petsc4py.PETSc.Log.view petsc4py.PETSc.Log-class.html#view
+petsc4py.PETSc.Log.getCPUTime petsc4py.PETSc.Log-class.html#getCPUTime
petsc4py.PETSc.LogClass petsc4py.PETSc.LogClass-class.html
petsc4py.PETSc.LogClass.__int__ petsc4py.PETSc.LogClass-class.html#__int__
petsc4py.PETSc.LogClass.activate petsc4py.PETSc.LogClass-class.html#activate
-petsc4py.PETSc.LogClass.id petsc4py.PETSc.LogClass-class.html#id
petsc4py.PETSc.LogClass.__new__ petsc4py.PETSc.LogClass-class.html#__new__
petsc4py.PETSc.LogClass.deactivate petsc4py.PETSc.LogClass-class.html#deactivate
petsc4py.PETSc.LogClass.getName petsc4py.PETSc.LogClass-class.html#getName
petsc4py.PETSc.LogClass.getActive petsc4py.PETSc.LogClass-class.html#getActive
petsc4py.PETSc.LogClass.setActive petsc4py.PETSc.LogClass-class.html#setActive
petsc4py.PETSc.LogClass.active petsc4py.PETSc.LogClass-class.html#active
-petsc4py.PETSc.LogClass.name petsc4py.PETSc.LogClass-class.html#name
petsc4py.PETSc.LogClass.__long__ petsc4py.PETSc.LogClass-class.html#__long__
+petsc4py.PETSc.LogClass.id petsc4py.PETSc.LogClass-class.html#id
+petsc4py.PETSc.LogClass.name petsc4py.PETSc.LogClass-class.html#name
petsc4py.PETSc.LogEvent petsc4py.PETSc.LogEvent-class.html
petsc4py.PETSc.LogEvent.__int__ petsc4py.PETSc.LogEvent-class.html#__int__
+petsc4py.PETSc.LogEvent.setActive petsc4py.PETSc.LogEvent-class.html#setActive
+petsc4py.PETSc.LogEvent.begin petsc4py.PETSc.LogEvent-class.html#begin
petsc4py.PETSc.LogEvent.activate petsc4py.PETSc.LogEvent-class.html#activate
-petsc4py.PETSc.LogEvent.getPerfInfo petsc4py.PETSc.LogEvent-class.html#getPerfInfo
-petsc4py.PETSc.LogEvent.getActiveAll petsc4py.PETSc.LogEvent-class.html#getActiveAll
-petsc4py.PETSc.LogEvent.active_all petsc4py.PETSc.LogEvent-class.html#active_all
-petsc4py.PETSc.LogEvent.id petsc4py.PETSc.LogEvent-class.html#id
petsc4py.PETSc.LogEvent.end petsc4py.PETSc.LogEvent-class.html#end
petsc4py.PETSc.LogEvent.__new__ petsc4py.PETSc.LogEvent-class.html#__new__
petsc4py.PETSc.LogEvent.deactivate petsc4py.PETSc.LogEvent-class.html#deactivate
+petsc4py.PETSc.LogEvent.getActive petsc4py.PETSc.LogEvent-class.html#getActive
petsc4py.PETSc.LogEvent.getName petsc4py.PETSc.LogEvent-class.html#getName
petsc4py.PETSc.LogEvent.__enter__ petsc4py.PETSc.LogEvent-class.html#__enter__
-petsc4py.PETSc.LogEvent.getActive petsc4py.PETSc.LogEvent-class.html#getActive
-petsc4py.PETSc.LogEvent.setActive petsc4py.PETSc.LogEvent-class.html#setActive
-petsc4py.PETSc.LogEvent.begin petsc4py.PETSc.LogEvent-class.html#begin
-petsc4py.PETSc.LogEvent.__exit__ petsc4py.PETSc.LogEvent-class.html#__exit__
+petsc4py.PETSc.LogEvent.barrierBegin petsc4py.PETSc.LogEvent-class.html#barrierBegin
+petsc4py.PETSc.LogEvent.getPerfInfo petsc4py.PETSc.LogEvent-class.html#getPerfInfo
+petsc4py.PETSc.LogEvent.getActiveAll petsc4py.PETSc.LogEvent-class.html#getActiveAll
+petsc4py.PETSc.LogEvent.active_all petsc4py.PETSc.LogEvent-class.html#active_all
+petsc4py.PETSc.LogEvent.__long__ petsc4py.PETSc.LogEvent-class.html#__long__
petsc4py.PETSc.LogEvent.setActiveAll petsc4py.PETSc.LogEvent-class.html#setActiveAll
petsc4py.PETSc.LogEvent.active petsc4py.PETSc.LogEvent-class.html#active
+petsc4py.PETSc.LogEvent.__exit__ petsc4py.PETSc.LogEvent-class.html#__exit__
petsc4py.PETSc.LogEvent.barrierEnd petsc4py.PETSc.LogEvent-class.html#barrierEnd
-petsc4py.PETSc.LogEvent.barrierBegin petsc4py.PETSc.LogEvent-class.html#barrierBegin
+petsc4py.PETSc.LogEvent.id petsc4py.PETSc.LogEvent-class.html#id
petsc4py.PETSc.LogEvent.name petsc4py.PETSc.LogEvent-class.html#name
-petsc4py.PETSc.LogEvent.__long__ petsc4py.PETSc.LogEvent-class.html#__long__
petsc4py.PETSc.LogStage petsc4py.PETSc.LogStage-class.html
petsc4py.PETSc.LogStage.__int__ petsc4py.PETSc.LogStage-class.html#__int__
petsc4py.PETSc.LogStage.activate petsc4py.PETSc.LogStage-class.html#activate
-petsc4py.PETSc.LogStage.pop petsc4py.PETSc.LogStage-class.html#pop
-petsc4py.PETSc.LogStage.getVisible petsc4py.PETSc.LogStage-class.html#getVisible
-petsc4py.PETSc.LogStage.visible petsc4py.PETSc.LogStage-class.html#visible
-petsc4py.PETSc.LogStage.id petsc4py.PETSc.LogStage-class.html#id
+petsc4py.PETSc.LogStage.__exit__ petsc4py.PETSc.LogStage-class.html#__exit__
petsc4py.PETSc.LogStage.__new__ petsc4py.PETSc.LogStage-class.html#__new__
petsc4py.PETSc.LogStage.deactivate petsc4py.PETSc.LogStage-class.html#deactivate
petsc4py.PETSc.LogStage.getName petsc4py.PETSc.LogStage-class.html#getName
petsc4py.PETSc.LogStage.__enter__ petsc4py.PETSc.LogStage-class.html#__enter__
+petsc4py.PETSc.LogStage.pop petsc4py.PETSc.LogStage-class.html#pop
+petsc4py.PETSc.LogStage.getVisible petsc4py.PETSc.LogStage-class.html#getVisible
+petsc4py.PETSc.LogStage.visible petsc4py.PETSc.LogStage-class.html#visible
petsc4py.PETSc.LogStage.getActive petsc4py.PETSc.LogStage-class.html#getActive
+petsc4py.PETSc.LogStage.push petsc4py.PETSc.LogStage-class.html#push
petsc4py.PETSc.LogStage.setActive petsc4py.PETSc.LogStage-class.html#setActive
-petsc4py.PETSc.LogStage.__exit__ petsc4py.PETSc.LogStage-class.html#__exit__
petsc4py.PETSc.LogStage.active petsc4py.PETSc.LogStage-class.html#active
-petsc4py.PETSc.LogStage.name petsc4py.PETSc.LogStage-class.html#name
-petsc4py.PETSc.LogStage.push petsc4py.PETSc.LogStage-class.html#push
petsc4py.PETSc.LogStage.__long__ petsc4py.PETSc.LogStage-class.html#__long__
petsc4py.PETSc.LogStage.setVisible petsc4py.PETSc.LogStage-class.html#setVisible
+petsc4py.PETSc.LogStage.id petsc4py.PETSc.LogStage-class.html#id
+petsc4py.PETSc.LogStage.name petsc4py.PETSc.LogStage-class.html#name
petsc4py.PETSc.Mat petsc4py.PETSc.Mat-class.html
petsc4py.PETSc.Mat.setPreallocationCSR petsc4py.PETSc.Mat-class.html#setPreallocationCSR
petsc4py.PETSc.Mat.load petsc4py.PETSc.Mat-class.html#load
-petsc4py.PETSc.Mat.Stencil petsc4py.PETSc._Mat_Stencil-class.html
+petsc4py.PETSc.Mat.getLGMap petsc4py.PETSc.Mat-class.html#getLGMap
petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
petsc4py.PETSc.Mat.getOwnershipIS petsc4py.PETSc.Mat-class.html#getOwnershipIS
petsc4py.PETSc.Mat.copy petsc4py.PETSc.Mat-class.html#copy
@@ -1274,7 +1376,7 @@ petsc4py.PETSc.Mat.getOwnershipRangesColumn petsc4py.PETSc.Mat-class.html#getOwn
petsc4py.PETSc.Mat.getSize petsc4py.PETSc.Mat-class.html#getSize
petsc4py.PETSc.Mat.getRowIJ petsc4py.PETSc.Mat-class.html#getRowIJ
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
-petsc4py.PETSc.Mat.getPythonContext petsc4py.PETSc.Mat-class.html#getPythonContext
+petsc4py.PETSc.Mat.Stencil petsc4py.PETSc._Mat_Stencil-class.html
petsc4py.PETSc.Mat.setValuesBlockedIJV petsc4py.PETSc.Mat-class.html#setValuesBlockedIJV
petsc4py.PETSc.Mat.createSubMatrix petsc4py.PETSc.Mat-class.html#createSubMatrix
petsc4py.PETSc.Mat.__rdiv__ petsc4py.PETSc.Mat-class.html#__rdiv__
@@ -1287,16 +1389,19 @@ petsc4py.PETSc.Mat.matMultNumeric petsc4py.PETSc.Mat-class.html#matMultNumeric
petsc4py.PETSc.Mat.imagPart petsc4py.PETSc.Mat-class.html#imagPart
petsc4py.PETSc.Mat.multHermitianAdd petsc4py.PETSc.Mat-class.html#multHermitianAdd
petsc4py.PETSc.Mat.setPreallocationDense petsc4py.PETSc.Mat-class.html#setPreallocationDense
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Mat.setNearNullSpace petsc4py.PETSc.Mat-class.html#setNearNullSpace
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.Mat.OrderingType petsc4py.PETSc.Mat.OrderingType-class.html
petsc4py.PETSc.Mat.isHermitianKnown petsc4py.PETSc.Mat-class.html#isHermitianKnown
petsc4py.PETSc.Mat.setPythonContext petsc4py.PETSc.Mat-class.html#setPythonContext
petsc4py.PETSc.Mat.createSBAIJ petsc4py.PETSc.Mat-class.html#createSBAIJ
+petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Mat.__call__ petsc4py.PETSc.Mat-class.html#__call__
petsc4py.PETSc.Mat.getMumpsRinfog petsc4py.PETSc.Mat-class.html#getMumpsRinfog
petsc4py.PETSc.Mat.norm petsc4py.PETSc.Mat-class.html#norm
petsc4py.PETSc.Mat.setValuesIJV petsc4py.PETSc.Mat-class.html#setValuesIJV
+petsc4py.PETSc.Mat.createSubMatrices petsc4py.PETSc.Mat-class.html#createSubMatrices
petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
petsc4py.PETSc.Mat.isStructurallySymmetric petsc4py.PETSc.Mat-class.html#isStructurallySymmetric
petsc4py.PETSc.Mat.setOptionsPrefix petsc4py.PETSc.Mat-class.html#setOptionsPrefix
@@ -1307,6 +1412,7 @@ petsc4py.PETSc.Mat.factorNumericCholesky petsc4py.PETSc.Mat-class.html#factorNum
petsc4py.PETSc.Mat.setBlockSize petsc4py.PETSc.Mat-class.html#setBlockSize
petsc4py.PETSc.Mat.setValueStencil petsc4py.PETSc.Mat-class.html#setValueStencil
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.Mat.Option petsc4py.PETSc.Mat.Option-class.html
petsc4py.PETSc.Mat.setFromOptions petsc4py.PETSc.Mat-class.html#setFromOptions
petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
@@ -1344,15 +1450,13 @@ petsc4py.PETSc.Mat.getBlockSize petsc4py.PETSc.Mat-class.html#getBlockSize
petsc4py.PETSc.Mat.getNearNullSpace petsc4py.PETSc.Mat-class.html#getNearNullSpace
petsc4py.PETSc.Mat.multHermitian petsc4py.PETSc.Mat-class.html#multHermitian
petsc4py.PETSc.Mat.scale petsc4py.PETSc.Mat-class.html#scale
-petsc4py.PETSc.Mat.Option petsc4py.PETSc.Mat.Option-class.html
+petsc4py.PETSc.Mat.getTransposeNullSpace petsc4py.PETSc.Mat-class.html#getTransposeNullSpace
petsc4py.PETSc.Mat.setPreallocationNNZ petsc4py.PETSc.Mat-class.html#setPreallocationNNZ
petsc4py.PETSc.Mat.createScatter petsc4py.PETSc.Mat-class.html#createScatter
petsc4py.PETSc.Mat.createVecRight petsc4py.PETSc.Mat-class.html#createVecRight
petsc4py.PETSc.Mat.zeroRowsLocal petsc4py.PETSc.Mat-class.html#zeroRowsLocal
petsc4py.PETSc.Mat.symmetric petsc4py.PETSc.Mat-class.html#symmetric
petsc4py.PETSc.Mat.assemblyEnd petsc4py.PETSc.Mat-class.html#assemblyEnd
-petsc4py.PETSc.Mat.getSubMatrices petsc4py.PETSc.Mat-class.html#getSubMatrices
-petsc4py.PETSc.Mat.getSubMatrix petsc4py.PETSc.Mat-class.html#getSubMatrix
petsc4py.PETSc.Mat.isTranspose petsc4py.PETSc.Mat-class.html#isTranspose
petsc4py.PETSc.Mat.createVecs petsc4py.PETSc.Mat-class.html#createVecs
petsc4py.PETSc.Mat.setType petsc4py.PETSc.Mat-class.html#setType
@@ -1360,12 +1464,13 @@ petsc4py.PETSc.Mat.setBlockSizes petsc4py.PETSc.Mat-class.html#setBlockSizes
petsc4py.PETSc.Mat.matTransposeMult petsc4py.PETSc.Mat-class.html#matTransposeMult
petsc4py.PETSc.Mat.getBlockSizes petsc4py.PETSc.Mat-class.html#getBlockSizes
petsc4py.PETSc.Mat.setValue petsc4py.PETSc.Mat-class.html#setValue
-petsc4py.PETSc.Mat.FactorShiftType petsc4py.PETSc.Mat.FactorShiftType-class.html
+petsc4py.PETSc.Mat.getRow petsc4py.PETSc.Mat-class.html#getRow
petsc4py.PETSc.Mat.matMult petsc4py.PETSc.Mat-class.html#matMult
petsc4py.PETSc.Mat.setUp petsc4py.PETSc.Mat-class.html#setUp
petsc4py.PETSc.Mat.transpose petsc4py.PETSc.Mat-class.html#transpose
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Mat.createPython petsc4py.PETSc.Mat-class.html#createPython
+petsc4py.PETSc.Mat.PtAP petsc4py.PETSc.Mat-class.html#PtAP
petsc4py.PETSc.Mat.getDenseArray petsc4py.PETSc.Mat-class.html#getDenseArray
petsc4py.PETSc.Mat.__setitem__ petsc4py.PETSc.Mat-class.html#__setitem__
petsc4py.PETSc.Mat.setMumpsCntl petsc4py.PETSc.Mat-class.html#setMumpsCntl
@@ -1378,16 +1483,16 @@ petsc4py.PETSc.Mat.factorILU petsc4py.PETSc.Mat-class.html#factorILU
petsc4py.PETSc.Mat.owner_range petsc4py.PETSc.Mat-class.html#owner_range
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.Mat.convert petsc4py.PETSc.Mat-class.html#convert
-petsc4py.PETSc.Mat.solveTranspose petsc4py.PETSc.Mat-class.html#solveTranspose
+petsc4py.PETSc.Mat.createSubMatrixVirtual petsc4py.PETSc.Mat-class.html#createSubMatrixVirtual
petsc4py.PETSc.Mat.__imul__ petsc4py.PETSc.Mat-class.html#__imul__
petsc4py.PETSc.Mat.getLocalSize petsc4py.PETSc.Mat-class.html#getLocalSize
petsc4py.PETSc.Mat.shift petsc4py.PETSc.Mat-class.html#shift
petsc4py.PETSc.Mat.getColumnVector petsc4py.PETSc.Mat-class.html#getColumnVector
petsc4py.PETSc.Mat.getLocalSubMatrix petsc4py.PETSc.Mat-class.html#getLocalSubMatrix
petsc4py.PETSc.Mat.local_size petsc4py.PETSc.Mat-class.html#local_size
+petsc4py.PETSc.Mat.getPythonContext petsc4py.PETSc.Mat-class.html#getPythonContext
petsc4py.PETSc.Mat.chop petsc4py.PETSc.Mat-class.html#chop
petsc4py.PETSc.Mat.setValueLocal petsc4py.PETSc.Mat-class.html#setValueLocal
-petsc4py.PETSc.Mat.getRow petsc4py.PETSc.Mat-class.html#getRow
petsc4py.PETSc.Mat.__mul__ petsc4py.PETSc.Mat-class.html#__mul__
petsc4py.PETSc.Mat.factorCholesky petsc4py.PETSc.Mat-class.html#factorCholesky
petsc4py.PETSc.Mat.getDiagonalBlock petsc4py.PETSc.Mat-class.html#getDiagonalBlock
@@ -1401,7 +1506,7 @@ petsc4py.PETSc.Mat.zeroRows petsc4py.PETSc.Mat-class.html#zeroRows
petsc4py.PETSc.Mat.matSolve petsc4py.PETSc.Mat-class.html#matSolve
petsc4py.PETSc.Mat.diagonalScale petsc4py.PETSc.Mat-class.html#diagonalScale
petsc4py.PETSc.Mat.block_sizes petsc4py.PETSc.Mat-class.html#block_sizes
-petsc4py.PETSc.Mat.__getitem__ petsc4py.PETSc.Mat-class.html#__getitem__
+petsc4py.PETSc.Mat.FactorShiftType petsc4py.PETSc.Mat.FactorShiftType-class.html
petsc4py.PETSc.Mat.setStencil petsc4py.PETSc.Mat-class.html#setStencil
petsc4py.PETSc.Mat.hermitian petsc4py.PETSc.Mat-class.html#hermitian
petsc4py.PETSc.Mat.__rsub__ petsc4py.PETSc.Mat-class.html#__rsub__
@@ -1411,7 +1516,7 @@ petsc4py.PETSc.Mat.getValues petsc4py.PETSc.Mat-class.html#getValues
petsc4py.PETSc.Mat.isSymmetricKnown petsc4py.PETSc.Mat-class.html#isSymmetricKnown
petsc4py.PETSc.Mat.size petsc4py.PETSc.Mat-class.html#size
petsc4py.PETSc.Mat.invertBlockDiagonal petsc4py.PETSc.Mat-class.html#invertBlockDiagonal
-petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
+petsc4py.PETSc.Mat.setTransposeNullSpace petsc4py.PETSc.Mat-class.html#setTransposeNullSpace
petsc4py.PETSc.Mat.AssemblyType petsc4py.PETSc.Mat.AssemblyType-class.html
petsc4py.PETSc.Mat.create petsc4py.PETSc.Mat-class.html#create
petsc4py.PETSc.Mat.factorICC petsc4py.PETSc.Mat-class.html#factorICC
@@ -1437,12 +1542,14 @@ petsc4py.PETSc.Mat.createAIJWithArrays petsc4py.PETSc.Mat-class.html#createAIJWi
petsc4py.PETSc.Mat.getNullSpace petsc4py.PETSc.Mat-class.html#getNullSpace
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
petsc4py.PETSc.Mat.setValuesLocalIJV petsc4py.PETSc.Mat-class.html#setValuesLocalIJV
+petsc4py.PETSc.Mat.solveTranspose petsc4py.PETSc.Mat-class.html#solveTranspose
petsc4py.PETSc.Mat.setValues petsc4py.PETSc.Mat-class.html#setValues
petsc4py.PETSc.Mat.setValuesLocalRCV petsc4py.PETSc.Mat-class.html#setValuesLocalRCV
petsc4py.PETSc.Mat.increaseOverlap petsc4py.PETSc.Mat-class.html#increaseOverlap
petsc4py.PETSc.Mat.getMumpsIcntl petsc4py.PETSc.Mat-class.html#getMumpsIcntl
petsc4py.PETSc.Mat.getDenseLocalMatrix petsc4py.PETSc.Mat-class.html#getDenseLocalMatrix
petsc4py.PETSc.Mat.setMumpsIcntl petsc4py.PETSc.Mat-class.html#setMumpsIcntl
+petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.Mat.getInfo petsc4py.PETSc.Mat-class.html#getInfo
petsc4py.PETSc.Mat.getDiagonal petsc4py.PETSc.Mat-class.html#getDiagonal
petsc4py.PETSc.Mat.factorSymbolicCholesky petsc4py.PETSc.Mat-class.html#factorSymbolicCholesky
@@ -1501,6 +1608,7 @@ petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Mat.storeValues petsc4py.PETSc.Mat-class.html#storeValues
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
petsc4py.PETSc.Mat.__div__ petsc4py.PETSc.Mat-class.html#__div__
+petsc4py.PETSc.Mat.__getitem__ petsc4py.PETSc.Mat-class.html#__getitem__
petsc4py.PETSc.Mat.solve petsc4py.PETSc.Mat-class.html#solve
petsc4py.PETSc.Mat.__neg__ petsc4py.PETSc.Mat-class.html#__neg__
petsc4py.PETSc.Mat.solveForward petsc4py.PETSc.Mat-class.html#solveForward
@@ -1508,14 +1616,14 @@ petsc4py.PETSc.Mat.zeroRowsColumns petsc4py.PETSc.Mat-class.html#zeroRowsColumns
petsc4py.PETSc.Mat.multAdd petsc4py.PETSc.Mat-class.html#multAdd
petsc4py.PETSc.Mat.getInertia petsc4py.PETSc.Mat-class.html#getInertia
petsc4py.PETSc.Mat.setValuesCSR petsc4py.PETSc.Mat-class.html#setValuesCSR
-petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
+petsc4py.PETSc.Mat.getLRCMats petsc4py.PETSc.Mat-class.html#getLRCMats
petsc4py.PETSc.Mat.restoreLocalSubMatrix petsc4py.PETSc.Mat-class.html#restoreLocalSubMatrix
petsc4py.PETSc.Mat.AssemblyType petsc4py.PETSc.Mat.AssemblyType-class.html
-petsc4py.PETSc.Mat.AssemblyType.FINAL_ASSEMBLY petsc4py.PETSc.Mat.AssemblyType-class.html#FINAL_ASSEMBLY
petsc4py.PETSc.Mat.AssemblyType.__qualname__ petsc4py.PETSc.Mat.AssemblyType-class.html#__qualname__
+petsc4py.PETSc.Mat.AssemblyType.FINAL_ASSEMBLY petsc4py.PETSc.Mat.AssemblyType-class.html#FINAL_ASSEMBLY
petsc4py.PETSc.Mat.AssemblyType.FLUSH_ASSEMBLY petsc4py.PETSc.Mat.AssemblyType-class.html#FLUSH_ASSEMBLY
-petsc4py.PETSc.Mat.AssemblyType.FLUSH petsc4py.PETSc.Mat.AssemblyType-class.html#FLUSH
petsc4py.PETSc.Mat.AssemblyType.FINAL petsc4py.PETSc.Mat.AssemblyType-class.html#FINAL
+petsc4py.PETSc.Mat.AssemblyType.FLUSH petsc4py.PETSc.Mat.AssemblyType-class.html#FLUSH
petsc4py.PETSc.Mat.FactorShiftType petsc4py.PETSc.Mat.FactorShiftType-class.html
petsc4py.PETSc.Mat.FactorShiftType.NONZERO petsc4py.PETSc.Mat.FactorShiftType-class.html#NONZERO
petsc4py.PETSc.Mat.FactorShiftType.POSITIVE_DEFINITE petsc4py.PETSc.Mat.FactorShiftType-class.html#POSITIVE_DEFINITE
@@ -1525,9 +1633,9 @@ petsc4py.PETSc.Mat.FactorShiftType.NZ petsc4py.PETSc.Mat.FactorShiftType-class.h
petsc4py.PETSc.Mat.FactorShiftType.PD petsc4py.PETSc.Mat.FactorShiftType-class.html#PD
petsc4py.PETSc.Mat.FactorShiftType.INBLOCKS petsc4py.PETSc.Mat.FactorShiftType-class.html#INBLOCKS
petsc4py.PETSc.Mat.InfoType petsc4py.PETSc.Mat.InfoType-class.html
-petsc4py.PETSc.Mat.InfoType.GLOBAL_SUM petsc4py.PETSc.Mat.InfoType-class.html#GLOBAL_SUM
petsc4py.PETSc.Mat.InfoType.__qualname__ petsc4py.PETSc.Mat.InfoType-class.html#__qualname__
petsc4py.PETSc.Mat.InfoType.GLOBAL_MAX petsc4py.PETSc.Mat.InfoType-class.html#GLOBAL_MAX
+petsc4py.PETSc.Mat.InfoType.GLOBAL_SUM petsc4py.PETSc.Mat.InfoType-class.html#GLOBAL_SUM
petsc4py.PETSc.Mat.InfoType.LOCAL petsc4py.PETSc.Mat.InfoType-class.html#LOCAL
petsc4py.PETSc.Mat.Option petsc4py.PETSc.Mat.Option-class.html
petsc4py.PETSc.Mat.Option.IGNORE_OFF_PROC_ENTRIES petsc4py.PETSc.Mat.Option-class.html#IGNORE_OFF_PROC_ENTRIES
@@ -1554,43 +1662,42 @@ petsc4py.PETSc.Mat.Option.HERMITIAN petsc4py.PETSc.Mat.Option-class.html#HERMITI
petsc4py.PETSc.Mat.Option.GETROW_UPPERTRIANGULAR petsc4py.PETSc.Mat.Option-class.html#GETROW_UPPERTRIANGULAR
petsc4py.PETSc.Mat.Option.NO_OFF_PROC_ZERO_ROWS petsc4py.PETSc.Mat.Option-class.html#NO_OFF_PROC_ZERO_ROWS
petsc4py.PETSc.Mat.OrderingType petsc4py.PETSc.Mat.OrderingType-class.html
-petsc4py.PETSc.Mat.OrderingType.RCM petsc4py.PETSc.Mat.OrderingType-class.html#RCM
-petsc4py.PETSc.Mat.OrderingType.WBM petsc4py.PETSc.Mat.OrderingType-class.html#WBM
petsc4py.PETSc.Mat.OrderingType.SPECTRAL petsc4py.PETSc.Mat.OrderingType-class.html#SPECTRAL
+petsc4py.PETSc.Mat.OrderingType.ROWLENGTH petsc4py.PETSc.Mat.OrderingType-class.html#ROWLENGTH
+petsc4py.PETSc.Mat.OrderingType.NATURAL petsc4py.PETSc.Mat.OrderingType-class.html#NATURAL
petsc4py.PETSc.Mat.OrderingType.OWD petsc4py.PETSc.Mat.OrderingType-class.html#OWD
petsc4py.PETSc.Mat.OrderingType.ND petsc4py.PETSc.Mat.OrderingType-class.html#ND
petsc4py.PETSc.Mat.OrderingType.AMD petsc4py.PETSc.Mat.OrderingType-class.html#AMD
-petsc4py.PETSc.Mat.OrderingType.QMD petsc4py.PETSc.Mat.OrderingType-class.html#QMD
-petsc4py.PETSc.Mat.OrderingType.ROWLENGTH petsc4py.PETSc.Mat.OrderingType-class.html#ROWLENGTH
-petsc4py.PETSc.Mat.OrderingType.NATURAL petsc4py.PETSc.Mat.OrderingType-class.html#NATURAL
petsc4py.PETSc.Mat.OrderingType.__qualname__ petsc4py.PETSc.Mat.OrderingType-class.html#__qualname__
+petsc4py.PETSc.Mat.OrderingType.RCM petsc4py.PETSc.Mat.OrderingType-class.html#RCM
+petsc4py.PETSc.Mat.OrderingType.WBM petsc4py.PETSc.Mat.OrderingType-class.html#WBM
+petsc4py.PETSc.Mat.OrderingType.QMD petsc4py.PETSc.Mat.OrderingType-class.html#QMD
petsc4py.PETSc.Mat.SORType petsc4py.PETSc.Mat.SORType-class.html
-petsc4py.PETSc.Mat.SORType.APPLY_LOWER petsc4py.PETSc.Mat.SORType-class.html#APPLY_LOWER
+petsc4py.PETSc.Mat.SORType.LOCAL_FORWARD_SWEEP petsc4py.PETSc.Mat.SORType-class.html#LOCAL_FORWARD_SWEEP
petsc4py.PETSc.Mat.SORType.ZERO_INITIAL_GUESS petsc4py.PETSc.Mat.SORType-class.html#ZERO_INITIAL_GUESS
-petsc4py.PETSc.Mat.SORType.EISENSTAT petsc4py.PETSc.Mat.SORType-class.html#EISENSTAT
+petsc4py.PETSc.Mat.SORType.APPLY_LOWER petsc4py.PETSc.Mat.SORType-class.html#APPLY_LOWER
+petsc4py.PETSc.Mat.SORType.FORWARD_SWEEP petsc4py.PETSc.Mat.SORType-class.html#FORWARD_SWEEP
petsc4py.PETSc.Mat.SORType.SYMMETRY_SWEEP petsc4py.PETSc.Mat.SORType-class.html#SYMMETRY_SWEEP
+petsc4py.PETSc.Mat.SORType.__qualname__ petsc4py.PETSc.Mat.SORType-class.html#__qualname__
petsc4py.PETSc.Mat.SORType.APPLY_UPPER petsc4py.PETSc.Mat.SORType-class.html#APPLY_UPPER
-petsc4py.PETSc.Mat.SORType.LOCAL_SYMMETRIC_SWEEP petsc4py.PETSc.Mat.SORType-class.html#LOCAL_SYMMETRIC_SWEEP
-petsc4py.PETSc.Mat.SORType.LOCAL_FORWARD_SWEEP petsc4py.PETSc.Mat.SORType-class.html#LOCAL_FORWARD_SWEEP
-petsc4py.PETSc.Mat.SORType.FORWARD_SWEEP petsc4py.PETSc.Mat.SORType-class.html#FORWARD_SWEEP
petsc4py.PETSc.Mat.SORType.BACKWARD_SWEEP petsc4py.PETSc.Mat.SORType-class.html#BACKWARD_SWEEP
-petsc4py.PETSc.Mat.SORType.__qualname__ petsc4py.PETSc.Mat.SORType-class.html#__qualname__
petsc4py.PETSc.Mat.SORType.LOCAL_BACKWARD_SWEEP petsc4py.PETSc.Mat.SORType-class.html#LOCAL_BACKWARD_SWEEP
+petsc4py.PETSc.Mat.SORType.EISENSTAT petsc4py.PETSc.Mat.SORType-class.html#EISENSTAT
+petsc4py.PETSc.Mat.SORType.LOCAL_SYMMETRIC_SWEEP petsc4py.PETSc.Mat.SORType-class.html#LOCAL_SYMMETRIC_SWEEP
petsc4py.PETSc.Mat.Structure petsc4py.PETSc.Mat.Structure-class.html
petsc4py.PETSc.Mat.Structure.SUBSET petsc4py.PETSc.Mat.Structure-class.html#SUBSET
-petsc4py.PETSc.Mat.Structure.SAME_NZ petsc4py.PETSc.Mat.Structure-class.html#SAME_NZ
-petsc4py.PETSc.Mat.Structure.SUBSET_NZ petsc4py.PETSc.Mat.Structure-class.html#SUBSET_NZ
petsc4py.PETSc.Mat.Structure.DIFFERENT petsc4py.PETSc.Mat.Structure-class.html#DIFFERENT
+petsc4py.PETSc.Mat.Structure.SUBSET_NZ petsc4py.PETSc.Mat.Structure-class.html#SUBSET_NZ
petsc4py.PETSc.Mat.Structure.DIFFERENT_NZ petsc4py.PETSc.Mat.Structure-class.html#DIFFERENT_NZ
-petsc4py.PETSc.Mat.Structure.SAME_NONZERO_PATTERN petsc4py.PETSc.Mat.Structure-class.html#SAME_NONZERO_PATTERN
petsc4py.PETSc.Mat.Structure.DIFFERENT_NONZERO_PATTERN petsc4py.PETSc.Mat.Structure-class.html#DIFFERENT_NONZERO_PATTERN
petsc4py.PETSc.Mat.Structure.SAME petsc4py.PETSc.Mat.Structure-class.html#SAME
+petsc4py.PETSc.Mat.Structure.SAME_NONZERO_PATTERN petsc4py.PETSc.Mat.Structure-class.html#SAME_NONZERO_PATTERN
petsc4py.PETSc.Mat.Structure.__qualname__ petsc4py.PETSc.Mat.Structure-class.html#__qualname__
petsc4py.PETSc.Mat.Structure.SUBSET_NONZERO_PATTERN petsc4py.PETSc.Mat.Structure-class.html#SUBSET_NONZERO_PATTERN
+petsc4py.PETSc.Mat.Structure.SAME_NZ petsc4py.PETSc.Mat.Structure-class.html#SAME_NZ
petsc4py.PETSc.Mat.Type petsc4py.PETSc.Mat.Type-class.html
petsc4py.PETSc.Mat.Type.MPIAIJCUSPARSE petsc4py.PETSc.Mat.Type-class.html#MPIAIJCUSPARSE
petsc4py.PETSc.Mat.Type.AIJVIENNACL petsc4py.PETSc.Mat.Type-class.html#AIJVIENNACL
-petsc4py.PETSc.Mat.Type.MPISBSTRM petsc4py.PETSc.Mat.Type-class.html#MPISBSTRM
petsc4py.PETSc.Mat.Type.SEQAIJ petsc4py.PETSc.Mat.Type-class.html#SEQAIJ
petsc4py.PETSc.Mat.Type.NORMAL petsc4py.PETSc.Mat.Type-class.html#NORMAL
petsc4py.PETSc.Mat.Type.PYTHON petsc4py.PETSc.Mat.Type-class.html#PYTHON
@@ -1610,23 +1717,18 @@ petsc4py.PETSc.Mat.Type.MPIAIJVIENNACL petsc4py.PETSc.Mat.Type-class.html#MPIAIJ
petsc4py.PETSc.Mat.Type.SHELL petsc4py.PETSc.Mat.Type-class.html#SHELL
petsc4py.PETSc.Mat.Type.HYPRESTRUCT petsc4py.PETSc.Mat.Type-class.html#HYPRESTRUCT
petsc4py.PETSc.Mat.Type.SEQBAIJ petsc4py.PETSc.Mat.Type-class.html#SEQBAIJ
-petsc4py.PETSc.Mat.Type.SBSTRM petsc4py.PETSc.Mat.Type-class.html#SBSTRM
petsc4py.PETSc.Mat.Type.SUBMATRIX petsc4py.PETSc.Mat.Type-class.html#SUBMATRIX
petsc4py.PETSc.Mat.Type.MPIADJ petsc4py.PETSc.Mat.Type-class.html#MPIADJ
petsc4py.PETSc.Mat.Type.MPIBAIJ petsc4py.PETSc.Mat.Type-class.html#MPIBAIJ
-petsc4py.PETSc.Mat.Type.BSTRM petsc4py.PETSc.Mat.Type-class.html#BSTRM
petsc4py.PETSc.Mat.Type.DAAD petsc4py.PETSc.Mat.Type-class.html#DAAD
petsc4py.PETSc.Mat.Type.MPIAIJCUSP petsc4py.PETSc.Mat.Type-class.html#MPIAIJCUSP
petsc4py.PETSc.Mat.Type.AIJPERM petsc4py.PETSc.Mat.Type-class.html#AIJPERM
-petsc4py.PETSc.Mat.Type.SEQBSTRM petsc4py.PETSc.Mat.Type-class.html#SEQBSTRM
petsc4py.PETSc.Mat.Type.SEQAIJCUSPARSE petsc4py.PETSc.Mat.Type-class.html#SEQAIJCUSPARSE
-petsc4py.PETSc.Mat.Type.MPIBSTRM petsc4py.PETSc.Mat.Type-class.html#MPIBSTRM
petsc4py.PETSc.Mat.Type.DENSE petsc4py.PETSc.Mat.Type-class.html#DENSE
petsc4py.PETSc.Mat.Type.AIJCRL petsc4py.PETSc.Mat.Type-class.html#AIJCRL
petsc4py.PETSc.Mat.Type.IS petsc4py.PETSc.Mat.Type-class.html#IS
petsc4py.PETSc.Mat.Type.SEQSBAIJ petsc4py.PETSc.Mat.Type-class.html#SEQSBAIJ
petsc4py.PETSc.Mat.Type.ELEMENTAL petsc4py.PETSc.Mat.Type-class.html#ELEMENTAL
-petsc4py.PETSc.Mat.Type.SEQSBSTRM petsc4py.PETSc.Mat.Type-class.html#SEQSBSTRM
petsc4py.PETSc.Mat.Type.FFT petsc4py.PETSc.Mat.Type-class.html#FFT
petsc4py.PETSc.Mat.Type.HYPRESSTRUCT petsc4py.PETSc.Mat.Type-class.html#HYPRESSTRUCT
petsc4py.PETSc.Mat.Type.AIJCUSP petsc4py.PETSc.Mat.Type-class.html#AIJCUSP
@@ -1651,24 +1753,25 @@ petsc4py.PETSc.Mat.Type.NORMALHERMITIAN petsc4py.PETSc.Mat.Type-class.html#NORMA
petsc4py.PETSc.Mat.Type.PREALLOCATOR petsc4py.PETSc.Mat.Type-class.html#PREALLOCATOR
petsc4py.PETSc.Mat.Type.MAIJ petsc4py.PETSc.Mat.Type-class.html#MAIJ
petsc4py.PETSc.NormType petsc4py.PETSc.NormType-class.html
-petsc4py.PETSc.NormType.FRB petsc4py.PETSc.NormType-class.html#FRB
+petsc4py.PETSc.NormType.N12 petsc4py.PETSc.NormType-class.html#N12
petsc4py.PETSc.NormType.NORM_MAX petsc4py.PETSc.NormType-class.html#NORM_MAX
petsc4py.PETSc.NormType.INFINITY petsc4py.PETSc.NormType-class.html#INFINITY
petsc4py.PETSc.NormType.FROBENIUS petsc4py.PETSc.NormType-class.html#FROBENIUS
-petsc4py.PETSc.NormType.NORM_FROBENIUS petsc4py.PETSc.NormType-class.html#NORM_FROBENIUS
-petsc4py.PETSc.NormType.NORM_1_AND_2 petsc4py.PETSc.NormType-class.html#NORM_1_AND_2
-petsc4py.PETSc.NormType.N1 petsc4py.PETSc.NormType-class.html#N1
-petsc4py.PETSc.NormType.N2 petsc4py.PETSc.NormType-class.html#N2
-petsc4py.PETSc.NormType.N12 petsc4py.PETSc.NormType-class.html#N12
+petsc4py.PETSc.NormType.FRB petsc4py.PETSc.NormType-class.html#FRB
petsc4py.PETSc.NormType.NORM_1 petsc4py.PETSc.NormType-class.html#NORM_1
petsc4py.PETSc.NormType.NORM_2 petsc4py.PETSc.NormType-class.html#NORM_2
-petsc4py.PETSc.NormType.MAX petsc4py.PETSc.NormType-class.html#MAX
petsc4py.PETSc.NormType.NORM_INFINITY petsc4py.PETSc.NormType-class.html#NORM_INFINITY
petsc4py.PETSc.NormType.__qualname__ petsc4py.PETSc.NormType-class.html#__qualname__
+petsc4py.PETSc.NormType.NORM_FROBENIUS petsc4py.PETSc.NormType-class.html#NORM_FROBENIUS
+petsc4py.PETSc.NormType.NORM_1_AND_2 petsc4py.PETSc.NormType-class.html#NORM_1_AND_2
+petsc4py.PETSc.NormType.N1 petsc4py.PETSc.NormType-class.html#N1
+petsc4py.PETSc.NormType.N2 petsc4py.PETSc.NormType-class.html#N2
+petsc4py.PETSc.NormType.MAX petsc4py.PETSc.NormType-class.html#MAX
petsc4py.PETSc.NormType.INF petsc4py.PETSc.NormType-class.html#INF
petsc4py.PETSc.NullSpace petsc4py.PETSc.NullSpace-class.html
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
+petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
petsc4py.PETSc.NullSpace.getVecs petsc4py.PETSc.NullSpace-class.html#getVecs
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
@@ -1678,6 +1781,7 @@ petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.NullSpace.hasConstant petsc4py.PETSc.NullSpace-class.html#hasConstant
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.NullSpace.setFunction petsc4py.PETSc.NullSpace-class.html#setFunction
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.NullSpace.__new__ petsc4py.PETSc.NullSpace-class.html#__new__
petsc4py.PETSc.NullSpace.create petsc4py.PETSc.NullSpace-class.html#create
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
@@ -1695,7 +1799,7 @@ petsc4py.PETSc.Object.__deepcopy__ petsc4py.PETSc.Object-class.html#__deepcopy__
petsc4py.PETSc.Object.setFromOptions petsc4py.PETSc.Object-class.html#setFromOptions
petsc4py.PETSc.Object.getType petsc4py.PETSc.Object-class.html#getType
petsc4py.PETSc.Object.refcount petsc4py.PETSc.Object-class.html#refcount
-petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
+petsc4py.PETSc.NullSpace.test petsc4py.PETSc.NullSpace-class.html#test
petsc4py.PETSc.NullSpace.createRigidBody petsc4py.PETSc.NullSpace-class.html#createRigidBody
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
@@ -1725,6 +1829,7 @@ petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Object.__new__ petsc4py.PETSc.Object-class.html#__new__
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Object.setOptionsPrefix petsc4py.PETSc.Object-class.html#setOptionsPrefix
@@ -1793,8 +1898,8 @@ petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.PC.setMGRScale petsc4py.PETSc.PC-class.html#setMGRScale
-petsc4py.PETSc.PC.getMGSmoother petsc4py.PETSc.PC-class.html#getMGSmoother
petsc4py.PETSc.PC.setFactorLevels petsc4py.PETSc.PC-class.html#setFactorLevels
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.PC.__call__ petsc4py.PETSc.PC-class.html#__call__
@@ -1833,9 +1938,10 @@ petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
petsc4py.PETSc.PC.setUp petsc4py.PETSc.PC-class.html#setUp
petsc4py.PETSc.PC.createPython petsc4py.PETSc.PC-class.html#createPython
petsc4py.PETSc.PC.getDM petsc4py.PETSc.PC-class.html#getDM
+petsc4py.PETSc.PC.MGCycleType petsc4py.PETSc.PC.MGCycleType-class.html
petsc4py.PETSc.PC.getOptionsPrefix petsc4py.PETSc.PC-class.html#getOptionsPrefix
petsc4py.PETSc.PC.getOperators petsc4py.PETSc.PC-class.html#getOperators
-petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.PC.setMGCycleType petsc4py.PETSc.PC-class.html#setMGCycleType
petsc4py.PETSc.PC.setCompositeType petsc4py.PETSc.PC-class.html#setCompositeType
petsc4py.PETSc.PC.setASMOverlap petsc4py.PETSc.PC-class.html#setASMOverlap
petsc4py.PETSc.PC.getMGInterpolation petsc4py.PETSc.PC-class.html#getMGInterpolation
@@ -1843,10 +1949,12 @@ petsc4py.PETSc.PC.setUseAmat petsc4py.PETSc.PC-class.html#setUseAmat
petsc4py.PETSc.PC.setFieldSplitType petsc4py.PETSc.PC-class.html#setFieldSplitType
petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
petsc4py.PETSc.PC.setMGR petsc4py.PETSc.PC-class.html#setMGR
+petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
petsc4py.PETSc.PC.setMGX petsc4py.PETSc.PC-class.html#setMGX
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.PC.getPythonContext petsc4py.PETSc.PC-class.html#getPythonContext
petsc4py.PETSc.PC.setGAMGSmooths petsc4py.PETSc.PC-class.html#setGAMGSmooths
+petsc4py.PETSc.PC.Side petsc4py.PETSc.PC.Side-class.html
petsc4py.PETSc.PC.setCoordinates petsc4py.PETSc.PC-class.html#setCoordinates
petsc4py.PETSc.PC.GASMType petsc4py.PETSc.PC.GASMType-class.html
petsc4py.PETSc.PC.setFactorOrdering petsc4py.PETSc.PC-class.html#setFactorOrdering
@@ -1871,6 +1979,7 @@ petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
petsc4py.PETSc.PC.getType petsc4py.PETSc.PC-class.html#getType
petsc4py.PETSc.Object.refcount petsc4py.PETSc.Object-class.html#refcount
petsc4py.PETSc.PC.getMGSmootherDown petsc4py.PETSc.PC-class.html#getMGSmootherDown
+petsc4py.PETSc.PC.setMGCycleTypeOnLevel petsc4py.PETSc.PC-class.html#setMGCycleTypeOnLevel
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.PC.reset petsc4py.PETSc.PC-class.html#reset
petsc4py.PETSc.PC.setFactorShift petsc4py.PETSc.PC-class.html#setFactorShift
@@ -1885,14 +1994,13 @@ petsc4py.PETSc.PC.setHYPREType petsc4py.PETSc.PC-class.html#setHYPREType
petsc4py.PETSc.PC.setHYPREDiscreteGradient petsc4py.PETSc.PC-class.html#setHYPREDiscreteGradient
petsc4py.PETSc.PC.setGASMOverlap petsc4py.PETSc.PC-class.html#setGASMOverlap
petsc4py.PETSc.PC.setReusePreconditioner petsc4py.PETSc.PC-class.html#setReusePreconditioner
-petsc4py.PETSc.PC.setFactorPivot petsc4py.PETSc.PC-class.html#setFactorPivot
petsc4py.PETSc.PC.setFieldSplitIS petsc4py.PETSc.PC-class.html#setFieldSplitIS
petsc4py.PETSc.PC.getHYPREType petsc4py.PETSc.PC-class.html#getHYPREType
petsc4py.PETSc.PC.SchurPreType petsc4py.PETSc.PC.SchurPreType-class.html
petsc4py.PETSc.PC.setMGRestriction petsc4py.PETSc.PC-class.html#setMGRestriction
petsc4py.PETSc.PC.setHYPREDiscreteCurl petsc4py.PETSc.PC-class.html#setHYPREDiscreteCurl
petsc4py.PETSc.PC.__new__ petsc4py.PETSc.PC-class.html#__new__
-petsc4py.PETSc.PC.setMGCyclesOnLevel petsc4py.PETSc.PC-class.html#setMGCyclesOnLevel
+petsc4py.PETSc.PC.getMGSmoother petsc4py.PETSc.PC-class.html#getMGSmoother
petsc4py.PETSc.PC.destroy petsc4py.PETSc.PC-class.html#destroy
petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
petsc4py.PETSc.PC.setHYPRESetEdgeConstantVectors petsc4py.PETSc.PC-class.html#setHYPRESetEdgeConstantVectors
@@ -1901,7 +2009,7 @@ petsc4py.PETSc.Object.setAttr petsc4py.PETSc.Object-class.html#setAttr
petsc4py.PETSc.PC.getFactorMatrix petsc4py.PETSc.PC-class.html#getFactorMatrix
petsc4py.PETSc.PC.setFieldSplitFields petsc4py.PETSc.PC-class.html#setFieldSplitFields
petsc4py.PETSc.PC.getFieldSplitSubKSP petsc4py.PETSc.PC-class.html#getFieldSplitSubKSP
-petsc4py.PETSc.PC.Side petsc4py.PETSc.PC.Side-class.html
+petsc4py.PETSc.PC.setFactorPivot petsc4py.PETSc.PC-class.html#setFactorPivot
petsc4py.PETSc.PC.setPythonType petsc4py.PETSc.PC-class.html#setPythonType
petsc4py.PETSc.PC.setFieldSplitSchurPreType petsc4py.PETSc.PC-class.html#setFieldSplitSchurPreType
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
@@ -1909,10 +2017,10 @@ petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.PC.setPythonContext petsc4py.PETSc.PC-class.html#setPythonContext
petsc4py.PETSc.PC.ASMType petsc4py.PETSc.PC.ASMType-class.html
+petsc4py.PETSc.PC.ASMType.RESTRICT petsc4py.PETSc.PC.ASMType-class.html#RESTRICT
petsc4py.PETSc.PC.ASMType.__qualname__ petsc4py.PETSc.PC.ASMType-class.html#__qualname__
petsc4py.PETSc.PC.ASMType.NONE petsc4py.PETSc.PC.ASMType-class.html#NONE
petsc4py.PETSc.PC.ASMType.INTERPOLATE petsc4py.PETSc.PC.ASMType-class.html#INTERPOLATE
-petsc4py.PETSc.PC.ASMType.RESTRICT petsc4py.PETSc.PC.ASMType-class.html#RESTRICT
petsc4py.PETSc.PC.ASMType.BASIC petsc4py.PETSc.PC.ASMType-class.html#BASIC
petsc4py.PETSc.PC.CompositeType petsc4py.PETSc.PC.CompositeType-class.html
petsc4py.PETSc.PC.CompositeType.SCHUR petsc4py.PETSc.PC.CompositeType-class.html#SCHUR
@@ -1922,28 +2030,32 @@ petsc4py.PETSc.PC.CompositeType.__qualname__ petsc4py.PETSc.PC.CompositeType-cla
petsc4py.PETSc.PC.CompositeType.MULTIPLICATIVE petsc4py.PETSc.PC.CompositeType-class.html#MULTIPLICATIVE
petsc4py.PETSc.PC.CompositeType.SPECIAL petsc4py.PETSc.PC.CompositeType-class.html#SPECIAL
petsc4py.PETSc.PC.GAMGType petsc4py.PETSc.PC.GAMGType-class.html
-petsc4py.PETSc.PC.GAMGType.CLASSICAL petsc4py.PETSc.PC.GAMGType-class.html#CLASSICAL
petsc4py.PETSc.PC.GAMGType.AGG petsc4py.PETSc.PC.GAMGType-class.html#AGG
petsc4py.PETSc.PC.GAMGType.__qualname__ petsc4py.PETSc.PC.GAMGType-class.html#__qualname__
petsc4py.PETSc.PC.GAMGType.GEO petsc4py.PETSc.PC.GAMGType-class.html#GEO
+petsc4py.PETSc.PC.GAMGType.CLASSICAL petsc4py.PETSc.PC.GAMGType-class.html#CLASSICAL
petsc4py.PETSc.PC.GASMType petsc4py.PETSc.PC.GASMType-class.html
+petsc4py.PETSc.PC.GASMType.RESTRICT petsc4py.PETSc.PC.GASMType-class.html#RESTRICT
petsc4py.PETSc.PC.GASMType.__qualname__ petsc4py.PETSc.PC.GASMType-class.html#__qualname__
petsc4py.PETSc.PC.GASMType.NONE petsc4py.PETSc.PC.GASMType-class.html#NONE
petsc4py.PETSc.PC.GASMType.INTERPOLATE petsc4py.PETSc.PC.GASMType-class.html#INTERPOLATE
-petsc4py.PETSc.PC.GASMType.RESTRICT petsc4py.PETSc.PC.GASMType-class.html#RESTRICT
petsc4py.PETSc.PC.GASMType.BASIC petsc4py.PETSc.PC.GASMType-class.html#BASIC
+petsc4py.PETSc.PC.MGCycleType petsc4py.PETSc.PC.MGCycleType-class.html
+petsc4py.PETSc.PC.MGCycleType.__qualname__ petsc4py.PETSc.PC.MGCycleType-class.html#__qualname__
+petsc4py.PETSc.PC.MGCycleType.W petsc4py.PETSc.PC.MGCycleType-class.html#W
+petsc4py.PETSc.PC.MGCycleType.V petsc4py.PETSc.PC.MGCycleType-class.html#V
petsc4py.PETSc.PC.MGType petsc4py.PETSc.PC.MGType-class.html
+petsc4py.PETSc.PC.MGType.__qualname__ petsc4py.PETSc.PC.MGType-class.html#__qualname__
petsc4py.PETSc.PC.MGType.KASKADE petsc4py.PETSc.PC.MGType-class.html#KASKADE
petsc4py.PETSc.PC.MGType.FULL petsc4py.PETSc.PC.MGType-class.html#FULL
petsc4py.PETSc.PC.MGType.ADDITIVE petsc4py.PETSc.PC.MGType-class.html#ADDITIVE
-petsc4py.PETSc.PC.MGType.__qualname__ petsc4py.PETSc.PC.MGType-class.html#__qualname__
petsc4py.PETSc.PC.MGType.MULTIPLICATIVE petsc4py.PETSc.PC.MGType-class.html#MULTIPLICATIVE
petsc4py.PETSc.PC.SchurFactType petsc4py.PETSc.PC.SchurFactType-class.html
+petsc4py.PETSc.PC.SchurFactType.__qualname__ petsc4py.PETSc.PC.SchurFactType-class.html#__qualname__
petsc4py.PETSc.PC.SchurFactType.UPPER petsc4py.PETSc.PC.SchurFactType-class.html#UPPER
petsc4py.PETSc.PC.SchurFactType.LOWER petsc4py.PETSc.PC.SchurFactType-class.html#LOWER
petsc4py.PETSc.PC.SchurFactType.FULL petsc4py.PETSc.PC.SchurFactType-class.html#FULL
petsc4py.PETSc.PC.SchurFactType.DIAG petsc4py.PETSc.PC.SchurFactType-class.html#DIAG
-petsc4py.PETSc.PC.SchurFactType.__qualname__ petsc4py.PETSc.PC.SchurFactType-class.html#__qualname__
petsc4py.PETSc.PC.SchurPreType petsc4py.PETSc.PC.SchurPreType-class.html
petsc4py.PETSc.PC.SchurPreType.FULL petsc4py.PETSc.PC.SchurPreType-class.html#FULL
petsc4py.PETSc.PC.SchurPreType.A11 petsc4py.PETSc.PC.SchurPreType-class.html#A11
@@ -2014,6 +2126,7 @@ petsc4py.PETSc.Partitioner.Type petsc4py.PETSc.PartitionerType-class.html
petsc4py.PETSc.Partitioner.setType petsc4py.PETSc.Partitioner-class.html#setType
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Partitioner.__new__ petsc4py.PETSc.Partitioner-class.html#__new__
petsc4py.PETSc.Partitioner.create petsc4py.PETSc.Partitioner-class.html#create
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
@@ -2053,9 +2166,9 @@ petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Partitioner.view petsc4py.PETSc.Partitioner-class.html#view
petsc4py.PETSc.PartitionerType petsc4py.PETSc.PartitionerType-class.html
+petsc4py.PETSc.PartitionerType.__qualname__ petsc4py.PETSc.PartitionerType-class.html#__qualname__
petsc4py.PETSc.PartitionerType.SHELL petsc4py.PETSc.PartitionerType-class.html#SHELL
petsc4py.PETSc.PartitionerType.CHACO petsc4py.PETSc.PartitionerType-class.html#CHACO
-petsc4py.PETSc.PartitionerType.__qualname__ petsc4py.PETSc.PartitionerType-class.html#__qualname__
petsc4py.PETSc.PartitionerType.PARMETIS petsc4py.PETSc.PartitionerType-class.html#PARMETIS
petsc4py.PETSc.Random petsc4py.PETSc.Random-class.html
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
@@ -2070,6 +2183,7 @@ petsc4py.PETSc.Random.Type petsc4py.PETSc.Random.Type-class.html
petsc4py.PETSc.Random.setType petsc4py.PETSc.Random-class.html#setType
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Random.__new__ petsc4py.PETSc.Random-class.html#__new__
petsc4py.PETSc.Random.create petsc4py.PETSc.Random-class.html#create
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
@@ -2115,9 +2229,9 @@ petsc4py.PETSc.Random.view petsc4py.PETSc.Random-class.html#view
petsc4py.PETSc.Random.Type petsc4py.PETSc.Random.Type-class.html
petsc4py.PETSc.Random.Type.RANDER48 petsc4py.PETSc.Random.Type-class.html#RANDER48
petsc4py.PETSc.Random.Type.RAND petsc4py.PETSc.Random.Type-class.html#RAND
-petsc4py.PETSc.Random.Type.RAND48 petsc4py.PETSc.Random.Type-class.html#RAND48
-petsc4py.PETSc.Random.Type.__qualname__ petsc4py.PETSc.Random.Type-class.html#__qualname__
petsc4py.PETSc.Random.Type.SPRNG petsc4py.PETSc.Random.Type-class.html#SPRNG
+petsc4py.PETSc.Random.Type.__qualname__ petsc4py.PETSc.Random.Type-class.html#__qualname__
+petsc4py.PETSc.Random.Type.RAND48 petsc4py.PETSc.Random.Type-class.html#RAND48
petsc4py.PETSc.SF petsc4py.PETSc.SF-class.html
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.SF.setGraph petsc4py.PETSc.SF-class.html#setGraph
@@ -2131,6 +2245,7 @@ petsc4py.PETSc.SF.Type petsc4py.PETSc.SF.Type-class.html
petsc4py.PETSc.SF.setType petsc4py.PETSc.SF-class.html#setType
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.SF.__new__ petsc4py.PETSc.SF-class.html#__new__
petsc4py.PETSc.SF.create petsc4py.PETSc.SF-class.html#create
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
@@ -2183,6 +2298,7 @@ petsc4py.PETSc.SNES.getConvergenceHistory petsc4py.PETSc.SNES-class.html#getConv
petsc4py.PETSc.SNES.cancelMonitor petsc4py.PETSc.SNES-class.html#cancelMonitor
petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
petsc4py.PETSc.SNES.max_it petsc4py.PETSc.SNES-class.html#max_it
+petsc4py.PETSc.SNES.computeNGS petsc4py.PETSc.SNES-class.html#computeNGS
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
petsc4py.PETSc.SNES.setUseFD petsc4py.PETSc.SNES-class.html#setUseFD
petsc4py.PETSc.SNES.getObjective petsc4py.PETSc.SNES-class.html#getObjective
@@ -2191,11 +2307,13 @@ petsc4py.PETSc.SNES.its petsc4py.PETSc.SNES-class.html#its
petsc4py.PETSc.SNES.getFASCycleSNES petsc4py.PETSc.SNES-class.html#getFASCycleSNES
petsc4py.PETSc.SNES.setUpdate petsc4py.PETSc.SNES-class.html#setUpdate
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.SNES.monitor petsc4py.PETSc.SNES-class.html#monitor
petsc4py.PETSc.SNES.getMaxKSPFailures petsc4py.PETSc.SNES-class.html#getMaxKSPFailures
petsc4py.PETSc.SNES.setMonitor petsc4py.PETSc.SNES-class.html#setMonitor
petsc4py.PETSc.SNES.rtol petsc4py.PETSc.SNES-class.html#rtol
petsc4py.PETSc.SNES.getConvergedReason petsc4py.PETSc.SNES-class.html#getConvergedReason
+petsc4py.PETSc.SNES.norm petsc4py.PETSc.SNES-class.html#norm
petsc4py.PETSc.SNES.getCompositeSNES petsc4py.PETSc.SNES-class.html#getCompositeSNES
petsc4py.PETSc.SNES.dm petsc4py.PETSc.SNES-class.html#dm
petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
@@ -2203,13 +2321,15 @@ petsc4py.PETSc.SNES.NormSchedule petsc4py.PETSc.SNES.NormSchedule-class.html
petsc4py.PETSc.SNES.setOptionsPrefix petsc4py.PETSc.SNES-class.html#setOptionsPrefix
petsc4py.PETSc.SNES.callConvergenceTest petsc4py.PETSc.SNES-class.html#callConvergenceTest
petsc4py.PETSc.Object.__deepcopy__ petsc4py.PETSc.Object-class.html#__deepcopy__
-petsc4py.PETSc.SNES.getFASCoarseSolve petsc4py.PETSc.SNES-class.html#getFASCoarseSolve
+petsc4py.PETSc.SNES.getMaxStepFailures petsc4py.PETSc.SNES-class.html#getMaxStepFailures
petsc4py.PETSc.SNES.getLinearSolveIterations petsc4py.PETSc.SNES-class.html#getLinearSolveIterations
petsc4py.PETSc.SNES.stol petsc4py.PETSc.SNES-class.html#stol
petsc4py.PETSc.SNES.setFromOptions petsc4py.PETSc.SNES-class.html#setFromOptions
-petsc4py.PETSc.SNES.getUseEW petsc4py.PETSc.SNES-class.html#getUseEW
+petsc4py.PETSc.SNES.getNGS petsc4py.PETSc.SNES-class.html#getNGS
+petsc4py.PETSc.SNES.destroy petsc4py.PETSc.SNES-class.html#destroy
petsc4py.PETSc.SNES.setMaxNonlinearStepFailures petsc4py.PETSc.SNES-class.html#setMaxNonlinearStepFailures
petsc4py.PETSc.SNES.getSolutionUpdate petsc4py.PETSc.SNES-class.html#getSolutionUpdate
+petsc4py.PETSc.SNES.getNASMSNES petsc4py.PETSc.SNES-class.html#getNASMSNES
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.SNES.setAppCtx petsc4py.PETSc.SNES-class.html#setAppCtx
petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
@@ -2220,6 +2340,7 @@ petsc4py.PETSc.SNES.getFASSmoother petsc4py.PETSc.SNES-class.html#getFASSmoother
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.SNES.setMaxFunctionEvaluations petsc4py.PETSc.SNES-class.html#setMaxFunctionEvaluations
petsc4py.PETSc.SNES.setFASInterpolation petsc4py.PETSc.SNES-class.html#setFASInterpolation
+petsc4py.PETSc.SNES.getFunctionNorm petsc4py.PETSc.SNES-class.html#getFunctionNorm
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
petsc4py.PETSc.SNES.ConvergedReason petsc4py.PETSc.SNES.ConvergedReason-class.html
petsc4py.PETSc.SNES.setJacobian petsc4py.PETSc.SNES-class.html#setJacobian
@@ -2263,6 +2384,7 @@ petsc4py.PETSc.SNES.view petsc4py.PETSc.SNES-class.html#view
petsc4py.PETSc.SNES.vec_rhs petsc4py.PETSc.SNES-class.html#vec_rhs
petsc4py.PETSc.SNES.getPythonContext petsc4py.PETSc.SNES-class.html#getPythonContext
petsc4py.PETSc.SNES.getMaxFunctionEvaluations petsc4py.PETSc.SNES-class.html#getMaxFunctionEvaluations
+petsc4py.PETSc.SNES.setNGS petsc4py.PETSc.SNES-class.html#setNGS
petsc4py.PETSc.SNES.setMaxStepFailures petsc4py.PETSc.SNES-class.html#setMaxStepFailures
petsc4py.PETSc.SNES.getJacobian petsc4py.PETSc.SNES-class.html#getJacobian
petsc4py.PETSc.SNES.getFunctionEvaluations petsc4py.PETSc.SNES-class.html#getFunctionEvaluations
@@ -2289,6 +2411,7 @@ petsc4py.PETSc.SNES.hasNPC petsc4py.PETSc.SNES-class.html#hasNPC
petsc4py.PETSc.SNES.atol petsc4py.PETSc.SNES-class.html#atol
petsc4py.PETSc.SNES.getFASSmootherDown petsc4py.PETSc.SNES-class.html#getFASSmootherDown
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
+petsc4py.PETSc.SNES.setFunctionNorm petsc4py.PETSc.SNES-class.html#setFunctionNorm
petsc4py.PETSc.SNES.reset petsc4py.PETSc.SNES-class.html#reset
petsc4py.PETSc.SNES.getRhs petsc4py.PETSc.SNES-class.html#getRhs
petsc4py.PETSc.SNES.setVariableBounds petsc4py.PETSc.SNES-class.html#setVariableBounds
@@ -2313,16 +2436,17 @@ petsc4py.PETSc.SNES.logConvergenceHistory petsc4py.PETSc.SNES-class.html#logConv
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.SNES.getUseMF petsc4py.PETSc.SNES-class.html#getUseMF
petsc4py.PETSc.SNES.converged petsc4py.PETSc.SNES-class.html#converged
-petsc4py.PETSc.SNES.destroy petsc4py.PETSc.SNES-class.html#destroy
+petsc4py.PETSc.SNES.getUseEW petsc4py.PETSc.SNES-class.html#getUseEW
petsc4py.PETSc.SNES.vec_upd petsc4py.PETSc.SNES-class.html#vec_upd
petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
-petsc4py.PETSc.SNES.getMaxStepFailures petsc4py.PETSc.SNES-class.html#getMaxStepFailures
+petsc4py.PETSc.SNES.getFASCoarseSolve petsc4py.PETSc.SNES-class.html#getFASCoarseSolve
petsc4py.PETSc.SNES.setMaxKSPFailures petsc4py.PETSc.SNES-class.html#setMaxKSPFailures
petsc4py.PETSc.SNES.setNormSchedule petsc4py.PETSc.SNES-class.html#setNormSchedule
petsc4py.PETSc.SNES.getNPC petsc4py.PETSc.SNES-class.html#getNPC
petsc4py.PETSc.Object.refcount petsc4py.PETSc.Object-class.html#refcount
petsc4py.PETSc.SNES.getTolerances petsc4py.PETSc.SNES-class.html#getTolerances
petsc4py.PETSc.SNES.npc petsc4py.PETSc.SNES-class.html#npc
+petsc4py.PETSc.SNES.getNASMNumber petsc4py.PETSc.SNES-class.html#getNASMNumber
petsc4py.PETSc.SNES.setFASInjection petsc4py.PETSc.SNES-class.html#setFASInjection
petsc4py.PETSc.SNES.getLinearSolveFailures petsc4py.PETSc.SNES-class.html#getLinearSolveFailures
petsc4py.PETSc.SNES.getKSPFailures petsc4py.PETSc.SNES-class.html#getKSPFailures
@@ -2339,56 +2463,56 @@ petsc4py.PETSc.SNES.getMaxNonlinearStepFailures petsc4py.PETSc.SNES-class.html#g
petsc4py.PETSc.SNES.use_fd petsc4py.PETSc.SNES-class.html#use_fd
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.SNES.ConvergedReason petsc4py.PETSc.SNES.ConvergedReason-class.html
-petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_MAX_IT petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_MAX_IT
-petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_FNORM_NAN petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_FNORM_NAN
-petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_INNER petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_INNER
-petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_TR_DELTA petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_TR_DELTA
-petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_LINE_SEARCH petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_LINE_SEARCH
-petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_FNORM_ABS petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_ABS
+petsc4py.PETSc.SNES.ConvergedReason.__qualname__ petsc4py.PETSc.SNES.ConvergedReason-class.html#__qualname__
petsc4py.PETSc.SNES.ConvergedReason.ITERATING petsc4py.PETSc.SNES.ConvergedReason-class.html#ITERATING
petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_ITS petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_ITS
-petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_SNORM_RELATIVE petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_SNORM_RELATIVE
-petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_FNORM_RELATIVE petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_RELATIVE
-petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_LOCAL_MIN petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_LOCAL_MIN
petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_FUNCTION_COUNT petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_FUNCTION_COUNT
+petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_TR_DELTA petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_TR_DELTA
+petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_MAX_IT petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_MAX_IT
+petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_SNORM_RELATIVE petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_SNORM_RELATIVE
+petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_LINE_SEARCH petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_LINE_SEARCH
petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_FUNCTION_DOMAIN petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_FUNCTION_DOMAIN
-petsc4py.PETSc.SNES.ConvergedReason.__qualname__ petsc4py.PETSc.SNES.ConvergedReason-class.html#__qualname__
+petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_FNORM_RELATIVE petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_RELATIVE
petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_ITERATING petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_ITERATING
+petsc4py.PETSc.SNES.ConvergedReason.CONVERGED_FNORM_ABS petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_ABS
+petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_LOCAL_MIN petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_LOCAL_MIN
+petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_FNORM_NAN petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_FNORM_NAN
+petsc4py.PETSc.SNES.ConvergedReason.DIVERGED_INNER petsc4py.PETSc.SNES.ConvergedReason-class.html#DIVERGED_INNER
petsc4py.PETSc.SNES.NormSchedule petsc4py.PETSc.SNES.NormSchedule-class.html
+petsc4py.PETSc.SNES.NormSchedule.NORM_DEFAULT petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_DEFAULT
petsc4py.PETSc.SNES.NormSchedule.NORM_INITIAL_FINAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_INITIAL_FINAL_ONLY
-petsc4py.PETSc.SNES.NormSchedule.DEFAULT petsc4py.PETSc.SNES.NormSchedule-class.html#DEFAULT
-petsc4py.PETSc.SNES.NormSchedule.NORM_NONE petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_NONE
petsc4py.PETSc.SNES.NormSchedule.NONE petsc4py.PETSc.SNES.NormSchedule-class.html#NONE
petsc4py.PETSc.SNES.NormSchedule.INITIAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#INITIAL_ONLY
petsc4py.PETSc.SNES.NormSchedule.FINAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#FINAL_ONLY
-petsc4py.PETSc.SNES.NormSchedule.NORM_INITIAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_INITIAL_ONLY
-petsc4py.PETSc.SNES.NormSchedule.NORM_DEFAULT petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_DEFAULT
-petsc4py.PETSc.SNES.NormSchedule.INITIAL_FINAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#INITIAL_FINAL_ONLY
+petsc4py.PETSc.SNES.NormSchedule.DEFAULT petsc4py.PETSc.SNES.NormSchedule-class.html#DEFAULT
petsc4py.PETSc.SNES.NormSchedule.ALWAYS petsc4py.PETSc.SNES.NormSchedule-class.html#ALWAYS
petsc4py.PETSc.SNES.NormSchedule.NORM_ALWAYS petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_ALWAYS
petsc4py.PETSc.SNES.NormSchedule.__qualname__ petsc4py.PETSc.SNES.NormSchedule-class.html#__qualname__
+petsc4py.PETSc.SNES.NormSchedule.INITIAL_FINAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#INITIAL_FINAL_ONLY
petsc4py.PETSc.SNES.NormSchedule.NORM_FINAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_FINAL_ONLY
+petsc4py.PETSc.SNES.NormSchedule.NORM_INITIAL_ONLY petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_INITIAL_ONLY
+petsc4py.PETSc.SNES.NormSchedule.NORM_NONE petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_NONE
petsc4py.PETSc.SNES.Type petsc4py.PETSc.SNES.Type-class.html
+petsc4py.PETSc.SNES.Type.ASPIN petsc4py.PETSc.SNES.Type-class.html#ASPIN
petsc4py.PETSc.SNES.Type.NEWTONTR petsc4py.PETSc.SNES.Type-class.html#NEWTONTR
-petsc4py.PETSc.SNES.Type.QN petsc4py.PETSc.SNES.Type-class.html#QN
+petsc4py.PETSc.SNES.Type.MS petsc4py.PETSc.SNES.Type-class.html#MS
+petsc4py.PETSc.SNES.Type.VINEWTONSSLS petsc4py.PETSc.SNES.Type-class.html#VINEWTONSSLS
petsc4py.PETSc.SNES.Type.PYTHON petsc4py.PETSc.SNES.Type-class.html#PYTHON
-petsc4py.PETSc.SNES.Type.NGS petsc4py.PETSc.SNES.Type-class.html#NGS
-petsc4py.PETSc.SNES.Type.NEWTONLS petsc4py.PETSc.SNES.Type-class.html#NEWTONLS
-petsc4py.PETSc.SNES.Type.__qualname__ petsc4py.PETSc.SNES.Type-class.html#__qualname__
petsc4py.PETSc.SNES.Type.FAS petsc4py.PETSc.SNES.Type-class.html#FAS
-petsc4py.PETSc.SNES.Type.ANDERSON petsc4py.PETSc.SNES.Type-class.html#ANDERSON
-petsc4py.PETSc.SNES.Type.NRICHARDSON petsc4py.PETSc.SNES.Type-class.html#NRICHARDSON
-petsc4py.PETSc.SNES.Type.VINEWTONRSLS petsc4py.PETSc.SNES.Type-class.html#VINEWTONRSLS
-petsc4py.PETSc.SNES.Type.NGMRES petsc4py.PETSc.SNES.Type-class.html#NGMRES
petsc4py.PETSc.SNES.Type.KSPONLY petsc4py.PETSc.SNES.Type-class.html#KSPONLY
-petsc4py.PETSc.SNES.Type.SHELL petsc4py.PETSc.SNES.Type-class.html#SHELL
-petsc4py.PETSc.SNES.Type.VINEWTONSSLS petsc4py.PETSc.SNES.Type-class.html#VINEWTONSSLS
+petsc4py.PETSc.SNES.Type.NASM petsc4py.PETSc.SNES.Type-class.html#NASM
+petsc4py.PETSc.SNES.Type.__qualname__ petsc4py.PETSc.SNES.Type-class.html#__qualname__
petsc4py.PETSc.SNES.Type.COMPOSITE petsc4py.PETSc.SNES.Type-class.html#COMPOSITE
-petsc4py.PETSc.SNES.Type.ASPIN petsc4py.PETSc.SNES.Type-class.html#ASPIN
-petsc4py.PETSc.SNES.Type.MS petsc4py.PETSc.SNES.Type-class.html#MS
+petsc4py.PETSc.SNES.Type.ANDERSON petsc4py.PETSc.SNES.Type-class.html#ANDERSON
+petsc4py.PETSc.SNES.Type.SHELL petsc4py.PETSc.SNES.Type-class.html#SHELL
+petsc4py.PETSc.SNES.Type.NGMRES petsc4py.PETSc.SNES.Type-class.html#NGMRES
+petsc4py.PETSc.SNES.Type.NGS petsc4py.PETSc.SNES.Type-class.html#NGS
petsc4py.PETSc.SNES.Type.TEST petsc4py.PETSc.SNES.Type-class.html#TEST
+petsc4py.PETSc.SNES.Type.NEWTONLS petsc4py.PETSc.SNES.Type-class.html#NEWTONLS
petsc4py.PETSc.SNES.Type.NCG petsc4py.PETSc.SNES.Type-class.html#NCG
-petsc4py.PETSc.SNES.Type.NASM petsc4py.PETSc.SNES.Type-class.html#NASM
+petsc4py.PETSc.SNES.Type.VINEWTONRSLS petsc4py.PETSc.SNES.Type-class.html#VINEWTONRSLS
+petsc4py.PETSc.SNES.Type.NRICHARDSON petsc4py.PETSc.SNES.Type-class.html#NRICHARDSON
+petsc4py.PETSc.SNES.Type.QN petsc4py.PETSc.SNES.Type-class.html#QN
petsc4py.PETSc.Scatter petsc4py.PETSc.Scatter-class.html
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.Scatter.toAll petsc4py.PETSc.Scatter-class.html#toAll
@@ -2397,6 +2521,7 @@ petsc4py.PETSc.Scatter.toZero petsc4py.PETSc.Scatter-class.html#toZero
petsc4py.PETSc.Scatter.scatterBegin petsc4py.PETSc.Scatter-class.html#scatterBegin
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
@@ -2425,6 +2550,7 @@ petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
petsc4py.PETSc.Scatter.Mode petsc4py.PETSc.ScatterMode-class.html
petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Scatter.copy petsc4py.PETSc.Scatter-class.html#copy
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
@@ -2434,121 +2560,122 @@ petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
-petsc4py.PETSc.Scatter.scatter petsc4py.PETSc.Scatter-class.html#scatter
petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
-petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
+petsc4py.PETSc.Scatter.scatter petsc4py.PETSc.Scatter-class.html#scatter
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Scatter.view petsc4py.PETSc.Scatter-class.html#view
petsc4py.PETSc.ScatterMode petsc4py.PETSc.ScatterMode-class.html
petsc4py.PETSc.ScatterMode.REVERSE petsc4py.PETSc.ScatterMode-class.html#REVERSE
petsc4py.PETSc.ScatterMode.SCATTER_FORWARD petsc4py.PETSc.ScatterMode-class.html#SCATTER_FORWARD
-petsc4py.PETSc.ScatterMode.REVERSE_LOCAL petsc4py.PETSc.ScatterMode-class.html#REVERSE_LOCAL
-petsc4py.PETSc.ScatterMode.SCATTER_LOCAL petsc4py.PETSc.ScatterMode-class.html#SCATTER_LOCAL
-petsc4py.PETSc.ScatterMode.SCATTER_FORWARD_LOCAL petsc4py.PETSc.ScatterMode-class.html#SCATTER_FORWARD_LOCAL
+petsc4py.PETSc.ScatterMode.FORWARD_LOCAL petsc4py.PETSc.ScatterMode-class.html#FORWARD_LOCAL
+petsc4py.PETSc.ScatterMode.__qualname__ petsc4py.PETSc.ScatterMode-class.html#__qualname__
petsc4py.PETSc.ScatterMode.SCATTER_REVERSE petsc4py.PETSc.ScatterMode-class.html#SCATTER_REVERSE
+petsc4py.PETSc.ScatterMode.REVERSE_LOCAL petsc4py.PETSc.ScatterMode-class.html#REVERSE_LOCAL
petsc4py.PETSc.ScatterMode.SCATTER_REVERSE_LOCAL petsc4py.PETSc.ScatterMode-class.html#SCATTER_REVERSE_LOCAL
petsc4py.PETSc.ScatterMode.FORWARD petsc4py.PETSc.ScatterMode-class.html#FORWARD
-petsc4py.PETSc.ScatterMode.__qualname__ petsc4py.PETSc.ScatterMode-class.html#__qualname__
-petsc4py.PETSc.ScatterMode.FORWARD_LOCAL petsc4py.PETSc.ScatterMode-class.html#FORWARD_LOCAL
+petsc4py.PETSc.ScatterMode.SCATTER_LOCAL petsc4py.PETSc.ScatterMode-class.html#SCATTER_LOCAL
+petsc4py.PETSc.ScatterMode.SCATTER_FORWARD_LOCAL petsc4py.PETSc.ScatterMode-class.html#SCATTER_FORWARD_LOCAL
petsc4py.PETSc.Section petsc4py.PETSc.Section-class.html
+petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.Section.setFieldConstraintIndices petsc4py.PETSc.Section-class.html#setFieldConstraintIndices
+petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
+petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
+petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
+petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
+petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
+petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.Section.getChart petsc4py.PETSc.Section-class.html#getChart
+petsc4py.PETSc.Section.getFieldConstraintIndices petsc4py.PETSc.Section-class.html#getFieldConstraintIndices
+petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
-petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
+petsc4py.PETSc.Section.getOffsetRange petsc4py.PETSc.Section-class.html#getOffsetRange
+petsc4py.PETSc.Section.setFieldComponents petsc4py.PETSc.Section-class.html#setFieldComponents
petsc4py.PETSc.Section.addConstraintDof petsc4py.PETSc.Section-class.html#addConstraintDof
+petsc4py.PETSc.Section.setChart petsc4py.PETSc.Section-class.html#setChart
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
-petsc4py.PETSc.Section.getConstraintIndices petsc4py.PETSc.Section-class.html#getConstraintIndices
-petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
-petsc4py.PETSc.Section.setOffset petsc4py.PETSc.Section-class.html#setOffset
-petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
-petsc4py.PETSc.Object.setOptionsPrefix petsc4py.PETSc.Object-class.html#setOptionsPrefix
-petsc4py.PETSc.Object.__deepcopy__ petsc4py.PETSc.Object-class.html#__deepcopy__
-petsc4py.PETSc.Section.setNumFields petsc4py.PETSc.Section-class.html#setNumFields
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
+petsc4py.PETSc.Section.__new__ petsc4py.PETSc.Section-class.html#__new__
+petsc4py.PETSc.Section.addFieldDof petsc4py.PETSc.Section-class.html#addFieldDof
+petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
+petsc4py.PETSc.Section.create petsc4py.PETSc.Section-class.html#create
petsc4py.PETSc.Object.setFromOptions petsc4py.PETSc.Object-class.html#setFromOptions
-petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
-petsc4py.PETSc.Section.setConstraintDof petsc4py.PETSc.Section-class.html#setConstraintDof
-petsc4py.PETSc.Section.addDof petsc4py.PETSc.Section-class.html#addDof
-petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
-petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
-petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
-petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
-petsc4py.PETSc.Section.getFieldComponents petsc4py.PETSc.Section-class.html#getFieldComponents
+petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
+petsc4py.PETSc.Section.getMaxDof petsc4py.PETSc.Section-class.html#getMaxDof
+petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
-petsc4py.PETSc.Section.view petsc4py.PETSc.Section-class.html#view
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
-petsc4py.PETSc.Section.setFieldComponents petsc4py.PETSc.Section-class.html#setFieldComponents
-petsc4py.PETSc.Section.setChart petsc4py.PETSc.Section-class.html#setChart
-petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
-petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
+petsc4py.PETSc.Object.__deepcopy__ petsc4py.PETSc.Object-class.html#__deepcopy__
petsc4py.PETSc.Section.setConstraintIndices petsc4py.PETSc.Section-class.html#setConstraintIndices
-petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
-petsc4py.PETSc.Section.getDof petsc4py.PETSc.Section-class.html#getDof
-petsc4py.PETSc.Section.setUp petsc4py.PETSc.Section-class.html#setUp
-petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
-petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
-petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
-petsc4py.PETSc.Section.createGlobalSection petsc4py.PETSc.Section-class.html#createGlobalSection
-petsc4py.PETSc.Section.setFieldConstraintDof petsc4py.PETSc.Section-class.html#setFieldConstraintDof
-petsc4py.PETSc.Section.addFieldConstraintDof petsc4py.PETSc.Section-class.html#addFieldConstraintDof
-petsc4py.PETSc.Section.getStorageSize petsc4py.PETSc.Section-class.html#getStorageSize
-petsc4py.PETSc.Section.getFieldConstraintIndices petsc4py.PETSc.Section-class.html#getFieldConstraintIndices
-petsc4py.PETSc.Section.getOffsetRange petsc4py.PETSc.Section-class.html#getOffsetRange
-petsc4py.PETSc.Section.create petsc4py.PETSc.Section-class.html#create
+petsc4py.PETSc.Section.destroy petsc4py.PETSc.Section-class.html#destroy
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
+petsc4py.PETSc.Section.clone petsc4py.PETSc.Section-class.html#clone
+petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
+petsc4py.PETSc.Section.getConstraintDof petsc4py.PETSc.Section-class.html#getConstraintDof
+petsc4py.PETSc.Section.getFieldConstraintDof petsc4py.PETSc.Section-class.html#getFieldConstraintDof
+petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
-petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
-petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
+petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
+petsc4py.PETSc.Section.getDof petsc4py.PETSc.Section-class.html#getDof
+petsc4py.PETSc.Object.setOptionsPrefix petsc4py.PETSc.Object-class.html#setOptionsPrefix
petsc4py.PETSc.Section.setDof petsc4py.PETSc.Section-class.html#setDof
+petsc4py.PETSc.Section.setUp petsc4py.PETSc.Section-class.html#setUp
petsc4py.PETSc.Object.getType petsc4py.PETSc.Object-class.html#getType
petsc4py.PETSc.Object.refcount petsc4py.PETSc.Object-class.html#refcount
-petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
+petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.Section.setFieldDof petsc4py.PETSc.Section-class.html#setFieldDof
+petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
+petsc4py.PETSc.Section.setNumFields petsc4py.PETSc.Section-class.html#setNumFields
+petsc4py.PETSc.Section.addFieldConstraintDof petsc4py.PETSc.Section-class.html#addFieldConstraintDof
+petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.Section.setOffset petsc4py.PETSc.Section-class.html#setOffset
+petsc4py.PETSc.Section.setConstraintDof petsc4py.PETSc.Section-class.html#setConstraintDof
+petsc4py.PETSc.Section.getConstraintIndices petsc4py.PETSc.Section-class.html#getConstraintIndices
+petsc4py.PETSc.Section.getFieldDof petsc4py.PETSc.Section-class.html#getFieldDof
+petsc4py.PETSc.Section.addDof petsc4py.PETSc.Section-class.html#addDof
petsc4py.PETSc.Section.reset petsc4py.PETSc.Section-class.html#reset
+petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
petsc4py.PETSc.Section.getOffset petsc4py.PETSc.Section-class.html#getOffset
-petsc4py.PETSc.Section.getFieldName petsc4py.PETSc.Section-class.html#getFieldName
-petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
-petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
-petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
-petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
-petsc4py.PETSc.Section.__new__ petsc4py.PETSc.Section-class.html#__new__
-petsc4py.PETSc.Section.setFieldName petsc4py.PETSc.Section-class.html#setFieldName
-petsc4py.PETSc.Section.getFieldConstraintDof petsc4py.PETSc.Section-class.html#getFieldConstraintDof
-petsc4py.PETSc.Section.getMaxDof petsc4py.PETSc.Section-class.html#getMaxDof
-petsc4py.PETSc.Section.setFieldDof petsc4py.PETSc.Section-class.html#setFieldDof
-petsc4py.PETSc.Section.destroy petsc4py.PETSc.Section-class.html#destroy
-petsc4py.PETSc.Section.getConstraintDof petsc4py.PETSc.Section-class.html#getConstraintDof
-petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
-petsc4py.PETSc.Section.getConstrainedStorageSize petsc4py.PETSc.Section-class.html#getConstrainedStorageSize
+petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
petsc4py.PETSc.Object.setAttr petsc4py.PETSc.Object-class.html#setAttr
-petsc4py.PETSc.Section.clone petsc4py.PETSc.Section-class.html#clone
-petsc4py.PETSc.Section.getFieldDof petsc4py.PETSc.Section-class.html#getFieldDof
+petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
+petsc4py.PETSc.Section.getConstrainedStorageSize petsc4py.PETSc.Section-class.html#getConstrainedStorageSize
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
-petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.Section.getFieldName petsc4py.PETSc.Section-class.html#getFieldName
+petsc4py.PETSc.Section.getFieldComponents petsc4py.PETSc.Section-class.html#getFieldComponents
petsc4py.PETSc.Section.getNumFields petsc4py.PETSc.Section-class.html#getNumFields
-petsc4py.PETSc.Section.addFieldDof petsc4py.PETSc.Section-class.html#addFieldDof
+petsc4py.PETSc.Section.setFieldName petsc4py.PETSc.Section-class.html#setFieldName
+petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
+petsc4py.PETSc.Section.createGlobalSection petsc4py.PETSc.Section-class.html#createGlobalSection
+petsc4py.PETSc.Section.getStorageSize petsc4py.PETSc.Section-class.html#getStorageSize
+petsc4py.PETSc.Section.view petsc4py.PETSc.Section-class.html#view
+petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
+petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
+petsc4py.PETSc.Section.setFieldConstraintDof petsc4py.PETSc.Section-class.html#setFieldConstraintDof
petsc4py.PETSc.Sys petsc4py.PETSc.Sys-class.html
+petsc4py.PETSc.Sys.splitOwnership petsc4py.PETSc.Sys-class.html#splitOwnership
+petsc4py.PETSc.Sys.popErrorHandler petsc4py.PETSc.Sys-class.html#popErrorHandler
+petsc4py.PETSc.Sys.__new__ petsc4py.PETSc.Sys-class.html#__new__
+petsc4py.PETSc.Sys.infoAllow petsc4py.PETSc.Sys-class.html#infoAllow
+petsc4py.PETSc.Sys.syncPrint petsc4py.PETSc.Sys-class.html#syncPrint
petsc4py.PETSc.Sys.pushErrorHandler petsc4py.PETSc.Sys-class.html#pushErrorHandler
petsc4py.PETSc.Sys.getDefaultComm petsc4py.PETSc.Sys-class.html#getDefaultComm
+petsc4py.PETSc.Sys.popSignalHandler petsc4py.PETSc.Sys-class.html#popSignalHandler
petsc4py.PETSc.Sys.sleep petsc4py.PETSc.Sys-class.html#sleep
+petsc4py.PETSc.Sys.isInitialized petsc4py.PETSc.Sys-class.html#isInitialized
petsc4py.PETSc.Sys.Print petsc4py.PETSc.Sys-class.html#Print
-petsc4py.PETSc.Sys.syncFlush petsc4py.PETSc.Sys-class.html#syncFlush
+petsc4py.PETSc.Sys.registerCitation petsc4py.PETSc.Sys-class.html#registerCitation
+petsc4py.PETSc.Sys.getVersionInfo petsc4py.PETSc.Sys-class.html#getVersionInfo
petsc4py.PETSc.Sys.getVersion petsc4py.PETSc.Sys-class.html#getVersion
-petsc4py.PETSc.Sys.__new__ petsc4py.PETSc.Sys-class.html#__new__
+petsc4py.PETSc.Sys.syncFlush petsc4py.PETSc.Sys-class.html#syncFlush
petsc4py.PETSc.Sys.isFinalized petsc4py.PETSc.Sys-class.html#isFinalized
-petsc4py.PETSc.Sys.splitOwnership petsc4py.PETSc.Sys-class.html#splitOwnership
-petsc4py.PETSc.Sys.infoAllow petsc4py.PETSc.Sys-class.html#infoAllow
-petsc4py.PETSc.Sys.isInitialized petsc4py.PETSc.Sys-class.html#isInitialized
-petsc4py.PETSc.Sys.getVersionInfo petsc4py.PETSc.Sys-class.html#getVersionInfo
petsc4py.PETSc.Sys.setDefaultComm petsc4py.PETSc.Sys-class.html#setDefaultComm
-petsc4py.PETSc.Sys.popErrorHandler petsc4py.PETSc.Sys-class.html#popErrorHandler
-petsc4py.PETSc.Sys.syncPrint petsc4py.PETSc.Sys-class.html#syncPrint
-petsc4py.PETSc.Sys.registerCitation petsc4py.PETSc.Sys-class.html#registerCitation
petsc4py.PETSc.TAO petsc4py.PETSc.TAO-class.html
petsc4py.PETSc.TAO.getFunctionValue petsc4py.PETSc.TAO-class.html#getFunctionValue
petsc4py.PETSc.TAO.setMonitor petsc4py.PETSc.TAO-class.html#setMonitor
@@ -2562,6 +2689,7 @@ petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.TAO.its petsc4py.PETSc.TAO-class.html#its
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.TAO.ksp petsc4py.PETSc.TAO-class.html#ksp
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.TAO.Reason petsc4py.PETSc.TAO.Reason-class.html
@@ -2704,6 +2832,7 @@ petsc4py.PETSc.TAO.Type.POUNDERS petsc4py.PETSc.TAO.Type-class.html#POUNDERS
petsc4py.PETSc.TAO.Type.NM petsc4py.PETSc.TAO.Type-class.html#NM
petsc4py.PETSc.TS petsc4py.PETSc.TS-class.html
petsc4py.PETSc.TS.getConvergedReason petsc4py.PETSc.TS-class.html#getConvergedReason
+petsc4py.PETSc.TS.setCostIntegrand petsc4py.PETSc.TS-class.html#setCostIntegrand
petsc4py.PETSc.TS.setDM petsc4py.PETSc.TS-class.html#setDM
petsc4py.PETSc.TS.computeRHSJacobian petsc4py.PETSc.TS-class.html#computeRHSJacobian
petsc4py.PETSc.TS.ExactFinalTime petsc4py.PETSc.TS.ExactFinalTime-class.html
@@ -2716,13 +2845,14 @@ petsc4py.PETSc.TS.setTheta petsc4py.PETSc.TS-class.html#setTheta
petsc4py.PETSc.TS.getTimeStep petsc4py.PETSc.TS-class.html#getTimeStep
petsc4py.PETSc.TS.setExactFinalTime petsc4py.PETSc.TS-class.html#setExactFinalTime
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
+petsc4py.PETSc.TS.adjointComputeRHSJacobian petsc4py.PETSc.TS-class.html#adjointComputeRHSJacobian
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.TS.monitor petsc4py.PETSc.TS-class.html#monitor
petsc4py.PETSc.TS.getStepRejections petsc4py.PETSc.TS-class.html#getStepRejections
petsc4py.PETSc.TS.setMonitor petsc4py.PETSc.TS-class.html#setMonitor
petsc4py.PETSc.TS.rtol petsc4py.PETSc.TS-class.html#rtol
-petsc4py.PETSc.TS.destroy petsc4py.PETSc.TS-class.html#destroy
petsc4py.PETSc.TS.computeRHSFunctionLinear petsc4py.PETSc.TS-class.html#computeRHSFunctionLinear
petsc4py.PETSc.TS.computeRHSJacobianConstant petsc4py.PETSc.TS-class.html#computeRHSJacobianConstant
petsc4py.PETSc.TS.vec_sol petsc4py.PETSc.TS-class.html#vec_sol
@@ -2731,23 +2861,29 @@ petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
petsc4py.PETSc.TS.setOptionsPrefix petsc4py.PETSc.TS-class.html#setOptionsPrefix
petsc4py.PETSc.Object.__deepcopy__ petsc4py.PETSc.Object-class.html#__deepcopy__
petsc4py.PETSc.TS.ProblemType petsc4py.PETSc.TS.ProblemType-class.html
+petsc4py.PETSc.TS.setPostStep petsc4py.PETSc.TS-class.html#setPostStep
petsc4py.PETSc.TS.setFromOptions petsc4py.PETSc.TS-class.html#setFromOptions
-petsc4py.PETSc.TS.setInitialTimeStep petsc4py.PETSc.TS-class.html#setInitialTimeStep
+petsc4py.PETSc.TS.destroy petsc4py.PETSc.TS-class.html#destroy
petsc4py.PETSc.TS.setMaxSNESFailures petsc4py.PETSc.TS-class.html#setMaxSNESFailures
petsc4py.PETSc.TS.getRHSFunction petsc4py.PETSc.TS-class.html#getRHSFunction
petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
+petsc4py.PETSc.TS.setSolution petsc4py.PETSc.TS-class.html#setSolution
+petsc4py.PETSc.TS.setSaveTrajectory petsc4py.PETSc.TS-class.html#setSaveTrajectory
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.TS.setAppCtx petsc4py.PETSc.TS-class.html#setAppCtx
petsc4py.PETSc.TS.step_number petsc4py.PETSc.TS-class.html#step_number
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
+petsc4py.PETSc.TS.adjointSolve petsc4py.PETSc.TS-class.html#adjointSolve
petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
petsc4py.PETSc.TS.setStepNumber petsc4py.PETSc.TS-class.html#setStepNumber
-petsc4py.PETSc.TS.setDuration petsc4py.PETSc.TS-class.html#setDuration
+petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.TS.ExactFinalTimeOption petsc4py.PETSc.TS.ExactFinalTime-class.html
+petsc4py.PETSc.TS.adjointSetUp petsc4py.PETSc.TS-class.html#adjointSetUp
petsc4py.PETSc.TS.setPythonContext petsc4py.PETSc.TS-class.html#setPythonContext
+petsc4py.PETSc.TS.computeI2Function petsc4py.PETSc.TS-class.html#computeI2Function
petsc4py.PETSc.TS.ConvergedReason petsc4py.PETSc.TS.ConvergedReason-class.html
petsc4py.PETSc.TS.getKSPIterations petsc4py.PETSc.TS-class.html#getKSPIterations
-petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
+petsc4py.PETSc.TS.getSNESFailures petsc4py.PETSc.TS-class.html#getSNESFailures
petsc4py.PETSc.TS.computeIFunction petsc4py.PETSc.TS-class.html#computeIFunction
petsc4py.PETSc.TS.time_step petsc4py.PETSc.TS-class.html#time_step
petsc4py.PETSc.TS.Type petsc4py.PETSc.TS.Type-class.html
@@ -2756,47 +2892,55 @@ petsc4py.PETSc.TS.setErrorIfStepFails petsc4py.PETSc.TS-class.html#setErrorIfSte
petsc4py.PETSc.TS.getRHSJacobian petsc4py.PETSc.TS-class.html#getRHSJacobian
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
+petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.TS.setMaxSteps petsc4py.PETSc.TS-class.html#setMaxSteps
+petsc4py.PETSc.TS.setI2Jacobian petsc4py.PETSc.TS-class.html#setI2Jacobian
petsc4py.PETSc.TS.getIFunction petsc4py.PETSc.TS-class.html#getIFunction
petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
petsc4py.PETSc.TS.getMaxTime petsc4py.PETSc.TS-class.html#getMaxTime
petsc4py.PETSc.TS.getPostStep petsc4py.PETSc.TS-class.html#getPostStep
petsc4py.PETSc.TS.setUp petsc4py.PETSc.TS-class.html#setUp
+petsc4py.PETSc.TS.view petsc4py.PETSc.TS-class.html#view
petsc4py.PETSc.TS.interpolate petsc4py.PETSc.TS-class.html#interpolate
petsc4py.PETSc.TS.getDM petsc4py.PETSc.TS-class.html#getDM
petsc4py.PETSc.TS.reason petsc4py.PETSc.TS-class.html#reason
petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
-petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
-petsc4py.PETSc.TS.setSolution petsc4py.PETSc.TS-class.html#setSolution
-petsc4py.PETSc.TS.setMaxTime petsc4py.PETSc.TS-class.html#setMaxTime
+petsc4py.PETSc.TS.setI2Function petsc4py.PETSc.TS-class.html#setI2Function
+petsc4py.PETSc.TS.createPython petsc4py.PETSc.TS-class.html#createPython
+petsc4py.PETSc.TS.setThetaEndpoint petsc4py.PETSc.TS-class.html#setThetaEndpoint
petsc4py.PETSc.TS.setAlphaParams petsc4py.PETSc.TS-class.html#setAlphaParams
petsc4py.PETSc.TS.ksp petsc4py.PETSc.TS-class.html#ksp
-petsc4py.PETSc.TS.createPython petsc4py.PETSc.TS-class.html#createPython
-petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
-petsc4py.PETSc.TS.getStepNumber petsc4py.PETSc.TS-class.html#getStepNumber
+petsc4py.PETSc.TS.getRKType petsc4py.PETSc.TS-class.html#getRKType
+petsc4py.PETSc.TS.rollBack petsc4py.PETSc.TS-class.html#rollBack
petsc4py.PETSc.TS.appctx petsc4py.PETSc.TS-class.html#appctx
+petsc4py.PETSc.TS.setRKType petsc4py.PETSc.TS-class.html#setRKType
petsc4py.PETSc.TS.step petsc4py.PETSc.TS-class.html#step
-petsc4py.PETSc.TS.setThetaEndpoint petsc4py.PETSc.TS-class.html#setThetaEndpoint
petsc4py.PETSc.TS.computeIJacobian petsc4py.PETSc.TS-class.html#computeIJacobian
petsc4py.PETSc.TS.setMaxStepRejections petsc4py.PETSc.TS-class.html#setMaxStepRejections
-petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
-petsc4py.PETSc.TS.view petsc4py.PETSc.TS-class.html#view
+petsc4py.PETSc.TS.getSolveTime petsc4py.PETSc.TS-class.html#getSolveTime
+petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.TS.adjointSetSteps petsc4py.PETSc.TS-class.html#adjointSetSteps
petsc4py.PETSc.TS.load petsc4py.PETSc.TS-class.html#load
petsc4py.PETSc.TS.setTolerances petsc4py.PETSc.TS-class.html#setTolerances
petsc4py.PETSc.TS.getPythonContext petsc4py.PETSc.TS-class.html#getPythonContext
+petsc4py.PETSc.TS.setCostGradients petsc4py.PETSc.TS-class.html#setCostGradients
petsc4py.PETSc.TS.getIJacobian petsc4py.PETSc.TS-class.html#getIJacobian
-petsc4py.PETSc.TS.getDuration petsc4py.PETSc.TS-class.html#getDuration
+petsc4py.PETSc.TS.setMaxTime petsc4py.PETSc.TS-class.html#setMaxTime
+petsc4py.PETSc.TS.computeI2Jacobian petsc4py.PETSc.TS-class.html#computeI2Jacobian
petsc4py.PETSc.TS.setRHSFunction petsc4py.PETSc.TS-class.html#setRHSFunction
petsc4py.PETSc.TS.problem_type petsc4py.PETSc.TS-class.html#problem_type
petsc4py.PETSc.TS.setType petsc4py.PETSc.TS-class.html#setType
petsc4py.PETSc.TS.getSNES petsc4py.PETSc.TS-class.html#getSNES
+petsc4py.PETSc.TS.getCostIntegral petsc4py.PETSc.TS-class.html#getCostIntegral
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.TS.create petsc4py.PETSc.TS-class.html#create
petsc4py.PETSc.TS.getAlphaParams petsc4py.PETSc.TS-class.html#getAlphaParams
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
+petsc4py.PETSc.TS.getSolution2 petsc4py.PETSc.TS-class.html#getSolution2
petsc4py.PETSc.TS.snes petsc4py.PETSc.TS-class.html#snes
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
petsc4py.PETSc.TS.getProblemType petsc4py.PETSc.TS-class.html#getProblemType
+petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
@@ -2804,20 +2948,20 @@ petsc4py.PETSc.TS.getType petsc4py.PETSc.TS-class.html#getType
petsc4py.PETSc.TS.getMonitor petsc4py.PETSc.TS-class.html#getMonitor
petsc4py.PETSc.TS.getAppCtx petsc4py.PETSc.TS-class.html#getAppCtx
petsc4py.PETSc.TS.atol petsc4py.PETSc.TS-class.html#atol
-petsc4py.PETSc.TS.rollBack petsc4py.PETSc.TS-class.html#rollBack
+petsc4py.PETSc.TS.getStepNumber petsc4py.PETSc.TS-class.html#getStepNumber
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.TS.reset petsc4py.PETSc.TS-class.html#reset
-petsc4py.PETSc.TS.setPostStep petsc4py.PETSc.TS-class.html#setPostStep
-petsc4py.PETSc.TS.getTotalSteps petsc4py.PETSc.TS-class.html#getTotalSteps
+petsc4py.PETSc.TS.RKType petsc4py.PETSc.TS.RKType-class.html
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
petsc4py.PETSc.TS.max_steps petsc4py.PETSc.TS-class.html#max_steps
-petsc4py.PETSc.TS.getSNESFailures petsc4py.PETSc.TS-class.html#getSNESFailures
-petsc4py.PETSc.TS.getSolveTime petsc4py.PETSc.TS-class.html#getSolveTime
-petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
+petsc4py.PETSc.TS.getCostGradients petsc4py.PETSc.TS-class.html#getCostGradients
+petsc4py.PETSc.TS.adjointSetRHSJacobian petsc4py.PETSc.TS-class.html#adjointSetRHSJacobian
+petsc4py.PETSc.TS.getI2Function petsc4py.PETSc.TS-class.html#getI2Function
petsc4py.PETSc.TS.setIJacobian petsc4py.PETSc.TS-class.html#setIJacobian
petsc4py.PETSc.TS.setTimeStep petsc4py.PETSc.TS-class.html#setTimeStep
petsc4py.PETSc.TS.getThetaEndpoint petsc4py.PETSc.TS-class.html#getThetaEndpoint
+petsc4py.PETSc.TS.adjointStep petsc4py.PETSc.TS-class.html#adjointStep
petsc4py.PETSc.TS.setConvergedReason petsc4py.PETSc.TS-class.html#setConvergedReason
petsc4py.PETSc.TS.getTheta petsc4py.PETSc.TS-class.html#getTheta
petsc4py.PETSc.TS.getSolution petsc4py.PETSc.TS-class.html#getSolution
@@ -2825,6 +2969,8 @@ petsc4py.PETSc.TS.diverged petsc4py.PETSc.TS-class.html#diverged
petsc4py.PETSc.TS.getOptionsPrefix petsc4py.PETSc.TS-class.html#getOptionsPrefix
petsc4py.PETSc.TS.__new__ petsc4py.PETSc.TS-class.html#__new__
petsc4py.PETSc.TS.getPreStep petsc4py.PETSc.TS-class.html#getPreStep
+petsc4py.PETSc.TS.setSolution2 petsc4py.PETSc.TS-class.html#setSolution2
+petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.TS.setIFunction petsc4py.PETSc.TS-class.html#setIFunction
petsc4py.PETSc.TS.converged petsc4py.PETSc.TS-class.html#converged
petsc4py.PETSc.TS.setRHSJacobian petsc4py.PETSc.TS-class.html#setRHSJacobian
@@ -2847,50 +2993,62 @@ petsc4py.PETSc.TS.getMaxSteps petsc4py.PETSc.TS-class.html#getMaxSteps
petsc4py.PETSc.TS.setPythonType petsc4py.PETSc.TS-class.html#setPythonType
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.TS.getI2Jacobian petsc4py.PETSc.TS-class.html#getI2Jacobian
petsc4py.PETSc.TS.solve petsc4py.PETSc.TS-class.html#solve
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc.TS.max_time petsc4py.PETSc.TS-class.html#max_time
petsc4py.PETSc.TS.time petsc4py.PETSc.TS-class.html#time
petsc4py.PETSc.TS.setPreStep petsc4py.PETSc.TS-class.html#setPreStep
petsc4py.PETSc.TS.ConvergedReason petsc4py.PETSc.TS.ConvergedReason-class.html
-petsc4py.PETSc.TS.ConvergedReason.DIVERGED_STEP_REJECTED petsc4py.PETSc.TS.ConvergedReason-class.html#DIVERGED_STEP_REJECTED
-petsc4py.PETSc.TS.ConvergedReason.CONVERGED_USER petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_USER
-petsc4py.PETSc.TS.ConvergedReason.CONVERGED_TIME petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_TIME
-petsc4py.PETSc.TS.ConvergedReason.CONVERGED_EVENT petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_EVENT
petsc4py.PETSc.TS.ConvergedReason.ITERATING petsc4py.PETSc.TS.ConvergedReason-class.html#ITERATING
petsc4py.PETSc.TS.ConvergedReason.CONVERGED_ITS petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_ITS
+petsc4py.PETSc.TS.ConvergedReason.__qualname__ petsc4py.PETSc.TS.ConvergedReason-class.html#__qualname__
+petsc4py.PETSc.TS.ConvergedReason.CONVERGED_USER petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_USER
+petsc4py.PETSc.TS.ConvergedReason.DIVERGED_STEP_REJECTED petsc4py.PETSc.TS.ConvergedReason-class.html#DIVERGED_STEP_REJECTED
petsc4py.PETSc.TS.ConvergedReason.CONVERGED_ITERATING petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_ITERATING
+petsc4py.PETSc.TS.ConvergedReason.CONVERGED_TIME petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_TIME
+petsc4py.PETSc.TS.ConvergedReason.CONVERGED_EVENT petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_EVENT
petsc4py.PETSc.TS.ConvergedReason.DIVERGED_NONLINEAR_SOLVE petsc4py.PETSc.TS.ConvergedReason-class.html#DIVERGED_NONLINEAR_SOLVE
-petsc4py.PETSc.TS.ConvergedReason.__qualname__ petsc4py.PETSc.TS.ConvergedReason-class.html#__qualname__
petsc4py.PETSc.TS.EquationType petsc4py.PETSc.TS.EquationType-class.html
-petsc4py.PETSc.TS.EquationType.DAE_IMPLICIT_INDEX3 petsc4py.PETSc.TS.EquationType-class.html#DAE_IMPLICIT_INDEX3
-petsc4py.PETSc.TS.EquationType.DAE_IMPLICIT_INDEX1 petsc4py.PETSc.TS.EquationType-class.html#DAE_IMPLICIT_INDEX1
-petsc4py.PETSc.TS.EquationType.DAE_IMPLICIT_INDEX2 petsc4py.PETSc.TS.EquationType-class.html#DAE_IMPLICIT_INDEX2
-petsc4py.PETSc.TS.EquationType.DAE_SEMI_EXPLICIT_INDEXHI petsc4py.PETSc.TS.EquationType-class.html#DAE_SEMI_EXPLICIT_INDEXHI
-petsc4py.PETSc.TS.EquationType.__qualname__ petsc4py.PETSc.TS.EquationType-class.html#__qualname__
-petsc4py.PETSc.TS.EquationType.ODE_EXPLICIT petsc4py.PETSc.TS.EquationType-class.html#ODE_EXPLICIT
-petsc4py.PETSc.TS.EquationType.EXPLICIT petsc4py.PETSc.TS.EquationType-class.html#EXPLICIT
-petsc4py.PETSc.TS.EquationType.DAE_SEMI_EXPLICIT_INDEX1 petsc4py.PETSc.TS.EquationType-class.html#DAE_SEMI_EXPLICIT_INDEX1
-petsc4py.PETSc.TS.EquationType.DAE_SEMI_EXPLICIT_INDEX3 petsc4py.PETSc.TS.EquationType-class.html#DAE_SEMI_EXPLICIT_INDEX3
+petsc4py.PETSc.TS.EquationType.ODE_IMPLICIT petsc4py.PETSc.TS.EquationType-class.html#ODE_IMPLICIT
petsc4py.PETSc.TS.EquationType.DAE_SEMI_EXPLICIT_INDEX2 petsc4py.PETSc.TS.EquationType-class.html#DAE_SEMI_EXPLICIT_INDEX2
petsc4py.PETSc.TS.EquationType.DAE_IMPLICIT_INDEXHI petsc4py.PETSc.TS.EquationType-class.html#DAE_IMPLICIT_INDEXHI
+petsc4py.PETSc.TS.EquationType.DAE_SEMI_EXPLICIT_INDEX3 petsc4py.PETSc.TS.EquationType-class.html#DAE_SEMI_EXPLICIT_INDEX3
+petsc4py.PETSc.TS.EquationType.ODE_EXPLICIT petsc4py.PETSc.TS.EquationType-class.html#ODE_EXPLICIT
+petsc4py.PETSc.TS.EquationType.EXPLICIT petsc4py.PETSc.TS.EquationType-class.html#EXPLICIT
petsc4py.PETSc.TS.EquationType.UNSPECIFIED petsc4py.PETSc.TS.EquationType-class.html#UNSPECIFIED
+petsc4py.PETSc.TS.EquationType.__qualname__ petsc4py.PETSc.TS.EquationType-class.html#__qualname__
+petsc4py.PETSc.TS.EquationType.DAE_SEMI_EXPLICIT_INDEXHI petsc4py.PETSc.TS.EquationType-class.html#DAE_SEMI_EXPLICIT_INDEXHI
+petsc4py.PETSc.TS.EquationType.DAE_SEMI_EXPLICIT_INDEX1 petsc4py.PETSc.TS.EquationType-class.html#DAE_SEMI_EXPLICIT_INDEX1
+petsc4py.PETSc.TS.EquationType.DAE_IMPLICIT_INDEX1 petsc4py.PETSc.TS.EquationType-class.html#DAE_IMPLICIT_INDEX1
+petsc4py.PETSc.TS.EquationType.DAE_IMPLICIT_INDEX2 petsc4py.PETSc.TS.EquationType-class.html#DAE_IMPLICIT_INDEX2
+petsc4py.PETSc.TS.EquationType.DAE_IMPLICIT_INDEX3 petsc4py.PETSc.TS.EquationType-class.html#DAE_IMPLICIT_INDEX3
petsc4py.PETSc.TS.EquationType.IMPLICIT petsc4py.PETSc.TS.EquationType-class.html#IMPLICIT
-petsc4py.PETSc.TS.EquationType.ODE_IMPLICIT petsc4py.PETSc.TS.EquationType-class.html#ODE_IMPLICIT
petsc4py.PETSc.TS.ExactFinalTime petsc4py.PETSc.TS.ExactFinalTime-class.html
petsc4py.PETSc.TS.ExactFinalTime.MATCHSTEP petsc4py.PETSc.TS.ExactFinalTime-class.html#MATCHSTEP
-petsc4py.PETSc.TS.ExactFinalTime.INTERPOLATE petsc4py.PETSc.TS.ExactFinalTime-class.html#INTERPOLATE
petsc4py.PETSc.TS.ExactFinalTime.__qualname__ petsc4py.PETSc.TS.ExactFinalTime-class.html#__qualname__
-petsc4py.PETSc.TS.ExactFinalTime.UNSPECIFIED petsc4py.PETSc.TS.ExactFinalTime-class.html#UNSPECIFIED
petsc4py.PETSc.TS.ExactFinalTime.STEPOVER petsc4py.PETSc.TS.ExactFinalTime-class.html#STEPOVER
+petsc4py.PETSc.TS.ExactFinalTime.INTERPOLATE petsc4py.PETSc.TS.ExactFinalTime-class.html#INTERPOLATE
+petsc4py.PETSc.TS.ExactFinalTime.UNSPECIFIED petsc4py.PETSc.TS.ExactFinalTime-class.html#UNSPECIFIED
petsc4py.PETSc.TS.ProblemType petsc4py.PETSc.TS.ProblemType-class.html
+petsc4py.PETSc.TS.ProblemType.__qualname__ petsc4py.PETSc.TS.ProblemType-class.html#__qualname__
petsc4py.PETSc.TS.ProblemType.NONLINEAR petsc4py.PETSc.TS.ProblemType-class.html#NONLINEAR
petsc4py.PETSc.TS.ProblemType.LINEAR petsc4py.PETSc.TS.ProblemType-class.html#LINEAR
-petsc4py.PETSc.TS.ProblemType.__qualname__ petsc4py.PETSc.TS.ProblemType-class.html#__qualname__
+petsc4py.PETSc.TS.RKType petsc4py.PETSc.TS.RKType-class.html
+petsc4py.PETSc.TS.RKType.RK4 petsc4py.PETSc.TS.RKType-class.html#RK4
+petsc4py.PETSc.TS.RKType.RK5F petsc4py.PETSc.TS.RKType-class.html#RK5F
+petsc4py.PETSc.TS.RKType.RK3 petsc4py.PETSc.TS.RKType-class.html#RK3
+petsc4py.PETSc.TS.RKType.RK3BS petsc4py.PETSc.TS.RKType-class.html#RK3BS
+petsc4py.PETSc.TS.RKType.RK2A petsc4py.PETSc.TS.RKType-class.html#RK2A
+petsc4py.PETSc.TS.RKType.__qualname__ petsc4py.PETSc.TS.RKType-class.html#__qualname__
+petsc4py.PETSc.TS.RKType.RK5DP petsc4py.PETSc.TS.RKType-class.html#RK5DP
+petsc4py.PETSc.TS.RKType.RK5BS petsc4py.PETSc.TS.RKType-class.html#RK5BS
+petsc4py.PETSc.TS.RKType.RK1FE petsc4py.PETSc.TS.RKType-class.html#RK1FE
petsc4py.PETSc.TS.Type petsc4py.PETSc.TS.Type-class.html
petsc4py.PETSc.TS.Type.BE petsc4py.PETSc.TS.Type-class.html#BE
petsc4py.PETSc.TS.Type.PYTHON petsc4py.PETSc.TS.Type-class.html#PYTHON
petsc4py.PETSc.TS.Type.MIMEX petsc4py.PETSc.TS.Type-class.html#MIMEX
+petsc4py.PETSc.TS.Type.GLLE petsc4py.PETSc.TS.Type-class.html#GLLE
petsc4py.PETSc.TS.Type.FE petsc4py.PETSc.TS.Type-class.html#FE
petsc4py.PETSc.TS.Type.EULER petsc4py.PETSc.TS.Type-class.html#EULER
petsc4py.PETSc.TS.Type.PSEUDO petsc4py.PETSc.TS.Type-class.html#PSEUDO
@@ -2906,12 +3064,12 @@ petsc4py.PETSc.TS.Type.SUNDIALS petsc4py.PETSc.TS.Type-class.html#SUNDIALS
petsc4py.PETSc.TS.Type.RUNGE_KUTTA petsc4py.PETSc.TS.Type-class.html#RUNGE_KUTTA
petsc4py.PETSc.TS.Type.EIMEX petsc4py.PETSc.TS.Type-class.html#EIMEX
petsc4py.PETSc.TS.Type.THETA petsc4py.PETSc.TS.Type-class.html#THETA
-petsc4py.PETSc.TS.Type.GL petsc4py.PETSc.TS.Type-class.html#GL
petsc4py.PETSc.TS.Type.SSP petsc4py.PETSc.TS.Type-class.html#SSP
petsc4py.PETSc.TS.Type.__qualname__ petsc4py.PETSc.TS.Type-class.html#__qualname__
petsc4py.PETSc.TS.Type.ALPHA petsc4py.PETSc.TS.Type-class.html#ALPHA
petsc4py.PETSc.TS.Type.ROSW petsc4py.PETSc.TS.Type-class.html#ROSW
petsc4py.PETSc.Vec petsc4py.PETSc.Vec-class.html
+petsc4py.PETSc.Vec.getLGMap petsc4py.PETSc.Vec-class.html#getLGMap
petsc4py.PETSc.Vec.mDotBegin petsc4py.PETSc.Vec-class.html#mDotBegin
petsc4py.PETSc.Vec.createShared petsc4py.PETSc.Vec-class.html#createShared
petsc4py.PETSc.Vec.getSize petsc4py.PETSc.Vec-class.html#getSize
@@ -2925,6 +3083,7 @@ petsc4py.PETSc.Vec.permute petsc4py.PETSc.Vec-class.html#permute
petsc4py.PETSc.Vec.ghostUpdateBegin petsc4py.PETSc.Vec-class.html#ghostUpdateBegin
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
petsc4py.PETSc.Vec.copy petsc4py.PETSc.Vec-class.html#copy
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Vec.pointwiseMaxAbs petsc4py.PETSc.Vec-class.html#pointwiseMaxAbs
petsc4py.PETSc.Vec.__enter__ petsc4py.PETSc.Vec-class.html#__enter__
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
@@ -3097,40 +3256,45 @@ petsc4py.PETSc.Vec.localForm petsc4py.PETSc.Vec-class.html#localForm
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Vec.dot petsc4py.PETSc.Vec-class.html#dot
petsc4py.PETSc.Vec.Option petsc4py.PETSc.Vec.Option-class.html
+petsc4py.PETSc.Vec.Option.__qualname__ petsc4py.PETSc.Vec.Option-class.html#__qualname__
petsc4py.PETSc.Vec.Option.IGNORE_NEGATIVE_INDICES petsc4py.PETSc.Vec.Option-class.html#IGNORE_NEGATIVE_INDICES
petsc4py.PETSc.Vec.Option.IGNORE_OFF_PROC_ENTRIES petsc4py.PETSc.Vec.Option-class.html#IGNORE_OFF_PROC_ENTRIES
-petsc4py.PETSc.Vec.Option.__qualname__ petsc4py.PETSc.Vec.Option-class.html#__qualname__
petsc4py.PETSc.Vec.Type petsc4py.PETSc.Vec.Type-class.html
-petsc4py.PETSc.Vec.Type.NEST petsc4py.PETSc.Vec.Type-class.html#NEST
-petsc4py.PETSc.Vec.Type.SEQ petsc4py.PETSc.Vec.Type-class.html#SEQ
-petsc4py.PETSc.Vec.Type.SEQCUSP petsc4py.PETSc.Vec.Type-class.html#SEQCUSP
-petsc4py.PETSc.Vec.Type.SEQVIENNACL petsc4py.PETSc.Vec.Type-class.html#SEQVIENNACL
petsc4py.PETSc.Vec.Type.CUSP petsc4py.PETSc.Vec.Type-class.html#CUSP
-petsc4py.PETSc.Vec.Type.STANDARD petsc4py.PETSc.Vec.Type-class.html#STANDARD
+petsc4py.PETSc.Vec.Type.SEQ petsc4py.PETSc.Vec.Type-class.html#SEQ
+petsc4py.PETSc.Vec.Type.NEST petsc4py.PETSc.Vec.Type-class.html#NEST
petsc4py.PETSc.Vec.Type.MPICUSP petsc4py.PETSc.Vec.Type-class.html#MPICUSP
-petsc4py.PETSc.Vec.Type.MPI petsc4py.PETSc.Vec.Type-class.html#MPI
+petsc4py.PETSc.Vec.Type.STANDARD petsc4py.PETSc.Vec.Type-class.html#STANDARD
petsc4py.PETSc.Vec.Type.__qualname__ petsc4py.PETSc.Vec.Type-class.html#__qualname__
petsc4py.PETSc.Vec.Type.MPIVIENNACL petsc4py.PETSc.Vec.Type-class.html#MPIVIENNACL
+petsc4py.PETSc.Vec.Type.SEQCUSP petsc4py.PETSc.Vec.Type-class.html#SEQCUSP
petsc4py.PETSc.Vec.Type.SHARED petsc4py.PETSc.Vec.Type-class.html#SHARED
+petsc4py.PETSc.Vec.Type.MPI petsc4py.PETSc.Vec.Type-class.html#MPI
petsc4py.PETSc.Vec.Type.VIENNACL petsc4py.PETSc.Vec.Type-class.html#VIENNACL
+petsc4py.PETSc.Vec.Type.SEQVIENNACL petsc4py.PETSc.Vec.Type-class.html#SEQVIENNACL
petsc4py.PETSc.Viewer petsc4py.PETSc.Viewer-class.html
petsc4py.PETSc.Viewer.getFileMode petsc4py.PETSc.Viewer-class.html#getFileMode
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
+petsc4py.PETSc.Viewer.printfASCII petsc4py.PETSc.Viewer-class.html#printfASCII
petsc4py.PETSc.Viewer.pushFormat petsc4py.PETSc.Viewer-class.html#pushFormat
petsc4py.PETSc.Object.__gt__ petsc4py.PETSc.Object-class.html#__gt__
petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
+petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
petsc4py.PETSc.Viewer.flush petsc4py.PETSc.Viewer-class.html#flush
+petsc4py.PETSc.Viewer.addASCIITab petsc4py.PETSc.Viewer-class.html#addASCIITab
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.Viewer.Type petsc4py.PETSc.Viewer.Type-class.html
petsc4py.PETSc.Viewer.setType petsc4py.PETSc.Viewer-class.html#setType
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
-petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Viewer.printfASCIISynchronized petsc4py.PETSc.Viewer-class.html#printfASCIISynchronized
petsc4py.PETSc.Viewer.createVTK petsc4py.PETSc.Viewer-class.html#createVTK
petsc4py.PETSc.Viewer.__new__ petsc4py.PETSc.Viewer-class.html#__new__
petsc4py.PETSc.Viewer.Format petsc4py.PETSc.Viewer.Format-class.html
-petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
+petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
+petsc4py.PETSc.Viewer.getASCIITab petsc4py.PETSc.Viewer-class.html#getASCIITab
petsc4py.PETSc.Viewer.create petsc4py.PETSc.Viewer-class.html#create
petsc4py.PETSc.Viewer.STDOUT petsc4py.PETSc.Viewer-class.html#STDOUT
petsc4py.PETSc.Object.setFromOptions petsc4py.PETSc.Object-class.html#setFromOptions
@@ -3138,31 +3302,36 @@ petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#increme
petsc4py.PETSc.Viewer.clearDraw petsc4py.PETSc.Viewer-class.html#clearDraw
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.Viewer.setFileMode petsc4py.PETSc.Viewer-class.html#setFileMode
+petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Viewer.__call__ petsc4py.PETSc.Viewer-class.html#__call__
petsc4py.PETSc.Viewer.destroy petsc4py.PETSc.Viewer-class.html#destroy
+petsc4py.PETSc.Viewer.STDERR petsc4py.PETSc.Viewer-class.html#STDERR
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
petsc4py.PETSc.Viewer.DRAW petsc4py.PETSc.Viewer-class.html#DRAW
petsc4py.PETSc.Object.getRefCount petsc4py.PETSc.Object-class.html#getRefCount
-petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
-petsc4py.PETSc.Object.incRef petsc4py.PETSc.Object-class.html#incRef
+petsc4py.PETSc.Viewer.popASCIISynchronized petsc4py.PETSc.Viewer-class.html#popASCIISynchronized
+petsc4py.PETSc.Viewer.useASCIITabs petsc4py.PETSc.Viewer-class.html#useASCIITabs
petsc4py.PETSc.Object.setOptionsPrefix petsc4py.PETSc.Object-class.html#setOptionsPrefix
petsc4py.PETSc.Object.__deepcopy__ petsc4py.PETSc.Object-class.html#__deepcopy__
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
petsc4py.PETSc.Viewer.getType petsc4py.PETSc.Viewer-class.html#getType
petsc4py.PETSc.Object.refcount petsc4py.PETSc.Object-class.html#refcount
petsc4py.PETSc.Viewer.createHDF5 petsc4py.PETSc.Viewer-class.html#createHDF5
+petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.Object.setName petsc4py.PETSc.Object-class.html#setName
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
-petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
+petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
petsc4py.PETSc.Viewer.setDrawInfo petsc4py.PETSc.Viewer-class.html#setDrawInfo
petsc4py.PETSc.Viewer.createMPIIO petsc4py.PETSc.Viewer-class.html#createMPIIO
petsc4py.PETSc.Viewer.createDraw petsc4py.PETSc.Viewer-class.html#createDraw
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Viewer.getFormat petsc4py.PETSc.Viewer-class.html#getFormat
petsc4py.PETSc.Viewer.getFileName petsc4py.PETSc.Viewer-class.html#getFileName
petsc4py.PETSc.Viewer.BINARY petsc4py.PETSc.Viewer-class.html#BINARY
+petsc4py.PETSc.Viewer.subtractASCIITab petsc4py.PETSc.Viewer-class.html#subtractASCIITab
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.Object.__nonzero__ petsc4py.PETSc.Object-class.html#__nonzero__
petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
@@ -3170,19 +3339,20 @@ petsc4py.PETSc.Viewer.createASCII petsc4py.PETSc.Viewer-class.html#createASCII
petsc4py.PETSc.Viewer.createBinary petsc4py.PETSc.Viewer-class.html#createBinary
petsc4py.PETSc.Object.setAttr petsc4py.PETSc.Object-class.html#setAttr
petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
-petsc4py.PETSc.Viewer.createNetCDF petsc4py.PETSc.Viewer-class.html#createNetCDF
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Viewer.setFileName petsc4py.PETSc.Viewer-class.html#setFileName
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
-petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
+petsc4py.PETSc.Viewer.pushASCIISynchronized petsc4py.PETSc.Viewer-class.html#pushASCIISynchronized
+petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
-petsc4py.PETSc.Viewer.STDERR petsc4py.PETSc.Viewer-class.html#STDERR
+petsc4py.PETSc.Viewer.pushASCIITab petsc4py.PETSc.Viewer-class.html#pushASCIITab
petsc4py.PETSc.Viewer.view petsc4py.PETSc.Viewer-class.html#view
+petsc4py.PETSc.Viewer.popASCIITab petsc4py.PETSc.Viewer-class.html#popASCIITab
petsc4py.PETSc.Viewer.popFormat petsc4py.PETSc.Viewer-class.html#popFormat
petsc4py.PETSc.Viewer.Size petsc4py.PETSc.Viewer.Size-class.html
petsc4py.PETSc.Viewer.ASCII petsc4py.PETSc.Viewer-class.html#ASCII
-petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
+petsc4py.PETSc.Viewer.setASCIITab petsc4py.PETSc.Viewer-class.html#setASCIITab
petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Viewer.Mode petsc4py.PETSc.Viewer.Mode-class.html
petsc4py.PETSc.Viewer.Format petsc4py.PETSc.Viewer.Format-class.html
@@ -3218,50 +3388,51 @@ petsc4py.PETSc.Viewer.Format.ASCII_DENSE petsc4py.PETSc.Viewer.Format-class.html
petsc4py.PETSc.Viewer.Format.DRAW_PORTS petsc4py.PETSc.Viewer.Format-class.html#DRAW_PORTS
petsc4py.PETSc.Viewer.Format.BINARY_MATLAB petsc4py.PETSc.Viewer.Format-class.html#BINARY_MATLAB
petsc4py.PETSc.Viewer.Mode petsc4py.PETSc.Viewer.Mode-class.html
-petsc4py.PETSc.Viewer.Mode.READ petsc4py.PETSc.Viewer.Mode-class.html#READ
-petsc4py.PETSc.Viewer.Mode.APPEND petsc4py.PETSc.Viewer.Mode-class.html#APPEND
-petsc4py.PETSc.Viewer.Mode.APPEND_UPDATE petsc4py.PETSc.Viewer.Mode-class.html#APPEND_UPDATE
petsc4py.PETSc.Viewer.Mode.A petsc4py.PETSc.Viewer.Mode-class.html#A
-petsc4py.PETSc.Viewer.Mode.UPDATE petsc4py.PETSc.Viewer.Mode-class.html#UPDATE
petsc4py.PETSc.Viewer.Mode.WRITE petsc4py.PETSc.Viewer.Mode-class.html#WRITE
-petsc4py.PETSc.Viewer.Mode.U petsc4py.PETSc.Viewer.Mode-class.html#U
-petsc4py.PETSc.Viewer.Mode.W petsc4py.PETSc.Viewer.Mode-class.html#W
+petsc4py.PETSc.Viewer.Mode.READ petsc4py.PETSc.Viewer.Mode-class.html#READ
+petsc4py.PETSc.Viewer.Mode.UPDATE petsc4py.PETSc.Viewer.Mode-class.html#UPDATE
petsc4py.PETSc.Viewer.Mode.__qualname__ petsc4py.PETSc.Viewer.Mode-class.html#__qualname__
+petsc4py.PETSc.Viewer.Mode.APPEND_UPDATE petsc4py.PETSc.Viewer.Mode-class.html#APPEND_UPDATE
petsc4py.PETSc.Viewer.Mode.R petsc4py.PETSc.Viewer.Mode-class.html#R
+petsc4py.PETSc.Viewer.Mode.U petsc4py.PETSc.Viewer.Mode-class.html#U
+petsc4py.PETSc.Viewer.Mode.W petsc4py.PETSc.Viewer.Mode-class.html#W
petsc4py.PETSc.Viewer.Mode.AU petsc4py.PETSc.Viewer.Mode-class.html#AU
petsc4py.PETSc.Viewer.Mode.UA petsc4py.PETSc.Viewer.Mode-class.html#UA
+petsc4py.PETSc.Viewer.Mode.APPEND petsc4py.PETSc.Viewer.Mode-class.html#APPEND
petsc4py.PETSc.Viewer.Size petsc4py.PETSc.Viewer.Size-class.html
petsc4py.PETSc.Viewer.Size.HALF_SIZE petsc4py.PETSc.Viewer.Size-class.html#HALF_SIZE
-petsc4py.PETSc.Viewer.Size.FULL_SIZE petsc4py.PETSc.Viewer.Size-class.html#FULL_SIZE
petsc4py.PETSc.Viewer.Size.FULL petsc4py.PETSc.Viewer.Size-class.html#FULL
petsc4py.PETSc.Viewer.Size.THIRD petsc4py.PETSc.Viewer.Size-class.html#THIRD
-petsc4py.PETSc.Viewer.Size.HALF petsc4py.PETSc.Viewer.Size-class.html#HALF
-petsc4py.PETSc.Viewer.Size.QUARTER petsc4py.PETSc.Viewer.Size-class.html#QUARTER
petsc4py.PETSc.Viewer.Size.QUARTER_SIZE petsc4py.PETSc.Viewer.Size-class.html#QUARTER_SIZE
petsc4py.PETSc.Viewer.Size.__qualname__ petsc4py.PETSc.Viewer.Size-class.html#__qualname__
petsc4py.PETSc.Viewer.Size.THIRD_SIZE petsc4py.PETSc.Viewer.Size-class.html#THIRD_SIZE
+petsc4py.PETSc.Viewer.Size.HALF petsc4py.PETSc.Viewer.Size-class.html#HALF
+petsc4py.PETSc.Viewer.Size.QUARTER petsc4py.PETSc.Viewer.Size-class.html#QUARTER
+petsc4py.PETSc.Viewer.Size.FULL_SIZE petsc4py.PETSc.Viewer.Size-class.html#FULL_SIZE
petsc4py.PETSc.Viewer.Type petsc4py.PETSc.Viewer.Type-class.html
-petsc4py.PETSc.Viewer.Type.HDF5 petsc4py.PETSc.Viewer.Type-class.html#HDF5
-petsc4py.PETSc.Viewer.Type.NETCDF petsc4py.PETSc.Viewer.Type-class.html#NETCDF
-petsc4py.PETSc.Viewer.Type.SAWS petsc4py.PETSc.Viewer.Type-class.html#SAWS
-petsc4py.PETSc.Viewer.Type.MATLAB petsc4py.PETSc.Viewer.Type-class.html#MATLAB
+petsc4py.PETSc.Viewer.Type.BINARY petsc4py.PETSc.Viewer.Type-class.html#BINARY
petsc4py.PETSc.Viewer.Type.DRAW petsc4py.PETSc.Viewer.Type-class.html#DRAW
-petsc4py.PETSc.Viewer.Type.STRING petsc4py.PETSc.Viewer.Type-class.html#STRING
+petsc4py.PETSc.Viewer.Type.SOCKET petsc4py.PETSc.Viewer.Type-class.html#SOCKET
+petsc4py.PETSc.Viewer.Type.HDF5 petsc4py.PETSc.Viewer.Type-class.html#HDF5
petsc4py.PETSc.Viewer.Type.VTK petsc4py.PETSc.Viewer.Type-class.html#VTK
petsc4py.PETSc.Viewer.Type.MATHEMATICA petsc4py.PETSc.Viewer.Type-class.html#MATHEMATICA
-petsc4py.PETSc.Viewer.Type.VU petsc4py.PETSc.Viewer.Type-class.html#VU
-petsc4py.PETSc.Viewer.Type.BINARY petsc4py.PETSc.Viewer.Type-class.html#BINARY
-petsc4py.PETSc.Viewer.Type.SOCKET petsc4py.PETSc.Viewer.Type-class.html#SOCKET
petsc4py.PETSc.Viewer.Type.__qualname__ petsc4py.PETSc.Viewer.Type-class.html#__qualname__
+petsc4py.PETSc.Viewer.Type.VU petsc4py.PETSc.Viewer.Type-class.html#VU
+petsc4py.PETSc.Viewer.Type.MATLAB petsc4py.PETSc.Viewer.Type-class.html#MATLAB
petsc4py.PETSc.Viewer.Type.ASCII petsc4py.PETSc.Viewer.Type-class.html#ASCII
+petsc4py.PETSc.Viewer.Type.SAWS petsc4py.PETSc.Viewer.Type-class.html#SAWS
+petsc4py.PETSc.Viewer.Type.STRING petsc4py.PETSc.Viewer.Type-class.html#STRING
petsc4py.PETSc.ViewerHDF5 petsc4py.PETSc.ViewerHDF5-class.html
+petsc4py.PETSc.Viewer.printfASCII petsc4py.PETSc.Viewer-class.html#printfASCII
petsc4py.PETSc.Object.getAttr petsc4py.PETSc.Object-class.html#getAttr
petsc4py.PETSc.Object.query petsc4py.PETSc.Object-class.html#query
petsc4py.PETSc.Object.__lt__ petsc4py.PETSc.Object-class.html#__lt__
petsc4py.PETSc.ViewerHDF5.getGroup petsc4py.PETSc.ViewerHDF5-class.html#getGroup
petsc4py.PETSc.Object.getTabLevel petsc4py.PETSc.Object-class.html#getTabLevel
-petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
+petsc4py.PETSc.Viewer.printfASCIISynchronized petsc4py.PETSc.Viewer-class.html#printfASCIISynchronized
petsc4py.PETSc.Viewer.createVTK petsc4py.PETSc.Viewer-class.html#createVTK
+petsc4py.PETSc.Viewer.popASCIITab petsc4py.PETSc.Viewer-class.html#popASCIITab
petsc4py.PETSc.Object.fortran petsc4py.PETSc.Object-class.html#fortran
petsc4py.PETSc.Viewer.__call__ petsc4py.PETSc.Viewer-class.html#__call__
petsc4py.PETSc.Object.handle petsc4py.PETSc.Object-class.html#handle
@@ -3276,28 +3447,33 @@ petsc4py.PETSc.Object.name petsc4py.PETSc.Object-class.html#name
petsc4py.PETSc.Viewer.createBinary petsc4py.PETSc.Viewer-class.html#createBinary
petsc4py.PETSc.Object.getClassId petsc4py.PETSc.Object-class.html#getClassId
petsc4py.PETSc.Object.prefix petsc4py.PETSc.Object-class.html#prefix
+petsc4py.PETSc.Viewer.pushASCIITab petsc4py.PETSc.Viewer-class.html#pushASCIITab
petsc4py.PETSc.Viewer.popFormat petsc4py.PETSc.Viewer-class.html#popFormat
petsc4py.PETSc.Object.__copy__ petsc4py.PETSc.Object-class.html#__copy__
petsc4py.PETSc.Viewer.ASCII petsc4py.PETSc.Viewer-class.html#ASCII
petsc4py.PETSc.Viewer.view petsc4py.PETSc.Viewer-class.html#view
petsc4py.PETSc.Object.decRef petsc4py.PETSc.Object-class.html#decRef
-petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
+petsc4py.PETSc.ViewerHDF5.popGroup petsc4py.PETSc.ViewerHDF5-class.html#popGroup
petsc4py.PETSc.Viewer.flush petsc4py.PETSc.Viewer-class.html#flush
petsc4py.PETSc.Viewer.Type petsc4py.PETSc.Viewer.Type-class.html
petsc4py.PETSc.Object.getName petsc4py.PETSc.Object-class.html#getName
petsc4py.PETSc.Object.incrementTabLevel petsc4py.PETSc.Object-class.html#incrementTabLevel
petsc4py.PETSc.Object.__ne__ petsc4py.PETSc.Object-class.html#__ne__
+petsc4py.PETSc.Viewer.popASCIISynchronized petsc4py.PETSc.Viewer-class.html#popASCIISynchronized
petsc4py.PETSc.Viewer.createHDF5 petsc4py.PETSc.Viewer-class.html#createHDF5
petsc4py.PETSc.Object.getOptionsPrefix petsc4py.PETSc.Object-class.html#getOptionsPrefix
-petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
+petsc4py.PETSc.Object.compose petsc4py.PETSc.Object-class.html#compose
petsc4py.PETSc.Object.comm petsc4py.PETSc.Object-class.html#comm
+petsc4py.PETSc.Object.viewFromOptions petsc4py.PETSc.Object-class.html#viewFromOptions
petsc4py.PETSc.Viewer.getFormat petsc4py.PETSc.Viewer-class.html#getFormat
-petsc4py.PETSc.Viewer.createNetCDF petsc4py.PETSc.Viewer-class.html#createNetCDF
petsc4py.PETSc.ViewerHDF5.incrementTimestep petsc4py.PETSc.ViewerHDF5-class.html#incrementTimestep
+petsc4py.PETSc.Object.getDict petsc4py.PETSc.Object-class.html#getDict
petsc4py.PETSc.Viewer.STDERR petsc4py.PETSc.Viewer-class.html#STDERR
+petsc4py.PETSc.Viewer.setASCIITab petsc4py.PETSc.Viewer-class.html#setASCIITab
petsc4py.PETSc.Object.classid petsc4py.PETSc.Object-class.html#classid
petsc4py.PETSc.Viewer.pushFormat petsc4py.PETSc.Viewer-class.html#pushFormat
petsc4py.PETSc.Viewer.setType petsc4py.PETSc.Viewer-class.html#setType
+petsc4py.PETSc.Viewer.getASCIITab petsc4py.PETSc.Viewer-class.html#getASCIITab
petsc4py.PETSc.ViewerHDF5.create petsc4py.PETSc.ViewerHDF5-class.html#create
petsc4py.PETSc.Viewer.clearDraw petsc4py.PETSc.Viewer-class.html#clearDraw
petsc4py.PETSc.Object.type petsc4py.PETSc.Object-class.html#type
@@ -3311,6 +3487,7 @@ petsc4py.PETSc.Viewer.setDrawInfo petsc4py.PETSc.Viewer-class.html#setDrawInfo
petsc4py.PETSc.Object.__eq__ petsc4py.PETSc.Object-class.html#__eq__
petsc4py.PETSc.Viewer.getFileName petsc4py.PETSc.Viewer-class.html#getFileName
petsc4py.PETSc.Viewer.createASCII petsc4py.PETSc.Viewer-class.html#createASCII
+petsc4py.PETSc.Viewer.pushASCIISynchronized petsc4py.PETSc.Viewer-class.html#pushASCIISynchronized
petsc4py.PETSc.Object.__le__ petsc4py.PETSc.Object-class.html#__le__
petsc4py.PETSc.ViewerHDF5.getTimestep petsc4py.PETSc.ViewerHDF5-class.html#getTimestep
petsc4py.PETSc.Object.getClassName petsc4py.PETSc.Object-class.html#getClassName
@@ -3318,41 +3495,44 @@ petsc4py.PETSc.Object.__ge__ petsc4py.PETSc.Object-class.html#__ge__
petsc4py.PETSc.Viewer.Size petsc4py.PETSc.Viewer.Size-class.html
petsc4py.PETSc.Viewer.getFileMode petsc4py.PETSc.Viewer-class.html#getFileMode
petsc4py.PETSc.Viewer.STDOUT petsc4py.PETSc.Viewer-class.html#STDOUT
+petsc4py.PETSc.Viewer.addASCIITab petsc4py.PETSc.Viewer-class.html#addASCIITab
petsc4py.PETSc.ViewerHDF5.__new__ petsc4py.PETSc.ViewerHDF5-class.html#__new__
petsc4py.PETSc.Viewer.Format petsc4py.PETSc.Viewer.Format-class.html
petsc4py.PETSc.Viewer.setFileMode petsc4py.PETSc.Viewer-class.html#setFileMode
petsc4py.PETSc.Viewer.destroy petsc4py.PETSc.Viewer-class.html#destroy
-petsc4py.PETSc.ViewerHDF5.popGroup petsc4py.PETSc.ViewerHDF5-class.html#popGroup
+petsc4py.PETSc.Object.stateIncrease petsc4py.PETSc.Object-class.html#stateIncrease
petsc4py.PETSc.ViewerHDF5.pushGroup petsc4py.PETSc.ViewerHDF5-class.html#pushGroup
+petsc4py.PETSc.Viewer.useASCIITabs petsc4py.PETSc.Viewer-class.html#useASCIITabs
petsc4py.PETSc.Object.setAttr petsc4py.PETSc.Object-class.html#setAttr
petsc4py.PETSc.Viewer.Mode petsc4py.PETSc.Viewer.Mode-class.html
petsc4py.PETSc.Viewer.createMPIIO petsc4py.PETSc.Viewer-class.html#createMPIIO
+petsc4py.PETSc.Viewer.subtractASCIITab petsc4py.PETSc.Viewer-class.html#subtractASCIITab
petsc4py.PETSc.ViewerHDF5.setTimestep petsc4py.PETSc.ViewerHDF5-class.html#setTimestep
petsc4py.PETSc.Object.getComm petsc4py.PETSc.Object-class.html#getComm
petsc4py.PETSc.Viewer.setFileName petsc4py.PETSc.Viewer-class.html#setFileName
petsc4py.PETSc.Object.setTabLevel petsc4py.PETSc.Object-class.html#setTabLevel
petsc4py.PETSc.Object.klass petsc4py.PETSc.Object-class.html#klass
petsc4py.PETSc._DMComposite_access petsc4py.PETSc._DMComposite_access-class.html
+petsc4py.PETSc._DMComposite_access.__enter__ petsc4py.PETSc._DMComposite_access-class.html#__enter__
petsc4py.PETSc._DMComposite_access.__exit__ petsc4py.PETSc._DMComposite_access-class.html#__exit__
petsc4py.PETSc._DMComposite_access.__new__ petsc4py.PETSc._DMComposite_access-class.html#__new__
-petsc4py.PETSc._DMComposite_access.__enter__ petsc4py.PETSc._DMComposite_access-class.html#__enter__
petsc4py.PETSc._DMDA_Vec_array petsc4py.PETSc._DMDA_Vec_array-class.html
-petsc4py.PETSc._DMDA_Vec_array.shape petsc4py.PETSc._DMDA_Vec_array-class.html#shape
-petsc4py.PETSc._DMDA_Vec_array.array petsc4py.PETSc._DMDA_Vec_array-class.html#array
-petsc4py.PETSc._DMDA_Vec_array.__new__ petsc4py.PETSc._DMDA_Vec_array-class.html#__new__
-petsc4py.PETSc._DMDA_Vec_array.__enter__ petsc4py.PETSc._DMDA_Vec_array-class.html#__enter__
+petsc4py.PETSc._DMDA_Vec_array.__delitem__ petsc4py.PETSc._DMDA_Vec_array-class.html#__delitem__
petsc4py.PETSc._DMDA_Vec_array.__exit__ petsc4py.PETSc._DMDA_Vec_array-class.html#__exit__
+petsc4py.PETSc._DMDA_Vec_array.__new__ petsc4py.PETSc._DMDA_Vec_array-class.html#__new__
petsc4py.PETSc._DMDA_Vec_array.__getitem__ petsc4py.PETSc._DMDA_Vec_array-class.html#__getitem__
-petsc4py.PETSc._DMDA_Vec_array.strides petsc4py.PETSc._DMDA_Vec_array-class.html#strides
-petsc4py.PETSc._DMDA_Vec_array.__setitem__ petsc4py.PETSc._DMDA_Vec_array-class.html#__setitem__
-petsc4py.PETSc._DMDA_Vec_array.__delitem__ petsc4py.PETSc._DMDA_Vec_array-class.html#__delitem__
petsc4py.PETSc._DMDA_Vec_array.sizes petsc4py.PETSc._DMDA_Vec_array-class.html#sizes
petsc4py.PETSc._DMDA_Vec_array.starts petsc4py.PETSc._DMDA_Vec_array-class.html#starts
+petsc4py.PETSc._DMDA_Vec_array.__enter__ petsc4py.PETSc._DMDA_Vec_array-class.html#__enter__
+petsc4py.PETSc._DMDA_Vec_array.__setitem__ petsc4py.PETSc._DMDA_Vec_array-class.html#__setitem__
+petsc4py.PETSc._DMDA_Vec_array.strides petsc4py.PETSc._DMDA_Vec_array-class.html#strides
+petsc4py.PETSc._DMDA_Vec_array.shape petsc4py.PETSc._DMDA_Vec_array-class.html#shape
+petsc4py.PETSc._DMDA_Vec_array.array petsc4py.PETSc._DMDA_Vec_array-class.html#array
petsc4py.PETSc._IS_buffer petsc4py.PETSc._IS_buffer-class.html
+petsc4py.PETSc._IS_buffer.__array_interface__ petsc4py.PETSc._IS_buffer-class.html#__array_interface__
+petsc4py.PETSc._IS_buffer.__enter__ petsc4py.PETSc._IS_buffer-class.html#__enter__
petsc4py.PETSc._IS_buffer.__exit__ petsc4py.PETSc._IS_buffer-class.html#__exit__
petsc4py.PETSc._IS_buffer.__new__ petsc4py.PETSc._IS_buffer-class.html#__new__
-petsc4py.PETSc._IS_buffer.__enter__ petsc4py.PETSc._IS_buffer-class.html#__enter__
-petsc4py.PETSc._IS_buffer.__array_interface__ petsc4py.PETSc._IS_buffer-class.html#__array_interface__
petsc4py.PETSc._Mat_Stencil petsc4py.PETSc._Mat_Stencil-class.html
petsc4py.PETSc._Mat_Stencil.index petsc4py.PETSc._Mat_Stencil-class.html#index
petsc4py.PETSc._Mat_Stencil.c petsc4py.PETSc._Mat_Stencil-class.html#c
@@ -3362,12 +3542,12 @@ petsc4py.PETSc._Mat_Stencil.k petsc4py.PETSc._Mat_Stencil-class.html#k
petsc4py.PETSc._Mat_Stencil.j petsc4py.PETSc._Mat_Stencil-class.html#j
petsc4py.PETSc._Mat_Stencil.field petsc4py.PETSc._Mat_Stencil-class.html#field
petsc4py.PETSc._Vec_LocalForm petsc4py.PETSc._Vec_LocalForm-class.html
+petsc4py.PETSc._Vec_LocalForm.__enter__ petsc4py.PETSc._Vec_LocalForm-class.html#__enter__
petsc4py.PETSc._Vec_LocalForm.__exit__ petsc4py.PETSc._Vec_LocalForm-class.html#__exit__
petsc4py.PETSc._Vec_LocalForm.__new__ petsc4py.PETSc._Vec_LocalForm-class.html#__new__
-petsc4py.PETSc._Vec_LocalForm.__enter__ petsc4py.PETSc._Vec_LocalForm-class.html#__enter__
petsc4py.PETSc._Vec_LocalForm.__init__ petsc4py.PETSc._Vec_LocalForm-class.html#__init__
petsc4py.PETSc._Vec_buffer petsc4py.PETSc._Vec_buffer-class.html
+petsc4py.PETSc._Vec_buffer.__array_interface__ petsc4py.PETSc._Vec_buffer-class.html#__array_interface__
+petsc4py.PETSc._Vec_buffer.__enter__ petsc4py.PETSc._Vec_buffer-class.html#__enter__
petsc4py.PETSc._Vec_buffer.__exit__ petsc4py.PETSc._Vec_buffer-class.html#__exit__
petsc4py.PETSc._Vec_buffer.__new__ petsc4py.PETSc._Vec_buffer-class.html#__new__
-petsc4py.PETSc._Vec_buffer.__enter__ petsc4py.PETSc._Vec_buffer-class.html#__enter__
-petsc4py.PETSc._Vec_buffer.__array_interface__ petsc4py.PETSc._Vec_buffer-class.html#__array_interface__
diff --git a/docs/apiref/class-tree.html b/docs/apiref/class-tree.html
index 9713900..9c26d59 100644
--- a/docs/apiref/class-tree.html
+++ b/docs/apiref/class-tree.html
@@ -60,15 +60,6 @@
</b></center><br />
<h1 class="epydoc">Class Hierarchy</h1>
<ul class="nomargin-top">
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.TAO.Reason-class.html">petsc4py.PETSc.TAO.Reason</a></strong>:
- <em class="summary">TAO Solver Termination Reasons</em>
- </li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.TAO.Type-class.html">petsc4py.PETSc.TAO.Type</a></strong>:
- <em class="summary">TAO Solver Types</em>
- </li>
- <li> <strong class="uidlink">object</strong>:
- <em class="summary">The most base type</em>
- <ul>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.PC.ASMType-class.html">petsc4py.PETSc.PC.ASMType</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.Mat.AssemblyType-class.html">petsc4py.PETSc.Mat.AssemblyType</a></strong>
@@ -102,12 +93,12 @@ interpreter exiting.</em>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.PC.CompositeType-class.html">petsc4py.PETSc.PC.CompositeType</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">petsc4py.PETSc.SNES.ConvergedReason</a></strong>
- </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">petsc4py.PETSc.KSP.ConvergedReason</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html">petsc4py.PETSc.TS.ConvergedReason</a></strong>
</li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">petsc4py.PETSc.SNES.ConvergedReason</a></strong>
+ </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.DMDA.ElementType-class.html">petsc4py.PETSc.DMDA.ElementType</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.TS.EquationType-class.html">petsc4py.PETSc.TS.EquationType</a></strong>
@@ -136,9 +127,11 @@ interpreter exiting.</em>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.LogStage-class.html">petsc4py.PETSc.LogStage</a></strong>
</li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.PC.MGCycleType-class.html">petsc4py.PETSc.PC.MGCycleType</a></strong>
+ </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.PC.MGType-class.html">petsc4py.PETSc.PC.MGType</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.LGMap.MapType-class.html">petsc4py.PETSc.LGMap.MapType</a></strong>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.LGMap.MapMode-class.html">petsc4py.PETSc.LGMap.MapMode</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.Viewer.Mode-class.html">petsc4py.PETSc.Viewer.Mode</a></strong>
</li>
@@ -203,10 +196,10 @@ interpreter exiting.</em>
</li>
</ul>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.Mat.Option-class.html">petsc4py.PETSc.Mat.Option</a></strong>
- </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.Vec.Option-class.html">petsc4py.PETSc.Vec.Option</a></strong>
</li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.Mat.Option-class.html">petsc4py.PETSc.Mat.Option</a></strong>
+ </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.Options-class.html">petsc4py.PETSc.Options</a></strong>:
<em class="summary">Options(prefix=None)</em>
</li>
@@ -216,6 +209,11 @@ interpreter exiting.</em>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.TS.ProblemType-class.html">petsc4py.PETSc.TS.ProblemType</a></strong>
</li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.TS.RKType-class.html">petsc4py.PETSc.TS.RKType</a></strong>
+ </li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.TAO.Reason-class.html">petsc4py.PETSc.TAO.Reason</a></strong>:
+ <em class="summary">TAO Solver Termination Reasons</em>
+ </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.Mat.SORType-class.html">petsc4py.PETSc.Mat.SORType</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.ScatterMode-class.html">petsc4py.PETSc.ScatterMode</a></strong>
@@ -234,30 +232,35 @@ interpreter exiting.</em>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.Sys-class.html">petsc4py.PETSc.Sys</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.TS.Type-class.html">petsc4py.PETSc.TS.Type</a></strong>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.SF.Type-class.html">petsc4py.PETSc.SF.Type</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.IS.Type-class.html">petsc4py.PETSc.IS.Type</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.Vec.Type-class.html">petsc4py.PETSc.Vec.Type</a></strong>
- </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.DM.Type-class.html">petsc4py.PETSc.DM.Type</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.Viewer.Type-class.html">petsc4py.PETSc.Viewer.Type</a></strong>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.KSP.Type-class.html">petsc4py.PETSc.KSP.Type</a></strong>
+ </li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.TAO.Type-class.html">petsc4py.PETSc.TAO.Type</a></strong>:
+ <em class="summary">TAO Solver Types</em>
+ </li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.TS.Type-class.html">petsc4py.PETSc.TS.Type</a></strong>
+ </li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.Mat.Type-class.html">petsc4py.PETSc.Mat.Type</a></strong>
+ </li>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.Random.Type-class.html">petsc4py.PETSc.Random.Type</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.PC.Type-class.html">petsc4py.PETSc.PC.Type</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.AO.Type-class.html">petsc4py.PETSc.AO.Type</a></strong>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.Vec.Type-class.html">petsc4py.PETSc.Vec.Type</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.SF.Type-class.html">petsc4py.PETSc.SF.Type</a></strong>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.AO.Type-class.html">petsc4py.PETSc.AO.Type</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.KSP.Type-class.html">petsc4py.PETSc.KSP.Type</a></strong>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.LGMap.Type-class.html">petsc4py.PETSc.LGMap.Type</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.Mat.Type-class.html">petsc4py.PETSc.Mat.Type</a></strong>
+ <li> <strong class="uidlink"><a href="petsc4py.PETSc.Viewer.Type-class.html">petsc4py.PETSc.Viewer.Type</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc.SNES.Type-class.html">petsc4py.PETSc.SNES.Type</a></strong>
</li>
- <li> <strong class="uidlink"><a href="petsc4py.PETSc.Random.Type-class.html">petsc4py.PETSc.Random.Type</a></strong>
- </li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc._DMComposite_access-class.html" onclick="show_private();">petsc4py.PETSc._DMComposite_access</a></strong>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">petsc4py.PETSc._DMDA_Vec_array</a></strong>
@@ -272,8 +275,6 @@ Context manager for <a href="petsc4py.PETSc.Vec-class.html" class="link">Vec</a>
</li>
<li> <strong class="uidlink"><a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">petsc4py.PETSc._Vec_buffer</a></strong>
</li>
- </ul>
- </li>
</ul>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
@@ -306,7 +307,7 @@ Context manager for <a href="petsc4py.PETSc.Vec-class.html" class="link">Vec</a>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/class_hierarchy_for__dmcomposi.png b/docs/apiref/class_hierarchy_for__dmcomposi.png
deleted file mode 100644
index f4f102d..0000000
Binary files a/docs/apiref/class_hierarchy_for__dmcomposi.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for__dmda_vec_.png b/docs/apiref/class_hierarchy_for__dmda_vec_.png
deleted file mode 100644
index e472977..0000000
Binary files a/docs/apiref/class_hierarchy_for__dmda_vec_.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for__is_buffer.png b/docs/apiref/class_hierarchy_for__is_buffer.png
deleted file mode 100644
index 555383d..0000000
Binary files a/docs/apiref/class_hierarchy_for__is_buffer.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for__mat_stenc.png b/docs/apiref/class_hierarchy_for__mat_stenc.png
deleted file mode 100644
index 4ca8468..0000000
Binary files a/docs/apiref/class_hierarchy_for__mat_stenc.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for__vec_buffe.png b/docs/apiref/class_hierarchy_for__vec_buffe.png
deleted file mode 100644
index cb5c929..0000000
Binary files a/docs/apiref/class_hierarchy_for__vec_buffe.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for__vec_local.png b/docs/apiref/class_hierarchy_for__vec_local.png
deleted file mode 100644
index 961b56b..0000000
Binary files a/docs/apiref/class_hierarchy_for__vec_local.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_ao.png b/docs/apiref/class_hierarchy_for_ao.png
deleted file mode 100644
index 289ef8a..0000000
Binary files a/docs/apiref/class_hierarchy_for_ao.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_asmtype.png b/docs/apiref/class_hierarchy_for_asmtype.png
deleted file mode 100644
index 2e8b1cc..0000000
Binary files a/docs/apiref/class_hierarchy_for_asmtype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_assemblyty.png b/docs/apiref/class_hierarchy_for_assemblyty.png
deleted file mode 100644
index bdb4778..0000000
Binary files a/docs/apiref/class_hierarchy_for_assemblyty.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_boundaryty.png b/docs/apiref/class_hierarchy_for_boundaryty.png
deleted file mode 100644
index 89333a8..0000000
Binary files a/docs/apiref/class_hierarchy_for_boundaryty.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_comm.png b/docs/apiref/class_hierarchy_for_comm.png
deleted file mode 100644
index 49b324f..0000000
Binary files a/docs/apiref/class_hierarchy_for_comm.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_compositet.png b/docs/apiref/class_hierarchy_for_compositet.png
deleted file mode 100644
index 32b495f..0000000
Binary files a/docs/apiref/class_hierarchy_for_compositet.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_convergedr.png b/docs/apiref/class_hierarchy_for_convergedr.png
deleted file mode 100644
index 9022f9d..0000000
Binary files a/docs/apiref/class_hierarchy_for_convergedr.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_convergedr_2.png b/docs/apiref/class_hierarchy_for_convergedr_2.png
deleted file mode 100644
index 9022f9d..0000000
Binary files a/docs/apiref/class_hierarchy_for_convergedr_2.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_convergedr_3.png b/docs/apiref/class_hierarchy_for_convergedr_3.png
deleted file mode 100644
index 9022f9d..0000000
Binary files a/docs/apiref/class_hierarchy_for_convergedr_3.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_dm.png b/docs/apiref/class_hierarchy_for_dm.png
deleted file mode 100644
index 0763c86..0000000
Binary files a/docs/apiref/class_hierarchy_for_dm.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_dmcomposit.png b/docs/apiref/class_hierarchy_for_dmcomposit.png
deleted file mode 100644
index aea8679..0000000
Binary files a/docs/apiref/class_hierarchy_for_dmcomposit.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_dmda.png b/docs/apiref/class_hierarchy_for_dmda.png
deleted file mode 100644
index f1a1aaa..0000000
Binary files a/docs/apiref/class_hierarchy_for_dmda.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_dmplex.png b/docs/apiref/class_hierarchy_for_dmplex.png
deleted file mode 100644
index 954a61e..0000000
Binary files a/docs/apiref/class_hierarchy_for_dmplex.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_dmshell.png b/docs/apiref/class_hierarchy_for_dmshell.png
deleted file mode 100644
index f1c7613..0000000
Binary files a/docs/apiref/class_hierarchy_for_dmshell.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_elementtyp.png b/docs/apiref/class_hierarchy_for_elementtyp.png
deleted file mode 100644
index ee2788f..0000000
Binary files a/docs/apiref/class_hierarchy_for_elementtyp.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_equationty.png b/docs/apiref/class_hierarchy_for_equationty.png
deleted file mode 100644
index 9cfe768..0000000
Binary files a/docs/apiref/class_hierarchy_for_equationty.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_error.png b/docs/apiref/class_hierarchy_for_error.png
deleted file mode 100644
index d2590ef..0000000
Binary files a/docs/apiref/class_hierarchy_for_error.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_exactfinal.png b/docs/apiref/class_hierarchy_for_exactfinal.png
deleted file mode 100644
index d713d4b..0000000
Binary files a/docs/apiref/class_hierarchy_for_exactfinal.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_factorshif.png b/docs/apiref/class_hierarchy_for_factorshif.png
deleted file mode 100644
index 5442156..0000000
Binary files a/docs/apiref/class_hierarchy_for_factorshif.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_format.png b/docs/apiref/class_hierarchy_for_format.png
deleted file mode 100644
index eb7f3d9..0000000
Binary files a/docs/apiref/class_hierarchy_for_format.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_gamgtype.png b/docs/apiref/class_hierarchy_for_gamgtype.png
deleted file mode 100644
index 52fef1e..0000000
Binary files a/docs/apiref/class_hierarchy_for_gamgtype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_gasmtype.png b/docs/apiref/class_hierarchy_for_gasmtype.png
deleted file mode 100644
index ace778a..0000000
Binary files a/docs/apiref/class_hierarchy_for_gasmtype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_infotype.png b/docs/apiref/class_hierarchy_for_infotype.png
deleted file mode 100644
index f635c3a..0000000
Binary files a/docs/apiref/class_hierarchy_for_infotype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_insertmode.png b/docs/apiref/class_hierarchy_for_insertmode.png
deleted file mode 100644
index 9253607..0000000
Binary files a/docs/apiref/class_hierarchy_for_insertmode.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_interpolat.png b/docs/apiref/class_hierarchy_for_interpolat.png
deleted file mode 100644
index 33343dd..0000000
Binary files a/docs/apiref/class_hierarchy_for_interpolat.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_is.png b/docs/apiref/class_hierarchy_for_is.png
deleted file mode 100644
index 1a18e2d..0000000
Binary files a/docs/apiref/class_hierarchy_for_is.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_ksp.png b/docs/apiref/class_hierarchy_for_ksp.png
deleted file mode 100644
index 7690057..0000000
Binary files a/docs/apiref/class_hierarchy_for_ksp.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_lgmap.png b/docs/apiref/class_hierarchy_for_lgmap.png
deleted file mode 100644
index 27efa3e..0000000
Binary files a/docs/apiref/class_hierarchy_for_lgmap.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_log.png b/docs/apiref/class_hierarchy_for_log.png
deleted file mode 100644
index 057e48a..0000000
Binary files a/docs/apiref/class_hierarchy_for_log.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_logclass.png b/docs/apiref/class_hierarchy_for_logclass.png
deleted file mode 100644
index 46057bd..0000000
Binary files a/docs/apiref/class_hierarchy_for_logclass.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_logevent.png b/docs/apiref/class_hierarchy_for_logevent.png
deleted file mode 100644
index fb3982d..0000000
Binary files a/docs/apiref/class_hierarchy_for_logevent.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_logstage.png b/docs/apiref/class_hierarchy_for_logstage.png
deleted file mode 100644
index df81513..0000000
Binary files a/docs/apiref/class_hierarchy_for_logstage.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_maptype.png b/docs/apiref/class_hierarchy_for_maptype.png
deleted file mode 100644
index 532abc4..0000000
Binary files a/docs/apiref/class_hierarchy_for_maptype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_mat.png b/docs/apiref/class_hierarchy_for_mat.png
deleted file mode 100644
index de65e90..0000000
Binary files a/docs/apiref/class_hierarchy_for_mat.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_mgtype.png b/docs/apiref/class_hierarchy_for_mgtype.png
deleted file mode 100644
index 474aeb6..0000000
Binary files a/docs/apiref/class_hierarchy_for_mgtype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_mode.png b/docs/apiref/class_hierarchy_for_mode.png
deleted file mode 100644
index 18672d4..0000000
Binary files a/docs/apiref/class_hierarchy_for_mode.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_normschedu.png b/docs/apiref/class_hierarchy_for_normschedu.png
deleted file mode 100644
index 932e9ea..0000000
Binary files a/docs/apiref/class_hierarchy_for_normschedu.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_normtype.png b/docs/apiref/class_hierarchy_for_normtype.png
deleted file mode 100644
index 7a3468e..0000000
Binary files a/docs/apiref/class_hierarchy_for_normtype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_normtype_2.png b/docs/apiref/class_hierarchy_for_normtype_2.png
deleted file mode 100644
index 7a3468e..0000000
Binary files a/docs/apiref/class_hierarchy_for_normtype_2.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_nullspace.png b/docs/apiref/class_hierarchy_for_nullspace.png
deleted file mode 100644
index 57fc0c6..0000000
Binary files a/docs/apiref/class_hierarchy_for_nullspace.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_object.png b/docs/apiref/class_hierarchy_for_object.png
deleted file mode 100644
index fe6246a..0000000
Binary files a/docs/apiref/class_hierarchy_for_object.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_option.png b/docs/apiref/class_hierarchy_for_option.png
deleted file mode 100644
index 35e1c07..0000000
Binary files a/docs/apiref/class_hierarchy_for_option.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_option_2.png b/docs/apiref/class_hierarchy_for_option_2.png
deleted file mode 100644
index 35e1c07..0000000
Binary files a/docs/apiref/class_hierarchy_for_option_2.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_options.png b/docs/apiref/class_hierarchy_for_options.png
deleted file mode 100644
index 61a0b46..0000000
Binary files a/docs/apiref/class_hierarchy_for_options.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_orderingty.png b/docs/apiref/class_hierarchy_for_orderingty.png
deleted file mode 100644
index 1c4ae5e..0000000
Binary files a/docs/apiref/class_hierarchy_for_orderingty.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_partitione.png b/docs/apiref/class_hierarchy_for_partitione.png
deleted file mode 100644
index 525e78a..0000000
Binary files a/docs/apiref/class_hierarchy_for_partitione.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_partitione_2.png b/docs/apiref/class_hierarchy_for_partitione_2.png
deleted file mode 100644
index 2d6142c..0000000
Binary files a/docs/apiref/class_hierarchy_for_partitione_2.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_pc.png b/docs/apiref/class_hierarchy_for_pc.png
deleted file mode 100644
index 181a53e..0000000
Binary files a/docs/apiref/class_hierarchy_for_pc.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_problemtyp.png b/docs/apiref/class_hierarchy_for_problemtyp.png
deleted file mode 100644
index 2fdd610..0000000
Binary files a/docs/apiref/class_hierarchy_for_problemtyp.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_random.png b/docs/apiref/class_hierarchy_for_random.png
deleted file mode 100644
index 741857a..0000000
Binary files a/docs/apiref/class_hierarchy_for_random.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_scatter.png b/docs/apiref/class_hierarchy_for_scatter.png
deleted file mode 100644
index 54c7320..0000000
Binary files a/docs/apiref/class_hierarchy_for_scatter.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_scattermod.png b/docs/apiref/class_hierarchy_for_scattermod.png
deleted file mode 100644
index 965a1e9..0000000
Binary files a/docs/apiref/class_hierarchy_for_scattermod.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_schurfactt.png b/docs/apiref/class_hierarchy_for_schurfactt.png
deleted file mode 100644
index b52f9c2..0000000
Binary files a/docs/apiref/class_hierarchy_for_schurfactt.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_schurprety.png b/docs/apiref/class_hierarchy_for_schurprety.png
deleted file mode 100644
index a0cf3be..0000000
Binary files a/docs/apiref/class_hierarchy_for_schurprety.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_section.png b/docs/apiref/class_hierarchy_for_section.png
deleted file mode 100644
index d2ebbe9..0000000
Binary files a/docs/apiref/class_hierarchy_for_section.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_sf.png b/docs/apiref/class_hierarchy_for_sf.png
deleted file mode 100644
index 5b26897..0000000
Binary files a/docs/apiref/class_hierarchy_for_sf.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_side.png b/docs/apiref/class_hierarchy_for_side.png
deleted file mode 100644
index 5625602..0000000
Binary files a/docs/apiref/class_hierarchy_for_side.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_size.png b/docs/apiref/class_hierarchy_for_size.png
deleted file mode 100644
index d7fee28..0000000
Binary files a/docs/apiref/class_hierarchy_for_size.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_snes.png b/docs/apiref/class_hierarchy_for_snes.png
deleted file mode 100644
index dd3c5d4..0000000
Binary files a/docs/apiref/class_hierarchy_for_snes.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_sortype.png b/docs/apiref/class_hierarchy_for_sortype.png
deleted file mode 100644
index ae6f9d1..0000000
Binary files a/docs/apiref/class_hierarchy_for_sortype.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_stenciltyp.png b/docs/apiref/class_hierarchy_for_stenciltyp.png
deleted file mode 100644
index f9b1ad2..0000000
Binary files a/docs/apiref/class_hierarchy_for_stenciltyp.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_structure.png b/docs/apiref/class_hierarchy_for_structure.png
deleted file mode 100644
index 040e730..0000000
Binary files a/docs/apiref/class_hierarchy_for_structure.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_sys.png b/docs/apiref/class_hierarchy_for_sys.png
deleted file mode 100644
index 835eac8..0000000
Binary files a/docs/apiref/class_hierarchy_for_sys.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_tao.png b/docs/apiref/class_hierarchy_for_tao.png
deleted file mode 100644
index efd32b9..0000000
Binary files a/docs/apiref/class_hierarchy_for_tao.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_ts.png b/docs/apiref/class_hierarchy_for_ts.png
deleted file mode 100644
index 059e2de..0000000
Binary files a/docs/apiref/class_hierarchy_for_ts.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type.png b/docs/apiref/class_hierarchy_for_type.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_10.png b/docs/apiref/class_hierarchy_for_type_10.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_10.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_11.png b/docs/apiref/class_hierarchy_for_type_11.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_11.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_12.png b/docs/apiref/class_hierarchy_for_type_12.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_12.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_2.png b/docs/apiref/class_hierarchy_for_type_2.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_2.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_3.png b/docs/apiref/class_hierarchy_for_type_3.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_3.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_4.png b/docs/apiref/class_hierarchy_for_type_4.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_4.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_5.png b/docs/apiref/class_hierarchy_for_type_5.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_5.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_6.png b/docs/apiref/class_hierarchy_for_type_6.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_6.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_7.png b/docs/apiref/class_hierarchy_for_type_7.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_7.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_8.png b/docs/apiref/class_hierarchy_for_type_8.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_8.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_type_9.png b/docs/apiref/class_hierarchy_for_type_9.png
deleted file mode 100644
index 3ee2d33..0000000
Binary files a/docs/apiref/class_hierarchy_for_type_9.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_vec.png b/docs/apiref/class_hierarchy_for_vec.png
deleted file mode 100644
index b97b63f..0000000
Binary files a/docs/apiref/class_hierarchy_for_vec.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_viewer.png b/docs/apiref/class_hierarchy_for_viewer.png
deleted file mode 100644
index 0bbdfe1..0000000
Binary files a/docs/apiref/class_hierarchy_for_viewer.png and /dev/null differ
diff --git a/docs/apiref/class_hierarchy_for_viewerhdf5.png b/docs/apiref/class_hierarchy_for_viewerhdf5.png
deleted file mode 100644
index a4f9c54..0000000
Binary files a/docs/apiref/class_hierarchy_for_viewerhdf5.png and /dev/null differ
diff --git a/docs/apiref/epydoc.css b/docs/apiref/epydoc.css
index 86d4170..e834248 100644
--- a/docs/apiref/epydoc.css
+++ b/docs/apiref/epydoc.css
@@ -39,8 +39,8 @@ a.link { font-family: monospace; }
* variables and to show/hide frames; and a page title (using
* <h1>). The page title may be followed by a link to the
* corresponding source code (using 'span.codelink').
- * - The footer consists of a navigation bar, a timestamp, and a
- * pointer to epydoc's homepage.
+ * - The footer consists of a navigation bar, a timestamp
+ * (if --include-timestamp was passed), and a pointer to epydoc's homepage.
*/
h1.epydoc { margin: 0; font-size: +140%; font-weight: bold; }
h2.epydoc { font-size: +130%; font-weight: bold; }
@@ -162,8 +162,8 @@ table.summary a.summary-sig-name:visited
/* Subclass list
*/
-ul.subclass-list { display: inline; }
-ul.subclass-list li { display: inline; }
+ul.subclass-list { display: inline; margin: 0; padding: 0; }
+ul.subclass-list li { display: inline; margin: 0; padding: 0; }
/* To render variables, classes etc. like functions */
table.summary .summary-name { color: #006080; font-weight: bold;
diff --git a/docs/apiref/help.html b/docs/apiref/help.html
index 08da1d2..aed2b5e 100644
--- a/docs/apiref/help.html
+++ b/docs/apiref/help.html
@@ -223,8 +223,8 @@ are private objects; but "<code>re.sub</code>",
if a module defines the "<code>__all__</code>" variable, then its
contents are used to decide which objects are private. </p>
-<p> A timestamp below the bottom navigation bar indicates when each
-page was last updated. </p>
+<p> If --include-timestamp was passed, a timestamp below the bottom navigation bar indicates
+when each page was last updated. </p>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -256,7 +256,7 @@ page was last updated. </p>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/identifier-index.html b/docs/apiref/identifier-index.html
index 324df65..45d0ebb 100644
--- a/docs/apiref/identifier-index.html
+++ b/docs/apiref/identifier-index.html
@@ -95,159 +95,183 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#A">A</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ALPHA2">ALPHA2</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_INFO">ASCII_INFO</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJCUSPARSE">AIJCUSPARSE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_FACTOR_INFO">ASCII_FACTOR_INFO</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurPreType-class.html#A11">A11</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#ALWAYS">ALWAYS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_INFO_DETAIL">ASCII_INFO_DETAIL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJPERM">AIJPERM</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_IMPL">ASCII_IMPL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#abs">abs()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#AMD">AMD</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_LATEX">ASCII_LATEX</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJVIENNACL">AIJVIENNACL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_INDEX">ASCII_INDEX</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#activate">activate()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#ANDERSON">ANDERSON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_MATHEMATICA">ASCII_MATHEMATICA</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#AINVCUSP">AINVCUSP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_INFO">ASCII_INFO</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#activate">activate()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html">AO</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_MATLAB">ASCII_MATLAB</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#allGather">allGather()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_INFO_DETAIL">ASCII_INFO_DETAIL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#activate">activate()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#app2petsc">app2petsc()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_MATRIXMARKET">ASCII_MATRIXMARKET</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ALPHA">ALPHA</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_LATEX">ASCII_LATEX</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#active">active</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#appctx">appctx</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_PCICE">ASCII_PCICE</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ALPHA2">ALPHA2</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_MATHEMATICA">ASCII_MATHEMATICA</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#active">active</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#appctx">appctx</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_PYTHON">ASCII_PYTHON</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#ALWAYS">ALWAYS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_MATLAB">ASCII_MATLAB</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#active">active</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#appctx">appctx</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_SYMMODU">ASCII_SYMMODU</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#AMD">AMD</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_MATRIXMARKET">ASCII_MATRIXMARKET</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#active_all">active_all</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#appctx">appctx</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_VTK">ASCII_VTK</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#ANDERSON">ANDERSON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_PCICE">ASCII_PCICE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#adaptLabel">adaptLabel()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html">AO</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_PYTHON">ASCII_PYTHON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#adaptMetric">adaptMetric()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#app2petsc">app2petsc()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_SYMMODU">ASCII_SYMMODU</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#ADD">ADD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#APPEND">APPEND</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_VTK_CELL">ASCII_VTK_CELL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#appctx">appctx</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_VTK">ASCII_VTK</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#ADD_ALL">ADD_ALL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#APPEND_UPDATE">APPEND_UPDATE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_VTK_COORDS">ASCII_VTK_COORDS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#appctx">appctx</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_VTK_CELL">ASCII_VTK_CELL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#ADD_ALL_VALUES">ADD_ALL_VALUES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#apply">apply()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_XML">ASCII_XML</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#appctx">appctx</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_VTK_COORDS">ASCII_VTK_COORDS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#ADD_BC">ADD_BC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#apply">apply()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#ASFLS">ASFLS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#appctx">appctx</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_XML">ASCII_XML</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#ADD_BC_VALUES">ADD_BC_VALUES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html#APPLY_LOWER">APPLY_LOWER</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#ASILS">ASILS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#APPEND">APPEND</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#ASFLS">ASFLS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#ADD_VALUES">ADD_VALUES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html#APPLY_UPPER">APPLY_UPPER</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#APPEND_UPDATE">APPEND_UPDATE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#ASILS">ASILS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#addASCIITab">addASCIITab()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#apply">apply()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#ASM">ASM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#addCompositePC">addCompositePC()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyBlock">applyBlock()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#apply">apply()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.ASMType-class.html">ASMType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#addConstraintDof">addConstraintDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyBlockInverse">applyBlockInverse()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html#APPLY_LOWER">APPLY_LOWER</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#ASPIN">ASPIN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#addDM">addDM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyInverse">applyInverse()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html#APPLY_UPPER">APPLY_UPPER</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#assemble">assemble()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#addDof">addDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyIS">applyIS()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyBlock">applyBlock()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#assemble">assemble()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
@@ -255,127 +279,127 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#addFieldConstraintDof">addFieldConstraintDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#applySymmetricLeft">applySymmetricLeft()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyBlockInverse">applyBlockInverse()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#assembled">assembled</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#addFieldDof">addFieldDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#applySymmetricRight">applySymmetricRight()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyInverse">applyInverse()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#assemblyBegin">assemblyBegin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#addFlops">addFlops()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#applyTranspose">applyTranspose()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#applyIS">applyIS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#assemblyBegin">assemblyBegin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#ADDITIVE">ADDITIVE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ARKIMEX">ARKIMEX</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#applySymmetricLeft">applySymmetricLeft()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#assemblyEnd">assemblyEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGType-class.html#ADDITIVE">ADDITIVE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGType-class.html">MGType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#array">array</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#applySymmetricRight">applySymmetricRight()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#assemblyEnd">assemblyEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO.Type-class.html#ADVANCED">ADVANCED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.AO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#array">array</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#adjointComputeRHSJacobian">adjointComputeRHSJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#applyTranspose">applyTranspose()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.AssemblyType-class.html">AssemblyType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GAMGType-class.html#AGG">AGG</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.GAMGType-class.html">GAMGType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#array">array</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#adjointSetRHSJacobian">adjointSetRHSJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ARKIMEX">ARKIMEX</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#atol">atol</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJ">AIJ</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#array_r">array_r</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#adjointSetSteps">adjointSetSteps()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#array">array</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#atol">atol</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJCRL">AIJCRL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#array_w">array_w</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#adjointSetUp">adjointSetUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#array">array</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#atol">atol</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJCUSP">AIJCUSP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#ASCII">ASCII</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#adjointSolve">adjointSolve()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#array">array</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#AU">AU</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJCUSPARSE">AIJCUSPARSE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#ASCII">ASCII()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#adjointStep">adjointStep()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#array_r">array_r</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#axpby">axpby()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJPERM">AIJPERM</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_COMMON">ASCII_COMMON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO.Type-class.html#ADVANCED">ADVANCED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.AO.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#array_w">array_w</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#axpy">axpy()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJVIENNACL">AIJVIENNACL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_DENSE">ASCII_DENSE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GAMGType-class.html#AGG">AGG</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.GAMGType-class.html">GAMGType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#ASCII">ASCII</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#axpy">axpy()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#AINVCUSP">AINVCUSP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_FACTOR_INFO">ASCII_FACTOR_INFO</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJ">AIJ</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#ASCII">ASCII()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#aypx">aypx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#allGather">allGather()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_IMPL">ASCII_IMPL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJCRL">AIJCRL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_COMMON">ASCII_COMMON</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#aypx">aypx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ALPHA">ALPHA</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_INDEX">ASCII_INDEX</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#AIJCUSP">AIJCUSP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#ASCII_DENSE">ASCII_DENSE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
@@ -387,29 +411,37 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html#BACKWARD_SWEEP">BACKWARD_SWEEP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#begin">begin()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#block_size">block_size</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#BAIJ">BAIJ</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#begin">begin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#block_size">block_size</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#BAIJ">BAIJ</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#Barrier">Barrier()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#BEULER">BEULER</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#block_sizes">block_sizes</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#Barrier">Barrier()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#barrierBegin">barrierBegin()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#BFBT">BFBT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#BLOCKMAT">BLOCKMAT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#barrierBegin">barrierBegin()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#barrierEnd">barrierEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#BICG">BICG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
@@ -417,16 +449,16 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#barrierEnd">barrierEnd()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO.Type-class.html#BASIC">BASIC</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.AO.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#BICGSTABCUSP">BICGSTABCUSP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#boundary_type">boundary_type</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO.Type-class.html#BASIC">BASIC</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.AO.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.Type-class.html#BASIC">BASIC</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#BINARY">BINARY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a><br />
@@ -453,15 +485,15 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SF.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#BJACOBI">BJACOBI</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#BSTRM">BSTRM</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#buffer">buffer</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#BCGS">BCGS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#BLMVM">BLMVM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#buffer">buffer</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#buffer_r">buffer_r</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
@@ -469,7 +501,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS.Type-class.html#BLOCK">BLOCK</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#buffer_r">buffer_r</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#buffer_w">buffer_w</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
@@ -477,15 +509,15 @@
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#block_indices">block_indices</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#buffer_w">buffer_w</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#buildResidual">buildResidual()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#BDF">BDF</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#block_info">block_info</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#buildResidual">buildResidual()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#buildSolution">buildSolution()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
@@ -493,8 +525,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#block_size">block_size</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#buildSolution">buildSolution()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"> </td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#begin">begin()</a><br />
@@ -503,13 +534,6 @@
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#begin">begin()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#block_size">block_size</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="C">C</a></h2></td>
@@ -518,191 +542,215 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._Mat_Stencil-class.html#c">c</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._Mat_Stencil-class.html" onclick="show_private();">_Mat_Stencil</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#converged">converged</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createAIJCRL">createAIJCRL()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#conjugate">conjugate()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createAIJ">createAIJ()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#callConvergenceTest">callConvergenceTest()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#converged">converged</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createAIJWithArrays">createAIJWithArrays()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#constructGhostCells">constructGhostCells()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createAIJCRL">createAIJCRL()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#callConvergenceTest">callConvergenceTest()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#converged">converged</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createASCII">createASCII()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONTINUE_ITERATING">CONTINUE_ITERATING</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createAIJWithArrays">createAIJWithArrays()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#cancelMonitor">cancelMonitor()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL">CONVERGED_ATOL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createBAIJ">createBAIJ()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#converged">converged</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createASCII">createASCII()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#cancelMonitor">cancelMonitor()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL_NORMAL">CONVERGED_ATOL_NORMAL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#createBasic">createBasic()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#converged">converged</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createBAIJ">createBAIJ()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#cancelMonitor">cancelMonitor()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_CG_CONSTRAINED">CONVERGED_CG_CONSTRAINED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createBinary">createBinary()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#converged">converged</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#createBasic">createBasic()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#cancelMonitor">cancelMonitor()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_CG_NEG_CURVE">CONVERGED_CG_NEG_CURVE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#createBlock">createBlock()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#converged">converged</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createBinary">createBinary()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#CARTESIAN">CARTESIAN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_EVENT">CONVERGED_EVENT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createBoxMesh">createBoxMesh()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL">CONVERGED_ATOL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#createBlock">createBlock()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CG">CG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_ABS">CONVERGED_FNORM_ABS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createCGNS">createCGNS()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ATOL_NORMAL">CONVERGED_ATOL_NORMAL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createBoxMesh">createBoxMesh()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#CG">CG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_RELATIVE">CONVERGED_FNORM_RELATIVE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_CG_CONSTRAINED">CONVERGED_CG_CONSTRAINED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createCGNS">createCGNS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGGLTR">CGGLTR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_CG_NEG_CURVE">CONVERGED_CG_NEG_CURVE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createCGNSFromFile">createCGNSFromFile()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGLS">CGLS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_GATOL">CONVERGED_GATOL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_EVENT">CONVERGED_EVENT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createCoarsePointIS">createCoarsePointIS()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGNE">CGNE</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGNASH">CGNASH</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_GRTOL">CONVERGED_GRTOL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_ABS">CONVERGED_FNORM_ABS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createCohesiveSubmesh">createCohesiveSubmesh()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGS">CGS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGNE">CGNE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_GTTOL">CONVERGED_GTTOL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_FNORM_RELATIVE">CONVERGED_FNORM_RELATIVE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createCubeBoundary">createCubeBoundary()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PartitionerType-class.html#CHACO">CHACO</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PartitionerType-class.html">PartitionerType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_HAPPY_BREAKDOWN">CONVERGED_HAPPY_BREAKDOWN</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGS">CGS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_GATOL">CONVERGED_GATOL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createDefaultSF">createDefaultSF()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CHEBYSHEV">CHEBYSHEV</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CGSTCG">CGSTCG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_GRTOL">CONVERGED_GRTOL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createDense">createDense()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#CHOLESKY">CHOLESKY</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PartitionerType-class.html#CHACO">CHACO</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PartitionerType-class.html">PartitionerType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_GTTOL">CONVERGED_GTTOL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createDraw">createDraw()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#chop">chop()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CHEBYSHEV">CHEBYSHEV</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_HAPPY_BREAKDOWN">CONVERGED_HAPPY_BREAKDOWN</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createExodus">createExodus()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#CHOLESKY">CHOLESKY</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createExodusFromFile">createExodusFromFile()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#chop">chop()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createFieldDecomposition">createFieldDecomposition()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+</tr>
+<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#chop">chop()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createExodusFromFile">createExodusFromFile()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createFromCellList">createFromCellList()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#Class">Class()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ITS">CONVERGED_ITS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createFromCellList">createFromCellList()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_ITERATING">CONVERGED_ITERATING</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createFromFile">createFromFile()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GAMGType-class.html#CLASSICAL">CLASSICAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.GAMGType-class.html">GAMGType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_ITS">CONVERGED_ITS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_ITS">CONVERGED_ITS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#createGeneral">createGeneral()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#classid">classid</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_ITS">CONVERGED_ITS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_ITS">CONVERGED_ITS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createGhost">createGhost()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#clear">clear()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_MINF">CONVERGED_MINF</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_ITS">CONVERGED_ITS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createGhostWithArray">createGhostWithArray()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#clearDraw">clearDraw()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_RTOL">CONVERGED_RTOL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_MINF">CONVERGED_MINF</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#createGlobalSection">createGlobalSection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#clearLabelStratum">clearLabelStratum()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_RTOL_NORMAL">CONVERGED_RTOL_NORMAL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_RTOL">CONVERGED_RTOL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createGlobalVec">createGlobalVec()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
@@ -710,301 +758,309 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#clearLabelValue">clearLabelValue()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_SNORM_RELATIVE">CONVERGED_SNORM_RELATIVE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_RTOL_NORMAL">CONVERGED_RTOL_NORMAL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createGmsh">createGmsh()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#clone">clone()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_STEP_LENGTH">CONVERGED_STEP_LENGTH</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_SNORM_RELATIVE">CONVERGED_SNORM_RELATIVE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createHDF5">createHDF5()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#clone">clone()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_STEPTOL">CONVERGED_STEPTOL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#CONVERGED_STEP_LENGTH">CONVERGED_STEP_LENGTH</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createHexBoxMesh">createHexBoxMesh()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#clone">clone()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_TIME">CONVERGED_TIME</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_STEPTOL">CONVERGED_STEPTOL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createInjection">createInjection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#CN">CN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_TR_DELTA">CONVERGED_TR_DELTA</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_TIME">CONVERGED_TIME</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createInterpolation">createInterpolation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#cnorm">cnorm</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_USER">CONVERGED_USER</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#CONVERGED_TR_DELTA">CONVERGED_TR_DELTA</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#createInverse">createInverse()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#coarsen">coarsen()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_USER">CONVERGED_USER</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONVERGED_USER">CONVERGED_USER</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#createIS">createIS()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#coarsenHierarchy">coarsenHierarchy()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#CONVERGED_USER">CONVERGED_USER</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createLabel">createLabel()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html">Comm</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createLocalVec">createLocalVec()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createLocalVector">createLocalVector()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#comm">comm</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createLRC">createLRC()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#COMM_NULL">COMM_NULL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#convert">convert()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#createMapping">createMapping()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#COMM_SELF">COMM_SELF</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#convert">convert()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#convert">convert()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createMat">createMat()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#COMM_WORLD">COMM_WORLD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#copy">copy()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#convert">convert()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#createMemoryScalable">createMemoryScalable()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#complement">complement()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#copy">copy()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#copy">copy()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createMPI">createMPI()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#compose">compose()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#copy">copy()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#copy">copy()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createMPIIO">createMPIIO()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#COMPOSITE">COMPOSITE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#copy">copy()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#copy">copy()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#createNaturalVec">createNaturalVec()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#COMPOSITE">COMPOSITE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#corners">corners</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#copy">copy()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createNest">createNest()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#COMPOSITE">COMPOSITE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#CP">CP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#corners">corners</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createNest">createNest()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#COMPOSITE">COMPOSITE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CR">CR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createNetCDF">createNetCDF()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#CP">CP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createNormal">createNormal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#CRANK_NICOLSON">CRANK_NICOLSON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createNormal">createNormal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#CR">CR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createPointNumbering">createPointNumbering()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#computeCellGeometryFVM">computeCellGeometryFVM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#CRANK_NICOLSON">CRANK_NICOLSON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#createPython">createPython()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeConstraints">computeConstraints()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createPointNumbering">createPointNumbering()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createPython">createPython()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeConstraints">computeConstraints()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeDualVariables">computeDualVariables()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#createPython">createPython()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#createPython">createPython()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeDualVariables">computeDualVariables()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#computeEigenvalues">computeEigenvalues()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createPython">createPython()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#createPython">createPython()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#computeEigenvalues">computeEigenvalues()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#computeExtremeSingularValues">computeExtremeSingularValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#createPython">createPython()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#createPython">createPython()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#computeExtremeSingularValues">computeExtremeSingularValues()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#computeFunction">computeFunction()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#createPython">createPython()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#createRigidBody">createRigidBody()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#computeFunction">computeFunction()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeGradient">computeGradient()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#createPython">createPython()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createSBAIJ">createSBAIJ()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeGradient">computeGradient()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeHessian">computeHessian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#createRigidBody">createRigidBody()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createScatter">createScatter()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeHessian">computeHessian()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeI2Function">computeI2Function()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createSBAIJ">createSBAIJ()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createSection">createSection()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeIFunction">computeIFunction()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeI2Jacobian">computeI2Jacobian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createScatter">createScatter()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createSeq">createSeq()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeIJacobian">computeIJacobian()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeIFunction">computeIFunction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createSection">createSection()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#createSF">createSF()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#computeJacobian">computeJacobian()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeIJacobian">computeIJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createSeq">createSeq()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createShared">createShared()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeJacobian">computeJacobian()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#computeJacobian">computeJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#createSF">createSF()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createSquareBoundary">createSquareBoundary()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#computeObjective">computeObjective()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeJacobian">computeJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createShared">createShared()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#createStride">createStride()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeObjective">computeObjective()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#computeNGS">computeNGS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#createSquareBoundary">createSquareBoundary()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createSubMatrices">createSubMatrices()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeObjectiveGradient">computeObjectiveGradient()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#computeObjective">computeObjective()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#createStride">createStride()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createSubMatrix">createSubMatrix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSFunction">computeRHSFunction()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeObjective">computeObjective()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createSubMatrix">createSubMatrix()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createSubMatrixVirtual">createSubMatrixVirtual()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSFunctionLinear">computeRHSFunctionLinear()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeObjectiveGradient">computeObjectiveGradient()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createTranspose">createTranspose()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSJacobian">computeRHSJacobian()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSFunction">computeRHSFunction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
@@ -1012,7 +1068,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSJacobianConstant">computeRHSJacobianConstant()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSFunctionLinear">computeRHSFunctionLinear()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
@@ -1020,51 +1076,44 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeSeparableObjective">computeSeparableObjective()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSJacobian">computeRHSJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#createVTK">createVTK()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeVariableBounds">computeVariableBounds()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#computeRHSJacobianConstant">computeRHSJacobianConstant()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#createWithArray">createWithArray()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#conjugate">conjugate()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeSeparableObjective">computeSeparableObjective()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#ctol">ctol</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#conjugate">conjugate()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#computeVariableBounds">computeVariableBounds()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#create">create()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#CUSP">CUSP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#CONTINUE_ITERATING">CONTINUE_ITERATING</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#conjugate">conjugate()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#createAggregates">createAggregates()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#converged">converged</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#createAIJ">createAIJ()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="D">D</a></h2></td>
@@ -1307,8 +1356,8 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#DIVERGED_INDEFINITE_PC">DIVERGED_INDEFINITE_PC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapType-class.html#DROP">DROP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.MapType-class.html">MapType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapMode-class.html#DROP">DROP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.MapMode-class.html">MapMode</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#destroy">destroy()</a><br />
@@ -1434,11 +1483,19 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#FE">FE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#fortran">fortran</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorICC">factorICC()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FETIDP">FETIDP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#FORWARD">FORWARD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorICC">factorICC()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorILU">factorILU()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#FFT">FFT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
@@ -1446,7 +1503,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorILU">factorILU()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorLU">factorLU()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#FFTW">FFTW</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
@@ -1454,7 +1511,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorLU">factorLU()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorNumericCholesky">factorNumericCholesky()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FGMRES">FGMRES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
@@ -1462,7 +1519,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorNumericCholesky">factorNumericCholesky()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorNumericLU">factorNumericLU()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._Mat_Stencil-class.html#field">field</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._Mat_Stencil-class.html" onclick="show_private();">_Mat_Stencil</a>)</span></td>
@@ -1470,7 +1527,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorNumericLU">factorNumericLU()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#FIELDSPLIT">FIELDSPLIT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
@@ -1478,7 +1535,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicCholesky">factorSymbolicCholesky()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.AssemblyType-class.html#FINAL">FINAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.AssemblyType-class.html">AssemblyType</a>)</span></td>
@@ -1486,7 +1543,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicCholesky">factorSymbolicCholesky()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicICC">factorSymbolicICC()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.AssemblyType-class.html#FINAL_ASSEMBLY">FINAL_ASSEMBLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.AssemblyType-class.html">AssemblyType</a>)</span></td>
@@ -1494,7 +1551,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGType-class.html">MGType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicICC">factorSymbolicICC()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicILU">factorSymbolicILU()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#FINAL_ONLY">FINAL_ONLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
@@ -1502,7 +1559,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurFactType-class.html">SchurFactType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicILU">factorSymbolicILU()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicLU">factorSymbolicLU()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.AssemblyType-class.html#FLUSH">FLUSH</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.AssemblyType-class.html">AssemblyType</a>)</span></td>
@@ -1510,23 +1567,23 @@
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#factorSymbolicLU">factorSymbolicLU()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#FAS">FAS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#flush">flush()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#FULL">FULL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#FAS">FAS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FBCGS">FBCGS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.AssemblyType-class.html#FLUSH_ASSEMBLY">FLUSH_ASSEMBLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.AssemblyType-class.html">AssemblyType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#FULL_SIZE">FULL_SIZE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FBCGS">FBCGS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FBCGSR">FBCGSR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
@@ -1534,19 +1591,12 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FBCGSR">FBCGSR</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FCG">FCG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#fortran">fortran</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#FCG">FCG</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#fortran">fortran</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="G">G</a></h2></td>
@@ -1555,321 +1605,369 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#GALERKIN">GALERKIN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getGhostRanges">getGhostRanges()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getGhostCorners">getGhostCorners()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getPythonContext">getPythonContext()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPostStep">getPostStep()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#GAMG">GAMG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getGlobalISs">getGlobalISs()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getPythonContext">getPythonContext()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getGhostRanges">getGhostRanges()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPreStep">getPreStep()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GAMGType-class.html">GAMGType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getGradient">getGradient()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPythonContext">getPythonContext()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getGlobalISs">getGlobalISs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPrevTime">getPrevTime()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#GASM">GASM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getGradientNorm">getGradientNorm()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getRanges">getRanges()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getGlobalVec">getGlobalVec()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getProblemType">getProblemType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GASMType-class.html">GASMType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#getGraph">getGraph()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getReal">getReal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getGradient">getGradient()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getProcSizes">getProcSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#gather">gather()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#getGroup">getGroup()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRedundantMatrix">getRedundantMatrix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getGradientNorm">getGradientNorm()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getPythonContext">getPythonContext()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#GCR">GCR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getHeightStratum">getHeightStratum()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getRefCount">getRefCount()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#getGraph">getGraph()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getPythonContext">getPythonContext()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS.Type-class.html#GENERAL">GENERAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getHYPREType">getHYPREType()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#getGroup">getGroup()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getPythonContext">getPythonContext()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getRefinementFactor">getRefinementFactor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#generate">generate()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getIFunction">getIFunction()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getRefinementLimit">getRefinementLimit()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getHeightStratum">getHeightStratum()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getPythonContext">getPythonContext()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GAMGType-class.html#GEO">GEO</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.GAMGType-class.html">GAMGType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getIJacobian">getIJacobian()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getHYPREType">getHYPREType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPythonContext">getPythonContext()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getRefinementUniform">getRefinementUniform()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py-module.html#get_config">get_config()</a><br />
+<span class="index-where">(in <a href="petsc4py-module.html">petsc4py</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getI2Function">getI2Function()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getRanges">getRanges()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py-module.html#get_include">get_include()</a><br />
<span class="index-where">(in <a href="petsc4py-module.html">petsc4py</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getIndices">getIndices()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getResidualNorm">getResidualNorm()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getI2Jacobian">getI2Jacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getReal">getReal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#Get_rank">Get_rank()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getIndices">getIndices()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getRhs">getRhs()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getIFunction">getIFunction()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRedundantMatrix">getRedundantMatrix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getAccess">getAccess()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getInertia">getInertia()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getRhs">getRhs()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getIJacobian">getIJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getRefCount">getRefCount()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#getActive">getActive()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getInfo">getInfo()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getIndices">getIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getRHSFunction">getRHSFunction()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getRefineLevel">getRefineLevel()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#getActive">getActive()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getInfo">getInfo()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getIndices">getIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getRHSJacobian">getRHSJacobian()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getRefinementFactor">getRefinementFactor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#getActive">getActive()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getInfo">getInfo()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRow">getRow()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getInertia">getInertia()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getRefinementLimit">getRefinementLimit()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#getActiveAll">getActiveAll()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getInfo">getInfo()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getRefinementUniform">getRefinementUniform()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getAdjacency">getAdjacency()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getInfo">getInfo()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getResidualNorm">getResidualNorm()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getAdjacencyUseAnchors">getAdjacencyUseAnchors()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getInfo">getInfo()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getRhs">getRhs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getAdjacencyUseClosure">getAdjacencyUseClosure()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#getInitArgs">getInitArgs()</a><br />
<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#GETROW_UPPERTRIANGULAR">GETROW_UPPERTRIANGULAR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getRhs">getRhs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getAll">getAll()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getAdjacencyUseCone">getAdjacencyUseCone()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getInitialGuess">getInitialGuess()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRowIJ">getRowIJ()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getRHSFunction">getRHSFunction()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getAll">getAll()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getInitialGuessKnoll">getInitialGuessKnoll()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getRHSJacobian">getRHSJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getAlphaParams">getAlphaParams()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getInitialGuessKnoll">getInitialGuessKnoll()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getInitialGuessNonzero">getInitialGuessNonzero()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRowSum">getRowSum()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getRKType">getRKType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getAO">getAO()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getInitialGuessNonzero">getInitialGuessNonzero()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getScalar">getScalar()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getInt">getInt()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRow">getRow()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getAppCtx">getAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getInt">getInt()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getScatter">getScatter()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getInterpolationType">getInterpolationType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#GETROW_UPPERTRIANGULAR">GETROW_UPPERTRIANGULAR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getAppCtx">getAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getInterpolationType">getInterpolationType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#getSeed">getSeed()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#getInterval">getInterval()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRowIJ">getRowIJ()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getAppCtx">getAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#getInterval">getInterval()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#getSize">getSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getAppCtx">getAppCtx()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getIterationNumber">getIterationNumber()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getSize">getSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getRowSum">getRowSum()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getAppCtx">getAppCtx()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getAppCtx">getAppCtx()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getIterationNumber">getIterationNumber()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getSize">getSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getScalar">getScalar()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getArray">getArray()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getAppCtx">getAppCtx()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getIterationNumber">getIterationNumber()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getSize">getSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getScatter">getScatter()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getASMSubKSP">getASMSubKSP()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getArray">getArray()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getJacobian">getJacobian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getSize">getSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#getSeed">getSeed()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getAttr">getAttr()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#getASCIITab">getASCIITab()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getJoin">getJoin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getSizes">getSizes()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#getSize">getSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getBlockIndices">getBlockIndices()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getASMSubKSP">getASMSubKSP()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getKSP">getKSP()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getSizes">getSizes()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getSize">getSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getBlockIndices">getBlockIndices()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getAttr">getAttr()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getKSP">getKSP()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getSizes">getSizes()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getSize">getSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getBlockInfo">getBlockInfo()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getBlockIndices">getBlockIndices()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getKSP">getKSP()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getSizes">getSizes()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getSize">getSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getBlockSize">getBlockSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getBlockIndices">getBlockIndices()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getKSP">getKSP()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSNES">getSNES()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getSize">getSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getBlockInfo">getBlockInfo()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getKSPIterations">getKSPIterations()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getSizes">getSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getBlockSize">getBlockSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelIdIS">getLabelIdIS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getSizes">getSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getBlockSize">getBlockSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getKSPIterations">getKSPIterations()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSNESFailures">getSNESFailures()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelName">getLabelName()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getSizes">getSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#getBlockSize">getBlockSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelIdIS">getLabelIdIS()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelOutput">getLabelOutput()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSNESIterations">getSNESIterations()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getSizes">getSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getBlockSize">getBlockSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelName">getLabelName()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelSize">getLabelSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getSolution">getSolution()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSNES">getSNES()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getBlockSize">getBlockSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelOutput">getLabelOutput()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelValue">getLabelValue()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getSolution">getSolution()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSNESFailures">getSNESFailures()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getBlockSizes">getBlockSizes()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelSize">getLabelSize()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLGMap">getLGMap()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getSolution">getSolution()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSNESIterations">getSNESIterations()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getBool">getBool()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLabelValue">getLabelValue()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSolution">getSolution()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getLGMap">getLGMap()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getSolution">getSolution()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getBoundaryType">getBoundaryType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLGMap">getLGMap()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getSolutionNorm">getSolutionNorm()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getLGMap">getLGMap()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getSolution">getSolution()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getBoundingBox">getBoundingBox()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getLGMaps">getLGMaps()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getSolutionStatus">getSolutionStatus()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getSolution">getSolution()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
@@ -1877,15 +1975,15 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getLinearSolveFailures">getLinearSolveFailures()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getSolutionUpdate">getSolutionUpdate()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSolution">getSolution()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getCellNumbering">getCellNumbering()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getLinearSolveIterations">getLinearSolveIterations()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSolveTime">getSolveTime()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSolution2">getSolution2()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
@@ -1893,107 +1991,123 @@
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getLMVMH0">getLMVMH0()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getStencil">getStencil()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getSolutionNorm">getSolutionNorm()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getChart">getChart()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getLMVMH0KSP">getLMVMH0KSP()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getStencilType">getStencilType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getSolutionStatus">getSolutionStatus()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getClassId">getClassId()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getLocalBoundingBox">getLocalBoundingBox()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getStencilWidth">getStencilWidth()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getSolutionUpdate">getSolutionUpdate()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getClassName">getClassName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getLocalISs">getLocalISs()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getStepFailures">getStepFailures()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getSolveTime">getSolveTime()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getColumnIJ">getColumnIJ()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoarsenLevel">getCoarsenLevel()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getLocalSize">getLocalSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getStepNumber">getStepNumber()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getStencil">getStencil()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getColumnVector">getColumnVector()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getColumnIJ">getColumnIJ()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getLocalSize">getLocalSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getStepRejections">getStepRejections()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getStencilType">getStencilType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getComm">getComm()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getColumnVector">getColumnVector()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getLocalSize">getLocalSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getStorageSize">getStorageSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getStencilWidth">getStencilWidth()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getCompositeNumber">getCompositeNumber()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getComm">getComm()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getLocalSubMatrix">getLocalSubMatrix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getStratumIS">getStratumIS()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getStepFailures">getStepFailures()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getCompositeNumber">getCompositeNumber()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getLocalVec">getLocalVec()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getStepNumber">getStepNumber()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getCompositePC">getCompositePC()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getMaxDof">getMaxDof()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getStratumSize">getStratumSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getLRCMats">getLRCMats()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getStepRejections">getStepRejections()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getCompositeSNES">getCompositeSNES()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getMaxFunctionEvaluations">getMaxFunctionEvaluations()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getStride">getStride()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getMaxDof">getMaxDof()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getStorageSize">getStorageSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getComputeEigenvalues">getComputeEigenvalues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getMaxKSPFailures">getMaxKSPFailures()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getMaxFunctionEvaluations">getMaxFunctionEvaluations()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getString">getString()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getStratumIS">getStratumIS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getComputeSingularValues">getComputeSingularValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getMaxKSPFailures">getMaxKSPFailures()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getStratumSize">getStratumSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getCone">getCone()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getMaxSizes">getMaxSizes()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getSubMatrices">getSubMatrices()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#getStride">getStride()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getCone">getCone()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getConeOrientation">getConeOrientation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getMaxStepFailures">getMaxStepFailures()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getSubMatrix">getSubMatrix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#getString">getString()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getConeOrientation">getConeOrientation()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getConeSize">getConeSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getMaxSteps">getMaxSteps()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
@@ -2001,15 +2115,15 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getConeSize">getConeSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getConstrainedStorageSize">getConstrainedStorageSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getMaxTime">getMaxTime()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getSupport">getSupport()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getConstrainedStorageSize">getConstrainedStorageSize()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getConstraintDof">getConstraintDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getMeet">getMeet()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
@@ -2017,7 +2131,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getConstraintDof">getConstraintDof()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getConstraintIndices">getConstraintIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGCoarseSolve">getMGCoarseSolve()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
@@ -2025,111 +2139,111 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getConstraintIndices">getConstraintIndices()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getConstraintTolerances">getConstraintTolerances()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGInterpolation">getMGInterpolation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getTheta">getTheta()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getConstraintTolerances">getConstraintTolerances()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getConvergedReason">getConvergedReason()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGLevels">getMGLevels()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getThetaEndpoint">getThetaEndpoint()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getConvergedReason">getConvergedReason()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getConvergedReason">getConvergedReason()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGRestriction">getMGRestriction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#getTime">getTime()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getConvergedReason">getConvergedReason()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getConvergedReason">getConvergedReason()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGRScale">getMGRScale()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getTime">getTime()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getConvergedReason">getConvergedReason()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getConvergedReason">getConvergedReason()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGSmoother">getMGSmoother()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getTimeStep">getTimeStep()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getConvergedReason">getConvergedReason()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getConvergenceHistory">getConvergenceHistory()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGSmootherDown">getMGSmootherDown()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#getTimestep">getTimestep()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getConvergenceHistory">getConvergenceHistory()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getConvergenceHistory">getConvergenceHistory()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGSmootherUp">getMGSmootherUp()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getTolerances">getTolerances()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getConvergenceHistory">getConvergenceHistory()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getConvergenceTest">getConvergenceTest()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getMGType">getMGType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getTolerances">getTolerances()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getConvergenceTest">getConvergenceTest()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getConvergenceTest">getConvergenceTest()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getMonitor">getMonitor()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getTolerances">getTolerances()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getConvergenceTest">getConvergenceTest()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getConvergenceTest">getConvergenceTest()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getMonitor">getMonitor()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getTolerances">getTolerances()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getConvergenceTest">getConvergenceTest()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getMonitor">getMonitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getTotalSteps">getTotalSteps()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-</tr>
-<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoordinateDM">getCoordinateDM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getMonitor">getMonitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getMonitor">getMonitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getTransitiveClosure">getTransitiveClosure()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getCoordinateName">getCoordinateName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getMonitor">getMonitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getTransposeNullSpace">getTransposeNullSpace()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoordinates">getCoordinates()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#getMulti">getMulti()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoordinates">getCoordinates()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoordinateSection">getCoordinateSection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getMumpsCntl">getMumpsCntl()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
@@ -2137,7 +2251,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoordinateSection">getCoordinateSection()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoordinatesLocal">getCoordinatesLocal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getMumpsIcntl">getMumpsIcntl()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
@@ -2145,55 +2259,55 @@
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getCoordinatesLocal">getCoordinatesLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getCorners">getCorners()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getMumpsInfo">getMumpsInfo()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getCorners">getCorners()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getCostGradients">getCostGradients()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getMumpsInfog">getMumpsInfog()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#getCPUTime">getCPUTime()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getCostIntegral">getCostIntegral()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getMumpsRinfo">getMumpsRinfo()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getCUDAHandle">getCUDAHandle()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#getCPUTime">getCPUTime()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getMumpsRinfog">getMumpsRinfog()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#getDefaultComm">getDefaultComm()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getCUDAHandle">getCUDAHandle()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#getName">getName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getDefaultGlobalSection">getDefaultGlobalSection()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#getDefaultComm">getDefaultComm()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#getName">getName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getDefaultSection">getDefaultSection()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getDefaultGlobalSection">getDefaultGlobalSection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#getName">getName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
@@ -2201,7 +2315,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getDefaultSF">getDefaultSF()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getDefaultSection">getDefaultSection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getName">getName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
@@ -2209,377 +2323,377 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getDenseArray">getDenseArray()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getNearNullSpace">getNearNullSpace()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getDefaultSF">getDefaultSF()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getNASMNumber">getNASMNumber()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getDenseLocalMatrix">getDenseLocalMatrix()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getDenseArray">getDenseArray()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getNestSubVecs">getNestSubVecs()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getNASMSNES">getNASMSNES()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getDepth">getDepth()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getNormSchedule">getNormSchedule()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getDenseLocalMatrix">getDenseLocalMatrix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getNearNullSpace">getNearNullSpace()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getDepthStratum">getDepthStratum()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getDepth">getDepth()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getNormType">getNormType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getNestSubVecs">getNestSubVecs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#getType">getType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getDepthStratum">getDepthStratum()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getNGS">getNGS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUpdate">getUpdate()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+</tr>
+<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getDiagonal">getDiagonal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getNPC">getNPC()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getNormSchedule">getNormSchedule()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUpdate">getUpdate()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUseEW">getUseEW()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getDiagonalBlock">getDiagonalBlock()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getNullSpace">getNullSpace()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUseEW">getUseEW()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getNormType">getNormType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUseFD">getUseFD()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getDict">getDict()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getNumber">getNumber()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUseFD">getUseFD()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getNPC">getNPC()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUseMF">getUseMF()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getDim">getDim()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getNumFields">getNumFields()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getUseMF">getUseMF()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getNullSpace">getNullSpace()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getValue">getValue()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getDimension">getDimension()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getNumLabels">getNumLabels()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getValue">getValue()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getDM">getDM()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getObjective">getObjective()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getNumber">getNumber()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#getValue">getValue()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getDM">getDM()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getOffset">getOffset()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getDM">getDM()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getNumFields">getNumFields()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getValue">getValue()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getDM">getDM()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getOffsetRange">getOffsetRange()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getDM">getDM()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getNumLabels">getNumLabels()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#getValueReal">getValueReal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getDM">getDM()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getOperators">getOperators()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getDM">getDM()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getObjective">getObjective()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getValues">getValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getDof">getDof()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getOperators">getOperators()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getDM">getDM()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getOffset">getOffset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getValues">getValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getDof">getDof()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getDof">getDof()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getOffsetRange">getOffsetRange()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getValuesCSR">getValuesCSR()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getDuration">getDuration()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getDof">getDof()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getOperators">getOperators()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getVariableBounds">getVariableBounds()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getElements">getElements()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getOperators">getOperators()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getVecArray">getVecArray()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getElementType">getElementType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getVecLeft">getVecLeft()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getVecClosure">getVecClosure()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#getEntries">getEntries()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#getVecs">getVecs()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getVecLeft">getVecLeft()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getEquationType">getEquationType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#getVersion">getVersion()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#getVecs">getVecs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getFactorMatrix">getFactorMatrix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#getVersionInfo">getVersionInfo()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#getVersion">getVersion()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getFactorSolverPackage">getFactorSolverPackage()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getVertexNumbering">getVertexNumbering()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#getVersionInfo">getVersionInfo()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASCoarseSolve">getFASCoarseSolve()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getOrdering">getOrdering()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getVertexNumbering">getVertexNumbering()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASCycleSNES">getFASCycleSNES()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getVIInactiveSet">getVIInactiveSet()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASCycleSNES">getFASCycleSNES()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASInjection">getFASInjection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOrdering">getOrdering()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getOptionsPrefix">getOptionsPrefix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#getVisible">getVisible()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASInjection">getFASInjection()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASInterpolation">getFASInterpolation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipIS">getOwnershipIS()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getOrdering">getOrdering()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getWorkVecs">getWorkVecs()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASInterpolation">getFASInterpolation()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASLevels">getFASLevels()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRange">getOwnershipRange()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOrdering">getOrdering()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#ghost_corners">ghost_corners</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASLevels">getFASLevels()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASRestriction">getFASRestriction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getOwnershipRange">getOwnershipRange()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipIS">getOwnershipIS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#ghost_ranges">ghost_ranges</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASRestriction">getFASRestriction()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASSmoother">getFASSmoother()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRangeColumn">getOwnershipRangeColumn()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRange">getOwnershipRange()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#GHOSTED">GHOSTED</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASSmoother">getFASSmoother()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASSmootherDown">getFASSmootherDown()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getOwnershipRanges">getOwnershipRanges()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getOwnershipRange">getOwnershipRange()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#ghostUpdate">ghostUpdate()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASSmootherDown">getFASSmootherDown()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASSmootherUp">getFASSmootherUp()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRanges">getOwnershipRanges()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRangeColumn">getOwnershipRangeColumn()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#ghostUpdateBegin">ghostUpdateBegin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFASSmootherUp">getFASSmootherUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getOwnershipRanges">getOwnershipRanges()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldComponents">getFieldComponents()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getOwnershipRanges">getOwnershipRanges()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#ghostUpdateEnd">ghostUpdateEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldComponents">getFieldComponents()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldConstraintDof">getFieldConstraintDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRangesColumn">getOwnershipRangesColumn()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRanges">getOwnershipRanges()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#GL">GL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#GLLE">GLLE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldConstraintDof">getFieldConstraintDof()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldConstraintIndices">getFieldConstraintIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getParamsEW">getParamsEW()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#getOwnershipRanges">getOwnershipRanges()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.InfoType-class.html#GLOBAL_MAX">GLOBAL_MAX</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.InfoType-class.html">InfoType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldConstraintIndices">getFieldConstraintIndices()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldDof">getFieldDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getPartitioner">getPartitioner()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getOwnershipRangesColumn">getOwnershipRangesColumn()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.InfoType-class.html#GLOBAL_SUM">GLOBAL_SUM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.InfoType-class.html">InfoType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldDof">getFieldDof()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#getPathArch">getPathArch()</a><br />
-<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#globalToLocal">globalToLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-</tr>
-<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getFieldName">getFieldName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#getPathArchPETSc">getPathArchPETSc()</a><br />
-<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#globalToNatural">globalToNatural()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getParamsEW">getParamsEW()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#globalToLocal">globalToLocal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#getFieldName">getFieldName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getPC">getPC()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#GLTR">GLTR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getPartitioner">getPartitioner()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#globalToNatural">globalToNatural()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#getFieldSplitSubKSP">getFieldSplitSubKSP()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getPCSide">getPCSide()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#getPathArch">getPathArch()</a><br />
+<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#GMRES">GMRES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#getFileMode">getFileMode()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#getPerfInfo">getPerfInfo()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#getPathArchPETSc">getPathArchPETSc()</a><br />
+<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#gnorm">gnorm</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#getFileName">getFileName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getPointSF">getPointSF()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getPC">getPC()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#GPCG">GPCG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#getFlops">getFlops()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPostStep">getPostStep()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getPCSide">getPCSide()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#gradient">gradient</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#getFormat">getFormat()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPreStep">getPreStep()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#getPerfInfo">getPerfInfo()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#GROPPCG">GROPPCG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#getFunction">getFunction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getPrevTime">getPrevTime()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getPointGlobal">getPointGlobal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#gtol">gtol</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFunction">getFunction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#getProblemType">getProblemType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getPointGlobalField">getPointGlobalField()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#guess_knoll">guess_knoll</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFunctionEvaluations">getFunctionEvaluations()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getProcSizes">getProcSizes()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getPointLocal">getPointLocal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#guess_nonzero">guess_nonzero</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getFunctionValue">getFunctionValue()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#getPythonContext">getPythonContext()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#getFunctionNorm">getFunctionNorm()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#getPointLocalField">getPointLocalField()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#getGhostCorners">getGhostCorners()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#getPythonContext">getPythonContext()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#getFunctionValue">getFunctionValue()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#getPointSF">getPointSF()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
</table>
@@ -2590,30 +2704,38 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#HALF">HALF</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#hasName">hasName()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#history">history</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#HALF_SIZE">HALF_SIZE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#hasNPC">hasNPC()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#history">history</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#HALF_SIZE">HALF_SIZE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#handle">handle</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#HDF5">HDF5</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#HYPRE">HYPRE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#handle">handle</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#hasConstant">hasConstant()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#HDF5_VIZ">HDF5_VIZ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#HYPRESSTRUCT">HYPRESSTRUCT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#hasConstant">hasConstant()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.Type-class.html#HASH">HASH</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#HERMITIAN">HERMITIAN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#HYPRESTRUCT">HYPRESTRUCT</a><br />
@@ -2626,13 +2748,6 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#hasName">hasName()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#history">history</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="I">I</a></h2></td>
@@ -2643,39 +2758,39 @@
<span class="index-where">(in <a href="petsc4py.PETSc._Mat_Stencil-class.html" onclick="show_private();">_Mat_Stencil</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#INFINITY">INFINITY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isAssembled">isAssembled()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#IS">IS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#IBCGS">IBCGS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#info">info</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#isaxpy">isaxpy()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isAssembled">isAssembled()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#ICC">ICC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#infoAllow">infoAllow()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#isFinalized">isFinalized()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#isaxpy">isaxpy()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#id">id</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.InfoType-class.html">InfoType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isHermitian">isHermitian()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#isFinalized">isFinalized()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#id">id</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py-module.html#init">init()</a><br />
<span class="index-where">(in <a href="petsc4py-module.html">petsc4py</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isHermitianKnown">isHermitianKnown()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isHermitian">isHermitian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
@@ -2683,55 +2798,55 @@
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#INITIAL_FINAL_ONLY">INITIAL_FINAL_ONLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#isIdentity">isIdentity()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isHermitianKnown">isHermitianKnown()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#identity">identity</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#INITIAL_ONLY">INITIAL_ONLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#isInitialized">isInitialized()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#isIdentity">isIdentity()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#IGNORE_LOWER_TRIANGULAR">IGNORE_LOWER_TRIANGULAR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#INSERT">INSERT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#isPermutation">isPermutation()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#isInitialized">isInitialized()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Option-class.html#IGNORE_NEGATIVE_INDICES">IGNORE_NEGATIVE_INDICES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#INSERT_ALL">INSERT_ALL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#isset">isset()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#isPermutation">isPermutation()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#IGNORE_OFF_PROC_ENTRIES">IGNORE_OFF_PROC_ENTRIES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#INSERT_ALL_VALUES">INSERT_ALL_VALUES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#isSorted">isSorted()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#isset">isset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Option-class.html#IGNORE_OFF_PROC_ENTRIES">IGNORE_OFF_PROC_ENTRIES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#INSERT_BC">INSERT_BC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isStructurallySymmetric">isStructurallySymmetric()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#isSorted">isSorted()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#IGNORE_ZERO_ENTRIES">IGNORE_ZERO_ENTRIES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#INSERT_BC_VALUES">INSERT_BC_VALUES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isSymmetric">isSymmetric()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isStructurallySymmetric">isStructurallySymmetric()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
@@ -2739,7 +2854,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#INSERT_VALUES">INSERT_VALUES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isSymmetricKnown">isSymmetricKnown()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isSymmetric">isSymmetric()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
@@ -2747,7 +2862,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#insertCone">insertCone()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isTranspose">isTranspose()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isSymmetricKnown">isSymmetricKnown()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
@@ -2755,43 +2870,51 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TS.EquationType-class.html">EquationType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#insertConeOrientation">insertConeOrientation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#ITERATING">ITERATING</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#isTranspose">isTranspose()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#Import">Import()</a><br />
<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#iterating">iterating</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#ITERATING">ITERATING</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#ImportPETSc">ImportPETSc()</a><br />
<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.ASMType-class.html#INTERPOLATE">INTERPOLATE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.ASMType-class.html">ASMType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#ITERATING">ITERATING</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#iterating">iterating</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#INBLOCKS">INBLOCKS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GASMType-class.html#INTERPOLATE">INTERPOLATE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.GASMType-class.html">GASMType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#iterating">iterating</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#ITERATING">ITERATING</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#increaseOverlap">increaseOverlap()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ExactFinalTime-class.html#INTERPOLATE">INTERPOLATE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.ExactFinalTime-class.html">ExactFinalTime</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#iterating">iterating</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#incRef">incRef()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#interpolate">interpolate()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#ITERATING">ITERATING</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#incRef">incRef()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#incrementTabLevel">incrementTabLevel()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#interpolate">interpolate()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
@@ -2799,57 +2922,50 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#incrementTabLevel">incrementTabLevel()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#incrementTimestep">incrementTimestep()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA.InterpolationType-class.html">InterpolationType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#ITERATING">ITERATING</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#incrementTimestep">incrementTimestep()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Mat_Stencil-class.html#index">index</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._Mat_Stencil-class.html" onclick="show_private();">_Mat_Stencil</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#interval">interval</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#iterating">iterating</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Mat_Stencil-class.html#index">index</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._Mat_Stencil-class.html" onclick="show_private();">_Mat_Stencil</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#indices">indices</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#invertBlockDiagonal">invertBlockDiagonal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#its">its</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#indices">indices</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#indices">indices</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#invertPermutation">invertPermutation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#its">its</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#indices">indices</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#INF">INF</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#IPM">IPM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#its">its</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#INF">INF</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html">IS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#INFINITY">INFINITY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#IS">IS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html">IS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
</table>
@@ -3016,9 +3132,17 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MAIJ">MAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#max_time">max_time</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJ">MPIAIJ</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapMode-class.html">MapMode</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#MAX_VALUES">MAX_VALUES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJCUSPARSE">MPIAIJCUSPARSE</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJCRL">MPIAIJCRL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
@@ -3026,350 +3150,328 @@
<span class="index-where">(in <a href="petsc4py.PETSc.AO.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#maxPointwiseDivide">maxPointwiseDivide()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJPERM">MPIAIJPERM</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJCUSP">MPIAIJCUSP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapType-class.html">MapType</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#markBoundaryFaces">markBoundaryFaces()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#maxpy">maxpy()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJVIENNACL">MPIAIJVIENNACL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJCUSPARSE">MPIAIJCUSPARSE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#markBoundaryFaces">markBoundaryFaces()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapMode-class.html#MASK">MASK</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.MapMode-class.html">MapMode</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#mDot">mDot()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIBAIJ">MPIBAIJ</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJPERM">MPIAIJPERM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapType-class.html#MASK">MASK</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.MapType-class.html">MapType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html">Mat</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#mDotBegin">mDotBegin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIBSTRM">MPIBSTRM</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJVIENNACL">MPIAIJVIENNACL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html">Mat</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#MAT">MAT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#mDotEnd">mDotEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#MPICUSP">MPICUSP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIBAIJ">MPIBAIJ</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#MAT">MAT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#mat_op">mat_op</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO.Type-class.html#MEMORYSCALABLE">MEMORYSCALABLE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIDENSE">MPIDENSE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#MPICUSP">MPICUSP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#mat_op">mat_op</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#mat_pc">mat_pc</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MFFD">MFFD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIMAIJ">MPIMAIJ</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIDENSE">MPIDENSE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#mat_pc">mat_pc</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ExactFinalTime-class.html#MATCHSTEP">MATCHSTEP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.ExactFinalTime-class.html">ExactFinalTime</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#MG">MG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPISBAIJ">MPISBAIJ</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIMAIJ">MPIMAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ExactFinalTime-class.html#MATCHSTEP">MATCHSTEP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.ExactFinalTime-class.html">ExactFinalTime</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGType-class.html">MGType</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#MATHEMATICA">MATHEMATICA</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGCycleType-class.html">MGCycleType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPISBSTRM">MPISBSTRM</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPISBAIJ">MPISBAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#MATHEMATICA">MATHEMATICA</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#MATLAB">MATLAB</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#MIMEX">MIMEX</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGType-class.html">MGType</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#MPIVIENNACL">MPIVIENNACL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#MATLAB">MATLAB</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#min">min()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matMult">matMult()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#MIMEX">MIMEX</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#MS">MS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matMult">matMult()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matMultNumeric">matMultNumeric()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#MINRES">MINRES</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#min">min()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#mtDot">mtDot()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matMultNumeric">matMultNumeric()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matMultSymbolic">matMultSymbolic()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#MIRROR">MIRROR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#MINRES">MINRES</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#mtDotBegin">mtDotBegin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matMultSymbolic">matMultSymbolic()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matSolve">matSolve()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#ML">ML</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#MIRROR">MIRROR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#mtDotEnd">mtDotEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matSolve">matSolve()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#MOAB">MOAB</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#mult">mult()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-</tr>
-<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#matTransposeMult">matTransposeMult()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multAdd">multAdd()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#ML">ML</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#mult">mult()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#MAX">MAX</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#monitor">monitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multHermitian">multHermitian()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#MOAB">MOAB</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multAdd">multAdd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#MAX">MAX</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#monitor">monitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multHermitianAdd">multHermitianAdd()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multHermitian">multHermitian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#max">max()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#monitor">monitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#MULTIPLICATIVE">MULTIPLICATIVE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#monitor">monitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multHermitianAdd">multHermitianAdd()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#max_funcs">max_funcs</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#MPI">MPI</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGType-class.html#MULTIPLICATIVE">MULTIPLICATIVE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGType-class.html">MGType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#monitor">monitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#MULTIPLICATIVE">MULTIPLICATIVE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#max_it">max_it</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIADJ">MPIADJ</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multTranspose">multTranspose()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#monitor">monitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGType-class.html#MULTIPLICATIVE">MULTIPLICATIVE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGType-class.html">MGType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#max_it">max_it</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJ">MPIAIJ</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multTransposeAdd">multTransposeAdd()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#MPI">MPI</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multTranspose">multTranspose()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#max_steps">max_steps</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJCRL">MPIAIJCRL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIADJ">MPIADJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"> </td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#multTransposeAdd">multTransposeAdd()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#max_time">max_time</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#MPIAIJCUSP">MPIAIJCUSP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="N">N</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
+</table>
+</td></tr>
+<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="N">N</a></h2></td>
+<td valign="top">
+<table class="link-index" width="100%" border="1">
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#N1">N1</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#NINFINITY">NINFINITY</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_FROBENIUS">NORM_FROBENIUS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#NM">NM</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_INFINITY">NORM_INFINITY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#N12">N12</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#NLS">NLS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_INFINITY">NORM_INFINITY</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#NN">NN</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_INITIAL_FINAL_ONLY">NORM_INITIAL_FINAL_ONLY</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#N2">N2</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#NM">NM</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_INITIAL_FINAL_ONLY">NORM_INITIAL_FINAL_ONLY</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NO">NO</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_INITIAL_ONLY">NORM_INITIAL_ONLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#name">name</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#NN">NN</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_INITIAL_ONLY">NORM_INITIAL_ONLY</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NO_OFF_PROC_ENTRIES">NO_OFF_PROC_ENTRIES</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_MAX">NORM_MAX</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#name">name</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NO">NO</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NO_OFF_PROC_ZERO_ROWS">NO_OFF_PROC_ZERO_ROWS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NORM_NATURAL">NORM_NATURAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_MAX">NORM_MAX</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#name">name</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NO_OFF_PROC_ENTRIES">NO_OFF_PROC_ENTRIES</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NORM_NATURAL">NORM_NATURAL</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#NOFORMAT">NOFORMAT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NORM_NONE">NORM_NONE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#name">name</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NO_OFF_PROC_ZERO_ROWS">NO_OFF_PROC_ZERO_ROWS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NORM_NONE">NORM_NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#NASH">NASH</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#NOFORMAT">NOFORMAT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#NONE">NONE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_NONE">NORM_NONE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NASM">NASM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#NONE">NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NONE">NONE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NORM_PRECONDITIONED">NORM_PRECONDITIONED</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#NATIVE">NATIVE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NONE">NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#NONE">NONE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#norm_type">norm_type</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NATURAL">NATURAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#NONE">NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.ASMType-class.html#NONE">NONE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.ASMType-class.html">ASMType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NORM_UNPRECONDITIONED">NORM_UNPRECONDITIONED</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#NATURAL">NATURAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.ASMType-class.html#NONE">NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.ASMType-class.html">ASMType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GASMType-class.html#NONE">NONE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.GASMType-class.html">GASMType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#NORMAL">NORMAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#naturalToGlobal">naturalToGlobal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GASMType-class.html#NONE">NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.GASMType-class.html">GASMType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#NONE">NONE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#NORMALHERMITIAN">NORMALHERMITIAN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NCG">NCG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#NONE">NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NONE">NONE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#normalize">normalize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#ND">ND</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NONE">NONE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ProblemType-class.html#NONLINEAR">NONLINEAR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.ProblemType-class.html">ProblemType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#normBegin">normBegin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#NEST">NEST</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ProblemType-class.html#NONLINEAR">NONLINEAR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.ProblemType-class.html">ProblemType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#NONZERO">NONZERO</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#normEnd">normEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#NEST">NEST</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#NONZERO">NONZERO</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#norm">norm</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#NETCDF">NETCDF</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#norm">norm</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#NETWORK">NETWORK</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#norm">norm</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#NETWORK">NETWORK</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_DIAGONALS">NEW_DIAGONALS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#norm">norm()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html">NormType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_DIAGONALS">NEW_DIAGONALS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_NONZERO_ALLOCATION_ERR">NEW_NONZERO_ALLOCATION_ERR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#norm">norm()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
@@ -3377,7 +3479,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_NONZERO_ALLOCATION_ERR">NEW_NONZERO_ALLOCATION_ERR</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_NONZERO_LOCATION_ERR">NEW_NONZERO_LOCATION_ERR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_1">NORM_1</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
@@ -3385,7 +3487,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_NONZERO_LOCATION_ERR">NEW_NONZERO_LOCATION_ERR</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_NONZERO_LOCATIONS">NEW_NONZERO_LOCATIONS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_1_AND_2">NORM_1_AND_2</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
@@ -3393,15 +3495,15 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#NEW_NONZERO_LOCATIONS">NEW_NONZERO_LOCATIONS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NEWTONLS">NEWTONLS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_2">NORM_2</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#NTL">NTL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NEWTONLS">NEWTONLS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NEWTONTR">NEWTONTR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_ALWAYS">NORM_ALWAYS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
@@ -3409,7 +3511,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NEWTONTR">NEWTONTR</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NGMRES">NGMRES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#NORM_DEFAULT">NORM_DEFAULT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
@@ -3417,7 +3519,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NGMRES">NGMRES</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NGS">NGS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_DEFAULT">NORM_DEFAULT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
@@ -3425,12 +3527,19 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#NGS">NGS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#NINFINITY">NINFINITY</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#NORM_FINAL_ONLY">NORM_FINAL_ONLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#NLS">NLS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#NORM_FROBENIUS">NORM_FROBENIUS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"> </td>
+</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="O">O</a></h2></td>
@@ -3484,167 +3593,190 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA.ElementType-class.html#P1">P1</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA.ElementType-class.html">ElementType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#PINFINITY">PINFINITY</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#PRECONDITIONED">PRECONDITIONED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPECR">PIPECR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#prefixPop">prefixPop()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PartitionerType-class.html#PARMETIS">PARMETIS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PartitionerType-class.html">PartitionerType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPECG">PIPECG</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPEFCG">PIPEFCG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#prefix">prefix</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#prefixPush">prefixPush()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#PARMS">PARMS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPECGRR">PIPECGRR</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPEFGMRES">PIPEFGMRES</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PREONLY">PREONLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#prefix">prefix</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPECR">PIPECR</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPEGCR">PIPEGCR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#prefixPop">prefixPop()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#Print">Print()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PartitionerType-class.html">PartitionerType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPEFCG">PIPEFCG</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#prefixPush">prefixPush()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#placeArray">placeArray()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#printfASCII">printfASCII()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#PATCH">PATCH</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPEFGMRES">PIPEFGMRES</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PREONLY">PREONLY</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#PLEX">PLEX</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#printfASCIISynchronized">printfASCIISynchronized()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#PBJACOBI">PBJACOBI</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPEGCR">PIPEGCR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#Print">Print()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseDivide">pointwiseDivide()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#problem_type">problem_type</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#pc">pc</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#placeArray">placeArray()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMax">pointwiseMax()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#problem_type">problem_type</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ProblemType-class.html">ProblemType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html">PC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#PLEX">PLEX</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ProblemType-class.html">ProblemType</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMaxAbs">pointwiseMaxAbs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#proc_sizes">proc_sizes</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#pc_side">pc_side</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseDivide">pointwiseDivide()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMin">pointwiseMin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#proc_sizes">proc_sizes</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#PSEUDO">PSEUDO</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#PD">PD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMax">pointwiseMax()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMult">pointwiseMult()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#PSEUDO">PSEUDO</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#PtAP">PtAP()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#PERIODIC">PERIODIC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMaxAbs">pointwiseMaxAbs()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#pop">pop()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#push">push()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#permutation">permutation</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMin">pointwiseMin()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#pushErrorHandler">pushErrorHandler()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#popASCIISynchronized">popASCIISynchronized()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#pushASCIISynchronized">pushASCIISynchronized()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#permute">permute()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#pointwiseMult">pointwiseMult()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#pushFormat">pushFormat()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#popASCIITab">popASCIITab()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#pushASCIITab">pushASCIITab()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#permute">permute()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#pop">pop()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#pushGroup">pushGroup()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#popErrorHandler">popErrorHandler()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#pushErrorHandler">pushErrorHandler()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#permute">permute()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#popErrorHandler">popErrorHandler()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PYTHON">PYTHON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#popFormat">popFormat()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#pushFormat">pushFormat()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html">PETSc</a><br />
<span class="index-where">(in <a href="petsc4py-module.html">petsc4py</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#popFormat">popFormat()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#PYTHON">PYTHON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#popGroup">popGroup()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#pushGroup">pushGroup()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#petsc2app">petsc2app()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#popGroup">popGroup()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#PYTHON">PYTHON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#popSignalHandler">popSignalHandler()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PYTHON">PYTHON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py-module.html">petsc4py</a></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#POSITIVE_DEFINITE">POSITIVE_DEFINITE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#PYTHON">PYTHON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#PYTHON">PYTHON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#PFMG">PFMG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#POUNDERS">POUNDERS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#PYTHON">PYTHON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#PYTHON">PYTHON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PGMRES">PGMRES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#PREALLOCATOR">PREALLOCATOR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#PYTHON">PYTHON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#PINFINITY">PINFINITY</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#PRECONDITIONED">PRECONDITIONED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#PYTHON">PYTHON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPECG">PIPECG</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#prefix">prefix</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"> </td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#PIPECGRR">PIPECGRR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#prefix">prefix</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
</table>
@@ -3684,144 +3816,175 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html#R">R</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Side-class.html">Side</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#REDUNDANT">REDUNDANT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#restoreSubVector">restoreSubVector()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#refineHierarchy">refineHierarchy()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#RICHARDSON">RICHARDSON</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#R">R</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#REDUNDANT">REDUNDANT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.ASMType-class.html#RESTRICT">RESTRICT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.ASMType-class.html">ASMType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#registerCitation">registerCitation()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html#RIGHT">RIGHT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Side-class.html">Side</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random.Type-class.html#RAND">RAND</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GASMType-class.html#RESTRICT">RESTRICT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.GASMType-class.html">GASMType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#remove">remove()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#RK">RK</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random.Type-class.html#RAND48">RAND48</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#refine">refine()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#removeLabel">removeLabel()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#retrieveValues">retrieveValues()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK1FE">RK1FE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random.Type-class.html#RANDER48">RANDER48</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#refineHierarchy">refineHierarchy()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#REVERSE">REVERSE</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#reorderForNonzeroDiagonal">reorderForNonzeroDiagonal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK2A">RK2A</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html">Random</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#registerCitation">registerCitation()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#REVERSE_LOCAL">REVERSE_LOCAL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#reset">reset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK3">RK3</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#ranges">ranges</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#remove">remove()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#RICHARDSON">RICHARDSON</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#reset">reset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK3BS">RK3BS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#rank">rank</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#removeLabel">removeLabel()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html#RIGHT">RIGHT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Side-class.html">Side</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#reset">reset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK4">RK4</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#RCM">RCM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#reorderForNonzeroDiagonal">reorderForNonzeroDiagonal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#RK">RK</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#reset">reset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK5BS">RK5BS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#READ">READ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#reset">reset()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#rollBack">rollBack()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#reset">reset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK5DP">RK5DP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#realPart">realPart()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#reset">reset()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ROSW">ROSW</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#reset">reset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#RK5F">RK5F</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#reason">reason</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#reset">reset()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#ROW_ORIENTED">ROW_ORIENTED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#resetArray">resetArray()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#reason">reason</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#reset">reset()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#ROWLENGTH">ROWLENGTH</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#restoreCUDAHandle">restoreCUDAHandle()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#rollBack">rollBack()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#reset">reset()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#rtol">rtol</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#restoreGlobalVec">restoreGlobalVec()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#ROSW">ROSW</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#reason">reason</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#reset">reset()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#rtol">rtol</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#restoreLocalSubMatrix">restoreLocalSubMatrix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#ROW_ORIENTED">ROW_ORIENTED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#reason">reason</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#resetArray">resetArray()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#rtol">rtol</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#restoreLocalVec">restoreLocalVec()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#ROWLENGTH">ROWLENGTH</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#reciprocal">reciprocal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#restoreCUDAHandle">restoreCUDAHandle()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#restoreSubVector">restoreSubVector()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#RUNGE_KUTTA">RUNGE_KUTTA</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#rtol">rtol</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#REDISTRIBUTE">REDISTRIBUTE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#restoreLocalSubMatrix">restoreLocalSubMatrix()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.ASMType-class.html#RESTRICT">RESTRICT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.ASMType-class.html">ASMType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#rtol">rtol</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#REDUNDANT">REDUNDANT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GASMType-class.html#RESTRICT">RESTRICT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.GASMType-class.html">GASMType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#rtol">rtol</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#REDUNDANT">REDUNDANT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#retrieveValues">retrieveValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#RUNGE_KUTTA">RUNGE_KUTTA</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#REVERSE">REVERSE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
+<td width="33%" class="link-index"> </td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#refine">refine()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#REVERSE_LOCAL">REVERSE_LOCAL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
</table>
@@ -3832,273 +3995,265 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html#S">S</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Side-class.html">Side</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGAMGLevels">setGAMGLevels()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGAMGType">setGAMGType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SACUSP">SACUSP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGAMGSmooths">setGAMGSmooths()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGASMOverlap">setGASMOverlap()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SACUSPPOLY">SACUSPPOLY</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGAMGType">setGAMGType()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGASMType">setGASMType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setType">setType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html#SAME">SAME</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGASMOverlap">setGASMOverlap()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setGlobalToLocal">setGlobalToLocal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SAME">SAME</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGASMType">setGASMType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setGlobalToLocalVecScatter">setGlobalToLocalVecScatter()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html#SAME_NONZERO_PATTERN">SAME_NONZERO_PATTERN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setGlobalToLocal">setGlobalToLocal()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setGlobalVector">setGlobalVector()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html#SAME_NZ">SAME_NZ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setGlobalToLocalVecScatter">setGlobalToLocalVecScatter()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setUnfactored">setUnfactored()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setGMRESRestart">setGMRESRestart()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#SAWS">SAWS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setGlobalVector">setGlobalVector()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setUniformCoordinates">setUniformCoordinates()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setGradient">setGradient()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SBAIJ">SBAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setGMRESRestart">setGMRESRestart()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SBSTRM">SBSTRM</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setGradient">setGradient()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setGradientNorm">setGradientNorm()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#scale">scale()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setGradientNorm">setGradientNorm()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setGraph">setGraph()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#scale">scale()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setGraph">setGraph()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setHessian">setHessian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SCATTER">SCATTER</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setHessian">setHessian()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPREDiscreteCurl">setHYPREDiscreteCurl()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setUnfactored">setUnfactored()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html">Scatter</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPREDiscreteCurl">setHYPREDiscreteCurl()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPREDiscreteGradient">setHYPREDiscreteGradient()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setUniformCoordinates">setUniformCoordinates()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#scatter">scatter()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPREDiscreteGradient">setHYPREDiscreteGradient()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPRESetAlphaPoissonMatrix">setHYPRESetAlphaPoissonMatrix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#scatter">scatter()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPRESetAlphaPoissonMatrix">setHYPRESetAlphaPoissonMatrix()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPRESetBetaPoissonMatrix">setHYPRESetBetaPoissonMatrix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#SCATTER_FORWARD">SCATTER_FORWARD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPRESetBetaPoissonMatrix">setHYPRESetBetaPoissonMatrix()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPRESetEdgeConstantVectors">setHYPRESetEdgeConstantVectors()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#SCATTER_FORWARD_LOCAL">SCATTER_FORWARD_LOCAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPRESetEdgeConstantVectors">setHYPRESetEdgeConstantVectors()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPREType">setHYPREType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setUp">setUp()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#SCATTER_LOCAL">SCATTER_LOCAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setHYPREType">setHYPREType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setUp">setUp()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setI2Function">setI2Function()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#SCATTER_REVERSE">SCATTER_REVERSE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setI2Jacobian">setI2Jacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#SCATTER_REVERSE_LOCAL">SCATTER_REVERSE_LOCAL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setIdentity">setIdentity()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUpdate">setUpdate()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUp">setUp()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#SCATTER_REVERSE_LOCAL">SCATTER_REVERSE_LOCAL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#scatterBegin">scatterBegin()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setIFunction">setIFunction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setUpOnBlocks">setUpOnBlocks()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#scatterBegin">scatterBegin()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#scatterEnd">scatterEnd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setIJacobian">setIJacobian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setUpOnBlocks">setUpOnBlocks()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#scatterEnd">scatterEnd()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setIndices">setIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setUseAmat">setUseAmat()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#SCHUR">SCHUR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setInitial">setInitial()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUseEW">setUseEW()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setUp">setUp()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#SCHUR">SCHUR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SCHURCOMPLEMENT">SCHURCOMPLEMENT</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setInitialGuess">setInitialGuess()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUseFD">setUseFD()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUpdate">setUpdate()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SCHURCOMPLEMENT">SCHURCOMPLEMENT</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurFactType-class.html">SchurFactType</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setInitialGuessKnoll">setInitialGuessKnoll()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setUseFischerGuess">setUseFischerGuess()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setUpOnBlocks">setUpOnBlocks()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurFactType-class.html">SchurFactType</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setInitialGuessNonzero">setInitialGuessNonzero()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUseMF">setUseMF()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setUpOnBlocks">setUpOnBlocks()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setInitialTimeStep">setInitialTimeStep()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValue">setValue()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html">Section</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setInitialTrustRegionRadius">setInitialTrustRegionRadius()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#setValue">setValue()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setUseAmat">setUseAmat()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#seed">seed</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setInterpolationType">setInterpolationType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValue">setValue()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUseEW">setUseEW()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurPreType-class.html#SELF">SELF</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#setInterval">setInterval()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValueBlockedStencil">setValueBlockedStencil()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUseFD">setUseFD()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurPreType-class.html#SELFP">SELFP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setIterationNumber">setIterationNumber()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValueLocal">setValueLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setUseFischerGuess">setUseFischerGuess()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#SEQ">SEQ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setIterationNumber">setIterationNumber()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValueLocal">setValueLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setUseMF">setUseMF()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQAIJ">SEQAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setJacobian">setJacobian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValues">setValues()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValue">setValue()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
@@ -4106,687 +4261,727 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setJacobian">setJacobian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValues">setValues()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#setValue">setValue()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQAIJCUSP">SEQAIJCUSP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setJacobianDesign">setJacobianDesign()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlocked">setValuesBlocked()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValue">setValue()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQAIJCUSPARSE">SEQAIJCUSPARSE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setJacobianState">setJacobianState()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValuesBlocked">setValuesBlocked()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValueBlockedStencil">setValueBlockedStencil()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQAIJPERM">SEQAIJPERM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setKSP">setKSP()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedCSR">setValuesBlockedCSR()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValueLocal">setValueLocal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQAIJVIENNACL">SEQAIJVIENNACL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setLabelOutput">setLabelOutput()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setKSPComputeOperators">setKSPComputeOperators()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedIJV">setValuesBlockedIJV()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValueLocal">setValueLocal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQBAIJ">SEQBAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setLabelValue">setLabelValue()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setLabelOutput">setLabelOutput()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocal">setValuesBlockedLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQBSTRM">SEQBSTRM</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setLGMap">setLGMap()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValues">setValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValuesBlockedLocal">setValuesBlockedLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQCUFFT">SEQCUFFT</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setLGMap">setLGMap()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setLabelValue">setLabelValue()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValues">setValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocalCSR">setValuesBlockedLocalCSR()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#SEQCUSP">SEQCUSP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setLMVMH0">setLMVMH0()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocalIJV">setValuesBlockedLocalIJV()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setLGMap">setLGMap()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlocked">setValuesBlocked()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQDENSE">SEQDENSE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToGlobal">setLocalToGlobal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocalRCV">setValuesBlockedLocalRCV()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setLGMap">setLGMap()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValuesBlocked">setValuesBlocked()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQMAIJ">SEQMAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToGlobalVecScatter">setLocalToGlobalVecScatter()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedRCV">setValuesBlockedRCV()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setLMVMH0">setLMVMH0()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedCSR">setValuesBlockedCSR()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQSBAIJ">SEQSBAIJ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToLocal">setLocalToLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesCSR">setValuesCSR()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SEQSBSTRM">SEQSBSTRM</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToLocalVecScatter">setLocalToLocalVecScatter()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToGlobal">setLocalToGlobal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesIJV">setValuesIJV()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedIJV">setValuesBlockedIJV()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#SEQVIENNACL">SEQVIENNACL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalVector">setLocalVector()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToGlobalVecScatter">setLocalToGlobalVecScatter()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocal">setValuesLocal()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocal">setValuesBlockedLocal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#set">set()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setMatrix">setMatrix()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToLocal">setLocalToLocal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValuesLocal">setValuesLocal()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValuesBlockedLocal">setValuesBlockedLocal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#setActive">setActive()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setMatType">setMatType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocalCSR">setValuesLocalCSR()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalToLocalVecScatter">setLocalToLocalVecScatter()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocalCSR">setValuesBlockedLocalCSR()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#setActive">setActive()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMaxFunctionEvaluations">setMaxFunctionEvaluations()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocalIJV">setValuesLocalIJV()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setLocalVector">setLocalVector()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocalIJV">setValuesBlockedLocalIJV()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#setActive">setActive()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMaxLinearSolveFailures">setMaxLinearSolveFailures()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocalRCV">setValuesLocalRCV()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setMatClosure">setMatClosure()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedLocalRCV">setValuesBlockedLocalRCV()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#setActiveAll">setActiveAll()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMaxNonlinearStepFailures">setMaxNonlinearStepFailures()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesRCV">setValuesRCV()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setMatrix">setMatrix()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesBlockedRCV">setValuesBlockedRCV()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setAdjacencyUseAnchors">setAdjacencyUseAnchors()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setMatType">setMatType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesCSR">setValuesCSR()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setAdjacencyUseClosure">setAdjacencyUseClosure()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxSNESFailures">setMaxSNESFailures()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValueStencil">setValueStencil()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMaxFunctionEvaluations">setMaxFunctionEvaluations()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesIJV">setValuesIJV()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setAdjacencyUseCone">setAdjacencyUseCone()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxStepRejections">setMaxStepRejections()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setVariableBounds">setVariableBounds()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMaxLinearSolveFailures">setMaxLinearSolveFailures()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocal">setValuesLocal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setAlphaParams">setAlphaParams()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxSteps">setMaxSteps()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setVariableBounds">setVariableBounds()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMaxNonlinearStepFailures">setMaxNonlinearStepFailures()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setValuesLocal">setValuesLocal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setAlphaRadius">setAlphaRadius()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxTime">setMaxTime()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxSNESFailures">setMaxSNESFailures()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setVecType">setVecType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocalCSR">setValuesLocalCSR()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setAppCtx">setAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGCyclesOnLevel">setMGCyclesOnLevel()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#setVisible">setVisible()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxStepRejections">setMaxStepRejections()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocalIJV">setValuesLocalIJV()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setAppCtx">setAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGInterpolation">setMGInterpolation()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html">SF</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxSteps">setMaxSteps()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesLocalRCV">setValuesLocalRCV()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setAppCtx">setAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGR">setMGR()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#shape">shape</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMaxTime">setMaxTime()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValuesRCV">setValuesRCV()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setAppCtx">setAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGRestriction">setMGRestriction()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGCycleType">setMGCycleType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#SHARED">SHARED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setValueStencil">setValueStencil()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setAppCtx">setAppCtx()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGRhs">setMGRhs()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGCycleTypeOnLevel">setMGCycleTypeOnLevel()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#SHELL">SHELL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setVariableBounds">setVariableBounds()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setArray">setArray()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGRScale">setMGRScale()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGInterpolation">setMGInterpolation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SHELL">SHELL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setVariableBounds">setVariableBounds()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setASCIITab">setASCIITab()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGR">setMGR()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setVecClosure">setVecClosure()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setASMLocalSubdomains">setASMLocalSubdomains()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGType">setMGType()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGRestriction">setMGRestriction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SHELL">SHELL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setVecType">setVecType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setASMOverlap">setASMOverlap()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGX">setMGX()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGRhs">setMGRhs()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PartitionerType-class.html#SHELL">SHELL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PartitionerType-class.html">PartitionerType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#setVisible">setVisible()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setASMTotalSubdomains">setASMTotalSubdomains()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setMonitor">setMonitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#SHELL">SHELL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGRScale">setMGRScale()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html">SF</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setASMType">setASMType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMonitor">setMonitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#shift">shift()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGType">setMGType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#shape">shape</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setMonitor">setMonitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#shift">shift()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setMGX">setMGX()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#SHARED">SHARED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setBlockIndices">setBlockIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMonitor">setMonitor()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html">Side</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setMonitor">setMonitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#SHELL">SHELL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setBlockSize">setBlockSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setMPIGhost">setMPIGhost()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#size">size</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setMonitor">setMonitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SHELL">SHELL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setBlockSize">setBlockSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setMumpsCntl">setMumpsCntl()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#size">size</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setMonitor">setMonitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SHELL">SHELL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setBlockSize">setBlockSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setMumpsIcntl">setMumpsIcntl()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#size">size</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setMonitor">setMonitor()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PartitionerType-class.html#SHELL">SHELL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PartitionerType-class.html">PartitionerType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setBlockSizes">setBlockSizes()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setName">setName()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#size">size</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setMPIGhost">setMPIGhost()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#SHELL">SHELL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setBoundaryType">setBoundaryType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setNearNullSpace">setNearNullSpace()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setMumpsCntl">setMumpsCntl()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#shift">shift()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#size">size</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setChart">setChart()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setNestSubVecs">setNestSubVecs()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setMumpsIcntl">setMumpsIcntl()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#shift">shift()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setChart">setChart()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setNormSchedule">setNormSchedule()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#sizes">sizes</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setName">setName()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html">Side</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCoarsen">setCoarsen()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setNormType">setNormType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#sizes">sizes</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setNearNullSpace">setNearNullSpace()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#size">size</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setCompositeType">setCompositeType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setNPC">setNPC()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#sizes">sizes</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setNestSubVecs">setNestSubVecs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#size">size</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setComputeEigenvalues">setComputeEigenvalues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setNullSpace">setNullSpace()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#sizes">sizes</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setNGS">setNGS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#size">size</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setComputeOperators">setComputeOperators()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setNumFields">setNumFields()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#sizes">sizes</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setNormSchedule">setNormSchedule()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#size">size</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setComputeRHS">setComputeRHS()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setObjective">setObjective()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#sleep">sleep()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setNormType">setNormType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#size">size</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setComputeSingularValues">setComputeSingularValues()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setObjective">setObjective()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#SLICED">SLICED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setNPC">setNPC()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setCone">setCone()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setObjectiveGradient">setObjectiveGradient()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html">SNES</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setNullSpace">setNullSpace()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#sizes">sizes</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setConeOrientation">setConeOrientation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setOffset">setOffset()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setNumFields">setNumFields()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#snes">snes</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#sizes">sizes</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setConeSize">setConeSize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setOperators">setOperators()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#SOCKET">SOCKET</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setObjective">setObjective()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#sizes">sizes</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setConstraintDof">setConstraintDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setOperators">setOperators()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#solution">solution</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setObjective">setObjective()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#sizes">sizes</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setConstraintIndices">setConstraintIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setObjectiveGradient">setObjectiveGradient()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#sizes">sizes</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConstraints">setConstraints()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setOffset">setOffset()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#sleep">sleep()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConstraintTolerances">setConstraintTolerances()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setOperators">setOperators()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#SLICED">SLICED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setConvergedReason">setConvergedReason()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setOperators">setOperators()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html">SNES</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setConvergedReason">setConvergedReason()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setOption">setOption()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#solve">solve()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#snes">snes</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConstraints">setConstraints()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConvergedReason">setConvergedReason()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setOption">setOption()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solve">solve()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#SOCKET">SOCKET</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConstraintTolerances">setConstraintTolerances()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setConvergedReason">setConvergedReason()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#solve">solve()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#solution">solution</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setConvergedReason">setConvergedReason()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setConvergenceHistory">setConvergenceHistory()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#solve">solve()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#solve">solve()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setConvergedReason">setConvergedReason()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setConvergenceHistory">setConvergenceHistory()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#solve">solve()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solve">solve()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConvergedReason">setConvergedReason()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setConvergenceTest">setConvergenceTest()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveAdd">solveAdd()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#solve">solve()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setConvergedReason">setConvergedReason()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setConvergenceTest">setConvergenceTest()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveBackward">solveBackward()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#solve">solve()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setConvergenceHistory">setConvergenceHistory()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConvergenceTest">setConvergenceTest()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveForward">solveForward()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#solve">solve()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setConvergenceHistory">setConvergenceHistory()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setCoordinateName">setCoordinateName()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#solveTranspose">solveTranspose()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveAdd">solveAdd()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setConvergenceTest">setConvergenceTest()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setCoordinates">setCoordinates()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveTranspose">solveTranspose()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveBackward">solveBackward()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setConvergenceTest">setConvergenceTest()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setCoordinates">setCoordinates()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setOptionsPrefix">setOptionsPrefix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveTransposeAdd">solveTransposeAdd()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveForward">solveForward()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setConvergenceTest">setConvergenceTest()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setCoordinatesLocal">setCoordinatesLocal()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setParamsEW">setParamsEW()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SOR">SOR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#solveTranspose">solveTranspose()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setCoordinateName">setCoordinateName()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setCostGradients">setCostGradients()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setPartitioner">setPartitioner()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveTranspose">solveTranspose()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setCostIntegrand">setCostIntegrand()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setPC">setPC()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#SOR">SOR()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#solveTransposeAdd">solveTransposeAdd()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setCoordinates">setCoordinates()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateDomainDecomposition">setCreateDomainDecomposition()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setPCSide">setPCSide()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#sort">sort()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SOR">SOR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setCoordinates">setCoordinates()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateDomainDecompositionScatters">setCreateDomainDecompositionScatters()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setPermutation">setPermutation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#sorted">sorted</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#SOR">SOR()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setCoordinatesLocal">setCoordinatesLocal()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateFieldDecomposition">setCreateFieldDecomposition()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setPointSF">setPointSF()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#sort">sort()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateFieldDecomposition">setCreateFieldDecomposition()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateGlobalVector">setCreateGlobalVector()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setPostStep">setPostStep()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SPAI">SPAI</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#sorted">sorted</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateGlobalVector">setCreateGlobalVector()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateInjection">setCreateInjection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setPreallocationCSR">setPreallocationCSR()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#SPD">SPD</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateInjection">setCreateInjection()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateInterpolation">setCreateInterpolation()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setPreallocationDense">setPreallocationDense()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#SPECIAL">SPECIAL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SPAI">SPAI</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateInterpolation">setCreateInterpolation()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateLocalVector">setCreateLocalVector()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setPreallocationNNZ">setPreallocationNNZ()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#SPECTRAL">SPECTRAL</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#SPD">SPD</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateLocalVector">setCreateLocalVector()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateMatrix">setCreateMatrix()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setPreStep">setPreStep()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#splitOwnership">splitOwnership()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#SPECIAL">SPECIAL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateMatrix">setCreateMatrix()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateRestriction">setCreateRestriction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setProblemType">setProblemType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random.Type-class.html#SPRNG">SPRNG</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Random.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#SPECTRAL">SPECTRAL</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setCreateSubDM">setCreateSubDM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setProcSizes">setProcSizes()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#sqrtabs">sqrtabs()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#splitOwnership">splitOwnership()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#setDefaultComm">setDefaultComm()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setPythonContext">setPythonContext()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#SSFLS">SSFLS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random.Type-class.html#SPRNG">SPRNG</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Random.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setDefaultGlobalSection">setDefaultGlobalSection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setPythonContext">setPythonContext()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#SSILS">SSILS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#sqrtabs">sqrtabs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setDefaultSection">setDefaultSection()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setPythonContext">setPythonContext()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#SSP">SSP</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#SSFLS">SSFLS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setDiagonal">setDiagonal()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setPythonContext">setPythonContext()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#Stage">Stage()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#SSILS">SSILS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setDim">setDim()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setPythonContext">setPythonContext()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#STANDARD">STANDARD</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#SSP">SSP</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setDimension">setDimension()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setPythonType">setPythonType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA.StencilType-class.html#STAR">STAR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA.StencilType-class.html">StencilType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#Stage">Stage()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setDM">setDM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setPythonType">setPythonType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#starts">starts</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#STANDARD">STANDARD</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setDM">setDM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setPythonType">setPythonType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA.StencilType-class.html#STAR">STAR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA.StencilType-class.html">StencilType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setDM">setDM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setPythonType">setPythonType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#STCG">STCG</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#starts">starts</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setDM">setDM()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setPythonType">setPythonType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#STDERR">STDERR()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setDMActive">setDMActive()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setRandom">setRandom()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#STDOUT">STDOUT()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#STDERR">STDERR()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
@@ -4794,27 +4989,35 @@
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setRankOrder">setRankOrder()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#stencil">stencil</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#STDOUT">STDOUT()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setDof">setDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#setRefine">setRefine()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#stencil_type">stencil_type</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#stencil">stencil</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setDrawInfo">setDrawInfo()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setRefineLevel">setRefineLevel()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#stencil_type">stencil_type</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setElementType">setElementType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setRefinementFactor">setRefinementFactor()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#stencil_width">stencil_width</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setDuration">setDuration()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setEquationType">setEquationType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setRefinementLimit">setRefinementLimit()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
@@ -4822,15 +5025,15 @@
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setElementType">setElementType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setErrorIfStepFails">setErrorIfStepFails()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setRefinementUniform">setRefinementUniform()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#step">step()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setEquationType">setEquationType()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setExactFinalTime">setExactFinalTime()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setResetCounters">setResetCounters()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
@@ -4838,23 +5041,23 @@
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setErrorIfStepFails">setErrorIfStepFails()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorLevels">setFactorLevels()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setResidualNorm">setResidualNorm()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ExactFinalTime-class.html#STEPOVER">STEPOVER</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.ExactFinalTime-class.html">ExactFinalTime</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setExactFinalTime">setExactFinalTime()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorOrdering">setFactorOrdering()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setReusePreconditioner">setReusePreconditioner()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#stol">stol</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorLevels">setFactorLevels()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorPivot">setFactorPivot()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setRHSFunction">setRHSFunction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
@@ -4862,7 +5065,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorOrdering">setFactorOrdering()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorShift">setFactorShift()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setRHSJacobian">setRHSJacobian()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
@@ -4870,290 +5073,305 @@
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorPivot">setFactorPivot()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorSolverPackage">setFactorSolverPackage()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#setSeed">setSeed()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setRKType">setRKType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS.Type-class.html#STRIDE">STRIDE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorShift">setFactorShift()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setSeparableObjective">setSeparableObjective()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASInjection">setFASInjection()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setSaveTrajectory">setSaveTrajectory()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#strideGather">strideGather()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFactorSolverPackage">setFactorSolverPackage()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setShellPartition">setShellPartition()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASInterpolation">setFASInterpolation()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#setSeed">setSeed()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#strideMax">strideMax()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASInjection">setFASInjection()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASLevels">setFASLevels()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setSizes">setSizes()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setSeparableObjective">setSeparableObjective()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#strideMin">strideMin()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASInterpolation">setFASInterpolation()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASRestriction">setFASRestriction()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setSizes">setSizes()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setShellPartition">setShellPartition()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#strideNorm">strideNorm()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASLevels">setFASLevels()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASRScale">setFASRScale()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setSizes">setSizes()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setSizes">setSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#strides">strides</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASRestriction">setFASRestriction()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setSolution">setSolution()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldComponents">setFieldComponents()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setSizes">setSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#strideScale">strideScale()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFASRScale">setFASRScale()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setSolution">setSolution()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldConstraintDof">setFieldConstraintDof()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setSizes">setSizes()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#strideScatter">strideScatter()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldComponents">setFieldComponents()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldConstraintIndices">setFieldConstraintIndices()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setStateDesignIS">setStateDesignIS()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setSNESFunction">setSNESFunction()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#strideSum">strideSum()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldConstraintDof">setFieldConstraintDof()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldDof">setFieldDof()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setStencil">setStencil()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setSNESJacobian">setSNESJacobian()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#STRING">STRING</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldConstraintIndices">setFieldConstraintIndices()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setStencil">setStencil()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setFieldName">setFieldName()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setSolution">setSolution()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#structsymm">structsymm</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldDof">setFieldDof()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldName">setFieldName()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setStencilType">setStencilType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setSolution">setSolution()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#STRUCTURALLY_SYMMETRIC">STRUCTURALLY_SYMMETRIC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setFieldName">setFieldName()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setStencilWidth">setStencilWidth()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitFields">setFieldSplitFields()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setSolution2">setSolution2()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#setFieldName">setFieldName()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setStepNumber">setStepNumber()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitIS">setFieldSplitIS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setStateDesignIS">setStateDesignIS()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#SUBMATRIX">SUBMATRIX</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitFields">setFieldSplitFields()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitSchurFactType">setFieldSplitSchurFactType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setStride">setStride()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setStencil">setStencil()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html#SUBSET">SUBSET</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitIS">setFieldSplitIS()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitSchurPreType">setFieldSplitSchurPreType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setSupport">setSupport()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setStencil">setStencil()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html#SUBSET_NONZERO_PATTERN">SUBSET_NONZERO_PATTERN</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitSchurFactType">setFieldSplitSchurFactType()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitType">setFieldSplitType()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setSupportSize">setSupportSize()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setStencilType">setStencilType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html#SUBSET_NZ">SUBSET_NZ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitSchurPreType">setFieldSplitSchurPreType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setFileMode">setFileMode()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#setStencilWidth">setStencilWidth()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#SUBSET_OFF_PROC_ENTRIES">SUBSET_OFF_PROC_ENTRIES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFieldSplitType">setFieldSplitType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setTetGenOptions">setTetGenOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setFileName">setFileName()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setStepNumber">setStepNumber()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#subtractASCIITab">subtractASCIITab()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setStride">setStride()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#sum">sum()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setFileMode">setFileMode()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTheta">setTheta()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setSupport">setSupport()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#sum">sum()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#setFileName">setFileName()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setThetaEndpoint">setThetaEndpoint()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setSupportSize">setSupportSize()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#SUNDIALS">SUNDIALS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTime">setTime()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SVD">SVD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTimeStep">setTimeStep()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setTetGenOptions">setTetGenOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#swap">swap()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#setTimestep">setTimestep()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTheta">setTheta()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#SYMMETRIC">SYMMETRIC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setTolerances">setTolerances()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setThetaEndpoint">setThetaEndpoint()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#symmetric">symmetric</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setTolerances">setTolerances()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTime">setTime()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html#SYMMETRIC">SYMMETRIC</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Side-class.html">Side</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setTolerances">setTolerances()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTimeStep">setTimeStep()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#SYMMETRIC_MULTIPLICATIVE">SYMMETRIC_MULTIPLICATIVE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTolerances">setTolerances()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#setTimestep">setTimestep()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#symmetrize">symmetrize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setTriangleOptions">setTriangleOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setTolerances">setTolerances()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#SYMMETRY_ETERNAL">SYMMETRY_ETERNAL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setTolerances">setTolerances()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html#SYMMETRY_SWEEP">SYMMETRY_SWEEP</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setTolerances">setTolerances()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#SYMMLQ">SYMMLQ</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setFromOptions">setFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setTolerances">setTolerances()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#syncFlush">syncFlush()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setType">setType()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#setFunction">setFunction()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#setTransposeNullSpace">setTransposeNullSpace()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#syncPrint">syncPrint()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#setFromOptions">setFromOptions()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFunction">setFunction()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#setTriangleOptions">setTriangleOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html">Sys</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#setFunction">setFunction()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFunctionNorm">setFunctionNorm()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#SYSPFMG">SYSPFMG</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#setFunction">setFunction()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#setType">setType()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGAMGLevels">setGAMGLevels()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"> </td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#setGAMGSmooths">setGAMGSmooths()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#setType">setType()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
</table>
@@ -5166,24 +5384,24 @@
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#time">time</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html">Type</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS.Type-class.html">Type</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#TCQMR">TCQMR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#time_step">time_step</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS.Type-class.html">Type</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html">Type</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#tDot">tDot()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#toAll">toAll()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html">Type</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.Type-class.html">Type</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#tDotBegin">tDotBegin()</a><br />
@@ -5226,31 +5444,31 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#TFQMR">TFQMR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#test">test()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#transposeMatMult">transposeMatMult()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html">Type</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#TFS">TFS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#TFQMR">TFQMR</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#TRON">TRON</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html">Type</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#TH">TH</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#TFS">TFS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html">TS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html">Type</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#THETA">THETA</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#TH">TH</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#TSIRM">TSIRM</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
@@ -5258,20 +5476,27 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#THIRD">THIRD</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#THETA">THETA</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#TWIST">TWIST</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#THIRD_SIZE">THIRD_SIZE</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#THIRD">THIRD</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO.Type-class.html">Type</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
<td width="33%" class="link-index"> </td>
</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#THIRD_SIZE">THIRD_SIZE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html">Type</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"> </td>
+</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="U">U</a></h2></td>
@@ -5282,47 +5507,62 @@
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ExactFinalTime-class.html#UNSPECIFIED">UNSPECIFIED</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.ExactFinalTime-class.html">ExactFinalTime</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#use_fd">use_fd</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#USE_HASH_TABLE">USE_HASH_TABLE</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#UA">UA</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#UNUSED_NONZERO_LOCATION_ERR">UNUSED_NONZERO_LOCATION_ERR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#USE_HASH_TABLE">USE_HASH_TABLE</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#USE_INODES">USE_INODES</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#union">union()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#uninterpolate">uninterpolate()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#UPDATE">UPDATE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#USE_INODES">USE_INODES</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#use_mf">use_mf</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#UNPRECONDITIONED">UNPRECONDITIONED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#union">union()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurFactType-class.html#UPPER">UPPER</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurFactType-class.html">SchurFactType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#use_mf">use_mf</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#useASCIITabs">useASCIITabs()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.EquationType-class.html#UNSPECIFIED">UNSPECIFIED</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.EquationType-class.html">EquationType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#UNPRECONDITIONED">UNPRECONDITIONED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#use_ew">use_ew</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurPreType-class.html#USER">USER</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a>)</span></td>
</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.EquationType-class.html#UNSPECIFIED">UNSPECIFIED</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.EquationType-class.html">EquationType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#use_fd">use_fd</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
+<td width="33%" class="link-index"> </td>
+</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="V">V</a></h2></td>
<td valign="top">
<table class="link-index" width="100%" border="1">
<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGCycleType-class.html#V">V</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGCycleType-class.html">MGCycleType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#view">view()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#view">view()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
+</tr>
+<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html">Vec</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#view">view()</a><br />
@@ -5359,15 +5599,15 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#VINEWTONRSLS">VINEWTONRSLS</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#vec_sol">vec_sol</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#VINEWTONSSLS">VINEWTONSSLS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#VINEWTONRSLS">VINEWTONRSLS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
@@ -5375,31 +5615,31 @@
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#visible">visible</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#VINEWTONSSLS">VINEWTONSSLS</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#vecGetClosure">vecGetClosure()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#VTK">VTK</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#visible">visible</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#VIENNACL">VIENNACL</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#VTK_VTR">VTK_VTR</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#VTK">VTK</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#VTK_VTS">VTK_VTS</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#VTK_VTR">VTK_VTR</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
@@ -5407,7 +5647,7 @@
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#VTK_VTU">VTK_VTU</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#VTK_VTS">VTK_VTS</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
@@ -5415,22 +5655,16 @@
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#VU">VU</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#VTK_VTU">VTK_VTU</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#view">view()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#view">view()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#view">view()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"> </td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#VU">VU</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
</tr>
</table>
</td></tr>
@@ -5438,6 +5672,14 @@
<td valign="top">
<table class="link-index" width="100%" border="1">
<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGCycleType-class.html#W">W</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGCycleType-class.html">MGCycleType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#waxpy">waxpy()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF.Type-class.html#WINDOW">WINDOW</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.SF.Type-class.html">Type</a>)</span></td>
+</tr>
+<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#W">W</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#WBM">WBM</a><br />
@@ -5445,13 +5687,6 @@
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#WRITE">WRITE</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#waxpy">waxpy()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF.Type-class.html#WINDOW">WINDOW</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.SF.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"> </td>
-</tr>
</table>
</td></tr>
<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="Z">Z</a></h2></td>
@@ -5481,560 +5716,568 @@
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__abs__">__abs__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__le__">__le__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__add__">__add__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__le__">__le__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapType-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.MapType-class.html">MapType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.Type-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__add__">__add__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__add__">__add__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#__long__">__long__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.AssemblyType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.AssemblyType-class.html">AssemblyType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#__arch__">__arch__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__add__">__add__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__long__">__long__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.FactorShiftType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.FactorShiftType-class.html">FactorShiftType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#__array_interface__">__array_interface__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#__arch__">__arch__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__long__">__long__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.InfoType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.InfoType-class.html">InfoType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__array_interface__">__array_interface__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#__array_interface__">__array_interface__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__lt__">__lt__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Option-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html#__array_interface__">__array_interface__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._IS_buffer-class.html" onclick="show_private();">_IS_buffer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__array_interface__">__array_interface__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__lt__">__lt__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.OrderingType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.OrderingType-class.html">OrderingType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html#__array_interface__">__array_interface__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">_Vec_buffer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html#__array_interface__">__array_interface__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._IS_buffer-class.html" onclick="show_private();">_IS_buffer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__mul__">__mul__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.SORType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.SORType-class.html">SORType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html#__array_interface__">__array_interface__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">_Vec_buffer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__mul__">__mul__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Structure-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Structure-class.html">Structure</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__ne__">__ne__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__ne__">__ne__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.NormType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.NormType-class.html">NormType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__neg__">__neg__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.ASMType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.ASMType-class.html">ASMType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__neg__">__neg__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.CompositeType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.CompositeType-class.html">CompositeType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO-class.html">AO</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GAMGType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.GAMGType-class.html">GAMGType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.GASMType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.GASMType-class.html">GASMType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM-class.html">DM</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGCycleType-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGCycleType-class.html">MGCycleType</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#__call__">__call__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.MGType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.MGType-class.html">MGType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__contains__">__contains__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMComposite-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurFactType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurFactType-class.html">SchurFactType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__copy__">__copy__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMDA-class.html">DMDA</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.SchurPreType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.SchurPreType-class.html">SchurPreType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py-module.html#__credits__">__credits__</a><br />
<span class="index-where">(in <a href="petsc4py-module.html">petsc4py</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMPlex-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Side-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Side-class.html">Side</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__deepcopy__">__deepcopy__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMShell-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PC.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__delitem__">__delitem__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.PartitionerType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.PartitionerType-class.html">PartitionerType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__delitem__">__delitem__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.KSP-class.html">KSP</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Random.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__delitem__">__delitem__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SF.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__delitem__">__delitem__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Log-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Log-class.html">Log</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.ConvergedReason-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__div__">__div__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.NormSchedule-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.NormSchedule-class.html">NormSchedule</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__div__">__div__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ScatterMode-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ScatterMode-class.html">ScatterMode</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Reason-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Reason-class.html">Reason</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.NullSpace-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ConvergedReason-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMComposite_access-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._DMComposite_access-class.html" onclick="show_private();">_DMComposite_access</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.EquationType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.EquationType-class.html">EquationType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.PC-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.PC-class.html">PC</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ExactFinalTime-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.ExactFinalTime-class.html">ExactFinalTime</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._IS_buffer-class.html" onclick="show_private();">_IS_buffer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Partitioner-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Partitioner-class.html">Partitioner</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#__new__">__new__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.ProblemType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS.ProblemType-class.html">ProblemType</a>)</span></td>
</tr>
<tr>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_LocalForm-class.html#__enter__">__enter__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._Vec_LocalForm-class.html" onclick="show_private();">_Vec_LocalForm</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Random-class.html#__new__">__new__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Random-class.html">Random</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html#__enter__">__enter__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">_Vec_buffer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SF-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SF-class.html">SF</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Option-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Option-class.html">Option</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.RKType-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.RKType-class.html">RKType</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__eq__">__eq__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html#__enter__">__enter__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">_Vec_buffer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.SNES-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.SNES-class.html">SNES</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS.Type-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.TS.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__eq__">__eq__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__eq__">__eq__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Scatter-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Scatter-class.html">Scatter</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Option-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Option-class.html">Option</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__eq__">__eq__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Section-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Section-class.html">Section</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec.Type-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.IS-class.html">IS</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Sys-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Sys-class.html">Sys</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Format-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Format-class.html">Format</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TAO-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TAO-class.html">TAO</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#__qualname__">__qualname__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Mode-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Mode-class.html">Mode</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.TS-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.TS-class.html">TS</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__radd__">__radd__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Size-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Size-class.html">Size</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMComposite_access-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMComposite_access-class.html" onclick="show_private();">_DMComposite_access</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__new__">__new__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__exit__">__exit__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__radd__">__radd__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer.Type-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Viewer.Type-class.html">Type</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMComposite_access-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMComposite_access-class.html" onclick="show_private();">_DMComposite_access</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Viewer-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Viewer-class.html">Viewer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rdiv__">__rdiv__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__radd__">__radd__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._IS_buffer-class.html" onclick="show_private();">_IS_buffer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.ViewerHDF5-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rdiv__">__rdiv__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__radd__">__radd__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_LocalForm-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._Vec_LocalForm-class.html" onclick="show_private();">_Vec_LocalForm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._IS_buffer-class.html" onclick="show_private();">_IS_buffer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMComposite_access-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._DMComposite_access-class.html" onclick="show_private();">_DMComposite_access</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rdiv__">__rdiv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html#__exit__">__exit__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">_Vec_buffer</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_LocalForm-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._Vec_LocalForm-class.html" onclick="show_private();">_Vec_LocalForm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rmul__">__rmul__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rdiv__">__rdiv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__ge__">__ge__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html#__exit__">__exit__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">_Vec_buffer</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._IS_buffer-class.html" onclick="show_private();">_IS_buffer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rmul__">__rmul__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__repr__">__repr__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__ge__">__ge__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__ge__">__ge__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._Mat_Stencil-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._Mat_Stencil-class.html" onclick="show_private();">_Mat_Stencil</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rsub__">__rsub__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rmul__">__rmul__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__getitem__">__getitem__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__ge__">__ge__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_LocalForm-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._Vec_LocalForm-class.html" onclick="show_private();">_Vec_LocalForm</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rsub__">__rsub__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rmul__">__rmul__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__getitem__">__getitem__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__getitem__">__getitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html#__new__">__new__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc._Vec_buffer-class.html" onclick="show_private();">_Vec_buffer</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rtruediv__">__rtruediv__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rsub__">__rsub__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__getitem__">__getitem__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__getitem__">__getitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__nonzero__">__nonzero__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rtruediv__">__rtruediv__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rsub__">__rsub__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__getitem__">__getitem__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__getitem__">__getitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__nonzero__">__nonzero__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__setitem__">__setitem__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__rtruediv__">__rtruediv__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__gt__">__gt__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__getitem__">__getitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__nonzero__">__nonzero__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__setitem__">__setitem__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__rtruediv__">__rtruediv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__gt__">__gt__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__gt__">__gt__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#__package__">__package__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__setitem__">__setitem__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__setitem__">__setitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__iadd__">__iadd__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Object-class.html#__gt__">__gt__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Object-class.html">Object</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py-module.html#__package__">__package__</a><br />
<span class="index-where">(in <a href="petsc4py-module.html">petsc4py</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__setitem__">__setitem__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__setitem__">__setitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__iadd__">__iadd__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__iadd__">__iadd__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.lib-module.html#__package__">__package__</a><br />
<span class="index-where">(in <a href="petsc4py.lib-module.html">petsc4py.lib</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__setitem__">__setitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__idiv__">__idiv__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__iadd__">__iadd__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__pos__">__pos__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__sub__">__sub__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html#__setitem__">__setitem__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._DMDA_Vec_array-class.html" onclick="show_private();">_DMDA_Vec_array</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__idiv__">__idiv__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__idiv__">__idiv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__pos__">__pos__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__sub__">__sub__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__str__">__str__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__imul__">__imul__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__idiv__">__idiv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#__pyx_capi__">__pyx_capi__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__truediv__">__truediv__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__sub__">__sub__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__imul__">__imul__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__imul__">__imul__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.AO.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.AO.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__truediv__">__truediv__()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__sub__">__sub__()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__imul__">__imul__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.BoundaryType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.BoundaryType-class.html">BoundaryType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#__type_registry__">__type_registry__</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__truediv__">__truediv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__init__">__init__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DM.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DM.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMComposite_access-class.html">_DMComposite_access</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__truediv__">__truediv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_LocalForm-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc._Vec_LocalForm-class.html" onclick="show_private();">_Vec_LocalForm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Options-class.html#__init__">__init__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Options-class.html">Options</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA.ElementType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA.ElementType-class.html">ElementType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html">_DMDA_Vec_array</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#__type_registry__">__type_registry__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#__int__">__int__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_LocalForm-class.html#__init__">__init__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc._Vec_LocalForm-class.html" onclick="show_private();">_Vec_LocalForm</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA.InterpolationType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA.InterpolationType-class.html">InterpolationType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#_finalize">_finalize()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMComposite_access-class.html">_DMComposite_access</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__int__">__int__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogClass-class.html#__int__">__int__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogClass-class.html">LogClass</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.DMDA.StencilType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.DMDA.StencilType-class.html">StencilType</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#_initialize">_initialize()</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._DMDA_Vec_array-class.html">_DMDA_Vec_array</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__int__">__int__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogEvent-class.html#__int__">__int__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogEvent-class.html">LogEvent</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html">_IS_buffer</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#_finalize">_finalize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__isub__">__isub__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LogStage-class.html#__int__">__int__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LogStage-class.html">LogStage</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.IS.Type-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.IS.Type-class.html">Type</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Mat_Stencil-class.html">_Mat_Stencil</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc-module.html#_initialize">_initialize()</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__isub__">__isub__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__isub__">__isub__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.InsertMode-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.InsertMode-class.html">InsertMode</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#_traceback_">_traceback_</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._IS_buffer-class.html">_IS_buffer</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__itruediv__">__itruediv__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__isub__">__isub__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.ConvergedReason-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.ConvergedReason-class.html">ConvergedReason</a>)</span></td>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html">_Vec_buffer</a><br />
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Mat_Stencil-class.html">_Mat_Stencil</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
<tr>
-<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__itruediv__">__itruediv__()</a><br />
-<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Mat-class.html#__itruediv__">__itruediv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Mat-class.html">Mat</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.NormType-class.html#__qualname__">__qualname__</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc.KSP.NormType-class.html">NormType</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Error-class.html#_traceback_">_traceback_</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Error-class.html">Error</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Vec-class.html#__itruediv__">__itruediv__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Vec-class.html">Vec</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.KSP.Type-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.KSP.Type-class.html">Type</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_buffer-class.html">_Vec_buffer</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
+</tr>
+<tr>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.Comm-class.html#__le__">__le__()</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.Comm-class.html">Comm</a>)</span></td>
+<td width="33%" class="link-index"><a href="petsc4py.PETSc.LGMap.MapMode-class.html#__qualname__">__qualname__</a><br />
+<span class="index-where">(in <a href="petsc4py.PETSc.LGMap.MapMode-class.html">MapMode</a>)</span></td>
<td width="33%" class="link-index"><a href="petsc4py.PETSc._Vec_LocalForm-class.html">_Vec_LocalForm</a><br />
<span class="index-where">(in <a href="petsc4py.PETSc-module.html">petsc4py.PETSc</a>)</span></td>
</tr>
@@ -6072,7 +6315,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/module-tree.html b/docs/apiref/module-tree.html
index 8fdcad0..e8fbd51 100644
--- a/docs/apiref/module-tree.html
+++ b/docs/apiref/module-tree.html
@@ -98,7 +98,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py-module.html b/docs/apiref/petsc4py-module.html
index 85694d7..865e9dd 100644
--- a/docs/apiref/petsc4py-module.html
+++ b/docs/apiref/petsc4py-module.html
@@ -69,7 +69,7 @@ communication.</p>
<hr />
<div class="fields"> <p><strong>Version:</strong>
- 3.7.0
+ 3.8.0
</p>
<p><strong>Author:</strong>
Lisandro Dalcin
@@ -152,6 +152,23 @@ communication.</p>
</td>
</tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="get_config"></a><span class="summary-sig-name">get_config</span>()</span><br />
+ Return a dictionary with information about PETSc.</td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
</table>
<!-- ==================== VARIABLES ==================== -->
<a name="section-Variables"></a>
@@ -291,7 +308,7 @@ Extension('extension_name', ...
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc-module.html b/docs/apiref/petsc4py.PETSc-module.html
index 891d211..015ee58 100644
--- a/docs/apiref/petsc4py.PETSc-module.html
+++ b/docs/apiref/petsc4py.PETSc-module.html
@@ -81,307 +81,221 @@ Portable, Extensible Toolkit for Scientific Computation
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.AO-class.html" class="summary-name">AO</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Comm-class.html" class="summary-name">Comm</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMDA-class.html" class="summary-name">DA</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DM-class.html" class="summary-name">DM</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMComposite-class.html" class="summary-name">DMComposite</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMDA-class.html" class="summary-name">DMDA</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMPlex-class.html" class="summary-name">DMPlex</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMShell-class.html" class="summary-name">DMShell</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Error-class.html" class="summary-name">Error</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.IS-class.html" class="summary-name">IS</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.InsertMode-class.html" class="summary-name">InsertMode</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.KSP-class.html" class="summary-name">KSP</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.LGMap-class.html" class="summary-name">LGMap</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Log-class.html" class="summary-name">Log</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.LogClass-class.html" class="summary-name">LogClass</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.LogEvent-class.html" class="summary-name">LogEvent</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.LogStage-class.html" class="summary-name">LogStage</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat-class.html" class="summary-name">Mat</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.NormType-class.html" class="summary-name">NormType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.NullSpace-class.html" class="summary-name">NullSpace</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Object-class.html" class="summary-name">Object</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Options-class.html" class="summary-name">Options</a><br />
Options(prefix=None)
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC-class.html" class="summary-name">PC</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Partitioner-class.html" class="summary-name">Partitioner</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PartitionerType-class.html" class="summary-name">PartitionerType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Random-class.html" class="summary-name">Random</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.SF-class.html" class="summary-name">SF</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.SNES-class.html" class="summary-name">SNES</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Scatter-class.html" class="summary-name">Scatter</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.ScatterMode-class.html" class="summary-name">ScatterMode</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Section-class.html" class="summary-name">Section</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Sys-class.html" class="summary-name">Sys</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TAO-class.html" class="summary-name">TAO</a><br />
TAO Solver
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TS-class.html" class="summary-name">TS</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Vec-class.html" class="summary-name">Vec</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Viewer-class.html" class="summary-name">Viewer</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.ViewerHDF5-class.html" class="summary-name">ViewerHDF5</a>
</td>
</tr>
<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc._DMComposite_access-class.html" class="summary-name" onclick="show_private();">_DMComposite_access</a>
</td>
</tr>
<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc._DMDA_Vec_array-class.html" class="summary-name" onclick="show_private();">_DMDA_Vec_array</a>
</td>
</tr>
<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc._IS_buffer-class.html" class="summary-name" onclick="show_private();">_IS_buffer</a>
</td>
</tr>
<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc._Mat_Stencil-class.html" class="summary-name" onclick="show_private();">_Mat_Stencil</a>
</td>
</tr>
<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc._Vec_LocalForm-class.html" class="summary-name" onclick="show_private();">_Vec_LocalForm</a><br />
_Vec_LocalForm(Vec gvec)
Context manager for <a href="petsc4py.PETSc.Vec-class.html" class="link">Vec</a> local form
</td>
</tr>
<tr class="private">
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc._Vec_buffer-class.html" class="summary-name" onclick="show_private();">_Vec_buffer</a>
</td>
</tr>
@@ -458,21 +372,21 @@ Context manager for <a href="petsc4py.PETSc.Vec-class.html" class="link">Vec</a>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="COMM_NULL"></a><span class="summary-name">COMM_NULL</span> = <code title="<petsc4py.PETSc.Comm object at 0x7fea2aa4c510>"><petsc4py.PETSc.Comm object at 0x7fea2aa4c510></code>
+ <a name="COMM_NULL"></a><span class="summary-name">COMM_NULL</span> = <code title="<petsc4py.PETSc.Comm object at 0x7f25e632bd90>"><petsc4py.PETSc.Comm object at 0x7f25e632bd90></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="COMM_SELF"></a><span class="summary-name">COMM_SELF</span> = <code title="<petsc4py.PETSc.Comm object at 0x7fea2aa4c550>"><petsc4py.PETSc.Comm object at 0x7fea2aa4c550></code>
+ <a name="COMM_SELF"></a><span class="summary-name">COMM_SELF</span> = <code title="<petsc4py.PETSc.Comm object at 0x7f25e632bdd0>"><petsc4py.PETSc.Comm object at 0x7f25e632bdd0></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="COMM_WORLD"></a><span class="summary-name">COMM_WORLD</span> = <code title="<petsc4py.PETSc.Comm object at 0x7fea2aa4c590>"><petsc4py.PETSc.Comm object at 0x7fea2aa4c590></code>
+ <a name="COMM_WORLD"></a><span class="summary-name">COMM_WORLD</span> = <code title="<petsc4py.PETSc.Comm object at 0x7f25e632be10>"><petsc4py.PETSc.Comm object at 0x7f25e632be10></code>
</td>
</tr>
<tr>
@@ -535,14 +449,14 @@ Context manager for <a href="petsc4py.PETSc.Vec-class.html" class="link">Vec</a>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a href="petsc4py.PETSc-module.html#__pyx_capi__" class="summary-name">__pyx_capi__</a> = <code title="{'GetComm': <capsule object "MPI_Comm (PyObject *, MPI_Comm)" at 0x7fe\
-a3f702960>,
- 'GetCommDefault': <capsule object "MPI_Comm (void)" at 0x7fea3f7029c0\
+ <a href="petsc4py.PETSc-module.html#__pyx_capi__" class="summary-name">__pyx_capi__</a> = <code title="{'GetComm': <capsule object "MPI_Comm (PyObject *, MPI_Comm)" at 0x7f2\
+5f99085d0>,
+ 'GetCommDefault': <capsule object "MPI_Comm (void)" at 0x7f25f9908630\
>,
- 'PyPetscAO_Get': <capsule object "AO (PyObject *)" at 0x7fea3f706150>\
+ 'PyPetscAO_Get': <capsule object "AO (PyObject *)" at 0x7f25f9908d80>\
,
- 'PyPetscAO_New': <capsule object "PyObject *(AO)" at 0x7fea3f706120>,
- 'PyPetscComm_Get': <capsule object "MPI_Comm (PyObject *)" at 0x7fea3\
+ 'PyPetscAO_New': <capsule object "PyObject *(AO)" at 0x7f25f9908d50>,
+ 'PyPetscComm_Get': <capsule object "MPI_Comm (PyObject *)" at 0x7f25f\
..."><code class="variable-group">{</code><code class="variable-quote">'</code><code class="variable-string">GetComm</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "MPI_Comm (PyObject<code class="variable-ellipsis">...</code></code>
</td>
</tr>
@@ -557,7 +471,7 @@ a3f702960>,
1211216: <type 'petsc4py.PETSc.IS'>,
1211217: <type 'petsc4py.PETSc.LGMap'>,
1211218: <type 'petsc4py.PETSc.Section'>,
- 1211219: <type 'petsc4py.PETSc.Vec'>,
+ 1211220: <type 'petsc4py.PETSc.Vec'>,
..."><code class="variable-group">{</code>0<code class="variable-op">: </code>None<code class="variable-op">, </code>1211212<code class="variable-op">: </code><type 'petsc4py.PETSc.O<code class="variable-ellipsis">...</code></code>
</td>
</tr>
@@ -592,14 +506,14 @@ a3f702960>,
<dl class="fields">
<dt>Value:</dt>
<dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code><code class="variable-quote">'</code><code class="variable-string">GetComm</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "MPI_Comm (PyObject *, MPI_Comm)" at 0x7fe<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-a3f702960><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">GetCommDefault</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "MPI_Comm (void)" at 0x7fea3f7029c0<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
+<code class="variable-group">{</code><code class="variable-quote">'</code><code class="variable-string">GetComm</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "MPI_Comm (PyObject *, MPI_Comm)" at 0x7f2<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
+5f99085d0><code class="variable-op">,</code>
+ <code class="variable-quote">'</code><code class="variable-string">GetCommDefault</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "MPI_Comm (void)" at 0x7f25f9908630<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">PyPetscAO_Get</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "AO (PyObject *)" at 0x7fea3f706150><code class="variable-op"></code><span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
+ <code class="variable-quote">'</code><code class="variable-string">PyPetscAO_Get</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "AO (PyObject *)" at 0x7f25f9908d80><code class="variable-op"></code><span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
<code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">PyPetscAO_New</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "PyObject *(AO)" at 0x7fea3f706120><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">PyPetscComm_Get</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "MPI_Comm (PyObject *)" at 0x7fea3<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
+ <code class="variable-quote">'</code><code class="variable-string">PyPetscAO_New</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "PyObject *(AO)" at 0x7f25f9908d50><code class="variable-op">,</code>
+ <code class="variable-quote">'</code><code class="variable-string">PyPetscComm_Get</code><code class="variable-quote">'</code><code class="variable-op">: </code><capsule object "MPI_Comm (PyObject *)" at 0x7f25f<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
<code class="variable-ellipsis">...</code>
</pre></td></tr></table>
</dd>
@@ -625,7 +539,7 @@ a3f702960><code class="variable-op">,</code>
1211216<code class="variable-op">: </code><type 'petsc4py.PETSc.IS'><code class="variable-op">,</code>
1211217<code class="variable-op">: </code><type 'petsc4py.PETSc.LGMap'><code class="variable-op">,</code>
1211218<code class="variable-op">: </code><type 'petsc4py.PETSc.Section'><code class="variable-op">,</code>
- 1211219<code class="variable-op">: </code><type 'petsc4py.PETSc.Vec'><code class="variable-op">,</code>
+ 1211220<code class="variable-op">: </code><type 'petsc4py.PETSc.Vec'><code class="variable-op">,</code>
<code class="variable-ellipsis">...</code>
</pre></td></tr></table>
</dd>
@@ -664,7 +578,7 @@ a3f702960><code class="variable-op">,</code>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.AO-class.html b/docs/apiref/petsc4py.PETSc.AO-class.html
index becba16..c8d6b7b 100644
--- a/docs/apiref/petsc4py.PETSc.AO-class.html
+++ b/docs/apiref/petsc4py.PETSc.AO-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class AO</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type AO</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_ao" name="class_hierarchy_for_ao">
-<area shape="rect" id="node1" href="petsc4py.PETSc.AO-class.html" title="AO" alt="" coords="15,60,56,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-</map>
- <img src="class_hierarchy_for_ao.png" alt='' usemap="#class_hierarchy_for_ao" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,9 +84,7 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.AO.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -301,21 +294,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -350,9 +330,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -393,7 +370,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -497,7 +474,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.AO.Type-class.html b/docs/apiref/petsc4py.PETSc.AO.Type-class.html
index 9680be4..d769c65 100644
--- a/docs/apiref/petsc4py.PETSc.AO.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.AO.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type" name="class_hierarchy_for_type">
-<area shape="rect" id="node1" href="petsc4py.PETSc.AO.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type.png" alt='' usemap="#class_hierarchy_for_type" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Comm-class.html b/docs/apiref/petsc4py.PETSc.Comm-class.html
index 34500c9..2f09c59 100644
--- a/docs/apiref/petsc4py.PETSc.Comm-class.html
+++ b/docs/apiref/petsc4py.PETSc.Comm-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Comm</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Comm</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_comm" name="class_hierarchy_for_comm">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Comm-class.html" title="Comm" alt="" coords="5,5,67,31"/>
-</map>
- <img src="class_hierarchy_for_comm.png" alt='' usemap="#class_hierarchy_for_comm" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -415,24 +411,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -472,13 +450,6 @@
<a name="size"></a><span class="summary-name">size</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -554,7 +525,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DM-class.html b/docs/apiref/petsc4py.PETSc.DM-class.html
index 2b4a9ff..bfc7ea1 100644
--- a/docs/apiref/petsc4py.PETSc.DM-class.html
+++ b/docs/apiref/petsc4py.PETSc.DM-class.html
@@ -60,20 +60,17 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DM</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type DM</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_dm" name="class_hierarchy_for_dm">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DM-class.html" title="DM" alt="" coords="192,60,235,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.DMComposite-class.html" title="DMComposite" alt="" coords="5,115,112,140"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.DMDA-class.html" title="DMDA" alt="" coords="137,115,199,140"/>
-<area shape="rect" id="node4" href="petsc4py.PETSc.DMPlex-class.html" title="DMPlex" alt="" coords="224,115,293,140"/>
-<area shape="rect" id="node5" href="petsc4py.PETSc.DMShell-class.html" title="DMShell" alt="" coords="317,115,389,140"/>
-<area shape="rect" id="node6" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="183,5,243,31"/>
-</map>
- <img src="class_hierarchy_for_dm.png" alt='' usemap="#class_hierarchy_for_dm" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
+<dl><dt>Known Subclasses:</dt>
+<dd>
+ <ul class="subclass-list">
+<li><a href="petsc4py.PETSc.DMDA-class.html">DMDA</a></li><li>, <a href="petsc4py.PETSc.DMComposite-class.html">DMComposite</a></li><li>, <a href="petsc4py.PETSc.DMPlex-class.html">DMPlex</a></li><li>, <a href="petsc4py.PETSc.DMShell-class.html">DMShell</a></li> </ul>
+</dd></dl>
+
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
<a name="section-NestedClasses"></a>
@@ -93,16 +90,12 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DM.BoundaryType-class.html" class="summary-name">BoundaryType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DM.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -147,6 +140,41 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="adaptLabel"></a><span class="summary-sig-name">adaptLabel</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">label</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="adaptMetric"></a><span class="summary-sig-name">adaptMetric</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Vec metric</span>,
+ <span class="summary-sig-arg">label</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="clearLabelStratum"></a><span class="summary-sig-name">clearLabelStratum</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">name</span>,
<span class="summary-sig-arg">value</span>)</span></td>
@@ -303,6 +331,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="createFieldDecomposition"></a><span class="summary-sig-name">createFieldDecomposition</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="createGlobalVec"></a><span class="summary-sig-name">createGlobalVec</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -498,6 +542,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getCoarsenLevel"></a><span class="summary-sig-name">getCoarsenLevel</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getCoordinateDM"></a><span class="summary-sig-name">getCoordinateDM</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -626,6 +686,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getGlobalVec"></a><span class="summary-sig-name">getGlobalVec</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getLGMap"></a><span class="summary-sig-name">getLGMap</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -728,6 +804,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getLocalVec"></a><span class="summary-sig-name">getLocalVec</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getMatrix"></a><span class="summary-sig-name">getMatrix</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -776,6 +868,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getRefineLevel"></a><span class="summary-sig-name">getRefineLevel</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getStratumIS"></a><span class="summary-sig-name">getStratumIS</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">name</span>,
<span class="summary-sig-arg">value</span>)</span></td>
@@ -953,6 +1061,40 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="restoreGlobalVec"></a><span class="summary-sig-name">restoreGlobalVec</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Vec vg</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="restoreLocalVec"></a><span class="summary-sig-name">restoreLocalVec</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Vec vl</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setAppCtx"></a><span class="summary-sig-name">setAppCtx</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">appctx</span>)</span></td>
<td align="right" valign="top">
@@ -1071,6 +1213,25 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setKSPComputeOperators"></a><span class="summary-sig-name">setKSPComputeOperators</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">operators</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setLabelOutput"></a><span class="summary-sig-name">setLabelOutput</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">name</span>,
<span class="summary-sig-arg">output</span>)</span></td>
@@ -1160,6 +1321,61 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setRefineLevel"></a><span class="summary-sig-name">setRefineLevel</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">level</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setSNESFunction"></a><span class="summary-sig-name">setSNESFunction</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">function</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setSNESJacobian"></a><span class="summary-sig-name">setSNESJacobian</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">jacobian</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setType"></a><span class="summary-sig-name">setType</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">dm_type</span>)</span></td>
<td align="right" valign="top">
@@ -1250,21 +1466,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -1299,9 +1502,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1342,7 +1542,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -1491,7 +1691,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DM.BoundaryType-class.html b/docs/apiref/petsc4py.PETSc.DM.BoundaryType-class.html
index 7c40762..f0fa8a7 100644
--- a/docs/apiref/petsc4py.PETSc.DM.BoundaryType-class.html
+++ b/docs/apiref/petsc4py.PETSc.DM.BoundaryType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class BoundaryType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type BoundaryType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_boundaryty" name="class_hierarchy_for_boundaryty">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DM.BoundaryType-class.html" title="BoundaryType" alt="" coords="5,5,112,31"/>
-</map>
- <img src="class_hierarchy_for_boundaryty.png" alt='' usemap="#class_hierarchy_for_boundaryty" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -168,31 +127,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -224,7 +158,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DM.Type-class.html b/docs/apiref/petsc4py.PETSc.DM.Type-class.html
index 1ac2ddd..18c9c1a 100644
--- a/docs/apiref/petsc4py.PETSc.DM.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.DM.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_2" name="class_hierarchy_for_type_2">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DM.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_2.png" alt='' usemap="#class_hierarchy_for_type_2" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -203,31 +162,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -259,7 +193,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DMComposite-class.html b/docs/apiref/petsc4py.PETSc.DMComposite-class.html
index 77cb455..07c5294 100644
--- a/docs/apiref/petsc4py.PETSc.DMComposite-class.html
+++ b/docs/apiref/petsc4py.PETSc.DMComposite-class.html
@@ -60,16 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DMComposite</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type DMComposite</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_dmcomposit" name="class_hierarchy_for_dmcomposit">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DM-class.html" title="DM" alt="" coords="37,60,80,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.DMComposite-class.html" title="DMComposite" alt="" coords="5,115,112,140"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="29,5,89,31"/>
-</map>
- <img src="class_hierarchy_for_dmcomposit.png" alt='' usemap="#class_hierarchy_for_dmcomposit" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -328,6 +322,8 @@
<tr>
<td colspan="2" class="summary">
<p class="indent-wrapped-lines"><b>Inherited from <code><a href="petsc4py.PETSc.DM-class.html">DM</a></code></b>:
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptLabel">adaptLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptMetric">adaptMetric</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelStratum">clearLabelStratum</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelValue">clearLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clone">clone</a></code>,
@@ -336,6 +332,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#convert">convert</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createAggregates">createAggregates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createDefaultSF">createDefaultSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#createFieldDecomposition">createFieldDecomposition</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVec">createGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVector">createGlobalVector</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createInjection">createInjection</a></code>,
@@ -348,6 +345,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#destroy">destroy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getAppCtx">getAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getBlockSize">getBlockSize</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getCoarsenLevel">getCoarsenLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateDM">getCoordinateDM</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateSection">getCoordinateSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinates">getCoordinates</a></code>,
@@ -356,15 +354,18 @@
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSF">getDefaultSF</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSection">getDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDimension">getDimension</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getGlobalVec">getGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLGMap">getLGMap</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelIdIS">getLabelIdIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelName">getLabelName</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelOutput">getLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelSize">getLabelSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelValue">getLabelValue</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getLocalVec">getLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getMatrix">getMatrix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getNumLabels">getNumLabels</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getPointSF">getPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getRefineLevel">getRefineLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumIS">getStratumIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumSize">getStratumSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getType">getType</a></code>,
@@ -375,6 +376,8 @@
<code><a href="petsc4py.PETSc.DM-class.html#refine">refine</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#refineHierarchy">refineHierarchy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#removeLabel">removeLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreGlobalVec">restoreGlobalVec</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreLocalVec">restoreLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setAppCtx">setAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinates">setCoordinates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinatesLocal">setCoordinatesLocal</a></code>,
@@ -382,11 +385,15 @@
<code><a href="petsc4py.PETSc.DM-class.html#setDefaultSection">setDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setDimension">setDimension</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setFromOptions">setFromOptions</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setKSPComputeOperators">setKSPComputeOperators</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelOutput">setLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelValue">setLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setMatType">setMatType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setPointSF">setPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setRefineLevel">setRefineLevel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESFunction">setSNESFunction</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESJacobian">setSNESJacobian</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setType">setType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setUp">setUp</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setVecType">setVecType</a></code>,
@@ -419,21 +426,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -468,9 +462,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -511,7 +502,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -594,7 +585,7 @@ Use via 'with' context manager (PEP 343).</blockquote>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DMDA-class.html b/docs/apiref/petsc4py.PETSc.DMDA-class.html
index d25c438..c9ee58d 100644
--- a/docs/apiref/petsc4py.PETSc.DMDA-class.html
+++ b/docs/apiref/petsc4py.PETSc.DMDA-class.html
@@ -60,16 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DMDA</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type DMDA</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_dmda" name="class_hierarchy_for_dmda">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DM-class.html" title="DM" alt="" coords="15,60,58,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.DMDA-class.html" title="DMDA" alt="" coords="5,115,68,140"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="7,5,67,31"/>
-</map>
- <img src="class_hierarchy_for_dmda.png" alt='' usemap="#class_hierarchy_for_dmda" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -90,23 +84,17 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMDA.ElementType-class.html" class="summary-name">ElementType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMDA.InterpolationType-class.html" class="summary-name">InterpolationType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.DMDA.StencilType-class.html" class="summary-name">StencilType</a>
</td>
</tr>
@@ -908,6 +896,8 @@
<tr>
<td colspan="2" class="summary">
<p class="indent-wrapped-lines"><b>Inherited from <code><a href="petsc4py.PETSc.DM-class.html">DM</a></code></b>:
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptLabel">adaptLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptMetric">adaptMetric</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelStratum">clearLabelStratum</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelValue">clearLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clone">clone</a></code>,
@@ -916,6 +906,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#convert">convert</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createAggregates">createAggregates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createDefaultSF">createDefaultSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#createFieldDecomposition">createFieldDecomposition</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVec">createGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVector">createGlobalVector</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createInjection">createInjection</a></code>,
@@ -928,6 +919,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#destroy">destroy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getAppCtx">getAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getBlockSize">getBlockSize</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getCoarsenLevel">getCoarsenLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateDM">getCoordinateDM</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateSection">getCoordinateSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinates">getCoordinates</a></code>,
@@ -936,15 +928,18 @@
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSF">getDefaultSF</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSection">getDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDimension">getDimension</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getGlobalVec">getGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLGMap">getLGMap</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelIdIS">getLabelIdIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelName">getLabelName</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelOutput">getLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelSize">getLabelSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelValue">getLabelValue</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getLocalVec">getLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getMatrix">getMatrix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getNumLabels">getNumLabels</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getPointSF">getPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getRefineLevel">getRefineLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumIS">getStratumIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumSize">getStratumSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getType">getType</a></code>,
@@ -955,6 +950,8 @@
<code><a href="petsc4py.PETSc.DM-class.html#refine">refine</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#refineHierarchy">refineHierarchy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#removeLabel">removeLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreGlobalVec">restoreGlobalVec</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreLocalVec">restoreLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setAppCtx">setAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinates">setCoordinates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinatesLocal">setCoordinatesLocal</a></code>,
@@ -962,11 +959,15 @@
<code><a href="petsc4py.PETSc.DM-class.html#setDefaultSection">setDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setDimension">setDimension</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setFromOptions">setFromOptions</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setKSPComputeOperators">setKSPComputeOperators</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelOutput">setLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelValue">setLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setMatType">setMatType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setPointSF">setPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setRefineLevel">setRefineLevel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESFunction">setSNESFunction</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESJacobian">setSNESJacobian</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setType">setType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setUp">setUp</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setVecType">setVecType</a></code>,
@@ -999,21 +1000,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -1132,9 +1120,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1175,7 +1160,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -1244,7 +1229,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DMDA.ElementType-class.html b/docs/apiref/petsc4py.PETSc.DMDA.ElementType-class.html
index e4fb0b9..f3507e7 100644
--- a/docs/apiref/petsc4py.PETSc.DMDA.ElementType-class.html
+++ b/docs/apiref/petsc4py.PETSc.DMDA.ElementType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ElementType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ElementType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_elementtyp" name="class_hierarchy_for_elementtyp">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DMDA.ElementType-class.html" title="ElementType" alt="" coords="5,5,104,31"/>
-</map>
- <img src="class_hierarchy_for_elementtyp.png" alt='' usemap="#class_hierarchy_for_elementtyp" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -147,31 +106,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DMDA.InterpolationType-class.html b/docs/apiref/petsc4py.PETSc.DMDA.InterpolationType-class.html
index ee20d87..43d6cc0 100644
--- a/docs/apiref/petsc4py.PETSc.DMDA.InterpolationType-class.html
+++ b/docs/apiref/petsc4py.PETSc.DMDA.InterpolationType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class InterpolationType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type InterpolationType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_interpolat" name="class_hierarchy_for_interpolat">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DMDA.InterpolationType-class.html" title="InterpolationType" alt="" coords="5,5,128,31"/>
-</map>
- <img src="class_hierarchy_for_interpolat.png" alt='' usemap="#class_hierarchy_for_interpolat" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -147,31 +106,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DMDA.StencilType-class.html b/docs/apiref/petsc4py.PETSc.DMDA.StencilType-class.html
index 138b7fe..f6b0776 100644
--- a/docs/apiref/petsc4py.PETSc.DMDA.StencilType-class.html
+++ b/docs/apiref/petsc4py.PETSc.DMDA.StencilType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class StencilType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type StencilType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_stenciltyp" name="class_hierarchy_for_stenciltyp">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DMDA.StencilType-class.html" title="StencilType" alt="" coords="5,5,96,31"/>
-</map>
- <img src="class_hierarchy_for_stenciltyp.png" alt='' usemap="#class_hierarchy_for_stenciltyp" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -147,31 +106,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DMPlex-class.html b/docs/apiref/petsc4py.PETSc.DMPlex-class.html
index a71f66f..b34e93d 100644
--- a/docs/apiref/petsc4py.PETSc.DMPlex-class.html
+++ b/docs/apiref/petsc4py.PETSc.DMPlex-class.html
@@ -60,16 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DMPlex</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type DMPlex</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_dmplex" name="class_hierarchy_for_dmplex">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DM-class.html" title="DM" alt="" coords="19,60,61,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.DMPlex-class.html" title="DMPlex" alt="" coords="5,115,75,140"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="10,5,70,31"/>
-</map>
- <img src="class_hierarchy_for_dmplex.png" alt='' usemap="#class_hierarchy_for_dmplex" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -155,6 +149,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="constructGhostCells"></a><span class="summary-sig-name">constructGhostCells</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">labelName</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a href="petsc4py.PETSc.DMPlex-class.html#create" class="summary-sig-name">create</a>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">comm</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -174,6 +185,7 @@
<tr>
<td><span class="summary-sig"><a name="createBoxMesh"></a><span class="summary-sig-name">createBoxMesh</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">dim</span>,
+ <span class="summary-sig-arg">numFaces</span>=<span class="summary-sig-default">1</span>,
<span class="summary-sig-arg">interpolate</span>=<span class="summary-sig-default">True</span>,
<span class="summary-sig-arg">comm</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -341,6 +353,25 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="createFromFile"></a><span class="summary-sig-name">createFromFile</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">filename</span>,
+ <span class="summary-sig-arg">interpolate</span>=<span class="summary-sig-default">True</span>,
+ <span class="summary-sig-arg">comm</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="createGmsh"></a><span class="summary-sig-name">createGmsh</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Viewer viewer</span>,
<span class="summary-sig-arg">interpolate</span>=<span class="summary-sig-default">True</span>,
@@ -510,6 +541,71 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getAdjacency"></a><span class="summary-sig-name">getAdjacency</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">p</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getAdjacencyUseAnchors"></a><span class="summary-sig-name">getAdjacencyUseAnchors</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getAdjacencyUseClosure"></a><span class="summary-sig-name">getAdjacencyUseClosure</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getAdjacencyUseCone"></a><span class="summary-sig-name">getAdjacencyUseCone</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getCellNumbering"></a><span class="summary-sig-name">getCellNumbering</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -726,6 +822,76 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getPointGlobal"></a><span class="summary-sig-name">getPointGlobal</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">point</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getPointGlobalField"></a><span class="summary-sig-name">getPointGlobalField</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">point</span>,
+ <span class="summary-sig-arg">field</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getPointLocal"></a><span class="summary-sig-name">getPointLocal</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">point</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getPointLocalField"></a><span class="summary-sig-name">getPointLocalField</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">point</span>,
+ <span class="summary-sig-arg">field</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getRefinementLimit"></a><span class="summary-sig-name">getRefinementLimit</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -810,6 +976,25 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getVecClosure"></a><span class="summary-sig-name">getVecClosure</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Section sec</span>,
+ <span class="summary-sig-arg">Vec vec</span>,
+ <span class="summary-sig-arg">point</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getVertexNumbering"></a><span class="summary-sig-name">getVertexNumbering</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -864,6 +1049,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="interpolate"></a><span class="summary-sig-name">interpolate</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="markBoundaryFaces"></a><span class="summary-sig-name">markBoundaryFaces</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">label</span>)</span></td>
<td align="right" valign="top">
@@ -914,6 +1115,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setAdjacencyUseAnchors"></a><span class="summary-sig-name">setAdjacencyUseAnchors</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">useAnchors</span>=<span class="summary-sig-default">True</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setAdjacencyUseClosure"></a><span class="summary-sig-name">setAdjacencyUseClosure</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">useClosure</span>=<span class="summary-sig-default">True</span>)</span></td>
<td align="right" valign="top">
@@ -1021,6 +1239,45 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setMatClosure"></a><span class="summary-sig-name">setMatClosure</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Section sec</span>,
+ <span class="summary-sig-arg">Section gsec</span>,
+ <span class="summary-sig-arg">Mat mat</span>,
+ <span class="summary-sig-arg">point</span>,
+ <span class="summary-sig-arg">values</span>,
+ <span class="summary-sig-arg">addv</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setPartitioner"></a><span class="summary-sig-name">setPartitioner</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Partitioner part</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setRefinementLimit"></a><span class="summary-sig-name">setRefinementLimit</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">refinementLimit</span>)</span></td>
<td align="right" valign="top">
@@ -1125,6 +1382,27 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setVecClosure"></a><span class="summary-sig-name">setVecClosure</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Section sec</span>,
+ <span class="summary-sig-arg">Vec vec</span>,
+ <span class="summary-sig-arg">point</span>,
+ <span class="summary-sig-arg">values</span>,
+ <span class="summary-sig-arg">addv</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="stratify"></a><span class="summary-sig-name">stratify</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -1157,6 +1435,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="uninterpolate"></a><span class="summary-sig-name">uninterpolate</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="vecGetClosure"></a><span class="summary-sig-name">vecGetClosure</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Section sec</span>,
<span class="summary-sig-arg">Vec vec</span>,
@@ -1173,6 +1467,8 @@
<tr>
<td colspan="2" class="summary">
<p class="indent-wrapped-lines"><b>Inherited from <code><a href="petsc4py.PETSc.DM-class.html">DM</a></code></b>:
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptLabel">adaptLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptMetric">adaptMetric</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelStratum">clearLabelStratum</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelValue">clearLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clone">clone</a></code>,
@@ -1181,6 +1477,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#convert">convert</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createAggregates">createAggregates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createDefaultSF">createDefaultSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#createFieldDecomposition">createFieldDecomposition</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVec">createGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVector">createGlobalVector</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createInjection">createInjection</a></code>,
@@ -1193,6 +1490,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#destroy">destroy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getAppCtx">getAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getBlockSize">getBlockSize</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getCoarsenLevel">getCoarsenLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateDM">getCoordinateDM</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateSection">getCoordinateSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinates">getCoordinates</a></code>,
@@ -1201,15 +1499,18 @@
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSF">getDefaultSF</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSection">getDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDimension">getDimension</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getGlobalVec">getGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLGMap">getLGMap</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelIdIS">getLabelIdIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelName">getLabelName</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelOutput">getLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelSize">getLabelSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelValue">getLabelValue</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getLocalVec">getLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getMatrix">getMatrix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getNumLabels">getNumLabels</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getPointSF">getPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getRefineLevel">getRefineLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumIS">getStratumIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumSize">getStratumSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getType">getType</a></code>,
@@ -1220,6 +1521,8 @@
<code><a href="petsc4py.PETSc.DM-class.html#refine">refine</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#refineHierarchy">refineHierarchy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#removeLabel">removeLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreGlobalVec">restoreGlobalVec</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreLocalVec">restoreLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setAppCtx">setAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinates">setCoordinates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinatesLocal">setCoordinatesLocal</a></code>,
@@ -1227,11 +1530,15 @@
<code><a href="petsc4py.PETSc.DM-class.html#setDefaultSection">setDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setDimension">setDimension</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setFromOptions">setFromOptions</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setKSPComputeOperators">setKSPComputeOperators</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelOutput">setLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelValue">setLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setMatType">setMatType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setPointSF">setPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setRefineLevel">setRefineLevel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESFunction">setSNESFunction</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESJacobian">setSNESJacobian</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setType">setType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setUp">setUp</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setVecType">setVecType</a></code>,
@@ -1264,21 +1571,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -1313,9 +1607,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1356,7 +1647,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -1416,7 +1707,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.DMShell-class.html b/docs/apiref/petsc4py.PETSc.DMShell-class.html
index 6c3a8ad..e2b66cd 100644
--- a/docs/apiref/petsc4py.PETSc.DMShell-class.html
+++ b/docs/apiref/petsc4py.PETSc.DMShell-class.html
@@ -60,16 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DMShell</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type DMShell</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_dmshell" name="class_hierarchy_for_dmshell">
-<area shape="rect" id="node1" href="petsc4py.PETSc.DM-class.html" title="DM" alt="" coords="20,60,63,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.DMShell-class.html" title="DMShell" alt="" coords="5,115,77,140"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="11,5,71,31"/>
-</map>
- <img src="class_hierarchy_for_dmshell.png" alt='' usemap="#class_hierarchy_for_dmshell" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -174,6 +168,44 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setCreateDomainDecomposition"></a><span class="summary-sig-name">setCreateDomainDecomposition</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">decomp</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setCreateDomainDecompositionScatters"></a><span class="summary-sig-name">setCreateDomainDecompositionScatters</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">scatter</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setCreateFieldDecomposition"></a><span class="summary-sig-name">setCreateFieldDecomposition</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">decomp</span>,
<span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
@@ -288,6 +320,25 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setCreateRestriction"></a><span class="summary-sig-name">setCreateRestriction</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">create_restriction</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setCreateSubDM"></a><span class="summary-sig-name">setCreateSubDM</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">create_subdm</span>,
<span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
@@ -491,6 +542,8 @@
<tr>
<td colspan="2" class="summary">
<p class="indent-wrapped-lines"><b>Inherited from <code><a href="petsc4py.PETSc.DM-class.html">DM</a></code></b>:
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptLabel">adaptLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#adaptMetric">adaptMetric</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelStratum">clearLabelStratum</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clearLabelValue">clearLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#clone">clone</a></code>,
@@ -499,6 +552,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#convert">convert</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createAggregates">createAggregates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createDefaultSF">createDefaultSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#createFieldDecomposition">createFieldDecomposition</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVec">createGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createGlobalVector">createGlobalVector</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#createInjection">createInjection</a></code>,
@@ -511,6 +565,7 @@
<code><a href="petsc4py.PETSc.DM-class.html#destroy">destroy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getAppCtx">getAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getBlockSize">getBlockSize</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getCoarsenLevel">getCoarsenLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateDM">getCoordinateDM</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinateSection">getCoordinateSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getCoordinates">getCoordinates</a></code>,
@@ -519,15 +574,18 @@
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSF">getDefaultSF</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDefaultSection">getDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getDimension">getDimension</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getGlobalVec">getGlobalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLGMap">getLGMap</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelIdIS">getLabelIdIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelName">getLabelName</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelOutput">getLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelSize">getLabelSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getLabelValue">getLabelValue</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getLocalVec">getLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getMatrix">getMatrix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getNumLabels">getNumLabels</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getPointSF">getPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#getRefineLevel">getRefineLevel</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumIS">getStratumIS</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getStratumSize">getStratumSize</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#getType">getType</a></code>,
@@ -538,6 +596,8 @@
<code><a href="petsc4py.PETSc.DM-class.html#refine">refine</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#refineHierarchy">refineHierarchy</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#removeLabel">removeLabel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreGlobalVec">restoreGlobalVec</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#restoreLocalVec">restoreLocalVec</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setAppCtx">setAppCtx</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinates">setCoordinates</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setCoordinatesLocal">setCoordinatesLocal</a></code>,
@@ -545,11 +605,15 @@
<code><a href="petsc4py.PETSc.DM-class.html#setDefaultSection">setDefaultSection</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setDimension">setDimension</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setFromOptions">setFromOptions</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setKSPComputeOperators">setKSPComputeOperators</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelOutput">setLabelOutput</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setLabelValue">setLabelValue</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setMatType">setMatType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setPointSF">setPointSF</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setRefineLevel">setRefineLevel</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESFunction">setSNESFunction</a></code>,
+ <code><a href="petsc4py.PETSc.DM-class.html#setSNESJacobian">setSNESJacobian</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setType">setType</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setUp">setUp</a></code>,
<code><a href="petsc4py.PETSc.DM-class.html#setVecType">setVecType</a></code>,
@@ -582,21 +646,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -631,9 +682,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -674,7 +722,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -734,7 +782,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Error-class.html b/docs/apiref/petsc4py.PETSc.Error-class.html
index 8e281fa..5244d08 100644
--- a/docs/apiref/petsc4py.PETSc.Error-class.html
+++ b/docs/apiref/petsc4py.PETSc.Error-class.html
@@ -60,18 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Error</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Error</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_error" name="class_hierarchy_for_error">
-<area shape="rect" id="node1" href="javascript:void(0);" title="exceptions.BaseException" alt="" coords="5,5,183,31"/>
-<area shape="rect" id="node2" href="javascript:void(0);" title="exceptions.Exception" alt="" coords="21,60,167,85"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="exceptions.StandardError" alt="" coords="9,115,179,140"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="exceptions.RuntimeError" alt="" coords="11,169,177,195"/>
-<area shape="rect" id="node5" href="petsc4py.PETSc.Error-class.html" title="Error" alt="" coords="69,224,119,249"/>
-</map>
- <img src="class_hierarchy_for_error.png" alt='' usemap="#class_hierarchy_for_error" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -172,13 +164,6 @@
<code>__setstate__</code>,
<code>__unicode__</code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
</td>
</tr>
</table>
@@ -237,9 +222,6 @@
<code>args</code>,
<code>message</code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -280,7 +262,7 @@
x.__init__(...) initializes x; see help(type(x)) for signature
<dl class="fields">
<dt>Overrides:
- object.__init__
+ exceptions.BaseException.__init__
</dt>
</dl>
</td></tr></table>
@@ -303,7 +285,7 @@
<dl class="fields">
<dt>Overrides:
- object.__repr__
+ exceptions.BaseException.__repr__
</dt>
</dl>
</td></tr></table>
@@ -326,7 +308,7 @@
<dl class="fields">
<dt>Overrides:
- object.__str__
+ exceptions.BaseException.__str__
</dt>
</dl>
</td></tr></table>
@@ -363,7 +345,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.IS-class.html b/docs/apiref/petsc4py.PETSc.IS-class.html
index 3f2668e..0521186 100644
--- a/docs/apiref/petsc4py.PETSc.IS-class.html
+++ b/docs/apiref/petsc4py.PETSc.IS-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class IS</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type IS</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_is" name="class_hierarchy_for_is">
-<area shape="rect" id="node1" href="petsc4py.PETSc.IS-class.html" title="IS" alt="" coords="18,60,53,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-</map>
- <img src="class_hierarchy_for_is.png" alt='' usemap="#class_hierarchy_for_is" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,9 +84,7 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.IS.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -849,21 +842,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -968,9 +948,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1011,7 +988,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -1115,7 +1092,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.IS.Type-class.html b/docs/apiref/petsc4py.PETSc.IS.Type-class.html
index 9a33068..b9acbdf 100644
--- a/docs/apiref/petsc4py.PETSc.IS.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.IS.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_3" name="class_hierarchy_for_type_3">
-<area shape="rect" id="node1" href="petsc4py.PETSc.IS.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_3.png" alt='' usemap="#class_hierarchy_for_type_3" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -154,31 +113,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -210,7 +144,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.InsertMode-class.html b/docs/apiref/petsc4py.PETSc.InsertMode-class.html
index ab4e3fd..bf6e1ad 100644
--- a/docs/apiref/petsc4py.PETSc.InsertMode-class.html
+++ b/docs/apiref/petsc4py.PETSc.InsertMode-class.html
@@ -60,53 +60,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class InsertMode</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type InsertMode</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_insertmode" name="class_hierarchy_for_insertmode">
-<area shape="rect" id="node1" href="petsc4py.PETSc.InsertMode-class.html" title="InsertMode" alt="" coords="5,5,92,31"/>
-</map>
- <img src="class_hierarchy_for_insertmode.png" alt='' usemap="#class_hierarchy_for_insertmode" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -237,31 +196,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -293,7 +227,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.KSP-class.html b/docs/apiref/petsc4py.PETSc.KSP-class.html
index 0cffc62..da2093c 100644
--- a/docs/apiref/petsc4py.PETSc.KSP-class.html
+++ b/docs/apiref/petsc4py.PETSc.KSP-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class KSP</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type KSP</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_ksp" name="class_hierarchy_for_ksp">
-<area shape="rect" id="node1" href="petsc4py.PETSc.KSP-class.html" title="KSP" alt="" coords="11,60,60,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-</map>
- <img src="class_hierarchy_for_ksp.png" alt='' usemap="#class_hierarchy_for_ksp" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,23 +84,17 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.KSP.ConvergedReason-class.html" class="summary-name">ConvergedReason</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.KSP.NormType-class.html" class="summary-name">NormType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.KSP.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -1317,21 +1306,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -1520,9 +1496,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1563,7 +1536,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -1734,7 +1707,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.KSP.ConvergedReason-class.html b/docs/apiref/petsc4py.PETSc.KSP.ConvergedReason-class.html
index c9179c8..c9bcfdc 100644
--- a/docs/apiref/petsc4py.PETSc.KSP.ConvergedReason-class.html
+++ b/docs/apiref/petsc4py.PETSc.KSP.ConvergedReason-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ConvergedReason</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ConvergedReason</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_convergedr" name="class_hierarchy_for_convergedr">
-<area shape="rect" id="node1" href="petsc4py.PETSc.KSP.ConvergedReason-class.html" title="ConvergedReason" alt="" coords="5,5,136,31"/>
-</map>
- <img src="class_hierarchy_for_convergedr.png" alt='' usemap="#class_hierarchy_for_convergedr" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -273,31 +232,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -329,7 +263,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:47 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.KSP.NormType-class.html b/docs/apiref/petsc4py.PETSc.KSP.NormType-class.html
index 2c35c58..ce4f126 100644
--- a/docs/apiref/petsc4py.PETSc.KSP.NormType-class.html
+++ b/docs/apiref/petsc4py.PETSc.KSP.NormType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NormType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type NormType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_normtype" name="class_hierarchy_for_normtype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.KSP.NormType-class.html" title="NormType" alt="" coords="5,5,88,31"/>
-</map>
- <img src="class_hierarchy_for_normtype.png" alt='' usemap="#class_hierarchy_for_normtype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -210,31 +169,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -266,7 +200,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.KSP.Type-class.html b/docs/apiref/petsc4py.PETSc.KSP.Type-class.html
index 013063a..f7a7ec6 100644
--- a/docs/apiref/petsc4py.PETSc.KSP.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.KSP.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_4" name="class_hierarchy_for_type_4">
-<area shape="rect" id="node1" href="petsc4py.PETSc.KSP.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_4.png" alt='' usemap="#class_hierarchy_for_type_4" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -157,6 +116,13 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
+ <a name="CGGLTR"></a><span class="summary-name">CGGLTR</span> = <code title="'gltr'"><code class="variable-quote">'</code><code class="variable-string">gltr</code><code class="variable-quote">'</code></code>
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
<a name="CGLS"></a><span class="summary-name">CGLS</span> = <code title="'cgls'"><code class="variable-quote">'</code><code class="variable-string">cgls</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -164,6 +130,13 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
+ <a name="CGNASH"></a><span class="summary-name">CGNASH</span> = <code title="'nash'"><code class="variable-quote">'</code><code class="variable-string">nash</code><code class="variable-quote">'</code></code>
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
<a name="CGNE"></a><span class="summary-name">CGNE</span> = <code title="'cgne'"><code class="variable-quote">'</code><code class="variable-string">cgne</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -178,6 +151,13 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
+ <a name="CGSTCG"></a><span class="summary-name">CGSTCG</span> = <code title="'stcg'"><code class="variable-quote">'</code><code class="variable-string">stcg</code><code class="variable-quote">'</code></code>
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
<a name="CHEBYSHEV"></a><span class="summary-name">CHEBYSHEV</span> = <code title="'chebyshev'"><code class="variable-quote">'</code><code class="variable-string">chebyshev</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -220,21 +200,21 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="FGMRES"></a><span class="summary-name">FGMRES</span> = <code title="'fgmres'"><code class="variable-quote">'</code><code class="variable-string">fgmres</code><code class="variable-quote">'</code></code>
+ <a name="FETIDP"></a><span class="summary-name">FETIDP</span> = <code title="'fetidp'"><code class="variable-quote">'</code><code class="variable-string">fetidp</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="GCR"></a><span class="summary-name">GCR</span> = <code title="'gcr'"><code class="variable-quote">'</code><code class="variable-string">gcr</code><code class="variable-quote">'</code></code>
+ <a name="FGMRES"></a><span class="summary-name">FGMRES</span> = <code title="'fgmres'"><code class="variable-quote">'</code><code class="variable-string">fgmres</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="GLTR"></a><span class="summary-name">GLTR</span> = <code title="'gltr'"><code class="variable-quote">'</code><code class="variable-string">gltr</code><code class="variable-quote">'</code></code>
+ <a name="GCR"></a><span class="summary-name">GCR</span> = <code title="'gcr'"><code class="variable-quote">'</code><code class="variable-string">gcr</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
@@ -290,13 +270,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="NASH"></a><span class="summary-name">NASH</span> = <code title="'nash'"><code class="variable-quote">'</code><code class="variable-string">nash</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="PGMRES"></a><span class="summary-name">PGMRES</span> = <code title="'pgmres'"><code class="variable-quote">'</code><code class="variable-string">pgmres</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -374,13 +347,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="STCG"></a><span class="summary-name">STCG</span> = <code title="'stcg'"><code class="variable-quote">'</code><code class="variable-string">stcg</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="SYMMLQ"></a><span class="summary-name">SYMMLQ</span> = <code title="'symmlq'"><code class="variable-quote">'</code><code class="variable-string">symmlq</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -413,31 +379,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -469,7 +410,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.LGMap-class.html b/docs/apiref/petsc4py.PETSc.LGMap-class.html
index 860d2cb..7741dfc 100644
--- a/docs/apiref/petsc4py.PETSc.LGMap-class.html
+++ b/docs/apiref/petsc4py.PETSc.LGMap-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class LGMap</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type LGMap</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_lgmap" name="class_hierarchy_for_lgmap">
-<area shape="rect" id="node1" href="petsc4py.PETSc.LGMap-class.html" title="LGMap" alt="" coords="5,60,69,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="7,5,67,31"/>
-</map>
- <img src="class_hierarchy_for_lgmap.png" alt='' usemap="#class_hierarchy_for_lgmap" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,10 +84,13 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a href="petsc4py.PETSc.LGMap.MapType-class.html" class="summary-name">MapType</a>
+ <td class="summary" colspan="2">
+ <a href="petsc4py.PETSc.LGMap.MapMode-class.html" class="summary-name">MapMode</a>
+ </td>
+ </tr>
+<tr>
+ <td class="summary" colspan="2">
+ <a href="petsc4py.PETSc.LGMap.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
</table>
@@ -190,7 +188,7 @@
<tr>
<td><span class="summary-sig"><a name="applyBlockInverse"></a><span class="summary-sig-name">applyBlockInverse</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">indices</span>,
- <span class="summary-sig-arg">map_type</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -225,7 +223,7 @@
<tr>
<td><span class="summary-sig"><a name="applyInverse"></a><span class="summary-sig-name">applyInverse</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">indices</span>,
- <span class="summary-sig-arg">map_type</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -407,6 +405,39 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a href="petsc4py.PETSc.LGMap-class.html#setFromOptions" class="summary-sig-name">setFromOptions</a>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setType"></a><span class="summary-sig-name">setType</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">lgmap_type</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a href="petsc4py.PETSc.LGMap-class.html#view" class="summary-sig-name">view</a>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Viewer viewer</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -446,25 +477,11 @@
<code><a href="petsc4py.PETSc.Object-class.html#incrementTabLevel">incrementTabLevel</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#query">query</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#setFromOptions">setFromOptions</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -541,9 +558,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -584,7 +598,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -611,6 +625,28 @@
</dl>
</td></tr></table>
</div>
+<a name="setFromOptions"></a>
+<div>
+<table class="details" border="1" cellpadding="3"
+ cellspacing="0" width="100%" bgcolor="white">
+<tr><td>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr valign="top"><td>
+ <h3 class="epydoc"><span class="sig"><span class="sig-name">setFromOptions</span>(<span class="sig-arg">self</span>)</span>
+ </h3>
+ </td><td align="right" valign="top"
+ >
+ </td>
+ </tr></table>
+
+
+ <dl class="fields">
+ <dt>Overrides:
+ <a href="petsc4py.PETSc.Object-class.html#setFromOptions">Object.setFromOptions</a>
+ </dt>
+ </dl>
+</td></tr></table>
+</div>
<a name="view"></a>
<div>
<table class="details" border="1" cellpadding="3"
@@ -666,7 +702,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.LGMap.MapType-class.html b/docs/apiref/petsc4py.PETSc.LGMap.MapMode-class.html
similarity index 64%
copy from docs/apiref/petsc4py.PETSc.LGMap.MapType-class.html
copy to docs/apiref/petsc4py.PETSc.LGMap.MapMode-class.html
index ceee697..7f98a59 100644
--- a/docs/apiref/petsc4py.PETSc.LGMap.MapType-class.html
+++ b/docs/apiref/petsc4py.PETSc.LGMap.MapMode-class.html
@@ -3,7 +3,7 @@
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
- <title>petsc4py.PETSc.LGMap.MapType</title>
+ <title>petsc4py.PETSc.LGMap.MapMode</title>
<link rel="stylesheet" href="epydoc.css" type="text/css" />
<script type="text/javascript" src="epydoc.js"></script>
</head>
@@ -45,7 +45,7 @@
<a href="petsc4py-module.html">Package petsc4py</a> ::
<a href="petsc4py.PETSc-module.html">Module PETSc</a> ::
<a href="petsc4py.PETSc.LGMap-class.html">Class LGMap</a> ::
- Class MapType
+ Class MapMode
</span>
</td>
<td>
@@ -55,59 +55,18 @@
onclick="toggle_private();">hide private</a>]</span></td></tr>
<tr><td align="right"><span class="options"
>[<a href="frames.html" target="_top">frames</a
- >] | <a href="petsc4py.PETSc.LGMap.MapType-class.html"
+ >] | <a href="petsc4py.PETSc.LGMap.MapMode-class.html"
target="_top">no frames</a>]</span></td></tr>
</table>
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class MapType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type MapMode</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_maptype" name="class_hierarchy_for_maptype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.LGMap.MapType-class.html" title="MapType" alt="" coords="5,5,81,31"/>
-</map>
- <img src="class_hierarchy_for_maptype.png" alt='' usemap="#class_hierarchy_for_maptype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -143,32 +102,7 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'GLMapType'"><code class="variable-quote">'</code><code class="variable-string">GLMapType</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
+ <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'GLMapMode'"><code class="variable-quote">'</code><code class="variable-string">GLMapMode</code><code class="variable-quote">'</code></code>
</td>
</tr>
</table>
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.LGMap.MapType-class.html b/docs/apiref/petsc4py.PETSc.LGMap.Type-class.html
similarity index 62%
rename from docs/apiref/petsc4py.PETSc.LGMap.MapType-class.html
rename to docs/apiref/petsc4py.PETSc.LGMap.Type-class.html
index ceee697..f0dc2e4 100644
--- a/docs/apiref/petsc4py.PETSc.LGMap.MapType-class.html
+++ b/docs/apiref/petsc4py.PETSc.LGMap.Type-class.html
@@ -3,7 +3,7 @@
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
- <title>petsc4py.PETSc.LGMap.MapType</title>
+ <title>petsc4py.PETSc.LGMap.Type</title>
<link rel="stylesheet" href="epydoc.css" type="text/css" />
<script type="text/javascript" src="epydoc.js"></script>
</head>
@@ -45,7 +45,7 @@
<a href="petsc4py-module.html">Package petsc4py</a> ::
<a href="petsc4py.PETSc-module.html">Module PETSc</a> ::
<a href="petsc4py.PETSc.LGMap-class.html">Class LGMap</a> ::
- Class MapType
+ Class Type
</span>
</td>
<td>
@@ -55,59 +55,18 @@
onclick="toggle_private();">hide private</a>]</span></td></tr>
<tr><td align="right"><span class="options"
>[<a href="frames.html" target="_top">frames</a
- >] | <a href="petsc4py.PETSc.LGMap.MapType-class.html"
+ >] | <a href="petsc4py.PETSc.LGMap.Type-class.html"
target="_top">no frames</a>]</span></td></tr>
</table>
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class MapType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_maptype" name="class_hierarchy_for_maptype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.LGMap.MapType-class.html" title="MapType" alt="" coords="5,5,81,31"/>
-</map>
- <img src="class_hierarchy_for_maptype.png" alt='' usemap="#class_hierarchy_for_maptype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -129,46 +88,21 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="DROP"></a><span class="summary-name">DROP</span> = <code title="1">1</code>
+ <a name="BASIC"></a><span class="summary-name">BASIC</span> = <code title="'basic'"><code class="variable-quote">'</code><code class="variable-string">basic</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="MASK"></a><span class="summary-name">MASK</span> = <code title="0">0</code>
+ <a name="HASH"></a><span class="summary-name">HASH</span> = <code title="'hash'"><code class="variable-quote">'</code><code class="variable-string">hash</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'GLMapType'"><code class="variable-quote">'</code><code class="variable-string">GLMapType</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
+ <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'LGMapType'"><code class="variable-quote">'</code><code class="variable-string">LGMapType</code><code class="variable-quote">'</code></code>
</td>
</tr>
</table>
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Log-class.html b/docs/apiref/petsc4py.PETSc.Log-class.html
index 4d203a2..78ee660 100644
--- a/docs/apiref/petsc4py.PETSc.Log-class.html
+++ b/docs/apiref/petsc4py.PETSc.Log-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Log</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Log</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_log" name="class_hierarchy_for_log">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Log-class.html" title="Log" alt="" coords="5,5,48,31"/>
-</map>
- <img src="class_hierarchy_for_log.png" alt='' usemap="#class_hierarchy_for_log" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -288,49 +284,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -406,7 +359,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.LogClass-class.html b/docs/apiref/petsc4py.PETSc.LogClass-class.html
index eb45180..2df1aee 100644
--- a/docs/apiref/petsc4py.PETSc.LogClass-class.html
+++ b/docs/apiref/petsc4py.PETSc.LogClass-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class LogClass</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type LogClass</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_logclass" name="class_hierarchy_for_logclass">
-<area shape="rect" id="node1" href="petsc4py.PETSc.LogClass-class.html" title="LogClass" alt="" coords="5,5,83,31"/>
-</map>
- <img src="class_hierarchy_for_logclass.png" alt='' usemap="#class_hierarchy_for_logclass" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -217,24 +213,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -274,13 +252,6 @@
<a name="name"></a><span class="summary-name">name</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -356,7 +327,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.LogEvent-class.html b/docs/apiref/petsc4py.PETSc.LogEvent-class.html
index 47a7e3a..d02a8a4 100644
--- a/docs/apiref/petsc4py.PETSc.LogEvent-class.html
+++ b/docs/apiref/petsc4py.PETSc.LogEvent-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class LogEvent</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type LogEvent</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_logevent" name="class_hierarchy_for_logevent">
-<area shape="rect" id="node1" href="petsc4py.PETSc.LogEvent-class.html" title="LogEvent" alt="" coords="5,5,83,31"/>
-</map>
- <img src="class_hierarchy_for_logevent.png" alt='' usemap="#class_hierarchy_for_logevent" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -370,24 +366,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -434,13 +412,6 @@
<a name="name"></a><span class="summary-name">name</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -516,7 +487,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.LogStage-class.html b/docs/apiref/petsc4py.PETSc.LogStage-class.html
index 0401b9b..f95608b 100644
--- a/docs/apiref/petsc4py.PETSc.LogStage-class.html
+++ b/docs/apiref/petsc4py.PETSc.LogStage-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class LogStage</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type LogStage</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_logstage" name="class_hierarchy_for_logstage">
-<area shape="rect" id="node1" href="petsc4py.PETSc.LogStage-class.html" title="LogStage" alt="" coords="5,5,83,31"/>
-</map>
- <img src="class_hierarchy_for_logstage.png" alt='' usemap="#class_hierarchy_for_logstage" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -315,24 +311,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -379,13 +357,6 @@
<a name="visible"></a><span class="summary-name">visible</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -461,7 +432,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat-class.html b/docs/apiref/petsc4py.PETSc.Mat-class.html
index cc64f95..446eed5 100644
--- a/docs/apiref/petsc4py.PETSc.Mat-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Mat</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Mat</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_mat" name="class_hierarchy_for_mat">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat-class.html" title="Mat" alt="" coords="13,60,57,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-</map>
- <img src="class_hierarchy_for_mat.png" alt='' usemap="#class_hierarchy_for_mat" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,65 +84,47 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.AssemblyType-class.html" class="summary-name">AssemblyType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.FactorShiftType-class.html" class="summary-name">FactorShiftType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.InfoType-class.html" class="summary-name">InfoType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.Option-class.html" class="summary-name">Option</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.OrderingType-class.html" class="summary-name">OrderingType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.SORType-class.html" class="summary-name">SORType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc._Mat_Stencil-class.html" class="summary-name">Stencil</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.Structure-class.html" class="summary-name">Structure</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Mat.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -175,6 +152,25 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="PtAP"></a><span class="summary-sig-name">PtAP</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Mat P</span>,
+ <span class="summary-sig-arg">Mat result</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">fill</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="SOR"></a><span class="summary-sig-name">SOR</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Vec b</span>,
<span class="summary-sig-arg">Vec x</span>,
@@ -854,6 +850,7 @@
<td><span class="summary-sig"><a name="createLRC"></a><span class="summary-sig-name">createLRC</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Mat A</span>,
<span class="summary-sig-arg">Mat U</span>,
+ <span class="summary-sig-arg">Vec c</span>,
<span class="summary-sig-arg">Mat V</span>)</span></td>
<td align="right" valign="top">
@@ -965,7 +962,45 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="createSubMatrices"></a><span class="summary-sig-name">createSubMatrices</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">isrows</span>,
+ <span class="summary-sig-arg">iscols</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">submats</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="createSubMatrix"></a><span class="summary-sig-name">createSubMatrix</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">IS isrow</span>,
+ <span class="summary-sig-arg">IS iscol</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">Mat submat</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="createSubMatrixVirtual"></a><span class="summary-sig-name">createSubMatrixVirtual</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Mat A</span>,
<span class="summary-sig-arg">IS isrow</span>,
<span class="summary-sig-arg">IS iscol</span>=<span class="summary-sig-default">None</span>)</span></td>
@@ -1469,6 +1504,38 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getLGMap"></a><span class="summary-sig-name">getLGMap</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getLRCMats"></a><span class="summary-sig-name">getLRCMats</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getLocalSize"></a><span class="summary-sig-name">getLocalSize</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -1870,29 +1937,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getSubMatrices"></a><span class="summary-sig-name">getSubMatrices</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">isrows</span>,
- <span class="summary-sig-arg">iscols</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">submats</span>=<span class="summary-sig-default">None</span>)</span></td>
- <td align="right" valign="top">
-
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getSubMatrix"></a><span class="summary-sig-name">getSubMatrix</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">IS isrow</span>,
- <span class="summary-sig-arg">IS iscol</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">Mat submat</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td><span class="summary-sig"><a name="getTransposeNullSpace"></a><span class="summary-sig-name">getTransposeNullSpace</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -2850,6 +2895,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setTransposeNullSpace"></a><span class="summary-sig-name">setTransposeNullSpace</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">NullSpace nsp</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setType"></a><span class="summary-sig-name">setType</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">mat_type</span>)</span></td>
<td align="right" valign="top">
@@ -3597,21 +3659,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -3723,9 +3772,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -3766,7 +3812,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -3937,7 +3983,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.AssemblyType-class.html b/docs/apiref/petsc4py.PETSc.Mat.AssemblyType-class.html
index fa3577e..5cefd9b 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.AssemblyType-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.AssemblyType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class AssemblyType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type AssemblyType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_assemblyty" name="class_hierarchy_for_assemblyty">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.AssemblyType-class.html" title="AssemblyType" alt="" coords="5,5,115,31"/>
-</map>
- <img src="class_hierarchy_for_assemblyty.png" alt='' usemap="#class_hierarchy_for_assemblyty" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.FactorShiftType-class.html b/docs/apiref/petsc4py.PETSc.Mat.FactorShiftType-class.html
index af9befd..e03e01a 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.FactorShiftType-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.FactorShiftType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class FactorShiftType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type FactorShiftType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_factorshif" name="class_hierarchy_for_factorshif">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.FactorShiftType-class.html" title="FactorShiftType" alt="" coords="5,5,120,31"/>
-</map>
- <img src="class_hierarchy_for_factorshif.png" alt='' usemap="#class_hierarchy_for_factorshif" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -175,31 +134,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -231,7 +165,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.InfoType-class.html b/docs/apiref/petsc4py.PETSc.Mat.InfoType-class.html
index deda331..46c64d5 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.InfoType-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.InfoType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class InfoType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type InfoType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_infotype" name="class_hierarchy_for_infotype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.InfoType-class.html" title="InfoType" alt="" coords="5,5,79,31"/>
-</map>
- <img src="class_hierarchy_for_infotype.png" alt='' usemap="#class_hierarchy_for_infotype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -154,31 +113,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -210,7 +144,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.Option-class.html b/docs/apiref/petsc4py.PETSc.Mat.Option-class.html
index 42ee539..2c62748 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.Option-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.Option-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Option</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Option</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_option" name="class_hierarchy_for_option">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.Option-class.html" title="Option" alt="" coords="5,5,65,31"/>
-</map>
- <img src="class_hierarchy_for_option.png" alt='' usemap="#class_hierarchy_for_option" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -287,31 +246,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -343,7 +277,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.OrderingType-class.html b/docs/apiref/petsc4py.PETSc.Mat.OrderingType-class.html
index 859841c..e6a9c8f 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.OrderingType-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.OrderingType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class OrderingType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type OrderingType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_orderingty" name="class_hierarchy_for_orderingty">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.OrderingType-class.html" title="OrderingType" alt="" coords="5,5,105,31"/>
-</map>
- <img src="class_hierarchy_for_orderingty.png" alt='' usemap="#class_hierarchy_for_orderingty" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -196,31 +155,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -252,7 +186,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.SORType-class.html b/docs/apiref/petsc4py.PETSc.Mat.SORType-class.html
index 7740b30..356bd08 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.SORType-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.SORType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SORType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type SORType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_sortype" name="class_hierarchy_for_sortype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.SORType-class.html" title="SORType" alt="" coords="5,5,85,31"/>
-</map>
- <img src="class_hierarchy_for_sortype.png" alt='' usemap="#class_hierarchy_for_sortype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -203,31 +162,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -259,7 +193,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:48 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.Structure-class.html b/docs/apiref/petsc4py.PETSc.Mat.Structure-class.html
index 38dfefc..ee4af59 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.Structure-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.Structure-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Structure</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Structure</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_structure" name="class_hierarchy_for_structure">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.Structure-class.html" title="Structure" alt="" coords="5,5,80,31"/>
-</map>
- <img src="class_hierarchy_for_structure.png" alt='' usemap="#class_hierarchy_for_structure" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -196,31 +155,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -252,7 +186,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Mat.Type-class.html b/docs/apiref/petsc4py.PETSc.Mat.Type-class.html
index 6f901c3..29ce995 100644
--- a/docs/apiref/petsc4py.PETSc.Mat.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.Mat.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_5" name="class_hierarchy_for_type_5">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Mat.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_5.png" alt='' usemap="#class_hierarchy_for_type_5" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -185,13 +144,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="BSTRM"></a><span class="summary-name">BSTRM</span> = <code title="'bstrm'"><code class="variable-quote">'</code><code class="variable-string">bstrm</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="COMPOSITE"></a><span class="summary-name">COMPOSITE</span> = <code title="'composite'"><code class="variable-quote">'</code><code class="variable-string">composite</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -339,13 +291,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="MPIBSTRM"></a><span class="summary-name">MPIBSTRM</span> = <code title="'mpibstrm'"><code class="variable-quote">'</code><code class="variable-string">mpibstrm</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="MPIDENSE"></a><span class="summary-name">MPIDENSE</span> = <code title="'mpidense'"><code class="variable-quote">'</code><code class="variable-string">mpidense</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -367,13 +312,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="MPISBSTRM"></a><span class="summary-name">MPISBSTRM</span> = <code title="'mpisbstrm'"><code class="variable-quote">'</code><code class="variable-string">mpisbstrm</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="NEST"></a><span class="summary-name">NEST</span> = <code title="'nest'"><code class="variable-quote">'</code><code class="variable-string">nest</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -423,13 +361,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="SBSTRM"></a><span class="summary-name">SBSTRM</span> = <code title="'sbstrm'"><code class="variable-quote">'</code><code class="variable-string">sbstrm</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="SCATTER"></a><span class="summary-name">SCATTER</span> = <code title="'scatter'"><code class="variable-quote">'</code><code class="variable-string">scatter</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -493,13 +424,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="SEQBSTRM"></a><span class="summary-name">SEQBSTRM</span> = <code title="'seqbstrm'"><code class="variable-quote">'</code><code class="variable-string">seqbstrm</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="SEQCUFFT"></a><span class="summary-name">SEQCUFFT</span> = <code title="'seqcufft'"><code class="variable-quote">'</code><code class="variable-string">seqcufft</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -528,13 +452,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="SEQSBSTRM"></a><span class="summary-name">SEQSBSTRM</span> = <code title="'seqsbstrm'"><code class="variable-quote">'</code><code class="variable-string">seqsbstrm</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="SHELL"></a><span class="summary-name">SHELL</span> = <code title="'shell'"><code class="variable-quote">'</code><code class="variable-string">shell</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -560,31 +477,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -616,7 +508,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.NormType-class.html b/docs/apiref/petsc4py.PETSc.NormType-class.html
index 1a77935..3940d0b 100644
--- a/docs/apiref/petsc4py.PETSc.NormType-class.html
+++ b/docs/apiref/petsc4py.PETSc.NormType-class.html
@@ -60,53 +60,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NormType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type NormType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_normtype_2" name="class_hierarchy_for_normtype_2">
-<area shape="rect" id="node1" href="petsc4py.PETSc.NormType-class.html" title="NormType" alt="" coords="5,5,88,31"/>
-</map>
- <img src="class_hierarchy_for_normtype_2.png" alt='' usemap="#class_hierarchy_for_normtype_2" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -230,31 +189,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -286,7 +220,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.NullSpace-class.html b/docs/apiref/petsc4py.PETSc.NullSpace-class.html
index ab70470..ea0eae0 100644
--- a/docs/apiref/petsc4py.PETSc.NullSpace-class.html
+++ b/docs/apiref/petsc4py.PETSc.NullSpace-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NullSpace</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type NullSpace</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_nullspace" name="class_hierarchy_for_nullspace">
-<area shape="rect" id="node1" href="petsc4py.PETSc.NullSpace-class.html" title="NullSpace" alt="" coords="5,60,88,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="17,5,77,31"/>
-</map>
- <img src="class_hierarchy_for_nullspace.png" alt='' usemap="#class_hierarchy_for_nullspace" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -263,6 +258,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="test"></a><span class="summary-sig-name">test</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Mat mat</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a href="petsc4py.PETSc.NullSpace-class.html#view" class="summary-sig-name">view</a>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Viewer viewer</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -306,21 +318,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -355,9 +354,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -398,7 +394,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -480,7 +476,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Object-class.html b/docs/apiref/petsc4py.PETSc.Object-class.html
index f03dfb1..469958e 100644
--- a/docs/apiref/petsc4py.PETSc.Object-class.html
+++ b/docs/apiref/petsc4py.PETSc.Object-class.html
@@ -60,38 +60,17 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Object</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Object</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_object" name="class_hierarchy_for_object">
-<area shape="rect" id="node1" href="petsc4py.PETSc.AO-class.html" title="AO" alt="" coords="126,60,167,85"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.DM-class.html" title="DM" alt="" coords="192,60,235,85"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.DMComposite-class.html" title="DMComposite" alt="" coords="5,115,112,140"/>
-<area shape="rect" id="node4" href="petsc4py.PETSc.DMDA-class.html" title="DMDA" alt="" coords="137,115,199,140"/>
-<area shape="rect" id="node5" href="petsc4py.PETSc.DMPlex-class.html" title="DMPlex" alt="" coords="224,115,293,140"/>
-<area shape="rect" id="node6" href="petsc4py.PETSc.DMShell-class.html" title="DMShell" alt="" coords="317,115,389,140"/>
-<area shape="rect" id="node7" href="petsc4py.PETSc.IS-class.html" title="IS" alt="" coords="259,60,293,85"/>
-<area shape="rect" id="node8" href="petsc4py.PETSc.KSP-class.html" title="KSP" alt="" coords="318,60,367,85"/>
-<area shape="rect" id="node9" href="petsc4py.PETSc.LGMap-class.html" title="LGMap" alt="" coords="392,60,456,85"/>
-<area shape="rect" id="node10" href="petsc4py.PETSc.Mat-class.html" title="Mat" alt="" coords="481,60,525,85"/>
-<area shape="rect" id="node11" href="petsc4py.PETSc.NullSpace-class.html" title="NullSpace" alt="" coords="549,60,632,85"/>
-<area shape="rect" id="node12" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="782,5,842,31"/>
-<area shape="rect" id="node13" href="petsc4py.PETSc.PC-class.html" title="PC" alt="" coords="657,60,698,85"/>
-<area shape="rect" id="node14" href="petsc4py.PETSc.Partitioner-class.html" title="Partitioner" alt="" coords="722,60,803,85"/>
-<area shape="rect" id="node15" href="petsc4py.PETSc.Random-class.html" title="Random" alt="" coords="827,60,898,85"/>
-<area shape="rect" id="node16" href="petsc4py.PETSc.SF-class.html" title="SF" alt="" coords="922,60,961,85"/>
-<area shape="rect" id="node17" href="petsc4py.PETSc.SNES-class.html" title="SNES" alt="" coords="985,60,1044,85"/>
-<area shape="rect" id="node18" href="petsc4py.PETSc.Scatter-class.html" title="Scatter" alt="" coords="1068,60,1132,85"/>
-<area shape="rect" id="node19" href="petsc4py.PETSc.Section-class.html" title="Section" alt="" coords="1156,60,1223,85"/>
-<area shape="rect" id="node20" href="petsc4py.PETSc.TAO-class.html" title="TAO" alt="" coords="1247,60,1297,85"/>
-<area shape="rect" id="node21" href="petsc4py.PETSc.TS-class.html" title="TS" alt="" coords="1321,60,1359,85"/>
-<area shape="rect" id="node22" href="petsc4py.PETSc.Vec-class.html" title="Vec" alt="" coords="1384,60,1429,85"/>
-<area shape="rect" id="node23" href="petsc4py.PETSc.Viewer-class.html" title="Viewer" alt="" coords="1454,60,1517,85"/>
-<area shape="rect" id="node24" href="petsc4py.PETSc.ViewerHDF5-class.html" title="ViewerHDF5" alt="" coords="1437,115,1534,140"/>
-</map>
- <img src="class_hierarchy_for_object.png" alt='' usemap="#class_hierarchy_for_object" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
+<dl><dt>Known Subclasses:</dt>
+<dd>
+ <ul class="subclass-list">
+<li><a href="petsc4py.PETSc.AO-class.html">AO</a></li><li>, <a href="petsc4py.PETSc.DM-class.html">DM</a></li><li>, <a href="petsc4py.PETSc.IS-class.html">IS</a></li><li>, <a href="petsc4py.PETSc.KSP-class.html">KSP</a></li><li>, <a href="petsc4py.PETSc.LGMap-class.html">LGMap</a></li><li>, <a href="petsc4py.PETSc.Mat-class.html">Mat</a></li><li>, <a href="petsc4py.PETSc.NullSpace-class.html">NullSpace</a></li><li>, <a href="petsc4py.PETSc.PC-class.html">PC</a></li><li>, <a href="petsc4p [...]
+</dd></dl>
+
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
<a name="section-InstanceMethods"></a>
@@ -659,22 +638,22 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="viewFromOptions"></a><span class="summary-sig-name">viewFromOptions</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">name</span>,
+ <span class="summary-sig-arg">Object prefix</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
</td>
</tr>
</table>
@@ -758,13 +737,6 @@
<a name="type"></a><span class="summary-name">type</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -840,7 +812,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Options-class.html b/docs/apiref/petsc4py.PETSc.Options-class.html
index 191e92d..d1baaad 100644
--- a/docs/apiref/petsc4py.PETSc.Options-class.html
+++ b/docs/apiref/petsc4py.PETSc.Options-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Options</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Options</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_options" name="class_hierarchy_for_options">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Options-class.html" title="Options" alt="" coords="5,5,72,31"/>
-</map>
- <img src="class_hierarchy_for_options.png" alt='' usemap="#class_hierarchy_for_options" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
Options(prefix=None)
@@ -464,23 +460,6 @@ Options(prefix=None)
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -506,13 +485,6 @@ Options(prefix=None)
<a name="prefix"></a><span class="summary-name">prefix</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -611,7 +583,7 @@ Options(prefix=None)
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC-class.html b/docs/apiref/petsc4py.PETSc.PC-class.html
index 4738e5c..04a7491 100644
--- a/docs/apiref/petsc4py.PETSc.PC-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PC</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type PC</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_pc" name="class_hierarchy_for_pc">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.PC-class.html" title="PC" alt="" coords="15,60,56,85"/>
-</map>
- <img src="class_hierarchy_for_pc.png" alt='' usemap="#class_hierarchy_for_pc" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,65 +84,52 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.ASMType-class.html" class="summary-name">ASMType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.CompositeType-class.html" class="summary-name">CompositeType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.GAMGType-class.html" class="summary-name">GAMGType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.GASMType-class.html" class="summary-name">GASMType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
+ <a href="petsc4py.PETSc.PC.MGCycleType-class.html" class="summary-name">MGCycleType</a>
+ </td>
+ </tr>
+<tr>
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.MGType-class.html" class="summary-name">MGType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.SchurFactType-class.html" class="summary-name">SchurFactType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.SchurPreType-class.html" class="summary-name">SchurPreType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.Side-class.html" class="summary-name">Side</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PC.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -1207,9 +1189,26 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="setMGCyclesOnLevel"></a><span class="summary-sig-name">setMGCyclesOnLevel</span>(<span class="summary-sig-arg">self</span>,
+ <td><span class="summary-sig"><a name="setMGCycleType"></a><span class="summary-sig-name">setMGCycleType</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">cycle_type</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setMGCycleTypeOnLevel"></a><span class="summary-sig-name">setMGCycleTypeOnLevel</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">level</span>,
- <span class="summary-sig-arg">ncycle</span>)</span></td>
+ <span class="summary-sig-arg">cycle_type</span>)</span></td>
<td align="right" valign="top">
@@ -1541,21 +1540,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -1590,9 +1576,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1633,7 +1616,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -1804,7 +1787,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.ASMType-class.html b/docs/apiref/petsc4py.PETSc.PC.ASMType-class.html
index bc161e8..84a4e35 100644
--- a/docs/apiref/petsc4py.PETSc.PC.ASMType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.ASMType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ASMType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ASMType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_asmtype" name="class_hierarchy_for_asmtype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.ASMType-class.html" title="ASMType" alt="" coords="5,5,85,31"/>
-</map>
- <img src="class_hierarchy_for_asmtype.png" alt='' usemap="#class_hierarchy_for_asmtype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.CompositeType-class.html b/docs/apiref/petsc4py.PETSc.PC.CompositeType-class.html
index 34b551f..04762c8 100644
--- a/docs/apiref/petsc4py.PETSc.PC.CompositeType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.CompositeType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class CompositeType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type CompositeType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_compositet" name="class_hierarchy_for_compositet">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.CompositeType-class.html" title="CompositeType" alt="" coords="5,5,120,31"/>
-</map>
- <img src="class_hierarchy_for_compositet.png" alt='' usemap="#class_hierarchy_for_compositet" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -168,31 +127,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -224,7 +158,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.GAMGType-class.html b/docs/apiref/petsc4py.PETSc.PC.GAMGType-class.html
index e9fc255..ac4f940 100644
--- a/docs/apiref/petsc4py.PETSc.PC.GAMGType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.GAMGType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class GAMGType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type GAMGType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_gamgtype" name="class_hierarchy_for_gamgtype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.GAMGType-class.html" title="GAMGType" alt="" coords="5,5,96,31"/>
-</map>
- <img src="class_hierarchy_for_gamgtype.png" alt='' usemap="#class_hierarchy_for_gamgtype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -154,31 +113,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -210,7 +144,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.GASMType-class.html b/docs/apiref/petsc4py.PETSc.PC.GASMType-class.html
index ccc1116..8228144 100644
--- a/docs/apiref/petsc4py.PETSc.PC.GASMType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.GASMType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class GASMType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type GASMType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_gasmtype" name="class_hierarchy_for_gasmtype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.GASMType-class.html" title="GASMType" alt="" coords="5,5,96,31"/>
-</map>
- <img src="class_hierarchy_for_gasmtype.png" alt='' usemap="#class_hierarchy_for_gasmtype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html b/docs/apiref/petsc4py.PETSc.PC.MGCycleType-class.html
similarity index 61%
copy from docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html
copy to docs/apiref/petsc4py.PETSc.PC.MGCycleType-class.html
index b1840db..dc6e163 100644
--- a/docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.MGCycleType-class.html
@@ -3,7 +3,7 @@
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
- <title>petsc4py.PETSc.TS.ProblemType</title>
+ <title>petsc4py.PETSc.PC.MGCycleType</title>
<link rel="stylesheet" href="epydoc.css" type="text/css" />
<script type="text/javascript" src="epydoc.js"></script>
</head>
@@ -44,8 +44,8 @@
<span class="breadcrumbs">
<a href="petsc4py-module.html">Package petsc4py</a> ::
<a href="petsc4py.PETSc-module.html">Module PETSc</a> ::
- <a href="petsc4py.PETSc.TS-class.html">Class TS</a> ::
- Class ProblemType
+ <a href="petsc4py.PETSc.PC-class.html">Class PC</a> ::
+ Class MGCycleType
</span>
</td>
<td>
@@ -55,59 +55,18 @@
onclick="toggle_private();">hide private</a>]</span></td></tr>
<tr><td align="right"><span class="options"
>[<a href="frames.html" target="_top">frames</a
- >] | <a href="petsc4py.PETSc.TS.ProblemType-class.html"
+ >] | <a href="petsc4py.PETSc.PC.MGCycleType-class.html"
target="_top">no frames</a>]</span></td></tr>
</table>
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ProblemType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type MGCycleType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_problemtyp" name="class_hierarchy_for_problemtyp">
-<area shape="rect" id="node1" href="petsc4py.PETSc.TS.ProblemType-class.html" title="ProblemType" alt="" coords="5,5,104,31"/>
-</map>
- <img src="class_hierarchy_for_problemtyp.png" alt='' usemap="#class_hierarchy_for_problemtyp" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -129,46 +88,21 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="LINEAR"></a><span class="summary-name">LINEAR</span> = <code title="0">0</code>
+ <a name="V"></a><span class="summary-name">V</span> = <code title="1">1</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="NONLINEAR"></a><span class="summary-name">NONLINEAR</span> = <code title="1">1</code>
+ <a name="W"></a><span class="summary-name">W</span> = <code title="2">2</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'TSProblemType'"><code class="variable-quote">'</code><code class="variable-string">TSProblemType</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
+ <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'PCMGCycleType'"><code class="variable-quote">'</code><code class="variable-string">PCMGCycleType</code><code class="variable-quote">'</code></code>
</td>
</tr>
</table>
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.MGType-class.html b/docs/apiref/petsc4py.PETSc.PC.MGType-class.html
index c6c3dd0..95769de 100644
--- a/docs/apiref/petsc4py.PETSc.PC.MGType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.MGType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class MGType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type MGType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_mgtype" name="class_hierarchy_for_mgtype">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.MGType-class.html" title="MGType" alt="" coords="5,5,77,31"/>
-</map>
- <img src="class_hierarchy_for_mgtype.png" alt='' usemap="#class_hierarchy_for_mgtype" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.SchurFactType-class.html b/docs/apiref/petsc4py.PETSc.PC.SchurFactType-class.html
index b9c3d2f..45906a1 100644
--- a/docs/apiref/petsc4py.PETSc.PC.SchurFactType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.SchurFactType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SchurFactType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type SchurFactType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_schurfactt" name="class_hierarchy_for_schurfactt">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.SchurFactType-class.html" title="SchurFactType" alt="" coords="5,5,116,31"/>
-</map>
- <img src="class_hierarchy_for_schurfactt.png" alt='' usemap="#class_hierarchy_for_schurfactt" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:49 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.SchurPreType-class.html b/docs/apiref/petsc4py.PETSc.PC.SchurPreType-class.html
index a14239b..8e9b90f 100644
--- a/docs/apiref/petsc4py.PETSc.PC.SchurPreType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.SchurPreType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SchurPreType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type SchurPreType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_schurprety" name="class_hierarchy_for_schurprety">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.SchurPreType-class.html" title="SchurPreType" alt="" coords="5,5,111,31"/>
-</map>
- <img src="class_hierarchy_for_schurprety.png" alt='' usemap="#class_hierarchy_for_schurprety" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -168,31 +127,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -224,7 +158,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.Side-class.html b/docs/apiref/petsc4py.PETSc.PC.Side-class.html
index 8128eaa..8332d79 100644
--- a/docs/apiref/petsc4py.PETSc.PC.Side-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.Side-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Side</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Side</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_side" name="class_hierarchy_for_side">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.Side-class.html" title="Side" alt="" coords="5,5,53,31"/>
-</map>
- <img src="class_hierarchy_for_side.png" alt='' usemap="#class_hierarchy_for_side" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -175,31 +134,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -231,7 +165,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PC.Type-class.html b/docs/apiref/petsc4py.PETSc.PC.Type-class.html
index c96cbf4..b9bd85f 100644
--- a/docs/apiref/petsc4py.PETSc.PC.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.PC.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_6" name="class_hierarchy_for_type_6">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PC.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_6.png" alt='' usemap="#class_hierarchy_for_type_6" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -434,31 +393,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -490,7 +424,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Partitioner-class.html b/docs/apiref/petsc4py.PETSc.Partitioner-class.html
index b0b9e28..4be8697 100644
--- a/docs/apiref/petsc4py.PETSc.Partitioner-class.html
+++ b/docs/apiref/petsc4py.PETSc.Partitioner-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Partitioner</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Partitioner</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_partitione" name="class_hierarchy_for_partitione">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="16,5,76,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Partitioner-class.html" title="Partitioner" alt="" coords="5,60,87,85"/>
-</map>
- <img src="class_hierarchy_for_partitione.png" alt='' usemap="#class_hierarchy_for_partitione" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,9 +84,7 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.PartitionerType-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -294,21 +287,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -343,9 +323,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -386,7 +363,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -512,7 +489,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.PartitionerType-class.html b/docs/apiref/petsc4py.PETSc.PartitionerType-class.html
index 2a04dbc..2f6bf32 100644
--- a/docs/apiref/petsc4py.PETSc.PartitionerType-class.html
+++ b/docs/apiref/petsc4py.PETSc.PartitionerType-class.html
@@ -60,53 +60,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PartitionerType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type PartitionerType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_partitione_2" name="class_hierarchy_for_partitione_2">
-<area shape="rect" id="node1" href="petsc4py.PETSc.PartitionerType-class.html" title="PartitionerType" alt="" coords="5,5,116,31"/>
-</map>
- <img src="class_hierarchy_for_partitione_2.png" alt='' usemap="#class_hierarchy_for_partitione_2" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -153,31 +112,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -209,7 +143,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Random-class.html b/docs/apiref/petsc4py.PETSc.Random-class.html
index 410088b..204ab05 100644
--- a/docs/apiref/petsc4py.PETSc.Random-class.html
+++ b/docs/apiref/petsc4py.PETSc.Random-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Random</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Random</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_random" name="class_hierarchy_for_random">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="11,5,71,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Random-class.html" title="Random" alt="" coords="5,60,76,85"/>
-</map>
- <img src="class_hierarchy_for_random.png" alt='' usemap="#class_hierarchy_for_random" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,9 +84,7 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Random.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -373,21 +366,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -436,9 +416,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -479,7 +456,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -605,7 +582,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Random.Type-class.html b/docs/apiref/petsc4py.PETSc.Random.Type-class.html
index 121f39e..bbbec4c 100644
--- a/docs/apiref/petsc4py.PETSc.Random.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.Random.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_7" name="class_hierarchy_for_type_7">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Random.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_7.png" alt='' usemap="#class_hierarchy_for_type_7" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.SF-class.html b/docs/apiref/petsc4py.PETSc.SF-class.html
index 55eee29..2f3010b 100644
--- a/docs/apiref/petsc4py.PETSc.SF-class.html
+++ b/docs/apiref/petsc4py.PETSc.SF-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SF</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type SF</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_sf" name="class_hierarchy_for_sf">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.SF-class.html" title="SF" alt="" coords="16,60,55,85"/>
-</map>
- <img src="class_hierarchy_for_sf.png" alt='' usemap="#class_hierarchy_for_sf" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,9 +84,7 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.SF.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -376,21 +369,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -425,9 +405,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -468,7 +445,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -594,7 +571,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.SF.Type-class.html b/docs/apiref/petsc4py.PETSc.SF.Type-class.html
index 8a47236..8bfd8a3 100644
--- a/docs/apiref/petsc4py.PETSc.SF.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.SF.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_8" name="class_hierarchy_for_type_8">
-<area shape="rect" id="node1" href="petsc4py.PETSc.SF.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_8.png" alt='' usemap="#class_hierarchy_for_type_8" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -147,31 +106,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.SNES-class.html b/docs/apiref/petsc4py.PETSc.SNES-class.html
index 387add8..794bd8f 100644
--- a/docs/apiref/petsc4py.PETSc.SNES-class.html
+++ b/docs/apiref/petsc4py.PETSc.SNES-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SNES</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type SNES</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_snes" name="class_hierarchy_for_snes">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.SNES-class.html" title="SNES" alt="" coords="6,60,65,85"/>
-</map>
- <img src="class_hierarchy_for_snes.png" alt='' usemap="#class_hierarchy_for_snes" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,23 +84,17 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.SNES.ConvergedReason-class.html" class="summary-name">ConvergedReason</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.SNES.NormSchedule-class.html" class="summary-name">NormSchedule</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.SNES.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -223,6 +212,24 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="computeNGS"></a><span class="summary-sig-name">computeNGS</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Vec x</span>,
+ <span class="summary-sig-arg">Vec b</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="computeObjective"></a><span class="summary-sig-name">computeObjective</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Vec x</span>)</span></td>
<td align="right" valign="top">
@@ -587,6 +594,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getFunctionNorm"></a><span class="summary-sig-name">getFunctionNorm</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getInitialGuess"></a><span class="summary-sig-name">getInitialGuess</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -795,6 +818,55 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getNASMNumber"></a><span class="summary-sig-name">getNASMNumber</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getNASMSNES"></a><span class="summary-sig-name">getNASMSNES</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">n</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getNGS"></a><span class="summary-sig-name">getNGS</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getNPC"></a><span class="summary-sig-name">getNPC</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -1365,6 +1437,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setFunctionNorm"></a><span class="summary-sig-name">setFunctionNorm</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">norm</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setInitialGuess"></a><span class="summary-sig-name">setInitialGuess</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">initialguess</span>,
<span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
@@ -1403,7 +1492,7 @@
<tr>
<td><span class="summary-sig"><a name="setJacobian"></a><span class="summary-sig-name">setJacobian</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">jacobian</span>,
- <span class="summary-sig-arg">Mat J</span>,
+ <span class="summary-sig-arg">Mat J</span>=<span class="summary-sig-default">None</span>,
<span class="summary-sig-arg">Mat P</span>=<span class="summary-sig-default">None</span>,
<span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
<span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
@@ -1543,6 +1632,25 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setNGS"></a><span class="summary-sig-name">setNGS</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">ngs</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setNPC"></a><span class="summary-sig-name">setNPC</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">SNES snes</span>)</span></td>
<td align="right" valign="top">
@@ -1904,21 +2012,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -2021,6 +2116,13 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
+ <a name="norm"></a><span class="summary-name">norm</span>
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
<a name="npc"></a><span class="summary-name">npc</span>
</td>
</tr>
@@ -2100,9 +2202,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -2143,7 +2242,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -2314,7 +2413,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.SNES.ConvergedReason-class.html b/docs/apiref/petsc4py.PETSc.SNES.ConvergedReason-class.html
index a09f306..8bb7f45 100644
--- a/docs/apiref/petsc4py.PETSc.SNES.ConvergedReason-class.html
+++ b/docs/apiref/petsc4py.PETSc.SNES.ConvergedReason-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ConvergedReason</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ConvergedReason</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_convergedr_2" name="class_hierarchy_for_convergedr_2">
-<area shape="rect" id="node1" href="petsc4py.PETSc.SNES.ConvergedReason-class.html" title="ConvergedReason" alt="" coords="5,5,136,31"/>
-</map>
- <img src="class_hierarchy_for_convergedr_2.png" alt='' usemap="#class_hierarchy_for_convergedr_2" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -231,31 +190,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -287,7 +221,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.SNES.NormSchedule-class.html b/docs/apiref/petsc4py.PETSc.SNES.NormSchedule-class.html
index d2e6a7c..b01c42c 100644
--- a/docs/apiref/petsc4py.PETSc.SNES.NormSchedule-class.html
+++ b/docs/apiref/petsc4py.PETSc.SNES.NormSchedule-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NormSchedule</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type NormSchedule</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_normschedu" name="class_hierarchy_for_normschedu">
-<area shape="rect" id="node1" href="petsc4py.PETSc.SNES.NormSchedule-class.html" title="NormSchedule" alt="" coords="5,5,113,31"/>
-</map>
- <img src="class_hierarchy_for_normschedu.png" alt='' usemap="#class_hierarchy_for_normschedu" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -217,31 +176,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -273,7 +207,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.SNES.Type-class.html b/docs/apiref/petsc4py.PETSc.SNES.Type-class.html
index 707057e..ebc96f0 100644
--- a/docs/apiref/petsc4py.PETSc.SNES.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.SNES.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_9" name="class_hierarchy_for_type_9">
-<area shape="rect" id="node1" href="petsc4py.PETSc.SNES.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_9.png" alt='' usemap="#class_hierarchy_for_type_9" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -266,31 +225,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -322,7 +256,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Scatter-class.html b/docs/apiref/petsc4py.PETSc.Scatter-class.html
index cd34b2e..8d4bd39 100644
--- a/docs/apiref/petsc4py.PETSc.Scatter-class.html
+++ b/docs/apiref/petsc4py.PETSc.Scatter-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Scatter</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Scatter</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_scatter" name="class_hierarchy_for_scatter">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="7,5,67,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Scatter-class.html" title="Scatter" alt="" coords="5,60,69,85"/>
-</map>
- <img src="class_hierarchy_for_scatter.png" alt='' usemap="#class_hierarchy_for_scatter" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,9 +84,7 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.ScatterMode-class.html" class="summary-name">Mode</a>
</td>
</tr>
@@ -381,21 +374,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -430,9 +410,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -473,7 +450,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -555,7 +532,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.ScatterMode-class.html b/docs/apiref/petsc4py.PETSc.ScatterMode-class.html
index 8b098bf..f40e77a 100644
--- a/docs/apiref/petsc4py.PETSc.ScatterMode-class.html
+++ b/docs/apiref/petsc4py.PETSc.ScatterMode-class.html
@@ -60,53 +60,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ScatterMode</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ScatterMode</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_scattermod" name="class_hierarchy_for_scattermod">
-<area shape="rect" id="node1" href="petsc4py.PETSc.ScatterMode-class.html" title="ScatterMode" alt="" coords="5,5,101,31"/>
-</map>
- <img src="class_hierarchy_for_scattermod.png" alt='' usemap="#class_hierarchy_for_scattermod" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -195,31 +154,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -251,7 +185,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Section-class.html b/docs/apiref/petsc4py.PETSc.Section-class.html
index 5fdcb8d..bac5839 100644
--- a/docs/apiref/petsc4py.PETSc.Section-class.html
+++ b/docs/apiref/petsc4py.PETSc.Section-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Section</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Section</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_section" name="class_hierarchy_for_section">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="9,5,69,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Section-class.html" title="Section" alt="" coords="5,60,72,85"/>
-</map>
- <img src="class_hierarchy_for_section.png" alt='' usemap="#class_hierarchy_for_section" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -778,21 +773,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -827,9 +809,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -870,7 +849,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -952,7 +931,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:50 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Sys-class.html b/docs/apiref/petsc4py.PETSc.Sys-class.html
index 8c6d4d1..75e09d0 100644
--- a/docs/apiref/petsc4py.PETSc.Sys-class.html
+++ b/docs/apiref/petsc4py.PETSc.Sys-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Sys</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Sys</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_sys" name="class_hierarchy_for_sys">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Sys-class.html" title="Sys" alt="" coords="5,5,51,31"/>
-</map>
- <img src="class_hierarchy_for_sys.png" alt='' usemap="#class_hierarchy_for_sys" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -145,7 +141,6 @@
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="getVersion"></a><span class="summary-sig-name">getVersion</span>(<span class="summary-sig-arg">type cls</span>,
- <span class="summary-sig-arg">patch</span>=<span class="summary-sig-default">False</span>,
<span class="summary-sig-arg">devel</span>=<span class="summary-sig-default">False</span>,
<span class="summary-sig-arg">date</span>=<span class="summary-sig-default">False</span>,
<span class="summary-sig-arg">author</span>=<span class="summary-sig-default">False</span>)</span></td>
@@ -245,6 +240,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="popSignalHandler"></a><span class="summary-sig-name">popSignalHandler</span>(<span class="summary-sig-arg">type cls</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="pushErrorHandler"></a><span class="summary-sig-name">pushErrorHandler</span>(<span class="summary-sig-arg">type cls</span>,
<span class="summary-sig-arg">errhandler</span>)</span></td>
<td align="right" valign="top">
@@ -361,49 +372,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -479,7 +447,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TAO-class.html b/docs/apiref/petsc4py.PETSc.TAO-class.html
index 3236ffc..51d707d 100644
--- a/docs/apiref/petsc4py.PETSc.TAO-class.html
+++ b/docs/apiref/petsc4py.PETSc.TAO-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class TAO</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type TAO</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_tao" name="class_hierarchy_for_tao">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.TAO-class.html" title="TAO" alt="" coords="11,60,60,85"/>
-</map>
- <img src="class_hierarchy_for_tao.png" alt='' usemap="#class_hierarchy_for_tao" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
TAO Solver
@@ -91,17 +86,13 @@ TAO Solver
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TAO.Reason-class.html" class="summary-name">Reason</a><br />
TAO Solver Termination Reasons
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TAO.Type-class.html" class="summary-name">Type</a><br />
TAO Solver Types
</td>
@@ -1052,8 +1043,8 @@ TAO Solver
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="setStateDesignIS"></a><span class="summary-sig-name">setStateDesignIS</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">IS state</span>,
- <span class="summary-sig-arg">IS design</span>)</span></td>
+ <span class="summary-sig-arg">IS state</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">IS design</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -1196,21 +1187,8 @@ TAO Solver
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -1357,9 +1335,6 @@ TAO Solver
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1400,7 +1375,7 @@ TAO Solver
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -1571,7 +1546,7 @@ TAO Solver
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html b/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html
index 9ca2fcd..1a02152 100644
--- a/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html
+++ b/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html
@@ -61,8 +61,8 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Reason</h1><p class="nomargin-top"></p>
+<!-- ==================== CLASSOBJ DESCRIPTION ==================== -->
+<h1 class="epydoc">classobj Reason</h1><p class="nomargin-top"></p>
TAO Solver Termination Reasons
<!-- ==================== CLASS VARIABLES ==================== -->
@@ -226,7 +226,7 @@ TAO Solver Termination Reasons
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TAO.Type-class.html b/docs/apiref/petsc4py.PETSc.TAO.Type-class.html
index 8f6fcda..c4387df 100644
--- a/docs/apiref/petsc4py.PETSc.TAO.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.TAO.Type-class.html
@@ -61,8 +61,8 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== CLASSOBJ DESCRIPTION ==================== -->
+<h1 class="epydoc">classobj Type</h1><p class="nomargin-top"></p>
TAO Solver Types
<!-- ==================== CLASS VARIABLES ==================== -->
@@ -261,7 +261,7 @@ TAO Solver Types
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TS-class.html b/docs/apiref/petsc4py.PETSc.TS-class.html
index 224d2b3..a151be5 100644
--- a/docs/apiref/petsc4py.PETSc.TS-class.html
+++ b/docs/apiref/petsc4py.PETSc.TS-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class TS</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type TS</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_ts" name="class_hierarchy_for_ts">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.TS-class.html" title="TS" alt="" coords="16,60,55,85"/>
-</map>
- <img src="class_hierarchy_for_ts.png" alt='' usemap="#class_hierarchy_for_ts" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,44 +84,37 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TS.ConvergedReason-class.html" class="summary-name">ConvergedReason</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TS.EquationType-class.html" class="summary-name">EquationType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TS.ExactFinalTime-class.html" class="summary-name">ExactFinalTime</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TS.ExactFinalTime-class.html" class="summary-name">ExactFinalTimeOption</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TS.ProblemType-class.html" class="summary-name">ProblemType</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
+ <a href="petsc4py.PETSc.TS.RKType-class.html" class="summary-name">RKType</a>
+ </td>
+ </tr>
+<tr>
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.TS.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -171,6 +159,110 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="adjointComputeRHSJacobian"></a><span class="summary-sig-name">adjointComputeRHSJacobian</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">t</span>,
+ <span class="summary-sig-arg">Vec x</span>,
+ <span class="summary-sig-arg">Mat J</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="adjointSetRHSJacobian"></a><span class="summary-sig-name">adjointSetRHSJacobian</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">adjointjacobian</span>,
+ <span class="summary-sig-arg">Mat A</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="adjointSetSteps"></a><span class="summary-sig-name">adjointSetSteps</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">adjoint_steps</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="adjointSetUp"></a><span class="summary-sig-name">adjointSetUp</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="adjointSolve"></a><span class="summary-sig-name">adjointSolve</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="adjointStep"></a><span class="summary-sig-name">adjointStep</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="cancelMonitor"></a><span class="summary-sig-name">cancelMonitor</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -203,6 +295,51 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="computeI2Function"></a><span class="summary-sig-name">computeI2Function</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">t</span>,
+ <span class="summary-sig-arg">Vec x</span>,
+ <span class="summary-sig-arg">Vec xdot</span>,
+ <span class="summary-sig-arg">Vec xdotdot</span>,
+ <span class="summary-sig-arg">Vec f</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="computeI2Jacobian"></a><span class="summary-sig-name">computeI2Jacobian</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">t</span>,
+ <span class="summary-sig-arg">Vec x</span>,
+ <span class="summary-sig-arg">Vec xdot</span>,
+ <span class="summary-sig-arg">Vec xdotdot</span>,
+ <span class="summary-sig-arg">v</span>,
+ <span class="summary-sig-arg">a</span>,
+ <span class="summary-sig-arg">Mat J</span>,
+ <span class="summary-sig-arg">Mat P</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="computeIFunction"></a><span class="summary-sig-name">computeIFunction</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">t</span>,
<span class="summary-sig-arg">Vec x</span>,
@@ -424,7 +561,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getDM"></a><span class="summary-sig-name">getDM</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getCostGradients"></a><span class="summary-sig-name">getCostGradients</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getCostIntegral"></a><span class="summary-sig-name">getCostIntegral</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -440,7 +593,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getDuration"></a><span class="summary-sig-name">getDuration</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getDM"></a><span class="summary-sig-name">getDM</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -472,6 +625,38 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getI2Function"></a><span class="summary-sig-name">getI2Function</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="getI2Jacobian"></a><span class="summary-sig-name">getI2Jacobian</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getIFunction"></a><span class="summary-sig-name">getIFunction</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -712,6 +897,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getRKType"></a><span class="summary-sig-name">getRKType</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getSNES"></a><span class="summary-sig-name">getSNES</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -776,7 +977,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getSolveTime"></a><span class="summary-sig-name">getSolveTime</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getSolution2"></a><span class="summary-sig-name">getSolution2</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -792,7 +993,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getStepNumber"></a><span class="summary-sig-name">getStepNumber</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getSolveTime"></a><span class="summary-sig-name">getSolveTime</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -808,7 +1009,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getStepRejections"></a><span class="summary-sig-name">getStepRejections</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getStepNumber"></a><span class="summary-sig-name">getStepNumber</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -824,7 +1025,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getTheta"></a><span class="summary-sig-name">getTheta</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getStepRejections"></a><span class="summary-sig-name">getStepRejections</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -840,7 +1041,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getThetaEndpoint"></a><span class="summary-sig-name">getThetaEndpoint</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getTheta"></a><span class="summary-sig-name">getTheta</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -856,7 +1057,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getTime"></a><span class="summary-sig-name">getTime</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getThetaEndpoint"></a><span class="summary-sig-name">getThetaEndpoint</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -872,7 +1073,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getTimeStep"></a><span class="summary-sig-name">getTimeStep</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getTime"></a><span class="summary-sig-name">getTime</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -888,7 +1089,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getTolerances"></a><span class="summary-sig-name">getTolerances</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getTimeStep"></a><span class="summary-sig-name">getTimeStep</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -904,7 +1105,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="getTotalSteps"></a><span class="summary-sig-name">getTotalSteps</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getTolerances"></a><span class="summary-sig-name">getTolerances</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -1092,8 +1293,33 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="setDM"></a><span class="summary-sig-name">setDM</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">DM dm</span>)</span></td>
+ <td><span class="summary-sig"><a name="setCostGradients"></a><span class="summary-sig-name">setCostGradients</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">vl</span>,
+ <span class="summary-sig-arg">vm</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setCostIntegrand"></a><span class="summary-sig-name">setCostIntegrand</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Vec cost</span>,
+ <span class="summary-sig-arg">rfunction</span>,
+ <span class="summary-sig-arg">n</span>=<span class="summary-sig-default">0</span>,
+ <span class="summary-sig-arg">drdyfunction</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">drdpfunction</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">forward</span>=<span class="summary-sig-default">True</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -1109,9 +1335,8 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="setDuration"></a><span class="summary-sig-name">setDuration</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">max_time</span>,
- <span class="summary-sig-arg">max_steps</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td><span class="summary-sig"><a name="setDM"></a><span class="summary-sig-name">setDM</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">DM dm</span>)</span></td>
<td align="right" valign="top">
@@ -1194,7 +1419,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="setIFunction"></a><span class="summary-sig-name">setIFunction</span>(<span class="summary-sig-arg">self</span>,
+ <td><span class="summary-sig"><a name="setI2Function"></a><span class="summary-sig-name">setI2Function</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">function</span>,
<span class="summary-sig-arg">Vec f</span>=<span class="summary-sig-default">None</span>,
<span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
@@ -1214,7 +1439,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="setIJacobian"></a><span class="summary-sig-name">setIJacobian</span>(<span class="summary-sig-arg">self</span>,
+ <td><span class="summary-sig"><a name="setI2Jacobian"></a><span class="summary-sig-name">setI2Jacobian</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">jacobian</span>,
<span class="summary-sig-arg">Mat J</span>=<span class="summary-sig-default">None</span>,
<span class="summary-sig-arg">Mat P</span>=<span class="summary-sig-default">None</span>,
@@ -1235,9 +1460,32 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="setInitialTimeStep"></a><span class="summary-sig-name">setInitialTimeStep</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">initial_time</span>,
- <span class="summary-sig-arg">initial_time_step</span>)</span></td>
+ <td><span class="summary-sig"><a name="setIFunction"></a><span class="summary-sig-name">setIFunction</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">function</span>,
+ <span class="summary-sig-arg">Vec f</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setIJacobian"></a><span class="summary-sig-name">setIJacobian</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">jacobian</span>,
+ <span class="summary-sig-arg">Mat J</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">Mat P</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">args</span>=<span class="summary-sig-default">None</span>,
+ <span class="summary-sig-arg">kargs</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -1487,6 +1735,39 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setRKType"></a><span class="summary-sig-name">setRKType</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">ts_type</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="setSaveTrajectory"></a><span class="summary-sig-name">setSaveTrajectory</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setSolution"></a><span class="summary-sig-name">setSolution</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">Vec u</span>)</span></td>
<td align="right" valign="top">
@@ -1504,6 +1785,24 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setSolution2"></a><span class="summary-sig-name">setSolution2</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">Vec u</span>,
+ <span class="summary-sig-arg">Vec v</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setStepNumber"></a><span class="summary-sig-name">setStepNumber</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">step_number</span>)</span></td>
<td align="right" valign="top">
@@ -1712,21 +2011,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -1887,9 +2173,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -1930,7 +2213,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -2101,7 +2384,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TS.ConvergedReason-class.html b/docs/apiref/petsc4py.PETSc.TS.ConvergedReason-class.html
index 4e82b1d..cd871cd 100644
--- a/docs/apiref/petsc4py.PETSc.TS.ConvergedReason-class.html
+++ b/docs/apiref/petsc4py.PETSc.TS.ConvergedReason-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ConvergedReason</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ConvergedReason</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_convergedr_3" name="class_hierarchy_for_convergedr_3">
-<area shape="rect" id="node1" href="petsc4py.PETSc.TS.ConvergedReason-class.html" title="ConvergedReason" alt="" coords="5,5,136,31"/>
-</map>
- <img src="class_hierarchy_for_convergedr_3.png" alt='' usemap="#class_hierarchy_for_convergedr_3" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -189,31 +148,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -245,7 +179,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TS.EquationType-class.html b/docs/apiref/petsc4py.PETSc.TS.EquationType-class.html
index 4b90f21..780f8c5 100644
--- a/docs/apiref/petsc4py.PETSc.TS.EquationType-class.html
+++ b/docs/apiref/petsc4py.PETSc.TS.EquationType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class EquationType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type EquationType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_equationty" name="class_hierarchy_for_equationty">
-<area shape="rect" id="node1" href="petsc4py.PETSc.TS.EquationType-class.html" title="EquationType" alt="" coords="5,5,108,31"/>
-</map>
- <img src="class_hierarchy_for_equationty.png" alt='' usemap="#class_hierarchy_for_equationty" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -224,31 +183,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -280,7 +214,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TS.ExactFinalTime-class.html b/docs/apiref/petsc4py.PETSc.TS.ExactFinalTime-class.html
index cedb858..ff6e465 100644
--- a/docs/apiref/petsc4py.PETSc.TS.ExactFinalTime-class.html
+++ b/docs/apiref/petsc4py.PETSc.TS.ExactFinalTime-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ExactFinalTime</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ExactFinalTime</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_exactfinal" name="class_hierarchy_for_exactfinal">
-<area shape="rect" id="node1" href="petsc4py.PETSc.TS.ExactFinalTime-class.html" title="ExactFinalTime" alt="" coords="5,5,119,31"/>
-</map>
- <img src="class_hierarchy_for_exactfinal.png" alt='' usemap="#class_hierarchy_for_exactfinal" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -161,31 +120,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -217,7 +151,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html b/docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html
index b1840db..68a6d1a 100644
--- a/docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html
+++ b/docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ProblemType</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ProblemType</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_problemtyp" name="class_hierarchy_for_problemtyp">
-<area shape="rect" id="node1" href="petsc4py.PETSc.TS.ProblemType-class.html" title="ProblemType" alt="" coords="5,5,104,31"/>
-</map>
- <img src="class_hierarchy_for_problemtyp.png" alt='' usemap="#class_hierarchy_for_problemtyp" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -147,31 +106,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html b/docs/apiref/petsc4py.PETSc.TS.RKType-class.html
similarity index 63%
copy from docs/apiref/petsc4py.PETSc.TAO.Reason-class.html
copy to docs/apiref/petsc4py.PETSc.TS.RKType-class.html
index 9ca2fcd..b1c247c 100644
--- a/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html
+++ b/docs/apiref/petsc4py.PETSc.TS.RKType-class.html
@@ -3,7 +3,7 @@
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
- <title>petsc4py.PETSc.TAO.Reason</title>
+ <title>petsc4py.PETSc.TS.RKType</title>
<link rel="stylesheet" href="epydoc.css" type="text/css" />
<script type="text/javascript" src="epydoc.js"></script>
</head>
@@ -44,8 +44,8 @@
<span class="breadcrumbs">
<a href="petsc4py-module.html">Package petsc4py</a> ::
<a href="petsc4py.PETSc-module.html">Module PETSc</a> ::
- <a href="petsc4py.PETSc.TAO-class.html">Class TAO</a> ::
- Class Reason
+ <a href="petsc4py.PETSc.TS-class.html">Class TS</a> ::
+ Class RKType
</span>
</td>
<td>
@@ -55,16 +55,18 @@
onclick="toggle_private();">hide private</a>]</span></td></tr>
<tr><td align="right"><span class="options"
>[<a href="frames.html" target="_top">frames</a
- >] | <a href="petsc4py.PETSc.TAO.Reason-class.html"
+ >] | <a href="petsc4py.PETSc.TS.RKType-class.html"
target="_top">no frames</a>]</span></td></tr>
</table>
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Reason</h1><p class="nomargin-top"></p>
-TAO Solver Termination Reasons
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type RKType</h1><p class="nomargin-top"></p>
+<center>
+</center>
+<hr />
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -86,112 +88,63 @@ TAO Solver Termination Reasons
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONTINUE_ITERATING"></a><span class="summary-name">CONTINUE_ITERATING</span> = <code title="0">0</code>
+ <a name="RK1FE"></a><span class="summary-name">RK1FE</span> = <code title="'1fe'"><code class="variable-quote">'</code><code class="variable-string">1fe</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONVERGED_GATOL"></a><span class="summary-name">CONVERGED_GATOL</span> = <code title="3">3</code>
+ <a name="RK2A"></a><span class="summary-name">RK2A</span> = <code title="'2a'"><code class="variable-quote">'</code><code class="variable-string">2a</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONVERGED_GRTOL"></a><span class="summary-name">CONVERGED_GRTOL</span> = <code title="4">4</code>
+ <a name="RK3"></a><span class="summary-name">RK3</span> = <code title="'3'"><code class="variable-quote">'</code><code class="variable-string">3</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONVERGED_GTTOL"></a><span class="summary-name">CONVERGED_GTTOL</span> = <code title="5">5</code>
+ <a name="RK3BS"></a><span class="summary-name">RK3BS</span> = <code title="'3bs'"><code class="variable-quote">'</code><code class="variable-string">3bs</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONVERGED_ITERATING"></a><span class="summary-name">CONVERGED_ITERATING</span> = <code title="0">0</code>
+ <a name="RK4"></a><span class="summary-name">RK4</span> = <code title="'4'"><code class="variable-quote">'</code><code class="variable-string">4</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONVERGED_MINF"></a><span class="summary-name">CONVERGED_MINF</span> = <code title="7">7</code>
+ <a name="RK5BS"></a><span class="summary-name">RK5BS</span> = <code title="'5bs'"><code class="variable-quote">'</code><code class="variable-string">5bs</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONVERGED_STEPTOL"></a><span class="summary-name">CONVERGED_STEPTOL</span> = <code title="6">6</code>
+ <a name="RK5DP"></a><span class="summary-name">RK5DP</span> = <code title="'5dp'"><code class="variable-quote">'</code><code class="variable-string">5dp</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="CONVERGED_USER"></a><span class="summary-name">CONVERGED_USER</span> = <code title="8">8</code>
+ <a name="RK5F"></a><span class="summary-name">RK5F</span> = <code title="'5f'"><code class="variable-quote">'</code><code class="variable-string">5f</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="DIVERGED_LS_FAILURE"></a><span class="summary-name">DIVERGED_LS_FAILURE</span> = <code title="-6">-6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="DIVERGED_MAXFCN"></a><span class="summary-name">DIVERGED_MAXFCN</span> = <code title="-5">-5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="DIVERGED_MAXITS"></a><span class="summary-name">DIVERGED_MAXITS</span> = <code title="-2">-2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="DIVERGED_NAN"></a><span class="summary-name">DIVERGED_NAN</span> = <code title="-4">-4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="DIVERGED_TR_REDUCTION"></a><span class="summary-name">DIVERGED_TR_REDUCTION</span> = <code title="-7">-7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="DIVERGED_USER"></a><span class="summary-name">DIVERGED_USER</span> = <code title="-8">-8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="ITERATING"></a><span class="summary-name">ITERATING</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
- <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'TAOConvergedReason'"><code class="variable-quote">'</code><code class="variable-string">TAOConvergedReason</code><code class="variable-quote">'</code></code>
+ <a name="__qualname__"></a><span class="summary-name">__qualname__</span> = <code title="'TSRKType'"><code class="variable-quote">'</code><code class="variable-string">TSRKType</code><code class="variable-quote">'</code></code>
</td>
</tr>
</table>
@@ -226,7 +179,7 @@ TAO Solver Termination Reasons
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.TS.Type-class.html b/docs/apiref/petsc4py.PETSc.TS.Type-class.html
index e69ff54..43a84e8 100644
--- a/docs/apiref/petsc4py.PETSc.TS.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.TS.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_10" name="class_hierarchy_for_type_10">
-<area shape="rect" id="node1" href="petsc4py.PETSc.TS.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_10.png" alt='' usemap="#class_hierarchy_for_type_10" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -206,7 +165,7 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="GL"></a><span class="summary-name">GL</span> = <code title="'gl'"><code class="variable-quote">'</code><code class="variable-string">gl</code><code class="variable-quote">'</code></code>
+ <a name="GLLE"></a><span class="summary-name">GLLE</span> = <code title="'glle'"><code class="variable-quote">'</code><code class="variable-string">glle</code><code class="variable-quote">'</code></code>
</td>
</tr>
<tr>
@@ -287,31 +246,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -343,7 +277,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Vec-class.html b/docs/apiref/petsc4py.PETSc.Vec-class.html
index 28103ec..8401d52 100644
--- a/docs/apiref/petsc4py.PETSc.Vec-class.html
+++ b/docs/apiref/petsc4py.PETSc.Vec-class.html
@@ -60,15 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Vec</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Vec</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_vec" name="class_hierarchy_for_vec">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="5,5,65,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Vec-class.html" title="Vec" alt="" coords="13,60,58,85"/>
-</map>
- <img src="class_hierarchy_for_vec.png" alt='' usemap="#class_hierarchy_for_vec" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -89,16 +84,12 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Vec.Option-class.html" class="summary-name">Option</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Vec.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -1040,6 +1031,22 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="getLGMap"></a><span class="summary-sig-name">getLGMap</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="getLocalSize"></a><span class="summary-sig-name">getLocalSize</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -2468,21 +2475,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setAttr">setAttr</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -2612,9 +2606,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -2655,7 +2646,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -2826,7 +2817,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Vec.Option-class.html b/docs/apiref/petsc4py.PETSc.Vec.Option-class.html
index 3e4ee0b..f547ea0 100644
--- a/docs/apiref/petsc4py.PETSc.Vec.Option-class.html
+++ b/docs/apiref/petsc4py.PETSc.Vec.Option-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Option</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Option</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_option_2" name="class_hierarchy_for_option_2">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Vec.Option-class.html" title="Option" alt="" coords="5,5,65,31"/>
-</map>
- <img src="class_hierarchy_for_option_2.png" alt='' usemap="#class_hierarchy_for_option_2" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -147,31 +106,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -203,7 +137,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Vec.Type-class.html b/docs/apiref/petsc4py.PETSc.Vec.Type-class.html
index 4f4f7c0..12512f9 100644
--- a/docs/apiref/petsc4py.PETSc.Vec.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.Vec.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_11" name="class_hierarchy_for_type_11">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Vec.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_11.png" alt='' usemap="#class_hierarchy_for_type_11" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -210,31 +169,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -266,7 +200,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Viewer-class.html b/docs/apiref/petsc4py.PETSc.Viewer-class.html
index 1602142..39c8f7f 100644
--- a/docs/apiref/petsc4py.PETSc.Viewer-class.html
+++ b/docs/apiref/petsc4py.PETSc.Viewer-class.html
@@ -60,17 +60,17 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Viewer</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Viewer</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_viewer" name="class_hierarchy_for_viewer">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="24,5,84,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Viewer-class.html" title="Viewer" alt="" coords="23,60,85,85"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.ViewerHDF5-class.html" title="ViewerHDF5" alt="" coords="5,115,103,140"/>
-</map>
- <img src="class_hierarchy_for_viewer.png" alt='' usemap="#class_hierarchy_for_viewer" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
+<dl><dt>Known Subclasses:</dt>
+<dd>
+ <ul class="subclass-list">
+<li><a href="petsc4py.PETSc.ViewerHDF5-class.html">ViewerHDF5</a></li> </ul>
+</dd></dl>
+
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
<a name="section-NestedClasses"></a>
@@ -90,30 +90,22 @@
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Viewer.Format-class.html" class="summary-name">Format</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Viewer.Mode-class.html" class="summary-name">Mode</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Viewer.Size-class.html" class="summary-name">Size</a>
</td>
</tr>
<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
+ <td class="summary" colspan="2">
<a href="petsc4py.PETSc.Viewer.Type-class.html" class="summary-name">Type</a>
</td>
</tr>
@@ -260,6 +252,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="addASCIITab"></a><span class="summary-sig-name">addASCIITab</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">tabs</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="clearDraw"></a><span class="summary-sig-name">clearDraw</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -390,7 +399,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="createNetCDF"></a><span class="summary-sig-name">createNetCDF</span>(<span class="summary-sig-arg">self</span>,
+ <td><span class="summary-sig"><a name="createVTK"></a><span class="summary-sig-name">createVTK</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">name</span>,
<span class="summary-sig-arg">mode</span>=<span class="summary-sig-default">None</span>,
<span class="summary-sig-arg">comm</span>=<span class="summary-sig-default">None</span>)</span></td>
@@ -409,10 +418,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="createVTK"></a><span class="summary-sig-name">createVTK</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>,
- <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">comm</span>=<span class="summary-sig-default">None</span>)</span></td>
+ <td><span class="summary-sig"><a href="petsc4py.PETSc.Viewer-class.html#destroy" class="summary-sig-name">destroy</a>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -428,7 +434,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a href="petsc4py.PETSc.Viewer-class.html#destroy" class="summary-sig-name">destroy</a>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="flush"></a><span class="summary-sig-name">flush</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -444,7 +450,7 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
- <td><span class="summary-sig"><a name="flush"></a><span class="summary-sig-name">flush</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td><span class="summary-sig"><a name="getASCIITab"></a><span class="summary-sig-name">getASCIITab</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -524,6 +530,38 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="popASCIISynchronized"></a><span class="summary-sig-name">popASCIISynchronized</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="popASCIITab"></a><span class="summary-sig-name">popASCIITab</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="popFormat"></a><span class="summary-sig-name">popFormat</span>(<span class="summary-sig-arg">self</span>)</span></td>
<td align="right" valign="top">
@@ -540,6 +578,72 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="printfASCII"></a><span class="summary-sig-name">printfASCII</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">msg</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="printfASCIISynchronized"></a><span class="summary-sig-name">printfASCIISynchronized</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">msg</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="pushASCIISynchronized"></a><span class="summary-sig-name">pushASCIISynchronized</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="pushASCIITab"></a><span class="summary-sig-name">pushASCIITab</span>(<span class="summary-sig-arg">self</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="pushFormat"></a><span class="summary-sig-name">pushFormat</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">format</span>)</span></td>
<td align="right" valign="top">
@@ -557,6 +661,23 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="setASCIITab"></a><span class="summary-sig-name">setASCIITab</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">tabs</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a name="setDrawInfo"></a><span class="summary-sig-name">setDrawInfo</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">display</span>=<span class="summary-sig-default">None</span>,
<span class="summary-sig-arg">title</span>=<span class="summary-sig-default">None</span>,
@@ -628,6 +749,40 @@
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
+ <td><span class="summary-sig"><a name="subtractASCIITab"></a><span class="summary-sig-name">subtractASCIITab</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">tabs</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td><span class="summary-sig"><a name="useASCIITabs"></a><span class="summary-sig-name">useASCIITabs</span>(<span class="summary-sig-arg">self</span>,
+ <span class="summary-sig-arg">flag</span>)</span></td>
+ <td align="right" valign="top">
+
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+<tr>
+ <td width="15%" align="right" valign="top" class="summary">
+ <span class="summary-type"> </span>
+ </td><td class="summary">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
<td><span class="summary-sig"><a href="petsc4py.PETSc.Viewer-class.html#view" class="summary-sig-name">view</a>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">obj</span>=<span class="summary-sig-default">None</span>)</span></td>
<td align="right" valign="top">
@@ -670,21 +825,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -719,9 +861,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -762,7 +901,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -866,7 +1005,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:51 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Viewer.Format-class.html b/docs/apiref/petsc4py.PETSc.Viewer.Format-class.html
index 88dd674..178adee 100644
--- a/docs/apiref/petsc4py.PETSc.Viewer.Format-class.html
+++ b/docs/apiref/petsc4py.PETSc.Viewer.Format-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Format</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Format</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_format" name="class_hierarchy_for_format">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Viewer.Format-class.html" title="Format" alt="" coords="5,5,68,31"/>
-</map>
- <img src="class_hierarchy_for_format.png" alt='' usemap="#class_hierarchy_for_format" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -255,7 +214,7 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="BINARY_MATLAB"></a><span class="summary-name">BINARY_MATLAB</span> = <code title="26">26</code>
+ <a name="BINARY_MATLAB"></a><span class="summary-name">BINARY_MATLAB</span> = <code title="27">27</code>
</td>
</tr>
<tr>
@@ -269,70 +228,70 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="DRAW_BASIC"></a><span class="summary-name">DRAW_BASIC</span> = <code title="19">19</code>
+ <a name="DRAW_BASIC"></a><span class="summary-name">DRAW_BASIC</span> = <code title="20">20</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="DRAW_CONTOUR"></a><span class="summary-name">DRAW_CONTOUR</span> = <code title="21">21</code>
+ <a name="DRAW_CONTOUR"></a><span class="summary-name">DRAW_CONTOUR</span> = <code title="22">22</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="DRAW_LG"></a><span class="summary-name">DRAW_LG</span> = <code title="20">20</code>
+ <a name="DRAW_LG"></a><span class="summary-name">DRAW_LG</span> = <code title="21">21</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="DRAW_PORTS"></a><span class="summary-name">DRAW_PORTS</span> = <code title="22">22</code>
+ <a name="DRAW_PORTS"></a><span class="summary-name">DRAW_PORTS</span> = <code title="23">23</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="HDF5_VIZ"></a><span class="summary-name">HDF5_VIZ</span> = <code title="28">28</code>
+ <a name="HDF5_VIZ"></a><span class="summary-name">HDF5_VIZ</span> = <code title="29">29</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="NATIVE"></a><span class="summary-name">NATIVE</span> = <code title="27">27</code>
+ <a name="NATIVE"></a><span class="summary-name">NATIVE</span> = <code title="28">28</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="NOFORMAT"></a><span class="summary-name">NOFORMAT</span> = <code title="29">29</code>
+ <a name="NOFORMAT"></a><span class="summary-name">NOFORMAT</span> = <code title="30">30</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="VTK_VTR"></a><span class="summary-name">VTK_VTR</span> = <code title="24">24</code>
+ <a name="VTK_VTR"></a><span class="summary-name">VTK_VTR</span> = <code title="25">25</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="VTK_VTS"></a><span class="summary-name">VTK_VTS</span> = <code title="23">23</code>
+ <a name="VTK_VTS"></a><span class="summary-name">VTK_VTS</span> = <code title="24">24</code>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="VTK_VTU"></a><span class="summary-name">VTK_VTU</span> = <code title="25">25</code>
+ <a name="VTK_VTU"></a><span class="summary-name">VTK_VTU</span> = <code title="26">26</code>
</td>
</tr>
<tr>
@@ -343,31 +302,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -399,7 +333,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Viewer.Mode-class.html b/docs/apiref/petsc4py.PETSc.Viewer.Mode-class.html
index 43e8a37..bb2965e 100644
--- a/docs/apiref/petsc4py.PETSc.Viewer.Mode-class.html
+++ b/docs/apiref/petsc4py.PETSc.Viewer.Mode-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Mode</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Mode</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_mode" name="class_hierarchy_for_mode">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Viewer.Mode-class.html" title="Mode" alt="" coords="5,5,60,31"/>
-</map>
- <img src="class_hierarchy_for_mode.png" alt='' usemap="#class_hierarchy_for_mode" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -210,31 +169,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -266,7 +200,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Viewer.Size-class.html b/docs/apiref/petsc4py.PETSc.Viewer.Size-class.html
index d0c6626..ace5355 100644
--- a/docs/apiref/petsc4py.PETSc.Viewer.Size-class.html
+++ b/docs/apiref/petsc4py.PETSc.Viewer.Size-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Size</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Size</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_size" name="class_hierarchy_for_size">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Viewer.Size-class.html" title="Size" alt="" coords="5,5,53,31"/>
-</map>
- <img src="class_hierarchy_for_size.png" alt='' usemap="#class_hierarchy_for_size" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -189,31 +148,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -245,7 +179,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.Viewer.Type-class.html b/docs/apiref/petsc4py.PETSc.Viewer.Type-class.html
index 55fd30a..d51f920 100644
--- a/docs/apiref/petsc4py.PETSc.Viewer.Type-class.html
+++ b/docs/apiref/petsc4py.PETSc.Viewer.Type-class.html
@@ -61,53 +61,12 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Type</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type Type</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_type_12" name="class_hierarchy_for_type_12">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Viewer.Type-class.html" title="Type" alt="" coords="5,5,56,31"/>
-</map>
- <img src="class_hierarchy_for_type_12.png" alt='' usemap="#class_hierarchy_for_type_12" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Instance Methods</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-InstanceMethods"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
@@ -171,13 +130,6 @@
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
- <a name="NETCDF"></a><span class="summary-name">NETCDF</span> = <code title="'netcdf'"><code class="variable-quote">'</code><code class="variable-string">netcdf</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"> </span>
- </td><td class="summary">
<a name="SAWS"></a><span class="summary-name">SAWS</span> = <code title="'saws'"><code class="variable-quote">'</code><code class="variable-string">saws</code><code class="variable-quote">'</code></code>
</td>
</tr>
@@ -217,31 +169,6 @@
</td>
</tr>
</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
@@ -273,7 +200,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc.ViewerHDF5-class.html b/docs/apiref/petsc4py.PETSc.ViewerHDF5-class.html
index ca9f504..6e8f9ba 100644
--- a/docs/apiref/petsc4py.PETSc.ViewerHDF5-class.html
+++ b/docs/apiref/petsc4py.PETSc.ViewerHDF5-class.html
@@ -60,16 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ViewerHDF5</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type ViewerHDF5</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for_viewerhdf5" name="class_hierarchy_for_viewerhdf5">
-<area shape="rect" id="node1" href="petsc4py.PETSc.Object-class.html" title="Object" alt="" coords="24,5,84,31"/>
-<area shape="rect" id="node2" href="petsc4py.PETSc.Viewer-class.html" title="Viewer" alt="" coords="23,60,85,85"/>
-<area shape="rect" id="node3" href="petsc4py.PETSc.ViewerHDF5-class.html" title="ViewerHDF5" alt="" coords="5,115,103,140"/>
-</map>
- <img src="class_hierarchy_for_viewerhdf5.png" alt='' usemap="#class_hierarchy_for_viewerhdf5" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== NESTED CLASSES ==================== -->
@@ -260,26 +254,36 @@
<code><a href="petsc4py.PETSc.Viewer-class.html#STDERR">STDERR</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#STDOUT">STDOUT</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#__call__">__call__</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#addASCIITab">addASCIITab</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#clearDraw">clearDraw</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#createASCII">createASCII</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#createBinary">createBinary</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#createDraw">createDraw</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#createHDF5">createHDF5</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#createMPIIO">createMPIIO</a></code>,
- <code><a href="petsc4py.PETSc.Viewer-class.html#createNetCDF">createNetCDF</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#createVTK">createVTK</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#destroy">destroy</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#flush">flush</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#getASCIITab">getASCIITab</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#getFileMode">getFileMode</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#getFileName">getFileName</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#getFormat">getFormat</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#getType">getType</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#popASCIISynchronized">popASCIISynchronized</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#popASCIITab">popASCIITab</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#popFormat">popFormat</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#printfASCII">printfASCII</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#printfASCIISynchronized">printfASCIISynchronized</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#pushASCIISynchronized">pushASCIISynchronized</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#pushASCIITab">pushASCIITab</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#pushFormat">pushFormat</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#setASCIITab">setASCIITab</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#setDrawInfo">setDrawInfo</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#setFileMode">setFileMode</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#setFileName">setFileName</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#setType">setType</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#subtractASCIITab">subtractASCIITab</a></code>,
+ <code><a href="petsc4py.PETSc.Viewer-class.html#useASCIITabs">useASCIITabs</a></code>,
<code><a href="petsc4py.PETSc.Viewer-class.html#view">view</a></code>
</p>
<p class="indent-wrapped-lines"><b>Inherited from <code><a href="petsc4py.PETSc.Object-class.html">Object</a></code></b>:
@@ -311,21 +315,8 @@
<code><a href="petsc4py.PETSc.Object-class.html#setName">setName</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setOptionsPrefix">setOptionsPrefix</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#setTabLevel">setTabLevel</a></code>,
- <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
+ <code><a href="petsc4py.PETSc.Object-class.html#stateIncrease">stateIncrease</a></code>,
+ <code><a href="petsc4py.PETSc.Object-class.html#viewFromOptions">viewFromOptions</a></code>
</p>
</td>
</tr>
@@ -360,9 +351,6 @@
<code><a href="petsc4py.PETSc.Object-class.html#refcount">refcount</a></code>,
<code><a href="petsc4py.PETSc.Object-class.html#type">type</a></code>
</p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
</td>
</tr>
</table>
@@ -403,7 +391,7 @@
<dl class="fields">
<dt>Returns: a new object with type S, a subtype of T</dt>
<dt>Overrides:
- object.__new__
+ <a href="petsc4py.PETSc.Object-class.html#__new__">Object.__new__</a>
</dt>
</dl>
</td></tr></table>
@@ -465,7 +453,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc._DMComposite_access-class.html b/docs/apiref/petsc4py.PETSc._DMComposite_access-class.html
index cb3fcb7..68e4911 100644
--- a/docs/apiref/petsc4py.PETSc._DMComposite_access-class.html
+++ b/docs/apiref/petsc4py.PETSc._DMComposite_access-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class _DMComposite_access</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type _DMComposite_access</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for__dmcomposi" name="class_hierarchy_for__dmcomposi">
-<area shape="rect" id="node1" href="petsc4py.PETSc._DMComposite_access-class.html" title="_DMComposite_access" alt="" coords="5,5,168,31"/>
-</map>
- <img src="class_hierarchy_for__dmcomposi.png" alt='' usemap="#class_hierarchy_for__dmcomposi" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -137,49 +133,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -255,7 +208,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc._DMDA_Vec_array-class.html b/docs/apiref/petsc4py.PETSc._DMDA_Vec_array-class.html
index d9fde80..3f8ffd5 100644
--- a/docs/apiref/petsc4py.PETSc._DMDA_Vec_array-class.html
+++ b/docs/apiref/petsc4py.PETSc._DMDA_Vec_array-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class _DMDA_Vec_array</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type _DMDA_Vec_array</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for__dmda_vec_" name="class_hierarchy_for__dmda_vec_">
-<area shape="rect" id="node1" href="petsc4py.PETSc._DMDA_Vec_array-class.html" title="_DMDA_Vec_array" alt="" coords="5,5,140,31"/>
-</map>
- <img src="class_hierarchy_for__dmda_vec_.png" alt='' usemap="#class_hierarchy_for__dmda_vec_" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -189,24 +185,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -260,13 +238,6 @@
<a name="strides"></a><span class="summary-name">strides</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -342,7 +313,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc._IS_buffer-class.html b/docs/apiref/petsc4py.PETSc._IS_buffer-class.html
index 7264e75..4d95728 100644
--- a/docs/apiref/petsc4py.PETSc._IS_buffer-class.html
+++ b/docs/apiref/petsc4py.PETSc._IS_buffer-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class _IS_buffer</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type _IS_buffer</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for__is_buffer" name="class_hierarchy_for__is_buffer">
-<area shape="rect" id="node1" href="petsc4py.PETSc._IS_buffer-class.html" title="_IS_buffer" alt="" coords="5,5,88,31"/>
-</map>
- <img src="class_hierarchy_for__is_buffer.png" alt='' usemap="#class_hierarchy_for__is_buffer" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -137,24 +133,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -180,13 +158,6 @@
<a name="__array_interface__"></a><span class="summary-name">__array_interface__</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -262,7 +233,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc._Mat_Stencil-class.html b/docs/apiref/petsc4py.PETSc._Mat_Stencil-class.html
index 846127b..718b69a 100644
--- a/docs/apiref/petsc4py.PETSc._Mat_Stencil-class.html
+++ b/docs/apiref/petsc4py.PETSc._Mat_Stencil-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class _Mat_Stencil</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type _Mat_Stencil</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for__mat_stenc" name="class_hierarchy_for__mat_stenc">
-<area shape="rect" id="node1" href="petsc4py.PETSc._Mat_Stencil-class.html" title="_Mat_Stencil" alt="" coords="5,5,104,31"/>
-</map>
- <img src="class_hierarchy_for__mat_stenc.png" alt='' usemap="#class_hierarchy_for__mat_stenc" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -104,24 +100,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -182,13 +160,6 @@
<a name="k"></a><span class="summary-name">k</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -264,7 +235,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc._Vec_LocalForm-class.html b/docs/apiref/petsc4py.PETSc._Vec_LocalForm-class.html
index 100c374..4441432 100644
--- a/docs/apiref/petsc4py.PETSc._Vec_LocalForm-class.html
+++ b/docs/apiref/petsc4py.PETSc._Vec_LocalForm-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class _Vec_LocalForm</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type _Vec_LocalForm</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for__vec_local" name="class_hierarchy_for__vec_local">
-<area shape="rect" id="node1" href="petsc4py.PETSc._Vec_LocalForm-class.html" title="_Vec_LocalForm" alt="" coords="5,5,125,31"/>
-</map>
- <img src="class_hierarchy_for__vec_local.png" alt='' usemap="#class_hierarchy_for__vec_local" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
_Vec_LocalForm(Vec gvec)
@@ -157,48 +153,6 @@ Context manager for <a href="petsc4py.PETSc.Vec-class.html" class="link">Vec</a>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td colspan="2" class="table-header">
- <table border="0" cellpadding="0" cellspacing="0" width="100%">
- <tr valign="top">
- <td align="left"><span class="table-header">Properties</span></td>
- <td align="right" valign="top"
- ><span class="options">[<a href="#section-Properties"
- class="privatelink" onclick="toggle_private();"
- >hide private</a>]</span></td>
- </tr>
- </table>
- </td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -297,7 +251,7 @@ Context manager for <a href="petsc4py.PETSc.Vec-class.html" class="link">Vec</a>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.PETSc._Vec_buffer-class.html b/docs/apiref/petsc4py.PETSc._Vec_buffer-class.html
index f12a68b..899730d 100644
--- a/docs/apiref/petsc4py.PETSc._Vec_buffer-class.html
+++ b/docs/apiref/petsc4py.PETSc._Vec_buffer-class.html
@@ -60,14 +60,10 @@
</td>
</tr>
</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class _Vec_buffer</h1><p class="nomargin-top"></p>
+<!-- ==================== TYPE DESCRIPTION ==================== -->
+<h1 class="epydoc">type _Vec_buffer</h1><p class="nomargin-top"></p>
<center>
-<center> <map id="class_hierarchy_for__vec_buffe" name="class_hierarchy_for__vec_buffe">
-<area shape="rect" id="node1" href="petsc4py.PETSc._Vec_buffer-class.html" title="_Vec_buffer" alt="" coords="5,5,97,31"/>
-</map>
- <img src="class_hierarchy_for__vec_buffe.png" alt='' usemap="#class_hierarchy_for__vec_buffe" ismap="ismap" class="graph-without-title" />
-</center>
+
</center>
<hr />
<!-- ==================== INSTANCE METHODS ==================== -->
@@ -137,24 +133,6 @@
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
@@ -180,13 +158,6 @@
<a name="__array_interface__"></a><span class="summary-name">__array_interface__</span>
</td>
</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
@@ -262,7 +233,7 @@
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:52 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/petsc4py.lib-module.html b/docs/apiref/petsc4py.lib-module.html
index bff73bf..2eb72bf 100644
--- a/docs/apiref/petsc4py.lib-module.html
+++ b/docs/apiref/petsc4py.lib-module.html
@@ -238,7 +238,7 @@ environmental variable, or a configuration file.</p>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Sun May 1 16:53:46 2016
+ Generated by Epydoc 3.0.1
</td>
<td align="right" class="footer">
<a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/apiref/redirect.html b/docs/apiref/redirect.html
index a35ce72..22ac90e 100644
--- a/docs/apiref/redirect.html
+++ b/docs/apiref/redirect.html
@@ -7,7 +7,7 @@
<body>
<script type="text/javascript">
<!--
-var pages = ["petsc4py.PETSc.DMDA.InterpolationType-c", "petsc4py.PETSc.SNES.ConvergedReason-c", "petsc4py.PETSc.KSP.ConvergedReason-c", "petsc4py.PETSc.Mat.FactorShiftType-c", "petsc4py.PETSc._DMComposite_access-c", "petsc4py.PETSc.TS.ConvergedReason-c", "petsc4py.PETSc.SNES.NormSchedule-c", "petsc4py.PETSc.TS.ExactFinalTime-c", "petsc4py.PETSc.DMDA.ElementType-c", "petsc4py.PETSc.DMDA.StencilType-c", "petsc4py.PETSc.Mat.AssemblyType-c", "petsc4py.PETSc.Mat.OrderingType-c", "petsc4py.PE [...]
+var pages = ["petsc4py.PETSc.DMDA.InterpolationType-c", "petsc4py.PETSc.SNES.ConvergedReason-c", "petsc4py.PETSc.KSP.ConvergedReason-c", "petsc4py.PETSc.Mat.FactorShiftType-c", "petsc4py.PETSc._DMComposite_access-c", "petsc4py.PETSc.TS.ConvergedReason-c", "petsc4py.PETSc.SNES.NormSchedule-c", "petsc4py.PETSc.TS.ExactFinalTime-c", "petsc4py.PETSc.DMDA.ElementType-c", "petsc4py.PETSc.DMDA.StencilType-c", "petsc4py.PETSc.Mat.AssemblyType-c", "petsc4py.PETSc.Mat.OrderingType-c", "petsc4py.PE [...]
var dottedName = get_anchor();
if (dottedName) {
var target = redirect_url(dottedName);
diff --git a/docs/apiref/toc-everything.html b/docs/apiref/toc-everything.html
index 2bcb093..6983ae8 100644
--- a/docs/apiref/toc-everything.html
+++ b/docs/apiref/toc-everything.html
@@ -35,8 +35,9 @@
>petsc4py.PETSc.KSP.ConvergedReason</a><br /> <a target="mainFrame" href="petsc4py.PETSc.KSP.NormType-class.html"
>petsc4py.PETSc.KSP.NormType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.KSP.Type-class.html"
>petsc4py.PETSc.KSP.Type</a><br /> <a target="mainFrame" href="petsc4py.PETSc.LGMap-class.html"
- >petsc4py.PETSc.LGMap</a><br /> <a target="mainFrame" href="petsc4py.PETSc.LGMap.MapType-class.html"
- >petsc4py.PETSc.LGMap.MapType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.Log-class.html"
+ >petsc4py.PETSc.LGMap</a><br /> <a target="mainFrame" href="petsc4py.PETSc.LGMap.MapMode-class.html"
+ >petsc4py.PETSc.LGMap.MapMode</a><br /> <a target="mainFrame" href="petsc4py.PETSc.LGMap.Type-class.html"
+ >petsc4py.PETSc.LGMap.Type</a><br /> <a target="mainFrame" href="petsc4py.PETSc.Log-class.html"
>petsc4py.PETSc.Log</a><br /> <a target="mainFrame" href="petsc4py.PETSc.LogClass-class.html"
>petsc4py.PETSc.LogClass</a><br /> <a target="mainFrame" href="petsc4py.PETSc.LogEvent-class.html"
>petsc4py.PETSc.LogEvent</a><br /> <a target="mainFrame" href="petsc4py.PETSc.LogStage-class.html"
@@ -58,7 +59,8 @@
>petsc4py.PETSc.PC.ASMType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.CompositeType-class.html"
>petsc4py.PETSc.PC.CompositeType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.GAMGType-class.html"
>petsc4py.PETSc.PC.GAMGType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.GASMType-class.html"
- >petsc4py.PETSc.PC.GASMType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.MGType-class.html"
+ >petsc4py.PETSc.PC.GASMType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.MGCycleType-class.html"
+ >petsc4py.PETSc.PC.MGCycleType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.MGType-class.html"
>petsc4py.PETSc.PC.MGType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.SchurFactType-class.html"
>petsc4py.PETSc.PC.SchurFactType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.SchurPreType-class.html"
>petsc4py.PETSc.PC.SchurPreType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.PC.Side-class.html"
@@ -85,7 +87,8 @@
>petsc4py.PETSc.TS.ConvergedReason</a><br /> <a target="mainFrame" href="petsc4py.PETSc.TS.EquationType-class.html"
>petsc4py.PETSc.TS.EquationType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.TS.ExactFinalTime-class.html"
>petsc4py.PETSc.TS.ExactFinalTime</a><br /> <a target="mainFrame" href="petsc4py.PETSc.TS.ProblemType-class.html"
- >petsc4py.PETSc.TS.ProblemType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.TS.Type-class.html"
+ >petsc4py.PETSc.TS.ProblemType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.TS.RKType-class.html"
+ >petsc4py.PETSc.TS.RKType</a><br /> <a target="mainFrame" href="petsc4py.PETSc.TS.Type-class.html"
>petsc4py.PETSc.TS.Type</a><br /> <a target="mainFrame" href="petsc4py.PETSc.Vec-class.html"
>petsc4py.PETSc.Vec</a><br /> <a target="mainFrame" href="petsc4py.PETSc.Vec.Option-class.html"
>petsc4py.PETSc.Vec.Option</a><br /> <a target="mainFrame" href="petsc4py.PETSc.Vec.Type-class.html"
@@ -120,7 +123,8 @@
<div class="private">
<a target="mainFrame" href="petsc4py.PETSc-module.html#_initialize"
>petsc4py.PETSc._initialize</a><br /> </div>
- <a target="mainFrame" href="petsc4py-module.html#get_include"
+ <a target="mainFrame" href="petsc4py-module.html#get_config"
+ >petsc4py.get_config</a><br /> <a target="mainFrame" href="petsc4py-module.html#get_include"
>petsc4py.get_include</a><br /> <a target="mainFrame" href="petsc4py-module.html#init"
>petsc4py.init</a><br /> <a target="mainFrame" href="petsc4py.lib-module.html#Import"
>petsc4py.lib.Import</a><br /> <a target="mainFrame" href="petsc4py.lib-module.html#ImportPETSc"
diff --git a/docs/apiref/toc-petsc4py-module.html b/docs/apiref/toc-petsc4py-module.html
index 4017768..d9b86d3 100644
--- a/docs/apiref/toc-petsc4py-module.html
+++ b/docs/apiref/toc-petsc4py-module.html
@@ -13,7 +13,8 @@
<h1 class="toc">Module petsc4py</h1>
<hr />
<h2 class="toc">Functions</h2>
- <a target="mainFrame" href="petsc4py-module.html#get_include"
+ <a target="mainFrame" href="petsc4py-module.html#get_config"
+ >get_config</a><br /> <a target="mainFrame" href="petsc4py-module.html#get_include"
>get_include</a><br /> <a target="mainFrame" href="petsc4py-module.html#init"
>init</a><br /> <h2 class="toc">Variables</h2>
<a target="mainFrame" href="petsc4py-module.html#__credits__"
diff --git a/docs/index.html b/docs/index.html
index 7aa73c6..92e2dc2 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -3,14 +3,14 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.12: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
<title>PETSc for Python</title>
<meta name="author" content="Lisandro Dalcin" />
<style type="text/css">
/*
:Author: David Goodger (goodger at python.org)
-:Id: $Id: html4css1.css 7614 2013-02-21 15:55:51Z milde $
+:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
@@ -38,6 +38,14 @@ table.borderless td, table.borderless th {
.hidden {
display: none }
+.subscript {
+ vertical-align: sub;
+ font-size: smaller }
+
+.superscript {
+ vertical-align: super;
+ font-size: smaller }
+
a.toc-backref {
text-decoration: none ;
color: black }
@@ -162,12 +170,12 @@ h2.subtitle {
hr.docutils {
width: 75% }
-img.align-left, .figure.align-left, object.align-left {
+img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
-img.align-right, .figure.align-right, object.align-right {
+img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
@@ -178,6 +186,11 @@ img.align-center, .figure.align-center, object.align-center {
margin-right: auto;
}
+table.align-center {
+ margin-left: auto;
+ margin-right: auto;
+}
+
.align-left {
text-align: left }
@@ -195,6 +208,15 @@ div.align-right {
/* div.align-center * { */
/* text-align: left } */
+.align-top {
+ vertical-align: top }
+
+.align-middle {
+ vertical-align: middle }
+
+.align-bottom {
+ vertical-align: bottom }
+
ol.simple, ul.simple {
margin-bottom: 1em }
@@ -397,7 +419,7 @@ Advances in Water Resources, 34(9):1124-1139, 2011.
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
-<em>PETSc Users Manual</em>, ANL-95/11 - Revision 3.7, 2016.
+<em>PETSc Users Manual</em>, ANL-95/11 - Revision 3.8, 2017.
<a class="reference external" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf">http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf</a></p>
</li>
</ul>
diff --git a/docs/index.rst b/docs/index.rst
index bef6486..7a40e57 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -52,7 +52,7 @@ project.
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
diff --git a/docs/petsc4py.1 b/docs/petsc4py.1
index 7716428..1fa665f 100644
--- a/docs/petsc4py.1
+++ b/docs/petsc4py.1
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "PETSC4PY" "1" "May 01, 2016" "3.7" "PETSc for Python"
+.TH "PETSC4PY" "1" "Oct 02, 2017" "3.8" "PETSc for Python"
.SH NAME
petsc4py \- PETSc for Python
.
@@ -42,7 +42,7 @@ Lisandro Dalcin
\fI\%https://bitbucket.org/petsc/petsc4py\fP
.TP
.B Date
-May 01, 2016
+Oct 02, 2017
.UNINDENT
.SS Abstract
.sp
@@ -107,14 +107,14 @@ S. Balay, S. Abhyankar, M.F. Adams, J. Brown,
P. Brune, K. Buschelman, L. Dalcin, V. Eijkhout, W.D. Gropp,
D. Karpeyev, D. Kaushik, M.G. Knepley, L. Curfman McInnes, K. Rupp,
B.F. Smith, S. Zampini, H. Zhang, and H. Zhang,
-\fIPETSc Users Manual\fP, ANL\-95/11 \- Revision 3.7, 2016.
+\fIPETSc Users Manual\fP, ANL\-95/11 \- Revision 3.8, 2017.
\fI\%http://www.mcs.anl.gov/petsc/petsc\-current/docs/manual.pdf\fP
.IP [petsc-efficient] 5
Satish Balay, Victor Eijkhout, William D. Gropp,
Lois Curfman McInnes and Barry F. Smith. Efficient Management of
Parallelism in Object Oriented Numerical Software Libraries. Modern
Software Tools in Scientific Computing. E. Arge, A. M. Bruaset and
-H. P. Langtangen, editors. 163\-\-202. Birkhauser Press. 1997.
+H. P. Langtangen, editors. 163–202. Birkhauser Press. 1997.
.SS Components
.sp
PETSc is designed with an object\-oriented style. Almost all
@@ -227,7 +227,7 @@ A matching version of \fI\%PETSc\fP built with shared libraries.
.UNINDENT
.IP [1] 5
Unless you have appropiatelly configured and built PETSc
-without MPI (configure option \fI\-\-with\-mpi=0\fP).
+without MPI (configure option \fB\-\-with\-mpi=0\fP).
.IP [2] 5
You may need to use a parallelized version of the Python
interpreter with some MPI\-1 implementations (e.g. MPICH1).
@@ -244,7 +244,7 @@ Using \fBcurl\fP:
.sp
.nf
.ft C
-$ curl \-O https://bitbucket.org/petsc/petsc4py/petsc4py\-X.Y.tar.gz
+$ curl \-O https://bitbucket.org/petsc/petsc4py/petsc4py\-X.Y.Z.tar.gz
.ft P
.fi
.UNINDENT
@@ -256,7 +256,7 @@ Using \fBwget\fP:
.sp
.nf
.ft C
-$ wget https://bitbucket.org/petsc/petsc4py/petsc4py\-X.Y.tar.gz
+$ wget https://bitbucket.org/petsc/petsc4py/petsc4py\-X.Y.Z.tar.gz
.ft P
.fi
.UNINDENT
@@ -270,8 +270,8 @@ After unpacking the release tarball:
.sp
.nf
.ft C
-$ tar \-zxf petsc4py\-X.Y.tar.gz
-$ cd petsc4py\-X.Y
+$ tar \-zxf petsc4py\-X.Y.Z.tar.gz
+$ cd petsc4py\-X.Y.Z
.ft P
.fi
.UNINDENT
@@ -368,7 +368,7 @@ $ python setup.py install
.UNINDENT
.sp
The previous steps will install the \fBpetsc4py\fP package at standard
-location \fB\fIprefix\fP/lib/python\fIX\fP\&.\fIX\fP/site\-packages\fP\&.
+location \fB\fIprefix\fP\fP\fB/lib/python\fP\fIX\fP\fB\&.\fP\fIY\fP\fB/site\-packages\fP\&.
.sp
If you do not have root privileges or you want to install \fIPETSc for
Python\fP for your private use, just do:
@@ -384,7 +384,7 @@ $ python setup.py install \-\-user
.UNINDENT
.SS Tutorial
.sp
-XXX To be written ... Any contribution welcome!
+XXX To be written … Any contribution welcome!
.SS Citations
.sp
If PETSc for Python been significant to a project that leads to an
@@ -401,12 +401,12 @@ S. Balay, S. Abhyankar, M.F. Adams, J. Brown, P. Brune, K. Buschelman,
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
-\fIPETSc Users Manual\fP, ANL\-95/11 \- Revision 3.7, 2016.
+\fIPETSc Users Manual\fP, ANL\-95/11 \- Revision 3.8, 2017.
\fI\%http://www.mcs.anl.gov/petsc/petsc\-current/docs/manual.pdf\fP
.UNINDENT
.SH AUTHOR
Lisandro Dalcin
.SH COPYRIGHT
-2016, Lisandro Dalcin
+2017, Lisandro Dalcin
.\" Generated by docutils manpage writer.
.
diff --git a/docs/petsc4py.info b/docs/petsc4py.info
index 0fe2ad9..fd50a07 100644
--- a/docs/petsc4py.info
+++ b/docs/petsc4py.info
@@ -1,11 +1,11 @@
-This is petsc4py.info, produced by makeinfo version 6.0 from
+This is petsc4py.info, produced by makeinfo version 6.3 from
petsc4py.texi.
- PETSc for Python 3.7.0, May 01, 2016
+ PETSc for Python 3.8.0, Oct 02, 2017
Lisandro Dalcin
- Copyright © 2016, Lisandro Dalcin
+ Copyright © 2017, Lisandro Dalcin
INFO-DIR-SECTION Miscellaneous
START-INFO-DIR-ENTRY
@@ -13,7 +13,7 @@ START-INFO-DIR-ENTRY
END-INFO-DIR-ENTRY
- Generated by Sphinx 1.2.3.
+ Generated by Sphinx 1.6.3.
File: petsc4py.info, Node: Top, Next: Contents, Up: (dir)
@@ -21,11 +21,11 @@ File: petsc4py.info, Node: Top, Next: Contents, Up: (dir)
PETSc for Python
****************
- PETSc for Python 3.7.0, May 01, 2016
+ PETSc for Python 3.8.0, Oct 02, 2017
Lisandro Dalcin
- Copyright © 2016, Lisandro Dalcin
+ Copyright © 2017, Lisandro Dalcin
Author: Lisandro Dalcin
@@ -37,7 +37,7 @@ Contact: <dalcinl at gmail.com>
Web Site: ‘https://bitbucket.org/petsc/petsc4py’
-Date: May 01, 2016
+Date: Oct 02, 2017
Abstract
========
@@ -159,7 +159,7 @@ overlap of communication and computation. (petsc-user-ref) S. Balay, S.
Abhyankar, M.F. Adams, J. Brown, P. Brune, K. Buschelman, L. Dalcin, V.
Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik, M.G. Knepley, L. Curfman
McInnes, K. Rupp, B.F. Smith, S. Zampini, H. Zhang, and H. Zhang, `PETSc
-Users Manual', ANL-95/11 - Revision 3.7, 2016.
+Users Manual', ANL-95/11 - Revision 3.8, 2017.
‘http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf’
(petsc-efficient) Satish Balay, Victor Eijkhout, William D. Gropp, Lois
Curfman McInnes and Barry F. Smith. Efficient Management of Parallelism
@@ -247,19 +247,19 @@ File: petsc4py.info, Node: Using pip or easy_install, Next: Using distutils,
1.2.1 Using `pip' or `easy_install'
-----------------------------------
-You can use `pip' to install ‘petsc4py’ and its dependencies (‘mpi4py’
+You can use ‘pip’ to install ‘petsc4py’ and its dependencies (‘mpi4py’
is optional but highly recommended):
$ pip install [--user] numpy mpi4py
$ pip install [--user] petsc petsc4py
-Alternatively, you can use `easy_install' (deprecated):
+Alternatively, you can use ‘easy_install’ (deprecated):
$ easy_install petsc4py
If you already have a working PETSc installation, set environment
variables ‘PETSC_DIR’ and ‘PETSC_ARCH’ to appropriate values and next
-use `pip':
+use ‘pip’:
$ export PETSC_DIR=/path/to/petsc
$ export PETSC_ARCH=arch-linux2-c-opt
@@ -316,16 +316,16 @@ File: petsc4py.info, Node: Downloading, Next: Building, Prev: Requirements,
...................
The `PETSc for Python' package is available for download at the project
-website generously hosted by Bitbucket. You can use `curl' or `wget' to
+website generously hosted by Bitbucket. You can use ‘curl’ or ‘wget’ to
get a release tarball.
- * Using `curl':
+ * Using ‘curl’:
- $ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+ $ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
- * Using `wget':
+ * Using ‘wget’:
- $ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+ $ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
File: petsc4py.info, Node: Building, Next: Installing, Prev: Downloading, Up: Using distutils
@@ -335,8 +335,8 @@ File: petsc4py.info, Node: Building, Next: Installing, Prev: Downloading, Up
After unpacking the release tarball:
- $ tar -zxf petsc4py-X.Y.tar.gz
- $ cd petsc4py-X.Y
+ $ tar -zxf petsc4py-X.Y.Z.tar.gz
+ $ cd petsc4py-X.Y.Z
the distribution is ready for building.
@@ -353,7 +353,7 @@ the distribution is ready for building.
$ export ARCHFLAGS='-arch x86_64'
Some environment configuration is needed to inform the location of
-PETSc. You can set (using `setenv', `export' or what applies to you
+PETSc. You can set (using ‘setenv’, ‘export’ or what applies to you
shell or system) the environment variables ‘PETSC_DIR’, and ‘PETSC_ARCH’
indicating where you have built/installed PETSc:
@@ -381,13 +381,13 @@ File: petsc4py.info, Node: Installing, Prev: Building, Up: Using distutils
After building, the distribution is ready for installation.
If you have root privileges (either by log-in as the root user of by
-using `sudo') and you want to install `PETSc for Python' in your system
+using ‘sudo’) and you want to install `PETSc for Python' in your system
for all users, just do:
$ python setup.py install
The previous steps will install the ‘petsc4py’ package at standard
-location ‘`prefix'/lib/python`X'.`X'/site-packages’.
+location ‘`prefix'/lib/python`X'.`Y'/site-packages’.
If you do not have root privileges or you want to install `PETSc for
Python' for your private use, just do:
@@ -400,7 +400,7 @@ File: petsc4py.info, Node: Tutorial, Next: Citations, Prev: Installation, Up
1.3 Tutorial
============
-XXX To be written ... Any contribution welcome!
+XXX To be written … Any contribution welcome!
File: petsc4py.info, Node: Citations, Prev: Tutorial, Up: Contents
@@ -421,7 +421,7 @@ project.
Buschelman, L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D.
Kaushik, M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S.
Zampini, H. Zhang, and H. Zhang, `PETSc Users Manual', ANL-95/11 -
- Revision 3.7, 2016.
+ Revision 3.8, 2017.
‘http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf’
@@ -497,40 +497,40 @@ Ref: a6681
Node: Using pip or easy_install6778
Ref: install using-pip-or-easy-install6878
Ref: b6878
-Node: Using distutils7507
-Ref: install using-distutils7607
-Ref: c7607
-Node: Requirements7731
-Ref: install requirements7817
-Ref: d7817
-Ref: Requirements-Footnote-18187
-Ref: Requirements-Footnote-28220
-Ref: Requirements-Footnote-38336
-Ref: Requirements-Footnote-48366
-Ref: Requirements-Footnote-58398
-Ref: Requirements-Footnote-68436
-Node: Downloading8465
-Ref: install downloading8568
-Ref: e8568
-Ref: install slepc4py8568
-Ref: f8568
-Node: Building8971
-Ref: install building9072
-Ref: 109072
-Node: Installing10500
-Ref: install installing10581
-Ref: 1110581
-Node: Tutorial11156
-Ref: tutorial doc11250
-Ref: 1211250
-Ref: tutorial tutorial11250
-Ref: 1311250
-Node: Citations11327
-Ref: citing citations11400
-Ref: 1411400
-Ref: citing doc11400
-Ref: 1511400
-Node: Index12163
+Node: Using distutils7519
+Ref: install using-distutils7619
+Ref: c7619
+Node: Requirements7743
+Ref: install requirements7829
+Ref: d7829
+Ref: Requirements-Footnote-18199
+Ref: Requirements-Footnote-28232
+Ref: Requirements-Footnote-38348
+Ref: Requirements-Footnote-48378
+Ref: Requirements-Footnote-58410
+Ref: Requirements-Footnote-68448
+Node: Downloading8477
+Ref: install downloading8580
+Ref: e8580
+Ref: install slepc4py8580
+Ref: f8580
+Node: Building9003
+Ref: install building9104
+Ref: 109104
+Node: Installing10544
+Ref: install installing10625
+Ref: 1110625
+Node: Tutorial11204
+Ref: tutorial doc11298
+Ref: 1211298
+Ref: tutorial tutorial11298
+Ref: 1311298
+Node: Citations11374
+Ref: citing citations11447
+Ref: 1411447
+Ref: citing doc11447
+Ref: 1511447
+Node: Index12210
End Tag Table
diff --git a/docs/petsc4py.pdf b/docs/petsc4py.pdf
index bbf7f61..f18559c 100644
Binary files a/docs/petsc4py.pdf and b/docs/petsc4py.pdf differ
diff --git a/docs/source/Makefile b/docs/source/Makefile
index 22e3d91..0dc0f8f 100644
--- a/docs/source/Makefile
+++ b/docs/source/Makefile
@@ -1,172 +1,20 @@
-# Makefile for Sphinx documentation
+# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
-SPHINXBUILD = sphinx-build
-PAPER =
+SPHINXBUILD = python -msphinx
+SPHINXPROJ = petsc4py
+SOURCEDIR = .
BUILDDIR = _build
-# Internal variables.
-PAPEROPT_a4 = -D latex_paper_size=a4
-PAPEROPT_letter = -D latex_paper_size=letter
-ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
-# the i18n builder cannot share the environment and doctrees with the others
-I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
-
-.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
-
+# Put it first so that "make" without argument is like "make help".
help:
- @echo "Please use \`make <target>' where <target> is one of"
- @echo " html to make standalone HTML files"
- @echo " dirhtml to make HTML files named index.html in directories"
- @echo " singlehtml to make a single large HTML file"
- @echo " pickle to make pickle files"
- @echo " json to make JSON files"
- @echo " htmlhelp to make HTML files and a HTML help project"
- @echo " qthelp to make HTML files and a qthelp project"
- @echo " devhelp to make HTML files and a Devhelp project"
- @echo " epub to make an epub"
- @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
- @echo " latexpdf to make LaTeX files and run them through pdflatex"
- @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
- @echo " text to make text files"
- @echo " man to make manual pages"
- @echo " texinfo to make Texinfo files"
- @echo " info to make Texinfo files and run them through makeinfo"
- @echo " gettext to make PO message catalogs"
- @echo " changes to make an overview of all changed/added/deprecated items"
- @echo " xml to make Docutils-native XML files"
- @echo " pseudoxml to make pseudoxml-XML files for display purposes"
- @echo " linkcheck to check all external links for integrity"
- @echo " doctest to run all doctests embedded in the documentation (if enabled)"
-
-clean:
- rm -rf $(BUILDDIR)/*
-
-html:
- $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
- @echo
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
-
-dirhtml:
- $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
- @echo
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
-
-singlehtml:
- $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
- @echo
- @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
-
-pickle:
- $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
- @echo
- @echo "Build finished; now you can process the pickle files."
-
-json:
- $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
- @echo
- @echo "Build finished; now you can process the JSON files."
-
-htmlhelp:
- $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
- @echo
- @echo "Build finished; now you can run HTML Help Workshop with the" \
- ".hhp project file in $(BUILDDIR)/htmlhelp."
-
-qthelp:
- $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
- @echo
- @echo "Build finished; now you can run "qcollectiongenerator" with the" \
- ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
- @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/petsc4py.qhcp"
- @echo "To view the help file:"
- @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/petsc4py.qhc"
-
-devhelp:
- $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
- @echo
- @echo "Build finished."
- @echo "To view the help file:"
- @echo "# mkdir -p $$HOME/.local/share/devhelp/petsc4py"
- @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/petsc4py"
- @echo "# devhelp"
-
-epub:
- $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
- @echo
- @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
-
-latex:
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
- @echo
- @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
- @echo "Run \`make' in that directory to run these through (pdf)latex" \
- "(use \`make latexpdf' here to do that automatically)."
-
-latexpdf:
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
- @echo "Running LaTeX files through pdflatex..."
- $(MAKE) -C $(BUILDDIR)/latex all-pdf
- @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
-
-latexpdfja:
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
- @echo "Running LaTeX files through platex and dvipdfmx..."
- $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
- @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
-
-text:
- $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
- @echo
- @echo "Build finished. The text files are in $(BUILDDIR)/text."
-
-man:
- $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
- @echo
- @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
-
-texinfo:
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
- @echo
- @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
- @echo "Run \`make' in that directory to run these through makeinfo" \
- "(use \`make info' here to do that automatically)."
-
-info:
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
- @echo "Running Texinfo files through makeinfo..."
- make -C $(BUILDDIR)/texinfo info
- @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
-
-gettext:
- $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
- @echo
- @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
-
-changes:
- $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
- @echo
- @echo "The overview file is in $(BUILDDIR)/changes."
-
-linkcheck:
- $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
- @echo
- @echo "Link check complete; look for any errors in the above output " \
- "or in $(BUILDDIR)/linkcheck/output.txt."
-
-doctest:
- $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
- @echo "Testing of doctests in the sources finished, look at the " \
- "results in $(BUILDDIR)/doctest/output.txt."
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
-xml:
- $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
- @echo
- @echo "Build finished. The XML files are in $(BUILDDIR)/xml."
+.PHONY: help Makefile
-pseudoxml:
- $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
- @echo
- @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: Makefile
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
diff --git a/docs/source/citing.rst b/docs/source/citing.rst
index f60ae27..da92809 100644
--- a/docs/source/citing.rst
+++ b/docs/source/citing.rst
@@ -14,5 +14,5 @@ project.
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 1de773f..467204e 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
#
# PETSc for Python documentation build configuration file, created by
-# sphinx-quickstart on Sun Aug 17 12:57:45 2014.
+# sphinx-quickstart on Sun Oct 1 15:52:05 2017.
#
# This file is execfile()d with the current directory set to its
# containing dir.
@@ -12,21 +12,30 @@
# All configuration values have a default; values that are commented out
# serve to show the default.
-import sys
-import os
-
-try: from petsc4py import __version__ as petsc4py_version
-except: petsc4py_version = 'X.X.X'
-
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
-#sys.path.insert(0, os.path.abspath('.'))
+#
+# import os
+# import sys
+# sys.path.insert(0, os.path.abspath('.'))
+
+def get_version():
+ import sys, os, re
+ here = os.path.dirname(__file__)
+ pardir = [os.path.pardir] * 2
+ topdir = os.path.join(here, *pardir)
+ srcdir = os.path.join(topdir, 'src')
+ with open(os.path.join(srcdir, '__init__.py')) as f:
+ m = re.search(r"__version__\s*=\s*'(.*)'", f.read())
+ return m.groups()[0]
+
+pkg_version = get_version()
# -- General configuration ------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
-#needs_sphinx = '1.0'
+# needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
@@ -34,10 +43,12 @@ except: petsc4py_version = 'X.X.X'
extensions = []
# Add any paths that contain templates here, relative to this directory.
-#templates_path = ['_templates']
+# templates_path = ['_templates']
templates_path = []
-# The suffix of source filenames.
+# The suffix(es) of source filenames.
+# You can specify multiple suffix as a list of string:
+# source_suffix = ['.rst', '.md']
source_suffix = '.rst'
# The encoding of source files.
@@ -48,56 +59,38 @@ master_doc = 'index'
# General information about the project.
project = u'PETSc for Python'
-copyright = u'2016, Lisandro Dalcin'
+copyright = u'2017, Lisandro Dalcin'
+author = u'Lisandro Dalcin'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
-version = petsc4py_version[:3]
+version = pkg_version[:3]
# The full version, including alpha/beta/rc tags.
-release = petsc4py_version
+release = pkg_version
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
-#language = None
-
-# There are two options for replacing |today|: either, you set today to some
-# non-false value, then it is used:
-#today = ''
-# Else, today_fmt is used as the format for a strftime call.
-#today_fmt = '%B %d, %Y'
+#
+# This is also used if you do content translation via gettext catalogs.
+# Usually you set "language" from the command line for these cases.
+language = None
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
-exclude_patterns = ['_build']
-
-# The reST default role (used for this markup: `text`) to use for all
-# documents.
-#default_role = None
-
-# If true, '()' will be appended to :func: etc. cross-reference text.
-#add_function_parentheses = True
-
-# If true, the current module name will be prepended to all description
-# unit titles (such as .. function::).
-#add_module_names = True
-
-# If true, sectionauthor and moduleauthor directives will be shown in the
-# output. They are ignored by default.
-#show_authors = False
+# This patterns also effect to html_static_path and html_extra_path
+exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
-# A list of ignored prefixes for module index sorting.
-#modindex_common_prefix = []
+# If true, `todo` and `todoList` produce output, else they produce nothing.
+todo_include_todos = False
-# If true, keep warnings as "system message" paragraphs in the built documents.
-#keep_warnings = False
-# -- Options for HTML output ---------------------------------------------------
+# -- Options for HTML output ----------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
@@ -106,84 +99,40 @@ html_theme = 'default'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
-#html_theme_options = {}
-
-# Add any paths that contain custom themes here, relative to this directory.
-#html_theme_path = []
-
-# The name for this set of Sphinx documents. If None, it defaults to
-# "<project> v<release> documentation".
-#html_title = None
-
-# A shorter title for the navigation bar. Default is the same as html_title.
-#html_short_title = None
-
-# The name of an image file (relative to this directory) to place at the top
-# of the sidebar.
-#html_logo = None
-
-# The name of an image file (within the static path) to use as favicon of the
-# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
-# pixels large.
-#html_favicon = None
+# html_theme_options = {}
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
-#html_static_path = ['_static']
+# html_static_path = ['_static']
html_static_path = []
-# Add any extra paths that contain custom files (such as robots.txt or
-# .htaccess) here, relative to this directory. These files are copied
-# directly to the root of the documentation.
-#html_extra_path = []
+# Custom sidebar templates, must be a dictionary that maps document names
+# to template names.
+#
+# This is required for the alabaster theme
+# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars
+# html_sidebars = {
+# '**': [
+# 'about.html',
+# 'navigation.html',
+# 'relations.html', # needs 'show_related': True theme option to display
+# 'searchbox.html',
+# 'donate.html',
+# ]
+# }
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
#html_last_updated_fmt = '%b %d, %Y'
-# If true, SmartyPants will be used to convert quotes and dashes to
-# typographically correct entities.
-#html_use_smartypants = True
-
-# Custom sidebar templates, maps document names to template names.
-#html_sidebars = {}
-
-# Additional templates that should be rendered to pages, maps page names to
-# template names.
-#html_additional_pages = {}
-
-# If false, no module index is generated.
-#html_domain_indices = True
-
-# If false, no index is generated.
-#html_use_index = True
-
-# If true, the index is split into individual pages for each letter.
-#html_split_index = False
-
-# If true, links to the reST sources are added to the pages.
-#html_show_sourcelink = True
-
-# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
-#html_show_sphinx = True
-
-# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
-#html_show_copyright = True
-
-# If true, an OpenSearch description file will be output, and all pages will
-# contain a <link> tag referring to it. The value of this option must be the
-# base URL from which the finished HTML is served.
-#html_use_opensearch = ''
-
-# This is the file name suffix for HTML files (e.g. ".xhtml").
-#html_file_suffix = None
+# -- Options for HTMLHelp output ------------------------------------------
# Output file base name for HTML help builder.
htmlhelp_basename = 'petsc4py-man'
-# -- Options for LaTeX output --------------------------------------------------
+# -- Options for LaTeX output ---------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
@@ -195,141 +144,61 @@ latex_elements = {
# Additional stuff for the LaTeX preamble.
#'preamble': '',
-'printmodindex': '',
-'printindex': '',
-'preamble' : r'\usepackage{sphinxfix}',
+#'printmodindex': '',
+#'printindex': '',
+#'preamble' : '',
}
-latex_additional_files = ['sphinxfix.sty']
# Grouping the document tree into LaTeX files. List of tuples
-# (source start file, target name, title, author, documentclass [howto/manual]).
+# (source start file, target name, title,
+# author, documentclass [howto, manual, or own class]).
latex_documents = [
- ('manual', 'petsc4py.tex', u'PETSc for Python',
- u'Lisandro Dalcin', 'howto'),
+ ('manual', 'petsc4py.tex', project, author, 'howto'),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
#latex_logo = None
-# For "manual" documents, if this is true, then toplevel headings are parts,
-# not chapters.
-#latex_use_parts = False
-
-# If true, show page references after internal links.
-#latex_show_pagerefs = False
-
-# If true, show URL addresses after external links.
-#latex_show_urls = False
-
-# Documents to append as an appendix to all manuals.
-#latex_appendices = []
-
-# If false, no module index is generated.
-#latex_domain_indices = True
-
-# -- Options for manual page output --------------------------------------------
+# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
- ('index', 'petsc4py', u'PETSc for Python',
- [u'Lisandro Dalcin'], 1)
+ (master_doc, 'petsc4py', project, [author], 1)
]
# If true, show URL addresses after external links.
#man_show_urls = False
-
-# -- Options for Texinfo output ------------------------------------------------
+# -- Options for Texinfo output -------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
- ('index', 'petsc4py', u'PETSc for Python',
- u'Lisandro Dalcin', 'petsc4py', 'PETSc for Python.',
- 'Miscellaneous'),
+ (master_doc, 'petsc4py', project, author,
+ 'petsc4py', project+u'.', 'Miscellaneous'),
]
-# Documents to append as an appendix to all manuals.
-#texinfo_appendices = []
-
-# If false, no module index is generated.
-#texinfo_domain_indices = True
-
-# How to display URL addresses: 'footnote', 'no', or 'inline'.
-#texinfo_show_urls = 'footnote'
-
-# If true, do not generate a @detailmenu in the "Top" node's menu.
-#texinfo_no_detailmenu = False
-
-
# -- Options for Epub output ----------------------------------------------
# Bibliographic Dublin Core info.
-epub_title = u'petsc4py'
-epub_author = u'Lisandro Dalcin'
-epub_publisher = u'Lisandro Dalcin'
-epub_copyright = u'2016, Lisandro Dalcin'
-
-# The basename for the epub file. It defaults to the project name.
-epub_basename = u'petsc4py'
-
-# The HTML theme for the epub output. Since the default themes are not optimized
-# for small screen space, using the same theme for HTML and epub output is
-# usually not wise. This defaults to 'epub', a theme designed to save visual
-# space.
-#epub_theme = 'epub'
-
-# The language of the text. It defaults to the language option
-# or en if the language is not set.
-#epub_language = ''
-
-# The scheme of the identifier. Typical schemes are ISBN or URL.
-#epub_scheme = ''
+epub_title = project
+epub_author = author
+epub_publisher = author
+epub_copyright = copyright
# The unique identifier of the text. This can be a ISBN number
# or the project homepage.
-#epub_identifier = ''
+#
+# epub_identifier = ''
# A unique identification for the text.
-#epub_uid = ''
-
-# A tuple containing the cover image and cover page html template filenames.
-#epub_cover = ()
-
-# A sequence of (type, uri, title) tuples for the guide element of content.opf.
-#epub_guide = ()
-
-# HTML files that should be inserted before the pages created by sphinx.
-# The format is a list of tuples containing the path and title.
-#epub_pre_files = []
-
-# HTML files shat should be inserted after the pages created by sphinx.
-# The format is a list of tuples containing the path and title.
-#epub_post_files = []
+#
+# epub_uid = ''
# A list of files that should not be packed into the epub file.
epub_exclude_files = ['search.html']
-# The depth of the table of contents in toc.ncx.
-#epub_tocdepth = 3
-
-# Allow duplicate toc entries.
-#epub_tocdup = True
-
-# Choose between 'default' and 'includehidden'.
-#epub_tocscope = 'default'
-
-# Fix unsupported image types using the PIL.
-#epub_fix_images = False
-
-# Scale large images.
-#epub_max_image_width = 0
-
-# How to display URL addresses: 'footnote', 'no', or 'inline'.
-#epub_show_urls = 'inline'
-# If false, no index is generated.
-#epub_use_index = True
diff --git a/docs/source/install.rst b/docs/source/install.rst
index a9bcac4..74452bf 100644
--- a/docs/source/install.rst
+++ b/docs/source/install.rst
@@ -40,7 +40,7 @@ build *PETSc for Python*:
* NumPy_ package.
.. [#] Unless you have appropiatelly configured and built PETSc
- without MPI (configure option :option:`--with-mpi=0`).
+ without MPI (configure option ``--with-mpi=0``).
.. [#] You may need to use a parallelized version of the Python
interpreter with some MPI-1 implementations (e.g. MPICH1).
@@ -56,19 +56,19 @@ project website generously hosted by Bitbucket. You can use
* Using :program:`curl`::
- $ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+ $ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
* Using :program:`wget`::
- $ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+ $ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
Building
^^^^^^^^
After unpacking the release tarball::
- $ tar -zxf petsc4py-X.Y.tar.gz
- $ cd petsc4py-X.Y
+ $ tar -zxf petsc4py-X.Y.Z.tar.gz
+ $ cd petsc4py-X.Y.Z
the distribution is ready for building.
@@ -118,7 +118,7 @@ your system for all users, just do::
$ python setup.py install
The previous steps will install the :mod:`petsc4py` package at standard
-location :file:`{prefix}/lib/python{X}.{X}/site-packages`.
+location :file:`{prefix}/lib/python{X}.{Y}/site-packages`.
If you do not have root privileges or you want to install *PETSc for
Python* for your private use, just do::
diff --git a/docs/source/links.txt b/docs/source/links.txt
index 2fe4fec..3e06e5d 100644
--- a/docs/source/links.txt
+++ b/docs/source/links.txt
@@ -8,8 +8,6 @@
.. _SLEPc: http://slepc.upv.es
-.. _TAO: http://www.mcs.anl.gov/tao/
-
.. _Python: http://www.python.org
.. _NumPy: http://www.numpy.org
diff --git a/docs/source/make.bat b/docs/source/make.bat
index 04057f3..d0cb6f6 100644
--- a/docs/source/make.bat
+++ b/docs/source/make.bat
@@ -1,228 +1,36 @@
- at ECHO OFF
-
-REM Command file for Sphinx documentation
-
-if "%SPHINXBUILD%" == "" (
- set SPHINXBUILD=sphinx-build
-)
-set BUILDDIR=_build
-set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% .
-set I18NSPHINXOPTS=%SPHINXOPTS% .
-if NOT "%PAPER%" == "" (
- set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
- set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
-)
-
-if "%1" == "" goto help
-
-if "%1" == "help" (
- :help
- echo.Please use `make ^<target^>` where ^<target^> is one of
- echo. html to make standalone HTML files
- echo. dirhtml to make HTML files named index.html in directories
- echo. singlehtml to make a single large HTML file
- echo. pickle to make pickle files
- echo. json to make JSON files
- echo. htmlhelp to make HTML files and a HTML help project
- echo. qthelp to make HTML files and a qthelp project
- echo. devhelp to make HTML files and a Devhelp project
- echo. epub to make an epub
- echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
- echo. text to make text files
- echo. man to make manual pages
- echo. texinfo to make Texinfo files
- echo. gettext to make PO message catalogs
- echo. changes to make an overview over all changed/added/deprecated items
- echo. xml to make Docutils-native XML files
- echo. pseudoxml to make pseudoxml-XML files for display purposes
- echo. linkcheck to check all external links for integrity
- echo. doctest to run all doctests embedded in the documentation if enabled
- goto end
-)
-
-if "%1" == "clean" (
- for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
- del /q /s %BUILDDIR%\*
- goto end
-)
-
-if "%1" == "html" (
- %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The HTML pages are in %BUILDDIR%/html.
- goto end
-)
-
-if "%1" == "dirhtml" (
- %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
- goto end
-)
-
-if "%1" == "singlehtml" (
- %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
- goto end
-)
-
-if "%1" == "pickle" (
- %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can process the pickle files.
- goto end
-)
-
-if "%1" == "json" (
- %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can process the JSON files.
- goto end
-)
-
-if "%1" == "htmlhelp" (
- %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can run HTML Help Workshop with the ^
-.hhp project file in %BUILDDIR%/htmlhelp.
- goto end
-)
-
-if "%1" == "qthelp" (
- %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; now you can run "qcollectiongenerator" with the ^
-.qhcp project file in %BUILDDIR%/qthelp, like this:
- echo.^> qcollectiongenerator %BUILDDIR%\qthelp\petsc4py.qhcp
- echo.To view the help file:
- echo.^> assistant -collectionFile %BUILDDIR%\qthelp\petsc4py.ghc
- goto end
-)
-
-if "%1" == "devhelp" (
- %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished.
- goto end
-)
-
-if "%1" == "epub" (
- %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The epub file is in %BUILDDIR%/epub.
- goto end
-)
-
-if "%1" == "latex" (
- %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
- goto end
-)
-
-if "%1" == "latexpdf" (
- %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
- cd %BUILDDIR%/latex
- make all-pdf
- cd %BUILDDIR%/..
- echo.
- echo.Build finished; the PDF files are in %BUILDDIR%/latex.
- goto end
-)
-
-if "%1" == "latexpdfja" (
- %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
- cd %BUILDDIR%/latex
- make all-pdf-ja
- cd %BUILDDIR%/..
- echo.
- echo.Build finished; the PDF files are in %BUILDDIR%/latex.
- goto end
-)
-
-if "%1" == "text" (
- %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The text files are in %BUILDDIR%/text.
- goto end
-)
-
-if "%1" == "man" (
- %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The manual pages are in %BUILDDIR%/man.
- goto end
-)
-
-if "%1" == "texinfo" (
- %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
- goto end
-)
-
-if "%1" == "gettext" (
- %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
- goto end
-)
-
-if "%1" == "changes" (
- %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
- if errorlevel 1 exit /b 1
- echo.
- echo.The overview file is in %BUILDDIR%/changes.
- goto end
-)
-
-if "%1" == "linkcheck" (
- %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
- if errorlevel 1 exit /b 1
- echo.
- echo.Link check complete; look for any errors in the above output ^
-or in %BUILDDIR%/linkcheck/output.txt.
- goto end
-)
-
-if "%1" == "doctest" (
- %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
- if errorlevel 1 exit /b 1
- echo.
- echo.Testing of doctests in the sources finished, look at the ^
-results in %BUILDDIR%/doctest/output.txt.
- goto end
-)
-
-if "%1" == "xml" (
- %SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The XML files are in %BUILDDIR%/xml.
- goto end
-)
-
-if "%1" == "pseudoxml" (
- %SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml
- if errorlevel 1 exit /b 1
- echo.
- echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml.
- goto end
-)
-
-:end
+ at ECHO OFF
+
+pushd %~dp0
+
+REM Command file for Sphinx documentation
+
+if "%SPHINXBUILD%" == "" (
+ set SPHINXBUILD=python -msphinx
+)
+set SOURCEDIR=.
+set BUILDDIR=_build
+set SPHINXPROJ=petsc4py
+
+if "%1" == "" goto help
+
+%SPHINXBUILD% >NUL 2>NUL
+if errorlevel 9009 (
+ echo.
+ echo.The Sphinx module was not found. Make sure you have Sphinx installed,
+ echo.then set the SPHINXBUILD environment variable to point to the full
+ echo.path of the 'sphinx-build' executable. Alternatively you may add the
+ echo.Sphinx directory to PATH.
+ echo.
+ echo.If you don't have Sphinx installed, grab it from
+ echo.http://sphinx-doc.org/
+ exit /b 1
+)
+
+%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
+goto end
+
+:help
+%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
+
+:end
+popd
diff --git a/docs/source/overview.rst b/docs/source/overview.rst
index 23d6d56..9f000ae 100644
--- a/docs/source/overview.rst
+++ b/docs/source/overview.rst
@@ -26,7 +26,7 @@ communication and computation.
P. Brune, K. Buschelman, L. Dalcin, V. Eijkhout, W.D. Gropp,
D. Karpeyev, D. Kaushik, M.G. Knepley, L. Curfman McInnes, K. Rupp,
B.F. Smith, S. Zampini, H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
.. [petsc-efficient] Satish Balay, Victor Eijkhout, William D. Gropp,
diff --git a/docs/source/sphinxfix.sty b/docs/source/sphinxfix.sty
deleted file mode 100644
index b1dc14e..0000000
--- a/docs/source/sphinxfix.sty
+++ /dev/null
@@ -1,34 +0,0 @@
-\setcounter{tocdepth}{2}
-
-\pagenumbering{arabic}
-
-\makeatletter
-\renewcommand{\theindex}{
- \cleardoublepage
- \phantomsection
- \py at OldTheindex
- \addcontentsline{toc}{section}{\indexname}
-}
-\makeatother
-
-\makeatletter
-\renewcommand{\thebibliography}[1]{
- \cleardoublepage
- \phantomsection
- \py at OldThebibliography{1}
- \addcontentsline{toc}{section}{\bibname}
-}
-\makeatother
-
-\makeatletter
-\renewcommand{\tableofcontents}{
- \begingroup
- \parskip = 0mm
- \py at OldTableofcontents
- \endgroup
- \vfill
- \rule{\textwidth}{1pt}
- \newpage
-}
-\makeatother
-
diff --git a/docs/usrman/.buildinfo b/docs/usrman/.buildinfo
index 263491e..c422b13 100644
--- a/docs/usrman/.buildinfo
+++ b/docs/usrman/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: b59cf89f477e7df72172e47fbf2b557f
+config: e43391bedd21eb20333259c0bd6fb54e
tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/docs/usrman/_sources/citing.txt b/docs/usrman/_sources/citing.rst.txt
similarity index 92%
rename from docs/usrman/_sources/citing.txt
rename to docs/usrman/_sources/citing.rst.txt
index f60ae27..da92809 100644
--- a/docs/usrman/_sources/citing.txt
+++ b/docs/usrman/_sources/citing.rst.txt
@@ -14,5 +14,5 @@ project.
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
diff --git a/docs/usrman/_sources/index.txt b/docs/usrman/_sources/index.rst.txt
similarity index 100%
rename from docs/usrman/_sources/index.txt
rename to docs/usrman/_sources/index.rst.txt
diff --git a/docs/usrman/_sources/install.txt b/docs/usrman/_sources/install.rst.txt
similarity index 93%
rename from docs/usrman/_sources/install.txt
rename to docs/usrman/_sources/install.rst.txt
index a9bcac4..74452bf 100644
--- a/docs/usrman/_sources/install.txt
+++ b/docs/usrman/_sources/install.rst.txt
@@ -40,7 +40,7 @@ build *PETSc for Python*:
* NumPy_ package.
.. [#] Unless you have appropiatelly configured and built PETSc
- without MPI (configure option :option:`--with-mpi=0`).
+ without MPI (configure option ``--with-mpi=0``).
.. [#] You may need to use a parallelized version of the Python
interpreter with some MPI-1 implementations (e.g. MPICH1).
@@ -56,19 +56,19 @@ project website generously hosted by Bitbucket. You can use
* Using :program:`curl`::
- $ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+ $ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
* Using :program:`wget`::
- $ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+ $ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
Building
^^^^^^^^
After unpacking the release tarball::
- $ tar -zxf petsc4py-X.Y.tar.gz
- $ cd petsc4py-X.Y
+ $ tar -zxf petsc4py-X.Y.Z.tar.gz
+ $ cd petsc4py-X.Y.Z
the distribution is ready for building.
@@ -118,7 +118,7 @@ your system for all users, just do::
$ python setup.py install
The previous steps will install the :mod:`petsc4py` package at standard
-location :file:`{prefix}/lib/python{X}.{X}/site-packages`.
+location :file:`{prefix}/lib/python{X}.{Y}/site-packages`.
If you do not have root privileges or you want to install *PETSc for
Python* for your private use, just do::
diff --git a/docs/usrman/_sources/manual.txt b/docs/usrman/_sources/manual.rst.txt
similarity index 100%
rename from docs/usrman/_sources/manual.txt
rename to docs/usrman/_sources/manual.rst.txt
diff --git a/docs/usrman/_sources/overview.txt b/docs/usrman/_sources/overview.rst.txt
similarity index 98%
rename from docs/usrman/_sources/overview.txt
rename to docs/usrman/_sources/overview.rst.txt
index 23d6d56..9f000ae 100644
--- a/docs/usrman/_sources/overview.txt
+++ b/docs/usrman/_sources/overview.rst.txt
@@ -26,7 +26,7 @@ communication and computation.
P. Brune, K. Buschelman, L. Dalcin, V. Eijkhout, W.D. Gropp,
D. Karpeyev, D. Kaushik, M.G. Knepley, L. Curfman McInnes, K. Rupp,
B.F. Smith, S. Zampini, H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
.. [petsc-efficient] Satish Balay, Victor Eijkhout, William D. Gropp,
diff --git a/docs/usrman/_sources/tutorial.txt b/docs/usrman/_sources/tutorial.rst.txt
similarity index 100%
rename from docs/usrman/_sources/tutorial.txt
rename to docs/usrman/_sources/tutorial.rst.txt
diff --git a/docs/usrman/_static/basic.css b/docs/usrman/_static/basic.css
index 967e36c..6df76b0 100644
--- a/docs/usrman/_static/basic.css
+++ b/docs/usrman/_static/basic.css
@@ -4,7 +4,7 @@
*
* Sphinx stylesheet -- basic theme.
*
- * :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -52,6 +52,8 @@ div.sphinxsidebar {
width: 230px;
margin-left: -100%;
font-size: 90%;
+ word-wrap: break-word;
+ overflow-wrap : break-word;
}
div.sphinxsidebar ul {
@@ -83,10 +85,6 @@ div.sphinxsidebar #searchbox input[type="text"] {
width: 170px;
}
-div.sphinxsidebar #searchbox input[type="submit"] {
- width: 30px;
-}
-
img {
border: 0;
max-width: 100%;
@@ -124,6 +122,8 @@ ul.keywordmatches li.goodmatch a {
table.contentstable {
width: 90%;
+ margin-left: auto;
+ margin-right: auto;
}
table.contentstable p.biglink {
@@ -151,9 +151,14 @@ table.indextable td {
vertical-align: top;
}
-table.indextable dl, table.indextable dd {
+table.indextable ul {
margin-top: 0;
margin-bottom: 0;
+ list-style-type: none;
+}
+
+table.indextable > tbody > tr > td > ul {
+ padding-left: 0em;
}
table.indextable tr.pcap {
@@ -185,8 +190,22 @@ div.genindex-jumpbox {
padding: 0.4em;
}
+/* -- domain module index --------------------------------------------------- */
+
+table.modindextable td {
+ padding: 2px;
+ border-collapse: collapse;
+}
+
/* -- general body styles --------------------------------------------------- */
+div.body p, div.body dd, div.body li, div.body blockquote {
+ -moz-hyphens: auto;
+ -ms-hyphens: auto;
+ -webkit-hyphens: auto;
+ hyphens: auto;
+}
+
a.headerlink {
visibility: hidden;
}
@@ -197,7 +216,10 @@ h3:hover > a.headerlink,
h4:hover > a.headerlink,
h5:hover > a.headerlink,
h6:hover > a.headerlink,
-dt:hover > a.headerlink {
+dt:hover > a.headerlink,
+caption:hover > a.headerlink,
+p.caption:hover > a.headerlink,
+div.code-block-caption:hover > a.headerlink {
visibility: visible;
}
@@ -209,10 +231,6 @@ div.body td {
text-align: left;
}
-.field-list ul {
- padding-left: 1em;
-}
-
.first {
margin-top: 0 !important;
}
@@ -314,6 +332,13 @@ table.docutils {
border-collapse: collapse;
}
+table caption span.caption-number {
+ font-style: italic;
+}
+
+table caption span.caption-text {
+}
+
table.docutils td, table.docutils th {
padding: 1px 8px 1px 5px;
border-top: 0;
@@ -322,10 +347,6 @@ table.docutils td, table.docutils th {
border-bottom: 1px solid #aaa;
}
-table.field-list td, table.field-list th {
- border: 0 !important;
-}
-
table.footnote td, table.footnote th {
border: 0 !important;
}
@@ -344,6 +365,46 @@ table.citation td {
border-bottom: none;
}
+/* -- figures --------------------------------------------------------------- */
+
+div.figure {
+ margin: 0.5em;
+ padding: 0.5em;
+}
+
+div.figure p.caption {
+ padding: 0.3em;
+}
+
+div.figure p.caption span.caption-number {
+ font-style: italic;
+}
+
+div.figure p.caption span.caption-text {
+}
+
+/* -- field list styles ----------------------------------------------------- */
+
+table.field-list td, table.field-list th {
+ border: 0 !important;
+}
+
+.field-list ul {
+ margin: 0;
+ padding-left: 1em;
+}
+
+.field-list p {
+ margin: 0;
+}
+
+.field-name {
+ -moz-hyphens: manual;
+ -ms-hyphens: manual;
+ -webkit-hyphens: manual;
+ hyphens: manual;
+}
+
/* -- other body styles ----------------------------------------------------- */
ol.arabic {
@@ -393,19 +454,14 @@ dl.glossary dt {
font-size: 1.1em;
}
-.field-list ul {
- margin: 0;
- padding-left: 1em;
-}
-
-.field-list p {
- margin: 0;
-}
-
.optional {
font-size: 1.3em;
}
+.sig-paren {
+ font-size: larger;
+}
+
.versionmodified {
font-style: italic;
}
@@ -456,6 +512,13 @@ pre {
overflow-y: hidden; /* fixes display issues on Chrome browsers */
}
+span.pre {
+ -moz-hyphens: none;
+ -ms-hyphens: none;
+ -webkit-hyphens: none;
+ hyphens: none;
+}
+
td.linenos pre {
padding: 5px 0px;
border: 0;
@@ -471,22 +534,51 @@ table.highlighttable td {
padding: 0 0.5em 0 0.5em;
}
-tt.descname {
+div.code-block-caption {
+ padding: 2px 5px;
+ font-size: small;
+}
+
+div.code-block-caption code {
+ background-color: transparent;
+}
+
+div.code-block-caption + div > div.highlight > pre {
+ margin-top: 0;
+}
+
+div.code-block-caption span.caption-number {
+ padding: 0.1em 0.3em;
+ font-style: italic;
+}
+
+div.code-block-caption span.caption-text {
+}
+
+div.literal-block-wrapper {
+ padding: 1em 1em 0;
+}
+
+div.literal-block-wrapper div.highlight {
+ margin: 0;
+}
+
+code.descname {
background-color: transparent;
font-weight: bold;
font-size: 1.2em;
}
-tt.descclassname {
+code.descclassname {
background-color: transparent;
}
-tt.xref, a tt {
+code.xref, a code {
background-color: transparent;
font-weight: bold;
}
-h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
+h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
background-color: transparent;
}
@@ -518,6 +610,16 @@ span.eqno {
float: right;
}
+span.eqno a.headerlink {
+ position: relative;
+ left: 0px;
+ z-index: 1;
+}
+
+div.math:hover a.headerlink {
+ visibility: visible;
+}
+
/* -- printout stylesheet --------------------------------------------------- */
@media print {
diff --git a/docs/usrman/_static/default.css b/docs/usrman/_static/classic.css
similarity index 92%
copy from docs/usrman/_static/default.css
copy to docs/usrman/_static/classic.css
index 5f1399a..22fa0bd 100644
--- a/docs/usrman/_static/default.css
+++ b/docs/usrman/_static/classic.css
@@ -1,10 +1,10 @@
/*
- * default.css_t
+ * classic.css_t
* ~~~~~~~~~~~~~
*
- * Sphinx stylesheet -- default theme.
+ * Sphinx stylesheet -- classic theme.
*
- * :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -169,7 +169,7 @@ a.headerlink:hover {
color: white;
}
-div.body p, div.body dd, div.body li {
+div.body p, div.body dd, div.body li, div.body blockquote {
text-align: justify;
line-height: 130%;
}
@@ -227,7 +227,7 @@ pre {
border-right: none;
}
-tt {
+code {
background-color: #ecf0f3;
padding: 0 1px 0 1px;
font-size: 0.95em;
@@ -237,11 +237,11 @@ th {
background-color: #ede;
}
-.warning tt {
+.warning code {
background: #efc2c2;
}
-.note tt {
+.note code {
background: #d6d6d6;
}
@@ -253,4 +253,9 @@ div.viewcode-block:target {
background-color: #f4debf;
border-top: 1px solid #ac9;
border-bottom: 1px solid #ac9;
+}
+
+div.code-block-caption {
+ color: #efefef;
+ background-color: #1c4e63;
}
\ No newline at end of file
diff --git a/docs/usrman/_static/comment-bright.png b/docs/usrman/_static/comment-bright.png
index 551517b..15e27ed 100644
Binary files a/docs/usrman/_static/comment-bright.png and b/docs/usrman/_static/comment-bright.png differ
diff --git a/docs/usrman/_static/comment-close.png b/docs/usrman/_static/comment-close.png
index 09b54be..4d91bcf 100644
Binary files a/docs/usrman/_static/comment-close.png and b/docs/usrman/_static/comment-close.png differ
diff --git a/docs/usrman/_static/comment.png b/docs/usrman/_static/comment.png
index 92feb52..dfbc0cb 100644
Binary files a/docs/usrman/_static/comment.png and b/docs/usrman/_static/comment.png differ
diff --git a/docs/usrman/_static/default.css b/docs/usrman/_static/default.css
index 5f1399a..81b9363 100644
--- a/docs/usrman/_static/default.css
+++ b/docs/usrman/_static/default.css
@@ -1,256 +1 @@
-/*
- * default.css_t
- * ~~~~~~~~~~~~~
- *
- * Sphinx stylesheet -- default theme.
- *
- * :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS.
- * :license: BSD, see LICENSE for details.
- *
- */
-
- at import url("basic.css");
-
-/* -- page layout ----------------------------------------------------------- */
-
-body {
- font-family: sans-serif;
- font-size: 100%;
- background-color: #11303d;
- color: #000;
- margin: 0;
- padding: 0;
-}
-
-div.document {
- background-color: #1c4e63;
-}
-
-div.documentwrapper {
- float: left;
- width: 100%;
-}
-
-div.bodywrapper {
- margin: 0 0 0 230px;
-}
-
-div.body {
- background-color: #ffffff;
- color: #000000;
- padding: 0 20px 30px 20px;
-}
-
-div.footer {
- color: #ffffff;
- width: 100%;
- padding: 9px 0 9px 0;
- text-align: center;
- font-size: 75%;
-}
-
-div.footer a {
- color: #ffffff;
- text-decoration: underline;
-}
-
-div.related {
- background-color: #133f52;
- line-height: 30px;
- color: #ffffff;
-}
-
-div.related a {
- color: #ffffff;
-}
-
-div.sphinxsidebar {
-}
-
-div.sphinxsidebar h3 {
- font-family: 'Trebuchet MS', sans-serif;
- color: #ffffff;
- font-size: 1.4em;
- font-weight: normal;
- margin: 0;
- padding: 0;
-}
-
-div.sphinxsidebar h3 a {
- color: #ffffff;
-}
-
-div.sphinxsidebar h4 {
- font-family: 'Trebuchet MS', sans-serif;
- color: #ffffff;
- font-size: 1.3em;
- font-weight: normal;
- margin: 5px 0 0 0;
- padding: 0;
-}
-
-div.sphinxsidebar p {
- color: #ffffff;
-}
-
-div.sphinxsidebar p.topless {
- margin: 5px 10px 10px 10px;
-}
-
-div.sphinxsidebar ul {
- margin: 10px;
- padding: 0;
- color: #ffffff;
-}
-
-div.sphinxsidebar a {
- color: #98dbcc;
-}
-
-div.sphinxsidebar input {
- border: 1px solid #98dbcc;
- font-family: sans-serif;
- font-size: 1em;
-}
-
-
-
-/* -- hyperlink styles ------------------------------------------------------ */
-
-a {
- color: #355f7c;
- text-decoration: none;
-}
-
-a:visited {
- color: #355f7c;
- text-decoration: none;
-}
-
-a:hover {
- text-decoration: underline;
-}
-
-
-
-/* -- body styles ----------------------------------------------------------- */
-
-div.body h1,
-div.body h2,
-div.body h3,
-div.body h4,
-div.body h5,
-div.body h6 {
- font-family: 'Trebuchet MS', sans-serif;
- background-color: #f2f2f2;
- font-weight: normal;
- color: #20435c;
- border-bottom: 1px solid #ccc;
- margin: 20px -20px 10px -20px;
- padding: 3px 0 3px 10px;
-}
-
-div.body h1 { margin-top: 0; font-size: 200%; }
-div.body h2 { font-size: 160%; }
-div.body h3 { font-size: 140%; }
-div.body h4 { font-size: 120%; }
-div.body h5 { font-size: 110%; }
-div.body h6 { font-size: 100%; }
-
-a.headerlink {
- color: #c60f0f;
- font-size: 0.8em;
- padding: 0 4px 0 4px;
- text-decoration: none;
-}
-
-a.headerlink:hover {
- background-color: #c60f0f;
- color: white;
-}
-
-div.body p, div.body dd, div.body li {
- text-align: justify;
- line-height: 130%;
-}
-
-div.admonition p.admonition-title + p {
- display: inline;
-}
-
-div.admonition p {
- margin-bottom: 5px;
-}
-
-div.admonition pre {
- margin-bottom: 5px;
-}
-
-div.admonition ul, div.admonition ol {
- margin-bottom: 5px;
-}
-
-div.note {
- background-color: #eee;
- border: 1px solid #ccc;
-}
-
-div.seealso {
- background-color: #ffc;
- border: 1px solid #ff6;
-}
-
-div.topic {
- background-color: #eee;
-}
-
-div.warning {
- background-color: #ffe4e4;
- border: 1px solid #f66;
-}
-
-p.admonition-title {
- display: inline;
-}
-
-p.admonition-title:after {
- content: ":";
-}
-
-pre {
- padding: 5px;
- background-color: #eeffcc;
- color: #333333;
- line-height: 120%;
- border: 1px solid #ac9;
- border-left: none;
- border-right: none;
-}
-
-tt {
- background-color: #ecf0f3;
- padding: 0 1px 0 1px;
- font-size: 0.95em;
-}
-
-th {
- background-color: #ede;
-}
-
-.warning tt {
- background: #efc2c2;
-}
-
-.note tt {
- background: #d6d6d6;
-}
-
-.viewcode-back {
- font-family: sans-serif;
-}
-
-div.viewcode-block:target {
- background-color: #f4debf;
- border-top: 1px solid #ac9;
- border-bottom: 1px solid #ac9;
-}
\ No newline at end of file
+ at import url("classic.css");
diff --git a/docs/usrman/_static/doctools.js b/docs/usrman/_static/doctools.js
index c5455c9..5654977 100644
--- a/docs/usrman/_static/doctools.js
+++ b/docs/usrman/_static/doctools.js
@@ -4,7 +4,7 @@
*
* Sphinx JavaScript utilities for all documentation.
*
- * :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -91,6 +91,30 @@ jQuery.fn.highlightText = function(text, className) {
});
};
+/*
+ * backward compatibility for jQuery.browser
+ * This will be supported until firefox bug is fixed.
+ */
+if (!jQuery.browser) {
+ jQuery.uaMatch = function(ua) {
+ ua = ua.toLowerCase();
+
+ var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
+ /(webkit)[ \/]([\w.]+)/.exec(ua) ||
+ /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
+ /(msie) ([\w.]+)/.exec(ua) ||
+ ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
+ [];
+
+ return {
+ browser: match[ 1 ] || "",
+ version: match[ 2 ] || "0"
+ };
+ };
+ jQuery.browser = {};
+ jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true;
+}
+
/**
* Small JavaScript module for the documentation.
*/
@@ -100,6 +124,7 @@ var Documentation = {
this.fixFirefoxAnchorBug();
this.highlightSearchWords();
this.initIndexTable();
+
},
/**
@@ -152,9 +177,10 @@ var Documentation = {
/**
* workaround a firefox stupidity
+ * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075
*/
fixFirefoxAnchorBug : function() {
- if (document.location.hash && $.browser.mozilla)
+ if (document.location.hash)
window.setTimeout(function() {
document.location.href += '';
}, 10);
@@ -227,6 +253,29 @@ var Documentation = {
});
var url = parts.join('/');
return path.substring(url.lastIndexOf('/') + 1, path.length - 1);
+ },
+
+ initOnKeyListeners: function() {
+ $(document).keyup(function(event) {
+ var activeElementType = document.activeElement.tagName;
+ // don't navigate when in search box or textarea
+ if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT') {
+ switch (event.keyCode) {
+ case 37: // left
+ var prevHref = $('link[rel="prev"]').prop('href');
+ if (prevHref) {
+ window.location.href = prevHref;
+ return false;
+ }
+ case 39: // right
+ var nextHref = $('link[rel="next"]').prop('href');
+ if (nextHref) {
+ window.location.href = nextHref;
+ return false;
+ }
+ }
+ }
+ });
}
};
@@ -235,4 +284,4 @@ _ = Documentation.gettext;
$(document).ready(function() {
Documentation.init();
-});
+});
\ No newline at end of file
diff --git a/docs/usrman/_static/down-pressed.png b/docs/usrman/_static/down-pressed.png
index 6f7ad78..5756c8c 100644
Binary files a/docs/usrman/_static/down-pressed.png and b/docs/usrman/_static/down-pressed.png differ
diff --git a/docs/usrman/_static/down.png b/docs/usrman/_static/down.png
index 3003a88..1b3bdad 100644
Binary files a/docs/usrman/_static/down.png and b/docs/usrman/_static/down.png differ
diff --git a/docs/usrman/_static/file.png b/docs/usrman/_static/file.png
index d18082e..a858a41 100644
Binary files a/docs/usrman/_static/file.png and b/docs/usrman/_static/file.png differ
diff --git a/docs/usrman/_static/jquery-3.1.0.js b/docs/usrman/_static/jquery-3.1.0.js
new file mode 100644
index 0000000..f2fc274
--- /dev/null
+++ b/docs/usrman/_static/jquery-3.1.0.js
@@ -0,0 +1,10074 @@
+/*eslint-disable no-unused-vars*/
+/*!
+ * jQuery JavaScript Library v3.1.0
+ * https://jquery.com/
+ *
+ * Includes Sizzle.js
+ * https://sizzlejs.com/
+ *
+ * Copyright jQuery Foundation and other contributors
+ * Released under the MIT license
+ * https://jquery.org/license
+ *
+ * Date: 2016-07-07T21:44Z
+ */
+( function( global, factory ) {
+
+ "use strict";
+
+ if ( typeof module === "object" && typeof module.exports === "object" ) {
+
+ // For CommonJS and CommonJS-like environments where a proper `window`
+ // is present, execute the factory and get jQuery.
+ // For environments that do not have a `window` with a `document`
+ // (such as Node.js), expose a factory as module.exports.
+ // This accentuates the need for the creation of a real `window`.
+ // e.g. var jQuery = require("jquery")(window);
+ // See ticket #14549 for more info.
+ module.exports = global.document ?
+ factory( global, true ) :
+ function( w ) {
+ if ( !w.document ) {
+ throw new Error( "jQuery requires a window with a document" );
+ }
+ return factory( w );
+ };
+ } else {
+ factory( global );
+ }
+
+// Pass this if window is not defined yet
+} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
+
+// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
+// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
+// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common
+// enough that all such attempts are guarded in a try block.
+"use strict";
+
+var arr = [];
+
+var document = window.document;
+
+var getProto = Object.getPrototypeOf;
+
+var slice = arr.slice;
+
+var concat = arr.concat;
+
+var push = arr.push;
+
+var indexOf = arr.indexOf;
+
+var class2type = {};
+
+var toString = class2type.toString;
+
+var hasOwn = class2type.hasOwnProperty;
+
+var fnToString = hasOwn.toString;
+
+var ObjectFunctionString = fnToString.call( Object );
+
+var support = {};
+
+
+
+ function DOMEval( code, doc ) {
+ doc = doc || document;
+
+ var script = doc.createElement( "script" );
+
+ script.text = code;
+ doc.head.appendChild( script ).parentNode.removeChild( script );
+ }
+/* global Symbol */
+// Defining this global in .eslintrc would create a danger of using the global
+// unguarded in another place, it seems safer to define global only for this module
+
+
+
+var
+ version = "3.1.0",
+
+ // Define a local copy of jQuery
+ jQuery = function( selector, context ) {
+
+ // The jQuery object is actually just the init constructor 'enhanced'
+ // Need init if jQuery is called (just allow error to be thrown if not included)
+ return new jQuery.fn.init( selector, context );
+ },
+
+ // Support: Android <=4.0 only
+ // Make sure we trim BOM and NBSP
+ rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
+
+ // Matches dashed string for camelizing
+ rmsPrefix = /^-ms-/,
+ rdashAlpha = /-([a-z])/g,
+
+ // Used by jQuery.camelCase as callback to replace()
+ fcamelCase = function( all, letter ) {
+ return letter.toUpperCase();
+ };
+
+jQuery.fn = jQuery.prototype = {
+
+ // The current version of jQuery being used
+ jquery: version,
+
+ constructor: jQuery,
+
+ // The default length of a jQuery object is 0
+ length: 0,
+
+ toArray: function() {
+ return slice.call( this );
+ },
+
+ // Get the Nth element in the matched element set OR
+ // Get the whole matched element set as a clean array
+ get: function( num ) {
+ return num != null ?
+
+ // Return just the one element from the set
+ ( num < 0 ? this[ num + this.length ] : this[ num ] ) :
+
+ // Return all the elements in a clean array
+ slice.call( this );
+ },
+
+ // Take an array of elements and push it onto the stack
+ // (returning the new matched element set)
+ pushStack: function( elems ) {
+
+ // Build a new jQuery matched element set
+ var ret = jQuery.merge( this.constructor(), elems );
+
+ // Add the old object onto the stack (as a reference)
+ ret.prevObject = this;
+
+ // Return the newly-formed element set
+ return ret;
+ },
+
+ // Execute a callback for every element in the matched set.
+ each: function( callback ) {
+ return jQuery.each( this, callback );
+ },
+
+ map: function( callback ) {
+ return this.pushStack( jQuery.map( this, function( elem, i ) {
+ return callback.call( elem, i, elem );
+ } ) );
+ },
+
+ slice: function() {
+ return this.pushStack( slice.apply( this, arguments ) );
+ },
+
+ first: function() {
+ return this.eq( 0 );
+ },
+
+ last: function() {
+ return this.eq( -1 );
+ },
+
+ eq: function( i ) {
+ var len = this.length,
+ j = +i + ( i < 0 ? len : 0 );
+ return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );
+ },
+
+ end: function() {
+ return this.prevObject || this.constructor();
+ },
+
+ // For internal use only.
+ // Behaves like an Array's method, not like a jQuery method.
+ push: push,
+ sort: arr.sort,
+ splice: arr.splice
+};
+
+jQuery.extend = jQuery.fn.extend = function() {
+ var options, name, src, copy, copyIsArray, clone,
+ target = arguments[ 0 ] || {},
+ i = 1,
+ length = arguments.length,
+ deep = false;
+
+ // Handle a deep copy situation
+ if ( typeof target === "boolean" ) {
+ deep = target;
+
+ // Skip the boolean and the target
+ target = arguments[ i ] || {};
+ i++;
+ }
+
+ // Handle case when target is a string or something (possible in deep copy)
+ if ( typeof target !== "object" && !jQuery.isFunction( target ) ) {
+ target = {};
+ }
+
+ // Extend jQuery itself if only one argument is passed
+ if ( i === length ) {
+ target = this;
+ i--;
+ }
+
+ for ( ; i < length; i++ ) {
+
+ // Only deal with non-null/undefined values
+ if ( ( options = arguments[ i ] ) != null ) {
+
+ // Extend the base object
+ for ( name in options ) {
+ src = target[ name ];
+ copy = options[ name ];
+
+ // Prevent never-ending loop
+ if ( target === copy ) {
+ continue;
+ }
+
+ // Recurse if we're merging plain objects or arrays
+ if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
+ ( copyIsArray = jQuery.isArray( copy ) ) ) ) {
+
+ if ( copyIsArray ) {
+ copyIsArray = false;
+ clone = src && jQuery.isArray( src ) ? src : [];
+
+ } else {
+ clone = src && jQuery.isPlainObject( src ) ? src : {};
+ }
+
+ // Never move original objects, clone them
+ target[ name ] = jQuery.extend( deep, clone, copy );
+
+ // Don't bring in undefined values
+ } else if ( copy !== undefined ) {
+ target[ name ] = copy;
+ }
+ }
+ }
+ }
+
+ // Return the modified object
+ return target;
+};
+
+jQuery.extend( {
+
+ // Unique for each copy of jQuery on the page
+ expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),
+
+ // Assume jQuery is ready without the ready module
+ isReady: true,
+
+ error: function( msg ) {
+ throw new Error( msg );
+ },
+
+ noop: function() {},
+
+ isFunction: function( obj ) {
+ return jQuery.type( obj ) === "function";
+ },
+
+ isArray: Array.isArray,
+
+ isWindow: function( obj ) {
+ return obj != null && obj === obj.window;
+ },
+
+ isNumeric: function( obj ) {
+
+ // As of jQuery 3.0, isNumeric is limited to
+ // strings and numbers (primitives or objects)
+ // that can be coerced to finite numbers (gh-2662)
+ var type = jQuery.type( obj );
+ return ( type === "number" || type === "string" ) &&
+
+ // parseFloat NaNs numeric-cast false positives ("")
+ // ...but misinterprets leading-number strings, particularly hex literals ("0x...")
+ // subtraction forces infinities to NaN
+ !isNaN( obj - parseFloat( obj ) );
+ },
+
+ isPlainObject: function( obj ) {
+ var proto, Ctor;
+
+ // Detect obvious negatives
+ // Use toString instead of jQuery.type to catch host objects
+ if ( !obj || toString.call( obj ) !== "[object Object]" ) {
+ return false;
+ }
+
+ proto = getProto( obj );
+
+ // Objects with no prototype (e.g., `Object.create( null )`) are plain
+ if ( !proto ) {
+ return true;
+ }
+
+ // Objects with prototype are plain iff they were constructed by a global Object function
+ Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor;
+ return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString;
+ },
+
+ isEmptyObject: function( obj ) {
+
+ /* eslint-disable no-unused-vars */
+ // See https://github.com/eslint/eslint/issues/6125
+ var name;
+
+ for ( name in obj ) {
+ return false;
+ }
+ return true;
+ },
+
+ type: function( obj ) {
+ if ( obj == null ) {
+ return obj + "";
+ }
+
+ // Support: Android <=2.3 only (functionish RegExp)
+ return typeof obj === "object" || typeof obj === "function" ?
+ class2type[ toString.call( obj ) ] || "object" :
+ typeof obj;
+ },
+
+ // Evaluates a script in a global context
+ globalEval: function( code ) {
+ DOMEval( code );
+ },
+
+ // Convert dashed to camelCase; used by the css and data modules
+ // Support: IE <=9 - 11, Edge 12 - 13
+ // Microsoft forgot to hump their vendor prefix (#9572)
+ camelCase: function( string ) {
+ return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
+ },
+
+ nodeName: function( elem, name ) {
+ return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
+ },
+
+ each: function( obj, callback ) {
+ var length, i = 0;
+
+ if ( isArrayLike( obj ) ) {
+ length = obj.length;
+ for ( ; i < length; i++ ) {
+ if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
+ break;
+ }
+ }
+ } else {
+ for ( i in obj ) {
+ if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
+ break;
+ }
+ }
+ }
+
+ return obj;
+ },
+
+ // Support: Android <=4.0 only
+ trim: function( text ) {
+ return text == null ?
+ "" :
+ ( text + "" ).replace( rtrim, "" );
+ },
+
+ // results is for internal usage only
+ makeArray: function( arr, results ) {
+ var ret = results || [];
+
+ if ( arr != null ) {
+ if ( isArrayLike( Object( arr ) ) ) {
+ jQuery.merge( ret,
+ typeof arr === "string" ?
+ [ arr ] : arr
+ );
+ } else {
+ push.call( ret, arr );
+ }
+ }
+
+ return ret;
+ },
+
+ inArray: function( elem, arr, i ) {
+ return arr == null ? -1 : indexOf.call( arr, elem, i );
+ },
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // push.apply(_, arraylike) throws on ancient WebKit
+ merge: function( first, second ) {
+ var len = +second.length,
+ j = 0,
+ i = first.length;
+
+ for ( ; j < len; j++ ) {
+ first[ i++ ] = second[ j ];
+ }
+
+ first.length = i;
+
+ return first;
+ },
+
+ grep: function( elems, callback, invert ) {
+ var callbackInverse,
+ matches = [],
+ i = 0,
+ length = elems.length,
+ callbackExpect = !invert;
+
+ // Go through the array, only saving the items
+ // that pass the validator function
+ for ( ; i < length; i++ ) {
+ callbackInverse = !callback( elems[ i ], i );
+ if ( callbackInverse !== callbackExpect ) {
+ matches.push( elems[ i ] );
+ }
+ }
+
+ return matches;
+ },
+
+ // arg is for internal usage only
+ map: function( elems, callback, arg ) {
+ var length, value,
+ i = 0,
+ ret = [];
+
+ // Go through the array, translating each of the items to their new values
+ if ( isArrayLike( elems ) ) {
+ length = elems.length;
+ for ( ; i < length; i++ ) {
+ value = callback( elems[ i ], i, arg );
+
+ if ( value != null ) {
+ ret.push( value );
+ }
+ }
+
+ // Go through every key on the object,
+ } else {
+ for ( i in elems ) {
+ value = callback( elems[ i ], i, arg );
+
+ if ( value != null ) {
+ ret.push( value );
+ }
+ }
+ }
+
+ // Flatten any nested arrays
+ return concat.apply( [], ret );
+ },
+
+ // A global GUID counter for objects
+ guid: 1,
+
+ // Bind a function to a context, optionally partially applying any
+ // arguments.
+ proxy: function( fn, context ) {
+ var tmp, args, proxy;
+
+ if ( typeof context === "string" ) {
+ tmp = fn[ context ];
+ context = fn;
+ fn = tmp;
+ }
+
+ // Quick check to determine if target is callable, in the spec
+ // this throws a TypeError, but we will just return undefined.
+ if ( !jQuery.isFunction( fn ) ) {
+ return undefined;
+ }
+
+ // Simulated bind
+ args = slice.call( arguments, 2 );
+ proxy = function() {
+ return fn.apply( context || this, args.concat( slice.call( arguments ) ) );
+ };
+
+ // Set the guid of unique handler to the same of original handler, so it can be removed
+ proxy.guid = fn.guid = fn.guid || jQuery.guid++;
+
+ return proxy;
+ },
+
+ now: Date.now,
+
+ // jQuery.support is not used in Core but other projects attach their
+ // properties to it so it needs to exist.
+ support: support
+} );
+
+if ( typeof Symbol === "function" ) {
+ jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
+}
+
+// Populate the class2type map
+jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
+function( i, name ) {
+ class2type[ "[object " + name + "]" ] = name.toLowerCase();
+} );
+
+function isArrayLike( obj ) {
+
+ // Support: real iOS 8.2 only (not reproducible in simulator)
+ // `in` check used to prevent JIT error (gh-2145)
+ // hasOwn isn't used here due to false negatives
+ // regarding Nodelist length in IE
+ var length = !!obj && "length" in obj && obj.length,
+ type = jQuery.type( obj );
+
+ if ( type === "function" || jQuery.isWindow( obj ) ) {
+ return false;
+ }
+
+ return type === "array" || length === 0 ||
+ typeof length === "number" && length > 0 && ( length - 1 ) in obj;
+}
+var Sizzle =
+/*!
+ * Sizzle CSS Selector Engine v2.3.0
+ * https://sizzlejs.com/
+ *
+ * Copyright jQuery Foundation and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: 2016-01-04
+ */
+(function( window ) {
+
+var i,
+ support,
+ Expr,
+ getText,
+ isXML,
+ tokenize,
+ compile,
+ select,
+ outermostContext,
+ sortInput,
+ hasDuplicate,
+
+ // Local document vars
+ setDocument,
+ document,
+ docElem,
+ documentIsHTML,
+ rbuggyQSA,
+ rbuggyMatches,
+ matches,
+ contains,
+
+ // Instance-specific data
+ expando = "sizzle" + 1 * new Date(),
+ preferredDoc = window.document,
+ dirruns = 0,
+ done = 0,
+ classCache = createCache(),
+ tokenCache = createCache(),
+ compilerCache = createCache(),
+ sortOrder = function( a, b ) {
+ if ( a === b ) {
+ hasDuplicate = true;
+ }
+ return 0;
+ },
+
+ // Instance methods
+ hasOwn = ({}).hasOwnProperty,
+ arr = [],
+ pop = arr.pop,
+ push_native = arr.push,
+ push = arr.push,
+ slice = arr.slice,
+ // Use a stripped-down indexOf as it's faster than native
+ // https://jsperf.com/thor-indexof-vs-for/5
+ indexOf = function( list, elem ) {
+ var i = 0,
+ len = list.length;
+ for ( ; i < len; i++ ) {
+ if ( list[i] === elem ) {
+ return i;
+ }
+ }
+ return -1;
+ },
+
+ booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
+
+ // Regular expressions
+
+ // http://www.w3.org/TR/css3-selectors/#whitespace
+ whitespace = "[\\x20\\t\\r\\n\\f]",
+
+ // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
+ identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
+
+ // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors
+ attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace +
+ // Operator (capture 2)
+ "*([*^$|!~]?=)" + whitespace +
+ // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
+ "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace +
+ "*\\]",
+
+ pseudos = ":(" + identifier + ")(?:\\((" +
+ // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
+ // 1. quoted (capture 3; capture 4 or capture 5)
+ "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +
+ // 2. simple (capture 6)
+ "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +
+ // 3. anything else (capture 2)
+ ".*" +
+ ")\\)|)",
+
+ // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
+ rwhitespace = new RegExp( whitespace + "+", "g" ),
+ rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
+
+ rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
+ rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ),
+
+ rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ),
+
+ rpseudo = new RegExp( pseudos ),
+ ridentifier = new RegExp( "^" + identifier + "$" ),
+
+ matchExpr = {
+ "ID": new RegExp( "^#(" + identifier + ")" ),
+ "CLASS": new RegExp( "^\\.(" + identifier + ")" ),
+ "TAG": new RegExp( "^(" + identifier + "|[*])" ),
+ "ATTR": new RegExp( "^" + attributes ),
+ "PSEUDO": new RegExp( "^" + pseudos ),
+ "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace +
+ "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
+ "*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
+ "bool": new RegExp( "^(?:" + booleans + ")$", "i" ),
+ // For use in libraries implementing .is()
+ // We use this for POS matching in `select`
+ "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" +
+ whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" )
+ },
+
+ rinputs = /^(?:input|select|textarea|button)$/i,
+ rheader = /^h\d$/i,
+
+ rnative = /^[^{]+\{\s*\[native \w/,
+
+ // Easily-parseable/retrievable ID or TAG or CLASS selectors
+ rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
+
+ rsibling = /[+~]/,
+
+ // CSS escapes
+ // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters
+ runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ),
+ funescape = function( _, escaped, escapedWhitespace ) {
+ var high = "0x" + escaped - 0x10000;
+ // NaN means non-codepoint
+ // Support: Firefox<24
+ // Workaround erroneous numeric interpretation of +"0x"
+ return high !== high || escapedWhitespace ?
+ escaped :
+ high < 0 ?
+ // BMP codepoint
+ String.fromCharCode( high + 0x10000 ) :
+ // Supplemental Plane codepoint (surrogate pair)
+ String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
+ },
+
+ // CSS string/identifier serialization
+ // https://drafts.csswg.org/cssom/#common-serializing-idioms
+ rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,
+ fcssescape = function( ch, asCodePoint ) {
+ if ( asCodePoint ) {
+
+ // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER
+ if ( ch === "\0" ) {
+ return "\uFFFD";
+ }
+
+ // Control characters and (dependent upon position) numbers get escaped as code points
+ return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " ";
+ }
+
+ // Other potentially-special ASCII characters get backslash-escaped
+ return "\\" + ch;
+ },
+
+ // Used for iframes
+ // See setDocument()
+ // Removing the function wrapper causes a "Permission Denied"
+ // error in IE
+ unloadHandler = function() {
+ setDocument();
+ },
+
+ disabledAncestor = addCombinator(
+ function( elem ) {
+ return elem.disabled === true;
+ },
+ { dir: "parentNode", next: "legend" }
+ );
+
+// Optimize for push.apply( _, NodeList )
+try {
+ push.apply(
+ (arr = slice.call( preferredDoc.childNodes )),
+ preferredDoc.childNodes
+ );
+ // Support: Android<4.0
+ // Detect silently failing push.apply
+ arr[ preferredDoc.childNodes.length ].nodeType;
+} catch ( e ) {
+ push = { apply: arr.length ?
+
+ // Leverage slice if possible
+ function( target, els ) {
+ push_native.apply( target, slice.call(els) );
+ } :
+
+ // Support: IE<9
+ // Otherwise append directly
+ function( target, els ) {
+ var j = target.length,
+ i = 0;
+ // Can't trust NodeList.length
+ while ( (target[j++] = els[i++]) ) {}
+ target.length = j - 1;
+ }
+ };
+}
+
+function Sizzle( selector, context, results, seed ) {
+ var m, i, elem, nid, match, groups, newSelector,
+ newContext = context && context.ownerDocument,
+
+ // nodeType defaults to 9, since context defaults to document
+ nodeType = context ? context.nodeType : 9;
+
+ results = results || [];
+
+ // Return early from calls with invalid selector or context
+ if ( typeof selector !== "string" || !selector ||
+ nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {
+
+ return results;
+ }
+
+ // Try to shortcut find operations (as opposed to filters) in HTML documents
+ if ( !seed ) {
+
+ if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {
+ setDocument( context );
+ }
+ context = context || document;
+
+ if ( documentIsHTML ) {
+
+ // If the selector is sufficiently simple, try using a "get*By*" DOM method
+ // (excepting DocumentFragment context, where the methods don't exist)
+ if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {
+
+ // ID selector
+ if ( (m = match[1]) ) {
+
+ // Document context
+ if ( nodeType === 9 ) {
+ if ( (elem = context.getElementById( m )) ) {
+
+ // Support: IE, Opera, Webkit
+ // TODO: identify versions
+ // getElementById can match elements by name instead of ID
+ if ( elem.id === m ) {
+ results.push( elem );
+ return results;
+ }
+ } else {
+ return results;
+ }
+
+ // Element context
+ } else {
+
+ // Support: IE, Opera, Webkit
+ // TODO: identify versions
+ // getElementById can match elements by name instead of ID
+ if ( newContext && (elem = newContext.getElementById( m )) &&
+ contains( context, elem ) &&
+ elem.id === m ) {
+
+ results.push( elem );
+ return results;
+ }
+ }
+
+ // Type selector
+ } else if ( match[2] ) {
+ push.apply( results, context.getElementsByTagName( selector ) );
+ return results;
+
+ // Class selector
+ } else if ( (m = match[3]) && support.getElementsByClassName &&
+ context.getElementsByClassName ) {
+
+ push.apply( results, context.getElementsByClassName( m ) );
+ return results;
+ }
+ }
+
+ // Take advantage of querySelectorAll
+ if ( support.qsa &&
+ !compilerCache[ selector + " " ] &&
+ (!rbuggyQSA || !rbuggyQSA.test( selector )) ) {
+
+ if ( nodeType !== 1 ) {
+ newContext = context;
+ newSelector = selector;
+
+ // qSA looks outside Element context, which is not what we want
+ // Thanks to Andrew Dupont for this workaround technique
+ // Support: IE <=8
+ // Exclude object elements
+ } else if ( context.nodeName.toLowerCase() !== "object" ) {
+
+ // Capture the context ID, setting it first if necessary
+ if ( (nid = context.getAttribute( "id" )) ) {
+ nid = nid.replace( rcssescape, fcssescape );
+ } else {
+ context.setAttribute( "id", (nid = expando) );
+ }
+
+ // Prefix every selector in the list
+ groups = tokenize( selector );
+ i = groups.length;
+ while ( i-- ) {
+ groups[i] = "#" + nid + " " + toSelector( groups[i] );
+ }
+ newSelector = groups.join( "," );
+
+ // Expand context for sibling selectors
+ newContext = rsibling.test( selector ) && testContext( context.parentNode ) ||
+ context;
+ }
+
+ if ( newSelector ) {
+ try {
+ push.apply( results,
+ newContext.querySelectorAll( newSelector )
+ );
+ return results;
+ } catch ( qsaError ) {
+ } finally {
+ if ( nid === expando ) {
+ context.removeAttribute( "id" );
+ }
+ }
+ }
+ }
+ }
+ }
+
+ // All others
+ return select( selector.replace( rtrim, "$1" ), context, results, seed );
+}
+
+/**
+ * Create key-value caches of limited size
+ * @returns {function(string, object)} Returns the Object data after storing it on itself with
+ * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)
+ * deleting the oldest entry
+ */
+function createCache() {
+ var keys = [];
+
+ function cache( key, value ) {
+ // Use (key + " ") to avoid collision with native prototype properties (see Issue #157)
+ if ( keys.push( key + " " ) > Expr.cacheLength ) {
+ // Only keep the most recent entries
+ delete cache[ keys.shift() ];
+ }
+ return (cache[ key + " " ] = value);
+ }
+ return cache;
+}
+
+/**
+ * Mark a function for special use by Sizzle
+ * @param {Function} fn The function to mark
+ */
+function markFunction( fn ) {
+ fn[ expando ] = true;
+ return fn;
+}
+
+/**
+ * Support testing using an element
+ * @param {Function} fn Passed the created element and returns a boolean result
+ */
+function assert( fn ) {
+ var el = document.createElement("fieldset");
+
+ try {
+ return !!fn( el );
+ } catch (e) {
+ return false;
+ } finally {
+ // Remove from its parent by default
+ if ( el.parentNode ) {
+ el.parentNode.removeChild( el );
+ }
+ // release memory in IE
+ el = null;
+ }
+}
+
+/**
+ * Adds the same handler for all of the specified attrs
+ * @param {String} attrs Pipe-separated list of attributes
+ * @param {Function} handler The method that will be applied
+ */
+function addHandle( attrs, handler ) {
+ var arr = attrs.split("|"),
+ i = arr.length;
+
+ while ( i-- ) {
+ Expr.attrHandle[ arr[i] ] = handler;
+ }
+}
+
+/**
+ * Checks document order of two siblings
+ * @param {Element} a
+ * @param {Element} b
+ * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b
+ */
+function siblingCheck( a, b ) {
+ var cur = b && a,
+ diff = cur && a.nodeType === 1 && b.nodeType === 1 &&
+ a.sourceIndex - b.sourceIndex;
+
+ // Use IE sourceIndex if available on both nodes
+ if ( diff ) {
+ return diff;
+ }
+
+ // Check if b follows a
+ if ( cur ) {
+ while ( (cur = cur.nextSibling) ) {
+ if ( cur === b ) {
+ return -1;
+ }
+ }
+ }
+
+ return a ? 1 : -1;
+}
+
+/**
+ * Returns a function to use in pseudos for input types
+ * @param {String} type
+ */
+function createInputPseudo( type ) {
+ return function( elem ) {
+ var name = elem.nodeName.toLowerCase();
+ return name === "input" && elem.type === type;
+ };
+}
+
+/**
+ * Returns a function to use in pseudos for buttons
+ * @param {String} type
+ */
+function createButtonPseudo( type ) {
+ return function( elem ) {
+ var name = elem.nodeName.toLowerCase();
+ return (name === "input" || name === "button") && elem.type === type;
+ };
+}
+
+/**
+ * Returns a function to use in pseudos for :enabled/:disabled
+ * @param {Boolean} disabled true for :disabled; false for :enabled
+ */
+function createDisabledPseudo( disabled ) {
+ // Known :disabled false positives:
+ // IE: *[disabled]:not(button, input, select, textarea, optgroup, option, menuitem, fieldset)
+ // not IE: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable
+ return function( elem ) {
+
+ // Check form elements and option elements for explicit disabling
+ return "label" in elem && elem.disabled === disabled ||
+ "form" in elem && elem.disabled === disabled ||
+
+ // Check non-disabled form elements for fieldset[disabled] ancestors
+ "form" in elem && elem.disabled === false && (
+ // Support: IE6-11+
+ // Ancestry is covered for us
+ elem.isDisabled === disabled ||
+
+ // Otherwise, assume any non-<option> under fieldset[disabled] is disabled
+ /* jshint -W018 */
+ elem.isDisabled !== !disabled &&
+ ("label" in elem || !disabledAncestor( elem )) !== disabled
+ );
+ };
+}
+
+/**
+ * Returns a function to use in pseudos for positionals
+ * @param {Function} fn
+ */
+function createPositionalPseudo( fn ) {
+ return markFunction(function( argument ) {
+ argument = +argument;
+ return markFunction(function( seed, matches ) {
+ var j,
+ matchIndexes = fn( [], seed.length, argument ),
+ i = matchIndexes.length;
+
+ // Match elements found at the specified indexes
+ while ( i-- ) {
+ if ( seed[ (j = matchIndexes[i]) ] ) {
+ seed[j] = !(matches[j] = seed[j]);
+ }
+ }
+ });
+ });
+}
+
+/**
+ * Checks a node for validity as a Sizzle context
+ * @param {Element|Object=} context
+ * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value
+ */
+function testContext( context ) {
+ return context && typeof context.getElementsByTagName !== "undefined" && context;
+}
+
+// Expose support vars for convenience
+support = Sizzle.support = {};
+
+/**
+ * Detects XML nodes
+ * @param {Element|Object} elem An element or a document
+ * @returns {Boolean} True iff elem is a non-HTML XML node
+ */
+isXML = Sizzle.isXML = function( elem ) {
+ // documentElement is verified for cases where it doesn't yet exist
+ // (such as loading iframes in IE - #4833)
+ var documentElement = elem && (elem.ownerDocument || elem).documentElement;
+ return documentElement ? documentElement.nodeName !== "HTML" : false;
+};
+
+/**
+ * Sets document-related variables once based on the current document
+ * @param {Element|Object} [doc] An element or document object to use to set the document
+ * @returns {Object} Returns the current document
+ */
+setDocument = Sizzle.setDocument = function( node ) {
+ var hasCompare, subWindow,
+ doc = node ? node.ownerDocument || node : preferredDoc;
+
+ // Return early if doc is invalid or already selected
+ if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {
+ return document;
+ }
+
+ // Update global variables
+ document = doc;
+ docElem = document.documentElement;
+ documentIsHTML = !isXML( document );
+
+ // Support: IE 9-11, Edge
+ // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936)
+ if ( preferredDoc !== document &&
+ (subWindow = document.defaultView) && subWindow.top !== subWindow ) {
+
+ // Support: IE 11, Edge
+ if ( subWindow.addEventListener ) {
+ subWindow.addEventListener( "unload", unloadHandler, false );
+
+ // Support: IE 9 - 10 only
+ } else if ( subWindow.attachEvent ) {
+ subWindow.attachEvent( "onunload", unloadHandler );
+ }
+ }
+
+ /* Attributes
+ ---------------------------------------------------------------------- */
+
+ // Support: IE<8
+ // Verify that getAttribute really returns attributes and not properties
+ // (excepting IE8 booleans)
+ support.attributes = assert(function( el ) {
+ el.className = "i";
+ return !el.getAttribute("className");
+ });
+
+ /* getElement(s)By*
+ ---------------------------------------------------------------------- */
+
+ // Check if getElementsByTagName("*") returns only elements
+ support.getElementsByTagName = assert(function( el ) {
+ el.appendChild( document.createComment("") );
+ return !el.getElementsByTagName("*").length;
+ });
+
+ // Support: IE<9
+ support.getElementsByClassName = rnative.test( document.getElementsByClassName );
+
+ // Support: IE<10
+ // Check if getElementById returns elements by name
+ // The broken getElementById methods don't pick up programmatically-set names,
+ // so use a roundabout getElementsByName test
+ support.getById = assert(function( el ) {
+ docElem.appendChild( el ).id = expando;
+ return !document.getElementsByName || !document.getElementsByName( expando ).length;
+ });
+
+ // ID find and filter
+ if ( support.getById ) {
+ Expr.find["ID"] = function( id, context ) {
+ if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
+ var m = context.getElementById( id );
+ return m ? [ m ] : [];
+ }
+ };
+ Expr.filter["ID"] = function( id ) {
+ var attrId = id.replace( runescape, funescape );
+ return function( elem ) {
+ return elem.getAttribute("id") === attrId;
+ };
+ };
+ } else {
+ // Support: IE6/7
+ // getElementById is not reliable as a find shortcut
+ delete Expr.find["ID"];
+
+ Expr.filter["ID"] = function( id ) {
+ var attrId = id.replace( runescape, funescape );
+ return function( elem ) {
+ var node = typeof elem.getAttributeNode !== "undefined" &&
+ elem.getAttributeNode("id");
+ return node && node.value === attrId;
+ };
+ };
+ }
+
+ // Tag
+ Expr.find["TAG"] = support.getElementsByTagName ?
+ function( tag, context ) {
+ if ( typeof context.getElementsByTagName !== "undefined" ) {
+ return context.getElementsByTagName( tag );
+
+ // DocumentFragment nodes don't have gEBTN
+ } else if ( support.qsa ) {
+ return context.querySelectorAll( tag );
+ }
+ } :
+
+ function( tag, context ) {
+ var elem,
+ tmp = [],
+ i = 0,
+ // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too
+ results = context.getElementsByTagName( tag );
+
+ // Filter out possible comments
+ if ( tag === "*" ) {
+ while ( (elem = results[i++]) ) {
+ if ( elem.nodeType === 1 ) {
+ tmp.push( elem );
+ }
+ }
+
+ return tmp;
+ }
+ return results;
+ };
+
+ // Class
+ Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) {
+ if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) {
+ return context.getElementsByClassName( className );
+ }
+ };
+
+ /* QSA/matchesSelector
+ ---------------------------------------------------------------------- */
+
+ // QSA and matchesSelector support
+
+ // matchesSelector(:active) reports false when true (IE9/Opera 11.5)
+ rbuggyMatches = [];
+
+ // qSa(:focus) reports false when true (Chrome 21)
+ // We allow this because of a bug in IE8/9 that throws an error
+ // whenever `document.activeElement` is accessed on an iframe
+ // So, we allow :focus to pass through QSA all the time to avoid the IE error
+ // See https://bugs.jquery.com/ticket/13378
+ rbuggyQSA = [];
+
+ if ( (support.qsa = rnative.test( document.querySelectorAll )) ) {
+ // Build QSA regex
+ // Regex strategy adopted from Diego Perini
+ assert(function( el ) {
+ // Select is set to empty string on purpose
+ // This is to test IE's treatment of not explicitly
+ // setting a boolean content attribute,
+ // since its presence should be enough
+ // https://bugs.jquery.com/ticket/12359
+ docElem.appendChild( el ).innerHTML = "<a id='" + expando + "'></a>" +
+ "<select id='" + expando + "-\r\\' msallowcapture=''>" +
+ "<option selected=''></option></select>";
+
+ // Support: IE8, Opera 11-12.16
+ // Nothing should be selected when empty strings follow ^= or $= or *=
+ // The test attribute must be unknown in Opera but "safe" for WinRT
+ // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section
+ if ( el.querySelectorAll("[msallowcapture^='']").length ) {
+ rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" );
+ }
+
+ // Support: IE8
+ // Boolean attributes and "value" are not treated correctly
+ if ( !el.querySelectorAll("[selected]").length ) {
+ rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" );
+ }
+
+ // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+
+ if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) {
+ rbuggyQSA.push("~=");
+ }
+
+ // Webkit/Opera - :checked should return selected option elements
+ // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+ // IE8 throws error here and will not see later tests
+ if ( !el.querySelectorAll(":checked").length ) {
+ rbuggyQSA.push(":checked");
+ }
+
+ // Support: Safari 8+, iOS 8+
+ // https://bugs.webkit.org/show_bug.cgi?id=136851
+ // In-page `selector#id sibling-combinator selector` fails
+ if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) {
+ rbuggyQSA.push(".#.+[+~]");
+ }
+ });
+
+ assert(function( el ) {
+ el.innerHTML = "<a href='' disabled='disabled'></a>" +
+ "<select disabled='disabled'><option/></select>";
+
+ // Support: Windows 8 Native Apps
+ // The type and name attributes are restricted during .innerHTML assignment
+ var input = document.createElement("input");
+ input.setAttribute( "type", "hidden" );
+ el.appendChild( input ).setAttribute( "name", "D" );
+
+ // Support: IE8
+ // Enforce case-sensitivity of name attribute
+ if ( el.querySelectorAll("[name=d]").length ) {
+ rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" );
+ }
+
+ // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
+ // IE8 throws error here and will not see later tests
+ if ( el.querySelectorAll(":enabled").length !== 2 ) {
+ rbuggyQSA.push( ":enabled", ":disabled" );
+ }
+
+ // Support: IE9-11+
+ // IE's :disabled selector does not pick up the children of disabled fieldsets
+ docElem.appendChild( el ).disabled = true;
+ if ( el.querySelectorAll(":disabled").length !== 2 ) {
+ rbuggyQSA.push( ":enabled", ":disabled" );
+ }
+
+ // Opera 10-11 does not throw on post-comma invalid pseudos
+ el.querySelectorAll("*,:x");
+ rbuggyQSA.push(",.*:");
+ });
+ }
+
+ if ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||
+ docElem.webkitMatchesSelector ||
+ docElem.mozMatchesSelector ||
+ docElem.oMatchesSelector ||
+ docElem.msMatchesSelector) )) ) {
+
+ assert(function( el ) {
+ // Check to see if it's possible to do matchesSelector
+ // on a disconnected node (IE 9)
+ support.disconnectedMatch = matches.call( el, "*" );
+
+ // This should fail with an exception
+ // Gecko does not error, returns false instead
+ matches.call( el, "[s!='']:x" );
+ rbuggyMatches.push( "!=", pseudos );
+ });
+ }
+
+ rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") );
+ rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") );
+
+ /* Contains
+ ---------------------------------------------------------------------- */
+ hasCompare = rnative.test( docElem.compareDocumentPosition );
+
+ // Element contains another
+ // Purposefully self-exclusive
+ // As in, an element does not contain itself
+ contains = hasCompare || rnative.test( docElem.contains ) ?
+ function( a, b ) {
+ var adown = a.nodeType === 9 ? a.documentElement : a,
+ bup = b && b.parentNode;
+ return a === bup || !!( bup && bup.nodeType === 1 && (
+ adown.contains ?
+ adown.contains( bup ) :
+ a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16
+ ));
+ } :
+ function( a, b ) {
+ if ( b ) {
+ while ( (b = b.parentNode) ) {
+ if ( b === a ) {
+ return true;
+ }
+ }
+ }
+ return false;
+ };
+
+ /* Sorting
+ ---------------------------------------------------------------------- */
+
+ // Document order sorting
+ sortOrder = hasCompare ?
+ function( a, b ) {
+
+ // Flag for duplicate removal
+ if ( a === b ) {
+ hasDuplicate = true;
+ return 0;
+ }
+
+ // Sort on method existence if only one input has compareDocumentPosition
+ var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
+ if ( compare ) {
+ return compare;
+ }
+
+ // Calculate position if both inputs belong to the same document
+ compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?
+ a.compareDocumentPosition( b ) :
+
+ // Otherwise we know they are disconnected
+ 1;
+
+ // Disconnected nodes
+ if ( compare & 1 ||
+ (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {
+
+ // Choose the first element that is related to our preferred document
+ if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {
+ return -1;
+ }
+ if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {
+ return 1;
+ }
+
+ // Maintain original order
+ return sortInput ?
+ ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+ 0;
+ }
+
+ return compare & 4 ? -1 : 1;
+ } :
+ function( a, b ) {
+ // Exit early if the nodes are identical
+ if ( a === b ) {
+ hasDuplicate = true;
+ return 0;
+ }
+
+ var cur,
+ i = 0,
+ aup = a.parentNode,
+ bup = b.parentNode,
+ ap = [ a ],
+ bp = [ b ];
+
+ // Parentless nodes are either documents or disconnected
+ if ( !aup || !bup ) {
+ return a === document ? -1 :
+ b === document ? 1 :
+ aup ? -1 :
+ bup ? 1 :
+ sortInput ?
+ ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+ 0;
+
+ // If the nodes are siblings, we can do a quick check
+ } else if ( aup === bup ) {
+ return siblingCheck( a, b );
+ }
+
+ // Otherwise we need full lists of their ancestors for comparison
+ cur = a;
+ while ( (cur = cur.parentNode) ) {
+ ap.unshift( cur );
+ }
+ cur = b;
+ while ( (cur = cur.parentNode) ) {
+ bp.unshift( cur );
+ }
+
+ // Walk down the tree looking for a discrepancy
+ while ( ap[i] === bp[i] ) {
+ i++;
+ }
+
+ return i ?
+ // Do a sibling check if the nodes have a common ancestor
+ siblingCheck( ap[i], bp[i] ) :
+
+ // Otherwise nodes in our document sort first
+ ap[i] === preferredDoc ? -1 :
+ bp[i] === preferredDoc ? 1 :
+ 0;
+ };
+
+ return document;
+};
+
+Sizzle.matches = function( expr, elements ) {
+ return Sizzle( expr, null, null, elements );
+};
+
+Sizzle.matchesSelector = function( elem, expr ) {
+ // Set document vars if needed
+ if ( ( elem.ownerDocument || elem ) !== document ) {
+ setDocument( elem );
+ }
+
+ // Make sure that attribute selectors are quoted
+ expr = expr.replace( rattributeQuotes, "='$1']" );
+
+ if ( support.matchesSelector && documentIsHTML &&
+ !compilerCache[ expr + " " ] &&
+ ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&
+ ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) {
+
+ try {
+ var ret = matches.call( elem, expr );
+
+ // IE 9's matchesSelector returns false on disconnected nodes
+ if ( ret || support.disconnectedMatch ||
+ // As well, disconnected nodes are said to be in a document
+ // fragment in IE 9
+ elem.document && elem.document.nodeType !== 11 ) {
+ return ret;
+ }
+ } catch (e) {}
+ }
+
+ return Sizzle( expr, document, null, [ elem ] ).length > 0;
+};
+
+Sizzle.contains = function( context, elem ) {
+ // Set document vars if needed
+ if ( ( context.ownerDocument || context ) !== document ) {
+ setDocument( context );
+ }
+ return contains( context, elem );
+};
+
+Sizzle.attr = function( elem, name ) {
+ // Set document vars if needed
+ if ( ( elem.ownerDocument || elem ) !== document ) {
+ setDocument( elem );
+ }
+
+ var fn = Expr.attrHandle[ name.toLowerCase() ],
+ // Don't get fooled by Object.prototype properties (jQuery #13807)
+ val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?
+ fn( elem, name, !documentIsHTML ) :
+ undefined;
+
+ return val !== undefined ?
+ val :
+ support.attributes || !documentIsHTML ?
+ elem.getAttribute( name ) :
+ (val = elem.getAttributeNode(name)) && val.specified ?
+ val.value :
+ null;
+};
+
+Sizzle.escape = function( sel ) {
+ return (sel + "").replace( rcssescape, fcssescape );
+};
+
+Sizzle.error = function( msg ) {
+ throw new Error( "Syntax error, unrecognized expression: " + msg );
+};
+
+/**
+ * Document sorting and removing duplicates
+ * @param {ArrayLike} results
+ */
+Sizzle.uniqueSort = function( results ) {
+ var elem,
+ duplicates = [],
+ j = 0,
+ i = 0;
+
+ // Unless we *know* we can detect duplicates, assume their presence
+ hasDuplicate = !support.detectDuplicates;
+ sortInput = !support.sortStable && results.slice( 0 );
+ results.sort( sortOrder );
+
+ if ( hasDuplicate ) {
+ while ( (elem = results[i++]) ) {
+ if ( elem === results[ i ] ) {
+ j = duplicates.push( i );
+ }
+ }
+ while ( j-- ) {
+ results.splice( duplicates[ j ], 1 );
+ }
+ }
+
+ // Clear input after sorting to release objects
+ // See https://github.com/jquery/sizzle/pull/225
+ sortInput = null;
+
+ return results;
+};
+
+/**
+ * Utility function for retrieving the text value of an array of DOM nodes
+ * @param {Array|Element} elem
+ */
+getText = Sizzle.getText = function( elem ) {
+ var node,
+ ret = "",
+ i = 0,
+ nodeType = elem.nodeType;
+
+ if ( !nodeType ) {
+ // If no nodeType, this is expected to be an array
+ while ( (node = elem[i++]) ) {
+ // Do not traverse comment nodes
+ ret += getText( node );
+ }
+ } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
+ // Use textContent for elements
+ // innerText usage removed for consistency of new lines (jQuery #11153)
+ if ( typeof elem.textContent === "string" ) {
+ return elem.textContent;
+ } else {
+ // Traverse its children
+ for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+ ret += getText( elem );
+ }
+ }
+ } else if ( nodeType === 3 || nodeType === 4 ) {
+ return elem.nodeValue;
+ }
+ // Do not include comment or processing instruction nodes
+
+ return ret;
+};
+
+Expr = Sizzle.selectors = {
+
+ // Can be adjusted by the user
+ cacheLength: 50,
+
+ createPseudo: markFunction,
+
+ match: matchExpr,
+
+ attrHandle: {},
+
+ find: {},
+
+ relative: {
+ ">": { dir: "parentNode", first: true },
+ " ": { dir: "parentNode" },
+ "+": { dir: "previousSibling", first: true },
+ "~": { dir: "previousSibling" }
+ },
+
+ preFilter: {
+ "ATTR": function( match ) {
+ match[1] = match[1].replace( runescape, funescape );
+
+ // Move the given value to match[3] whether quoted or unquoted
+ match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape );
+
+ if ( match[2] === "~=" ) {
+ match[3] = " " + match[3] + " ";
+ }
+
+ return match.slice( 0, 4 );
+ },
+
+ "CHILD": function( match ) {
+ /* matches from matchExpr["CHILD"]
+ 1 type (only|nth|...)
+ 2 what (child|of-type)
+ 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
+ 4 xn-component of xn+y argument ([+-]?\d*n|)
+ 5 sign of xn-component
+ 6 x of xn-component
+ 7 sign of y-component
+ 8 y of y-component
+ */
+ match[1] = match[1].toLowerCase();
+
+ if ( match[1].slice( 0, 3 ) === "nth" ) {
+ // nth-* requires argument
+ if ( !match[3] ) {
+ Sizzle.error( match[0] );
+ }
+
+ // numeric x and y parameters for Expr.filter.CHILD
+ // remember that false/true cast respectively to 0/1
+ match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) );
+ match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" );
+
+ // other types prohibit arguments
+ } else if ( match[3] ) {
+ Sizzle.error( match[0] );
+ }
+
+ return match;
+ },
+
+ "PSEUDO": function( match ) {
+ var excess,
+ unquoted = !match[6] && match[2];
+
+ if ( matchExpr["CHILD"].test( match[0] ) ) {
+ return null;
+ }
+
+ // Accept quoted arguments as-is
+ if ( match[3] ) {
+ match[2] = match[4] || match[5] || "";
+
+ // Strip excess characters from unquoted arguments
+ } else if ( unquoted && rpseudo.test( unquoted ) &&
+ // Get excess from tokenize (recursively)
+ (excess = tokenize( unquoted, true )) &&
+ // advance to the next closing parenthesis
+ (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
+
+ // excess is a negative index
+ match[0] = match[0].slice( 0, excess );
+ match[2] = unquoted.slice( 0, excess );
+ }
+
+ // Return only captures needed by the pseudo filter method (type and argument)
+ return match.slice( 0, 3 );
+ }
+ },
+
+ filter: {
+
+ "TAG": function( nodeNameSelector ) {
+ var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();
+ return nodeNameSelector === "*" ?
+ function() { return true; } :
+ function( elem ) {
+ return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
+ };
+ },
+
+ "CLASS": function( className ) {
+ var pattern = classCache[ className + " " ];
+
+ return pattern ||
+ (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
+ classCache( className, function( elem ) {
+ return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" );
+ });
+ },
+
+ "ATTR": function( name, operator, check ) {
+ return function( elem ) {
+ var result = Sizzle.attr( elem, name );
+
+ if ( result == null ) {
+ return operator === "!=";
+ }
+ if ( !operator ) {
+ return true;
+ }
+
+ result += "";
+
+ return operator === "=" ? result === check :
+ operator === "!=" ? result !== check :
+ operator === "^=" ? check && result.indexOf( check ) === 0 :
+ operator === "*=" ? check && result.indexOf( check ) > -1 :
+ operator === "$=" ? check && result.slice( -check.length ) === check :
+ operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 :
+ operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" :
+ false;
+ };
+ },
+
+ "CHILD": function( type, what, argument, first, last ) {
+ var simple = type.slice( 0, 3 ) !== "nth",
+ forward = type.slice( -4 ) !== "last",
+ ofType = what === "of-type";
+
+ return first === 1 && last === 0 ?
+
+ // Shortcut for :nth-*(n)
+ function( elem ) {
+ return !!elem.parentNode;
+ } :
+
+ function( elem, context, xml ) {
+ var cache, uniqueCache, outerCache, node, nodeIndex, start,
+ dir = simple !== forward ? "nextSibling" : "previousSibling",
+ parent = elem.parentNode,
+ name = ofType && elem.nodeName.toLowerCase(),
+ useCache = !xml && !ofType,
+ diff = false;
+
+ if ( parent ) {
+
+ // :(first|last|only)-(child|of-type)
+ if ( simple ) {
+ while ( dir ) {
+ node = elem;
+ while ( (node = node[ dir ]) ) {
+ if ( ofType ?
+ node.nodeName.toLowerCase() === name :
+ node.nodeType === 1 ) {
+
+ return false;
+ }
+ }
+ // Reverse direction for :only-* (if we haven't yet done so)
+ start = dir = type === "only" && !start && "nextSibling";
+ }
+ return true;
+ }
+
+ start = [ forward ? parent.firstChild : parent.lastChild ];
+
+ // non-xml :nth-child(...) stores cache data on `parent`
+ if ( forward && useCache ) {
+
+ // Seek `elem` from a previously-cached index
+
+ // ...in a gzip-friendly way
+ node = parent;
+ outerCache = node[ expando ] || (node[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ node.uniqueID ] ||
+ (outerCache[ node.uniqueID ] = {});
+
+ cache = uniqueCache[ type ] || [];
+ nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
+ diff = nodeIndex && cache[ 2 ];
+ node = nodeIndex && parent.childNodes[ nodeIndex ];
+
+ while ( (node = ++nodeIndex && node && node[ dir ] ||
+
+ // Fallback to seeking `elem` from the start
+ (diff = nodeIndex = 0) || start.pop()) ) {
+
+ // When found, cache indexes on `parent` and break
+ if ( node.nodeType === 1 && ++diff && node === elem ) {
+ uniqueCache[ type ] = [ dirruns, nodeIndex, diff ];
+ break;
+ }
+ }
+
+ } else {
+ // Use previously-cached element index if available
+ if ( useCache ) {
+ // ...in a gzip-friendly way
+ node = elem;
+ outerCache = node[ expando ] || (node[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ node.uniqueID ] ||
+ (outerCache[ node.uniqueID ] = {});
+
+ cache = uniqueCache[ type ] || [];
+ nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
+ diff = nodeIndex;
+ }
+
+ // xml :nth-child(...)
+ // or :nth-last-child(...) or :nth(-last)?-of-type(...)
+ if ( diff === false ) {
+ // Use the same loop as above to seek `elem` from the start
+ while ( (node = ++nodeIndex && node && node[ dir ] ||
+ (diff = nodeIndex = 0) || start.pop()) ) {
+
+ if ( ( ofType ?
+ node.nodeName.toLowerCase() === name :
+ node.nodeType === 1 ) &&
+ ++diff ) {
+
+ // Cache the index of each encountered element
+ if ( useCache ) {
+ outerCache = node[ expando ] || (node[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ node.uniqueID ] ||
+ (outerCache[ node.uniqueID ] = {});
+
+ uniqueCache[ type ] = [ dirruns, diff ];
+ }
+
+ if ( node === elem ) {
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ // Incorporate the offset, then check against cycle size
+ diff -= last;
+ return diff === first || ( diff % first === 0 && diff / first >= 0 );
+ }
+ };
+ },
+
+ "PSEUDO": function( pseudo, argument ) {
+ // pseudo-class names are case-insensitive
+ // http://www.w3.org/TR/selectors/#pseudo-classes
+ // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
+ // Remember that setFilters inherits from pseudos
+ var args,
+ fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
+ Sizzle.error( "unsupported pseudo: " + pseudo );
+
+ // The user may use createPseudo to indicate that
+ // arguments are needed to create the filter function
+ // just as Sizzle does
+ if ( fn[ expando ] ) {
+ return fn( argument );
+ }
+
+ // But maintain support for old signatures
+ if ( fn.length > 1 ) {
+ args = [ pseudo, pseudo, "", argument ];
+ return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
+ markFunction(function( seed, matches ) {
+ var idx,
+ matched = fn( seed, argument ),
+ i = matched.length;
+ while ( i-- ) {
+ idx = indexOf( seed, matched[i] );
+ seed[ idx ] = !( matches[ idx ] = matched[i] );
+ }
+ }) :
+ function( elem ) {
+ return fn( elem, 0, args );
+ };
+ }
+
+ return fn;
+ }
+ },
+
+ pseudos: {
+ // Potentially complex pseudos
+ "not": markFunction(function( selector ) {
+ // Trim the selector passed to compile
+ // to avoid treating leading and trailing
+ // spaces as combinators
+ var input = [],
+ results = [],
+ matcher = compile( selector.replace( rtrim, "$1" ) );
+
+ return matcher[ expando ] ?
+ markFunction(function( seed, matches, context, xml ) {
+ var elem,
+ unmatched = matcher( seed, null, xml, [] ),
+ i = seed.length;
+
+ // Match elements unmatched by `matcher`
+ while ( i-- ) {
+ if ( (elem = unmatched[i]) ) {
+ seed[i] = !(matches[i] = elem);
+ }
+ }
+ }) :
+ function( elem, context, xml ) {
+ input[0] = elem;
+ matcher( input, null, xml, results );
+ // Don't keep the element (issue #299)
+ input[0] = null;
+ return !results.pop();
+ };
+ }),
+
+ "has": markFunction(function( selector ) {
+ return function( elem ) {
+ return Sizzle( selector, elem ).length > 0;
+ };
+ }),
+
+ "contains": markFunction(function( text ) {
+ text = text.replace( runescape, funescape );
+ return function( elem ) {
+ return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;
+ };
+ }),
+
+ // "Whether an element is represented by a :lang() selector
+ // is based solely on the element's language value
+ // being equal to the identifier C,
+ // or beginning with the identifier C immediately followed by "-".
+ // The matching of C against the element's language value is performed case-insensitively.
+ // The identifier C does not have to be a valid language name."
+ // http://www.w3.org/TR/selectors/#lang-pseudo
+ "lang": markFunction( function( lang ) {
+ // lang value must be a valid identifier
+ if ( !ridentifier.test(lang || "") ) {
+ Sizzle.error( "unsupported lang: " + lang );
+ }
+ lang = lang.replace( runescape, funescape ).toLowerCase();
+ return function( elem ) {
+ var elemLang;
+ do {
+ if ( (elemLang = documentIsHTML ?
+ elem.lang :
+ elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) {
+
+ elemLang = elemLang.toLowerCase();
+ return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0;
+ }
+ } while ( (elem = elem.parentNode) && elem.nodeType === 1 );
+ return false;
+ };
+ }),
+
+ // Miscellaneous
+ "target": function( elem ) {
+ var hash = window.location && window.location.hash;
+ return hash && hash.slice( 1 ) === elem.id;
+ },
+
+ "root": function( elem ) {
+ return elem === docElem;
+ },
+
+ "focus": function( elem ) {
+ return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
+ },
+
+ // Boolean properties
+ "enabled": createDisabledPseudo( false ),
+ "disabled": createDisabledPseudo( true ),
+
+ "checked": function( elem ) {
+ // In CSS3, :checked should return both checked and selected elements
+ // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+ var nodeName = elem.nodeName.toLowerCase();
+ return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
+ },
+
+ "selected": function( elem ) {
+ // Accessing this property makes selected-by-default
+ // options in Safari work properly
+ if ( elem.parentNode ) {
+ elem.parentNode.selectedIndex;
+ }
+
+ return elem.selected === true;
+ },
+
+ // Contents
+ "empty": function( elem ) {
+ // http://www.w3.org/TR/selectors/#empty-pseudo
+ // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),
+ // but not by others (comment: 8; processing instruction: 7; etc.)
+ // nodeType < 6 works because attributes (2) do not appear as children
+ for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+ if ( elem.nodeType < 6 ) {
+ return false;
+ }
+ }
+ return true;
+ },
+
+ "parent": function( elem ) {
+ return !Expr.pseudos["empty"]( elem );
+ },
+
+ // Element/input types
+ "header": function( elem ) {
+ return rheader.test( elem.nodeName );
+ },
+
+ "input": function( elem ) {
+ return rinputs.test( elem.nodeName );
+ },
+
+ "button": function( elem ) {
+ var name = elem.nodeName.toLowerCase();
+ return name === "input" && elem.type === "button" || name === "button";
+ },
+
+ "text": function( elem ) {
+ var attr;
+ return elem.nodeName.toLowerCase() === "input" &&
+ elem.type === "text" &&
+
+ // Support: IE<8
+ // New HTML5 attribute values (e.g., "search") appear with elem.type === "text"
+ ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" );
+ },
+
+ // Position-in-collection
+ "first": createPositionalPseudo(function() {
+ return [ 0 ];
+ }),
+
+ "last": createPositionalPseudo(function( matchIndexes, length ) {
+ return [ length - 1 ];
+ }),
+
+ "eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
+ return [ argument < 0 ? argument + length : argument ];
+ }),
+
+ "even": createPositionalPseudo(function( matchIndexes, length ) {
+ var i = 0;
+ for ( ; i < length; i += 2 ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ }),
+
+ "odd": createPositionalPseudo(function( matchIndexes, length ) {
+ var i = 1;
+ for ( ; i < length; i += 2 ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ }),
+
+ "lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+ var i = argument < 0 ? argument + length : argument;
+ for ( ; --i >= 0; ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ }),
+
+ "gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+ var i = argument < 0 ? argument + length : argument;
+ for ( ; ++i < length; ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ })
+ }
+};
+
+Expr.pseudos["nth"] = Expr.pseudos["eq"];
+
+// Add button/input type pseudos
+for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {
+ Expr.pseudos[ i ] = createInputPseudo( i );
+}
+for ( i in { submit: true, reset: true } ) {
+ Expr.pseudos[ i ] = createButtonPseudo( i );
+}
+
+// Easy API for creating new setFilters
+function setFilters() {}
+setFilters.prototype = Expr.filters = Expr.pseudos;
+Expr.setFilters = new setFilters();
+
+tokenize = Sizzle.tokenize = function( selector, parseOnly ) {
+ var matched, match, tokens, type,
+ soFar, groups, preFilters,
+ cached = tokenCache[ selector + " " ];
+
+ if ( cached ) {
+ return parseOnly ? 0 : cached.slice( 0 );
+ }
+
+ soFar = selector;
+ groups = [];
+ preFilters = Expr.preFilter;
+
+ while ( soFar ) {
+
+ // Comma and first run
+ if ( !matched || (match = rcomma.exec( soFar )) ) {
+ if ( match ) {
+ // Don't consume trailing commas as valid
+ soFar = soFar.slice( match[0].length ) || soFar;
+ }
+ groups.push( (tokens = []) );
+ }
+
+ matched = false;
+
+ // Combinators
+ if ( (match = rcombinators.exec( soFar )) ) {
+ matched = match.shift();
+ tokens.push({
+ value: matched,
+ // Cast descendant combinators to space
+ type: match[0].replace( rtrim, " " )
+ });
+ soFar = soFar.slice( matched.length );
+ }
+
+ // Filters
+ for ( type in Expr.filter ) {
+ if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
+ (match = preFilters[ type ]( match ))) ) {
+ matched = match.shift();
+ tokens.push({
+ value: matched,
+ type: type,
+ matches: match
+ });
+ soFar = soFar.slice( matched.length );
+ }
+ }
+
+ if ( !matched ) {
+ break;
+ }
+ }
+
+ // Return the length of the invalid excess
+ // if we're just parsing
+ // Otherwise, throw an error or return tokens
+ return parseOnly ?
+ soFar.length :
+ soFar ?
+ Sizzle.error( selector ) :
+ // Cache the tokens
+ tokenCache( selector, groups ).slice( 0 );
+};
+
+function toSelector( tokens ) {
+ var i = 0,
+ len = tokens.length,
+ selector = "";
+ for ( ; i < len; i++ ) {
+ selector += tokens[i].value;
+ }
+ return selector;
+}
+
+function addCombinator( matcher, combinator, base ) {
+ var dir = combinator.dir,
+ skip = combinator.next,
+ key = skip || dir,
+ checkNonElements = base && key === "parentNode",
+ doneName = done++;
+
+ return combinator.first ?
+ // Check against closest ancestor/preceding element
+ function( elem, context, xml ) {
+ while ( (elem = elem[ dir ]) ) {
+ if ( elem.nodeType === 1 || checkNonElements ) {
+ return matcher( elem, context, xml );
+ }
+ }
+ } :
+
+ // Check against all ancestor/preceding elements
+ function( elem, context, xml ) {
+ var oldCache, uniqueCache, outerCache,
+ newCache = [ dirruns, doneName ];
+
+ // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching
+ if ( xml ) {
+ while ( (elem = elem[ dir ]) ) {
+ if ( elem.nodeType === 1 || checkNonElements ) {
+ if ( matcher( elem, context, xml ) ) {
+ return true;
+ }
+ }
+ }
+ } else {
+ while ( (elem = elem[ dir ]) ) {
+ if ( elem.nodeType === 1 || checkNonElements ) {
+ outerCache = elem[ expando ] || (elem[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {});
+
+ if ( skip && skip === elem.nodeName.toLowerCase() ) {
+ elem = elem[ dir ] || elem;
+ } else if ( (oldCache = uniqueCache[ key ]) &&
+ oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {
+
+ // Assign to newCache so results back-propagate to previous elements
+ return (newCache[ 2 ] = oldCache[ 2 ]);
+ } else {
+ // Reuse newcache so results back-propagate to previous elements
+ uniqueCache[ key ] = newCache;
+
+ // A match means we're done; a fail means we have to keep checking
+ if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {
+ return true;
+ }
+ }
+ }
+ }
+ }
+ };
+}
+
+function elementMatcher( matchers ) {
+ return matchers.length > 1 ?
+ function( elem, context, xml ) {
+ var i = matchers.length;
+ while ( i-- ) {
+ if ( !matchers[i]( elem, context, xml ) ) {
+ return false;
+ }
+ }
+ return true;
+ } :
+ matchers[0];
+}
+
+function multipleContexts( selector, contexts, results ) {
+ var i = 0,
+ len = contexts.length;
+ for ( ; i < len; i++ ) {
+ Sizzle( selector, contexts[i], results );
+ }
+ return results;
+}
+
+function condense( unmatched, map, filter, context, xml ) {
+ var elem,
+ newUnmatched = [],
+ i = 0,
+ len = unmatched.length,
+ mapped = map != null;
+
+ for ( ; i < len; i++ ) {
+ if ( (elem = unmatched[i]) ) {
+ if ( !filter || filter( elem, context, xml ) ) {
+ newUnmatched.push( elem );
+ if ( mapped ) {
+ map.push( i );
+ }
+ }
+ }
+ }
+
+ return newUnmatched;
+}
+
+function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
+ if ( postFilter && !postFilter[ expando ] ) {
+ postFilter = setMatcher( postFilter );
+ }
+ if ( postFinder && !postFinder[ expando ] ) {
+ postFinder = setMatcher( postFinder, postSelector );
+ }
+ return markFunction(function( seed, results, context, xml ) {
+ var temp, i, elem,
+ preMap = [],
+ postMap = [],
+ preexisting = results.length,
+
+ // Get initial elements from seed or context
+ elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
+
+ // Prefilter to get matcher input, preserving a map for seed-results synchronization
+ matcherIn = preFilter && ( seed || !selector ) ?
+ condense( elems, preMap, preFilter, context, xml ) :
+ elems,
+
+ matcherOut = matcher ?
+ // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
+ postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
+
+ // ...intermediate processing is necessary
+ [] :
+
+ // ...otherwise use results directly
+ results :
+ matcherIn;
+
+ // Find primary matches
+ if ( matcher ) {
+ matcher( matcherIn, matcherOut, context, xml );
+ }
+
+ // Apply postFilter
+ if ( postFilter ) {
+ temp = condense( matcherOut, postMap );
+ postFilter( temp, [], context, xml );
+
+ // Un-match failing elements by moving them back to matcherIn
+ i = temp.length;
+ while ( i-- ) {
+ if ( (elem = temp[i]) ) {
+ matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
+ }
+ }
+ }
+
+ if ( seed ) {
+ if ( postFinder || preFilter ) {
+ if ( postFinder ) {
+ // Get the final matcherOut by condensing this intermediate into postFinder contexts
+ temp = [];
+ i = matcherOut.length;
+ while ( i-- ) {
+ if ( (elem = matcherOut[i]) ) {
+ // Restore matcherIn since elem is not yet a final match
+ temp.push( (matcherIn[i] = elem) );
+ }
+ }
+ postFinder( null, (matcherOut = []), temp, xml );
+ }
+
+ // Move matched elements from seed to results to keep them synchronized
+ i = matcherOut.length;
+ while ( i-- ) {
+ if ( (elem = matcherOut[i]) &&
+ (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {
+
+ seed[temp] = !(results[temp] = elem);
+ }
+ }
+ }
+
+ // Add elements to results, through postFinder if defined
+ } else {
+ matcherOut = condense(
+ matcherOut === results ?
+ matcherOut.splice( preexisting, matcherOut.length ) :
+ matcherOut
+ );
+ if ( postFinder ) {
+ postFinder( null, results, matcherOut, xml );
+ } else {
+ push.apply( results, matcherOut );
+ }
+ }
+ });
+}
+
+function matcherFromTokens( tokens ) {
+ var checkContext, matcher, j,
+ len = tokens.length,
+ leadingRelative = Expr.relative[ tokens[0].type ],
+ implicitRelative = leadingRelative || Expr.relative[" "],
+ i = leadingRelative ? 1 : 0,
+
+ // The foundational matcher ensures that elements are reachable from top-level context(s)
+ matchContext = addCombinator( function( elem ) {
+ return elem === checkContext;
+ }, implicitRelative, true ),
+ matchAnyContext = addCombinator( function( elem ) {
+ return indexOf( checkContext, elem ) > -1;
+ }, implicitRelative, true ),
+ matchers = [ function( elem, context, xml ) {
+ var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
+ (checkContext = context).nodeType ?
+ matchContext( elem, context, xml ) :
+ matchAnyContext( elem, context, xml ) );
+ // Avoid hanging onto element (issue #299)
+ checkContext = null;
+ return ret;
+ } ];
+
+ for ( ; i < len; i++ ) {
+ if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
+ matchers = [ addCombinator(elementMatcher( matchers ), matcher) ];
+ } else {
+ matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
+
+ // Return special upon seeing a positional matcher
+ if ( matcher[ expando ] ) {
+ // Find the next relative operator (if any) for proper handling
+ j = ++i;
+ for ( ; j < len; j++ ) {
+ if ( Expr.relative[ tokens[j].type ] ) {
+ break;
+ }
+ }
+ return setMatcher(
+ i > 1 && elementMatcher( matchers ),
+ i > 1 && toSelector(
+ // If the preceding token was a descendant combinator, insert an implicit any-element `*`
+ tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" })
+ ).replace( rtrim, "$1" ),
+ matcher,
+ i < j && matcherFromTokens( tokens.slice( i, j ) ),
+ j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
+ j < len && toSelector( tokens )
+ );
+ }
+ matchers.push( matcher );
+ }
+ }
+
+ return elementMatcher( matchers );
+}
+
+function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
+ var bySet = setMatchers.length > 0,
+ byElement = elementMatchers.length > 0,
+ superMatcher = function( seed, context, xml, results, outermost ) {
+ var elem, j, matcher,
+ matchedCount = 0,
+ i = "0",
+ unmatched = seed && [],
+ setMatched = [],
+ contextBackup = outermostContext,
+ // We must always have either seed elements or outermost context
+ elems = seed || byElement && Expr.find["TAG"]( "*", outermost ),
+ // Use integer dirruns iff this is the outermost matcher
+ dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),
+ len = elems.length;
+
+ if ( outermost ) {
+ outermostContext = context === document || context || outermost;
+ }
+
+ // Add elements passing elementMatchers directly to results
+ // Support: IE<9, Safari
+ // Tolerate NodeList properties (IE: "length"; Safari: <number>) matching elements by id
+ for ( ; i !== len && (elem = elems[i]) != null; i++ ) {
+ if ( byElement && elem ) {
+ j = 0;
+ if ( !context && elem.ownerDocument !== document ) {
+ setDocument( elem );
+ xml = !documentIsHTML;
+ }
+ while ( (matcher = elementMatchers[j++]) ) {
+ if ( matcher( elem, context || document, xml) ) {
+ results.push( elem );
+ break;
+ }
+ }
+ if ( outermost ) {
+ dirruns = dirrunsUnique;
+ }
+ }
+
+ // Track unmatched elements for set filters
+ if ( bySet ) {
+ // They will have gone through all possible matchers
+ if ( (elem = !matcher && elem) ) {
+ matchedCount--;
+ }
+
+ // Lengthen the array for every element, matched or not
+ if ( seed ) {
+ unmatched.push( elem );
+ }
+ }
+ }
+
+ // `i` is now the count of elements visited above, and adding it to `matchedCount`
+ // makes the latter nonnegative.
+ matchedCount += i;
+
+ // Apply set filters to unmatched elements
+ // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`
+ // equals `i`), unless we didn't visit _any_ elements in the above loop because we have
+ // no element matchers and no seed.
+ // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that
+ // case, which will result in a "00" `matchedCount` that differs from `i` but is also
+ // numerically zero.
+ if ( bySet && i !== matchedCount ) {
+ j = 0;
+ while ( (matcher = setMatchers[j++]) ) {
+ matcher( unmatched, setMatched, context, xml );
+ }
+
+ if ( seed ) {
+ // Reintegrate element matches to eliminate the need for sorting
+ if ( matchedCount > 0 ) {
+ while ( i-- ) {
+ if ( !(unmatched[i] || setMatched[i]) ) {
+ setMatched[i] = pop.call( results );
+ }
+ }
+ }
+
+ // Discard index placeholder values to get only actual matches
+ setMatched = condense( setMatched );
+ }
+
+ // Add matches to results
+ push.apply( results, setMatched );
+
+ // Seedless set matches succeeding multiple successful matchers stipulate sorting
+ if ( outermost && !seed && setMatched.length > 0 &&
+ ( matchedCount + setMatchers.length ) > 1 ) {
+
+ Sizzle.uniqueSort( results );
+ }
+ }
+
+ // Override manipulation of globals by nested matchers
+ if ( outermost ) {
+ dirruns = dirrunsUnique;
+ outermostContext = contextBackup;
+ }
+
+ return unmatched;
+ };
+
+ return bySet ?
+ markFunction( superMatcher ) :
+ superMatcher;
+}
+
+compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {
+ var i,
+ setMatchers = [],
+ elementMatchers = [],
+ cached = compilerCache[ selector + " " ];
+
+ if ( !cached ) {
+ // Generate a function of recursive functions that can be used to check each element
+ if ( !match ) {
+ match = tokenize( selector );
+ }
+ i = match.length;
+ while ( i-- ) {
+ cached = matcherFromTokens( match[i] );
+ if ( cached[ expando ] ) {
+ setMatchers.push( cached );
+ } else {
+ elementMatchers.push( cached );
+ }
+ }
+
+ // Cache the compiled function
+ cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
+
+ // Save selector and tokenization
+ cached.selector = selector;
+ }
+ return cached;
+};
+
+/**
+ * A low-level selection function that works with Sizzle's compiled
+ * selector functions
+ * @param {String|Function} selector A selector or a pre-compiled
+ * selector function built with Sizzle.compile
+ * @param {Element} context
+ * @param {Array} [results]
+ * @param {Array} [seed] A set of elements to match against
+ */
+select = Sizzle.select = function( selector, context, results, seed ) {
+ var i, tokens, token, type, find,
+ compiled = typeof selector === "function" && selector,
+ match = !seed && tokenize( (selector = compiled.selector || selector) );
+
+ results = results || [];
+
+ // Try to minimize operations if there is only one selector in the list and no seed
+ // (the latter of which guarantees us context)
+ if ( match.length === 1 ) {
+
+ // Reduce context if the leading compound selector is an ID
+ tokens = match[0] = match[0].slice( 0 );
+ if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
+ support.getById && context.nodeType === 9 && documentIsHTML &&
+ Expr.relative[ tokens[1].type ] ) {
+
+ context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];
+ if ( !context ) {
+ return results;
+
+ // Precompiled matchers will still verify ancestry, so step up a level
+ } else if ( compiled ) {
+ context = context.parentNode;
+ }
+
+ selector = selector.slice( tokens.shift().value.length );
+ }
+
+ // Fetch a seed set for right-to-left matching
+ i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
+ while ( i-- ) {
+ token = tokens[i];
+
+ // Abort if we hit a combinator
+ if ( Expr.relative[ (type = token.type) ] ) {
+ break;
+ }
+ if ( (find = Expr.find[ type ]) ) {
+ // Search, expanding context for leading sibling combinators
+ if ( (seed = find(
+ token.matches[0].replace( runescape, funescape ),
+ rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
+ )) ) {
+
+ // If seed is empty or no tokens remain, we can return early
+ tokens.splice( i, 1 );
+ selector = seed.length && toSelector( tokens );
+ if ( !selector ) {
+ push.apply( results, seed );
+ return results;
+ }
+
+ break;
+ }
+ }
+ }
+ }
+
+ // Compile and execute a filtering function if one is not provided
+ // Provide `match` to avoid retokenization if we modified the selector above
+ ( compiled || compile( selector, match ) )(
+ seed,
+ context,
+ !documentIsHTML,
+ results,
+ !context || rsibling.test( selector ) && testContext( context.parentNode ) || context
+ );
+ return results;
+};
+
+// One-time assignments
+
+// Sort stability
+support.sortStable = expando.split("").sort( sortOrder ).join("") === expando;
+
+// Support: Chrome 14-35+
+// Always assume duplicates if they aren't passed to the comparison function
+support.detectDuplicates = !!hasDuplicate;
+
+// Initialize against the default document
+setDocument();
+
+// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)
+// Detached nodes confoundingly follow *each other*
+support.sortDetached = assert(function( el ) {
+ // Should return 1, but returns 4 (following)
+ return el.compareDocumentPosition( document.createElement("fieldset") ) & 1;
+});
+
+// Support: IE<8
+// Prevent attribute/property "interpolation"
+// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx
+if ( !assert(function( el ) {
+ el.innerHTML = "<a href='#'></a>";
+ return el.firstChild.getAttribute("href") === "#" ;
+}) ) {
+ addHandle( "type|href|height|width", function( elem, name, isXML ) {
+ if ( !isXML ) {
+ return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 );
+ }
+ });
+}
+
+// Support: IE<9
+// Use defaultValue in place of getAttribute("value")
+if ( !support.attributes || !assert(function( el ) {
+ el.innerHTML = "<input/>";
+ el.firstChild.setAttribute( "value", "" );
+ return el.firstChild.getAttribute( "value" ) === "";
+}) ) {
+ addHandle( "value", function( elem, name, isXML ) {
+ if ( !isXML && elem.nodeName.toLowerCase() === "input" ) {
+ return elem.defaultValue;
+ }
+ });
+}
+
+// Support: IE<9
+// Use getAttributeNode to fetch booleans when getAttribute lies
+if ( !assert(function( el ) {
+ return el.getAttribute("disabled") == null;
+}) ) {
+ addHandle( booleans, function( elem, name, isXML ) {
+ var val;
+ if ( !isXML ) {
+ return elem[ name ] === true ? name.toLowerCase() :
+ (val = elem.getAttributeNode( name )) && val.specified ?
+ val.value :
+ null;
+ }
+ });
+}
+
+return Sizzle;
+
+})( window );
+
+
+
+jQuery.find = Sizzle;
+jQuery.expr = Sizzle.selectors;
+
+// Deprecated
+jQuery.expr[ ":" ] = jQuery.expr.pseudos;
+jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;
+jQuery.text = Sizzle.getText;
+jQuery.isXMLDoc = Sizzle.isXML;
+jQuery.contains = Sizzle.contains;
+jQuery.escapeSelector = Sizzle.escape;
+
+
+
+
+var dir = function( elem, dir, until ) {
+ var matched = [],
+ truncate = until !== undefined;
+
+ while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {
+ if ( elem.nodeType === 1 ) {
+ if ( truncate && jQuery( elem ).is( until ) ) {
+ break;
+ }
+ matched.push( elem );
+ }
+ }
+ return matched;
+};
+
+
+var siblings = function( n, elem ) {
+ var matched = [];
+
+ for ( ; n; n = n.nextSibling ) {
+ if ( n.nodeType === 1 && n !== elem ) {
+ matched.push( n );
+ }
+ }
+
+ return matched;
+};
+
+
+var rneedsContext = jQuery.expr.match.needsContext;
+
+var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i );
+
+
+
+var risSimple = /^.[^:#\[\.,]*$/;
+
+// Implement the identical functionality for filter and not
+function winnow( elements, qualifier, not ) {
+ if ( jQuery.isFunction( qualifier ) ) {
+ return jQuery.grep( elements, function( elem, i ) {
+ return !!qualifier.call( elem, i, elem ) !== not;
+ } );
+
+ }
+
+ if ( qualifier.nodeType ) {
+ return jQuery.grep( elements, function( elem ) {
+ return ( elem === qualifier ) !== not;
+ } );
+
+ }
+
+ if ( typeof qualifier === "string" ) {
+ if ( risSimple.test( qualifier ) ) {
+ return jQuery.filter( qualifier, elements, not );
+ }
+
+ qualifier = jQuery.filter( qualifier, elements );
+ }
+
+ return jQuery.grep( elements, function( elem ) {
+ return ( indexOf.call( qualifier, elem ) > -1 ) !== not && elem.nodeType === 1;
+ } );
+}
+
+jQuery.filter = function( expr, elems, not ) {
+ var elem = elems[ 0 ];
+
+ if ( not ) {
+ expr = ":not(" + expr + ")";
+ }
+
+ return elems.length === 1 && elem.nodeType === 1 ?
+ jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] :
+ jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
+ return elem.nodeType === 1;
+ } ) );
+};
+
+jQuery.fn.extend( {
+ find: function( selector ) {
+ var i, ret,
+ len = this.length,
+ self = this;
+
+ if ( typeof selector !== "string" ) {
+ return this.pushStack( jQuery( selector ).filter( function() {
+ for ( i = 0; i < len; i++ ) {
+ if ( jQuery.contains( self[ i ], this ) ) {
+ return true;
+ }
+ }
+ } ) );
+ }
+
+ ret = this.pushStack( [] );
+
+ for ( i = 0; i < len; i++ ) {
+ jQuery.find( selector, self[ i ], ret );
+ }
+
+ return len > 1 ? jQuery.uniqueSort( ret ) : ret;
+ },
+ filter: function( selector ) {
+ return this.pushStack( winnow( this, selector || [], false ) );
+ },
+ not: function( selector ) {
+ return this.pushStack( winnow( this, selector || [], true ) );
+ },
+ is: function( selector ) {
+ return !!winnow(
+ this,
+
+ // If this is a positional/relative selector, check membership in the returned set
+ // so $("p:first").is("p:last") won't return true for a doc with two "p".
+ typeof selector === "string" && rneedsContext.test( selector ) ?
+ jQuery( selector ) :
+ selector || [],
+ false
+ ).length;
+ }
+} );
+
+
+// Initialize a jQuery object
+
+
+// A central reference to the root jQuery(document)
+var rootjQuery,
+
+ // A simple way to check for HTML strings
+ // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
+ // Strict HTML recognition (#11290: must start with <)
+ // Shortcut simple #id case for speed
+ rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,
+
+ init = jQuery.fn.init = function( selector, context, root ) {
+ var match, elem;
+
+ // HANDLE: $(""), $(null), $(undefined), $(false)
+ if ( !selector ) {
+ return this;
+ }
+
+ // Method init() accepts an alternate rootjQuery
+ // so migrate can support jQuery.sub (gh-2101)
+ root = root || rootjQuery;
+
+ // Handle HTML strings
+ if ( typeof selector === "string" ) {
+ if ( selector[ 0 ] === "<" &&
+ selector[ selector.length - 1 ] === ">" &&
+ selector.length >= 3 ) {
+
+ // Assume that strings that start and end with <> are HTML and skip the regex check
+ match = [ null, selector, null ];
+
+ } else {
+ match = rquickExpr.exec( selector );
+ }
+
+ // Match html or make sure no context is specified for #id
+ if ( match && ( match[ 1 ] || !context ) ) {
+
+ // HANDLE: $(html) -> $(array)
+ if ( match[ 1 ] ) {
+ context = context instanceof jQuery ? context[ 0 ] : context;
+
+ // Option to run scripts is true for back-compat
+ // Intentionally let the error be thrown if parseHTML is not present
+ jQuery.merge( this, jQuery.parseHTML(
+ match[ 1 ],
+ context && context.nodeType ? context.ownerDocument || context : document,
+ true
+ ) );
+
+ // HANDLE: $(html, props)
+ if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) {
+ for ( match in context ) {
+
+ // Properties of context are called as methods if possible
+ if ( jQuery.isFunction( this[ match ] ) ) {
+ this[ match ]( context[ match ] );
+
+ // ...and otherwise set as attributes
+ } else {
+ this.attr( match, context[ match ] );
+ }
+ }
+ }
+
+ return this;
+
+ // HANDLE: $(#id)
+ } else {
+ elem = document.getElementById( match[ 2 ] );
+
+ if ( elem ) {
+
+ // Inject the element directly into the jQuery object
+ this[ 0 ] = elem;
+ this.length = 1;
+ }
+ return this;
+ }
+
+ // HANDLE: $(expr, $(...))
+ } else if ( !context || context.jquery ) {
+ return ( context || root ).find( selector );
+
+ // HANDLE: $(expr, context)
+ // (which is just equivalent to: $(context).find(expr)
+ } else {
+ return this.constructor( context ).find( selector );
+ }
+
+ // HANDLE: $(DOMElement)
+ } else if ( selector.nodeType ) {
+ this[ 0 ] = selector;
+ this.length = 1;
+ return this;
+
+ // HANDLE: $(function)
+ // Shortcut for document ready
+ } else if ( jQuery.isFunction( selector ) ) {
+ return root.ready !== undefined ?
+ root.ready( selector ) :
+
+ // Execute immediately if ready is not present
+ selector( jQuery );
+ }
+
+ return jQuery.makeArray( selector, this );
+ };
+
+// Give the init function the jQuery prototype for later instantiation
+init.prototype = jQuery.fn;
+
+// Initialize central reference
+rootjQuery = jQuery( document );
+
+
+var rparentsprev = /^(?:parents|prev(?:Until|All))/,
+
+ // Methods guaranteed to produce a unique set when starting from a unique set
+ guaranteedUnique = {
+ children: true,
+ contents: true,
+ next: true,
+ prev: true
+ };
+
+jQuery.fn.extend( {
+ has: function( target ) {
+ var targets = jQuery( target, this ),
+ l = targets.length;
+
+ return this.filter( function() {
+ var i = 0;
+ for ( ; i < l; i++ ) {
+ if ( jQuery.contains( this, targets[ i ] ) ) {
+ return true;
+ }
+ }
+ } );
+ },
+
+ closest: function( selectors, context ) {
+ var cur,
+ i = 0,
+ l = this.length,
+ matched = [],
+ targets = typeof selectors !== "string" && jQuery( selectors );
+
+ // Positional selectors never match, since there's no _selection_ context
+ if ( !rneedsContext.test( selectors ) ) {
+ for ( ; i < l; i++ ) {
+ for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) {
+
+ // Always skip document fragments
+ if ( cur.nodeType < 11 && ( targets ?
+ targets.index( cur ) > -1 :
+
+ // Don't pass non-elements to Sizzle
+ cur.nodeType === 1 &&
+ jQuery.find.matchesSelector( cur, selectors ) ) ) {
+
+ matched.push( cur );
+ break;
+ }
+ }
+ }
+ }
+
+ return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched );
+ },
+
+ // Determine the position of an element within the set
+ index: function( elem ) {
+
+ // No argument, return index in parent
+ if ( !elem ) {
+ return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;
+ }
+
+ // Index in selector
+ if ( typeof elem === "string" ) {
+ return indexOf.call( jQuery( elem ), this[ 0 ] );
+ }
+
+ // Locate the position of the desired element
+ return indexOf.call( this,
+
+ // If it receives a jQuery object, the first element is used
+ elem.jquery ? elem[ 0 ] : elem
+ );
+ },
+
+ add: function( selector, context ) {
+ return this.pushStack(
+ jQuery.uniqueSort(
+ jQuery.merge( this.get(), jQuery( selector, context ) )
+ )
+ );
+ },
+
+ addBack: function( selector ) {
+ return this.add( selector == null ?
+ this.prevObject : this.prevObject.filter( selector )
+ );
+ }
+} );
+
+function sibling( cur, dir ) {
+ while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {}
+ return cur;
+}
+
+jQuery.each( {
+ parent: function( elem ) {
+ var parent = elem.parentNode;
+ return parent && parent.nodeType !== 11 ? parent : null;
+ },
+ parents: function( elem ) {
+ return dir( elem, "parentNode" );
+ },
+ parentsUntil: function( elem, i, until ) {
+ return dir( elem, "parentNode", until );
+ },
+ next: function( elem ) {
+ return sibling( elem, "nextSibling" );
+ },
+ prev: function( elem ) {
+ return sibling( elem, "previousSibling" );
+ },
+ nextAll: function( elem ) {
+ return dir( elem, "nextSibling" );
+ },
+ prevAll: function( elem ) {
+ return dir( elem, "previousSibling" );
+ },
+ nextUntil: function( elem, i, until ) {
+ return dir( elem, "nextSibling", until );
+ },
+ prevUntil: function( elem, i, until ) {
+ return dir( elem, "previousSibling", until );
+ },
+ siblings: function( elem ) {
+ return siblings( ( elem.parentNode || {} ).firstChild, elem );
+ },
+ children: function( elem ) {
+ return siblings( elem.firstChild );
+ },
+ contents: function( elem ) {
+ return elem.contentDocument || jQuery.merge( [], elem.childNodes );
+ }
+}, function( name, fn ) {
+ jQuery.fn[ name ] = function( until, selector ) {
+ var matched = jQuery.map( this, fn, until );
+
+ if ( name.slice( -5 ) !== "Until" ) {
+ selector = until;
+ }
+
+ if ( selector && typeof selector === "string" ) {
+ matched = jQuery.filter( selector, matched );
+ }
+
+ if ( this.length > 1 ) {
+
+ // Remove duplicates
+ if ( !guaranteedUnique[ name ] ) {
+ jQuery.uniqueSort( matched );
+ }
+
+ // Reverse order for parents* and prev-derivatives
+ if ( rparentsprev.test( name ) ) {
+ matched.reverse();
+ }
+ }
+
+ return this.pushStack( matched );
+ };
+} );
+var rnotwhite = ( /\S+/g );
+
+
+
+// Convert String-formatted options into Object-formatted ones
+function createOptions( options ) {
+ var object = {};
+ jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) {
+ object[ flag ] = true;
+ } );
+ return object;
+}
+
+/*
+ * Create a callback list using the following parameters:
+ *
+ * options: an optional list of space-separated options that will change how
+ * the callback list behaves or a more traditional option object
+ *
+ * By default a callback list will act like an event callback list and can be
+ * "fired" multiple times.
+ *
+ * Possible options:
+ *
+ * once: will ensure the callback list can only be fired once (like a Deferred)
+ *
+ * memory: will keep track of previous values and will call any callback added
+ * after the list has been fired right away with the latest "memorized"
+ * values (like a Deferred)
+ *
+ * unique: will ensure a callback can only be added once (no duplicate in the list)
+ *
+ * stopOnFalse: interrupt callings when a callback returns false
+ *
+ */
+jQuery.Callbacks = function( options ) {
+
+ // Convert options from String-formatted to Object-formatted if needed
+ // (we check in cache first)
+ options = typeof options === "string" ?
+ createOptions( options ) :
+ jQuery.extend( {}, options );
+
+ var // Flag to know if list is currently firing
+ firing,
+
+ // Last fire value for non-forgettable lists
+ memory,
+
+ // Flag to know if list was already fired
+ fired,
+
+ // Flag to prevent firing
+ locked,
+
+ // Actual callback list
+ list = [],
+
+ // Queue of execution data for repeatable lists
+ queue = [],
+
+ // Index of currently firing callback (modified by add/remove as needed)
+ firingIndex = -1,
+
+ // Fire callbacks
+ fire = function() {
+
+ // Enforce single-firing
+ locked = options.once;
+
+ // Execute callbacks for all pending executions,
+ // respecting firingIndex overrides and runtime changes
+ fired = firing = true;
+ for ( ; queue.length; firingIndex = -1 ) {
+ memory = queue.shift();
+ while ( ++firingIndex < list.length ) {
+
+ // Run callback and check for early termination
+ if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false &&
+ options.stopOnFalse ) {
+
+ // Jump to end and forget the data so .add doesn't re-fire
+ firingIndex = list.length;
+ memory = false;
+ }
+ }
+ }
+
+ // Forget the data if we're done with it
+ if ( !options.memory ) {
+ memory = false;
+ }
+
+ firing = false;
+
+ // Clean up if we're done firing for good
+ if ( locked ) {
+
+ // Keep an empty list if we have data for future add calls
+ if ( memory ) {
+ list = [];
+
+ // Otherwise, this object is spent
+ } else {
+ list = "";
+ }
+ }
+ },
+
+ // Actual Callbacks object
+ self = {
+
+ // Add a callback or a collection of callbacks to the list
+ add: function() {
+ if ( list ) {
+
+ // If we have memory from a past run, we should fire after adding
+ if ( memory && !firing ) {
+ firingIndex = list.length - 1;
+ queue.push( memory );
+ }
+
+ ( function add( args ) {
+ jQuery.each( args, function( _, arg ) {
+ if ( jQuery.isFunction( arg ) ) {
+ if ( !options.unique || !self.has( arg ) ) {
+ list.push( arg );
+ }
+ } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) {
+
+ // Inspect recursively
+ add( arg );
+ }
+ } );
+ } )( arguments );
+
+ if ( memory && !firing ) {
+ fire();
+ }
+ }
+ return this;
+ },
+
+ // Remove a callback from the list
+ remove: function() {
+ jQuery.each( arguments, function( _, arg ) {
+ var index;
+ while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
+ list.splice( index, 1 );
+
+ // Handle firing indexes
+ if ( index <= firingIndex ) {
+ firingIndex--;
+ }
+ }
+ } );
+ return this;
+ },
+
+ // Check if a given callback is in the list.
+ // If no argument is given, return whether or not list has callbacks attached.
+ has: function( fn ) {
+ return fn ?
+ jQuery.inArray( fn, list ) > -1 :
+ list.length > 0;
+ },
+
+ // Remove all callbacks from the list
+ empty: function() {
+ if ( list ) {
+ list = [];
+ }
+ return this;
+ },
+
+ // Disable .fire and .add
+ // Abort any current/pending executions
+ // Clear all callbacks and values
+ disable: function() {
+ locked = queue = [];
+ list = memory = "";
+ return this;
+ },
+ disabled: function() {
+ return !list;
+ },
+
+ // Disable .fire
+ // Also disable .add unless we have memory (since it would have no effect)
+ // Abort any pending executions
+ lock: function() {
+ locked = queue = [];
+ if ( !memory && !firing ) {
+ list = memory = "";
+ }
+ return this;
+ },
+ locked: function() {
+ return !!locked;
+ },
+
+ // Call all callbacks with the given context and arguments
+ fireWith: function( context, args ) {
+ if ( !locked ) {
+ args = args || [];
+ args = [ context, args.slice ? args.slice() : args ];
+ queue.push( args );
+ if ( !firing ) {
+ fire();
+ }
+ }
+ return this;
+ },
+
+ // Call all the callbacks with the given arguments
+ fire: function() {
+ self.fireWith( this, arguments );
+ return this;
+ },
+
+ // To know if the callbacks have already been called at least once
+ fired: function() {
+ return !!fired;
+ }
+ };
+
+ return self;
+};
+
+
+function Identity( v ) {
+ return v;
+}
+function Thrower( ex ) {
+ throw ex;
+}
+
+function adoptValue( value, resolve, reject ) {
+ var method;
+
+ try {
+
+ // Check for promise aspect first to privilege synchronous behavior
+ if ( value && jQuery.isFunction( ( method = value.promise ) ) ) {
+ method.call( value ).done( resolve ).fail( reject );
+
+ // Other thenables
+ } else if ( value && jQuery.isFunction( ( method = value.then ) ) ) {
+ method.call( value, resolve, reject );
+
+ // Other non-thenables
+ } else {
+
+ // Support: Android 4.0 only
+ // Strict mode functions invoked without .call/.apply get global-object context
+ resolve.call( undefined, value );
+ }
+
+ // For Promises/A+, convert exceptions into rejections
+ // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in
+ // Deferred#then to conditionally suppress rejection.
+ } catch ( value ) {
+
+ // Support: Android 4.0 only
+ // Strict mode functions invoked without .call/.apply get global-object context
+ reject.call( undefined, value );
+ }
+}
+
+jQuery.extend( {
+
+ Deferred: function( func ) {
+ var tuples = [
+
+ // action, add listener, callbacks,
+ // ... .then handlers, argument index, [final state]
+ [ "notify", "progress", jQuery.Callbacks( "memory" ),
+ jQuery.Callbacks( "memory" ), 2 ],
+ [ "resolve", "done", jQuery.Callbacks( "once memory" ),
+ jQuery.Callbacks( "once memory" ), 0, "resolved" ],
+ [ "reject", "fail", jQuery.Callbacks( "once memory" ),
+ jQuery.Callbacks( "once memory" ), 1, "rejected" ]
+ ],
+ state = "pending",
+ promise = {
+ state: function() {
+ return state;
+ },
+ always: function() {
+ deferred.done( arguments ).fail( arguments );
+ return this;
+ },
+ "catch": function( fn ) {
+ return promise.then( null, fn );
+ },
+
+ // Keep pipe for back-compat
+ pipe: function( /* fnDone, fnFail, fnProgress */ ) {
+ var fns = arguments;
+
+ return jQuery.Deferred( function( newDefer ) {
+ jQuery.each( tuples, function( i, tuple ) {
+
+ // Map tuples (progress, done, fail) to arguments (done, fail, progress)
+ var fn = jQuery.isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ];
+
+ // deferred.progress(function() { bind to newDefer or newDefer.notify })
+ // deferred.done(function() { bind to newDefer or newDefer.resolve })
+ // deferred.fail(function() { bind to newDefer or newDefer.reject })
+ deferred[ tuple[ 1 ] ]( function() {
+ var returned = fn && fn.apply( this, arguments );
+ if ( returned && jQuery.isFunction( returned.promise ) ) {
+ returned.promise()
+ .progress( newDefer.notify )
+ .done( newDefer.resolve )
+ .fail( newDefer.reject );
+ } else {
+ newDefer[ tuple[ 0 ] + "With" ](
+ this,
+ fn ? [ returned ] : arguments
+ );
+ }
+ } );
+ } );
+ fns = null;
+ } ).promise();
+ },
+ then: function( onFulfilled, onRejected, onProgress ) {
+ var maxDepth = 0;
+ function resolve( depth, deferred, handler, special ) {
+ return function() {
+ var that = this,
+ args = arguments,
+ mightThrow = function() {
+ var returned, then;
+
+ // Support: Promises/A+ section 2.3.3.3.3
+ // https://promisesaplus.com/#point-59
+ // Ignore double-resolution attempts
+ if ( depth < maxDepth ) {
+ return;
+ }
+
+ returned = handler.apply( that, args );
+
+ // Support: Promises/A+ section 2.3.1
+ // https://promisesaplus.com/#point-48
+ if ( returned === deferred.promise() ) {
+ throw new TypeError( "Thenable self-resolution" );
+ }
+
+ // Support: Promises/A+ sections 2.3.3.1, 3.5
+ // https://promisesaplus.com/#point-54
+ // https://promisesaplus.com/#point-75
+ // Retrieve `then` only once
+ then = returned &&
+
+ // Support: Promises/A+ section 2.3.4
+ // https://promisesaplus.com/#point-64
+ // Only check objects and functions for thenability
+ ( typeof returned === "object" ||
+ typeof returned === "function" ) &&
+ returned.then;
+
+ // Handle a returned thenable
+ if ( jQuery.isFunction( then ) ) {
+
+ // Special processors (notify) just wait for resolution
+ if ( special ) {
+ then.call(
+ returned,
+ resolve( maxDepth, deferred, Identity, special ),
+ resolve( maxDepth, deferred, Thrower, special )
+ );
+
+ // Normal processors (resolve) also hook into progress
+ } else {
+
+ // ...and disregard older resolution values
+ maxDepth++;
+
+ then.call(
+ returned,
+ resolve( maxDepth, deferred, Identity, special ),
+ resolve( maxDepth, deferred, Thrower, special ),
+ resolve( maxDepth, deferred, Identity,
+ deferred.notifyWith )
+ );
+ }
+
+ // Handle all other returned values
+ } else {
+
+ // Only substitute handlers pass on context
+ // and multiple values (non-spec behavior)
+ if ( handler !== Identity ) {
+ that = undefined;
+ args = [ returned ];
+ }
+
+ // Process the value(s)
+ // Default process is resolve
+ ( special || deferred.resolveWith )( that, args );
+ }
+ },
+
+ // Only normal processors (resolve) catch and reject exceptions
+ process = special ?
+ mightThrow :
+ function() {
+ try {
+ mightThrow();
+ } catch ( e ) {
+
+ if ( jQuery.Deferred.exceptionHook ) {
+ jQuery.Deferred.exceptionHook( e,
+ process.stackTrace );
+ }
+
+ // Support: Promises/A+ section 2.3.3.3.4.1
+ // https://promisesaplus.com/#point-61
+ // Ignore post-resolution exceptions
+ if ( depth + 1 >= maxDepth ) {
+
+ // Only substitute handlers pass on context
+ // and multiple values (non-spec behavior)
+ if ( handler !== Thrower ) {
+ that = undefined;
+ args = [ e ];
+ }
+
+ deferred.rejectWith( that, args );
+ }
+ }
+ };
+
+ // Support: Promises/A+ section 2.3.3.3.1
+ // https://promisesaplus.com/#point-57
+ // Re-resolve promises immediately to dodge false rejection from
+ // subsequent errors
+ if ( depth ) {
+ process();
+ } else {
+
+ // Call an optional hook to record the stack, in case of exception
+ // since it's otherwise lost when execution goes async
+ if ( jQuery.Deferred.getStackHook ) {
+ process.stackTrace = jQuery.Deferred.getStackHook();
+ }
+ window.setTimeout( process );
+ }
+ };
+ }
+
+ return jQuery.Deferred( function( newDefer ) {
+
+ // progress_handlers.add( ... )
+ tuples[ 0 ][ 3 ].add(
+ resolve(
+ 0,
+ newDefer,
+ jQuery.isFunction( onProgress ) ?
+ onProgress :
+ Identity,
+ newDefer.notifyWith
+ )
+ );
+
+ // fulfilled_handlers.add( ... )
+ tuples[ 1 ][ 3 ].add(
+ resolve(
+ 0,
+ newDefer,
+ jQuery.isFunction( onFulfilled ) ?
+ onFulfilled :
+ Identity
+ )
+ );
+
+ // rejected_handlers.add( ... )
+ tuples[ 2 ][ 3 ].add(
+ resolve(
+ 0,
+ newDefer,
+ jQuery.isFunction( onRejected ) ?
+ onRejected :
+ Thrower
+ )
+ );
+ } ).promise();
+ },
+
+ // Get a promise for this deferred
+ // If obj is provided, the promise aspect is added to the object
+ promise: function( obj ) {
+ return obj != null ? jQuery.extend( obj, promise ) : promise;
+ }
+ },
+ deferred = {};
+
+ // Add list-specific methods
+ jQuery.each( tuples, function( i, tuple ) {
+ var list = tuple[ 2 ],
+ stateString = tuple[ 5 ];
+
+ // promise.progress = list.add
+ // promise.done = list.add
+ // promise.fail = list.add
+ promise[ tuple[ 1 ] ] = list.add;
+
+ // Handle state
+ if ( stateString ) {
+ list.add(
+ function() {
+
+ // state = "resolved" (i.e., fulfilled)
+ // state = "rejected"
+ state = stateString;
+ },
+
+ // rejected_callbacks.disable
+ // fulfilled_callbacks.disable
+ tuples[ 3 - i ][ 2 ].disable,
+
+ // progress_callbacks.lock
+ tuples[ 0 ][ 2 ].lock
+ );
+ }
+
+ // progress_handlers.fire
+ // fulfilled_handlers.fire
+ // rejected_handlers.fire
+ list.add( tuple[ 3 ].fire );
+
+ // deferred.notify = function() { deferred.notifyWith(...) }
+ // deferred.resolve = function() { deferred.resolveWith(...) }
+ // deferred.reject = function() { deferred.rejectWith(...) }
+ deferred[ tuple[ 0 ] ] = function() {
+ deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments );
+ return this;
+ };
+
+ // deferred.notifyWith = list.fireWith
+ // deferred.resolveWith = list.fireWith
+ // deferred.rejectWith = list.fireWith
+ deferred[ tuple[ 0 ] + "With" ] = list.fireWith;
+ } );
+
+ // Make the deferred a promise
+ promise.promise( deferred );
+
+ // Call given func if any
+ if ( func ) {
+ func.call( deferred, deferred );
+ }
+
+ // All done!
+ return deferred;
+ },
+
+ // Deferred helper
+ when: function( singleValue ) {
+ var
+
+ // count of uncompleted subordinates
+ remaining = arguments.length,
+
+ // count of unprocessed arguments
+ i = remaining,
+
+ // subordinate fulfillment data
+ resolveContexts = Array( i ),
+ resolveValues = slice.call( arguments ),
+
+ // the master Deferred
+ master = jQuery.Deferred(),
+
+ // subordinate callback factory
+ updateFunc = function( i ) {
+ return function( value ) {
+ resolveContexts[ i ] = this;
+ resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;
+ if ( !( --remaining ) ) {
+ master.resolveWith( resolveContexts, resolveValues );
+ }
+ };
+ };
+
+ // Single- and empty arguments are adopted like Promise.resolve
+ if ( remaining <= 1 ) {
+ adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject );
+
+ // Use .then() to unwrap secondary thenables (cf. gh-3000)
+ if ( master.state() === "pending" ||
+ jQuery.isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) {
+
+ return master.then();
+ }
+ }
+
+ // Multiple arguments are aggregated like Promise.all array elements
+ while ( i-- ) {
+ adoptValue( resolveValues[ i ], updateFunc( i ), master.reject );
+ }
+
+ return master.promise();
+ }
+} );
+
+
+// These usually indicate a programmer mistake during development,
+// warn about them ASAP rather than swallowing them by default.
+var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
+
+jQuery.Deferred.exceptionHook = function( error, stack ) {
+
+ // Support: IE 8 - 9 only
+ // Console exists when dev tools are open, which can happen at any time
+ if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) {
+ window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack );
+ }
+};
+
+
+
+
+jQuery.readyException = function( error ) {
+ window.setTimeout( function() {
+ throw error;
+ } );
+};
+
+
+
+
+// The deferred used on DOM ready
+var readyList = jQuery.Deferred();
+
+jQuery.fn.ready = function( fn ) {
+
+ readyList
+ .then( fn )
+
+ // Wrap jQuery.readyException in a function so that the lookup
+ // happens at the time of error handling instead of callback
+ // registration.
+ .catch( function( error ) {
+ jQuery.readyException( error );
+ } );
+
+ return this;
+};
+
+jQuery.extend( {
+
+ // Is the DOM ready to be used? Set to true once it occurs.
+ isReady: false,
+
+ // A counter to track how many items to wait for before
+ // the ready event fires. See #6781
+ readyWait: 1,
+
+ // Hold (or release) the ready event
+ holdReady: function( hold ) {
+ if ( hold ) {
+ jQuery.readyWait++;
+ } else {
+ jQuery.ready( true );
+ }
+ },
+
+ // Handle when the DOM is ready
+ ready: function( wait ) {
+
+ // Abort if there are pending holds or we're already ready
+ if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
+ return;
+ }
+
+ // Remember that the DOM is ready
+ jQuery.isReady = true;
+
+ // If a normal DOM Ready event fired, decrement, and wait if need be
+ if ( wait !== true && --jQuery.readyWait > 0 ) {
+ return;
+ }
+
+ // If there are functions bound, to execute
+ readyList.resolveWith( document, [ jQuery ] );
+ }
+} );
+
+jQuery.ready.then = readyList.then;
+
+// The ready event handler and self cleanup method
+function completed() {
+ document.removeEventListener( "DOMContentLoaded", completed );
+ window.removeEventListener( "load", completed );
+ jQuery.ready();
+}
+
+// Catch cases where $(document).ready() is called
+// after the browser event has already occurred.
+// Support: IE <=9 - 10 only
+// Older IE sometimes signals "interactive" too soon
+if ( document.readyState === "complete" ||
+ ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) {
+
+ // Handle it asynchronously to allow scripts the opportunity to delay ready
+ window.setTimeout( jQuery.ready );
+
+} else {
+
+ // Use the handy event callback
+ document.addEventListener( "DOMContentLoaded", completed );
+
+ // A fallback to window.onload, that will always work
+ window.addEventListener( "load", completed );
+}
+
+
+
+
+// Multifunctional method to get and set values of a collection
+// The value/s can optionally be executed if it's a function
+var access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
+ var i = 0,
+ len = elems.length,
+ bulk = key == null;
+
+ // Sets many values
+ if ( jQuery.type( key ) === "object" ) {
+ chainable = true;
+ for ( i in key ) {
+ access( elems, fn, i, key[ i ], true, emptyGet, raw );
+ }
+
+ // Sets one value
+ } else if ( value !== undefined ) {
+ chainable = true;
+
+ if ( !jQuery.isFunction( value ) ) {
+ raw = true;
+ }
+
+ if ( bulk ) {
+
+ // Bulk operations run against the entire set
+ if ( raw ) {
+ fn.call( elems, value );
+ fn = null;
+
+ // ...except when executing function values
+ } else {
+ bulk = fn;
+ fn = function( elem, key, value ) {
+ return bulk.call( jQuery( elem ), value );
+ };
+ }
+ }
+
+ if ( fn ) {
+ for ( ; i < len; i++ ) {
+ fn(
+ elems[ i ], key, raw ?
+ value :
+ value.call( elems[ i ], i, fn( elems[ i ], key ) )
+ );
+ }
+ }
+ }
+
+ return chainable ?
+ elems :
+
+ // Gets
+ bulk ?
+ fn.call( elems ) :
+ len ? fn( elems[ 0 ], key ) : emptyGet;
+};
+var acceptData = function( owner ) {
+
+ // Accepts only:
+ // - Node
+ // - Node.ELEMENT_NODE
+ // - Node.DOCUMENT_NODE
+ // - Object
+ // - Any
+ return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
+};
+
+
+
+
+function Data() {
+ this.expando = jQuery.expando + Data.uid++;
+}
+
+Data.uid = 1;
+
+Data.prototype = {
+
+ cache: function( owner ) {
+
+ // Check if the owner object already has a cache
+ var value = owner[ this.expando ];
+
+ // If not, create one
+ if ( !value ) {
+ value = {};
+
+ // We can accept data for non-element nodes in modern browsers,
+ // but we should not, see #8335.
+ // Always return an empty object.
+ if ( acceptData( owner ) ) {
+
+ // If it is a node unlikely to be stringify-ed or looped over
+ // use plain assignment
+ if ( owner.nodeType ) {
+ owner[ this.expando ] = value;
+
+ // Otherwise secure it in a non-enumerable property
+ // configurable must be true to allow the property to be
+ // deleted when data is removed
+ } else {
+ Object.defineProperty( owner, this.expando, {
+ value: value,
+ configurable: true
+ } );
+ }
+ }
+ }
+
+ return value;
+ },
+ set: function( owner, data, value ) {
+ var prop,
+ cache = this.cache( owner );
+
+ // Handle: [ owner, key, value ] args
+ // Always use camelCase key (gh-2257)
+ if ( typeof data === "string" ) {
+ cache[ jQuery.camelCase( data ) ] = value;
+
+ // Handle: [ owner, { properties } ] args
+ } else {
+
+ // Copy the properties one-by-one to the cache object
+ for ( prop in data ) {
+ cache[ jQuery.camelCase( prop ) ] = data[ prop ];
+ }
+ }
+ return cache;
+ },
+ get: function( owner, key ) {
+ return key === undefined ?
+ this.cache( owner ) :
+
+ // Always use camelCase key (gh-2257)
+ owner[ this.expando ] && owner[ this.expando ][ jQuery.camelCase( key ) ];
+ },
+ access: function( owner, key, value ) {
+
+ // In cases where either:
+ //
+ // 1. No key was specified
+ // 2. A string key was specified, but no value provided
+ //
+ // Take the "read" path and allow the get method to determine
+ // which value to return, respectively either:
+ //
+ // 1. The entire cache object
+ // 2. The data stored at the key
+ //
+ if ( key === undefined ||
+ ( ( key && typeof key === "string" ) && value === undefined ) ) {
+
+ return this.get( owner, key );
+ }
+
+ // When the key is not a string, or both a key and value
+ // are specified, set or extend (existing objects) with either:
+ //
+ // 1. An object of properties
+ // 2. A key and value
+ //
+ this.set( owner, key, value );
+
+ // Since the "set" path can have two possible entry points
+ // return the expected data based on which path was taken[*]
+ return value !== undefined ? value : key;
+ },
+ remove: function( owner, key ) {
+ var i,
+ cache = owner[ this.expando ];
+
+ if ( cache === undefined ) {
+ return;
+ }
+
+ if ( key !== undefined ) {
+
+ // Support array or space separated string of keys
+ if ( jQuery.isArray( key ) ) {
+
+ // If key is an array of keys...
+ // We always set camelCase keys, so remove that.
+ key = key.map( jQuery.camelCase );
+ } else {
+ key = jQuery.camelCase( key );
+
+ // If a key with the spaces exists, use it.
+ // Otherwise, create an array by matching non-whitespace
+ key = key in cache ?
+ [ key ] :
+ ( key.match( rnotwhite ) || [] );
+ }
+
+ i = key.length;
+
+ while ( i-- ) {
+ delete cache[ key[ i ] ];
+ }
+ }
+
+ // Remove the expando if there's no more data
+ if ( key === undefined || jQuery.isEmptyObject( cache ) ) {
+
+ // Support: Chrome <=35 - 45
+ // Webkit & Blink performance suffers when deleting properties
+ // from DOM nodes, so set to undefined instead
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted)
+ if ( owner.nodeType ) {
+ owner[ this.expando ] = undefined;
+ } else {
+ delete owner[ this.expando ];
+ }
+ }
+ },
+ hasData: function( owner ) {
+ var cache = owner[ this.expando ];
+ return cache !== undefined && !jQuery.isEmptyObject( cache );
+ }
+};
+var dataPriv = new Data();
+
+var dataUser = new Data();
+
+
+
+// Implementation Summary
+//
+// 1. Enforce API surface and semantic compatibility with 1.9.x branch
+// 2. Improve the module's maintainability by reducing the storage
+// paths to a single mechanism.
+// 3. Use the same single mechanism to support "private" and "user" data.
+// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData)
+// 5. Avoid exposing implementation details on user objects (eg. expando properties)
+// 6. Provide a clear path for implementation upgrade to WeakMap in 2014
+
+var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
+ rmultiDash = /[A-Z]/g;
+
+function dataAttr( elem, key, data ) {
+ var name;
+
+ // If nothing was found internally, try to fetch any
+ // data from the HTML5 data-* attribute
+ if ( data === undefined && elem.nodeType === 1 ) {
+ name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase();
+ data = elem.getAttribute( name );
+
+ if ( typeof data === "string" ) {
+ try {
+ data = data === "true" ? true :
+ data === "false" ? false :
+ data === "null" ? null :
+
+ // Only convert to a number if it doesn't change the string
+ +data + "" === data ? +data :
+ rbrace.test( data ) ? JSON.parse( data ) :
+ data;
+ } catch ( e ) {}
+
+ // Make sure we set the data so it isn't changed later
+ dataUser.set( elem, key, data );
+ } else {
+ data = undefined;
+ }
+ }
+ return data;
+}
+
+jQuery.extend( {
+ hasData: function( elem ) {
+ return dataUser.hasData( elem ) || dataPriv.hasData( elem );
+ },
+
+ data: function( elem, name, data ) {
+ return dataUser.access( elem, name, data );
+ },
+
+ removeData: function( elem, name ) {
+ dataUser.remove( elem, name );
+ },
+
+ // TODO: Now that all calls to _data and _removeData have been replaced
+ // with direct calls to dataPriv methods, these can be deprecated.
+ _data: function( elem, name, data ) {
+ return dataPriv.access( elem, name, data );
+ },
+
+ _removeData: function( elem, name ) {
+ dataPriv.remove( elem, name );
+ }
+} );
+
+jQuery.fn.extend( {
+ data: function( key, value ) {
+ var i, name, data,
+ elem = this[ 0 ],
+ attrs = elem && elem.attributes;
+
+ // Gets all values
+ if ( key === undefined ) {
+ if ( this.length ) {
+ data = dataUser.get( elem );
+
+ if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) {
+ i = attrs.length;
+ while ( i-- ) {
+
+ // Support: IE 11 only
+ // The attrs elements can be null (#14894)
+ if ( attrs[ i ] ) {
+ name = attrs[ i ].name;
+ if ( name.indexOf( "data-" ) === 0 ) {
+ name = jQuery.camelCase( name.slice( 5 ) );
+ dataAttr( elem, name, data[ name ] );
+ }
+ }
+ }
+ dataPriv.set( elem, "hasDataAttrs", true );
+ }
+ }
+
+ return data;
+ }
+
+ // Sets multiple values
+ if ( typeof key === "object" ) {
+ return this.each( function() {
+ dataUser.set( this, key );
+ } );
+ }
+
+ return access( this, function( value ) {
+ var data;
+
+ // The calling jQuery object (element matches) is not empty
+ // (and therefore has an element appears at this[ 0 ]) and the
+ // `value` parameter was not undefined. An empty jQuery object
+ // will result in `undefined` for elem = this[ 0 ] which will
+ // throw an exception if an attempt to read a data cache is made.
+ if ( elem && value === undefined ) {
+
+ // Attempt to get data from the cache
+ // The key will always be camelCased in Data
+ data = dataUser.get( elem, key );
+ if ( data !== undefined ) {
+ return data;
+ }
+
+ // Attempt to "discover" the data in
+ // HTML5 custom data-* attrs
+ data = dataAttr( elem, key );
+ if ( data !== undefined ) {
+ return data;
+ }
+
+ // We tried really hard, but the data doesn't exist.
+ return;
+ }
+
+ // Set the data...
+ this.each( function() {
+
+ // We always store the camelCased key
+ dataUser.set( this, key, value );
+ } );
+ }, null, value, arguments.length > 1, null, true );
+ },
+
+ removeData: function( key ) {
+ return this.each( function() {
+ dataUser.remove( this, key );
+ } );
+ }
+} );
+
+
+jQuery.extend( {
+ queue: function( elem, type, data ) {
+ var queue;
+
+ if ( elem ) {
+ type = ( type || "fx" ) + "queue";
+ queue = dataPriv.get( elem, type );
+
+ // Speed up dequeue by getting out quickly if this is just a lookup
+ if ( data ) {
+ if ( !queue || jQuery.isArray( data ) ) {
+ queue = dataPriv.access( elem, type, jQuery.makeArray( data ) );
+ } else {
+ queue.push( data );
+ }
+ }
+ return queue || [];
+ }
+ },
+
+ dequeue: function( elem, type ) {
+ type = type || "fx";
+
+ var queue = jQuery.queue( elem, type ),
+ startLength = queue.length,
+ fn = queue.shift(),
+ hooks = jQuery._queueHooks( elem, type ),
+ next = function() {
+ jQuery.dequeue( elem, type );
+ };
+
+ // If the fx queue is dequeued, always remove the progress sentinel
+ if ( fn === "inprogress" ) {
+ fn = queue.shift();
+ startLength--;
+ }
+
+ if ( fn ) {
+
+ // Add a progress sentinel to prevent the fx queue from being
+ // automatically dequeued
+ if ( type === "fx" ) {
+ queue.unshift( "inprogress" );
+ }
+
+ // Clear up the last queue stop function
+ delete hooks.stop;
+ fn.call( elem, next, hooks );
+ }
+
+ if ( !startLength && hooks ) {
+ hooks.empty.fire();
+ }
+ },
+
+ // Not public - generate a queueHooks object, or return the current one
+ _queueHooks: function( elem, type ) {
+ var key = type + "queueHooks";
+ return dataPriv.get( elem, key ) || dataPriv.access( elem, key, {
+ empty: jQuery.Callbacks( "once memory" ).add( function() {
+ dataPriv.remove( elem, [ type + "queue", key ] );
+ } )
+ } );
+ }
+} );
+
+jQuery.fn.extend( {
+ queue: function( type, data ) {
+ var setter = 2;
+
+ if ( typeof type !== "string" ) {
+ data = type;
+ type = "fx";
+ setter--;
+ }
+
+ if ( arguments.length < setter ) {
+ return jQuery.queue( this[ 0 ], type );
+ }
+
+ return data === undefined ?
+ this :
+ this.each( function() {
+ var queue = jQuery.queue( this, type, data );
+
+ // Ensure a hooks for this queue
+ jQuery._queueHooks( this, type );
+
+ if ( type === "fx" && queue[ 0 ] !== "inprogress" ) {
+ jQuery.dequeue( this, type );
+ }
+ } );
+ },
+ dequeue: function( type ) {
+ return this.each( function() {
+ jQuery.dequeue( this, type );
+ } );
+ },
+ clearQueue: function( type ) {
+ return this.queue( type || "fx", [] );
+ },
+
+ // Get a promise resolved when queues of a certain type
+ // are emptied (fx is the type by default)
+ promise: function( type, obj ) {
+ var tmp,
+ count = 1,
+ defer = jQuery.Deferred(),
+ elements = this,
+ i = this.length,
+ resolve = function() {
+ if ( !( --count ) ) {
+ defer.resolveWith( elements, [ elements ] );
+ }
+ };
+
+ if ( typeof type !== "string" ) {
+ obj = type;
+ type = undefined;
+ }
+ type = type || "fx";
+
+ while ( i-- ) {
+ tmp = dataPriv.get( elements[ i ], type + "queueHooks" );
+ if ( tmp && tmp.empty ) {
+ count++;
+ tmp.empty.add( resolve );
+ }
+ }
+ resolve();
+ return defer.promise( obj );
+ }
+} );
+var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source;
+
+var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" );
+
+
+var cssExpand = [ "Top", "Right", "Bottom", "Left" ];
+
+var isHiddenWithinTree = function( elem, el ) {
+
+ // isHiddenWithinTree might be called from jQuery#filter function;
+ // in that case, element will be second argument
+ elem = el || elem;
+
+ // Inline style trumps all
+ return elem.style.display === "none" ||
+ elem.style.display === "" &&
+
+ // Otherwise, check computed style
+ // Support: Firefox <=43 - 45
+ // Disconnected elements can have computed display: none, so first confirm that elem is
+ // in the document.
+ jQuery.contains( elem.ownerDocument, elem ) &&
+
+ jQuery.css( elem, "display" ) === "none";
+ };
+
+var swap = function( elem, options, callback, args ) {
+ var ret, name,
+ old = {};
+
+ // Remember the old values, and insert the new ones
+ for ( name in options ) {
+ old[ name ] = elem.style[ name ];
+ elem.style[ name ] = options[ name ];
+ }
+
+ ret = callback.apply( elem, args || [] );
+
+ // Revert the old values
+ for ( name in options ) {
+ elem.style[ name ] = old[ name ];
+ }
+
+ return ret;
+};
+
+
+
+
+function adjustCSS( elem, prop, valueParts, tween ) {
+ var adjusted,
+ scale = 1,
+ maxIterations = 20,
+ currentValue = tween ?
+ function() {
+ return tween.cur();
+ } :
+ function() {
+ return jQuery.css( elem, prop, "" );
+ },
+ initial = currentValue(),
+ unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),
+
+ // Starting value computation is required for potential unit mismatches
+ initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) &&
+ rcssNum.exec( jQuery.css( elem, prop ) );
+
+ if ( initialInUnit && initialInUnit[ 3 ] !== unit ) {
+
+ // Trust units reported by jQuery.css
+ unit = unit || initialInUnit[ 3 ];
+
+ // Make sure we update the tween properties later on
+ valueParts = valueParts || [];
+
+ // Iteratively approximate from a nonzero starting point
+ initialInUnit = +initial || 1;
+
+ do {
+
+ // If previous iteration zeroed out, double until we get *something*.
+ // Use string for doubling so we don't accidentally see scale as unchanged below
+ scale = scale || ".5";
+
+ // Adjust and apply
+ initialInUnit = initialInUnit / scale;
+ jQuery.style( elem, prop, initialInUnit + unit );
+
+ // Update scale, tolerating zero or NaN from tween.cur()
+ // Break the loop if scale is unchanged or perfect, or if we've just had enough.
+ } while (
+ scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations
+ );
+ }
+
+ if ( valueParts ) {
+ initialInUnit = +initialInUnit || +initial || 0;
+
+ // Apply relative offset (+=/-=) if specified
+ adjusted = valueParts[ 1 ] ?
+ initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] :
+ +valueParts[ 2 ];
+ if ( tween ) {
+ tween.unit = unit;
+ tween.start = initialInUnit;
+ tween.end = adjusted;
+ }
+ }
+ return adjusted;
+}
+
+
+var defaultDisplayMap = {};
+
+function getDefaultDisplay( elem ) {
+ var temp,
+ doc = elem.ownerDocument,
+ nodeName = elem.nodeName,
+ display = defaultDisplayMap[ nodeName ];
+
+ if ( display ) {
+ return display;
+ }
+
+ temp = doc.body.appendChild( doc.createElement( nodeName ) ),
+ display = jQuery.css( temp, "display" );
+
+ temp.parentNode.removeChild( temp );
+
+ if ( display === "none" ) {
+ display = "block";
+ }
+ defaultDisplayMap[ nodeName ] = display;
+
+ return display;
+}
+
+function showHide( elements, show ) {
+ var display, elem,
+ values = [],
+ index = 0,
+ length = elements.length;
+
+ // Determine new display value for elements that need to change
+ for ( ; index < length; index++ ) {
+ elem = elements[ index ];
+ if ( !elem.style ) {
+ continue;
+ }
+
+ display = elem.style.display;
+ if ( show ) {
+
+ // Since we force visibility upon cascade-hidden elements, an immediate (and slow)
+ // check is required in this first loop unless we have a nonempty display value (either
+ // inline or about-to-be-restored)
+ if ( display === "none" ) {
+ values[ index ] = dataPriv.get( elem, "display" ) || null;
+ if ( !values[ index ] ) {
+ elem.style.display = "";
+ }
+ }
+ if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) {
+ values[ index ] = getDefaultDisplay( elem );
+ }
+ } else {
+ if ( display !== "none" ) {
+ values[ index ] = "none";
+
+ // Remember what we're overwriting
+ dataPriv.set( elem, "display", display );
+ }
+ }
+ }
+
+ // Set the display of the elements in a second loop to avoid constant reflow
+ for ( index = 0; index < length; index++ ) {
+ if ( values[ index ] != null ) {
+ elements[ index ].style.display = values[ index ];
+ }
+ }
+
+ return elements;
+}
+
+jQuery.fn.extend( {
+ show: function() {
+ return showHide( this, true );
+ },
+ hide: function() {
+ return showHide( this );
+ },
+ toggle: function( state ) {
+ if ( typeof state === "boolean" ) {
+ return state ? this.show() : this.hide();
+ }
+
+ return this.each( function() {
+ if ( isHiddenWithinTree( this ) ) {
+ jQuery( this ).show();
+ } else {
+ jQuery( this ).hide();
+ }
+ } );
+ }
+} );
+var rcheckableType = ( /^(?:checkbox|radio)$/i );
+
+var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]+)/i );
+
+var rscriptType = ( /^$|\/(?:java|ecma)script/i );
+
+
+
+// We have to close these tags to support XHTML (#13200)
+var wrapMap = {
+
+ // Support: IE <=9 only
+ option: [ 1, "<select multiple='multiple'>", "</select>" ],
+
+ // XHTML parsers do not magically insert elements in the
+ // same way that tag soup parsers do. So we cannot shorten
+ // this by omitting <tbody> or other required elements.
+ thead: [ 1, "<table>", "</table>" ],
+ col: [ 2, "<table><colgroup>", "</colgroup></table>" ],
+ tr: [ 2, "<table><tbody>", "</tbody></table>" ],
+ td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
+
+ _default: [ 0, "", "" ]
+};
+
+// Support: IE <=9 only
+wrapMap.optgroup = wrapMap.option;
+
+wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
+wrapMap.th = wrapMap.td;
+
+
+function getAll( context, tag ) {
+
+ // Support: IE <=9 - 11 only
+ // Use typeof to avoid zero-argument method invocation on host objects (#15151)
+ var ret = typeof context.getElementsByTagName !== "undefined" ?
+ context.getElementsByTagName( tag || "*" ) :
+ typeof context.querySelectorAll !== "undefined" ?
+ context.querySelectorAll( tag || "*" ) :
+ [];
+
+ return tag === undefined || tag && jQuery.nodeName( context, tag ) ?
+ jQuery.merge( [ context ], ret ) :
+ ret;
+}
+
+
+// Mark scripts as having already been evaluated
+function setGlobalEval( elems, refElements ) {
+ var i = 0,
+ l = elems.length;
+
+ for ( ; i < l; i++ ) {
+ dataPriv.set(
+ elems[ i ],
+ "globalEval",
+ !refElements || dataPriv.get( refElements[ i ], "globalEval" )
+ );
+ }
+}
+
+
+var rhtml = /<|&#?\w+;/;
+
+function buildFragment( elems, context, scripts, selection, ignored ) {
+ var elem, tmp, tag, wrap, contains, j,
+ fragment = context.createDocumentFragment(),
+ nodes = [],
+ i = 0,
+ l = elems.length;
+
+ for ( ; i < l; i++ ) {
+ elem = elems[ i ];
+
+ if ( elem || elem === 0 ) {
+
+ // Add nodes directly
+ if ( jQuery.type( elem ) === "object" ) {
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // push.apply(_, arraylike) throws on ancient WebKit
+ jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );
+
+ // Convert non-html into a text node
+ } else if ( !rhtml.test( elem ) ) {
+ nodes.push( context.createTextNode( elem ) );
+
+ // Convert html into DOM nodes
+ } else {
+ tmp = tmp || fragment.appendChild( context.createElement( "div" ) );
+
+ // Deserialize a standard representation
+ tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase();
+ wrap = wrapMap[ tag ] || wrapMap._default;
+ tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ];
+
+ // Descend through wrappers to the right content
+ j = wrap[ 0 ];
+ while ( j-- ) {
+ tmp = tmp.lastChild;
+ }
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // push.apply(_, arraylike) throws on ancient WebKit
+ jQuery.merge( nodes, tmp.childNodes );
+
+ // Remember the top-level container
+ tmp = fragment.firstChild;
+
+ // Ensure the created nodes are orphaned (#12392)
+ tmp.textContent = "";
+ }
+ }
+ }
+
+ // Remove wrapper from fragment
+ fragment.textContent = "";
+
+ i = 0;
+ while ( ( elem = nodes[ i++ ] ) ) {
+
+ // Skip elements already in the context collection (trac-4087)
+ if ( selection && jQuery.inArray( elem, selection ) > -1 ) {
+ if ( ignored ) {
+ ignored.push( elem );
+ }
+ continue;
+ }
+
+ contains = jQuery.contains( elem.ownerDocument, elem );
+
+ // Append to fragment
+ tmp = getAll( fragment.appendChild( elem ), "script" );
+
+ // Preserve script evaluation history
+ if ( contains ) {
+ setGlobalEval( tmp );
+ }
+
+ // Capture executables
+ if ( scripts ) {
+ j = 0;
+ while ( ( elem = tmp[ j++ ] ) ) {
+ if ( rscriptType.test( elem.type || "" ) ) {
+ scripts.push( elem );
+ }
+ }
+ }
+ }
+
+ return fragment;
+}
+
+
+( function() {
+ var fragment = document.createDocumentFragment(),
+ div = fragment.appendChild( document.createElement( "div" ) ),
+ input = document.createElement( "input" );
+
+ // Support: Android 4.0 - 4.3 only
+ // Check state lost if the name is set (#11217)
+ // Support: Windows Web Apps (WWA)
+ // `name` and `type` must use .setAttribute for WWA (#14901)
+ input.setAttribute( "type", "radio" );
+ input.setAttribute( "checked", "checked" );
+ input.setAttribute( "name", "t" );
+
+ div.appendChild( input );
+
+ // Support: Android <=4.1 only
+ // Older WebKit doesn't clone checked state correctly in fragments
+ support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;
+
+ // Support: IE <=11 only
+ // Make sure textarea (and checkbox) defaultValue is properly cloned
+ div.innerHTML = "<textarea>x</textarea>";
+ support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;
+} )();
+var documentElement = document.documentElement;
+
+
+
+var
+ rkeyEvent = /^key/,
+ rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
+ rtypenamespace = /^([^.]*)(?:\.(.+)|)/;
+
+function returnTrue() {
+ return true;
+}
+
+function returnFalse() {
+ return false;
+}
+
+// Support: IE <=9 only
+// See #13393 for more info
+function safeActiveElement() {
+ try {
+ return document.activeElement;
+ } catch ( err ) { }
+}
+
+function on( elem, types, selector, data, fn, one ) {
+ var origFn, type;
+
+ // Types can be a map of types/handlers
+ if ( typeof types === "object" ) {
+
+ // ( types-Object, selector, data )
+ if ( typeof selector !== "string" ) {
+
+ // ( types-Object, data )
+ data = data || selector;
+ selector = undefined;
+ }
+ for ( type in types ) {
+ on( elem, type, selector, data, types[ type ], one );
+ }
+ return elem;
+ }
+
+ if ( data == null && fn == null ) {
+
+ // ( types, fn )
+ fn = selector;
+ data = selector = undefined;
+ } else if ( fn == null ) {
+ if ( typeof selector === "string" ) {
+
+ // ( types, selector, fn )
+ fn = data;
+ data = undefined;
+ } else {
+
+ // ( types, data, fn )
+ fn = data;
+ data = selector;
+ selector = undefined;
+ }
+ }
+ if ( fn === false ) {
+ fn = returnFalse;
+ } else if ( !fn ) {
+ return elem;
+ }
+
+ if ( one === 1 ) {
+ origFn = fn;
+ fn = function( event ) {
+
+ // Can use an empty set, since event contains the info
+ jQuery().off( event );
+ return origFn.apply( this, arguments );
+ };
+
+ // Use same guid so caller can remove using origFn
+ fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
+ }
+ return elem.each( function() {
+ jQuery.event.add( this, types, fn, data, selector );
+ } );
+}
+
+/*
+ * Helper functions for managing events -- not part of the public interface.
+ * Props to Dean Edwards' addEvent library for many of the ideas.
+ */
+jQuery.event = {
+
+ global: {},
+
+ add: function( elem, types, handler, data, selector ) {
+
+ var handleObjIn, eventHandle, tmp,
+ events, t, handleObj,
+ special, handlers, type, namespaces, origType,
+ elemData = dataPriv.get( elem );
+
+ // Don't attach events to noData or text/comment nodes (but allow plain objects)
+ if ( !elemData ) {
+ return;
+ }
+
+ // Caller can pass in an object of custom data in lieu of the handler
+ if ( handler.handler ) {
+ handleObjIn = handler;
+ handler = handleObjIn.handler;
+ selector = handleObjIn.selector;
+ }
+
+ // Ensure that invalid selectors throw exceptions at attach time
+ // Evaluate against documentElement in case elem is a non-element node (e.g., document)
+ if ( selector ) {
+ jQuery.find.matchesSelector( documentElement, selector );
+ }
+
+ // Make sure that the handler has a unique ID, used to find/remove it later
+ if ( !handler.guid ) {
+ handler.guid = jQuery.guid++;
+ }
+
+ // Init the element's event structure and main handler, if this is the first
+ if ( !( events = elemData.events ) ) {
+ events = elemData.events = {};
+ }
+ if ( !( eventHandle = elemData.handle ) ) {
+ eventHandle = elemData.handle = function( e ) {
+
+ // Discard the second event of a jQuery.event.trigger() and
+ // when an event is called after a page has unloaded
+ return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ?
+ jQuery.event.dispatch.apply( elem, arguments ) : undefined;
+ };
+ }
+
+ // Handle multiple events separated by a space
+ types = ( types || "" ).match( rnotwhite ) || [ "" ];
+ t = types.length;
+ while ( t-- ) {
+ tmp = rtypenamespace.exec( types[ t ] ) || [];
+ type = origType = tmp[ 1 ];
+ namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();
+
+ // There *must* be a type, no attaching namespace-only handlers
+ if ( !type ) {
+ continue;
+ }
+
+ // If event changes its type, use the special event handlers for the changed type
+ special = jQuery.event.special[ type ] || {};
+
+ // If selector defined, determine special event api type, otherwise given type
+ type = ( selector ? special.delegateType : special.bindType ) || type;
+
+ // Update special based on newly reset type
+ special = jQuery.event.special[ type ] || {};
+
+ // handleObj is passed to all event handlers
+ handleObj = jQuery.extend( {
+ type: type,
+ origType: origType,
+ data: data,
+ handler: handler,
+ guid: handler.guid,
+ selector: selector,
+ needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
+ namespace: namespaces.join( "." )
+ }, handleObjIn );
+
+ // Init the event handler queue if we're the first
+ if ( !( handlers = events[ type ] ) ) {
+ handlers = events[ type ] = [];
+ handlers.delegateCount = 0;
+
+ // Only use addEventListener if the special events handler returns false
+ if ( !special.setup ||
+ special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
+
+ if ( elem.addEventListener ) {
+ elem.addEventListener( type, eventHandle );
+ }
+ }
+ }
+
+ if ( special.add ) {
+ special.add.call( elem, handleObj );
+
+ if ( !handleObj.handler.guid ) {
+ handleObj.handler.guid = handler.guid;
+ }
+ }
+
+ // Add to the element's handler list, delegates in front
+ if ( selector ) {
+ handlers.splice( handlers.delegateCount++, 0, handleObj );
+ } else {
+ handlers.push( handleObj );
+ }
+
+ // Keep track of which events have ever been used, for event optimization
+ jQuery.event.global[ type ] = true;
+ }
+
+ },
+
+ // Detach an event or set of events from an element
+ remove: function( elem, types, handler, selector, mappedTypes ) {
+
+ var j, origCount, tmp,
+ events, t, handleObj,
+ special, handlers, type, namespaces, origType,
+ elemData = dataPriv.hasData( elem ) && dataPriv.get( elem );
+
+ if ( !elemData || !( events = elemData.events ) ) {
+ return;
+ }
+
+ // Once for each type.namespace in types; type may be omitted
+ types = ( types || "" ).match( rnotwhite ) || [ "" ];
+ t = types.length;
+ while ( t-- ) {
+ tmp = rtypenamespace.exec( types[ t ] ) || [];
+ type = origType = tmp[ 1 ];
+ namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();
+
+ // Unbind all events (on this namespace, if provided) for the element
+ if ( !type ) {
+ for ( type in events ) {
+ jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
+ }
+ continue;
+ }
+
+ special = jQuery.event.special[ type ] || {};
+ type = ( selector ? special.delegateType : special.bindType ) || type;
+ handlers = events[ type ] || [];
+ tmp = tmp[ 2 ] &&
+ new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" );
+
+ // Remove matching events
+ origCount = j = handlers.length;
+ while ( j-- ) {
+ handleObj = handlers[ j ];
+
+ if ( ( mappedTypes || origType === handleObj.origType ) &&
+ ( !handler || handler.guid === handleObj.guid ) &&
+ ( !tmp || tmp.test( handleObj.namespace ) ) &&
+ ( !selector || selector === handleObj.selector ||
+ selector === "**" && handleObj.selector ) ) {
+ handlers.splice( j, 1 );
+
+ if ( handleObj.selector ) {
+ handlers.delegateCount--;
+ }
+ if ( special.remove ) {
+ special.remove.call( elem, handleObj );
+ }
+ }
+ }
+
+ // Remove generic event handler if we removed something and no more handlers exist
+ // (avoids potential for endless recursion during removal of special event handlers)
+ if ( origCount && !handlers.length ) {
+ if ( !special.teardown ||
+ special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
+
+ jQuery.removeEvent( elem, type, elemData.handle );
+ }
+
+ delete events[ type ];
+ }
+ }
+
+ // Remove data and the expando if it's no longer used
+ if ( jQuery.isEmptyObject( events ) ) {
+ dataPriv.remove( elem, "handle events" );
+ }
+ },
+
+ dispatch: function( nativeEvent ) {
+
+ // Make a writable jQuery.Event from the native event object
+ var event = jQuery.event.fix( nativeEvent );
+
+ var i, j, ret, matched, handleObj, handlerQueue,
+ args = new Array( arguments.length ),
+ handlers = ( dataPriv.get( this, "events" ) || {} )[ event.type ] || [],
+ special = jQuery.event.special[ event.type ] || {};
+
+ // Use the fix-ed jQuery.Event rather than the (read-only) native event
+ args[ 0 ] = event;
+
+ for ( i = 1; i < arguments.length; i++ ) {
+ args[ i ] = arguments[ i ];
+ }
+
+ event.delegateTarget = this;
+
+ // Call the preDispatch hook for the mapped type, and let it bail if desired
+ if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
+ return;
+ }
+
+ // Determine handlers
+ handlerQueue = jQuery.event.handlers.call( this, event, handlers );
+
+ // Run delegates first; they may want to stop propagation beneath us
+ i = 0;
+ while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) {
+ event.currentTarget = matched.elem;
+
+ j = 0;
+ while ( ( handleObj = matched.handlers[ j++ ] ) &&
+ !event.isImmediatePropagationStopped() ) {
+
+ // Triggered event must either 1) have no namespace, or 2) have namespace(s)
+ // a subset or equal to those in the bound event (both can have no namespace).
+ if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) {
+
+ event.handleObj = handleObj;
+ event.data = handleObj.data;
+
+ ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle ||
+ handleObj.handler ).apply( matched.elem, args );
+
+ if ( ret !== undefined ) {
+ if ( ( event.result = ret ) === false ) {
+ event.preventDefault();
+ event.stopPropagation();
+ }
+ }
+ }
+ }
+ }
+
+ // Call the postDispatch hook for the mapped type
+ if ( special.postDispatch ) {
+ special.postDispatch.call( this, event );
+ }
+
+ return event.result;
+ },
+
+ handlers: function( event, handlers ) {
+ var i, matches, sel, handleObj,
+ handlerQueue = [],
+ delegateCount = handlers.delegateCount,
+ cur = event.target;
+
+ // Support: IE <=9
+ // Find delegate handlers
+ // Black-hole SVG <use> instance trees (#13180)
+ //
+ // Support: Firefox <=42
+ // Avoid non-left-click in FF but don't block IE radio events (#3861, gh-2343)
+ if ( delegateCount && cur.nodeType &&
+ ( event.type !== "click" || isNaN( event.button ) || event.button < 1 ) ) {
+
+ for ( ; cur !== this; cur = cur.parentNode || this ) {
+
+ // Don't check non-elements (#13208)
+ // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)
+ if ( cur.nodeType === 1 && ( cur.disabled !== true || event.type !== "click" ) ) {
+ matches = [];
+ for ( i = 0; i < delegateCount; i++ ) {
+ handleObj = handlers[ i ];
+
+ // Don't conflict with Object.prototype properties (#13203)
+ sel = handleObj.selector + " ";
+
+ if ( matches[ sel ] === undefined ) {
+ matches[ sel ] = handleObj.needsContext ?
+ jQuery( sel, this ).index( cur ) > -1 :
+ jQuery.find( sel, this, null, [ cur ] ).length;
+ }
+ if ( matches[ sel ] ) {
+ matches.push( handleObj );
+ }
+ }
+ if ( matches.length ) {
+ handlerQueue.push( { elem: cur, handlers: matches } );
+ }
+ }
+ }
+ }
+
+ // Add the remaining (directly-bound) handlers
+ if ( delegateCount < handlers.length ) {
+ handlerQueue.push( { elem: this, handlers: handlers.slice( delegateCount ) } );
+ }
+
+ return handlerQueue;
+ },
+
+ addProp: function( name, hook ) {
+ Object.defineProperty( jQuery.Event.prototype, name, {
+ enumerable: true,
+ configurable: true,
+
+ get: jQuery.isFunction( hook ) ?
+ function() {
+ if ( this.originalEvent ) {
+ return hook( this.originalEvent );
+ }
+ } :
+ function() {
+ if ( this.originalEvent ) {
+ return this.originalEvent[ name ];
+ }
+ },
+
+ set: function( value ) {
+ Object.defineProperty( this, name, {
+ enumerable: true,
+ configurable: true,
+ writable: true,
+ value: value
+ } );
+ }
+ } );
+ },
+
+ fix: function( originalEvent ) {
+ return originalEvent[ jQuery.expando ] ?
+ originalEvent :
+ new jQuery.Event( originalEvent );
+ },
+
+ special: {
+ load: {
+
+ // Prevent triggered image.load events from bubbling to window.load
+ noBubble: true
+ },
+ focus: {
+
+ // Fire native event if possible so blur/focus sequence is correct
+ trigger: function() {
+ if ( this !== safeActiveElement() && this.focus ) {
+ this.focus();
+ return false;
+ }
+ },
+ delegateType: "focusin"
+ },
+ blur: {
+ trigger: function() {
+ if ( this === safeActiveElement() && this.blur ) {
+ this.blur();
+ return false;
+ }
+ },
+ delegateType: "focusout"
+ },
+ click: {
+
+ // For checkbox, fire native event so checked state will be right
+ trigger: function() {
+ if ( this.type === "checkbox" && this.click && jQuery.nodeName( this, "input" ) ) {
+ this.click();
+ return false;
+ }
+ },
+
+ // For cross-browser consistency, don't fire native .click() on links
+ _default: function( event ) {
+ return jQuery.nodeName( event.target, "a" );
+ }
+ },
+
+ beforeunload: {
+ postDispatch: function( event ) {
+
+ // Support: Firefox 20+
+ // Firefox doesn't alert if the returnValue field is not set.
+ if ( event.result !== undefined && event.originalEvent ) {
+ event.originalEvent.returnValue = event.result;
+ }
+ }
+ }
+ }
+};
+
+jQuery.removeEvent = function( elem, type, handle ) {
+
+ // This "if" is needed for plain objects
+ if ( elem.removeEventListener ) {
+ elem.removeEventListener( type, handle );
+ }
+};
+
+jQuery.Event = function( src, props ) {
+
+ // Allow instantiation without the 'new' keyword
+ if ( !( this instanceof jQuery.Event ) ) {
+ return new jQuery.Event( src, props );
+ }
+
+ // Event object
+ if ( src && src.type ) {
+ this.originalEvent = src;
+ this.type = src.type;
+
+ // Events bubbling up the document may have been marked as prevented
+ // by a handler lower down the tree; reflect the correct value.
+ this.isDefaultPrevented = src.defaultPrevented ||
+ src.defaultPrevented === undefined &&
+
+ // Support: Android <=2.3 only
+ src.returnValue === false ?
+ returnTrue :
+ returnFalse;
+
+ // Create target properties
+ // Support: Safari <=6 - 7 only
+ // Target should not be a text node (#504, #13143)
+ this.target = ( src.target && src.target.nodeType === 3 ) ?
+ src.target.parentNode :
+ src.target;
+
+ this.currentTarget = src.currentTarget;
+ this.relatedTarget = src.relatedTarget;
+
+ // Event type
+ } else {
+ this.type = src;
+ }
+
+ // Put explicitly provided properties onto the event object
+ if ( props ) {
+ jQuery.extend( this, props );
+ }
+
+ // Create a timestamp if incoming event doesn't have one
+ this.timeStamp = src && src.timeStamp || jQuery.now();
+
+ // Mark it as fixed
+ this[ jQuery.expando ] = true;
+};
+
+// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
+// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
+jQuery.Event.prototype = {
+ constructor: jQuery.Event,
+ isDefaultPrevented: returnFalse,
+ isPropagationStopped: returnFalse,
+ isImmediatePropagationStopped: returnFalse,
+ isSimulated: false,
+
+ preventDefault: function() {
+ var e = this.originalEvent;
+
+ this.isDefaultPrevented = returnTrue;
+
+ if ( e && !this.isSimulated ) {
+ e.preventDefault();
+ }
+ },
+ stopPropagation: function() {
+ var e = this.originalEvent;
+
+ this.isPropagationStopped = returnTrue;
+
+ if ( e && !this.isSimulated ) {
+ e.stopPropagation();
+ }
+ },
+ stopImmediatePropagation: function() {
+ var e = this.originalEvent;
+
+ this.isImmediatePropagationStopped = returnTrue;
+
+ if ( e && !this.isSimulated ) {
+ e.stopImmediatePropagation();
+ }
+
+ this.stopPropagation();
+ }
+};
+
+// Includes all common event props including KeyEvent and MouseEvent specific props
+jQuery.each( {
+ altKey: true,
+ bubbles: true,
+ cancelable: true,
+ changedTouches: true,
+ ctrlKey: true,
+ detail: true,
+ eventPhase: true,
+ metaKey: true,
+ pageX: true,
+ pageY: true,
+ shiftKey: true,
+ view: true,
+ "char": true,
+ charCode: true,
+ key: true,
+ keyCode: true,
+ button: true,
+ buttons: true,
+ clientX: true,
+ clientY: true,
+ offsetX: true,
+ offsetY: true,
+ pointerId: true,
+ pointerType: true,
+ screenX: true,
+ screenY: true,
+ targetTouches: true,
+ toElement: true,
+ touches: true,
+
+ which: function( event ) {
+ var button = event.button;
+
+ // Add which for key events
+ if ( event.which == null && rkeyEvent.test( event.type ) ) {
+ return event.charCode != null ? event.charCode : event.keyCode;
+ }
+
+ // Add which for click: 1 === left; 2 === middle; 3 === right
+ if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) {
+ return ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );
+ }
+
+ return event.which;
+ }
+}, jQuery.event.addProp );
+
+// Create mouseenter/leave events using mouseover/out and event-time checks
+// so that event delegation works in jQuery.
+// Do the same for pointerenter/pointerleave and pointerover/pointerout
+//
+// Support: Safari 7 only
+// Safari sends mouseenter too often; see:
+// https://bugs.chromium.org/p/chromium/issues/detail?id=470258
+// for the description of the bug (it existed in older Chrome versions as well).
+jQuery.each( {
+ mouseenter: "mouseover",
+ mouseleave: "mouseout",
+ pointerenter: "pointerover",
+ pointerleave: "pointerout"
+}, function( orig, fix ) {
+ jQuery.event.special[ orig ] = {
+ delegateType: fix,
+ bindType: fix,
+
+ handle: function( event ) {
+ var ret,
+ target = this,
+ related = event.relatedTarget,
+ handleObj = event.handleObj;
+
+ // For mouseenter/leave call the handler if related is outside the target.
+ // NB: No relatedTarget if the mouse left/entered the browser window
+ if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) {
+ event.type = handleObj.origType;
+ ret = handleObj.handler.apply( this, arguments );
+ event.type = fix;
+ }
+ return ret;
+ }
+ };
+} );
+
+jQuery.fn.extend( {
+
+ on: function( types, selector, data, fn ) {
+ return on( this, types, selector, data, fn );
+ },
+ one: function( types, selector, data, fn ) {
+ return on( this, types, selector, data, fn, 1 );
+ },
+ off: function( types, selector, fn ) {
+ var handleObj, type;
+ if ( types && types.preventDefault && types.handleObj ) {
+
+ // ( event ) dispatched jQuery.Event
+ handleObj = types.handleObj;
+ jQuery( types.delegateTarget ).off(
+ handleObj.namespace ?
+ handleObj.origType + "." + handleObj.namespace :
+ handleObj.origType,
+ handleObj.selector,
+ handleObj.handler
+ );
+ return this;
+ }
+ if ( typeof types === "object" ) {
+
+ // ( types-object [, selector] )
+ for ( type in types ) {
+ this.off( type, selector, types[ type ] );
+ }
+ return this;
+ }
+ if ( selector === false || typeof selector === "function" ) {
+
+ // ( types [, fn] )
+ fn = selector;
+ selector = undefined;
+ }
+ if ( fn === false ) {
+ fn = returnFalse;
+ }
+ return this.each( function() {
+ jQuery.event.remove( this, types, fn, selector );
+ } );
+ }
+} );
+
+
+var
+
+ /* eslint-disable max-len */
+
+ // See https://github.com/eslint/eslint/issues/3229
+ rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
+
+ /* eslint-enable */
+
+ // Support: IE <=10 - 11, Edge 12 - 13
+ // In IE/Edge using regex groups here causes severe slowdowns.
+ // See https://connect.microsoft.com/IE/feedback/details/1736512/
+ rnoInnerhtml = /<script|<style|<link/i,
+
+ // checked="checked" or checked
+ rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
+ rscriptTypeMasked = /^true\/(.*)/,
+ rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
+
+function manipulationTarget( elem, content ) {
+ if ( jQuery.nodeName( elem, "table" ) &&
+ jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) {
+
+ return elem.getElementsByTagName( "tbody" )[ 0 ] || elem;
+ }
+
+ return elem;
+}
+
+// Replace/restore the type attribute of script elements for safe DOM manipulation
+function disableScript( elem ) {
+ elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type;
+ return elem;
+}
+function restoreScript( elem ) {
+ var match = rscriptTypeMasked.exec( elem.type );
+
+ if ( match ) {
+ elem.type = match[ 1 ];
+ } else {
+ elem.removeAttribute( "type" );
+ }
+
+ return elem;
+}
+
+function cloneCopyEvent( src, dest ) {
+ var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events;
+
+ if ( dest.nodeType !== 1 ) {
+ return;
+ }
+
+ // 1. Copy private data: events, handlers, etc.
+ if ( dataPriv.hasData( src ) ) {
+ pdataOld = dataPriv.access( src );
+ pdataCur = dataPriv.set( dest, pdataOld );
+ events = pdataOld.events;
+
+ if ( events ) {
+ delete pdataCur.handle;
+ pdataCur.events = {};
+
+ for ( type in events ) {
+ for ( i = 0, l = events[ type ].length; i < l; i++ ) {
+ jQuery.event.add( dest, type, events[ type ][ i ] );
+ }
+ }
+ }
+ }
+
+ // 2. Copy user data
+ if ( dataUser.hasData( src ) ) {
+ udataOld = dataUser.access( src );
+ udataCur = jQuery.extend( {}, udataOld );
+
+ dataUser.set( dest, udataCur );
+ }
+}
+
+// Fix IE bugs, see support tests
+function fixInput( src, dest ) {
+ var nodeName = dest.nodeName.toLowerCase();
+
+ // Fails to persist the checked state of a cloned checkbox or radio button.
+ if ( nodeName === "input" && rcheckableType.test( src.type ) ) {
+ dest.checked = src.checked;
+
+ // Fails to return the selected option to the default selected state when cloning options
+ } else if ( nodeName === "input" || nodeName === "textarea" ) {
+ dest.defaultValue = src.defaultValue;
+ }
+}
+
+function domManip( collection, args, callback, ignored ) {
+
+ // Flatten any nested arrays
+ args = concat.apply( [], args );
+
+ var fragment, first, scripts, hasScripts, node, doc,
+ i = 0,
+ l = collection.length,
+ iNoClone = l - 1,
+ value = args[ 0 ],
+ isFunction = jQuery.isFunction( value );
+
+ // We can't cloneNode fragments that contain checked, in WebKit
+ if ( isFunction ||
+ ( l > 1 && typeof value === "string" &&
+ !support.checkClone && rchecked.test( value ) ) ) {
+ return collection.each( function( index ) {
+ var self = collection.eq( index );
+ if ( isFunction ) {
+ args[ 0 ] = value.call( this, index, self.html() );
+ }
+ domManip( self, args, callback, ignored );
+ } );
+ }
+
+ if ( l ) {
+ fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored );
+ first = fragment.firstChild;
+
+ if ( fragment.childNodes.length === 1 ) {
+ fragment = first;
+ }
+
+ // Require either new content or an interest in ignored elements to invoke the callback
+ if ( first || ignored ) {
+ scripts = jQuery.map( getAll( fragment, "script" ), disableScript );
+ hasScripts = scripts.length;
+
+ // Use the original fragment for the last item
+ // instead of the first because it can end up
+ // being emptied incorrectly in certain situations (#8070).
+ for ( ; i < l; i++ ) {
+ node = fragment;
+
+ if ( i !== iNoClone ) {
+ node = jQuery.clone( node, true, true );
+
+ // Keep references to cloned scripts for later restoration
+ if ( hasScripts ) {
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // push.apply(_, arraylike) throws on ancient WebKit
+ jQuery.merge( scripts, getAll( node, "script" ) );
+ }
+ }
+
+ callback.call( collection[ i ], node, i );
+ }
+
+ if ( hasScripts ) {
+ doc = scripts[ scripts.length - 1 ].ownerDocument;
+
+ // Reenable scripts
+ jQuery.map( scripts, restoreScript );
+
+ // Evaluate executable scripts on first document insertion
+ for ( i = 0; i < hasScripts; i++ ) {
+ node = scripts[ i ];
+ if ( rscriptType.test( node.type || "" ) &&
+ !dataPriv.access( node, "globalEval" ) &&
+ jQuery.contains( doc, node ) ) {
+
+ if ( node.src ) {
+
+ // Optional AJAX dependency, but won't run scripts if not present
+ if ( jQuery._evalUrl ) {
+ jQuery._evalUrl( node.src );
+ }
+ } else {
+ DOMEval( node.textContent.replace( rcleanScript, "" ), doc );
+ }
+ }
+ }
+ }
+ }
+ }
+
+ return collection;
+}
+
+function remove( elem, selector, keepData ) {
+ var node,
+ nodes = selector ? jQuery.filter( selector, elem ) : elem,
+ i = 0;
+
+ for ( ; ( node = nodes[ i ] ) != null; i++ ) {
+ if ( !keepData && node.nodeType === 1 ) {
+ jQuery.cleanData( getAll( node ) );
+ }
+
+ if ( node.parentNode ) {
+ if ( keepData && jQuery.contains( node.ownerDocument, node ) ) {
+ setGlobalEval( getAll( node, "script" ) );
+ }
+ node.parentNode.removeChild( node );
+ }
+ }
+
+ return elem;
+}
+
+jQuery.extend( {
+ htmlPrefilter: function( html ) {
+ return html.replace( rxhtmlTag, "<$1></$2>" );
+ },
+
+ clone: function( elem, dataAndEvents, deepDataAndEvents ) {
+ var i, l, srcElements, destElements,
+ clone = elem.cloneNode( true ),
+ inPage = jQuery.contains( elem.ownerDocument, elem );
+
+ // Fix IE cloning issues
+ if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&
+ !jQuery.isXMLDoc( elem ) ) {
+
+ // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2
+ destElements = getAll( clone );
+ srcElements = getAll( elem );
+
+ for ( i = 0, l = srcElements.length; i < l; i++ ) {
+ fixInput( srcElements[ i ], destElements[ i ] );
+ }
+ }
+
+ // Copy the events from the original to the clone
+ if ( dataAndEvents ) {
+ if ( deepDataAndEvents ) {
+ srcElements = srcElements || getAll( elem );
+ destElements = destElements || getAll( clone );
+
+ for ( i = 0, l = srcElements.length; i < l; i++ ) {
+ cloneCopyEvent( srcElements[ i ], destElements[ i ] );
+ }
+ } else {
+ cloneCopyEvent( elem, clone );
+ }
+ }
+
+ // Preserve script evaluation history
+ destElements = getAll( clone, "script" );
+ if ( destElements.length > 0 ) {
+ setGlobalEval( destElements, !inPage && getAll( elem, "script" ) );
+ }
+
+ // Return the cloned set
+ return clone;
+ },
+
+ cleanData: function( elems ) {
+ var data, elem, type,
+ special = jQuery.event.special,
+ i = 0;
+
+ for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) {
+ if ( acceptData( elem ) ) {
+ if ( ( data = elem[ dataPriv.expando ] ) ) {
+ if ( data.events ) {
+ for ( type in data.events ) {
+ if ( special[ type ] ) {
+ jQuery.event.remove( elem, type );
+
+ // This is a shortcut to avoid jQuery.event.remove's overhead
+ } else {
+ jQuery.removeEvent( elem, type, data.handle );
+ }
+ }
+ }
+
+ // Support: Chrome <=35 - 45+
+ // Assign undefined instead of using delete, see Data#remove
+ elem[ dataPriv.expando ] = undefined;
+ }
+ if ( elem[ dataUser.expando ] ) {
+
+ // Support: Chrome <=35 - 45+
+ // Assign undefined instead of using delete, see Data#remove
+ elem[ dataUser.expando ] = undefined;
+ }
+ }
+ }
+ }
+} );
+
+jQuery.fn.extend( {
+ detach: function( selector ) {
+ return remove( this, selector, true );
+ },
+
+ remove: function( selector ) {
+ return remove( this, selector );
+ },
+
+ text: function( value ) {
+ return access( this, function( value ) {
+ return value === undefined ?
+ jQuery.text( this ) :
+ this.empty().each( function() {
+ if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+ this.textContent = value;
+ }
+ } );
+ }, null, value, arguments.length );
+ },
+
+ append: function() {
+ return domManip( this, arguments, function( elem ) {
+ if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+ var target = manipulationTarget( this, elem );
+ target.appendChild( elem );
+ }
+ } );
+ },
+
+ prepend: function() {
+ return domManip( this, arguments, function( elem ) {
+ if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
+ var target = manipulationTarget( this, elem );
+ target.insertBefore( elem, target.firstChild );
+ }
+ } );
+ },
+
+ before: function() {
+ return domManip( this, arguments, function( elem ) {
+ if ( this.parentNode ) {
+ this.parentNode.insertBefore( elem, this );
+ }
+ } );
+ },
+
+ after: function() {
+ return domManip( this, arguments, function( elem ) {
+ if ( this.parentNode ) {
+ this.parentNode.insertBefore( elem, this.nextSibling );
+ }
+ } );
+ },
+
+ empty: function() {
+ var elem,
+ i = 0;
+
+ for ( ; ( elem = this[ i ] ) != null; i++ ) {
+ if ( elem.nodeType === 1 ) {
+
+ // Prevent memory leaks
+ jQuery.cleanData( getAll( elem, false ) );
+
+ // Remove any remaining nodes
+ elem.textContent = "";
+ }
+ }
+
+ return this;
+ },
+
+ clone: function( dataAndEvents, deepDataAndEvents ) {
+ dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
+ deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
+
+ return this.map( function() {
+ return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
+ } );
+ },
+
+ html: function( value ) {
+ return access( this, function( value ) {
+ var elem = this[ 0 ] || {},
+ i = 0,
+ l = this.length;
+
+ if ( value === undefined && elem.nodeType === 1 ) {
+ return elem.innerHTML;
+ }
+
+ // See if we can take a shortcut and just use innerHTML
+ if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
+ !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) {
+
+ value = jQuery.htmlPrefilter( value );
+
+ try {
+ for ( ; i < l; i++ ) {
+ elem = this[ i ] || {};
+
+ // Remove element nodes and prevent memory leaks
+ if ( elem.nodeType === 1 ) {
+ jQuery.cleanData( getAll( elem, false ) );
+ elem.innerHTML = value;
+ }
+ }
+
+ elem = 0;
+
+ // If using innerHTML throws an exception, use the fallback method
+ } catch ( e ) {}
+ }
+
+ if ( elem ) {
+ this.empty().append( value );
+ }
+ }, null, value, arguments.length );
+ },
+
+ replaceWith: function() {
+ var ignored = [];
+
+ // Make the changes, replacing each non-ignored context element with the new content
+ return domManip( this, arguments, function( elem ) {
+ var parent = this.parentNode;
+
+ if ( jQuery.inArray( this, ignored ) < 0 ) {
+ jQuery.cleanData( getAll( this ) );
+ if ( parent ) {
+ parent.replaceChild( elem, this );
+ }
+ }
+
+ // Force callback invocation
+ }, ignored );
+ }
+} );
+
+jQuery.each( {
+ appendTo: "append",
+ prependTo: "prepend",
+ insertBefore: "before",
+ insertAfter: "after",
+ replaceAll: "replaceWith"
+}, function( name, original ) {
+ jQuery.fn[ name ] = function( selector ) {
+ var elems,
+ ret = [],
+ insert = jQuery( selector ),
+ last = insert.length - 1,
+ i = 0;
+
+ for ( ; i <= last; i++ ) {
+ elems = i === last ? this : this.clone( true );
+ jQuery( insert[ i ] )[ original ]( elems );
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // .get() because push.apply(_, arraylike) throws on ancient WebKit
+ push.apply( ret, elems.get() );
+ }
+
+ return this.pushStack( ret );
+ };
+} );
+var rmargin = ( /^margin/ );
+
+var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" );
+
+var getStyles = function( elem ) {
+
+ // Support: IE <=11 only, Firefox <=30 (#15098, #14150)
+ // IE throws on elements created in popups
+ // FF meanwhile throws on frame elements through "defaultView.getComputedStyle"
+ var view = elem.ownerDocument.defaultView;
+
+ if ( !view || !view.opener ) {
+ view = window;
+ }
+
+ return view.getComputedStyle( elem );
+ };
+
+
+
+( function() {
+
+ // Executing both pixelPosition & boxSizingReliable tests require only one layout
+ // so they're executed at the same time to save the second computation.
+ function computeStyleTests() {
+
+ // This is a singleton, we need to execute it only once
+ if ( !div ) {
+ return;
+ }
+
+ div.style.cssText =
+ "box-sizing:border-box;" +
+ "position:relative;display:block;" +
+ "margin:auto;border:1px;padding:1px;" +
+ "top:1%;width:50%";
+ div.innerHTML = "";
+ documentElement.appendChild( container );
+
+ var divStyle = window.getComputedStyle( div );
+ pixelPositionVal = divStyle.top !== "1%";
+
+ // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44
+ reliableMarginLeftVal = divStyle.marginLeft === "2px";
+ boxSizingReliableVal = divStyle.width === "4px";
+
+ // Support: Android 4.0 - 4.3 only
+ // Some styles come back with percentage values, even though they shouldn't
+ div.style.marginRight = "50%";
+ pixelMarginRightVal = divStyle.marginRight === "4px";
+
+ documentElement.removeChild( container );
+
+ // Nullify the div so it wouldn't be stored in the memory and
+ // it will also be a sign that checks already performed
+ div = null;
+ }
+
+ var pixelPositionVal, boxSizingReliableVal, pixelMarginRightVal, reliableMarginLeftVal,
+ container = document.createElement( "div" ),
+ div = document.createElement( "div" );
+
+ // Finish early in limited (non-browser) environments
+ if ( !div.style ) {
+ return;
+ }
+
+ // Support: IE <=9 - 11 only
+ // Style of cloned element affects source element cloned (#8908)
+ div.style.backgroundClip = "content-box";
+ div.cloneNode( true ).style.backgroundClip = "";
+ support.clearCloneStyle = div.style.backgroundClip === "content-box";
+
+ container.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;" +
+ "padding:0;margin-top:1px;position:absolute";
+ container.appendChild( div );
+
+ jQuery.extend( support, {
+ pixelPosition: function() {
+ computeStyleTests();
+ return pixelPositionVal;
+ },
+ boxSizingReliable: function() {
+ computeStyleTests();
+ return boxSizingReliableVal;
+ },
+ pixelMarginRight: function() {
+ computeStyleTests();
+ return pixelMarginRightVal;
+ },
+ reliableMarginLeft: function() {
+ computeStyleTests();
+ return reliableMarginLeftVal;
+ }
+ } );
+} )();
+
+
+function curCSS( elem, name, computed ) {
+ var width, minWidth, maxWidth, ret,
+ style = elem.style;
+
+ computed = computed || getStyles( elem );
+
+ // Support: IE <=9 only
+ // getPropertyValue is only needed for .css('filter') (#12537)
+ if ( computed ) {
+ ret = computed.getPropertyValue( name ) || computed[ name ];
+
+ if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) {
+ ret = jQuery.style( elem, name );
+ }
+
+ // A tribute to the "awesome hack by Dean Edwards"
+ // Android Browser returns percentage for some values,
+ // but width seems to be reliably pixels.
+ // This is against the CSSOM draft spec:
+ // https://drafts.csswg.org/cssom/#resolved-values
+ if ( !support.pixelMarginRight() && rnumnonpx.test( ret ) && rmargin.test( name ) ) {
+
+ // Remember the original values
+ width = style.width;
+ minWidth = style.minWidth;
+ maxWidth = style.maxWidth;
+
+ // Put in the new values to get a computed value out
+ style.minWidth = style.maxWidth = style.width = ret;
+ ret = computed.width;
+
+ // Revert the changed values
+ style.width = width;
+ style.minWidth = minWidth;
+ style.maxWidth = maxWidth;
+ }
+ }
+
+ return ret !== undefined ?
+
+ // Support: IE <=9 - 11 only
+ // IE returns zIndex value as an integer.
+ ret + "" :
+ ret;
+}
+
+
+function addGetHookIf( conditionFn, hookFn ) {
+
+ // Define the hook, we'll check on the first run if it's really needed.
+ return {
+ get: function() {
+ if ( conditionFn() ) {
+
+ // Hook not needed (or it's not possible to use it due
+ // to missing dependency), remove it.
+ delete this.get;
+ return;
+ }
+
+ // Hook needed; redefine it so that the support test is not executed again.
+ return ( this.get = hookFn ).apply( this, arguments );
+ }
+ };
+}
+
+
+var
+
+ // Swappable if display is none or starts with table
+ // except "table", "table-cell", or "table-caption"
+ // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
+ rdisplayswap = /^(none|table(?!-c[ea]).+)/,
+ cssShow = { position: "absolute", visibility: "hidden", display: "block" },
+ cssNormalTransform = {
+ letterSpacing: "0",
+ fontWeight: "400"
+ },
+
+ cssPrefixes = [ "Webkit", "Moz", "ms" ],
+ emptyStyle = document.createElement( "div" ).style;
+
+// Return a css property mapped to a potentially vendor prefixed property
+function vendorPropName( name ) {
+
+ // Shortcut for names that are not vendor prefixed
+ if ( name in emptyStyle ) {
+ return name;
+ }
+
+ // Check for vendor prefixed names
+ var capName = name[ 0 ].toUpperCase() + name.slice( 1 ),
+ i = cssPrefixes.length;
+
+ while ( i-- ) {
+ name = cssPrefixes[ i ] + capName;
+ if ( name in emptyStyle ) {
+ return name;
+ }
+ }
+}
+
+function setPositiveNumber( elem, value, subtract ) {
+
+ // Any relative (+/-) values have already been
+ // normalized at this point
+ var matches = rcssNum.exec( value );
+ return matches ?
+
+ // Guard against undefined "subtract", e.g., when used as in cssHooks
+ Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) :
+ value;
+}
+
+function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
+ var i = extra === ( isBorderBox ? "border" : "content" ) ?
+
+ // If we already have the right measurement, avoid augmentation
+ 4 :
+
+ // Otherwise initialize for horizontal or vertical properties
+ name === "width" ? 1 : 0,
+
+ val = 0;
+
+ for ( ; i < 4; i += 2 ) {
+
+ // Both box models exclude margin, so add it if we want it
+ if ( extra === "margin" ) {
+ val += jQuery.css( elem, extra + cssExpand[ i ], true, styles );
+ }
+
+ if ( isBorderBox ) {
+
+ // border-box includes padding, so remove it if we want content
+ if ( extra === "content" ) {
+ val -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
+ }
+
+ // At this point, extra isn't border nor margin, so remove border
+ if ( extra !== "margin" ) {
+ val -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
+ }
+ } else {
+
+ // At this point, extra isn't content, so add padding
+ val += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
+
+ // At this point, extra isn't content nor padding, so add border
+ if ( extra !== "padding" ) {
+ val += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
+ }
+ }
+ }
+
+ return val;
+}
+
+function getWidthOrHeight( elem, name, extra ) {
+
+ // Start with offset property, which is equivalent to the border-box value
+ var val,
+ valueIsBorderBox = true,
+ styles = getStyles( elem ),
+ isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box";
+
+ // Support: IE <=11 only
+ // Running getBoundingClientRect on a disconnected node
+ // in IE throws an error.
+ if ( elem.getClientRects().length ) {
+ val = elem.getBoundingClientRect()[ name ];
+ }
+
+ // Some non-html elements return undefined for offsetWidth, so check for null/undefined
+ // svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285
+ // MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668
+ if ( val <= 0 || val == null ) {
+
+ // Fall back to computed then uncomputed css if necessary
+ val = curCSS( elem, name, styles );
+ if ( val < 0 || val == null ) {
+ val = elem.style[ name ];
+ }
+
+ // Computed unit is not pixels. Stop here and return.
+ if ( rnumnonpx.test( val ) ) {
+ return val;
+ }
+
+ // Check for style in case a browser which returns unreliable values
+ // for getComputedStyle silently falls back to the reliable elem.style
+ valueIsBorderBox = isBorderBox &&
+ ( support.boxSizingReliable() || val === elem.style[ name ] );
+
+ // Normalize "", auto, and prepare for extra
+ val = parseFloat( val ) || 0;
+ }
+
+ // Use the active box-sizing model to add/subtract irrelevant styles
+ return ( val +
+ augmentWidthOrHeight(
+ elem,
+ name,
+ extra || ( isBorderBox ? "border" : "content" ),
+ valueIsBorderBox,
+ styles
+ )
+ ) + "px";
+}
+
+jQuery.extend( {
+
+ // Add in style property hooks for overriding the default
+ // behavior of getting and setting a style property
+ cssHooks: {
+ opacity: {
+ get: function( elem, computed ) {
+ if ( computed ) {
+
+ // We should always get a number back from opacity
+ var ret = curCSS( elem, "opacity" );
+ return ret === "" ? "1" : ret;
+ }
+ }
+ }
+ },
+
+ // Don't automatically add "px" to these possibly-unitless properties
+ cssNumber: {
+ "animationIterationCount": true,
+ "columnCount": true,
+ "fillOpacity": true,
+ "flexGrow": true,
+ "flexShrink": true,
+ "fontWeight": true,
+ "lineHeight": true,
+ "opacity": true,
+ "order": true,
+ "orphans": true,
+ "widows": true,
+ "zIndex": true,
+ "zoom": true
+ },
+
+ // Add in properties whose names you wish to fix before
+ // setting or getting the value
+ cssProps: {
+ "float": "cssFloat"
+ },
+
+ // Get and set the style property on a DOM Node
+ style: function( elem, name, value, extra ) {
+
+ // Don't set styles on text and comment nodes
+ if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
+ return;
+ }
+
+ // Make sure that we're working with the right name
+ var ret, type, hooks,
+ origName = jQuery.camelCase( name ),
+ style = elem.style;
+
+ name = jQuery.cssProps[ origName ] ||
+ ( jQuery.cssProps[ origName ] = vendorPropName( origName ) || origName );
+
+ // Gets hook for the prefixed version, then unprefixed version
+ hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+ // Check if we're setting a value
+ if ( value !== undefined ) {
+ type = typeof value;
+
+ // Convert "+=" or "-=" to relative numbers (#7345)
+ if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) {
+ value = adjustCSS( elem, name, ret );
+
+ // Fixes bug #9237
+ type = "number";
+ }
+
+ // Make sure that null and NaN values aren't set (#7116)
+ if ( value == null || value !== value ) {
+ return;
+ }
+
+ // If a number was passed in, add the unit (except for certain CSS properties)
+ if ( type === "number" ) {
+ value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" );
+ }
+
+ // background-* props affect original clone's values
+ if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) {
+ style[ name ] = "inherit";
+ }
+
+ // If a hook was provided, use that value, otherwise just set the specified value
+ if ( !hooks || !( "set" in hooks ) ||
+ ( value = hooks.set( elem, value, extra ) ) !== undefined ) {
+
+ style[ name ] = value;
+ }
+
+ } else {
+
+ // If a hook was provided get the non-computed value from there
+ if ( hooks && "get" in hooks &&
+ ( ret = hooks.get( elem, false, extra ) ) !== undefined ) {
+
+ return ret;
+ }
+
+ // Otherwise just get the value from the style object
+ return style[ name ];
+ }
+ },
+
+ css: function( elem, name, extra, styles ) {
+ var val, num, hooks,
+ origName = jQuery.camelCase( name );
+
+ // Make sure that we're working with the right name
+ name = jQuery.cssProps[ origName ] ||
+ ( jQuery.cssProps[ origName ] = vendorPropName( origName ) || origName );
+
+ // Try prefixed name followed by the unprefixed name
+ hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
+
+ // If a hook was provided get the computed value from there
+ if ( hooks && "get" in hooks ) {
+ val = hooks.get( elem, true, extra );
+ }
+
+ // Otherwise, if a way to get the computed value exists, use that
+ if ( val === undefined ) {
+ val = curCSS( elem, name, styles );
+ }
+
+ // Convert "normal" to computed value
+ if ( val === "normal" && name in cssNormalTransform ) {
+ val = cssNormalTransform[ name ];
+ }
+
+ // Make numeric if forced or a qualifier was provided and val looks numeric
+ if ( extra === "" || extra ) {
+ num = parseFloat( val );
+ return extra === true || isFinite( num ) ? num || 0 : val;
+ }
+ return val;
+ }
+} );
+
+jQuery.each( [ "height", "width" ], function( i, name ) {
+ jQuery.cssHooks[ name ] = {
+ get: function( elem, computed, extra ) {
+ if ( computed ) {
+
+ // Certain elements can have dimension info if we invisibly show them
+ // but it must have a current display style that would benefit
+ return rdisplayswap.test( jQuery.css( elem, "display" ) ) &&
+
+ // Support: Safari 8+
+ // Table columns in Safari have non-zero offsetWidth & zero
+ // getBoundingClientRect().width unless display is changed.
+ // Support: IE <=11 only
+ // Running getBoundingClientRect on a disconnected node
+ // in IE throws an error.
+ ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ?
+ swap( elem, cssShow, function() {
+ return getWidthOrHeight( elem, name, extra );
+ } ) :
+ getWidthOrHeight( elem, name, extra );
+ }
+ },
+
+ set: function( elem, value, extra ) {
+ var matches,
+ styles = extra && getStyles( elem ),
+ subtract = extra && augmentWidthOrHeight(
+ elem,
+ name,
+ extra,
+ jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
+ styles
+ );
+
+ // Convert to pixels if value adjustment is needed
+ if ( subtract && ( matches = rcssNum.exec( value ) ) &&
+ ( matches[ 3 ] || "px" ) !== "px" ) {
+
+ elem.style[ name ] = value;
+ value = jQuery.css( elem, name );
+ }
+
+ return setPositiveNumber( elem, value, subtract );
+ }
+ };
+} );
+
+jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft,
+ function( elem, computed ) {
+ if ( computed ) {
+ return ( parseFloat( curCSS( elem, "marginLeft" ) ) ||
+ elem.getBoundingClientRect().left -
+ swap( elem, { marginLeft: 0 }, function() {
+ return elem.getBoundingClientRect().left;
+ } )
+ ) + "px";
+ }
+ }
+);
+
+// These hooks are used by animate to expand properties
+jQuery.each( {
+ margin: "",
+ padding: "",
+ border: "Width"
+}, function( prefix, suffix ) {
+ jQuery.cssHooks[ prefix + suffix ] = {
+ expand: function( value ) {
+ var i = 0,
+ expanded = {},
+
+ // Assumes a single number if not a string
+ parts = typeof value === "string" ? value.split( " " ) : [ value ];
+
+ for ( ; i < 4; i++ ) {
+ expanded[ prefix + cssExpand[ i ] + suffix ] =
+ parts[ i ] || parts[ i - 2 ] || parts[ 0 ];
+ }
+
+ return expanded;
+ }
+ };
+
+ if ( !rmargin.test( prefix ) ) {
+ jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;
+ }
+} );
+
+jQuery.fn.extend( {
+ css: function( name, value ) {
+ return access( this, function( elem, name, value ) {
+ var styles, len,
+ map = {},
+ i = 0;
+
+ if ( jQuery.isArray( name ) ) {
+ styles = getStyles( elem );
+ len = name.length;
+
+ for ( ; i < len; i++ ) {
+ map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );
+ }
+
+ return map;
+ }
+
+ return value !== undefined ?
+ jQuery.style( elem, name, value ) :
+ jQuery.css( elem, name );
+ }, name, value, arguments.length > 1 );
+ }
+} );
+
+
+function Tween( elem, options, prop, end, easing ) {
+ return new Tween.prototype.init( elem, options, prop, end, easing );
+}
+jQuery.Tween = Tween;
+
+Tween.prototype = {
+ constructor: Tween,
+ init: function( elem, options, prop, end, easing, unit ) {
+ this.elem = elem;
+ this.prop = prop;
+ this.easing = easing || jQuery.easing._default;
+ this.options = options;
+ this.start = this.now = this.cur();
+ this.end = end;
+ this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" );
+ },
+ cur: function() {
+ var hooks = Tween.propHooks[ this.prop ];
+
+ return hooks && hooks.get ?
+ hooks.get( this ) :
+ Tween.propHooks._default.get( this );
+ },
+ run: function( percent ) {
+ var eased,
+ hooks = Tween.propHooks[ this.prop ];
+
+ if ( this.options.duration ) {
+ this.pos = eased = jQuery.easing[ this.easing ](
+ percent, this.options.duration * percent, 0, 1, this.options.duration
+ );
+ } else {
+ this.pos = eased = percent;
+ }
+ this.now = ( this.end - this.start ) * eased + this.start;
+
+ if ( this.options.step ) {
+ this.options.step.call( this.elem, this.now, this );
+ }
+
+ if ( hooks && hooks.set ) {
+ hooks.set( this );
+ } else {
+ Tween.propHooks._default.set( this );
+ }
+ return this;
+ }
+};
+
+Tween.prototype.init.prototype = Tween.prototype;
+
+Tween.propHooks = {
+ _default: {
+ get: function( tween ) {
+ var result;
+
+ // Use a property on the element directly when it is not a DOM element,
+ // or when there is no matching style property that exists.
+ if ( tween.elem.nodeType !== 1 ||
+ tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) {
+ return tween.elem[ tween.prop ];
+ }
+
+ // Passing an empty string as a 3rd parameter to .css will automatically
+ // attempt a parseFloat and fallback to a string if the parse fails.
+ // Simple values such as "10px" are parsed to Float;
+ // complex values such as "rotate(1rad)" are returned as-is.
+ result = jQuery.css( tween.elem, tween.prop, "" );
+
+ // Empty strings, null, undefined and "auto" are converted to 0.
+ return !result || result === "auto" ? 0 : result;
+ },
+ set: function( tween ) {
+
+ // Use step hook for back compat.
+ // Use cssHook if its there.
+ // Use .style if available and use plain properties where available.
+ if ( jQuery.fx.step[ tween.prop ] ) {
+ jQuery.fx.step[ tween.prop ]( tween );
+ } else if ( tween.elem.nodeType === 1 &&
+ ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null ||
+ jQuery.cssHooks[ tween.prop ] ) ) {
+ jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );
+ } else {
+ tween.elem[ tween.prop ] = tween.now;
+ }
+ }
+ }
+};
+
+// Support: IE <=9 only
+// Panic based approach to setting things on disconnected nodes
+Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {
+ set: function( tween ) {
+ if ( tween.elem.nodeType && tween.elem.parentNode ) {
+ tween.elem[ tween.prop ] = tween.now;
+ }
+ }
+};
+
+jQuery.easing = {
+ linear: function( p ) {
+ return p;
+ },
+ swing: function( p ) {
+ return 0.5 - Math.cos( p * Math.PI ) / 2;
+ },
+ _default: "swing"
+};
+
+jQuery.fx = Tween.prototype.init;
+
+// Back compat <1.8 extension point
+jQuery.fx.step = {};
+
+
+
+
+var
+ fxNow, timerId,
+ rfxtypes = /^(?:toggle|show|hide)$/,
+ rrun = /queueHooks$/;
+
+function raf() {
+ if ( timerId ) {
+ window.requestAnimationFrame( raf );
+ jQuery.fx.tick();
+ }
+}
+
+// Animations created synchronously will run synchronously
+function createFxNow() {
+ window.setTimeout( function() {
+ fxNow = undefined;
+ } );
+ return ( fxNow = jQuery.now() );
+}
+
+// Generate parameters to create a standard animation
+function genFx( type, includeWidth ) {
+ var which,
+ i = 0,
+ attrs = { height: type };
+
+ // If we include width, step value is 1 to do all cssExpand values,
+ // otherwise step value is 2 to skip over Left and Right
+ includeWidth = includeWidth ? 1 : 0;
+ for ( ; i < 4; i += 2 - includeWidth ) {
+ which = cssExpand[ i ];
+ attrs[ "margin" + which ] = attrs[ "padding" + which ] = type;
+ }
+
+ if ( includeWidth ) {
+ attrs.opacity = attrs.width = type;
+ }
+
+ return attrs;
+}
+
+function createTween( value, prop, animation ) {
+ var tween,
+ collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ),
+ index = 0,
+ length = collection.length;
+ for ( ; index < length; index++ ) {
+ if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) {
+
+ // We're done with this property
+ return tween;
+ }
+ }
+}
+
+function defaultPrefilter( elem, props, opts ) {
+ var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,
+ isBox = "width" in props || "height" in props,
+ anim = this,
+ orig = {},
+ style = elem.style,
+ hidden = elem.nodeType && isHiddenWithinTree( elem ),
+ dataShow = dataPriv.get( elem, "fxshow" );
+
+ // Queue-skipping animations hijack the fx hooks
+ if ( !opts.queue ) {
+ hooks = jQuery._queueHooks( elem, "fx" );
+ if ( hooks.unqueued == null ) {
+ hooks.unqueued = 0;
+ oldfire = hooks.empty.fire;
+ hooks.empty.fire = function() {
+ if ( !hooks.unqueued ) {
+ oldfire();
+ }
+ };
+ }
+ hooks.unqueued++;
+
+ anim.always( function() {
+
+ // Ensure the complete handler is called before this completes
+ anim.always( function() {
+ hooks.unqueued--;
+ if ( !jQuery.queue( elem, "fx" ).length ) {
+ hooks.empty.fire();
+ }
+ } );
+ } );
+ }
+
+ // Detect show/hide animations
+ for ( prop in props ) {
+ value = props[ prop ];
+ if ( rfxtypes.test( value ) ) {
+ delete props[ prop ];
+ toggle = toggle || value === "toggle";
+ if ( value === ( hidden ? "hide" : "show" ) ) {
+
+ // Pretend to be hidden if this is a "show" and
+ // there is still data from a stopped show/hide
+ if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) {
+ hidden = true;
+
+ // Ignore all other no-op show/hide data
+ } else {
+ continue;
+ }
+ }
+ orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );
+ }
+ }
+
+ // Bail out if this is a no-op like .hide().hide()
+ propTween = !jQuery.isEmptyObject( props );
+ if ( !propTween && jQuery.isEmptyObject( orig ) ) {
+ return;
+ }
+
+ // Restrict "overflow" and "display" styles during box animations
+ if ( isBox && elem.nodeType === 1 ) {
+
+ // Support: IE <=9 - 11, Edge 12 - 13
+ // Record all 3 overflow attributes because IE does not infer the shorthand
+ // from identically-valued overflowX and overflowY
+ opts.overflow = [ style.overflow, style.overflowX, style.overflowY ];
+
+ // Identify a display type, preferring old show/hide data over the CSS cascade
+ restoreDisplay = dataShow && dataShow.display;
+ if ( restoreDisplay == null ) {
+ restoreDisplay = dataPriv.get( elem, "display" );
+ }
+ display = jQuery.css( elem, "display" );
+ if ( display === "none" ) {
+ if ( restoreDisplay ) {
+ display = restoreDisplay;
+ } else {
+
+ // Get nonempty value(s) by temporarily forcing visibility
+ showHide( [ elem ], true );
+ restoreDisplay = elem.style.display || restoreDisplay;
+ display = jQuery.css( elem, "display" );
+ showHide( [ elem ] );
+ }
+ }
+
+ // Animate inline elements as inline-block
+ if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) {
+ if ( jQuery.css( elem, "float" ) === "none" ) {
+
+ // Restore the original display value at the end of pure show/hide animations
+ if ( !propTween ) {
+ anim.done( function() {
+ style.display = restoreDisplay;
+ } );
+ if ( restoreDisplay == null ) {
+ display = style.display;
+ restoreDisplay = display === "none" ? "" : display;
+ }
+ }
+ style.display = "inline-block";
+ }
+ }
+ }
+
+ if ( opts.overflow ) {
+ style.overflow = "hidden";
+ anim.always( function() {
+ style.overflow = opts.overflow[ 0 ];
+ style.overflowX = opts.overflow[ 1 ];
+ style.overflowY = opts.overflow[ 2 ];
+ } );
+ }
+
+ // Implement show/hide animations
+ propTween = false;
+ for ( prop in orig ) {
+
+ // General show/hide setup for this element animation
+ if ( !propTween ) {
+ if ( dataShow ) {
+ if ( "hidden" in dataShow ) {
+ hidden = dataShow.hidden;
+ }
+ } else {
+ dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } );
+ }
+
+ // Store hidden/visible for toggle so `.stop().toggle()` "reverses"
+ if ( toggle ) {
+ dataShow.hidden = !hidden;
+ }
+
+ // Show elements before animating them
+ if ( hidden ) {
+ showHide( [ elem ], true );
+ }
+
+ /* eslint-disable no-loop-func */
+
+ anim.done( function() {
+
+ /* eslint-enable no-loop-func */
+
+ // The final step of a "hide" animation is actually hiding the element
+ if ( !hidden ) {
+ showHide( [ elem ] );
+ }
+ dataPriv.remove( elem, "fxshow" );
+ for ( prop in orig ) {
+ jQuery.style( elem, prop, orig[ prop ] );
+ }
+ } );
+ }
+
+ // Per-property setup
+ propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );
+ if ( !( prop in dataShow ) ) {
+ dataShow[ prop ] = propTween.start;
+ if ( hidden ) {
+ propTween.end = propTween.start;
+ propTween.start = 0;
+ }
+ }
+ }
+}
+
+function propFilter( props, specialEasing ) {
+ var index, name, easing, value, hooks;
+
+ // camelCase, specialEasing and expand cssHook pass
+ for ( index in props ) {
+ name = jQuery.camelCase( index );
+ easing = specialEasing[ name ];
+ value = props[ index ];
+ if ( jQuery.isArray( value ) ) {
+ easing = value[ 1 ];
+ value = props[ index ] = value[ 0 ];
+ }
+
+ if ( index !== name ) {
+ props[ name ] = value;
+ delete props[ index ];
+ }
+
+ hooks = jQuery.cssHooks[ name ];
+ if ( hooks && "expand" in hooks ) {
+ value = hooks.expand( value );
+ delete props[ name ];
+
+ // Not quite $.extend, this won't overwrite existing keys.
+ // Reusing 'index' because we have the correct "name"
+ for ( index in value ) {
+ if ( !( index in props ) ) {
+ props[ index ] = value[ index ];
+ specialEasing[ index ] = easing;
+ }
+ }
+ } else {
+ specialEasing[ name ] = easing;
+ }
+ }
+}
+
+function Animation( elem, properties, options ) {
+ var result,
+ stopped,
+ index = 0,
+ length = Animation.prefilters.length,
+ deferred = jQuery.Deferred().always( function() {
+
+ // Don't match elem in the :animated selector
+ delete tick.elem;
+ } ),
+ tick = function() {
+ if ( stopped ) {
+ return false;
+ }
+ var currentTime = fxNow || createFxNow(),
+ remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),
+
+ // Support: Android 2.3 only
+ // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)
+ temp = remaining / animation.duration || 0,
+ percent = 1 - temp,
+ index = 0,
+ length = animation.tweens.length;
+
+ for ( ; index < length; index++ ) {
+ animation.tweens[ index ].run( percent );
+ }
+
+ deferred.notifyWith( elem, [ animation, percent, remaining ] );
+
+ if ( percent < 1 && length ) {
+ return remaining;
+ } else {
+ deferred.resolveWith( elem, [ animation ] );
+ return false;
+ }
+ },
+ animation = deferred.promise( {
+ elem: elem,
+ props: jQuery.extend( {}, properties ),
+ opts: jQuery.extend( true, {
+ specialEasing: {},
+ easing: jQuery.easing._default
+ }, options ),
+ originalProperties: properties,
+ originalOptions: options,
+ startTime: fxNow || createFxNow(),
+ duration: options.duration,
+ tweens: [],
+ createTween: function( prop, end ) {
+ var tween = jQuery.Tween( elem, animation.opts, prop, end,
+ animation.opts.specialEasing[ prop ] || animation.opts.easing );
+ animation.tweens.push( tween );
+ return tween;
+ },
+ stop: function( gotoEnd ) {
+ var index = 0,
+
+ // If we are going to the end, we want to run all the tweens
+ // otherwise we skip this part
+ length = gotoEnd ? animation.tweens.length : 0;
+ if ( stopped ) {
+ return this;
+ }
+ stopped = true;
+ for ( ; index < length; index++ ) {
+ animation.tweens[ index ].run( 1 );
+ }
+
+ // Resolve when we played the last frame; otherwise, reject
+ if ( gotoEnd ) {
+ deferred.notifyWith( elem, [ animation, 1, 0 ] );
+ deferred.resolveWith( elem, [ animation, gotoEnd ] );
+ } else {
+ deferred.rejectWith( elem, [ animation, gotoEnd ] );
+ }
+ return this;
+ }
+ } ),
+ props = animation.props;
+
+ propFilter( props, animation.opts.specialEasing );
+
+ for ( ; index < length; index++ ) {
+ result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts );
+ if ( result ) {
+ if ( jQuery.isFunction( result.stop ) ) {
+ jQuery._queueHooks( animation.elem, animation.opts.queue ).stop =
+ jQuery.proxy( result.stop, result );
+ }
+ return result;
+ }
+ }
+
+ jQuery.map( props, createTween, animation );
+
+ if ( jQuery.isFunction( animation.opts.start ) ) {
+ animation.opts.start.call( elem, animation );
+ }
+
+ jQuery.fx.timer(
+ jQuery.extend( tick, {
+ elem: elem,
+ anim: animation,
+ queue: animation.opts.queue
+ } )
+ );
+
+ // attach callbacks from options
+ return animation.progress( animation.opts.progress )
+ .done( animation.opts.done, animation.opts.complete )
+ .fail( animation.opts.fail )
+ .always( animation.opts.always );
+}
+
+jQuery.Animation = jQuery.extend( Animation, {
+
+ tweeners: {
+ "*": [ function( prop, value ) {
+ var tween = this.createTween( prop, value );
+ adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween );
+ return tween;
+ } ]
+ },
+
+ tweener: function( props, callback ) {
+ if ( jQuery.isFunction( props ) ) {
+ callback = props;
+ props = [ "*" ];
+ } else {
+ props = props.match( rnotwhite );
+ }
+
+ var prop,
+ index = 0,
+ length = props.length;
+
+ for ( ; index < length; index++ ) {
+ prop = props[ index ];
+ Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || [];
+ Animation.tweeners[ prop ].unshift( callback );
+ }
+ },
+
+ prefilters: [ defaultPrefilter ],
+
+ prefilter: function( callback, prepend ) {
+ if ( prepend ) {
+ Animation.prefilters.unshift( callback );
+ } else {
+ Animation.prefilters.push( callback );
+ }
+ }
+} );
+
+jQuery.speed = function( speed, easing, fn ) {
+ var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : {
+ complete: fn || !fn && easing ||
+ jQuery.isFunction( speed ) && speed,
+ duration: speed,
+ easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing
+ };
+
+ // Go to the end state if fx are off or if document is hidden
+ if ( jQuery.fx.off || document.hidden ) {
+ opt.duration = 0;
+
+ } else {
+ opt.duration = typeof opt.duration === "number" ?
+ opt.duration : opt.duration in jQuery.fx.speeds ?
+ jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default;
+ }
+
+ // Normalize opt.queue - true/undefined/null -> "fx"
+ if ( opt.queue == null || opt.queue === true ) {
+ opt.queue = "fx";
+ }
+
+ // Queueing
+ opt.old = opt.complete;
+
+ opt.complete = function() {
+ if ( jQuery.isFunction( opt.old ) ) {
+ opt.old.call( this );
+ }
+
+ if ( opt.queue ) {
+ jQuery.dequeue( this, opt.queue );
+ }
+ };
+
+ return opt;
+};
+
+jQuery.fn.extend( {
+ fadeTo: function( speed, to, easing, callback ) {
+
+ // Show any hidden elements after setting opacity to 0
+ return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show()
+
+ // Animate to the value specified
+ .end().animate( { opacity: to }, speed, easing, callback );
+ },
+ animate: function( prop, speed, easing, callback ) {
+ var empty = jQuery.isEmptyObject( prop ),
+ optall = jQuery.speed( speed, easing, callback ),
+ doAnimation = function() {
+
+ // Operate on a copy of prop so per-property easing won't be lost
+ var anim = Animation( this, jQuery.extend( {}, prop ), optall );
+
+ // Empty animations, or finishing resolves immediately
+ if ( empty || dataPriv.get( this, "finish" ) ) {
+ anim.stop( true );
+ }
+ };
+ doAnimation.finish = doAnimation;
+
+ return empty || optall.queue === false ?
+ this.each( doAnimation ) :
+ this.queue( optall.queue, doAnimation );
+ },
+ stop: function( type, clearQueue, gotoEnd ) {
+ var stopQueue = function( hooks ) {
+ var stop = hooks.stop;
+ delete hooks.stop;
+ stop( gotoEnd );
+ };
+
+ if ( typeof type !== "string" ) {
+ gotoEnd = clearQueue;
+ clearQueue = type;
+ type = undefined;
+ }
+ if ( clearQueue && type !== false ) {
+ this.queue( type || "fx", [] );
+ }
+
+ return this.each( function() {
+ var dequeue = true,
+ index = type != null && type + "queueHooks",
+ timers = jQuery.timers,
+ data = dataPriv.get( this );
+
+ if ( index ) {
+ if ( data[ index ] && data[ index ].stop ) {
+ stopQueue( data[ index ] );
+ }
+ } else {
+ for ( index in data ) {
+ if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
+ stopQueue( data[ index ] );
+ }
+ }
+ }
+
+ for ( index = timers.length; index--; ) {
+ if ( timers[ index ].elem === this &&
+ ( type == null || timers[ index ].queue === type ) ) {
+
+ timers[ index ].anim.stop( gotoEnd );
+ dequeue = false;
+ timers.splice( index, 1 );
+ }
+ }
+
+ // Start the next in the queue if the last step wasn't forced.
+ // Timers currently will call their complete callbacks, which
+ // will dequeue but only if they were gotoEnd.
+ if ( dequeue || !gotoEnd ) {
+ jQuery.dequeue( this, type );
+ }
+ } );
+ },
+ finish: function( type ) {
+ if ( type !== false ) {
+ type = type || "fx";
+ }
+ return this.each( function() {
+ var index,
+ data = dataPriv.get( this ),
+ queue = data[ type + "queue" ],
+ hooks = data[ type + "queueHooks" ],
+ timers = jQuery.timers,
+ length = queue ? queue.length : 0;
+
+ // Enable finishing flag on private data
+ data.finish = true;
+
+ // Empty the queue first
+ jQuery.queue( this, type, [] );
+
+ if ( hooks && hooks.stop ) {
+ hooks.stop.call( this, true );
+ }
+
+ // Look for any active animations, and finish them
+ for ( index = timers.length; index--; ) {
+ if ( timers[ index ].elem === this && timers[ index ].queue === type ) {
+ timers[ index ].anim.stop( true );
+ timers.splice( index, 1 );
+ }
+ }
+
+ // Look for any animations in the old queue and finish them
+ for ( index = 0; index < length; index++ ) {
+ if ( queue[ index ] && queue[ index ].finish ) {
+ queue[ index ].finish.call( this );
+ }
+ }
+
+ // Turn off finishing flag
+ delete data.finish;
+ } );
+ }
+} );
+
+jQuery.each( [ "toggle", "show", "hide" ], function( i, name ) {
+ var cssFn = jQuery.fn[ name ];
+ jQuery.fn[ name ] = function( speed, easing, callback ) {
+ return speed == null || typeof speed === "boolean" ?
+ cssFn.apply( this, arguments ) :
+ this.animate( genFx( name, true ), speed, easing, callback );
+ };
+} );
+
+// Generate shortcuts for custom animations
+jQuery.each( {
+ slideDown: genFx( "show" ),
+ slideUp: genFx( "hide" ),
+ slideToggle: genFx( "toggle" ),
+ fadeIn: { opacity: "show" },
+ fadeOut: { opacity: "hide" },
+ fadeToggle: { opacity: "toggle" }
+}, function( name, props ) {
+ jQuery.fn[ name ] = function( speed, easing, callback ) {
+ return this.animate( props, speed, easing, callback );
+ };
+} );
+
+jQuery.timers = [];
+jQuery.fx.tick = function() {
+ var timer,
+ i = 0,
+ timers = jQuery.timers;
+
+ fxNow = jQuery.now();
+
+ for ( ; i < timers.length; i++ ) {
+ timer = timers[ i ];
+
+ // Checks the timer has not already been removed
+ if ( !timer() && timers[ i ] === timer ) {
+ timers.splice( i--, 1 );
+ }
+ }
+
+ if ( !timers.length ) {
+ jQuery.fx.stop();
+ }
+ fxNow = undefined;
+};
+
+jQuery.fx.timer = function( timer ) {
+ jQuery.timers.push( timer );
+ if ( timer() ) {
+ jQuery.fx.start();
+ } else {
+ jQuery.timers.pop();
+ }
+};
+
+jQuery.fx.interval = 13;
+jQuery.fx.start = function() {
+ if ( !timerId ) {
+ timerId = window.requestAnimationFrame ?
+ window.requestAnimationFrame( raf ) :
+ window.setInterval( jQuery.fx.tick, jQuery.fx.interval );
+ }
+};
+
+jQuery.fx.stop = function() {
+ if ( window.cancelAnimationFrame ) {
+ window.cancelAnimationFrame( timerId );
+ } else {
+ window.clearInterval( timerId );
+ }
+
+ timerId = null;
+};
+
+jQuery.fx.speeds = {
+ slow: 600,
+ fast: 200,
+
+ // Default speed
+ _default: 400
+};
+
+
+// Based off of the plugin by Clint Helfers, with permission.
+// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/
+jQuery.fn.delay = function( time, type ) {
+ time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
+ type = type || "fx";
+
+ return this.queue( type, function( next, hooks ) {
+ var timeout = window.setTimeout( next, time );
+ hooks.stop = function() {
+ window.clearTimeout( timeout );
+ };
+ } );
+};
+
+
+( function() {
+ var input = document.createElement( "input" ),
+ select = document.createElement( "select" ),
+ opt = select.appendChild( document.createElement( "option" ) );
+
+ input.type = "checkbox";
+
+ // Support: Android <=4.3 only
+ // Default value for a checkbox should be "on"
+ support.checkOn = input.value !== "";
+
+ // Support: IE <=11 only
+ // Must access selectedIndex to make default options select
+ support.optSelected = opt.selected;
+
+ // Support: IE <=11 only
+ // An input loses its value after becoming a radio
+ input = document.createElement( "input" );
+ input.value = "t";
+ input.type = "radio";
+ support.radioValue = input.value === "t";
+} )();
+
+
+var boolHook,
+ attrHandle = jQuery.expr.attrHandle;
+
+jQuery.fn.extend( {
+ attr: function( name, value ) {
+ return access( this, jQuery.attr, name, value, arguments.length > 1 );
+ },
+
+ removeAttr: function( name ) {
+ return this.each( function() {
+ jQuery.removeAttr( this, name );
+ } );
+ }
+} );
+
+jQuery.extend( {
+ attr: function( elem, name, value ) {
+ var ret, hooks,
+ nType = elem.nodeType;
+
+ // Don't get/set attributes on text, comment and attribute nodes
+ if ( nType === 3 || nType === 8 || nType === 2 ) {
+ return;
+ }
+
+ // Fallback to prop when attributes are not supported
+ if ( typeof elem.getAttribute === "undefined" ) {
+ return jQuery.prop( elem, name, value );
+ }
+
+ // Attribute hooks are determined by the lowercase version
+ // Grab necessary hook if one is defined
+ if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
+ hooks = jQuery.attrHooks[ name.toLowerCase() ] ||
+ ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined );
+ }
+
+ if ( value !== undefined ) {
+ if ( value === null ) {
+ jQuery.removeAttr( elem, name );
+ return;
+ }
+
+ if ( hooks && "set" in hooks &&
+ ( ret = hooks.set( elem, value, name ) ) !== undefined ) {
+ return ret;
+ }
+
+ elem.setAttribute( name, value + "" );
+ return value;
+ }
+
+ if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {
+ return ret;
+ }
+
+ ret = jQuery.find.attr( elem, name );
+
+ // Non-existent attributes return null, we normalize to undefined
+ return ret == null ? undefined : ret;
+ },
+
+ attrHooks: {
+ type: {
+ set: function( elem, value ) {
+ if ( !support.radioValue && value === "radio" &&
+ jQuery.nodeName( elem, "input" ) ) {
+ var val = elem.value;
+ elem.setAttribute( "type", value );
+ if ( val ) {
+ elem.value = val;
+ }
+ return value;
+ }
+ }
+ }
+ },
+
+ removeAttr: function( elem, value ) {
+ var name,
+ i = 0,
+ attrNames = value && value.match( rnotwhite );
+
+ if ( attrNames && elem.nodeType === 1 ) {
+ while ( ( name = attrNames[ i++ ] ) ) {
+ elem.removeAttribute( name );
+ }
+ }
+ }
+} );
+
+// Hooks for boolean attributes
+boolHook = {
+ set: function( elem, value, name ) {
+ if ( value === false ) {
+
+ // Remove boolean attributes when set to false
+ jQuery.removeAttr( elem, name );
+ } else {
+ elem.setAttribute( name, name );
+ }
+ return name;
+ }
+};
+
+jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) {
+ var getter = attrHandle[ name ] || jQuery.find.attr;
+
+ attrHandle[ name ] = function( elem, name, isXML ) {
+ var ret, handle,
+ lowercaseName = name.toLowerCase();
+
+ if ( !isXML ) {
+
+ // Avoid an infinite loop by temporarily removing this function from the getter
+ handle = attrHandle[ lowercaseName ];
+ attrHandle[ lowercaseName ] = ret;
+ ret = getter( elem, name, isXML ) != null ?
+ lowercaseName :
+ null;
+ attrHandle[ lowercaseName ] = handle;
+ }
+ return ret;
+ };
+} );
+
+
+
+
+var rfocusable = /^(?:input|select|textarea|button)$/i,
+ rclickable = /^(?:a|area)$/i;
+
+jQuery.fn.extend( {
+ prop: function( name, value ) {
+ return access( this, jQuery.prop, name, value, arguments.length > 1 );
+ },
+
+ removeProp: function( name ) {
+ return this.each( function() {
+ delete this[ jQuery.propFix[ name ] || name ];
+ } );
+ }
+} );
+
+jQuery.extend( {
+ prop: function( elem, name, value ) {
+ var ret, hooks,
+ nType = elem.nodeType;
+
+ // Don't get/set properties on text, comment and attribute nodes
+ if ( nType === 3 || nType === 8 || nType === 2 ) {
+ return;
+ }
+
+ if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
+
+ // Fix name and attach hooks
+ name = jQuery.propFix[ name ] || name;
+ hooks = jQuery.propHooks[ name ];
+ }
+
+ if ( value !== undefined ) {
+ if ( hooks && "set" in hooks &&
+ ( ret = hooks.set( elem, value, name ) ) !== undefined ) {
+ return ret;
+ }
+
+ return ( elem[ name ] = value );
+ }
+
+ if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {
+ return ret;
+ }
+
+ return elem[ name ];
+ },
+
+ propHooks: {
+ tabIndex: {
+ get: function( elem ) {
+
+ // Support: IE <=9 - 11 only
+ // elem.tabIndex doesn't always return the
+ // correct value when it hasn't been explicitly set
+ // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
+ // Use proper attribute retrieval(#12072)
+ var tabindex = jQuery.find.attr( elem, "tabindex" );
+
+ return tabindex ?
+ parseInt( tabindex, 10 ) :
+ rfocusable.test( elem.nodeName ) ||
+ rclickable.test( elem.nodeName ) && elem.href ?
+ 0 :
+ -1;
+ }
+ }
+ },
+
+ propFix: {
+ "for": "htmlFor",
+ "class": "className"
+ }
+} );
+
+// Support: IE <=11 only
+// Accessing the selectedIndex property
+// forces the browser to respect setting selected
+// on the option
+// The getter ensures a default option is selected
+// when in an optgroup
+if ( !support.optSelected ) {
+ jQuery.propHooks.selected = {
+ get: function( elem ) {
+ var parent = elem.parentNode;
+ if ( parent && parent.parentNode ) {
+ parent.parentNode.selectedIndex;
+ }
+ return null;
+ },
+ set: function( elem ) {
+ var parent = elem.parentNode;
+ if ( parent ) {
+ parent.selectedIndex;
+
+ if ( parent.parentNode ) {
+ parent.parentNode.selectedIndex;
+ }
+ }
+ }
+ };
+}
+
+jQuery.each( [
+ "tabIndex",
+ "readOnly",
+ "maxLength",
+ "cellSpacing",
+ "cellPadding",
+ "rowSpan",
+ "colSpan",
+ "useMap",
+ "frameBorder",
+ "contentEditable"
+], function() {
+ jQuery.propFix[ this.toLowerCase() ] = this;
+} );
+
+
+
+
+var rclass = /[\t\r\n\f]/g;
+
+function getClass( elem ) {
+ return elem.getAttribute && elem.getAttribute( "class" ) || "";
+}
+
+jQuery.fn.extend( {
+ addClass: function( value ) {
+ var classes, elem, cur, curValue, clazz, j, finalValue,
+ i = 0;
+
+ if ( jQuery.isFunction( value ) ) {
+ return this.each( function( j ) {
+ jQuery( this ).addClass( value.call( this, j, getClass( this ) ) );
+ } );
+ }
+
+ if ( typeof value === "string" && value ) {
+ classes = value.match( rnotwhite ) || [];
+
+ while ( ( elem = this[ i++ ] ) ) {
+ curValue = getClass( elem );
+ cur = elem.nodeType === 1 &&
+ ( " " + curValue + " " ).replace( rclass, " " );
+
+ if ( cur ) {
+ j = 0;
+ while ( ( clazz = classes[ j++ ] ) ) {
+ if ( cur.indexOf( " " + clazz + " " ) < 0 ) {
+ cur += clazz + " ";
+ }
+ }
+
+ // Only assign if different to avoid unneeded rendering.
+ finalValue = jQuery.trim( cur );
+ if ( curValue !== finalValue ) {
+ elem.setAttribute( "class", finalValue );
+ }
+ }
+ }
+ }
+
+ return this;
+ },
+
+ removeClass: function( value ) {
+ var classes, elem, cur, curValue, clazz, j, finalValue,
+ i = 0;
+
+ if ( jQuery.isFunction( value ) ) {
+ return this.each( function( j ) {
+ jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) );
+ } );
+ }
+
+ if ( !arguments.length ) {
+ return this.attr( "class", "" );
+ }
+
+ if ( typeof value === "string" && value ) {
+ classes = value.match( rnotwhite ) || [];
+
+ while ( ( elem = this[ i++ ] ) ) {
+ curValue = getClass( elem );
+
+ // This expression is here for better compressibility (see addClass)
+ cur = elem.nodeType === 1 &&
+ ( " " + curValue + " " ).replace( rclass, " " );
+
+ if ( cur ) {
+ j = 0;
+ while ( ( clazz = classes[ j++ ] ) ) {
+
+ // Remove *all* instances
+ while ( cur.indexOf( " " + clazz + " " ) > -1 ) {
+ cur = cur.replace( " " + clazz + " ", " " );
+ }
+ }
+
+ // Only assign if different to avoid unneeded rendering.
+ finalValue = jQuery.trim( cur );
+ if ( curValue !== finalValue ) {
+ elem.setAttribute( "class", finalValue );
+ }
+ }
+ }
+ }
+
+ return this;
+ },
+
+ toggleClass: function( value, stateVal ) {
+ var type = typeof value;
+
+ if ( typeof stateVal === "boolean" && type === "string" ) {
+ return stateVal ? this.addClass( value ) : this.removeClass( value );
+ }
+
+ if ( jQuery.isFunction( value ) ) {
+ return this.each( function( i ) {
+ jQuery( this ).toggleClass(
+ value.call( this, i, getClass( this ), stateVal ),
+ stateVal
+ );
+ } );
+ }
+
+ return this.each( function() {
+ var className, i, self, classNames;
+
+ if ( type === "string" ) {
+
+ // Toggle individual class names
+ i = 0;
+ self = jQuery( this );
+ classNames = value.match( rnotwhite ) || [];
+
+ while ( ( className = classNames[ i++ ] ) ) {
+
+ // Check each className given, space separated list
+ if ( self.hasClass( className ) ) {
+ self.removeClass( className );
+ } else {
+ self.addClass( className );
+ }
+ }
+
+ // Toggle whole class name
+ } else if ( value === undefined || type === "boolean" ) {
+ className = getClass( this );
+ if ( className ) {
+
+ // Store className if set
+ dataPriv.set( this, "__className__", className );
+ }
+
+ // If the element has a class name or if we're passed `false`,
+ // then remove the whole classname (if there was one, the above saved it).
+ // Otherwise bring back whatever was previously saved (if anything),
+ // falling back to the empty string if nothing was stored.
+ if ( this.setAttribute ) {
+ this.setAttribute( "class",
+ className || value === false ?
+ "" :
+ dataPriv.get( this, "__className__" ) || ""
+ );
+ }
+ }
+ } );
+ },
+
+ hasClass: function( selector ) {
+ var className, elem,
+ i = 0;
+
+ className = " " + selector + " ";
+ while ( ( elem = this[ i++ ] ) ) {
+ if ( elem.nodeType === 1 &&
+ ( " " + getClass( elem ) + " " ).replace( rclass, " " )
+ .indexOf( className ) > -1
+ ) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+} );
+
+
+
+
+var rreturn = /\r/g,
+ rspaces = /[\x20\t\r\n\f]+/g;
+
+jQuery.fn.extend( {
+ val: function( value ) {
+ var hooks, ret, isFunction,
+ elem = this[ 0 ];
+
+ if ( !arguments.length ) {
+ if ( elem ) {
+ hooks = jQuery.valHooks[ elem.type ] ||
+ jQuery.valHooks[ elem.nodeName.toLowerCase() ];
+
+ if ( hooks &&
+ "get" in hooks &&
+ ( ret = hooks.get( elem, "value" ) ) !== undefined
+ ) {
+ return ret;
+ }
+
+ ret = elem.value;
+
+ return typeof ret === "string" ?
+
+ // Handle most common string cases
+ ret.replace( rreturn, "" ) :
+
+ // Handle cases where value is null/undef or number
+ ret == null ? "" : ret;
+ }
+
+ return;
+ }
+
+ isFunction = jQuery.isFunction( value );
+
+ return this.each( function( i ) {
+ var val;
+
+ if ( this.nodeType !== 1 ) {
+ return;
+ }
+
+ if ( isFunction ) {
+ val = value.call( this, i, jQuery( this ).val() );
+ } else {
+ val = value;
+ }
+
+ // Treat null/undefined as ""; convert numbers to string
+ if ( val == null ) {
+ val = "";
+
+ } else if ( typeof val === "number" ) {
+ val += "";
+
+ } else if ( jQuery.isArray( val ) ) {
+ val = jQuery.map( val, function( value ) {
+ return value == null ? "" : value + "";
+ } );
+ }
+
+ hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];
+
+ // If set returns undefined, fall back to normal setting
+ if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) {
+ this.value = val;
+ }
+ } );
+ }
+} );
+
+jQuery.extend( {
+ valHooks: {
+ option: {
+ get: function( elem ) {
+
+ var val = jQuery.find.attr( elem, "value" );
+ return val != null ?
+ val :
+
+ // Support: IE <=10 - 11 only
+ // option.text throws exceptions (#14686, #14858)
+ // Strip and collapse whitespace
+ // https://html.spec.whatwg.org/#strip-and-collapse-whitespace
+ jQuery.trim( jQuery.text( elem ) ).replace( rspaces, " " );
+ }
+ },
+ select: {
+ get: function( elem ) {
+ var value, option,
+ options = elem.options,
+ index = elem.selectedIndex,
+ one = elem.type === "select-one",
+ values = one ? null : [],
+ max = one ? index + 1 : options.length,
+ i = index < 0 ?
+ max :
+ one ? index : 0;
+
+ // Loop through all the selected options
+ for ( ; i < max; i++ ) {
+ option = options[ i ];
+
+ // Support: IE <=9 only
+ // IE8-9 doesn't update selected after form reset (#2551)
+ if ( ( option.selected || i === index ) &&
+
+ // Don't return options that are disabled or in a disabled optgroup
+ !option.disabled &&
+ ( !option.parentNode.disabled ||
+ !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) {
+
+ // Get the specific value for the option
+ value = jQuery( option ).val();
+
+ // We don't need an array for one selects
+ if ( one ) {
+ return value;
+ }
+
+ // Multi-Selects return an array
+ values.push( value );
+ }
+ }
+
+ return values;
+ },
+
+ set: function( elem, value ) {
+ var optionSet, option,
+ options = elem.options,
+ values = jQuery.makeArray( value ),
+ i = options.length;
+
+ while ( i-- ) {
+ option = options[ i ];
+
+ /* eslint-disable no-cond-assign */
+
+ if ( option.selected =
+ jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1
+ ) {
+ optionSet = true;
+ }
+
+ /* eslint-enable no-cond-assign */
+ }
+
+ // Force browsers to behave consistently when non-matching value is set
+ if ( !optionSet ) {
+ elem.selectedIndex = -1;
+ }
+ return values;
+ }
+ }
+ }
+} );
+
+// Radios and checkboxes getter/setter
+jQuery.each( [ "radio", "checkbox" ], function() {
+ jQuery.valHooks[ this ] = {
+ set: function( elem, value ) {
+ if ( jQuery.isArray( value ) ) {
+ return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 );
+ }
+ }
+ };
+ if ( !support.checkOn ) {
+ jQuery.valHooks[ this ].get = function( elem ) {
+ return elem.getAttribute( "value" ) === null ? "on" : elem.value;
+ };
+ }
+} );
+
+
+
+
+// Return jQuery for attributes-only inclusion
+
+
+var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/;
+
+jQuery.extend( jQuery.event, {
+
+ trigger: function( event, data, elem, onlyHandlers ) {
+
+ var i, cur, tmp, bubbleType, ontype, handle, special,
+ eventPath = [ elem || document ],
+ type = hasOwn.call( event, "type" ) ? event.type : event,
+ namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : [];
+
+ cur = tmp = elem = elem || document;
+
+ // Don't do events on text and comment nodes
+ if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
+ return;
+ }
+
+ // focus/blur morphs to focusin/out; ensure we're not firing them right now
+ if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
+ return;
+ }
+
+ if ( type.indexOf( "." ) > -1 ) {
+
+ // Namespaced trigger; create a regexp to match event type in handle()
+ namespaces = type.split( "." );
+ type = namespaces.shift();
+ namespaces.sort();
+ }
+ ontype = type.indexOf( ":" ) < 0 && "on" + type;
+
+ // Caller can pass in a jQuery.Event object, Object, or just an event type string
+ event = event[ jQuery.expando ] ?
+ event :
+ new jQuery.Event( type, typeof event === "object" && event );
+
+ // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)
+ event.isTrigger = onlyHandlers ? 2 : 3;
+ event.namespace = namespaces.join( "." );
+ event.rnamespace = event.namespace ?
+ new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) :
+ null;
+
+ // Clean up the event in case it is being reused
+ event.result = undefined;
+ if ( !event.target ) {
+ event.target = elem;
+ }
+
+ // Clone any incoming data and prepend the event, creating the handler arg list
+ data = data == null ?
+ [ event ] :
+ jQuery.makeArray( data, [ event ] );
+
+ // Allow special events to draw outside the lines
+ special = jQuery.event.special[ type ] || {};
+ if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {
+ return;
+ }
+
+ // Determine event propagation path in advance, per W3C events spec (#9951)
+ // Bubble up to document, then to window; watch for a global ownerDocument var (#9724)
+ if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) {
+
+ bubbleType = special.delegateType || type;
+ if ( !rfocusMorph.test( bubbleType + type ) ) {
+ cur = cur.parentNode;
+ }
+ for ( ; cur; cur = cur.parentNode ) {
+ eventPath.push( cur );
+ tmp = cur;
+ }
+
+ // Only add window if we got to document (e.g., not plain obj or detached DOM)
+ if ( tmp === ( elem.ownerDocument || document ) ) {
+ eventPath.push( tmp.defaultView || tmp.parentWindow || window );
+ }
+ }
+
+ // Fire handlers on the event path
+ i = 0;
+ while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) {
+
+ event.type = i > 1 ?
+ bubbleType :
+ special.bindType || type;
+
+ // jQuery handler
+ handle = ( dataPriv.get( cur, "events" ) || {} )[ event.type ] &&
+ dataPriv.get( cur, "handle" );
+ if ( handle ) {
+ handle.apply( cur, data );
+ }
+
+ // Native handler
+ handle = ontype && cur[ ontype ];
+ if ( handle && handle.apply && acceptData( cur ) ) {
+ event.result = handle.apply( cur, data );
+ if ( event.result === false ) {
+ event.preventDefault();
+ }
+ }
+ }
+ event.type = type;
+
+ // If nobody prevented the default action, do it now
+ if ( !onlyHandlers && !event.isDefaultPrevented() ) {
+
+ if ( ( !special._default ||
+ special._default.apply( eventPath.pop(), data ) === false ) &&
+ acceptData( elem ) ) {
+
+ // Call a native DOM method on the target with the same name as the event.
+ // Don't do default actions on window, that's where global variables be (#6170)
+ if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) {
+
+ // Don't re-trigger an onFOO event when we call its FOO() method
+ tmp = elem[ ontype ];
+
+ if ( tmp ) {
+ elem[ ontype ] = null;
+ }
+
+ // Prevent re-triggering of the same event, since we already bubbled it above
+ jQuery.event.triggered = type;
+ elem[ type ]();
+ jQuery.event.triggered = undefined;
+
+ if ( tmp ) {
+ elem[ ontype ] = tmp;
+ }
+ }
+ }
+ }
+
+ return event.result;
+ },
+
+ // Piggyback on a donor event to simulate a different one
+ // Used only for `focus(in | out)` events
+ simulate: function( type, elem, event ) {
+ var e = jQuery.extend(
+ new jQuery.Event(),
+ event,
+ {
+ type: type,
+ isSimulated: true
+ }
+ );
+
+ jQuery.event.trigger( e, null, elem );
+ }
+
+} );
+
+jQuery.fn.extend( {
+
+ trigger: function( type, data ) {
+ return this.each( function() {
+ jQuery.event.trigger( type, data, this );
+ } );
+ },
+ triggerHandler: function( type, data ) {
+ var elem = this[ 0 ];
+ if ( elem ) {
+ return jQuery.event.trigger( type, data, elem, true );
+ }
+ }
+} );
+
+
+jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " +
+ "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
+ "change select submit keydown keypress keyup contextmenu" ).split( " " ),
+ function( i, name ) {
+
+ // Handle event binding
+ jQuery.fn[ name ] = function( data, fn ) {
+ return arguments.length > 0 ?
+ this.on( name, null, data, fn ) :
+ this.trigger( name );
+ };
+} );
+
+jQuery.fn.extend( {
+ hover: function( fnOver, fnOut ) {
+ return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
+ }
+} );
+
+
+
+
+support.focusin = "onfocusin" in window;
+
+
+// Support: Firefox <=44
+// Firefox doesn't have focus(in | out) events
+// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787
+//
+// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1
+// focus(in | out) events fire after focus & blur events,
+// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order
+// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857
+if ( !support.focusin ) {
+ jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) {
+
+ // Attach a single capturing handler on the document while someone wants focusin/focusout
+ var handler = function( event ) {
+ jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) );
+ };
+
+ jQuery.event.special[ fix ] = {
+ setup: function() {
+ var doc = this.ownerDocument || this,
+ attaches = dataPriv.access( doc, fix );
+
+ if ( !attaches ) {
+ doc.addEventListener( orig, handler, true );
+ }
+ dataPriv.access( doc, fix, ( attaches || 0 ) + 1 );
+ },
+ teardown: function() {
+ var doc = this.ownerDocument || this,
+ attaches = dataPriv.access( doc, fix ) - 1;
+
+ if ( !attaches ) {
+ doc.removeEventListener( orig, handler, true );
+ dataPriv.remove( doc, fix );
+
+ } else {
+ dataPriv.access( doc, fix, attaches );
+ }
+ }
+ };
+ } );
+}
+var location = window.location;
+
+var nonce = jQuery.now();
+
+var rquery = ( /\?/ );
+
+
+
+// Cross-browser xml parsing
+jQuery.parseXML = function( data ) {
+ var xml;
+ if ( !data || typeof data !== "string" ) {
+ return null;
+ }
+
+ // Support: IE 9 - 11 only
+ // IE throws on parseFromString with invalid input.
+ try {
+ xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" );
+ } catch ( e ) {
+ xml = undefined;
+ }
+
+ if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) {
+ jQuery.error( "Invalid XML: " + data );
+ }
+ return xml;
+};
+
+
+var
+ rbracket = /\[\]$/,
+ rCRLF = /\r?\n/g,
+ rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,
+ rsubmittable = /^(?:input|select|textarea|keygen)/i;
+
+function buildParams( prefix, obj, traditional, add ) {
+ var name;
+
+ if ( jQuery.isArray( obj ) ) {
+
+ // Serialize array item.
+ jQuery.each( obj, function( i, v ) {
+ if ( traditional || rbracket.test( prefix ) ) {
+
+ // Treat each array item as a scalar.
+ add( prefix, v );
+
+ } else {
+
+ // Item is non-scalar (array or object), encode its numeric index.
+ buildParams(
+ prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]",
+ v,
+ traditional,
+ add
+ );
+ }
+ } );
+
+ } else if ( !traditional && jQuery.type( obj ) === "object" ) {
+
+ // Serialize object item.
+ for ( name in obj ) {
+ buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
+ }
+
+ } else {
+
+ // Serialize scalar item.
+ add( prefix, obj );
+ }
+}
+
+// Serialize an array of form elements or a set of
+// key/values into a query string
+jQuery.param = function( a, traditional ) {
+ var prefix,
+ s = [],
+ add = function( key, valueOrFunction ) {
+
+ // If value is a function, invoke it and use its return value
+ var value = jQuery.isFunction( valueOrFunction ) ?
+ valueOrFunction() :
+ valueOrFunction;
+
+ s[ s.length ] = encodeURIComponent( key ) + "=" +
+ encodeURIComponent( value == null ? "" : value );
+ };
+
+ // If an array was passed in, assume that it is an array of form elements.
+ if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
+
+ // Serialize the form elements
+ jQuery.each( a, function() {
+ add( this.name, this.value );
+ } );
+
+ } else {
+
+ // If traditional, encode the "old" way (the way 1.3.2 or older
+ // did it), otherwise encode params recursively.
+ for ( prefix in a ) {
+ buildParams( prefix, a[ prefix ], traditional, add );
+ }
+ }
+
+ // Return the resulting serialization
+ return s.join( "&" );
+};
+
+jQuery.fn.extend( {
+ serialize: function() {
+ return jQuery.param( this.serializeArray() );
+ },
+ serializeArray: function() {
+ return this.map( function() {
+
+ // Can add propHook for "elements" to filter or add form elements
+ var elements = jQuery.prop( this, "elements" );
+ return elements ? jQuery.makeArray( elements ) : this;
+ } )
+ .filter( function() {
+ var type = this.type;
+
+ // Use .is( ":disabled" ) so that fieldset[disabled] works
+ return this.name && !jQuery( this ).is( ":disabled" ) &&
+ rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&
+ ( this.checked || !rcheckableType.test( type ) );
+ } )
+ .map( function( i, elem ) {
+ var val = jQuery( this ).val();
+
+ return val == null ?
+ null :
+ jQuery.isArray( val ) ?
+ jQuery.map( val, function( val ) {
+ return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+ } ) :
+ { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+ } ).get();
+ }
+} );
+
+
+var
+ r20 = /%20/g,
+ rhash = /#.*$/,
+ rts = /([?&])_=[^&]*/,
+ rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg,
+
+ // #7653, #8125, #8152: local protocol detection
+ rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
+ rnoContent = /^(?:GET|HEAD)$/,
+ rprotocol = /^\/\//,
+
+ /* Prefilters
+ * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
+ * 2) These are called:
+ * - BEFORE asking for a transport
+ * - AFTER param serialization (s.data is a string if s.processData is true)
+ * 3) key is the dataType
+ * 4) the catchall symbol "*" can be used
+ * 5) execution will start with transport dataType and THEN continue down to "*" if needed
+ */
+ prefilters = {},
+
+ /* Transports bindings
+ * 1) key is the dataType
+ * 2) the catchall symbol "*" can be used
+ * 3) selection will start with transport dataType and THEN go to "*" if needed
+ */
+ transports = {},
+
+ // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
+ allTypes = "*/".concat( "*" ),
+
+ // Anchor tag for parsing the document origin
+ originAnchor = document.createElement( "a" );
+ originAnchor.href = location.href;
+
+// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
+function addToPrefiltersOrTransports( structure ) {
+
+ // dataTypeExpression is optional and defaults to "*"
+ return function( dataTypeExpression, func ) {
+
+ if ( typeof dataTypeExpression !== "string" ) {
+ func = dataTypeExpression;
+ dataTypeExpression = "*";
+ }
+
+ var dataType,
+ i = 0,
+ dataTypes = dataTypeExpression.toLowerCase().match( rnotwhite ) || [];
+
+ if ( jQuery.isFunction( func ) ) {
+
+ // For each dataType in the dataTypeExpression
+ while ( ( dataType = dataTypes[ i++ ] ) ) {
+
+ // Prepend if requested
+ if ( dataType[ 0 ] === "+" ) {
+ dataType = dataType.slice( 1 ) || "*";
+ ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func );
+
+ // Otherwise append
+ } else {
+ ( structure[ dataType ] = structure[ dataType ] || [] ).push( func );
+ }
+ }
+ }
+ };
+}
+
+// Base inspection function for prefilters and transports
+function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {
+
+ var inspected = {},
+ seekingTransport = ( structure === transports );
+
+ function inspect( dataType ) {
+ var selected;
+ inspected[ dataType ] = true;
+ jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {
+ var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );
+ if ( typeof dataTypeOrTransport === "string" &&
+ !seekingTransport && !inspected[ dataTypeOrTransport ] ) {
+
+ options.dataTypes.unshift( dataTypeOrTransport );
+ inspect( dataTypeOrTransport );
+ return false;
+ } else if ( seekingTransport ) {
+ return !( selected = dataTypeOrTransport );
+ }
+ } );
+ return selected;
+ }
+
+ return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" );
+}
+
+// A special extend for ajax options
+// that takes "flat" options (not to be deep extended)
+// Fixes #9887
+function ajaxExtend( target, src ) {
+ var key, deep,
+ flatOptions = jQuery.ajaxSettings.flatOptions || {};
+
+ for ( key in src ) {
+ if ( src[ key ] !== undefined ) {
+ ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];
+ }
+ }
+ if ( deep ) {
+ jQuery.extend( true, target, deep );
+ }
+
+ return target;
+}
+
+/* Handles responses to an ajax request:
+ * - finds the right dataType (mediates between content-type and expected dataType)
+ * - returns the corresponding response
+ */
+function ajaxHandleResponses( s, jqXHR, responses ) {
+
+ var ct, type, finalDataType, firstDataType,
+ contents = s.contents,
+ dataTypes = s.dataTypes;
+
+ // Remove auto dataType and get content-type in the process
+ while ( dataTypes[ 0 ] === "*" ) {
+ dataTypes.shift();
+ if ( ct === undefined ) {
+ ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" );
+ }
+ }
+
+ // Check if we're dealing with a known content-type
+ if ( ct ) {
+ for ( type in contents ) {
+ if ( contents[ type ] && contents[ type ].test( ct ) ) {
+ dataTypes.unshift( type );
+ break;
+ }
+ }
+ }
+
+ // Check to see if we have a response for the expected dataType
+ if ( dataTypes[ 0 ] in responses ) {
+ finalDataType = dataTypes[ 0 ];
+ } else {
+
+ // Try convertible dataTypes
+ for ( type in responses ) {
+ if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) {
+ finalDataType = type;
+ break;
+ }
+ if ( !firstDataType ) {
+ firstDataType = type;
+ }
+ }
+
+ // Or just use first one
+ finalDataType = finalDataType || firstDataType;
+ }
+
+ // If we found a dataType
+ // We add the dataType to the list if needed
+ // and return the corresponding response
+ if ( finalDataType ) {
+ if ( finalDataType !== dataTypes[ 0 ] ) {
+ dataTypes.unshift( finalDataType );
+ }
+ return responses[ finalDataType ];
+ }
+}
+
+/* Chain conversions given the request and the original response
+ * Also sets the responseXXX fields on the jqXHR instance
+ */
+function ajaxConvert( s, response, jqXHR, isSuccess ) {
+ var conv2, current, conv, tmp, prev,
+ converters = {},
+
+ // Work with a copy of dataTypes in case we need to modify it for conversion
+ dataTypes = s.dataTypes.slice();
+
+ // Create converters map with lowercased keys
+ if ( dataTypes[ 1 ] ) {
+ for ( conv in s.converters ) {
+ converters[ conv.toLowerCase() ] = s.converters[ conv ];
+ }
+ }
+
+ current = dataTypes.shift();
+
+ // Convert to each sequential dataType
+ while ( current ) {
+
+ if ( s.responseFields[ current ] ) {
+ jqXHR[ s.responseFields[ current ] ] = response;
+ }
+
+ // Apply the dataFilter if provided
+ if ( !prev && isSuccess && s.dataFilter ) {
+ response = s.dataFilter( response, s.dataType );
+ }
+
+ prev = current;
+ current = dataTypes.shift();
+
+ if ( current ) {
+
+ // There's only work to do if current dataType is non-auto
+ if ( current === "*" ) {
+
+ current = prev;
+
+ // Convert response if prev dataType is non-auto and differs from current
+ } else if ( prev !== "*" && prev !== current ) {
+
+ // Seek a direct converter
+ conv = converters[ prev + " " + current ] || converters[ "* " + current ];
+
+ // If none found, seek a pair
+ if ( !conv ) {
+ for ( conv2 in converters ) {
+
+ // If conv2 outputs current
+ tmp = conv2.split( " " );
+ if ( tmp[ 1 ] === current ) {
+
+ // If prev can be converted to accepted input
+ conv = converters[ prev + " " + tmp[ 0 ] ] ||
+ converters[ "* " + tmp[ 0 ] ];
+ if ( conv ) {
+
+ // Condense equivalence converters
+ if ( conv === true ) {
+ conv = converters[ conv2 ];
+
+ // Otherwise, insert the intermediate dataType
+ } else if ( converters[ conv2 ] !== true ) {
+ current = tmp[ 0 ];
+ dataTypes.unshift( tmp[ 1 ] );
+ }
+ break;
+ }
+ }
+ }
+ }
+
+ // Apply converter (if not an equivalence)
+ if ( conv !== true ) {
+
+ // Unless errors are allowed to bubble, catch and return them
+ if ( conv && s.throws ) {
+ response = conv( response );
+ } else {
+ try {
+ response = conv( response );
+ } catch ( e ) {
+ return {
+ state: "parsererror",
+ error: conv ? e : "No conversion from " + prev + " to " + current
+ };
+ }
+ }
+ }
+ }
+ }
+ }
+
+ return { state: "success", data: response };
+}
+
+jQuery.extend( {
+
+ // Counter for holding the number of active queries
+ active: 0,
+
+ // Last-Modified header cache for next request
+ lastModified: {},
+ etag: {},
+
+ ajaxSettings: {
+ url: location.href,
+ type: "GET",
+ isLocal: rlocalProtocol.test( location.protocol ),
+ global: true,
+ processData: true,
+ async: true,
+ contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+
+ /*
+ timeout: 0,
+ data: null,
+ dataType: null,
+ username: null,
+ password: null,
+ cache: null,
+ throws: false,
+ traditional: false,
+ headers: {},
+ */
+
+ accepts: {
+ "*": allTypes,
+ text: "text/plain",
+ html: "text/html",
+ xml: "application/xml, text/xml",
+ json: "application/json, text/javascript"
+ },
+
+ contents: {
+ xml: /\bxml\b/,
+ html: /\bhtml/,
+ json: /\bjson\b/
+ },
+
+ responseFields: {
+ xml: "responseXML",
+ text: "responseText",
+ json: "responseJSON"
+ },
+
+ // Data converters
+ // Keys separate source (or catchall "*") and destination types with a single space
+ converters: {
+
+ // Convert anything to text
+ "* text": String,
+
+ // Text to html (true = no transformation)
+ "text html": true,
+
+ // Evaluate text as a json expression
+ "text json": JSON.parse,
+
+ // Parse text as xml
+ "text xml": jQuery.parseXML
+ },
+
+ // For options that shouldn't be deep extended:
+ // you can add your own custom options here if
+ // and when you create one that shouldn't be
+ // deep extended (see ajaxExtend)
+ flatOptions: {
+ url: true,
+ context: true
+ }
+ },
+
+ // Creates a full fledged settings object into target
+ // with both ajaxSettings and settings fields.
+ // If target is omitted, writes into ajaxSettings.
+ ajaxSetup: function( target, settings ) {
+ return settings ?
+
+ // Building a settings object
+ ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :
+
+ // Extending ajaxSettings
+ ajaxExtend( jQuery.ajaxSettings, target );
+ },
+
+ ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
+ ajaxTransport: addToPrefiltersOrTransports( transports ),
+
+ // Main method
+ ajax: function( url, options ) {
+
+ // If url is an object, simulate pre-1.5 signature
+ if ( typeof url === "object" ) {
+ options = url;
+ url = undefined;
+ }
+
+ // Force options to be an object
+ options = options || {};
+
+ var transport,
+
+ // URL without anti-cache param
+ cacheURL,
+
+ // Response headers
+ responseHeadersString,
+ responseHeaders,
+
+ // timeout handle
+ timeoutTimer,
+
+ // Url cleanup var
+ urlAnchor,
+
+ // Request state (becomes false upon send and true upon completion)
+ completed,
+
+ // To know if global events are to be dispatched
+ fireGlobals,
+
+ // Loop variable
+ i,
+
+ // uncached part of the url
+ uncached,
+
+ // Create the final options object
+ s = jQuery.ajaxSetup( {}, options ),
+
+ // Callbacks context
+ callbackContext = s.context || s,
+
+ // Context for global events is callbackContext if it is a DOM node or jQuery collection
+ globalEventContext = s.context &&
+ ( callbackContext.nodeType || callbackContext.jquery ) ?
+ jQuery( callbackContext ) :
+ jQuery.event,
+
+ // Deferreds
+ deferred = jQuery.Deferred(),
+ completeDeferred = jQuery.Callbacks( "once memory" ),
+
+ // Status-dependent callbacks
+ statusCode = s.statusCode || {},
+
+ // Headers (they are sent all at once)
+ requestHeaders = {},
+ requestHeadersNames = {},
+
+ // Default abort message
+ strAbort = "canceled",
+
+ // Fake xhr
+ jqXHR = {
+ readyState: 0,
+
+ // Builds headers hashtable if needed
+ getResponseHeader: function( key ) {
+ var match;
+ if ( completed ) {
+ if ( !responseHeaders ) {
+ responseHeaders = {};
+ while ( ( match = rheaders.exec( responseHeadersString ) ) ) {
+ responseHeaders[ match[ 1 ].toLowerCase() ] = match[ 2 ];
+ }
+ }
+ match = responseHeaders[ key.toLowerCase() ];
+ }
+ return match == null ? null : match;
+ },
+
+ // Raw string
+ getAllResponseHeaders: function() {
+ return completed ? responseHeadersString : null;
+ },
+
+ // Caches the header
+ setRequestHeader: function( name, value ) {
+ if ( completed == null ) {
+ name = requestHeadersNames[ name.toLowerCase() ] =
+ requestHeadersNames[ name.toLowerCase() ] || name;
+ requestHeaders[ name ] = value;
+ }
+ return this;
+ },
+
+ // Overrides response content-type header
+ overrideMimeType: function( type ) {
+ if ( completed == null ) {
+ s.mimeType = type;
+ }
+ return this;
+ },
+
+ // Status-dependent callbacks
+ statusCode: function( map ) {
+ var code;
+ if ( map ) {
+ if ( completed ) {
+
+ // Execute the appropriate callbacks
+ jqXHR.always( map[ jqXHR.status ] );
+ } else {
+
+ // Lazy-add the new callbacks in a way that preserves old ones
+ for ( code in map ) {
+ statusCode[ code ] = [ statusCode[ code ], map[ code ] ];
+ }
+ }
+ }
+ return this;
+ },
+
+ // Cancel the request
+ abort: function( statusText ) {
+ var finalText = statusText || strAbort;
+ if ( transport ) {
+ transport.abort( finalText );
+ }
+ done( 0, finalText );
+ return this;
+ }
+ };
+
+ // Attach deferreds
+ deferred.promise( jqXHR );
+
+ // Add protocol if not provided (prefilters might expect it)
+ // Handle falsy url in the settings object (#10093: consistency with old signature)
+ // We also use the url parameter if available
+ s.url = ( ( url || s.url || location.href ) + "" )
+ .replace( rprotocol, location.protocol + "//" );
+
+ // Alias method option to type as per ticket #12004
+ s.type = options.method || options.type || s.method || s.type;
+
+ // Extract dataTypes list
+ s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnotwhite ) || [ "" ];
+
+ // A cross-domain request is in order when the origin doesn't match the current origin.
+ if ( s.crossDomain == null ) {
+ urlAnchor = document.createElement( "a" );
+
+ // Support: IE <=8 - 11, Edge 12 - 13
+ // IE throws exception on accessing the href property if url is malformed,
+ // e.g. http://example.com:80x/
+ try {
+ urlAnchor.href = s.url;
+
+ // Support: IE <=8 - 11 only
+ // Anchor's host property isn't correctly set when s.url is relative
+ urlAnchor.href = urlAnchor.href;
+ s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !==
+ urlAnchor.protocol + "//" + urlAnchor.host;
+ } catch ( e ) {
+
+ // If there is an error parsing the URL, assume it is crossDomain,
+ // it can be rejected by the transport if it is invalid
+ s.crossDomain = true;
+ }
+ }
+
+ // Convert data if not already a string
+ if ( s.data && s.processData && typeof s.data !== "string" ) {
+ s.data = jQuery.param( s.data, s.traditional );
+ }
+
+ // Apply prefilters
+ inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
+
+ // If request was aborted inside a prefilter, stop there
+ if ( completed ) {
+ return jqXHR;
+ }
+
+ // We can fire global events as of now if asked to
+ // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)
+ fireGlobals = jQuery.event && s.global;
+
+ // Watch for a new set of requests
+ if ( fireGlobals && jQuery.active++ === 0 ) {
+ jQuery.event.trigger( "ajaxStart" );
+ }
+
+ // Uppercase the type
+ s.type = s.type.toUpperCase();
+
+ // Determine if request has content
+ s.hasContent = !rnoContent.test( s.type );
+
+ // Save the URL in case we're toying with the If-Modified-Since
+ // and/or If-None-Match header later on
+ // Remove hash to simplify url manipulation
+ cacheURL = s.url.replace( rhash, "" );
+
+ // More options handling for requests with no content
+ if ( !s.hasContent ) {
+
+ // Remember the hash so we can put it back
+ uncached = s.url.slice( cacheURL.length );
+
+ // If data is available, append data to url
+ if ( s.data ) {
+ cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data;
+
+ // #9682: remove data so that it's not used in an eventual retry
+ delete s.data;
+ }
+
+ // Add anti-cache in uncached url if needed
+ if ( s.cache === false ) {
+ cacheURL = cacheURL.replace( rts, "" );
+ uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce++ ) + uncached;
+ }
+
+ // Put hash and anti-cache on the URL that will be requested (gh-1732)
+ s.url = cacheURL + uncached;
+
+ // Change '%20' to '+' if this is encoded form body content (gh-2658)
+ } else if ( s.data && s.processData &&
+ ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) {
+ s.data = s.data.replace( r20, "+" );
+ }
+
+ // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+ if ( s.ifModified ) {
+ if ( jQuery.lastModified[ cacheURL ] ) {
+ jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] );
+ }
+ if ( jQuery.etag[ cacheURL ] ) {
+ jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );
+ }
+ }
+
+ // Set the correct header, if data is being sent
+ if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
+ jqXHR.setRequestHeader( "Content-Type", s.contentType );
+ }
+
+ // Set the Accepts header for the server, depending on the dataType
+ jqXHR.setRequestHeader(
+ "Accept",
+ s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ?
+ s.accepts[ s.dataTypes[ 0 ] ] +
+ ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
+ s.accepts[ "*" ]
+ );
+
+ // Check for headers option
+ for ( i in s.headers ) {
+ jqXHR.setRequestHeader( i, s.headers[ i ] );
+ }
+
+ // Allow custom headers/mimetypes and early abort
+ if ( s.beforeSend &&
+ ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) {
+
+ // Abort if not done already and return
+ return jqXHR.abort();
+ }
+
+ // Aborting is no longer a cancellation
+ strAbort = "abort";
+
+ // Install callbacks on deferreds
+ completeDeferred.add( s.complete );
+ jqXHR.done( s.success );
+ jqXHR.fail( s.error );
+
+ // Get transport
+ transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
+
+ // If no transport, we auto-abort
+ if ( !transport ) {
+ done( -1, "No Transport" );
+ } else {
+ jqXHR.readyState = 1;
+
+ // Send global event
+ if ( fireGlobals ) {
+ globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
+ }
+
+ // If request was aborted inside ajaxSend, stop there
+ if ( completed ) {
+ return jqXHR;
+ }
+
+ // Timeout
+ if ( s.async && s.timeout > 0 ) {
+ timeoutTimer = window.setTimeout( function() {
+ jqXHR.abort( "timeout" );
+ }, s.timeout );
+ }
+
+ try {
+ completed = false;
+ transport.send( requestHeaders, done );
+ } catch ( e ) {
+
+ // Rethrow post-completion exceptions
+ if ( completed ) {
+ throw e;
+ }
+
+ // Propagate others as results
+ done( -1, e );
+ }
+ }
+
+ // Callback for when everything is done
+ function done( status, nativeStatusText, responses, headers ) {
+ var isSuccess, success, error, response, modified,
+ statusText = nativeStatusText;
+
+ // Ignore repeat invocations
+ if ( completed ) {
+ return;
+ }
+
+ completed = true;
+
+ // Clear timeout if it exists
+ if ( timeoutTimer ) {
+ window.clearTimeout( timeoutTimer );
+ }
+
+ // Dereference transport for early garbage collection
+ // (no matter how long the jqXHR object will be used)
+ transport = undefined;
+
+ // Cache response headers
+ responseHeadersString = headers || "";
+
+ // Set readyState
+ jqXHR.readyState = status > 0 ? 4 : 0;
+
+ // Determine if successful
+ isSuccess = status >= 200 && status < 300 || status === 304;
+
+ // Get response data
+ if ( responses ) {
+ response = ajaxHandleResponses( s, jqXHR, responses );
+ }
+
+ // Convert no matter what (that way responseXXX fields are always set)
+ response = ajaxConvert( s, response, jqXHR, isSuccess );
+
+ // If successful, handle type chaining
+ if ( isSuccess ) {
+
+ // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+ if ( s.ifModified ) {
+ modified = jqXHR.getResponseHeader( "Last-Modified" );
+ if ( modified ) {
+ jQuery.lastModified[ cacheURL ] = modified;
+ }
+ modified = jqXHR.getResponseHeader( "etag" );
+ if ( modified ) {
+ jQuery.etag[ cacheURL ] = modified;
+ }
+ }
+
+ // if no content
+ if ( status === 204 || s.type === "HEAD" ) {
+ statusText = "nocontent";
+
+ // if not modified
+ } else if ( status === 304 ) {
+ statusText = "notmodified";
+
+ // If we have data, let's convert it
+ } else {
+ statusText = response.state;
+ success = response.data;
+ error = response.error;
+ isSuccess = !error;
+ }
+ } else {
+
+ // Extract error from statusText and normalize for non-aborts
+ error = statusText;
+ if ( status || !statusText ) {
+ statusText = "error";
+ if ( status < 0 ) {
+ status = 0;
+ }
+ }
+ }
+
+ // Set data for the fake xhr object
+ jqXHR.status = status;
+ jqXHR.statusText = ( nativeStatusText || statusText ) + "";
+
+ // Success/Error
+ if ( isSuccess ) {
+ deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
+ } else {
+ deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
+ }
+
+ // Status-dependent callbacks
+ jqXHR.statusCode( statusCode );
+ statusCode = undefined;
+
+ if ( fireGlobals ) {
+ globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",
+ [ jqXHR, s, isSuccess ? success : error ] );
+ }
+
+ // Complete
+ completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );
+
+ if ( fireGlobals ) {
+ globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
+
+ // Handle the global AJAX counter
+ if ( !( --jQuery.active ) ) {
+ jQuery.event.trigger( "ajaxStop" );
+ }
+ }
+ }
+
+ return jqXHR;
+ },
+
+ getJSON: function( url, data, callback ) {
+ return jQuery.get( url, data, callback, "json" );
+ },
+
+ getScript: function( url, callback ) {
+ return jQuery.get( url, undefined, callback, "script" );
+ }
+} );
+
+jQuery.each( [ "get", "post" ], function( i, method ) {
+ jQuery[ method ] = function( url, data, callback, type ) {
+
+ // Shift arguments if data argument was omitted
+ if ( jQuery.isFunction( data ) ) {
+ type = type || callback;
+ callback = data;
+ data = undefined;
+ }
+
+ // The url can be an options object (which then must have .url)
+ return jQuery.ajax( jQuery.extend( {
+ url: url,
+ type: method,
+ dataType: type,
+ data: data,
+ success: callback
+ }, jQuery.isPlainObject( url ) && url ) );
+ };
+} );
+
+
+jQuery._evalUrl = function( url ) {
+ return jQuery.ajax( {
+ url: url,
+
+ // Make this explicit, since user can override this through ajaxSetup (#11264)
+ type: "GET",
+ dataType: "script",
+ cache: true,
+ async: false,
+ global: false,
+ "throws": true
+ } );
+};
+
+
+jQuery.fn.extend( {
+ wrapAll: function( html ) {
+ var wrap;
+
+ if ( this[ 0 ] ) {
+ if ( jQuery.isFunction( html ) ) {
+ html = html.call( this[ 0 ] );
+ }
+
+ // The elements to wrap the target around
+ wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );
+
+ if ( this[ 0 ].parentNode ) {
+ wrap.insertBefore( this[ 0 ] );
+ }
+
+ wrap.map( function() {
+ var elem = this;
+
+ while ( elem.firstElementChild ) {
+ elem = elem.firstElementChild;
+ }
+
+ return elem;
+ } ).append( this );
+ }
+
+ return this;
+ },
+
+ wrapInner: function( html ) {
+ if ( jQuery.isFunction( html ) ) {
+ return this.each( function( i ) {
+ jQuery( this ).wrapInner( html.call( this, i ) );
+ } );
+ }
+
+ return this.each( function() {
+ var self = jQuery( this ),
+ contents = self.contents();
+
+ if ( contents.length ) {
+ contents.wrapAll( html );
+
+ } else {
+ self.append( html );
+ }
+ } );
+ },
+
+ wrap: function( html ) {
+ var isFunction = jQuery.isFunction( html );
+
+ return this.each( function( i ) {
+ jQuery( this ).wrapAll( isFunction ? html.call( this, i ) : html );
+ } );
+ },
+
+ unwrap: function( selector ) {
+ this.parent( selector ).not( "body" ).each( function() {
+ jQuery( this ).replaceWith( this.childNodes );
+ } );
+ return this;
+ }
+} );
+
+
+jQuery.expr.pseudos.hidden = function( elem ) {
+ return !jQuery.expr.pseudos.visible( elem );
+};
+jQuery.expr.pseudos.visible = function( elem ) {
+ return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length );
+};
+
+
+
+
+jQuery.ajaxSettings.xhr = function() {
+ try {
+ return new window.XMLHttpRequest();
+ } catch ( e ) {}
+};
+
+var xhrSuccessStatus = {
+
+ // File protocol always yields status code 0, assume 200
+ 0: 200,
+
+ // Support: IE <=9 only
+ // #1450: sometimes IE returns 1223 when it should be 204
+ 1223: 204
+ },
+ xhrSupported = jQuery.ajaxSettings.xhr();
+
+support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported );
+support.ajax = xhrSupported = !!xhrSupported;
+
+jQuery.ajaxTransport( function( options ) {
+ var callback, errorCallback;
+
+ // Cross domain only allowed if supported through XMLHttpRequest
+ if ( support.cors || xhrSupported && !options.crossDomain ) {
+ return {
+ send: function( headers, complete ) {
+ var i,
+ xhr = options.xhr();
+
+ xhr.open(
+ options.type,
+ options.url,
+ options.async,
+ options.username,
+ options.password
+ );
+
+ // Apply custom fields if provided
+ if ( options.xhrFields ) {
+ for ( i in options.xhrFields ) {
+ xhr[ i ] = options.xhrFields[ i ];
+ }
+ }
+
+ // Override mime type if needed
+ if ( options.mimeType && xhr.overrideMimeType ) {
+ xhr.overrideMimeType( options.mimeType );
+ }
+
+ // X-Requested-With header
+ // For cross-domain requests, seeing as conditions for a preflight are
+ // akin to a jigsaw puzzle, we simply never set it to be sure.
+ // (it can always be set on a per-request basis or even using ajaxSetup)
+ // For same-domain requests, won't change header if already provided.
+ if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) {
+ headers[ "X-Requested-With" ] = "XMLHttpRequest";
+ }
+
+ // Set headers
+ for ( i in headers ) {
+ xhr.setRequestHeader( i, headers[ i ] );
+ }
+
+ // Callback
+ callback = function( type ) {
+ return function() {
+ if ( callback ) {
+ callback = errorCallback = xhr.onload =
+ xhr.onerror = xhr.onabort = xhr.onreadystatechange = null;
+
+ if ( type === "abort" ) {
+ xhr.abort();
+ } else if ( type === "error" ) {
+
+ // Support: IE <=9 only
+ // On a manual native abort, IE9 throws
+ // errors on any property access that is not readyState
+ if ( typeof xhr.status !== "number" ) {
+ complete( 0, "error" );
+ } else {
+ complete(
+
+ // File: protocol always yields status 0; see #8605, #14207
+ xhr.status,
+ xhr.statusText
+ );
+ }
+ } else {
+ complete(
+ xhrSuccessStatus[ xhr.status ] || xhr.status,
+ xhr.statusText,
+
+ // Support: IE <=9 only
+ // IE9 has no XHR2 but throws on binary (trac-11426)
+ // For XHR2 non-text, let the caller handle it (gh-2498)
+ ( xhr.responseType || "text" ) !== "text" ||
+ typeof xhr.responseText !== "string" ?
+ { binary: xhr.response } :
+ { text: xhr.responseText },
+ xhr.getAllResponseHeaders()
+ );
+ }
+ }
+ };
+ };
+
+ // Listen to events
+ xhr.onload = callback();
+ errorCallback = xhr.onerror = callback( "error" );
+
+ // Support: IE 9 only
+ // Use onreadystatechange to replace onabort
+ // to handle uncaught aborts
+ if ( xhr.onabort !== undefined ) {
+ xhr.onabort = errorCallback;
+ } else {
+ xhr.onreadystatechange = function() {
+
+ // Check readyState before timeout as it changes
+ if ( xhr.readyState === 4 ) {
+
+ // Allow onerror to be called first,
+ // but that will not handle a native abort
+ // Also, save errorCallback to a variable
+ // as xhr.onerror cannot be accessed
+ window.setTimeout( function() {
+ if ( callback ) {
+ errorCallback();
+ }
+ } );
+ }
+ };
+ }
+
+ // Create the abort callback
+ callback = callback( "abort" );
+
+ try {
+
+ // Do send the request (this may raise an exception)
+ xhr.send( options.hasContent && options.data || null );
+ } catch ( e ) {
+
+ // #14683: Only rethrow if this hasn't been notified as an error yet
+ if ( callback ) {
+ throw e;
+ }
+ }
+ },
+
+ abort: function() {
+ if ( callback ) {
+ callback();
+ }
+ }
+ };
+ }
+} );
+
+
+
+
+// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432)
+jQuery.ajaxPrefilter( function( s ) {
+ if ( s.crossDomain ) {
+ s.contents.script = false;
+ }
+} );
+
+// Install script dataType
+jQuery.ajaxSetup( {
+ accepts: {
+ script: "text/javascript, application/javascript, " +
+ "application/ecmascript, application/x-ecmascript"
+ },
+ contents: {
+ script: /\b(?:java|ecma)script\b/
+ },
+ converters: {
+ "text script": function( text ) {
+ jQuery.globalEval( text );
+ return text;
+ }
+ }
+} );
+
+// Handle cache's special case and crossDomain
+jQuery.ajaxPrefilter( "script", function( s ) {
+ if ( s.cache === undefined ) {
+ s.cache = false;
+ }
+ if ( s.crossDomain ) {
+ s.type = "GET";
+ }
+} );
+
+// Bind script tag hack transport
+jQuery.ajaxTransport( "script", function( s ) {
+
+ // This transport only deals with cross domain requests
+ if ( s.crossDomain ) {
+ var script, callback;
+ return {
+ send: function( _, complete ) {
+ script = jQuery( "<script>" ).prop( {
+ charset: s.scriptCharset,
+ src: s.url
+ } ).on(
+ "load error",
+ callback = function( evt ) {
+ script.remove();
+ callback = null;
+ if ( evt ) {
+ complete( evt.type === "error" ? 404 : 200, evt.type );
+ }
+ }
+ );
+
+ // Use native DOM manipulation to avoid our domManip AJAX trickery
+ document.head.appendChild( script[ 0 ] );
+ },
+ abort: function() {
+ if ( callback ) {
+ callback();
+ }
+ }
+ };
+ }
+} );
+
+
+
+
+var oldCallbacks = [],
+ rjsonp = /(=)\?(?=&|$)|\?\?/;
+
+// Default jsonp settings
+jQuery.ajaxSetup( {
+ jsonp: "callback",
+ jsonpCallback: function() {
+ var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce++ ) );
+ this[ callback ] = true;
+ return callback;
+ }
+} );
+
+// Detect, normalize options and install callbacks for jsonp requests
+jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {
+
+ var callbackName, overwritten, responseContainer,
+ jsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ?
+ "url" :
+ typeof s.data === "string" &&
+ ( s.contentType || "" )
+ .indexOf( "application/x-www-form-urlencoded" ) === 0 &&
+ rjsonp.test( s.data ) && "data"
+ );
+
+ // Handle iff the expected data type is "jsonp" or we have a parameter to set
+ if ( jsonProp || s.dataTypes[ 0 ] === "jsonp" ) {
+
+ // Get callback name, remembering preexisting value associated with it
+ callbackName = s.jsonpCallback = jQuery.isFunction( s.jsonpCallback ) ?
+ s.jsonpCallback() :
+ s.jsonpCallback;
+
+ // Insert callback into url or form data
+ if ( jsonProp ) {
+ s[ jsonProp ] = s[ jsonProp ].replace( rjsonp, "$1" + callbackName );
+ } else if ( s.jsonp !== false ) {
+ s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName;
+ }
+
+ // Use data converter to retrieve json after script execution
+ s.converters[ "script json" ] = function() {
+ if ( !responseContainer ) {
+ jQuery.error( callbackName + " was not called" );
+ }
+ return responseContainer[ 0 ];
+ };
+
+ // Force json dataType
+ s.dataTypes[ 0 ] = "json";
+
+ // Install callback
+ overwritten = window[ callbackName ];
+ window[ callbackName ] = function() {
+ responseContainer = arguments;
+ };
+
+ // Clean-up function (fires after converters)
+ jqXHR.always( function() {
+
+ // If previous value didn't exist - remove it
+ if ( overwritten === undefined ) {
+ jQuery( window ).removeProp( callbackName );
+
+ // Otherwise restore preexisting value
+ } else {
+ window[ callbackName ] = overwritten;
+ }
+
+ // Save back as free
+ if ( s[ callbackName ] ) {
+
+ // Make sure that re-using the options doesn't screw things around
+ s.jsonpCallback = originalSettings.jsonpCallback;
+
+ // Save the callback name for future use
+ oldCallbacks.push( callbackName );
+ }
+
+ // Call if it was a function and we have a response
+ if ( responseContainer && jQuery.isFunction( overwritten ) ) {
+ overwritten( responseContainer[ 0 ] );
+ }
+
+ responseContainer = overwritten = undefined;
+ } );
+
+ // Delegate to script
+ return "script";
+ }
+} );
+
+
+
+
+// Support: Safari 8 only
+// In Safari 8 documents created via document.implementation.createHTMLDocument
+// collapse sibling forms: the second one becomes a child of the first one.
+// Because of that, this security measure has to be disabled in Safari 8.
+// https://bugs.webkit.org/show_bug.cgi?id=137337
+support.createHTMLDocument = ( function() {
+ var body = document.implementation.createHTMLDocument( "" ).body;
+ body.innerHTML = "<form></form><form></form>";
+ return body.childNodes.length === 2;
+} )();
+
+
+// Argument "data" should be string of html
+// context (optional): If specified, the fragment will be created in this context,
+// defaults to document
+// keepScripts (optional): If true, will include scripts passed in the html string
+jQuery.parseHTML = function( data, context, keepScripts ) {
+ if ( typeof data !== "string" ) {
+ return [];
+ }
+ if ( typeof context === "boolean" ) {
+ keepScripts = context;
+ context = false;
+ }
+
+ var base, parsed, scripts;
+
+ if ( !context ) {
+
+ // Stop scripts or inline event handlers from being executed immediately
+ // by using document.implementation
+ if ( support.createHTMLDocument ) {
+ context = document.implementation.createHTMLDocument( "" );
+
+ // Set the base href for the created document
+ // so any parsed elements with URLs
+ // are based on the document's URL (gh-2965)
+ base = context.createElement( "base" );
+ base.href = document.location.href;
+ context.head.appendChild( base );
+ } else {
+ context = document;
+ }
+ }
+
+ parsed = rsingleTag.exec( data );
+ scripts = !keepScripts && [];
+
+ // Single tag
+ if ( parsed ) {
+ return [ context.createElement( parsed[ 1 ] ) ];
+ }
+
+ parsed = buildFragment( [ data ], context, scripts );
+
+ if ( scripts && scripts.length ) {
+ jQuery( scripts ).remove();
+ }
+
+ return jQuery.merge( [], parsed.childNodes );
+};
+
+
+/**
+ * Load a url into a page
+ */
+jQuery.fn.load = function( url, params, callback ) {
+ var selector, type, response,
+ self = this,
+ off = url.indexOf( " " );
+
+ if ( off > -1 ) {
+ selector = jQuery.trim( url.slice( off ) );
+ url = url.slice( 0, off );
+ }
+
+ // If it's a function
+ if ( jQuery.isFunction( params ) ) {
+
+ // We assume that it's the callback
+ callback = params;
+ params = undefined;
+
+ // Otherwise, build a param string
+ } else if ( params && typeof params === "object" ) {
+ type = "POST";
+ }
+
+ // If we have elements to modify, make the request
+ if ( self.length > 0 ) {
+ jQuery.ajax( {
+ url: url,
+
+ // If "type" variable is undefined, then "GET" method will be used.
+ // Make value of this field explicit since
+ // user can override it through ajaxSetup method
+ type: type || "GET",
+ dataType: "html",
+ data: params
+ } ).done( function( responseText ) {
+
+ // Save response for use in complete callback
+ response = arguments;
+
+ self.html( selector ?
+
+ // If a selector was specified, locate the right elements in a dummy div
+ // Exclude scripts to avoid IE 'Permission Denied' errors
+ jQuery( "<div>" ).append( jQuery.parseHTML( responseText ) ).find( selector ) :
+
+ // Otherwise use the full result
+ responseText );
+
+ // If the request succeeds, this function gets "data", "status", "jqXHR"
+ // but they are ignored because response was set above.
+ // If it fails, this function gets "jqXHR", "status", "error"
+ } ).always( callback && function( jqXHR, status ) {
+ self.each( function() {
+ callback.apply( this, response || [ jqXHR.responseText, status, jqXHR ] );
+ } );
+ } );
+ }
+
+ return this;
+};
+
+
+
+
+// Attach a bunch of functions for handling common AJAX events
+jQuery.each( [
+ "ajaxStart",
+ "ajaxStop",
+ "ajaxComplete",
+ "ajaxError",
+ "ajaxSuccess",
+ "ajaxSend"
+], function( i, type ) {
+ jQuery.fn[ type ] = function( fn ) {
+ return this.on( type, fn );
+ };
+} );
+
+
+
+
+jQuery.expr.pseudos.animated = function( elem ) {
+ return jQuery.grep( jQuery.timers, function( fn ) {
+ return elem === fn.elem;
+ } ).length;
+};
+
+
+
+
+/**
+ * Gets a window from an element
+ */
+function getWindow( elem ) {
+ return jQuery.isWindow( elem ) ? elem : elem.nodeType === 9 && elem.defaultView;
+}
+
+jQuery.offset = {
+ setOffset: function( elem, options, i ) {
+ var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
+ position = jQuery.css( elem, "position" ),
+ curElem = jQuery( elem ),
+ props = {};
+
+ // Set position first, in-case top/left are set even on static elem
+ if ( position === "static" ) {
+ elem.style.position = "relative";
+ }
+
+ curOffset = curElem.offset();
+ curCSSTop = jQuery.css( elem, "top" );
+ curCSSLeft = jQuery.css( elem, "left" );
+ calculatePosition = ( position === "absolute" || position === "fixed" ) &&
+ ( curCSSTop + curCSSLeft ).indexOf( "auto" ) > -1;
+
+ // Need to be able to calculate position if either
+ // top or left is auto and position is either absolute or fixed
+ if ( calculatePosition ) {
+ curPosition = curElem.position();
+ curTop = curPosition.top;
+ curLeft = curPosition.left;
+
+ } else {
+ curTop = parseFloat( curCSSTop ) || 0;
+ curLeft = parseFloat( curCSSLeft ) || 0;
+ }
+
+ if ( jQuery.isFunction( options ) ) {
+
+ // Use jQuery.extend here to allow modification of coordinates argument (gh-1848)
+ options = options.call( elem, i, jQuery.extend( {}, curOffset ) );
+ }
+
+ if ( options.top != null ) {
+ props.top = ( options.top - curOffset.top ) + curTop;
+ }
+ if ( options.left != null ) {
+ props.left = ( options.left - curOffset.left ) + curLeft;
+ }
+
+ if ( "using" in options ) {
+ options.using.call( elem, props );
+
+ } else {
+ curElem.css( props );
+ }
+ }
+};
+
+jQuery.fn.extend( {
+ offset: function( options ) {
+
+ // Preserve chaining for setter
+ if ( arguments.length ) {
+ return options === undefined ?
+ this :
+ this.each( function( i ) {
+ jQuery.offset.setOffset( this, options, i );
+ } );
+ }
+
+ var docElem, win, rect, doc,
+ elem = this[ 0 ];
+
+ if ( !elem ) {
+ return;
+ }
+
+ // Support: IE <=11 only
+ // Running getBoundingClientRect on a
+ // disconnected node in IE throws an error
+ if ( !elem.getClientRects().length ) {
+ return { top: 0, left: 0 };
+ }
+
+ rect = elem.getBoundingClientRect();
+
+ // Make sure element is not hidden (display: none)
+ if ( rect.width || rect.height ) {
+ doc = elem.ownerDocument;
+ win = getWindow( doc );
+ docElem = doc.documentElement;
+
+ return {
+ top: rect.top + win.pageYOffset - docElem.clientTop,
+ left: rect.left + win.pageXOffset - docElem.clientLeft
+ };
+ }
+
+ // Return zeros for disconnected and hidden elements (gh-2310)
+ return rect;
+ },
+
+ position: function() {
+ if ( !this[ 0 ] ) {
+ return;
+ }
+
+ var offsetParent, offset,
+ elem = this[ 0 ],
+ parentOffset = { top: 0, left: 0 };
+
+ // Fixed elements are offset from window (parentOffset = {top:0, left: 0},
+ // because it is its only offset parent
+ if ( jQuery.css( elem, "position" ) === "fixed" ) {
+
+ // Assume getBoundingClientRect is there when computed position is fixed
+ offset = elem.getBoundingClientRect();
+
+ } else {
+
+ // Get *real* offsetParent
+ offsetParent = this.offsetParent();
+
+ // Get correct offsets
+ offset = this.offset();
+ if ( !jQuery.nodeName( offsetParent[ 0 ], "html" ) ) {
+ parentOffset = offsetParent.offset();
+ }
+
+ // Add offsetParent borders
+ parentOffset = {
+ top: parentOffset.top + jQuery.css( offsetParent[ 0 ], "borderTopWidth", true ),
+ left: parentOffset.left + jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true )
+ };
+ }
+
+ // Subtract parent offsets and element margins
+ return {
+ top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
+ left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true )
+ };
+ },
+
+ // This method will return documentElement in the following cases:
+ // 1) For the element inside the iframe without offsetParent, this method will return
+ // documentElement of the parent window
+ // 2) For the hidden or detached element
+ // 3) For body or html element, i.e. in case of the html node - it will return itself
+ //
+ // but those exceptions were never presented as a real life use-cases
+ // and might be considered as more preferable results.
+ //
+ // This logic, however, is not guaranteed and can change at any point in the future
+ offsetParent: function() {
+ return this.map( function() {
+ var offsetParent = this.offsetParent;
+
+ while ( offsetParent && jQuery.css( offsetParent, "position" ) === "static" ) {
+ offsetParent = offsetParent.offsetParent;
+ }
+
+ return offsetParent || documentElement;
+ } );
+ }
+} );
+
+// Create scrollLeft and scrollTop methods
+jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) {
+ var top = "pageYOffset" === prop;
+
+ jQuery.fn[ method ] = function( val ) {
+ return access( this, function( elem, method, val ) {
+ var win = getWindow( elem );
+
+ if ( val === undefined ) {
+ return win ? win[ prop ] : elem[ method ];
+ }
+
+ if ( win ) {
+ win.scrollTo(
+ !top ? val : win.pageXOffset,
+ top ? val : win.pageYOffset
+ );
+
+ } else {
+ elem[ method ] = val;
+ }
+ }, method, val, arguments.length );
+ };
+} );
+
+// Support: Safari <=7 - 9.1, Chrome <=37 - 49
+// Add the top/left cssHooks using jQuery.fn.position
+// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
+// Blink bug: https://bugs.chromium.org/p/chromium/issues/detail?id=589347
+// getComputedStyle returns percent when specified for top/left/bottom/right;
+// rather than make the css module depend on the offset module, just check for it here
+jQuery.each( [ "top", "left" ], function( i, prop ) {
+ jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,
+ function( elem, computed ) {
+ if ( computed ) {
+ computed = curCSS( elem, prop );
+
+ // If curCSS returns percentage, fallback to offset
+ return rnumnonpx.test( computed ) ?
+ jQuery( elem ).position()[ prop ] + "px" :
+ computed;
+ }
+ }
+ );
+} );
+
+
+// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
+jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
+ jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name },
+ function( defaultExtra, funcName ) {
+
+ // Margin is only for outerHeight, outerWidth
+ jQuery.fn[ funcName ] = function( margin, value ) {
+ var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ),
+ extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" );
+
+ return access( this, function( elem, type, value ) {
+ var doc;
+
+ if ( jQuery.isWindow( elem ) ) {
+
+ // $( window ).outerWidth/Height return w/h including scrollbars (gh-1729)
+ return funcName.indexOf( "outer" ) === 0 ?
+ elem[ "inner" + name ] :
+ elem.document.documentElement[ "client" + name ];
+ }
+
+ // Get document width or height
+ if ( elem.nodeType === 9 ) {
+ doc = elem.documentElement;
+
+ // Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height],
+ // whichever is greatest
+ return Math.max(
+ elem.body[ "scroll" + name ], doc[ "scroll" + name ],
+ elem.body[ "offset" + name ], doc[ "offset" + name ],
+ doc[ "client" + name ]
+ );
+ }
+
+ return value === undefined ?
+
+ // Get width or height on the element, requesting but not forcing parseFloat
+ jQuery.css( elem, type, extra ) :
+
+ // Set width or height on the element
+ jQuery.style( elem, type, value, extra );
+ }, type, chainable ? margin : undefined, chainable );
+ };
+ } );
+} );
+
+
+jQuery.fn.extend( {
+
+ bind: function( types, data, fn ) {
+ return this.on( types, null, data, fn );
+ },
+ unbind: function( types, fn ) {
+ return this.off( types, null, fn );
+ },
+
+ delegate: function( selector, types, data, fn ) {
+ return this.on( types, selector, data, fn );
+ },
+ undelegate: function( selector, types, fn ) {
+
+ // ( namespace ) or ( selector, types [, fn] )
+ return arguments.length === 1 ?
+ this.off( selector, "**" ) :
+ this.off( types, selector || "**", fn );
+ }
+} );
+
+jQuery.parseJSON = JSON.parse;
+
+
+
+
+// Register as a named AMD module, since jQuery can be concatenated with other
+// files that may use define, but not via a proper concatenation script that
+// understands anonymous AMD modules. A named AMD is safest and most robust
+// way to register. Lowercase jquery is used because AMD module names are
+// derived from file names, and jQuery is normally delivered in a lowercase
+// file name. Do this after creating the global so that if an AMD module wants
+// to call noConflict to hide this version of jQuery, it will work.
+
+// Note that for maximum portability, libraries that are not jQuery should
+// declare themselves as anonymous modules, and avoid setting a global if an
+// AMD loader is present. jQuery is a special case. For more information, see
+// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon
+
+if ( typeof define === "function" && define.amd ) {
+ define( "jquery", [], function() {
+ return jQuery;
+ } );
+}
+
+
+
+
+
+var
+
+ // Map over jQuery in case of overwrite
+ _jQuery = window.jQuery,
+
+ // Map over the $ in case of overwrite
+ _$ = window.$;
+
+jQuery.noConflict = function( deep ) {
+ if ( window.$ === jQuery ) {
+ window.$ = _$;
+ }
+
+ if ( deep && window.jQuery === jQuery ) {
+ window.jQuery = _jQuery;
+ }
+
+ return jQuery;
+};
+
+// Expose jQuery and $ identifiers, even in AMD
+// (#7102#comment:10, https://github.com/jquery/jquery/pull/557)
+// and CommonJS for browser emulators (#13566)
+if ( !noGlobal ) {
+ window.jQuery = window.$ = jQuery;
+}
+
+
+return jQuery;
+} );
diff --git a/docs/usrman/_static/jquery.js b/docs/usrman/_static/jquery.js
index 3883779..f6a6a99 100644
--- a/docs/usrman/_static/jquery.js
+++ b/docs/usrman/_static/jquery.js
@@ -1,2 +1,4 @@
-/*! jQuery v1.8.3 jquery.com | jquery.org/license */
-(function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){retur [...]
\ No newline at end of file
+/*! jQuery v3.1.0 | (c) jQuery Foundation | jquery.org/license */
+!function(a,b){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){"use strict";var c=[],d=a.document,e=Object.getPrototypeOf,f=c.slice,g=c.concat,h=c.push,i=c.indexOf,j={},k=j.toString,l=j.hasOwnProperty,m=l.toString,n=m.call(Object),o={};function p(a,b){b=b||d;var c=b.createElem [...]
+r.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(r(a),c)})),b))for(;h<i;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},T=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function U(){this.expando=r.expando+U.uid++}U.uid=1,U.prototype={cache:function(a){var b=a[this.expando];return b||(b={},T(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:fun [...]
+if(e&&1===a.nodeType)while(c=e[d++])a.removeAttribute(c)}}),hb={set:function(a,b,c){return b===!1?r.removeAttr(a,c):a.setAttribute(c,c),c}},r.each(r.expr.match.bool.source.match(/\w+/g),function(a,b){var c=ib[b]||r.find.attr;ib[b]=function(a,b,d){var e,f,g=b.toLowerCase();return d||(f=ib[g],ib[g]=e,e=null!=c(a,b,d)?g:null,ib[g]=f),e}});var jb=/^(?:input|select|textarea|button)$/i,kb=/^(?:a|area)$/i;r.fn.extend({prop:function(a,b){return S(this,r.prop,a,b,arguments.length>1)},removeProp:f [...]
diff --git a/docs/usrman/_static/minus.png b/docs/usrman/_static/minus.png
index da1c562..d96755f 100644
Binary files a/docs/usrman/_static/minus.png and b/docs/usrman/_static/minus.png differ
diff --git a/docs/usrman/_static/plus.png b/docs/usrman/_static/plus.png
index b3cb374..7107cec 100644
Binary files a/docs/usrman/_static/plus.png and b/docs/usrman/_static/plus.png differ
diff --git a/docs/usrman/_static/pygments.css b/docs/usrman/_static/pygments.css
index 8213e90..20c4814 100644
--- a/docs/usrman/_static/pygments.css
+++ b/docs/usrman/_static/pygments.css
@@ -47,8 +47,10 @@
.highlight .mh { color: #208050 } /* Literal.Number.Hex */
.highlight .mi { color: #208050 } /* Literal.Number.Integer */
.highlight .mo { color: #208050 } /* Literal.Number.Oct */
+.highlight .sa { color: #4070a0 } /* Literal.String.Affix */
.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */
.highlight .sc { color: #4070a0 } /* Literal.String.Char */
+.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */
.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #4070a0 } /* Literal.String.Double */
.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
@@ -59,7 +61,9 @@
.highlight .s1 { color: #4070a0 } /* Literal.String.Single */
.highlight .ss { color: #517918 } /* Literal.String.Symbol */
.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */
+.highlight .fm { color: #06287e } /* Name.Function.Magic */
.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */
.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */
.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */
+.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */
.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */
\ No newline at end of file
diff --git a/docs/usrman/_static/searchtools.js b/docs/usrman/_static/searchtools.js
index 6e1f06b..c821573 100644
--- a/docs/usrman/_static/searchtools.js
+++ b/docs/usrman/_static/searchtools.js
@@ -2,14 +2,15 @@
* searchtools.js_t
* ~~~~~~~~~~~~~~~~
*
- * Sphinx JavaScript utilties for the full-text search.
+ * Sphinx JavaScript utilities for the full-text search.
*
- * :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
+/* Non-minified version JS is _stemmer.js if file is provided */
/**
* Porter Stemmer
*/
@@ -225,6 +226,106 @@ var Scorer = {
};
+
+
+
+var splitChars = (function() {
+ var result = {};
+ var singles = [96, 180, 187, 191, 215, 247, 749, 885, 903, 907, 909, 930, 1014, 1648,
+ 1748, 1809, 2416, 2473, 2481, 2526, 2601, 2609, 2612, 2615, 2653, 2702,
+ 2706, 2729, 2737, 2740, 2857, 2865, 2868, 2910, 2928, 2948, 2961, 2971,
+ 2973, 3085, 3089, 3113, 3124, 3213, 3217, 3241, 3252, 3295, 3341, 3345,
+ 3369, 3506, 3516, 3633, 3715, 3721, 3736, 3744, 3748, 3750, 3756, 3761,
+ 3781, 3912, 4239, 4347, 4681, 4695, 4697, 4745, 4785, 4799, 4801, 4823,
+ 4881, 5760, 5901, 5997, 6313, 7405, 8024, 8026, 8028, 8030, 8117, 8125,
+ 8133, 8181, 8468, 8485, 8487, 8489, 8494, 8527, 11311, 11359, 11687, 11695,
+ 11703, 11711, 11719, 11727, 11735, 12448, 12539, 43010, 43014, 43019, 43587,
+ 43696, 43713, 64286, 64297, 64311, 64317, 64319, 64322, 64325, 65141];
+ var i, j, start, end;
+ for (i = 0; i < singles.length; i++) {
+ result[singles[i]] = true;
+ }
+ var ranges = [[0, 47], [58, 64], [91, 94], [123, 169], [171, 177], [182, 184], [706, 709],
+ [722, 735], [741, 747], [751, 879], [888, 889], [894, 901], [1154, 1161],
+ [1318, 1328], [1367, 1368], [1370, 1376], [1416, 1487], [1515, 1519], [1523, 1568],
+ [1611, 1631], [1642, 1645], [1750, 1764], [1767, 1773], [1789, 1790], [1792, 1807],
+ [1840, 1868], [1958, 1968], [1970, 1983], [2027, 2035], [2038, 2041], [2043, 2047],
+ [2070, 2073], [2075, 2083], [2085, 2087], [2089, 2307], [2362, 2364], [2366, 2383],
+ [2385, 2391], [2402, 2405], [2419, 2424], [2432, 2436], [2445, 2446], [2449, 2450],
+ [2483, 2485], [2490, 2492], [2494, 2509], [2511, 2523], [2530, 2533], [2546, 2547],
+ [2554, 2564], [2571, 2574], [2577, 2578], [2618, 2648], [2655, 2661], [2672, 2673],
+ [2677, 2692], [2746, 2748], [2750, 2767], [2769, 2783], [2786, 2789], [2800, 2820],
+ [2829, 2830], [2833, 2834], [2874, 2876], [2878, 2907], [2914, 2917], [2930, 2946],
+ [2955, 2957], [2966, 2968], [2976, 2978], [2981, 2983], [2987, 2989], [3002, 3023],
+ [3025, 3045], [3059, 3076], [3130, 3132], [3134, 3159], [3162, 3167], [3170, 3173],
+ [3184, 3191], [3199, 3204], [3258, 3260], [3262, 3293], [3298, 3301], [3312, 3332],
+ [3386, 3388], [3390, 3423], [3426, 3429], [3446, 3449], [3456, 3460], [3479, 3481],
+ [3518, 3519], [3527, 3584], [3636, 3647], [3655, 3663], [3674, 3712], [3717, 3718],
+ [3723, 3724], [3726, 3731], [3752, 3753], [3764, 3772], [3774, 3775], [3783, 3791],
+ [3802, 3803], [3806, 3839], [3841, 3871], [3892, 3903], [3949, 3975], [3980, 4095],
+ [4139, 4158], [4170, 4175], [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205],
+ [4209, 4212], [4226, 4237], [4250, 4255], [4294, 4303], [4349, 4351], [4686, 4687],
+ [4702, 4703], [4750, 4751], [4790, 4791], [4806, 4807], [4886, 4887], [4955, 4968],
+ [4989, 4991], [5008, 5023], [5109, 5120], [5741, 5742], [5787, 5791], [5867, 5869],
+ [5873, 5887], [5906, 5919], [5938, 5951], [5970, 5983], [6001, 6015], [6068, 6102],
+ [6104, 6107], [6109, 6111], [6122, 6127], [6138, 6159], [6170, 6175], [6264, 6271],
+ [6315, 6319], [6390, 6399], [6429, 6469], [6510, 6511], [6517, 6527], [6572, 6592],
+ [6600, 6607], [6619, 6655], [6679, 6687], [6741, 6783], [6794, 6799], [6810, 6822],
+ [6824, 6916], [6964, 6980], [6988, 6991], [7002, 7042], [7073, 7085], [7098, 7167],
+ [7204, 7231], [7242, 7244], [7294, 7400], [7410, 7423], [7616, 7679], [7958, 7959],
+ [7966, 7967], [8006, 8007], [8014, 8015], [8062, 8063], [8127, 8129], [8141, 8143],
+ [8148, 8149], [8156, 8159], [8173, 8177], [8189, 8303], [8306, 8307], [8314, 8318],
+ [8330, 8335], [8341, 8449], [8451, 8454], [8456, 8457], [8470, 8472], [8478, 8483],
+ [8506, 8507], [8512, 8516], [8522, 8525], [8586, 9311], [9372, 9449], [9472, 10101],
+ [10132, 11263], [11493, 11498], [11503, 11516], [11518, 11519], [11558, 11567],
+ [11622, 11630], [11632, 11647], [11671, 11679], [11743, 11822], [11824, 12292],
+ [12296, 12320], [12330, 12336], [12342, 12343], [12349, 12352], [12439, 12444],
+ [12544, 12548], [12590, 12592], [12687, 12689], [12694, 12703], [12728, 12783],
+ [12800, 12831], [12842, 12880], [12896, 12927], [12938, 12976], [12992, 13311],
+ [19894, 19967], [40908, 40959], [42125, 42191], [42238, 42239], [42509, 42511],
+ [42540, 42559], [42592, 42593], [42607, 42622], [42648, 42655], [42736, 42774],
+ [42784, 42785], [42889, 42890], [42893, 43002], [43043, 43055], [43062, 43071],
+ [43124, 43137], [43188, 43215], [43226, 43249], [43256, 43258], [43260, 43263],
+ [43302, 43311], [43335, 43359], [43389, 43395], [43443, 43470], [43482, 43519],
+ [43561, 43583], [43596, 43599], [43610, 43615], [43639, 43641], [43643, 43647],
+ [43698, 43700], [43703, 43704], [43710, 43711], [43715, 43738], [43742, 43967],
+ [44003, 44015], [44026, 44031], [55204, 55215], [55239, 55242], [55292, 55295],
+ [57344, 63743], [64046, 64047], [64110, 64111], [64218, 64255], [64263, 64274],
+ [64280, 64284], [64434, 64466], [64830, 64847], [64912, 64913], [64968, 65007],
+ [65020, 65135], [65277, 65295], [65306, 65312], [65339, 65344], [65371, 65381],
+ [65471, 65473], [65480, 65481], [65488, 65489], [65496, 65497]];
+ for (i = 0; i < ranges.length; i++) {
+ start = ranges[i][0];
+ end = ranges[i][1];
+ for (j = start; j <= end; j++) {
+ result[j] = true;
+ }
+ }
+ return result;
+})();
+
+function splitQuery(query) {
+ var result = [];
+ var start = -1;
+ for (var i = 0; i < query.length; i++) {
+ if (splitChars[query.charCodeAt(i)]) {
+ if (start !== -1) {
+ result.push(query.slice(start, i));
+ start = -1;
+ }
+ } else if (start === -1) {
+ start = i;
+ }
+ }
+ if (start !== -1) {
+ result.push(query.slice(start));
+ }
+ return result;
+}
+
+
+
+
/**
* Search Module
*/
@@ -323,7 +424,7 @@ var Search = {
var searchterms = [];
var excluded = [];
var hlterms = [];
- var tmp = query.split(/\s+/);
+ var tmp = splitQuery(query);
var objectterms = [];
for (i = 0; i < tmp.length; i++) {
if (tmp[i] !== "") {
@@ -337,6 +438,10 @@ var Search = {
}
// stem the word
var word = stemmer.stemWord(tmp[i].toLowerCase());
+ // prevent stemmer from cutting word smaller than two chars
+ if(word.length < 3 && tmp[i].length >= 3) {
+ word = tmp[i];
+ }
var toAppend;
// select the correct list
if (word[0] == '-') {
@@ -373,8 +478,7 @@ var Search = {
}
// lookup as search terms in fulltext
- results = results.concat(this.performTermsSearch(searchterms, excluded, terms, Scorer.term))
- .concat(this.performTermsSearch(searchterms, excluded, titleterms, Scorer.title));
+ results = results.concat(this.performTermsSearch(searchterms, excluded, terms, titleterms));
// let the scorer override scores with a custom scoring function
if (Scorer.score) {
@@ -435,11 +539,12 @@ var Search = {
displayNextItem();
});
} else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
- $.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + '_sources/' + item[0] + '.txt',
+ var suffix = DOCUMENTATION_OPTIONS.SOURCELINK_SUFFIX;
+ $.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + '_sources/' + item[5] + (item[5].slice(-suffix.length) === suffix ? '' : suffix),
dataType: "text",
complete: function(jqxhr, textstatus) {
var data = jqxhr.responseText;
- if (data !== '') {
+ if (data !== '' && data !== undefined) {
listItem.append(Search.makeSearchSummary(data, searchterms, hlterms));
}
Search.output.append(listItem);
@@ -474,6 +579,7 @@ var Search = {
*/
performObjectSearch : function(object, otherterms) {
var filenames = this._index.filenames;
+ var docnames = this._index.docnames;
var objects = this._index.objects;
var objnames = this._index.objnames;
var titles = this._index.titles;
@@ -527,7 +633,7 @@ var Search = {
} else {
score += Scorer.objPrioDefault;
}
- results.push([filenames[match[0]], fullname, '#'+anchor, descr, score]);
+ results.push([docnames[match[0]], fullname, '#'+anchor, descr, score, filenames[match[0]]]);
}
}
}
@@ -538,23 +644,48 @@ var Search = {
/**
* search for full-text terms in the index
*/
- performTermsSearch : function(searchterms, excluded, terms, score) {
+ performTermsSearch : function(searchterms, excluded, terms, titleterms) {
+ var docnames = this._index.docnames;
var filenames = this._index.filenames;
var titles = this._index.titles;
- var i, j, file, files;
+ var i, j, file;
var fileMap = {};
+ var scoreMap = {};
var results = [];
// perform the search on the required terms
for (i = 0; i < searchterms.length; i++) {
var word = searchterms[i];
+ var files = [];
+ var _o = [
+ {files: terms[word], score: Scorer.term},
+ {files: titleterms[word], score: Scorer.title}
+ ];
+
// no match but word was a required one
- if ((files = terms[word]) === undefined)
+ if ($u.every(_o, function(o){return o.files === undefined;})) {
break;
- if (files.length === undefined) {
- files = [files];
}
+ // found search word in contents
+ $u.each(_o, function(o) {
+ var _files = o.files;
+ if (_files === undefined)
+ return
+
+ if (_files.length === undefined)
+ _files = [_files];
+ files = files.concat(_files);
+
+ // set score for the word in each file to Scorer.term
+ for (j = 0; j < _files.length; j++) {
+ file = _files[j];
+ if (!(file in scoreMap))
+ scoreMap[file] = {}
+ scoreMap[file][word] = o.score;
+ }
+ });
+
// create the mapping
for (j = 0; j < files.length; j++) {
file = files[j];
@@ -576,7 +707,9 @@ var Search = {
// ensure that none of the excluded terms is in the search result
for (i = 0; i < excluded.length; i++) {
if (terms[excluded[i]] == file ||
- $u.contains(terms[excluded[i]] || [], file)) {
+ titleterms[excluded[i]] == file ||
+ $u.contains(terms[excluded[i]] || [], file) ||
+ $u.contains(titleterms[excluded[i]] || [], file)) {
valid = false;
break;
}
@@ -584,7 +717,10 @@ var Search = {
// if we have still a valid result we can add it to the result list
if (valid) {
- results.push([filenames[file], titles[file], '', null, score]);
+ // select one (max) score for the file.
+ // for better ranking, we should calculate ranking by using words statistics like basic tf-idf...
+ var score = $u.max($u.map(fileMap[file], function(w){return scoreMap[file][w]}));
+ results.push([docnames[file], titles[file], '', null, score, filenames[file]]);
}
}
return results;
@@ -594,7 +730,7 @@ var Search = {
* helper function to return a node containing the
* search summary for a given text. keywords is a list
* of stemmed words, hlwords is the list of normal, unstemmed
- * words. the first one is used to find the occurance, the
+ * words. the first one is used to find the occurrence, the
* latter for highlighting it.
*/
makeSearchSummary : function(text, keywords, hlwords) {
diff --git a/docs/usrman/_static/sidebar.js b/docs/usrman/_static/sidebar.js
index 4f09a0d..332bbf2 100644
--- a/docs/usrman/_static/sidebar.js
+++ b/docs/usrman/_static/sidebar.js
@@ -16,7 +16,7 @@
* Once the browser is closed the cookie is deleted and the position
* reset to the default (expanded).
*
- * :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
diff --git a/docs/usrman/_static/underscore-1.3.1.js b/docs/usrman/_static/underscore-1.3.1.js
new file mode 100644
index 0000000..208d4cd
--- /dev/null
+++ b/docs/usrman/_static/underscore-1.3.1.js
@@ -0,0 +1,999 @@
+// Underscore.js 1.3.1
+// (c) 2009-2012 Jeremy Ashkenas, DocumentCloud Inc.
+// Underscore is freely distributable under the MIT license.
+// Portions of Underscore are inspired or borrowed from Prototype,
+// Oliver Steele's Functional, and John Resig's Micro-Templating.
+// For all details and documentation:
+// http://documentcloud.github.com/underscore
+
+(function() {
+
+ // Baseline setup
+ // --------------
+
+ // Establish the root object, `window` in the browser, or `global` on the server.
+ var root = this;
+
+ // Save the previous value of the `_` variable.
+ var previousUnderscore = root._;
+
+ // Establish the object that gets returned to break out of a loop iteration.
+ var breaker = {};
+
+ // Save bytes in the minified (but not gzipped) version:
+ var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;
+
+ // Create quick reference variables for speed access to core prototypes.
+ var slice = ArrayProto.slice,
+ unshift = ArrayProto.unshift,
+ toString = ObjProto.toString,
+ hasOwnProperty = ObjProto.hasOwnProperty;
+
+ // All **ECMAScript 5** native function implementations that we hope to use
+ // are declared here.
+ var
+ nativeForEach = ArrayProto.forEach,
+ nativeMap = ArrayProto.map,
+ nativeReduce = ArrayProto.reduce,
+ nativeReduceRight = ArrayProto.reduceRight,
+ nativeFilter = ArrayProto.filter,
+ nativeEvery = ArrayProto.every,
+ nativeSome = ArrayProto.some,
+ nativeIndexOf = ArrayProto.indexOf,
+ nativeLastIndexOf = ArrayProto.lastIndexOf,
+ nativeIsArray = Array.isArray,
+ nativeKeys = Object.keys,
+ nativeBind = FuncProto.bind;
+
+ // Create a safe reference to the Underscore object for use below.
+ var _ = function(obj) { return new wrapper(obj); };
+
+ // Export the Underscore object for **Node.js**, with
+ // backwards-compatibility for the old `require()` API. If we're in
+ // the browser, add `_` as a global object via a string identifier,
+ // for Closure Compiler "advanced" mode.
+ if (typeof exports !== 'undefined') {
+ if (typeof module !== 'undefined' && module.exports) {
+ exports = module.exports = _;
+ }
+ exports._ = _;
+ } else {
+ root['_'] = _;
+ }
+
+ // Current version.
+ _.VERSION = '1.3.1';
+
+ // Collection Functions
+ // --------------------
+
+ // The cornerstone, an `each` implementation, aka `forEach`.
+ // Handles objects with the built-in `forEach`, arrays, and raw objects.
+ // Delegates to **ECMAScript 5**'s native `forEach` if available.
+ var each = _.each = _.forEach = function(obj, iterator, context) {
+ if (obj == null) return;
+ if (nativeForEach && obj.forEach === nativeForEach) {
+ obj.forEach(iterator, context);
+ } else if (obj.length === +obj.length) {
+ for (var i = 0, l = obj.length; i < l; i++) {
+ if (i in obj && iterator.call(context, obj[i], i, obj) === breaker) return;
+ }
+ } else {
+ for (var key in obj) {
+ if (_.has(obj, key)) {
+ if (iterator.call(context, obj[key], key, obj) === breaker) return;
+ }
+ }
+ }
+ };
+
+ // Return the results of applying the iterator to each element.
+ // Delegates to **ECMAScript 5**'s native `map` if available.
+ _.map = _.collect = function(obj, iterator, context) {
+ var results = [];
+ if (obj == null) return results;
+ if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);
+ each(obj, function(value, index, list) {
+ results[results.length] = iterator.call(context, value, index, list);
+ });
+ if (obj.length === +obj.length) results.length = obj.length;
+ return results;
+ };
+
+ // **Reduce** builds up a single result from a list of values, aka `inject`,
+ // or `foldl`. Delegates to **ECMAScript 5**'s native `reduce` if available.
+ _.reduce = _.foldl = _.inject = function(obj, iterator, memo, context) {
+ var initial = arguments.length > 2;
+ if (obj == null) obj = [];
+ if (nativeReduce && obj.reduce === nativeReduce) {
+ if (context) iterator = _.bind(iterator, context);
+ return initial ? obj.reduce(iterator, memo) : obj.reduce(iterator);
+ }
+ each(obj, function(value, index, list) {
+ if (!initial) {
+ memo = value;
+ initial = true;
+ } else {
+ memo = iterator.call(context, memo, value, index, list);
+ }
+ });
+ if (!initial) throw new TypeError('Reduce of empty array with no initial value');
+ return memo;
+ };
+
+ // The right-associative version of reduce, also known as `foldr`.
+ // Delegates to **ECMAScript 5**'s native `reduceRight` if available.
+ _.reduceRight = _.foldr = function(obj, iterator, memo, context) {
+ var initial = arguments.length > 2;
+ if (obj == null) obj = [];
+ if (nativeReduceRight && obj.reduceRight === nativeReduceRight) {
+ if (context) iterator = _.bind(iterator, context);
+ return initial ? obj.reduceRight(iterator, memo) : obj.reduceRight(iterator);
+ }
+ var reversed = _.toArray(obj).reverse();
+ if (context && !initial) iterator = _.bind(iterator, context);
+ return initial ? _.reduce(reversed, iterator, memo, context) : _.reduce(reversed, iterator);
+ };
+
+ // Return the first value which passes a truth test. Aliased as `detect`.
+ _.find = _.detect = function(obj, iterator, context) {
+ var result;
+ any(obj, function(value, index, list) {
+ if (iterator.call(context, value, index, list)) {
+ result = value;
+ return true;
+ }
+ });
+ return result;
+ };
+
+ // Return all the elements that pass a truth test.
+ // Delegates to **ECMAScript 5**'s native `filter` if available.
+ // Aliased as `select`.
+ _.filter = _.select = function(obj, iterator, context) {
+ var results = [];
+ if (obj == null) return results;
+ if (nativeFilter && obj.filter === nativeFilter) return obj.filter(iterator, context);
+ each(obj, function(value, index, list) {
+ if (iterator.call(context, value, index, list)) results[results.length] = value;
+ });
+ return results;
+ };
+
+ // Return all the elements for which a truth test fails.
+ _.reject = function(obj, iterator, context) {
+ var results = [];
+ if (obj == null) return results;
+ each(obj, function(value, index, list) {
+ if (!iterator.call(context, value, index, list)) results[results.length] = value;
+ });
+ return results;
+ };
+
+ // Determine whether all of the elements match a truth test.
+ // Delegates to **ECMAScript 5**'s native `every` if available.
+ // Aliased as `all`.
+ _.every = _.all = function(obj, iterator, context) {
+ var result = true;
+ if (obj == null) return result;
+ if (nativeEvery && obj.every === nativeEvery) return obj.every(iterator, context);
+ each(obj, function(value, index, list) {
+ if (!(result = result && iterator.call(context, value, index, list))) return breaker;
+ });
+ return result;
+ };
+
+ // Determine if at least one element in the object matches a truth test.
+ // Delegates to **ECMAScript 5**'s native `some` if available.
+ // Aliased as `any`.
+ var any = _.some = _.any = function(obj, iterator, context) {
+ iterator || (iterator = _.identity);
+ var result = false;
+ if (obj == null) return result;
+ if (nativeSome && obj.some === nativeSome) return obj.some(iterator, context);
+ each(obj, function(value, index, list) {
+ if (result || (result = iterator.call(context, value, index, list))) return breaker;
+ });
+ return !!result;
+ };
+
+ // Determine if a given value is included in the array or object using `===`.
+ // Aliased as `contains`.
+ _.include = _.contains = function(obj, target) {
+ var found = false;
+ if (obj == null) return found;
+ if (nativeIndexOf && obj.indexOf === nativeIndexOf) return obj.indexOf(target) != -1;
+ found = any(obj, function(value) {
+ return value === target;
+ });
+ return found;
+ };
+
+ // Invoke a method (with arguments) on every item in a collection.
+ _.invoke = function(obj, method) {
+ var args = slice.call(arguments, 2);
+ return _.map(obj, function(value) {
+ return (_.isFunction(method) ? method || value : value[method]).apply(value, args);
+ });
+ };
+
+ // Convenience version of a common use case of `map`: fetching a property.
+ _.pluck = function(obj, key) {
+ return _.map(obj, function(value){ return value[key]; });
+ };
+
+ // Return the maximum element or (element-based computation).
+ _.max = function(obj, iterator, context) {
+ if (!iterator && _.isArray(obj)) return Math.max.apply(Math, obj);
+ if (!iterator && _.isEmpty(obj)) return -Infinity;
+ var result = {computed : -Infinity};
+ each(obj, function(value, index, list) {
+ var computed = iterator ? iterator.call(context, value, index, list) : value;
+ computed >= result.computed && (result = {value : value, computed : computed});
+ });
+ return result.value;
+ };
+
+ // Return the minimum element (or element-based computation).
+ _.min = function(obj, iterator, context) {
+ if (!iterator && _.isArray(obj)) return Math.min.apply(Math, obj);
+ if (!iterator && _.isEmpty(obj)) return Infinity;
+ var result = {computed : Infinity};
+ each(obj, function(value, index, list) {
+ var computed = iterator ? iterator.call(context, value, index, list) : value;
+ computed < result.computed && (result = {value : value, computed : computed});
+ });
+ return result.value;
+ };
+
+ // Shuffle an array.
+ _.shuffle = function(obj) {
+ var shuffled = [], rand;
+ each(obj, function(value, index, list) {
+ if (index == 0) {
+ shuffled[0] = value;
+ } else {
+ rand = Math.floor(Math.random() * (index + 1));
+ shuffled[index] = shuffled[rand];
+ shuffled[rand] = value;
+ }
+ });
+ return shuffled;
+ };
+
+ // Sort the object's values by a criterion produced by an iterator.
+ _.sortBy = function(obj, iterator, context) {
+ return _.pluck(_.map(obj, function(value, index, list) {
+ return {
+ value : value,
+ criteria : iterator.call(context, value, index, list)
+ };
+ }).sort(function(left, right) {
+ var a = left.criteria, b = right.criteria;
+ return a < b ? -1 : a > b ? 1 : 0;
+ }), 'value');
+ };
+
+ // Groups the object's values by a criterion. Pass either a string attribute
+ // to group by, or a function that returns the criterion.
+ _.groupBy = function(obj, val) {
+ var result = {};
+ var iterator = _.isFunction(val) ? val : function(obj) { return obj[val]; };
+ each(obj, function(value, index) {
+ var key = iterator(value, index);
+ (result[key] || (result[key] = [])).push(value);
+ });
+ return result;
+ };
+
+ // Use a comparator function to figure out at what index an object should
+ // be inserted so as to maintain order. Uses binary search.
+ _.sortedIndex = function(array, obj, iterator) {
+ iterator || (iterator = _.identity);
+ var low = 0, high = array.length;
+ while (low < high) {
+ var mid = (low + high) >> 1;
+ iterator(array[mid]) < iterator(obj) ? low = mid + 1 : high = mid;
+ }
+ return low;
+ };
+
+ // Safely convert anything iterable into a real, live array.
+ _.toArray = function(iterable) {
+ if (!iterable) return [];
+ if (iterable.toArray) return iterable.toArray();
+ if (_.isArray(iterable)) return slice.call(iterable);
+ if (_.isArguments(iterable)) return slice.call(iterable);
+ return _.values(iterable);
+ };
+
+ // Return the number of elements in an object.
+ _.size = function(obj) {
+ return _.toArray(obj).length;
+ };
+
+ // Array Functions
+ // ---------------
+
+ // Get the first element of an array. Passing **n** will return the first N
+ // values in the array. Aliased as `head`. The **guard** check allows it to work
+ // with `_.map`.
+ _.first = _.head = function(array, n, guard) {
+ return (n != null) && !guard ? slice.call(array, 0, n) : array[0];
+ };
+
+ // Returns everything but the last entry of the array. Especcialy useful on
+ // the arguments object. Passing **n** will return all the values in
+ // the array, excluding the last N. The **guard** check allows it to work with
+ // `_.map`.
+ _.initial = function(array, n, guard) {
+ return slice.call(array, 0, array.length - ((n == null) || guard ? 1 : n));
+ };
+
+ // Get the last element of an array. Passing **n** will return the last N
+ // values in the array. The **guard** check allows it to work with `_.map`.
+ _.last = function(array, n, guard) {
+ if ((n != null) && !guard) {
+ return slice.call(array, Math.max(array.length - n, 0));
+ } else {
+ return array[array.length - 1];
+ }
+ };
+
+ // Returns everything but the first entry of the array. Aliased as `tail`.
+ // Especially useful on the arguments object. Passing an **index** will return
+ // the rest of the values in the array from that index onward. The **guard**
+ // check allows it to work with `_.map`.
+ _.rest = _.tail = function(array, index, guard) {
+ return slice.call(array, (index == null) || guard ? 1 : index);
+ };
+
+ // Trim out all falsy values from an array.
+ _.compact = function(array) {
+ return _.filter(array, function(value){ return !!value; });
+ };
+
+ // Return a completely flattened version of an array.
+ _.flatten = function(array, shallow) {
+ return _.reduce(array, function(memo, value) {
+ if (_.isArray(value)) return memo.concat(shallow ? value : _.flatten(value));
+ memo[memo.length] = value;
+ return memo;
+ }, []);
+ };
+
+ // Return a version of the array that does not contain the specified value(s).
+ _.without = function(array) {
+ return _.difference(array, slice.call(arguments, 1));
+ };
+
+ // Produce a duplicate-free version of the array. If the array has already
+ // been sorted, you have the option of using a faster algorithm.
+ // Aliased as `unique`.
+ _.uniq = _.unique = function(array, isSorted, iterator) {
+ var initial = iterator ? _.map(array, iterator) : array;
+ var result = [];
+ _.reduce(initial, function(memo, el, i) {
+ if (0 == i || (isSorted === true ? _.last(memo) != el : !_.include(memo, el))) {
+ memo[memo.length] = el;
+ result[result.length] = array[i];
+ }
+ return memo;
+ }, []);
+ return result;
+ };
+
+ // Produce an array that contains the union: each distinct element from all of
+ // the passed-in arrays.
+ _.union = function() {
+ return _.uniq(_.flatten(arguments, true));
+ };
+
+ // Produce an array that contains every item shared between all the
+ // passed-in arrays. (Aliased as "intersect" for back-compat.)
+ _.intersection = _.intersect = function(array) {
+ var rest = slice.call(arguments, 1);
+ return _.filter(_.uniq(array), function(item) {
+ return _.every(rest, function(other) {
+ return _.indexOf(other, item) >= 0;
+ });
+ });
+ };
+
+ // Take the difference between one array and a number of other arrays.
+ // Only the elements present in just the first array will remain.
+ _.difference = function(array) {
+ var rest = _.flatten(slice.call(arguments, 1));
+ return _.filter(array, function(value){ return !_.include(rest, value); });
+ };
+
+ // Zip together multiple lists into a single array -- elements that share
+ // an index go together.
+ _.zip = function() {
+ var args = slice.call(arguments);
+ var length = _.max(_.pluck(args, 'length'));
+ var results = new Array(length);
+ for (var i = 0; i < length; i++) results[i] = _.pluck(args, "" + i);
+ return results;
+ };
+
+ // If the browser doesn't supply us with indexOf (I'm looking at you, **MSIE**),
+ // we need this function. Return the position of the first occurrence of an
+ // item in an array, or -1 if the item is not included in the array.
+ // Delegates to **ECMAScript 5**'s native `indexOf` if available.
+ // If the array is large and already in sort order, pass `true`
+ // for **isSorted** to use binary search.
+ _.indexOf = function(array, item, isSorted) {
+ if (array == null) return -1;
+ var i, l;
+ if (isSorted) {
+ i = _.sortedIndex(array, item);
+ return array[i] === item ? i : -1;
+ }
+ if (nativeIndexOf && array.indexOf === nativeIndexOf) return array.indexOf(item);
+ for (i = 0, l = array.length; i < l; i++) if (i in array && array[i] === item) return i;
+ return -1;
+ };
+
+ // Delegates to **ECMAScript 5**'s native `lastIndexOf` if available.
+ _.lastIndexOf = function(array, item) {
+ if (array == null) return -1;
+ if (nativeLastIndexOf && array.lastIndexOf === nativeLastIndexOf) return array.lastIndexOf(item);
+ var i = array.length;
+ while (i--) if (i in array && array[i] === item) return i;
+ return -1;
+ };
+
+ // Generate an integer Array containing an arithmetic progression. A port of
+ // the native Python `range()` function. See
+ // [the Python documentation](http://docs.python.org/library/functions.html#range).
+ _.range = function(start, stop, step) {
+ if (arguments.length <= 1) {
+ stop = start || 0;
+ start = 0;
+ }
+ step = arguments[2] || 1;
+
+ var len = Math.max(Math.ceil((stop - start) / step), 0);
+ var idx = 0;
+ var range = new Array(len);
+
+ while(idx < len) {
+ range[idx++] = start;
+ start += step;
+ }
+
+ return range;
+ };
+
+ // Function (ahem) Functions
+ // ------------------
+
+ // Reusable constructor function for prototype setting.
+ var ctor = function(){};
+
+ // Create a function bound to a given object (assigning `this`, and arguments,
+ // optionally). Binding with arguments is also known as `curry`.
+ // Delegates to **ECMAScript 5**'s native `Function.bind` if available.
+ // We check for `func.bind` first, to fail fast when `func` is undefined.
+ _.bind = function bind(func, context) {
+ var bound, args;
+ if (func.bind === nativeBind && nativeBind) return nativeBind.apply(func, slice.call(arguments, 1));
+ if (!_.isFunction(func)) throw new TypeError;
+ args = slice.call(arguments, 2);
+ return bound = function() {
+ if (!(this instanceof bound)) return func.apply(context, args.concat(slice.call(arguments)));
+ ctor.prototype = func.prototype;
+ var self = new ctor;
+ var result = func.apply(self, args.concat(slice.call(arguments)));
+ if (Object(result) === result) return result;
+ return self;
+ };
+ };
+
+ // Bind all of an object's methods to that object. Useful for ensuring that
+ // all callbacks defined on an object belong to it.
+ _.bindAll = function(obj) {
+ var funcs = slice.call(arguments, 1);
+ if (funcs.length == 0) funcs = _.functions(obj);
+ each(funcs, function(f) { obj[f] = _.bind(obj[f], obj); });
+ return obj;
+ };
+
+ // Memoize an expensive function by storing its results.
+ _.memoize = function(func, hasher) {
+ var memo = {};
+ hasher || (hasher = _.identity);
+ return function() {
+ var key = hasher.apply(this, arguments);
+ return _.has(memo, key) ? memo[key] : (memo[key] = func.apply(this, arguments));
+ };
+ };
+
+ // Delays a function for the given number of milliseconds, and then calls
+ // it with the arguments supplied.
+ _.delay = function(func, wait) {
+ var args = slice.call(arguments, 2);
+ return setTimeout(function(){ return func.apply(func, args); }, wait);
+ };
+
+ // Defers a function, scheduling it to run after the current call stack has
+ // cleared.
+ _.defer = function(func) {
+ return _.delay.apply(_, [func, 1].concat(slice.call(arguments, 1)));
+ };
+
+ // Returns a function, that, when invoked, will only be triggered at most once
+ // during a given window of time.
+ _.throttle = function(func, wait) {
+ var context, args, timeout, throttling, more;
+ var whenDone = _.debounce(function(){ more = throttling = false; }, wait);
+ return function() {
+ context = this; args = arguments;
+ var later = function() {
+ timeout = null;
+ if (more) func.apply(context, args);
+ whenDone();
+ };
+ if (!timeout) timeout = setTimeout(later, wait);
+ if (throttling) {
+ more = true;
+ } else {
+ func.apply(context, args);
+ }
+ whenDone();
+ throttling = true;
+ };
+ };
+
+ // Returns a function, that, as long as it continues to be invoked, will not
+ // be triggered. The function will be called after it stops being called for
+ // N milliseconds.
+ _.debounce = function(func, wait) {
+ var timeout;
+ return function() {
+ var context = this, args = arguments;
+ var later = function() {
+ timeout = null;
+ func.apply(context, args);
+ };
+ clearTimeout(timeout);
+ timeout = setTimeout(later, wait);
+ };
+ };
+
+ // Returns a function that will be executed at most one time, no matter how
+ // often you call it. Useful for lazy initialization.
+ _.once = function(func) {
+ var ran = false, memo;
+ return function() {
+ if (ran) return memo;
+ ran = true;
+ return memo = func.apply(this, arguments);
+ };
+ };
+
+ // Returns the first function passed as an argument to the second,
+ // allowing you to adjust arguments, run code before and after, and
+ // conditionally execute the original function.
+ _.wrap = function(func, wrapper) {
+ return function() {
+ var args = [func].concat(slice.call(arguments, 0));
+ return wrapper.apply(this, args);
+ };
+ };
+
+ // Returns a function that is the composition of a list of functions, each
+ // consuming the return value of the function that follows.
+ _.compose = function() {
+ var funcs = arguments;
+ return function() {
+ var args = arguments;
+ for (var i = funcs.length - 1; i >= 0; i--) {
+ args = [funcs[i].apply(this, args)];
+ }
+ return args[0];
+ };
+ };
+
+ // Returns a function that will only be executed after being called N times.
+ _.after = function(times, func) {
+ if (times <= 0) return func();
+ return function() {
+ if (--times < 1) { return func.apply(this, arguments); }
+ };
+ };
+
+ // Object Functions
+ // ----------------
+
+ // Retrieve the names of an object's properties.
+ // Delegates to **ECMAScript 5**'s native `Object.keys`
+ _.keys = nativeKeys || function(obj) {
+ if (obj !== Object(obj)) throw new TypeError('Invalid object');
+ var keys = [];
+ for (var key in obj) if (_.has(obj, key)) keys[keys.length] = key;
+ return keys;
+ };
+
+ // Retrieve the values of an object's properties.
+ _.values = function(obj) {
+ return _.map(obj, _.identity);
+ };
+
+ // Return a sorted list of the function names available on the object.
+ // Aliased as `methods`
+ _.functions = _.methods = function(obj) {
+ var names = [];
+ for (var key in obj) {
+ if (_.isFunction(obj[key])) names.push(key);
+ }
+ return names.sort();
+ };
+
+ // Extend a given object with all the properties in passed-in object(s).
+ _.extend = function(obj) {
+ each(slice.call(arguments, 1), function(source) {
+ for (var prop in source) {
+ obj[prop] = source[prop];
+ }
+ });
+ return obj;
+ };
+
+ // Fill in a given object with default properties.
+ _.defaults = function(obj) {
+ each(slice.call(arguments, 1), function(source) {
+ for (var prop in source) {
+ if (obj[prop] == null) obj[prop] = source[prop];
+ }
+ });
+ return obj;
+ };
+
+ // Create a (shallow-cloned) duplicate of an object.
+ _.clone = function(obj) {
+ if (!_.isObject(obj)) return obj;
+ return _.isArray(obj) ? obj.slice() : _.extend({}, obj);
+ };
+
+ // Invokes interceptor with the obj, and then returns obj.
+ // The primary purpose of this method is to "tap into" a method chain, in
+ // order to perform operations on intermediate results within the chain.
+ _.tap = function(obj, interceptor) {
+ interceptor(obj);
+ return obj;
+ };
+
+ // Internal recursive comparison function.
+ function eq(a, b, stack) {
+ // Identical objects are equal. `0 === -0`, but they aren't identical.
+ // See the Harmony `egal` proposal: http://wiki.ecmascript.org/doku.php?id=harmony:egal.
+ if (a === b) return a !== 0 || 1 / a == 1 / b;
+ // A strict comparison is necessary because `null == undefined`.
+ if (a == null || b == null) return a === b;
+ // Unwrap any wrapped objects.
+ if (a._chain) a = a._wrapped;
+ if (b._chain) b = b._wrapped;
+ // Invoke a custom `isEqual` method if one is provided.
+ if (a.isEqual && _.isFunction(a.isEqual)) return a.isEqual(b);
+ if (b.isEqual && _.isFunction(b.isEqual)) return b.isEqual(a);
+ // Compare `[[Class]]` names.
+ var className = toString.call(a);
+ if (className != toString.call(b)) return false;
+ switch (className) {
+ // Strings, numbers, dates, and booleans are compared by value.
+ case '[object String]':
+ // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is
+ // equivalent to `new String("5")`.
+ return a == String(b);
+ case '[object Number]':
+ // `NaN`s are equivalent, but non-reflexive. An `egal` comparison is performed for
+ // other numeric values.
+ return a != +a ? b != +b : (a == 0 ? 1 / a == 1 / b : a == +b);
+ case '[object Date]':
+ case '[object Boolean]':
+ // Coerce dates and booleans to numeric primitive values. Dates are compared by their
+ // millisecond representations. Note that invalid dates with millisecond representations
+ // of `NaN` are not equivalent.
+ return +a == +b;
+ // RegExps are compared by their source patterns and flags.
+ case '[object RegExp]':
+ return a.source == b.source &&
+ a.global == b.global &&
+ a.multiline == b.multiline &&
+ a.ignoreCase == b.ignoreCase;
+ }
+ if (typeof a != 'object' || typeof b != 'object') return false;
+ // Assume equality for cyclic structures. The algorithm for detecting cyclic
+ // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.
+ var length = stack.length;
+ while (length--) {
+ // Linear search. Performance is inversely proportional to the number of
+ // unique nested structures.
+ if (stack[length] == a) return true;
+ }
+ // Add the first object to the stack of traversed objects.
+ stack.push(a);
+ var size = 0, result = true;
+ // Recursively compare objects and arrays.
+ if (className == '[object Array]') {
+ // Compare array lengths to determine if a deep comparison is necessary.
+ size = a.length;
+ result = size == b.length;
+ if (result) {
+ // Deep compare the contents, ignoring non-numeric properties.
+ while (size--) {
+ // Ensure commutative equality for sparse arrays.
+ if (!(result = size in a == size in b && eq(a[size], b[size], stack))) break;
+ }
+ }
+ } else {
+ // Objects with different constructors are not equivalent.
+ if ('constructor' in a != 'constructor' in b || a.constructor != b.constructor) return false;
+ // Deep compare objects.
+ for (var key in a) {
+ if (_.has(a, key)) {
+ // Count the expected number of properties.
+ size++;
+ // Deep compare each member.
+ if (!(result = _.has(b, key) && eq(a[key], b[key], stack))) break;
+ }
+ }
+ // Ensure that both objects contain the same number of properties.
+ if (result) {
+ for (key in b) {
+ if (_.has(b, key) && !(size--)) break;
+ }
+ result = !size;
+ }
+ }
+ // Remove the first object from the stack of traversed objects.
+ stack.pop();
+ return result;
+ }
+
+ // Perform a deep comparison to check if two objects are equal.
+ _.isEqual = function(a, b) {
+ return eq(a, b, []);
+ };
+
+ // Is a given array, string, or object empty?
+ // An "empty" object has no enumerable own-properties.
+ _.isEmpty = function(obj) {
+ if (_.isArray(obj) || _.isString(obj)) return obj.length === 0;
+ for (var key in obj) if (_.has(obj, key)) return false;
+ return true;
+ };
+
+ // Is a given value a DOM element?
+ _.isElement = function(obj) {
+ return !!(obj && obj.nodeType == 1);
+ };
+
+ // Is a given value an array?
+ // Delegates to ECMA5's native Array.isArray
+ _.isArray = nativeIsArray || function(obj) {
+ return toString.call(obj) == '[object Array]';
+ };
+
+ // Is a given variable an object?
+ _.isObject = function(obj) {
+ return obj === Object(obj);
+ };
+
+ // Is a given variable an arguments object?
+ _.isArguments = function(obj) {
+ return toString.call(obj) == '[object Arguments]';
+ };
+ if (!_.isArguments(arguments)) {
+ _.isArguments = function(obj) {
+ return !!(obj && _.has(obj, 'callee'));
+ };
+ }
+
+ // Is a given value a function?
+ _.isFunction = function(obj) {
+ return toString.call(obj) == '[object Function]';
+ };
+
+ // Is a given value a string?
+ _.isString = function(obj) {
+ return toString.call(obj) == '[object String]';
+ };
+
+ // Is a given value a number?
+ _.isNumber = function(obj) {
+ return toString.call(obj) == '[object Number]';
+ };
+
+ // Is the given value `NaN`?
+ _.isNaN = function(obj) {
+ // `NaN` is the only value for which `===` is not reflexive.
+ return obj !== obj;
+ };
+
+ // Is a given value a boolean?
+ _.isBoolean = function(obj) {
+ return obj === true || obj === false || toString.call(obj) == '[object Boolean]';
+ };
+
+ // Is a given value a date?
+ _.isDate = function(obj) {
+ return toString.call(obj) == '[object Date]';
+ };
+
+ // Is the given value a regular expression?
+ _.isRegExp = function(obj) {
+ return toString.call(obj) == '[object RegExp]';
+ };
+
+ // Is a given value equal to null?
+ _.isNull = function(obj) {
+ return obj === null;
+ };
+
+ // Is a given variable undefined?
+ _.isUndefined = function(obj) {
+ return obj === void 0;
+ };
+
+ // Has own property?
+ _.has = function(obj, key) {
+ return hasOwnProperty.call(obj, key);
+ };
+
+ // Utility Functions
+ // -----------------
+
+ // Run Underscore.js in *noConflict* mode, returning the `_` variable to its
+ // previous owner. Returns a reference to the Underscore object.
+ _.noConflict = function() {
+ root._ = previousUnderscore;
+ return this;
+ };
+
+ // Keep the identity function around for default iterators.
+ _.identity = function(value) {
+ return value;
+ };
+
+ // Run a function **n** times.
+ _.times = function (n, iterator, context) {
+ for (var i = 0; i < n; i++) iterator.call(context, i);
+ };
+
+ // Escape a string for HTML interpolation.
+ _.escape = function(string) {
+ return (''+string).replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''').replace(/\//g,'/');
+ };
+
+ // Add your own custom functions to the Underscore object, ensuring that
+ // they're correctly added to the OOP wrapper as well.
+ _.mixin = function(obj) {
+ each(_.functions(obj), function(name){
+ addToWrapper(name, _[name] = obj[name]);
+ });
+ };
+
+ // Generate a unique integer id (unique within the entire client session).
+ // Useful for temporary DOM ids.
+ var idCounter = 0;
+ _.uniqueId = function(prefix) {
+ var id = idCounter++;
+ return prefix ? prefix + id : id;
+ };
+
+ // By default, Underscore uses ERB-style template delimiters, change the
+ // following template settings to use alternative delimiters.
+ _.templateSettings = {
+ evaluate : /<%([\s\S]+?)%>/g,
+ interpolate : /<%=([\s\S]+?)%>/g,
+ escape : /<%-([\s\S]+?)%>/g
+ };
+
+ // When customizing `templateSettings`, if you don't want to define an
+ // interpolation, evaluation or escaping regex, we need one that is
+ // guaranteed not to match.
+ var noMatch = /.^/;
+
+ // Within an interpolation, evaluation, or escaping, remove HTML escaping
+ // that had been previously added.
+ var unescape = function(code) {
+ return code.replace(/\\\\/g, '\\').replace(/\\'/g, "'");
+ };
+
+ // JavaScript micro-templating, similar to John Resig's implementation.
+ // Underscore templating handles arbitrary delimiters, preserves whitespace,
+ // and correctly escapes quotes within interpolated code.
+ _.template = function(str, data) {
+ var c = _.templateSettings;
+ var tmpl = 'var __p=[],print=function(){__p.push.apply(__p,arguments);};' +
+ 'with(obj||{}){__p.push(\'' +
+ str.replace(/\\/g, '\\\\')
+ .replace(/'/g, "\\'")
+ .replace(c.escape || noMatch, function(match, code) {
+ return "',_.escape(" + unescape(code) + "),'";
+ })
+ .replace(c.interpolate || noMatch, function(match, code) {
+ return "'," + unescape(code) + ",'";
+ })
+ .replace(c.evaluate || noMatch, function(match, code) {
+ return "');" + unescape(code).replace(/[\r\n\t]/g, ' ') + ";__p.push('";
+ })
+ .replace(/\r/g, '\\r')
+ .replace(/\n/g, '\\n')
+ .replace(/\t/g, '\\t')
+ + "');}return __p.join('');";
+ var func = new Function('obj', '_', tmpl);
+ if (data) return func(data, _);
+ return function(data) {
+ return func.call(this, data, _);
+ };
+ };
+
+ // Add a "chain" function, which will delegate to the wrapper.
+ _.chain = function(obj) {
+ return _(obj).chain();
+ };
+
+ // The OOP Wrapper
+ // ---------------
+
+ // If Underscore is called as a function, it returns a wrapped object that
+ // can be used OO-style. This wrapper holds altered versions of all the
+ // underscore functions. Wrapped objects may be chained.
+ var wrapper = function(obj) { this._wrapped = obj; };
+
+ // Expose `wrapper.prototype` as `_.prototype`
+ _.prototype = wrapper.prototype;
+
+ // Helper function to continue chaining intermediate results.
+ var result = function(obj, chain) {
+ return chain ? _(obj).chain() : obj;
+ };
+
+ // A method to easily add functions to the OOP wrapper.
+ var addToWrapper = function(name, func) {
+ wrapper.prototype[name] = function() {
+ var args = slice.call(arguments);
+ unshift.call(args, this._wrapped);
+ return result(func.apply(_, args), this._chain);
+ };
+ };
+
+ // Add all of the Underscore functions to the wrapper object.
+ _.mixin(_);
+
+ // Add all mutator Array functions to the wrapper.
+ each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {
+ var method = ArrayProto[name];
+ wrapper.prototype[name] = function() {
+ var wrapped = this._wrapped;
+ method.apply(wrapped, arguments);
+ var length = wrapped.length;
+ if ((name == 'shift' || name == 'splice') && length === 0) delete wrapped[0];
+ return result(wrapped, this._chain);
+ };
+ });
+
+ // Add all accessor Array functions to the wrapper.
+ each(['concat', 'join', 'slice'], function(name) {
+ var method = ArrayProto[name];
+ wrapper.prototype[name] = function() {
+ return result(method.apply(this._wrapped, arguments), this._chain);
+ };
+ });
+
+ // Start chaining a wrapped Underscore object.
+ wrapper.prototype.chain = function() {
+ this._chain = true;
+ return this;
+ };
+
+ // Extracts the result from a wrapped and chained object.
+ wrapper.prototype.value = function() {
+ return this._wrapped;
+ };
+
+}).call(this);
diff --git a/docs/usrman/_static/up-pressed.png b/docs/usrman/_static/up-pressed.png
index 8bd587a..acee3b6 100644
Binary files a/docs/usrman/_static/up-pressed.png and b/docs/usrman/_static/up-pressed.png differ
diff --git a/docs/usrman/_static/up.png b/docs/usrman/_static/up.png
index b946256..2a940a7 100644
Binary files a/docs/usrman/_static/up.png and b/docs/usrman/_static/up.png differ
diff --git a/docs/usrman/_static/websupport.js b/docs/usrman/_static/websupport.js
index 71c0a13..53f6a45 100644
--- a/docs/usrman/_static/websupport.js
+++ b/docs/usrman/_static/websupport.js
@@ -2,9 +2,9 @@
* websupport.js
* ~~~~~~~~~~~~~
*
- * sphinx.websupport utilties for all documentation.
+ * sphinx.websupport utilities for all documentation.
*
- * :copyright: Copyright 2007-2014 by the Sphinx team, see AUTHORS.
+ * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
@@ -50,51 +50,51 @@
}
function initEvents() {
- $('a.comment-close').live("click", function(event) {
+ $(document).on("click", 'a.comment-close', function(event) {
event.preventDefault();
hide($(this).attr('id').substring(2));
});
- $('a.vote').live("click", function(event) {
+ $(document).on("click", 'a.vote', function(event) {
event.preventDefault();
handleVote($(this));
});
- $('a.reply').live("click", function(event) {
+ $(document).on("click", 'a.reply', function(event) {
event.preventDefault();
openReply($(this).attr('id').substring(2));
});
- $('a.close-reply').live("click", function(event) {
+ $(document).on("click", 'a.close-reply', function(event) {
event.preventDefault();
closeReply($(this).attr('id').substring(2));
});
- $('a.sort-option').live("click", function(event) {
+ $(document).on("click", 'a.sort-option', function(event) {
event.preventDefault();
handleReSort($(this));
});
- $('a.show-proposal').live("click", function(event) {
+ $(document).on("click", 'a.show-proposal', function(event) {
event.preventDefault();
showProposal($(this).attr('id').substring(2));
});
- $('a.hide-proposal').live("click", function(event) {
+ $(document).on("click", 'a.hide-proposal', function(event) {
event.preventDefault();
hideProposal($(this).attr('id').substring(2));
});
- $('a.show-propose-change').live("click", function(event) {
+ $(document).on("click", 'a.show-propose-change', function(event) {
event.preventDefault();
showProposeChange($(this).attr('id').substring(2));
});
- $('a.hide-propose-change').live("click", function(event) {
+ $(document).on("click", 'a.hide-propose-change', function(event) {
event.preventDefault();
hideProposeChange($(this).attr('id').substring(2));
});
- $('a.accept-comment').live("click", function(event) {
+ $(document).on("click", 'a.accept-comment', function(event) {
event.preventDefault();
acceptComment($(this).attr('id').substring(2));
});
- $('a.delete-comment').live("click", function(event) {
+ $(document).on("click", 'a.delete-comment', function(event) {
event.preventDefault();
deleteComment($(this).attr('id').substring(2));
});
- $('a.comment-markup').live("click", function(event) {
+ $(document).on("click", 'a.comment-markup', function(event) {
event.preventDefault();
toggleCommentMarkupBox($(this).attr('id').substring(2));
});
@@ -700,8 +700,8 @@
(<a href="#" class="comment-markup" id="ab<%id%>">markup</a>):</p>\
<div class="comment-markup-box" id="mb<%id%>">\
reStructured text markup: <i>*emph*</i>, <b>**strong**</b>, \
- <tt>``code``</tt>, \
- code blocks: <tt>::</tt> and an indented block after blank line</div>\
+ <code>``code``</code>, \
+ code blocks: <code>::</code> and an indented block after blank line</div>\
<form method="post" id="cf<%id%>" class="comment-form" action="">\
<textarea name="comment" cols="80"></textarea>\
<p class="propose-button">\
diff --git a/docs/usrman/citing.html b/docs/usrman/citing.html
index 43e186f..edfad26 100644
--- a/docs/usrman/citing.html
+++ b/docs/usrman/citing.html
@@ -1,33 +1,32 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Citations — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>Citations — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="index.html" />
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="search.html" />
<link rel="prev" title="Tutorial" href="tutorial.html" />
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -36,14 +35,14 @@
<li class="right" >
<a href="tutorial.html" title="Tutorial"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<div class="section" id="citations">
<h1>Citations<a class="headerlink" href="#citations" title="Permalink to this headline">¶</a></h1>
@@ -59,7 +58,7 @@ Advances in Water Resources, 34(9):1124-1139, 2011.
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
-<em>PETSc Users Manual</em>, ANL-95/11 - Revision 3.7, 2016.
+<em>PETSc Users Manual</em>, ANL-95/11 - Revision 3.8, 2017.
<a class="reference external" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf">http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf</a></li>
</ul>
</div>
@@ -68,34 +67,33 @@ H. Zhang, and H. Zhang,
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h4>Previous topic</h4>
<p class="topless"><a href="tutorial.html"
title="previous chapter">Tutorial</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/citing.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
-<div id="searchbox" style="display: none">
+ <div role="note" aria-label="source link">
+ <h3>This Page</h3>
+ <ul class="this-page-menu">
+ <li><a href="_sources/citing.rst.txt"
+ rel="nofollow">Show Source</a></li>
+ </ul>
+ </div>
+<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
- <input type="text" name="q" />
- <input type="submit" value="Go" />
+ <div><input type="text" name="q" /></div>
+ <div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -104,12 +102,12 @@ H. Zhang, and H. Zhang,
<li class="right" >
<a href="tutorial.html" title="Tutorial"
>previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/docs/usrman/genindex.html b/docs/usrman/genindex.html
index ee7fbad..214da81 100644
--- a/docs/usrman/genindex.html
+++ b/docs/usrman/genindex.html
@@ -1,46 +1,45 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Index — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>Index — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="index.html" />
+ <link rel="index" title="Index" href="#" />
+ <link rel="search" title="Search" href="search.html" />
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="#" title="General Index"
accesskey="I">index</a></li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<h1 id="index">Index</h1>
@@ -55,81 +54,59 @@
</div>
<h2 id="A">A</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
- <td style="width: 33%" valign="top"><dl>
-
- <dt><a href="install.html#index-4">ARCHFLAGS</a>
- </dt>
-
- </dl></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="install.html#index-4">ARCHFLAGS</a>
+</li>
+ </ul></td>
</tr></table>
<h2 id="E">E</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
- <td style="width: 33%" valign="top"><dl>
-
- <dt>
+ <td style="width: 33%; vertical-align: top;"><ul>
+ <li>
environment variable
- </dt>
-
- <dd><dl>
-
- <dt><a href="install.html#index-4">ARCHFLAGS</a>
- </dt>
-
-
- <dt><a href="install.html#index-2">MACOSX_DEPLOYMENT_TARGET</a>
- </dt>
-
-
- <dt><a href="install.html#index-1">PETSC_ARCH</a>, <a href="install.html#index-6">[1]</a>
- </dt>
-
- <dt><a href="install.html#index-0">PETSC_DIR</a>, <a href="install.html#index-5">[1]</a>
- </dt>
-
-
- <dt><a href="install.html#index-3">SDKROOT</a>
- </dt>
-
- </dl></dd>
- </dl></td>
+ <ul>
+ <li><a href="install.html#index-4">ARCHFLAGS</a>
+</li>
+ <li><a href="install.html#index-2">MACOSX_DEPLOYMENT_TARGET</a>
+</li>
+ <li><a href="install.html#index-1">PETSC_ARCH</a>, <a href="install.html#index-6">[1]</a>
+</li>
+ <li><a href="install.html#index-0">PETSC_DIR</a>, <a href="install.html#index-5">[1]</a>
+</li>
+ <li><a href="install.html#index-3">SDKROOT</a>
+</li>
+ </ul></li>
+ </ul></td>
</tr></table>
<h2 id="M">M</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
- <td style="width: 33%" valign="top"><dl>
-
- <dt><a href="install.html#index-2">MACOSX_DEPLOYMENT_TARGET</a>
- </dt>
-
- </dl></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="install.html#index-2">MACOSX_DEPLOYMENT_TARGET</a>
+</li>
+ </ul></td>
</tr></table>
<h2 id="P">P</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
- <td style="width: 33%" valign="top"><dl>
-
- <dt><a href="install.html#index-1">PETSC_ARCH</a>, <a href="install.html#index-6">[1]</a>
- </dt>
-
- </dl></td>
- <td style="width: 33%" valign="top"><dl>
-
- <dt><a href="install.html#index-0">PETSC_DIR</a>, <a href="install.html#index-5">[1]</a>
- </dt>
-
- </dl></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="install.html#index-1">PETSC_ARCH</a>, <a href="install.html#index-6">[1]</a>
+</li>
+ </ul></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="install.html#index-0">PETSC_DIR</a>, <a href="install.html#index-5">[1]</a>
+</li>
+ </ul></td>
</tr></table>
<h2 id="S">S</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
- <td style="width: 33%" valign="top"><dl>
-
- <dt><a href="install.html#index-3">SDKROOT</a>
- </dt>
-
- </dl></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="install.html#index-3">SDKROOT</a>
+</li>
+ </ul></td>
</tr></table>
@@ -137,40 +114,37 @@
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
-<div id="searchbox" style="display: none">
+<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
- <input type="text" name="q" />
- <input type="submit" value="Go" />
+ <div><input type="text" name="q" /></div>
+ <div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="#" title="General Index"
>index</a></li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/docs/usrman/index.html b/docs/usrman/index.html
index 0b29102..7c3a066 100644
--- a/docs/usrman/index.html
+++ b/docs/usrman/index.html
@@ -1,33 +1,32 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>PETSc for Python — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>PETSc for Python — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="#" />
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="search.html" />
<link rel="next" title="Overview" href="overview.html" />
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -36,14 +35,14 @@
<li class="right" >
<a href="overview.html" title="Overview"
accesskey="N">next</a> |</li>
- <li><a href="#">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="#">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<div class="section" id="petsc-for-python">
<h1>PETSc for Python<a class="headerlink" href="#petsc-for-python" title="Permalink to this headline">¶</a></h1>
@@ -57,7 +56,7 @@
</tr>
<tr class="field-odd field"><th class="field-name">Web Site:</th><td class="field-body"><a class="reference external" href="https://bitbucket.org/petsc/petsc4py">https://bitbucket.org/petsc/petsc4py</a></td>
</tr>
-<tr class="field-even field"><th class="field-name">Date:</th><td class="field-body">May 01, 2016</td>
+<tr class="field-even field"><th class="field-name">Date:</th><td class="field-body">Oct 02, 2017</td>
</tr>
</tbody>
</table>
@@ -111,7 +110,7 @@ the <em>Scalable Library for Eigenvalue Problem Computations</em>.</li>
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h3><a href="#">Table Of Contents</a></h3>
<ul>
@@ -124,29 +123,28 @@ the <em>Scalable Library for Eigenvalue Problem Computations</em>.</li>
<h4>Next topic</h4>
<p class="topless"><a href="overview.html"
title="next chapter">Overview</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/index.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
-<div id="searchbox" style="display: none">
+ <div role="note" aria-label="source link">
+ <h3>This Page</h3>
+ <ul class="this-page-menu">
+ <li><a href="_sources/index.rst.txt"
+ rel="nofollow">Show Source</a></li>
+ </ul>
+ </div>
+<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
- <input type="text" name="q" />
- <input type="submit" value="Go" />
+ <div><input type="text" name="q" /></div>
+ <div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -155,12 +153,12 @@ the <em>Scalable Library for Eigenvalue Problem Computations</em>.</li>
<li class="right" >
<a href="overview.html" title="Overview"
>next</a> |</li>
- <li><a href="#">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="#">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/docs/usrman/install.html b/docs/usrman/install.html
index 98dce84..a34736c 100644
--- a/docs/usrman/install.html
+++ b/docs/usrman/install.html
@@ -1,34 +1,33 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Installation — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>Installation — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="index.html" />
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="search.html" />
<link rel="next" title="Tutorial" href="tutorial.html" />
<link rel="prev" title="Overview" href="overview.html" />
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -40,33 +39,33 @@
<li class="right" >
<a href="overview.html" title="Overview"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<div class="section" id="installation">
<h1>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h1>
<div class="section" id="using-pip-or-easy-install">
<h2>Using <strong>pip</strong> or <strong>easy_install</strong><a class="headerlink" href="#using-pip-or-easy-install" title="Permalink to this headline">¶</a></h2>
-<p>You can use <strong class="program">pip</strong> to install <tt class="xref py py-mod docutils literal"><span class="pre">petsc4py</span></tt> and its
-dependencies (<tt class="xref py py-mod docutils literal"><span class="pre">mpi4py</span></tt> is optional but highly recommended):</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ pip install [--user] numpy mpi4py
+<p>You can use <strong class="program">pip</strong> to install <code class="xref py py-mod docutils literal"><span class="pre">petsc4py</span></code> and its
+dependencies (<code class="xref py py-mod docutils literal"><span class="pre">mpi4py</span></code> is optional but highly recommended):</p>
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ pip install [--user] numpy mpi4py
$ pip install [--user] petsc petsc4py
</pre></div>
</div>
<p>Alternatively, you can use <strong class="program">easy_install</strong> (deprecated):</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ easy_install petsc4py
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ easy_install petsc4py
</pre></div>
</div>
<p>If you already have a working PETSc installation, set environment
-variables <span class="target" id="index-0"></span><tt class="xref std std-envvar docutils literal"><span class="pre">PETSC_DIR</span></tt> and <span class="target" id="index-1"></span><tt class="xref std std-envvar docutils literal"><span class="pre">PETSC_ARCH</span></tt> to appropriate
+variables <span class="target" id="index-0"></span><code class="xref std std-envvar docutils literal"><span class="pre">PETSC_DIR</span></code> and <span class="target" id="index-1"></span><code class="xref std std-envvar docutils literal"><span class="pre">PETSC_ARCH</span></code> to appropriate
values and next use <strong class="program">pip</strong>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ export PETSC_DIR=/path/to/petsc
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ export PETSC_DIR=/path/to/petsc
$ export PETSC_ARCH=arch-linux2-c-opt
$ pip install petsc4py
</pre></div>
@@ -88,7 +87,7 @@ built with shared libraries.</li>
<colgroup><col class="label" /><col /></colgroup>
<tbody valign="top">
<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td>Unless you have appropiatelly configured and built PETSc
-without MPI (configure option <em class="xref std std-option">--with-mpi=0</em>).</td></tr>
+without MPI (configure option <code class="docutils literal"><span class="pre">--with-mpi=0</span></code>).</td></tr>
</tbody>
</table>
<table class="docutils footnote" frame="void" id="id3" rules="none">
@@ -106,12 +105,12 @@ project website generously hosted by Bitbucket. You can use
<strong class="program">curl</strong> or <strong class="program">wget</strong> to get a release tarball.</p>
<ul>
<li><p class="first">Using <strong class="program">curl</strong>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ curl -O https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
</pre></div>
</div>
</li>
<li><p class="first">Using <strong class="program">wget</strong>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.tar.gz
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ wget https://bitbucket.org/petsc/petsc4py/petsc4py-X.Y.Z.tar.gz
</pre></div>
</div>
</li>
@@ -120,8 +119,8 @@ project website generously hosted by Bitbucket. You can use
<div class="section" id="building">
<h3>Building<a class="headerlink" href="#building" title="Permalink to this headline">¶</a></h3>
<p>After unpacking the release tarball:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ tar -zxf petsc4py-X.Y.tar.gz
-$ cd petsc4py-X.Y
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ tar -zxf petsc4py-X.Y.Z.tar.gz
+$ cd petsc4py-X.Y.Z
</pre></div>
</div>
<p>the distribution is ready for building.</p>
@@ -129,13 +128,13 @@ $ cd petsc4py-X.Y
<p class="first admonition-title">Note</p>
<p><strong>Mac OS X</strong> users employing a Python distribution built
with <strong>universal binaries</strong> may need to set the environment
-variables <span class="target" id="index-2"></span><tt class="xref std std-envvar docutils literal"><span class="pre">MACOSX_DEPLOYMENT_TARGET</span></tt>, <span class="target" id="index-3"></span><tt class="xref std std-envvar docutils literal"><span class="pre">SDKROOT</span></tt>,
-and <span class="target" id="index-4"></span><tt class="xref std std-envvar docutils literal"><span class="pre">ARCHFLAGS</span></tt> to appropriate values. As an example,
+variables <span class="target" id="index-2"></span><code class="xref std std-envvar docutils literal"><span class="pre">MACOSX_DEPLOYMENT_TARGET</span></code>, <span class="target" id="index-3"></span><code class="xref std std-envvar docutils literal"><span class="pre">SDKROOT</span></code>,
+and <span class="target" id="index-4"></span><code class="xref std std-envvar docutils literal"><span class="pre">ARCHFLAGS</span></code> to appropriate values. As an example,
assume your Mac is running <strong>Snow Leopard</strong> on a <strong>64-bit Intel</strong>
processor and you want to override the hard-wired cross-development
SDK in Python configuration, your environment should be modified
like this:</p>
-<div class="last highlight-python"><div class="highlight"><pre><span></span>$ export MACOSX_DEPLOYMENT_TARGET=10.6
+<div class="last highlight-default"><div class="highlight"><pre><span></span>$ export MACOSX_DEPLOYMENT_TARGET=10.6
$ export SDKROOT=/
$ export ARCHFLAGS='-arch x86_64'
</pre></div>
@@ -144,22 +143,22 @@ $ export ARCHFLAGS='-arch x86_64'
<p>Some environment configuration is needed to inform the location of
PETSc. You can set (using <strong class="command">setenv</strong>, <strong class="command">export</strong> or what
applies to you shell or system) the environment variables
-<span class="target" id="index-5"></span><tt class="xref std std-envvar docutils literal"><span class="pre">PETSC_DIR</span></tt>, and <span class="target" id="index-6"></span><tt class="xref std std-envvar docutils literal"><span class="pre">PETSC_ARCH</span></tt> indicating where you
+<span class="target" id="index-5"></span><code class="xref std std-envvar docutils literal"><span class="pre">PETSC_DIR</span></code>, and <span class="target" id="index-6"></span><code class="xref std std-envvar docutils literal"><span class="pre">PETSC_ARCH</span></code> indicating where you
have built/installed PETSc:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ export PETSC_DIR=/usr/local/petsc
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ export PETSC_DIR=/usr/local/petsc
$ export PETSC_ARCH=arch-linux2-c-opt
</pre></div>
</div>
-<p>Alternatively, you can edit the file <tt class="file docutils literal"><span class="pre">setup.cfg</span></tt> and provide the
-required information below the <tt class="docutils literal"><span class="pre">[config]</span></tt> section:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>[config]
-petsc_dir = /usr/local/petsc
-petsc_arch = arch-linux2-c-opt
-...
+<p>Alternatively, you can edit the file <code class="file docutils literal"><span class="pre">setup.cfg</span></code> and provide the
+required information below the <code class="docutils literal"><span class="pre">[config]</span></code> section:</p>
+<div class="highlight-default"><div class="highlight"><pre><span></span><span class="p">[</span><span class="n">config</span><span class="p">]</span>
+<span class="n">petsc_dir</span> <span class="o">=</span> <span class="o">/</span><span class="n">usr</span><span class="o">/</span><span class="n">local</span><span class="o">/</span><span class="n">petsc</span>
+<span class="n">petsc_arch</span> <span class="o">=</span> <span class="n">arch</span><span class="o">-</span><span class="n">linux2</span><span class="o">-</span><span class="n">c</span><span class="o">-</span><span class="n">opt</span>
+<span class="o">...</span>
</pre></div>
</div>
<p>Finally, you can build the distribution by typing:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ python setup.py build
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ python setup.py build
</pre></div>
</div>
</div>
@@ -169,14 +168,14 @@ petsc_arch = arch-linux2-c-opt
<p>If you have root privileges (either by log-in as the root user of by
using <strong class="command">sudo</strong>) and you want to install <em>PETSc for Python</em> in
your system for all users, just do:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ python setup.py install
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ python setup.py install
</pre></div>
</div>
-<p>The previous steps will install the <tt class="xref py py-mod docutils literal"><span class="pre">petsc4py</span></tt> package at standard
-location <tt class="file docutils literal"><em><span class="pre">prefix</span></em><span class="pre">/lib/python</span><em><span class="pre">X</span></em><span class="pre">.</span><em><span class="pre">X</span></em><span class="pre">/site-packages</span></tt>.</p>
+<p>The previous steps will install the <code class="xref py py-mod docutils literal"><span class="pre">petsc4py</span></code> package at standard
+location <code class="file docutils literal"><em><span class="pre">prefix</span></em><span class="pre">/lib/python</span><em><span class="pre">X</span></em><span class="pre">.</span><em><span class="pre">Y</span></em><span class="pre">/site-packages</span></code>.</p>
<p>If you do not have root privileges or you want to install <em>PETSc for
Python</em> for your private use, just do:</p>
-<div class="highlight-python"><div class="highlight"><pre><span></span>$ python setup.py install --user
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ python setup.py install --user
</pre></div>
</div>
</div>
@@ -187,7 +186,7 @@ Python</em> for your private use, just do:</p>
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h3><a href="index.html">Table Of Contents</a></h3>
<ul>
@@ -210,29 +209,28 @@ Python</em> for your private use, just do:</p>
<h4>Next topic</h4>
<p class="topless"><a href="tutorial.html"
title="next chapter">Tutorial</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/install.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
-<div id="searchbox" style="display: none">
+ <div role="note" aria-label="source link">
+ <h3>This Page</h3>
+ <ul class="this-page-menu">
+ <li><a href="_sources/install.rst.txt"
+ rel="nofollow">Show Source</a></li>
+ </ul>
+ </div>
+<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
- <input type="text" name="q" />
- <input type="submit" value="Go" />
+ <div><input type="text" name="q" /></div>
+ <div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -244,12 +242,12 @@ Python</em> for your private use, just do:</p>
<li class="right" >
<a href="overview.html" title="Overview"
>previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/docs/usrman/manual.html b/docs/usrman/manual.html
index 4a657a2..d791bda 100644
--- a/docs/usrman/manual.html
+++ b/docs/usrman/manual.html
@@ -1,45 +1,44 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>PETSc for Python — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>PETSc for Python — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="index.html" />
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="search.html" />
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<div class="section" id="petsc-for-python">
<h1>PETSc for Python<a class="headerlink" href="#petsc-for-python" title="Permalink to this headline">¶</a></h1>
@@ -90,42 +89,41 @@ the <em>Scalable Library for Eigenvalue Problem Computations</em>.</li>
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/manual.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
-<div id="searchbox" style="display: none">
+ <div role="note" aria-label="source link">
+ <h3>This Page</h3>
+ <ul class="this-page-menu">
+ <li><a href="_sources/manual.rst.txt"
+ rel="nofollow">Show Source</a></li>
+ </ul>
+ </div>
+<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
- <input type="text" name="q" />
- <input type="submit" value="Go" />
+ <div><input type="text" name="q" /></div>
+ <div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/docs/usrman/objects.inv b/docs/usrman/objects.inv
index 3e33240..87d91eb 100644
--- a/docs/usrman/objects.inv
+++ b/docs/usrman/objects.inv
@@ -1,7 +1,8 @@
# Sphinx inventory version 2
# Project: PETSc for Python
-# Version: 3.7
+# Version: 3.8
# The remainder of this file is compressed using zlib.
-xڅ�K
-�0��yVqA�Wp�
t � &'M ���Uw/%� 8=��C�.j��T=x��'����Џ�������A�6� �G���h�@fe��m�=�� bF-�a�S�
��"��֝�;_
-2g��
��P�
\ No newline at end of file
+xڅ��
+1
E����n+�u+.\�����:��f|���NAqל�$�*$�
�7�).�\E��i0|�$ �
��V�=�F^���B��?�G�
gF�;�o��̓zg_r iL�GTV�"�`�����D~�
��y|��Hs�'9����"��G
+K�1Wl
+J@ۢB�T_�fK.�>��C�� ��k+�������D�c�1�%��+��?
\ No newline at end of file
diff --git a/docs/usrman/overview.html b/docs/usrman/overview.html
index 3bdb43d..35e9541 100644
--- a/docs/usrman/overview.html
+++ b/docs/usrman/overview.html
@@ -1,34 +1,33 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Overview — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>Overview — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="index.html" />
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="search.html" />
<link rel="next" title="Installation" href="install.html" />
<link rel="prev" title="PETSc for Python" href="index.html" />
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -40,14 +39,14 @@
<li class="right" >
<a href="index.html" title="PETSc for Python"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<div class="section" id="overview">
<h1>Overview<a class="headerlink" href="#overview" title="Permalink to this headline">¶</a></h1>
@@ -76,7 +75,7 @@ communication and computation.</p>
P. Brune, K. Buschelman, L. Dalcin, V. Eijkhout, W.D. Gropp,
D. Karpeyev, D. Kaushik, M.G. Knepley, L. Curfman McInnes, K. Rupp,
B.F. Smith, S. Zampini, H. Zhang, and H. Zhang,
-<em>PETSc Users Manual</em>, ANL-95/11 - Revision 3.7, 2016.
+<em>PETSc Users Manual</em>, ANL-95/11 - Revision 3.8, 2017.
<a class="reference external" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf">http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf</a></td></tr>
</tbody>
</table>
@@ -87,7 +86,7 @@ B.F. Smith, S. Zampini, H. Zhang, and H. Zhang,
Lois Curfman McInnes and Barry F. Smith. Efficient Management of
Parallelism in Object Oriented Numerical Software Libraries. Modern
Software Tools in Scientific Computing. E. Arge, A. M. Bruaset and
-H. P. Langtangen, editors. 163–202. Birkhauser Press. 1997.</td></tr>
+H. P. Langtangen, editors. 163–202. Birkhauser Press. 1997.</td></tr>
</tbody>
</table>
<div class="section" id="components">
@@ -146,7 +145,7 @@ steady-state solutions.</td>
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h3><a href="index.html">Table Of Contents</a></h3>
<ul>
@@ -162,29 +161,28 @@ steady-state solutions.</td>
<h4>Next topic</h4>
<p class="topless"><a href="install.html"
title="next chapter">Installation</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/overview.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
-<div id="searchbox" style="display: none">
+ <div role="note" aria-label="source link">
+ <h3>This Page</h3>
+ <ul class="this-page-menu">
+ <li><a href="_sources/overview.rst.txt"
+ rel="nofollow">Show Source</a></li>
+ </ul>
+ </div>
+<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
- <input type="text" name="q" />
- <input type="submit" value="Go" />
+ <div><input type="text" name="q" /></div>
+ <div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -196,12 +194,12 @@ steady-state solutions.</td>
<li class="right" >
<a href="index.html" title="PETSc for Python"
>previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/docs/usrman/search.html b/docs/usrman/search.html
index 6e88321..3c37c5a 100644
--- a/docs/usrman/search.html
+++ b/docs/usrman/search.html
@@ -1,30 +1,29 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Search — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>Search — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/searchtools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="index.html" />
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="#" />
<script type="text/javascript">
jQuery(function() { Search.loadIndex("searchindex.js"); });
</script>
@@ -34,20 +33,20 @@
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<h1 id="search-documentation">Search</h1>
<div id="fallback" class="admonition warning">
@@ -76,24 +75,24 @@
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/docs/usrman/searchindex.js b/docs/usrman/searchindex.js
index a6c3d03..04dd24c 100644
--- a/docs/usrman/searchindex.js
+++ b/docs/usrman/searchindex.js
@@ -1 +1 @@
-Search.setIndex({envversion:42,terms:{all:[0,2,4,1],code:1,partial:[0,2,1],precondition:1,four:1,prefix:4,follow:4,privat:4,depend:[0,2,4],vec:1,petsc_dir:4,brown:[1,3],zhang:[1,3],mpi:[0,2,4,1],mechan:1,solver:1,signific:3,iter:1,vector:1,pleas:3,x86_64:4,cfg:4,design:1,pass:[0,2,1],lisandro:0,port:[0,2],victor:1,what:4,nonlinear:1,section:4,current:[1,3],version:4,method:1,ongo:1,gener:4,kler:3,path:4,modifi:4,interpret:4,search:1,step:4,converg:1,implement:[1,4],portabl:[0,2],overrid: [...]
\ No newline at end of file
+Search.setIndex({docnames:["citing","index","install","manual","overview","tutorial"],envversion:52,filenames:["citing.rst","index.rst","install.rst","manual.rst","overview.rst","tutorial.rst"],objects:{},objnames:{},objtypes:{},terms:{"abstract":4,"class":4,"default":4,"export":2,"final":2,"function":[1,3,4],"import":[1,3],"public":0,"transient":4,CGS:4,The:2,These:4,Using:[1,3],With:4,abhyankar:[0,4],abov:4,academ:0,access:4,acknowledg:0,adam:[0,4],addit:4,advanc:[0,4],advwatr:0,after: [...]
\ No newline at end of file
diff --git a/docs/usrman/tutorial.html b/docs/usrman/tutorial.html
index 0550beb..0d20d90 100644
--- a/docs/usrman/tutorial.html
+++ b/docs/usrman/tutorial.html
@@ -1,34 +1,33 @@
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Tutorial — PETSc for Python 3.7.0 documentation</title>
-
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <title>Tutorial — PETSc for Python 3.8.0 documentation</title>
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
- VERSION: '3.7.0',
+ VERSION: '3.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
- HAS_SOURCE: true
+ HAS_SOURCE: true,
+ SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="PETSc for Python 3.7.0 documentation" href="index.html" />
+ <link rel="index" title="Index" href="genindex.html" />
+ <link rel="search" title="Search" href="search.html" />
<link rel="next" title="Citations" href="citing.html" />
<link rel="prev" title="Installation" href="install.html" />
</head>
<body>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -40,25 +39,25 @@
<li class="right" >
<a href="install.html" title="Installation"
accesskey="P">previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
- <div class="body">
+ <div class="body" role="main">
<div class="section" id="tutorial">
<h1>Tutorial<a class="headerlink" href="#tutorial" title="Permalink to this headline">¶</a></h1>
-<p>XXX To be written ... Any contribution welcome!</p>
+<p>XXX To be written … Any contribution welcome!</p>
</div>
</div>
</div>
</div>
- <div class="sphinxsidebar">
+ <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h4>Previous topic</h4>
<p class="topless"><a href="install.html"
@@ -66,29 +65,28 @@
<h4>Next topic</h4>
<p class="topless"><a href="citing.html"
title="next chapter">Citations</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/tutorial.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
-<div id="searchbox" style="display: none">
+ <div role="note" aria-label="source link">
+ <h3>This Page</h3>
+ <ul class="this-page-menu">
+ <li><a href="_sources/tutorial.rst.txt"
+ rel="nofollow">Show Source</a></li>
+ </ul>
+ </div>
+<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
- <input type="text" name="q" />
- <input type="submit" value="Go" />
+ <div><input type="text" name="q" /></div>
+ <div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
- <div class="related">
+ <div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
@@ -100,12 +98,12 @@
<li class="right" >
<a href="install.html" title="Installation"
>previous</a> |</li>
- <li><a href="index.html">PETSc for Python 3.7.0 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">PETSc for Python 3.8.0 documentation</a> »</li>
</ul>
</div>
- <div class="footer">
- © Copyright 2016, Lisandro Dalcin.
- Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
+ <div class="footer" role="contentinfo">
+ © Copyright 2017, Lisandro Dalcin.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.6.3.
</div>
</body>
</html>
\ No newline at end of file
diff --git a/petsc4py.egg-info/PKG-INFO b/petsc4py.egg-info/PKG-INFO
index ed8ef1e..a58768c 100644
--- a/petsc4py.egg-info/PKG-INFO
+++ b/petsc4py.egg-info/PKG-INFO
@@ -1,12 +1,13 @@
Metadata-Version: 1.1
Name: petsc4py
-Version: 3.7.0
+Version: 3.8.0
Summary: PETSc for Python
Home-page: https://bitbucket.org/petsc/petsc4py/
Author: Lisandro Dalcin
Author-email: dalcinl at gmail.com
License: BSD
-Download-URL: https://bitbucket.org/petsc/petsc4py/downloads/petsc4py-3.7.0.tar.gz
+Download-URL: https://bitbucket.org/petsc/petsc4py/downloads/petsc4py-3.8.0.tar.gz
+Description-Content-Type: UNKNOWN
Description: PETSc for Python
================
@@ -58,7 +59,7 @@ Description: PETSc for Python
L. Dalcin, V. Eijkhout, W.D. Gropp, D. Karpeyev, D. Kaushik,
M.G. Knepley, L. Curfman McInnes, K. Rupp, B.F. Smith, S. Zampini,
H. Zhang, and H. Zhang,
- *PETSc Users Manual*, ANL-95/11 - Revision 3.7, 2016.
+ *PETSc Users Manual*, ANL-95/11 - Revision 3.8, 2017.
http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
Keywords: scientific computing,parallel computing,PETSc,MPI
diff --git a/petsc4py.egg-info/SOURCES.txt b/petsc4py.egg-info/SOURCES.txt
index 8b7996d..bc51e87 100644
--- a/petsc4py.egg-info/SOURCES.txt
+++ b/petsc4py.egg-info/SOURCES.txt
@@ -21,6 +21,7 @@ demo/bratu2d/bratu2dnpy.py
demo/bratu2d/makefile
demo/bratu3d/bratu3d.py
demo/bratu3d/makefile
+demo/dmplex/adaptivity.py
demo/dmplex/distribute_field.py
demo/kspsolve/makefile
demo/kspsolve/petsc-cg.py
@@ -78,92 +79,6 @@ docs/petsc4py.info
docs/petsc4py.pdf
docs/apiref/api-objects.txt
docs/apiref/class-tree.html
-docs/apiref/class_hierarchy_for__dmcomposi.png
-docs/apiref/class_hierarchy_for__dmda_vec_.png
-docs/apiref/class_hierarchy_for__is_buffer.png
-docs/apiref/class_hierarchy_for__mat_stenc.png
-docs/apiref/class_hierarchy_for__vec_buffe.png
-docs/apiref/class_hierarchy_for__vec_local.png
-docs/apiref/class_hierarchy_for_ao.png
-docs/apiref/class_hierarchy_for_asmtype.png
-docs/apiref/class_hierarchy_for_assemblyty.png
-docs/apiref/class_hierarchy_for_boundaryty.png
-docs/apiref/class_hierarchy_for_comm.png
-docs/apiref/class_hierarchy_for_compositet.png
-docs/apiref/class_hierarchy_for_convergedr.png
-docs/apiref/class_hierarchy_for_convergedr_2.png
-docs/apiref/class_hierarchy_for_convergedr_3.png
-docs/apiref/class_hierarchy_for_dm.png
-docs/apiref/class_hierarchy_for_dmcomposit.png
-docs/apiref/class_hierarchy_for_dmda.png
-docs/apiref/class_hierarchy_for_dmplex.png
-docs/apiref/class_hierarchy_for_dmshell.png
-docs/apiref/class_hierarchy_for_elementtyp.png
-docs/apiref/class_hierarchy_for_equationty.png
-docs/apiref/class_hierarchy_for_error.png
-docs/apiref/class_hierarchy_for_exactfinal.png
-docs/apiref/class_hierarchy_for_factorshif.png
-docs/apiref/class_hierarchy_for_format.png
-docs/apiref/class_hierarchy_for_gamgtype.png
-docs/apiref/class_hierarchy_for_gasmtype.png
-docs/apiref/class_hierarchy_for_infotype.png
-docs/apiref/class_hierarchy_for_insertmode.png
-docs/apiref/class_hierarchy_for_interpolat.png
-docs/apiref/class_hierarchy_for_is.png
-docs/apiref/class_hierarchy_for_ksp.png
-docs/apiref/class_hierarchy_for_lgmap.png
-docs/apiref/class_hierarchy_for_log.png
-docs/apiref/class_hierarchy_for_logclass.png
-docs/apiref/class_hierarchy_for_logevent.png
-docs/apiref/class_hierarchy_for_logstage.png
-docs/apiref/class_hierarchy_for_maptype.png
-docs/apiref/class_hierarchy_for_mat.png
-docs/apiref/class_hierarchy_for_mgtype.png
-docs/apiref/class_hierarchy_for_mode.png
-docs/apiref/class_hierarchy_for_normschedu.png
-docs/apiref/class_hierarchy_for_normtype.png
-docs/apiref/class_hierarchy_for_normtype_2.png
-docs/apiref/class_hierarchy_for_nullspace.png
-docs/apiref/class_hierarchy_for_object.png
-docs/apiref/class_hierarchy_for_option.png
-docs/apiref/class_hierarchy_for_option_2.png
-docs/apiref/class_hierarchy_for_options.png
-docs/apiref/class_hierarchy_for_orderingty.png
-docs/apiref/class_hierarchy_for_partitione.png
-docs/apiref/class_hierarchy_for_partitione_2.png
-docs/apiref/class_hierarchy_for_pc.png
-docs/apiref/class_hierarchy_for_problemtyp.png
-docs/apiref/class_hierarchy_for_random.png
-docs/apiref/class_hierarchy_for_scatter.png
-docs/apiref/class_hierarchy_for_scattermod.png
-docs/apiref/class_hierarchy_for_schurfactt.png
-docs/apiref/class_hierarchy_for_schurprety.png
-docs/apiref/class_hierarchy_for_section.png
-docs/apiref/class_hierarchy_for_sf.png
-docs/apiref/class_hierarchy_for_side.png
-docs/apiref/class_hierarchy_for_size.png
-docs/apiref/class_hierarchy_for_snes.png
-docs/apiref/class_hierarchy_for_sortype.png
-docs/apiref/class_hierarchy_for_stenciltyp.png
-docs/apiref/class_hierarchy_for_structure.png
-docs/apiref/class_hierarchy_for_sys.png
-docs/apiref/class_hierarchy_for_tao.png
-docs/apiref/class_hierarchy_for_ts.png
-docs/apiref/class_hierarchy_for_type.png
-docs/apiref/class_hierarchy_for_type_10.png
-docs/apiref/class_hierarchy_for_type_11.png
-docs/apiref/class_hierarchy_for_type_12.png
-docs/apiref/class_hierarchy_for_type_2.png
-docs/apiref/class_hierarchy_for_type_3.png
-docs/apiref/class_hierarchy_for_type_4.png
-docs/apiref/class_hierarchy_for_type_5.png
-docs/apiref/class_hierarchy_for_type_6.png
-docs/apiref/class_hierarchy_for_type_7.png
-docs/apiref/class_hierarchy_for_type_8.png
-docs/apiref/class_hierarchy_for_type_9.png
-docs/apiref/class_hierarchy_for_vec.png
-docs/apiref/class_hierarchy_for_viewer.png
-docs/apiref/class_hierarchy_for_viewerhdf5.png
docs/apiref/crarr.png
docs/apiref/epydoc.css
docs/apiref/epydoc.js
@@ -196,7 +111,8 @@ docs/apiref/petsc4py.PETSc.KSP.ConvergedReason-class.html
docs/apiref/petsc4py.PETSc.KSP.NormType-class.html
docs/apiref/petsc4py.PETSc.KSP.Type-class.html
docs/apiref/petsc4py.PETSc.LGMap-class.html
-docs/apiref/petsc4py.PETSc.LGMap.MapType-class.html
+docs/apiref/petsc4py.PETSc.LGMap.MapMode-class.html
+docs/apiref/petsc4py.PETSc.LGMap.Type-class.html
docs/apiref/petsc4py.PETSc.Log-class.html
docs/apiref/petsc4py.PETSc.LogClass-class.html
docs/apiref/petsc4py.PETSc.LogEvent-class.html
@@ -219,6 +135,7 @@ docs/apiref/petsc4py.PETSc.PC.ASMType-class.html
docs/apiref/petsc4py.PETSc.PC.CompositeType-class.html
docs/apiref/petsc4py.PETSc.PC.GAMGType-class.html
docs/apiref/petsc4py.PETSc.PC.GASMType-class.html
+docs/apiref/petsc4py.PETSc.PC.MGCycleType-class.html
docs/apiref/petsc4py.PETSc.PC.MGType-class.html
docs/apiref/petsc4py.PETSc.PC.SchurFactType-class.html
docs/apiref/petsc4py.PETSc.PC.SchurPreType-class.html
@@ -246,6 +163,7 @@ docs/apiref/petsc4py.PETSc.TS.ConvergedReason-class.html
docs/apiref/petsc4py.PETSc.TS.EquationType-class.html
docs/apiref/petsc4py.PETSc.TS.ExactFinalTime-class.html
docs/apiref/petsc4py.PETSc.TS.ProblemType-class.html
+docs/apiref/petsc4py.PETSc.TS.RKType-class.html
docs/apiref/petsc4py.PETSc.TS.Type-class.html
docs/apiref/petsc4py.PETSc.Vec-class.html
docs/apiref/petsc4py.PETSc.Vec.Option-class.html
@@ -279,7 +197,6 @@ docs/source/links.txt
docs/source/make.bat
docs/source/manual.rst
docs/source/overview.rst
-docs/source/sphinxfix.sty
docs/source/toctree.txt
docs/source/tutorial.rst
docs/usrman/.buildinfo
@@ -293,14 +210,15 @@ docs/usrman/overview.html
docs/usrman/search.html
docs/usrman/searchindex.js
docs/usrman/tutorial.html
-docs/usrman/_sources/citing.txt
-docs/usrman/_sources/index.txt
-docs/usrman/_sources/install.txt
-docs/usrman/_sources/manual.txt
-docs/usrman/_sources/overview.txt
-docs/usrman/_sources/tutorial.txt
+docs/usrman/_sources/citing.rst.txt
+docs/usrman/_sources/index.rst.txt
+docs/usrman/_sources/install.rst.txt
+docs/usrman/_sources/manual.rst.txt
+docs/usrman/_sources/overview.rst.txt
+docs/usrman/_sources/tutorial.rst.txt
docs/usrman/_static/ajax-loader.gif
docs/usrman/_static/basic.css
+docs/usrman/_static/classic.css
docs/usrman/_static/comment-bright.png
docs/usrman/_static/comment-close.png
docs/usrman/_static/comment.png
@@ -309,12 +227,14 @@ docs/usrman/_static/doctools.js
docs/usrman/_static/down-pressed.png
docs/usrman/_static/down.png
docs/usrman/_static/file.png
+docs/usrman/_static/jquery-3.1.0.js
docs/usrman/_static/jquery.js
docs/usrman/_static/minus.png
docs/usrman/_static/plus.png
docs/usrman/_static/pygments.css
docs/usrman/_static/searchtools.js
docs/usrman/_static/sidebar.js
+docs/usrman/_static/underscore-1.3.1.js
docs/usrman/_static/underscore.js
docs/usrman/_static/up-pressed.png
docs/usrman/_static/up.png
@@ -326,6 +246,7 @@ petsc4py.egg-info/not-zip-safe
petsc4py.egg-info/requires.txt
petsc4py.egg-info/top_level.txt
src/PETSc.c
+src/PETSc.pxd
src/PETSc.py
src/__init__.py
src/__main__.py
@@ -373,6 +294,7 @@ src/PETSc/petscdmplex.pxi
src/PETSc/petscdmshell.pxi
src/PETSc/petscis.pxi
src/PETSc/petscksp.pxi
+src/PETSc/petsclinesearch.pxi
src/PETSc/petsclog.pxi
src/PETSc/petscmat.pxi
src/PETSc/petscmem.pxi
diff --git a/setup.cfg b/setup.cfg
index 197d5bb..6979cb1 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -19,5 +19,4 @@ doc_files = README.rst CHANGES.rst LICENSE.rst
[egg_info]
tag_build =
tag_date = 0
-tag_svn_revision = 0
diff --git a/setup.py b/setup.py
index 381d006..1afadd9 100755
--- a/setup.py
+++ b/setup.py
@@ -16,8 +16,8 @@ except ImportError:
setuptools = None
pyver = sys.version_info[:2]
-if pyver < (2, 6) or (3, 0) <= pyver < (3, 2):
- raise RuntimeError("Python version 2.6, 2.7 or >= 3.2 required")
+if pyver < (2, 6) or (3, 0) <= pyver < (3, 3):
+ raise RuntimeError("Python version 2.6, 2.7 or >= 3.3 required")
# --------------------------------------------------------------------
# Metadata
@@ -121,7 +121,8 @@ def run_setup():
'include/petsc4py/*.i',
'include/petsc4py/*.pxd',
'include/petsc4py/*.pxi',
- 'include/petsc4py/*.pyx',],
+ 'include/petsc4py/*.pyx',
+ 'PETSc.pxd',],
'petsc4py.lib' : ['petsc.cfg'],},
ext_modules = get_ext_modules(Extension),
cmdclass = {'config' : config,
diff --git a/src/PETSc.pxd b/src/PETSc.pxd
new file mode 100644
index 0000000..fa27117
--- /dev/null
+++ b/src/PETSc.pxd
@@ -0,0 +1,4 @@
+# Author: Lisandro Dalcin
+# Contact: dalcinl at gmail.com
+
+include "include/petsc4py/PETSc.pxd"
diff --git a/src/PETSc/DM.pyx b/src/PETSc/DM.pyx
index 88cbe91..0d2b99a 100644
--- a/src/PETSc/DM.pyx
+++ b/src/PETSc/DM.pyx
@@ -115,17 +115,37 @@ cdef class DM(Object):
CHKERR( DMCreateLocalVector(self.dm, &vl.vec) )
return vl
- def globalToLocal(self, Vec vg not None, Vec vl not None, addv=None):
+ def getGlobalVec(self):
+ cdef Vec vg = Vec()
+ CHKERR( DMGetGlobalVector(self.dm, &vg.vec) )
+ PetscINCREF(vg.obj)
+ return vg
+
+ def restoreGlobalVec(self, Vec vg):
+ CHKERR( PetscObjectDereference(<PetscObject>vg.vec) )
+ CHKERR( DMRestoreGlobalVector(self.dm, &vg.vec) )
+
+ def getLocalVec(self):
+ cdef Vec vl = Vec()
+ CHKERR( DMGetLocalVector(self.dm, &vl.vec) )
+ PetscINCREF(vl.obj)
+ return vl
+
+ def restoreLocalVec(self, Vec vl):
+ CHKERR( PetscObjectDereference(<PetscObject>vl.vec) )
+ CHKERR( DMRestoreLocalVector(self.dm, &vl.vec) )
+
+ def globalToLocal(self, Vec vg, Vec vl, addv=None):
cdef PetscInsertMode im = insertmode(addv)
CHKERR( DMGlobalToLocalBegin(self.dm, vg.vec, im, vl.vec) )
CHKERR( DMGlobalToLocalEnd (self.dm, vg.vec, im, vl.vec) )
- def localToGlobal(self, Vec vl not None, Vec vg not None, addv=None):
+ def localToGlobal(self, Vec vl, Vec vg, addv=None):
cdef PetscInsertMode im = insertmode(addv)
CHKERR( DMLocalToGlobalBegin(self.dm, vl.vec, im, vg.vec) )
CHKERR( DMLocalToGlobalEnd(self.dm, vl.vec, im, vg.vec) )
- def localToLocal(self, Vec vl not None, Vec vlg not None, addv=None):
+ def localToLocal(self, Vec vl, Vec vlg, addv=None):
cdef PetscInsertMode im = insertmode(addv)
CHKERR( DMLocalToLocalBegin(self.dm, vl.vec, im, vlg.vec) )
CHKERR( DMLocalToLocalEnd (self.dm, vl.vec, im, vlg.vec) )
@@ -150,7 +170,7 @@ cdef class DM(Object):
PetscINCREF(sec.obj)
return sec
- def setCoordinates(self, Vec c not None):
+ def setCoordinates(self, Vec c):
CHKERR( DMSetCoordinates(self.dm, c.vec) )
def getCoordinates(self):
@@ -159,7 +179,7 @@ cdef class DM(Object):
PetscINCREF(c.obj)
return c
- def setCoordinatesLocal(self, Vec c not None):
+ def setCoordinatesLocal(self, Vec c):
CHKERR( DMSetCoordinatesLocal(self.dm, c.vec) )
def getCoordinatesLocal(self):
@@ -181,19 +201,19 @@ cdef class DM(Object):
CHKERR( DMCreateMatrix(self.dm, &mat.mat) )
return mat
- def createInterpolation(self, DM dm not None):
+ def createInterpolation(self, DM dm):
cdef Mat A = Mat()
cdef Vec scale = Vec()
CHKERR( DMCreateInterpolation(self.dm, dm.dm,
&A.mat, &scale.vec))
return(A, scale)
- def createInjection(self, DM dm not None):
+ def createInjection(self, DM dm):
cdef Mat inject = Mat()
CHKERR( DMCreateInjection(self.dm, dm.dm, &inject.mat) )
return inject
- def createAggregates(self, DM dm not None):
+ def createAggregates(self, DM dm):
cdef Mat mat = Mat()
CHKERR( DMCreateAggregates(self.dm, dm.dm, &mat.mat) )
return mat
@@ -253,9 +273,44 @@ cdef class DM(Object):
hierarchy.append(dmc)
return hierarchy
+ def getRefineLevel(self):
+ cdef PetscInt n = 0
+ CHKERR( DMGetRefineLevel(self.dm, &n) )
+ return toInt(n)
+
+ def setRefineLevel(self, level):
+ cdef PetscInt clevel = asInt(level)
+ CHKERR( DMSetRefineLevel(self.dm, clevel) )
+
+ def getCoarsenLevel(self):
+ cdef PetscInt n = 0
+ CHKERR( DMGetCoarsenLevel(self.dm, &n) )
+ return toInt(n)
+
+ #
+
+ def adaptLabel(self, label):
+ cdef const_char *cval = NULL
+ cdef PetscDMLabel clbl = NULL
+ label = str2bytes(label, &cval)
+ CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ cdef DM newdm = DMPlex()
+ CHKERR( DMAdaptLabel(self.dm, clbl, &newdm.dm) )
+ return newdm
+
+ def adaptMetric(self, Vec metric, label=None):
+ cdef const_char *cval = NULL
+ cdef PetscDMLabel clbl = NULL
+ label = str2bytes(label, &cval)
+ if cval == NULL: cval = b"" # XXX Should be fixed upstream
+ CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ cdef DM newdm = DMPlex()
+ CHKERR( DMAdaptMetric(self.dm, metric.vec, clbl, &newdm.dm) )
+ return newdm
+
#
- def setDefaultSection(self, Section sec not None):
+ def setDefaultSection(self, Section sec):
CHKERR( DMSetDefaultSection(self.dm, sec.sec) )
def getDefaultSection(self):
@@ -264,7 +319,7 @@ cdef class DM(Object):
PetscINCREF(sec.obj)
return sec
- def setDefaultGlobalSection(self, Section sec not None):
+ def setDefaultGlobalSection(self, Section sec):
CHKERR( DMSetDefaultGlobalSection(self.dm, sec.sec) )
def getDefaultGlobalSection(self):
@@ -273,7 +328,7 @@ cdef class DM(Object):
PetscINCREF(sec.obj)
return sec
- def createDefaultSF(self, Section localsec not None, Section globalsec not None):
+ def createDefaultSF(self, Section localsec, Section globalsec):
CHKERR( DMCreateDefaultSF(self.dm, localsec.sec, globalsec.sec) )
def getDefaultSF(self):
@@ -288,7 +343,7 @@ cdef class DM(Object):
PetscINCREF(sf.obj)
return sf
- def setPointSF(self, SF sf not None):
+ def setPointSF(self, SF sf):
CHKERR( DMSetPointSF(self.dm, sf.sf) )
def getNumLabels(self):
@@ -307,7 +362,7 @@ cdef class DM(Object):
cdef const_char *cname = NULL
name = str2bytes(name, &cname)
CHKERR( DMHasLabel(self.dm, cname, &flag) )
- return <bint> flag
+ return toBool(flag)
def createLabel(self, name):
cdef const_char *cname = NULL
@@ -394,6 +449,68 @@ cdef class DM(Object):
createLocalVector = createLocalVec
getMatrix = createMatrix = createMat
+ def setKSPComputeOperators(self, operators, args=None, kargs=None):
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (operators, args, kargs)
+ self.set_attr('__operators__', context)
+ CHKERR( DMKSPSetComputeOperators(self.dm, KSP_ComputeOps, <void*>context) )
+
+ def createFieldDecomposition(self):
+ cdef PetscInt clen = 0
+ cdef PetscIS *cis = NULL
+ cdef PetscDM *cdm = NULL
+ cdef char** cnamelist = NULL
+
+ CHKERR( DMCreateFieldDecomposition(self.dm, &clen, &cnamelist, &cis, &cdm) )
+
+ cdef list isets = [ref_IS(cis[i]) for i from 0 <= i < clen]
+ cdef list dms = []
+ cdef list names = []
+ cdef DM dm = None
+
+ for i from 0 <= i < clen:
+ if cdm != NULL:
+ dm = subtype_DM(cdm[i])()
+ dm.dm = cdm[i]
+ PetscINCREF(dm.obj)
+ dms.append(dm)
+ else:
+ dms.append(None)
+
+ name = bytes2str(cnamelist[i])
+ names.append(name)
+ CHKERR( PetscFree(cnamelist[i]) )
+
+ CHKERR( ISDestroy(&cis[i]) )
+ CHKERR( DMDestroy(&cdm[i]) )
+
+ CHKERR( PetscFree(cis) )
+ CHKERR( PetscFree(cdm) )
+ CHKERR( PetscFree(cnamelist) )
+
+ return (names, isets, dms)
+
+ def setSNESFunction(self, function, args=None, kargs=None):
+ if function is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (function, args, kargs)
+ self.set_attr('__function__', context)
+ CHKERR( DMSNESSetFunction(self.dm, SNES_Function, <void*>context) )
+ else:
+ CHKERR( DMSNESSetFunction(self.dm, NULL, NULL) )
+
+ def setSNESJacobian(self, jacobian, args=None, kargs=None):
+ if jacobian is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (jacobian, args, kargs)
+ self.set_attr('__jacobian__', context)
+ CHKERR( DMSNESSetJacobian(self.dm, SNES_Jacobian, <void*>context) )
+ else:
+ CHKERR( DMSNESSetJacobian(self.dm, NULL, NULL) )
+
# --------------------------------------------------------------------
del DMType
diff --git a/src/PETSc/DMComposite.pyx b/src/PETSc/DMComposite.pyx
index f3e9245..61c104e 100644
--- a/src/PETSc/DMComposite.pyx
+++ b/src/PETSc/DMComposite.pyx
@@ -9,7 +9,7 @@ cdef class DMComposite(DM):
PetscCLEAR(self.obj); self.dm = newdm
return self
- def addDM(self, DM dm not None, *args):
+ def addDM(self, DM dm, *args):
"""Add DM to composite"""
CHKERR( DMCompositeAddDM(self.dm, dm.dm) )
cdef object item
@@ -40,7 +40,7 @@ cdef class DMComposite(DM):
entries.append(entry)
return tuple(entries)
- def scatter(self, Vec gvec not None, lvecs):
+ def scatter(self, Vec gvec, lvecs):
"""Scatter coupled global vector into split local vectors"""
cdef PetscInt i, n = 0
CHKERR( DMCompositeGetNumberDM(self.dm, &n) )
@@ -50,7 +50,7 @@ cdef class DMComposite(DM):
clvecs[i] = (<Vec?>lvecs[<Py_ssize_t>i]).vec
CHKERR( DMCompositeScatterArray(self.dm, gvec.vec, clvecs) )
- def gather(self, Vec gvec not None, imode, lvecs):
+ def gather(self, Vec gvec, imode, lvecs):
"""Gather split local vectors into coupled global vector"""
cdef PetscInsertMode cimode = insertmode(imode)
cdef PetscInt i, n = 0
@@ -59,7 +59,7 @@ cdef class DMComposite(DM):
cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&clvecs)
for i from 0 <= i < n:
clvecs[i] = (<Vec?>lvecs[<Py_ssize_t>i]).vec
- CHKERR( DMCompositeGatherArray(self.dm, gvec.vec, cimode, clvecs) )
+ CHKERR( DMCompositeGatherArray(self.dm, cimode, gvec.vec, clvecs) )
def getGlobalISs(self):
cdef PetscInt i, n = 0
@@ -94,7 +94,7 @@ cdef class DMComposite(DM):
CHKERR( PetscFree(clgm) )
return lgms
- def getAccess(self, Vec gvec not None, locs=None):
+ def getAccess(self, Vec gvec, locs=None):
"""Get access to specified parts of global vector.
Use via 'with' context manager (PEP 343).
diff --git a/src/PETSc/DMDA.pyx b/src/PETSc/DMDA.pyx
index 89dc219..fbf9700 100644
--- a/src/PETSc/DMDA.pyx
+++ b/src/PETSc/DMDA.pyx
@@ -336,7 +336,7 @@ cdef class DMDA(DM):
#
- def getVecArray(self, Vec vec not None):
+ def getVecArray(self, Vec vec):
return _DMDA_Vec_array(self, vec)
#
@@ -388,12 +388,12 @@ cdef class DMDA(DM):
CHKERR( DMDACreateNaturalVector(self.dm, &vn.vec) )
return vn
- def globalToNatural(self, Vec vg not None, Vec vn not None, addv=None):
+ def globalToNatural(self, Vec vg, Vec vn, addv=None):
cdef PetscInsertMode im = insertmode(addv)
CHKERR( DMDAGlobalToNaturalBegin(self.dm, vg.vec, im, vn.vec) )
CHKERR( DMDAGlobalToNaturalEnd (self.dm, vg.vec, im, vn.vec) )
- def naturalToGlobal(self, Vec vn not None, Vec vg not None, addv=None):
+ def naturalToGlobal(self, Vec vn, Vec vg, addv=None):
cdef PetscInsertMode im = insertmode(addv)
CHKERR( DMDANaturalToGlobalBegin(self.dm, vn.vec, im, vg.vec) )
CHKERR( DMDANaturalToGlobalEnd (self.dm, vn.vec, im, vg.vec) )
diff --git a/src/PETSc/DMPlex.pyx b/src/PETSc/DMPlex.pyx
index 4b7d937..0996757 100644
--- a/src/PETSc/DMPlex.pyx
+++ b/src/PETSc/DMPlex.pyx
@@ -41,12 +41,13 @@ cdef class DMPlex(DM):
PetscCLEAR(self.obj); self.dm = newdm
return self
- def createBoxMesh(self, dim, interpolate=True, comm=None):
+ def createBoxMesh(self, dim, numFaces=1, interpolate=True, comm=None):
cdef PetscInt cdim = asInt(dim)
+ cdef PetscInt cnumFaces = asInt(numFaces)
cdef PetscBool interp = interpolate
cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
cdef PetscDM newdm = NULL
- CHKERR( DMPlexCreateBoxMesh(ccomm,cdim, interp, &newdm) )
+ CHKERR( DMPlexCreateBoxMesh(ccomm, cdim, cnumFaces, interp, &newdm) )
PetscCLEAR(self.obj); self.dm = newdm
return self
@@ -64,6 +65,16 @@ cdef class DMPlex(DM):
PetscCLEAR(self.obj); self.dm = newdm
return self
+ def createFromFile(self, filename, interpolate=True, comm=None):
+ cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
+ cdef PetscBool interp = interpolate
+ cdef PetscDM newdm = NULL
+ cdef const_char *cfile = NULL
+ filename = str2bytes(filename, &cfile)
+ CHKERR( DMPlexCreateFromFile(ccomm, cfile, interp, &newdm) )
+ PetscCLEAR(self.obj); self.dm = newdm
+ return self
+
def createCGNS(self, cgid, interpolate=True, comm=None):
cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
cdef PetscBool interp = interpolate
@@ -344,6 +355,37 @@ cdef class DMPlex(DM):
CHKERR( DMPlexVecRestoreClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
return closure
+ def getVecClosure(self, Section sec or None, Vec vec, point):
+ cdef PetscSection csec = sec.sec if sec is not None else NULL
+ cdef PetscInt cp = asInt(point), csize = 0
+ cdef PetscScalar *cvals = NULL
+ CHKERR( DMPlexVecGetClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ try:
+ closure = array_s(csize, cvals)
+ finally:
+ CHKERR( DMPlexVecRestoreClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ return closure
+
+ def setVecClosure(self, Section sec or None, Vec vec, point, values, addv=None):
+ cdef PetscSection csec = sec.sec if sec is not None else NULL
+ cdef PetscInt cp = asInt(point)
+ cdef PetscInt csize = 0
+ cdef PetscScalar *cvals = NULL
+ cdef object tmp = iarray_s(values, &csize, &cvals)
+ cdef PetscInsertMode im = insertmode(addv)
+ CHKERR( DMPlexVecSetClosure(self.dm, csec, vec.vec, cp, cvals, im) )
+
+ def setMatClosure(self, Section sec or None, Section gsec or None,
+ Mat mat, point, values, addv=None):
+ cdef PetscSection csec = sec.sec if sec is not None else NULL
+ cdef PetscSection cgsec = gsec.sec if gsec is not None else NULL
+ cdef PetscInt cp = asInt(point)
+ cdef PetscInt csize = 0
+ cdef PetscScalar *cvals = NULL
+ cdef object tmp = iarray_s(values, &csize, &cvals)
+ cdef PetscInsertMode im = insertmode(addv)
+ CHKERR( DMPlexMatSetClosure(self.dm, csec, cgsec, mat.mat, cp, cvals, im) )
+
def generate(self, DMPlex boundary, name=None, interpolate=True):
cdef PetscBool interp = interpolate
cdef const_char *cname = NULL
@@ -396,10 +438,43 @@ cdef class DMPlex(DM):
cdef PetscBool flag = useCone
CHKERR( DMPlexSetAdjacencyUseCone(self.dm, flag) )
+ def getAdjacencyUseCone(self):
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( DMPlexGetAdjacencyUseCone(self.dm, &flag) )
+ return toBool(flag)
+
def setAdjacencyUseClosure(self, useClosure=True):
cdef PetscBool flag = useClosure
CHKERR( DMPlexSetAdjacencyUseClosure(self.dm, flag) )
+ def getAdjacencyUseClosure(self):
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( DMPlexGetAdjacencyUseClosure(self.dm, &flag) )
+ return toBool(flag)
+
+ def setAdjacencyUseAnchors(self, useAnchors=True):
+ cdef PetscBool flag = useAnchors
+ CHKERR( DMPlexSetAdjacencyUseAnchors(self.dm, flag) )
+
+ def getAdjacencyUseAnchors(self):
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( DMPlexGetAdjacencyUseAnchors(self.dm, &flag) )
+ return toBool(flag)
+
+ def getAdjacency(self, p):
+ cdef PetscInt cp = asInt(p)
+ cdef PetscInt nadj = PETSC_DETERMINE
+ cdef PetscInt *iadj = NULL
+ CHKERR( DMPlexGetAdjacency(self.dm, cp, &nadj, &iadj) )
+ try:
+ adjacency = array_i(nadj, iadj)
+ finally:
+ CHKERR( PetscFree(iadj) )
+ return adjacency
+
+ def setPartitioner(self, Partitioner part):
+ CHKERR( DMPlexSetPartitioner(self.dm, part.part) )
+
def getPartitioner(self):
cdef Partitioner part = Partitioner()
CHKERR( DMPlexGetPartitioner(self.dm, &part.part) )
@@ -411,8 +486,9 @@ cdef class DMPlex(DM):
cdef PetscInt coverlap = asInt(overlap)
cdef SF sf = SF()
CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
- PetscCLEAR(self.obj); self.dm = dmParallel
- return sf
+ if dmParallel != NULL:
+ PetscCLEAR(self.obj); self.dm = dmParallel
+ return sf
def distributeOverlap(self, overlap=0):
cdef PetscInt coverlap = asInt(overlap)
@@ -423,8 +499,17 @@ cdef class DMPlex(DM):
PetscCLEAR(self.obj); self.dm = dmOverlap
return sf
- def distributeField(self, SF sf not None,
- Section sec not None, Vec vec not None,
+ def interpolate(self):
+ cdef PetscDM newdm = NULL
+ CHKERR( DMPlexInterpolate(self.dm, &newdm) )
+ PetscCLEAR(self.obj); self.dm = newdm
+
+ def uninterpolate(self):
+ cdef PetscDM newdm = NULL
+ CHKERR( DMPlexUninterpolate(self.dm, &newdm) )
+ PetscCLEAR(self.obj); self.dm = newdm
+
+ def distributeField(self, SF sf, Section sec, Vec vec,
Section newsec=None, Vec newvec=None):
cdef MPI_Comm ccomm = MPI_COMM_NULL
if newsec is None: newsec = Section()
@@ -491,6 +576,34 @@ cdef class DMPlex(DM):
cperm, &sec.sec) )
return sec
+ def getPointLocal(self, point):
+ cdef PetscInt start = 0, end = 0
+ cdef PetscInt cpoint = asInt(point)
+ CHKERR( DMPlexGetPointLocal(self.dm, cpoint, &start, &end) )
+ return toInt(start), toInt(end)
+
+ def getPointLocalField(self, point, field):
+ cdef PetscInt start = 0, end = 0
+ cdef PetscInt cpoint = asInt(point)
+ cdef PetscInt cfield = asInt(field)
+ CHKERR( DMPlexGetPointLocalField(self.dm, cpoint, cfield, &start, &end) )
+ return toInt(start), toInt(end)
+
+ def getPointGlobal(self, point):
+ cdef PetscInt start = 0, end = 0
+ cdef PetscInt cpoint = asInt(point)
+ CHKERR( DMPlexGetPointGlobal(self.dm, cpoint, &start, &end) )
+ return toInt(start), toInt(end)
+
+ def getPointGlobalField(self, point, field):
+ cdef PetscInt start = 0, end = 0
+ cdef PetscInt cpoint = asInt(point)
+ cdef PetscInt cfield = asInt(field)
+ CHKERR( DMPlexGetPointGlobalField(self.dm, cpoint, cfield, &start, &end) )
+ return toInt(start), toInt(end)
+
+ #
+
def setRefinementUniform(self, refinementUniform=True):
cdef PetscBool flag = refinementUniform
CHKERR( DMPlexSetRefinementUniform(self.dm, flag) )
@@ -498,7 +611,7 @@ cdef class DMPlex(DM):
def getRefinementUniform(self):
cdef PetscBool flag = PETSC_FALSE
CHKERR( DMPlexGetRefinementUniform(self.dm, &flag) )
- return <bint> flag
+ return toBool(flag)
def setRefinementLimit(self, refinementLimit):
cdef PetscReal rval = asReal(refinementLimit)
@@ -517,7 +630,7 @@ cdef class DMPlex(DM):
CHKERR( DMPlexGetOrdering(self.dm, cval, label, &perm.iset) )
return perm
- def permute(self, IS perm not None):
+ def permute(self, IS perm):
cdef DMPlex dm = <DMPlex>type(self)()
CHKERR( DMPlexPermute(self.dm, perm.iset, &dm.dm) )
return dm
@@ -531,3 +644,12 @@ cdef class DMPlex(DM):
cdef PetscReal vol = 0, centroid[3], normal[3]
CHKERR( DMPlexComputeCellGeometryFVM(self.dm, ccell, &vol, centroid, normal) )
return (toReal(vol), array_r(dim, centroid), array_r(dim, normal))
+
+ def constructGhostCells(self, labelName=None):
+ cdef const_char *cname = NULL
+ labelName = str2bytes(labelName, &cname)
+ cdef PetscInt numGhostCells = 0
+ cdef PetscDM dmGhosted = NULL
+ CHKERR( DMPlexConstructGhostCells(self.dm, cname, &numGhostCells, &dmGhosted))
+ PetscCLEAR(self.obj); self.dm = dmGhosted
+ return toInt(numGhostCells)
diff --git a/src/PETSc/DMShell.pyx b/src/PETSc/DMShell.pyx
index 4de8547..50e7bc0 100644
--- a/src/PETSc/DMShell.pyx
+++ b/src/PETSc/DMShell.pyx
@@ -7,13 +7,13 @@ cdef class DMShell(DM):
PetscCLEAR(self.obj); self.dm = newdm
return self
- def setMatrix(self, Mat mat not None):
+ def setMatrix(self, Mat mat):
CHKERR( DMShellSetMatrix(self.dm, mat.mat) )
- def setGlobalVector(self, Vec gv not None):
+ def setGlobalVector(self, Vec gv):
CHKERR( DMShellSetGlobalVector(self.dm, gv.vec) )
- def setLocalVector(self, Vec lv not None):
+ def setLocalVector(self, Vec lv):
CHKERR( DMShellSetLocalVector(self.dm, lv.vec) )
def setCreateGlobalVector(self, create_gvec, args=None, kargs=None):
@@ -53,7 +53,7 @@ cdef class DMShell(DM):
cend = &DMSHELL_GlobalToLocalEnd
CHKERR( DMShellSetGlobalToLocal(self.dm, cbegin, cend) )
- def setGlobalToLocalVecScatter(self, Scatter gtol not None):
+ def setGlobalToLocalVecScatter(self, Scatter gtol):
CHKERR( DMShellSetGlobalToLocalVecScatter(self.dm, gtol.sct) )
def setLocalToGlobal(self, begin, end, begin_args=None, begin_kargs=None,
@@ -73,7 +73,7 @@ cdef class DMShell(DM):
cend = &DMSHELL_LocalToGlobalEnd
CHKERR( DMShellSetLocalToGlobal(self.dm, cbegin, cend) )
- def setLocalToGlobalVecScatter(self, Scatter ltog not None):
+ def setLocalToGlobalVecScatter(self, Scatter ltog):
CHKERR( DMShellSetLocalToGlobalVecScatter(self.dm, ltog.sct) )
def setLocalToLocal(self, begin, end, begin_args=None, begin_kargs=None,
@@ -95,7 +95,7 @@ cdef class DMShell(DM):
cend = &DMSHELL_LocalToLocalEnd
CHKERR( DMShellSetLocalToLocal(self.dm, cbegin, cend) )
- def setLocalToLocalVecScatter(self, Scatter ltol not None):
+ def setLocalToLocalVecScatter(self, Scatter ltol):
CHKERR( DMShellSetLocalToLocalVecScatter(self.dm, ltol.sct) )
def setCreateMatrix(self, create_matrix, args=None, kargs=None):
@@ -148,6 +148,16 @@ cdef class DMShell(DM):
else:
CHKERR( DMShellSetCreateInjection(self.dm, NULL) )
+ def setCreateRestriction(self, create_restriction, args=None, kargs=None):
+ if create_restriction is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (create_restriction, args, kargs)
+ self.set_attr('__create_restriction__', context)
+ CHKERR( DMShellSetCreateRestriction(self.dm, DMSHELL_CreateRestriction) )
+ else:
+ CHKERR( DMShellSetCreateRestriction(self.dm, NULL) )
+
def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
if decomp is not None:
if args is None: args = ()
@@ -158,6 +168,26 @@ cdef class DMShell(DM):
else:
CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) )
+ def setCreateDomainDecomposition(self, decomp, args=None, kargs=None):
+ if decomp is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (decomp, args, kargs)
+ self.set_attr('__create_domain_decomp__', context)
+ CHKERR( DMShellSetCreateDomainDecomposition(self.dm, DMSHELL_CreateDomainDecomposition) )
+ else:
+ CHKERR( DMShellSetCreateDomainDecomposition(self.dm, NULL) )
+
+ def setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None):
+ if scatter is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (scatter, args, kargs)
+ self.set_attr('__create_domain_decomp_scatters__', context)
+ CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, DMSHELL_CreateDomainDecompositionScatters) )
+ else:
+ CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, NULL) )
+
def setCreateSubDM(self, create_subdm, args=None, kargs=None):
if create_subdm is not None:
if args is None: args = ()
diff --git a/src/PETSc/IS.pyx b/src/PETSc/IS.pyx
index 539e770..593b108 100644
--- a/src/PETSc/IS.pyx
+++ b/src/PETSc/IS.pyx
@@ -112,7 +112,7 @@ cdef class IS(Object):
CHKERR( ISCopy(self.iset, result.iset) )
return result
- def load(self, Viewer viewer not None):
+ def load(self, Viewer viewer):
cdef MPI_Comm comm = MPI_COMM_NULL
cdef PetscObject obj = <PetscObject>(viewer.vwr)
if self.iset == NULL:
@@ -169,7 +169,7 @@ cdef class IS(Object):
def isSorted(self):
cdef PetscBool flag = PETSC_FALSE
CHKERR( ISSorted(self.iset, &flag) )
- return <bint> flag
+ return toBool(flag)
def setPermutation(self):
CHKERR( ISSetPermutation(self.iset) )
@@ -178,7 +178,7 @@ cdef class IS(Object):
def isPermutation(self):
cdef PetscBool flag = PETSC_FALSE
CHKERR( ISPermutation(self.iset, &flag) )
- return <bint> flag
+ return toBool(flag)
def setIdentity(self):
CHKERR( ISSetIdentity(self.iset) )
@@ -187,24 +187,24 @@ cdef class IS(Object):
def isIdentity(self):
cdef PetscBool flag = PETSC_FALSE
CHKERR( ISIdentity(self.iset, &flag) )
- return <bint> flag
+ return toBool(flag)
- def equal(self, IS iset not None):
+ def equal(self, IS iset):
cdef PetscBool flag = PETSC_FALSE
CHKERR( ISEqual(self.iset, iset.iset, &flag) )
- return <bint> flag
+ return toBool(flag)
- def sum(self, IS iset not None):
+ def sum(self, IS iset):
cdef IS out = IS()
CHKERR( ISSum(self.iset, iset.iset, &out.iset) )
return out
- def expand(self, IS iset not None):
+ def expand(self, IS iset):
cdef IS out = IS()
CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
return out
- def union(self, IS iset not None): # XXX review this
+ def union(self, IS iset): # XXX review this
cdef PetscBool flag1=PETSC_FALSE, flag2=PETSC_FALSE
CHKERR( ISSorted(self.iset, &flag1) )
CHKERR( ISSorted(iset.iset, &flag2) )
@@ -215,7 +215,7 @@ cdef class IS(Object):
CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
return out
- def difference(self, IS iset not None):
+ def difference(self, IS iset):
cdef IS out = IS()
CHKERR( ISDifference(self.iset, iset.iset, &out.iset) )
return out
@@ -227,7 +227,7 @@ cdef class IS(Object):
CHKERR( ISComplement(self.iset, cnmin, cnmax, &out.iset) )
return out
- def embed(self, IS iset not None, drop):
+ def embed(self, IS iset, drop):
cdef PetscBool bval = drop
cdef IS out = IS()
CHKERR( ISEmbed(self.iset, iset.iset, bval, &out.iset) )
@@ -340,17 +340,23 @@ cdef class IS(Object):
# --------------------------------------------------------------------
-class GLMapType(object):
+class GLMapMode(object):
MASK = PETSC_IS_GTOLM_MASK
DROP = PETSC_IS_GTOLM_DROP
+class LGMapType(object):
+ BASIC = S_(ISLOCALTOGLOBALMAPPINGBASIC)
+ HASH = S_(ISLOCALTOGLOBALMAPPINGHASH)
+
+
# --------------------------------------------------------------------
cdef class LGMap(Object):
- MapType = GLMapType
+ MapMode = GLMapMode
+ Type = LGMapType
#
def __cinit__(self):
@@ -362,6 +368,14 @@ cdef class LGMap(Object):
#
+ def setType(self, lgmap_type):
+ cdef PetscISLocalToGlobalMappingType cval = NULL
+ lgmap_type = str2bytes(lgmap_type, &cval)
+ CHKERR( ISLocalToGlobalMappingSetType(self.lgm, cval) )
+
+ def setFromOptions(self):
+ CHKERR( ISLocalToGlobalMappingSetFromOptions(self.lgm) )
+
def view(self, Viewer viewer=None):
cdef PetscViewer cviewer = NULL
if viewer is not None: cviewer = viewer.vwr
@@ -384,14 +398,14 @@ cdef class LGMap(Object):
PetscCLEAR(self.obj); self.lgm = newlgm
return self
- def createIS(self, IS iset not None):
+ def createIS(self, IS iset):
cdef PetscLGMap newlgm = NULL
CHKERR( ISLocalToGlobalMappingCreateIS(
iset.iset, &newlgm) )
PetscCLEAR(self.obj); self.lgm = newlgm
return self
- def createSF(self, SF sf not None, start):
+ def createSF(self, SF sf, start):
cdef PetscLGMap newlgm = NULL
cdef PetscInt cstart = asInt(start)
CHKERR( ISLocalToGlobalMappingCreateSF(sf.sf, cstart, &newlgm) )
@@ -492,38 +506,38 @@ cdef class LGMap(Object):
self.lgm, niidx, iidx, oidx) )
return result
- def applyIS(self, IS iset not None):
+ def applyIS(self, IS iset):
cdef IS result = IS()
CHKERR( ISLocalToGlobalMappingApplyIS(
self.lgm, iset.iset, &result.iset) )
return result
- def applyInverse(self, indices, map_type=None):
- cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- if map_type is not None: cmtype = map_type
+ def applyInverse(self, indices, mode=None):
+ cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ if mode is not None: cmode = mode
cdef PetscInt n = 0, *idx = NULL
indices = iarray_i(indices, &n, &idx)
cdef PetscInt nout = n, *idxout = NULL
- if cmtype != PETSC_IS_GTOLM_MASK:
+ if cmode != PETSC_IS_GTOLM_MASK:
CHKERR( ISGlobalToLocalMappingApply(
- self.lgm, cmtype, n, idx, &nout, NULL) )
+ self.lgm, cmode, n, idx, &nout, NULL) )
result = oarray_i(empty_i(nout), &nout, &idxout)
CHKERR( ISGlobalToLocalMappingApply(
- self.lgm, cmtype, n, idx, &nout, idxout) )
+ self.lgm, cmode, n, idx, &nout, idxout) )
return result
- def applyBlockInverse(self, indices, map_type=None):
- cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- if map_type is not None: cmtype = map_type
+ def applyBlockInverse(self, indices, mode=None):
+ cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ if mode is not None: cmode = mode
cdef PetscInt n = 0, *idx = NULL
indices = iarray_i(indices, &n, &idx)
cdef PetscInt nout = n, *idxout = NULL
- if cmtype != PETSC_IS_GTOLM_MASK:
+ if cmode != PETSC_IS_GTOLM_MASK:
CHKERR( ISGlobalToLocalMappingApply(
- self.lgm, cmtype, n, idx, &nout, NULL) )
+ self.lgm, cmode, n, idx, &nout, NULL) )
result = oarray_i(empty_i(nout), &nout, &idxout)
CHKERR( ISGlobalToLocalMappingApplyBlock(
- self.lgm, cmtype, n, idx, &nout, idxout) )
+ self.lgm, cmode, n, idx, &nout, idxout) )
return result
#
@@ -554,6 +568,6 @@ cdef class LGMap(Object):
# --------------------------------------------------------------------
del ISType
-del GLMapType
-
+del GLMapMode
+del LGMapType
# --------------------------------------------------------------------
diff --git a/src/PETSc/KSP.pyx b/src/PETSc/KSP.pyx
index db15522..07f0f1c 100644
--- a/src/PETSc/KSP.pyx
+++ b/src/PETSc/KSP.pyx
@@ -8,9 +8,9 @@ class KSPType(object):
PIPECG = S_(KSPPIPECG)
PIPECGRR = S_(KSPPIPECGRR)
CGNE = S_(KSPCGNE)
- NASH = S_(KSPNASH)
- STCG = S_(KSPSTCG)
- GLTR = S_(KSPGLTR)
+ CGNASH = S_(KSPCGNASH)
+ CGSTCG = S_(KSPCGSTCG)
+ CGGLTR = S_(KSPCGGLTR)
FCG = S_(KSPFCG)
PIPEFCG = S_(KSPPIPEFCG)
GMRES = S_(KSPGMRES)
@@ -41,6 +41,7 @@ class KSPType(object):
PIPEGCR = S_(KSPPIPEGCR)
TSIRM = S_(KSPTSIRM)
CGLS = S_(KSPCGLS)
+ FETIDP = S_(KSPFETIDP)
class KSPNormType(object):
# native
@@ -160,7 +161,7 @@ cdef class KSP(Object):
PetscINCREF(dm.obj)
return dm
- def setDM(self, DM dm not None):
+ def setDM(self, DM dm):
CHKERR( KSPSetDM(self.ksp, dm.dm) )
def setDMActive(self, bint flag):
@@ -198,7 +199,7 @@ cdef class KSP(Object):
PetscINCREF(P.obj)
return (A, P)
- def setPC(self, PC pc not None):
+ def setPC(self, PC pc):
CHKERR( KSPSetPC(self.ksp, pc.pc) )
def getPC(self):
@@ -328,9 +329,9 @@ cdef class KSP(Object):
CHKERR( KSPSetComputeEigenvalues(self.ksp, compute) )
def getComputeEigenvalues(self):
- cdef PetscBool compute = PETSC_FALSE
- CHKERR( KSPGetComputeEigenvalues(self.ksp, &compute) )
- return <bint>compute
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( KSPGetComputeEigenvalues(self.ksp, &flag) )
+ return toBool(flag)
def setComputeSingularValues(self, bint flag):
cdef PetscBool compute = PETSC_FALSE
@@ -338,9 +339,9 @@ cdef class KSP(Object):
CHKERR( KSPSetComputeSingularValues(self.ksp, compute) )
def getComputeSingularValues(self):
- cdef PetscBool compute = PETSC_FALSE
- CHKERR( KSPGetComputeSingularValues(self.ksp, &compute) )
- return <bint>compute
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( KSPGetComputeSingularValues(self.ksp, &flag) )
+ return toBool(flag)
# --- initial guess ---
@@ -350,9 +351,9 @@ cdef class KSP(Object):
CHKERR( KSPSetInitialGuessNonzero(self.ksp, guess_nonzero) )
def getInitialGuessNonzero(self):
- cdef PetscBool guess_nonzero = PETSC_FALSE
- CHKERR( KSPGetInitialGuessNonzero(self.ksp, &guess_nonzero) )
- return <bint>guess_nonzero
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( KSPGetInitialGuessNonzero(self.ksp, &flag) )
+ return toBool(flag)
def setInitialGuessKnoll(self, bint flag):
cdef PetscBool guess_knoll = PETSC_FALSE
@@ -360,9 +361,9 @@ cdef class KSP(Object):
CHKERR( KSPSetInitialGuessKnoll(self.ksp, guess_knoll) )
def getInitialGuessKnoll(self):
- cdef PetscBool guess_knoll = PETSC_FALSE
- CHKERR( KSPGetInitialGuessKnoll(self.ksp, &guess_knoll) )
- return <bint>guess_knoll
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( KSPGetInitialGuessKnoll(self.ksp, &flag) )
+ return toBool(flag)
def setUseFischerGuess(self, model, size):
cdef PetscInt ival1 = asInt(model)
@@ -380,10 +381,10 @@ cdef class KSP(Object):
def setUpOnBlocks(self):
CHKERR( KSPSetUpOnBlocks(self.ksp) )
- def solve(self, Vec b not None, Vec x not None):
+ def solve(self, Vec b, Vec x):
CHKERR( KSPSolve(self.ksp, b.vec, x.vec) )
- def solveTranspose(self, Vec b not None, Vec x not None):
+ def solveTranspose(self, Vec b, Vec x):
CHKERR( KSPSolveTranspose(self.ksp, b.vec, x.vec) )
def setIterationNumber(self, its):
@@ -427,7 +428,7 @@ cdef class KSP(Object):
def getWorkVecs(self, right=None, left=None):
cdef bint R = right is not None
- cdef bint L = left is not None
+ cdef bint L = left is not None
cdef PetscInt i=0, nr=0, nl=0
cdef PetscVec *vr=NULL, *vl=NULL
if R: nr = asInt(right)
diff --git a/src/PETSc/Log.pyx b/src/PETSc/Log.pyx
index 9aa08ec..b3fc687 100644
--- a/src/PETSc/Log.pyx
+++ b/src/PETSc/Log.pyx
@@ -141,9 +141,9 @@ cdef class LogStage:
CHKERR( PetscLogStageSetActive(self.id, PETSC_FALSE) )
def getActive(self):
- cdef PetscBool tval = PETSC_FALSE
- CHKERR( PetscLogStageGetActive(self.id, &tval) )
- return <bint> tval
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( PetscLogStageGetActive(self.id, &flag) )
+ return toBool(flag)
def setActive(self, flag):
cdef PetscBool tval = PETSC_FALSE
@@ -159,9 +159,9 @@ cdef class LogStage:
#
def getVisible(self):
- cdef PetscBool tval = PETSC_FALSE
- CHKERR( PetscLogStageGetVisible(self.id, &tval) )
- return <bint> tval
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( PetscLogStageGetVisible(self.id, &flag) )
+ return toBool(flag)
def setVisible(self, flag):
cdef PetscBool tval = PETSC_FALSE
diff --git a/src/PETSc/Mat.pyx b/src/PETSc/Mat.pyx
index 2f34ff5..0341538 100644
--- a/src/PETSc/Mat.pyx
+++ b/src/PETSc/Mat.pyx
@@ -36,12 +36,6 @@ class MatType(object):
SBAIJ = S_(MATSBAIJ)
SEQSBAIJ = S_(MATSEQSBAIJ)
MPISBAIJ = S_(MATMPISBAIJ)
- SEQBSTRM = S_(MATSEQBSTRM)
- MPIBSTRM = S_(MATMPIBSTRM)
- BSTRM = S_(MATBSTRM)
- SEQSBSTRM = S_(MATSEQSBSTRM)
- MPISBSTRM = S_(MATMPISBSTRM)
- SBSTRM = S_(MATSBSTRM)
DAAD = S_(MATDAAD)
MFFD = S_(MATMFFD)
NORMAL = S_(MATNORMAL)
@@ -405,7 +399,7 @@ cdef class Mat(Object):
#
- def createScatter(self, Scatter scatter not None, comm=None):
+ def createScatter(self, Scatter scatter, comm=None):
if comm is None: comm = scatter.getComm()
cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
cdef PetscMat newmat = NULL
@@ -413,29 +407,35 @@ cdef class Mat(Object):
PetscCLEAR(self.obj); self.mat = newmat
return self
- def createNormal(self, Mat mat not None):
+ def createNormal(self, Mat mat):
cdef PetscMat newmat = NULL
CHKERR( MatCreateNormal(mat.mat, &newmat) )
PetscCLEAR(self.obj); self.mat = newmat
return self
- def createTranspose(self, Mat mat not None):
+ def createTranspose(self, Mat mat):
cdef PetscMat newmat = NULL
CHKERR( MatCreateTranspose(mat.mat, &newmat) )
PetscCLEAR(self.obj); self.mat = newmat
return self
- def createLRC(self, Mat A not None, Mat U not None, Mat V not None):
+ def createLRC(self, Mat A or None, Mat U, Vec c or None, Mat V or None):
+ cdef PetscMat Amat = NULL
+ cdef PetscMat Umat = U.mat
+ cdef PetscVec cvec = NULL
+ cdef PetscMat Vmat = NULL
cdef PetscMat newmat = NULL
- CHKERR( MatCreateLRC(A.mat, U.mat, V.mat, &newmat) )
+ if A is not None: Amat = A.mat
+ if c is not None: cvec = c.vec
+ if V is not None: Vmat = V.mat
+ CHKERR( MatCreateLRC(Amat, Umat, cvec, Vmat, &newmat) )
PetscCLEAR(self.obj); self.mat = newmat
return self
- def createSubMatrix(self, Mat A not None,
- IS isrow not None, IS iscol=None):
+ def createSubMatrixVirtual(self, Mat A, IS isrow, IS iscol=None):
if iscol is None: iscol = isrow
cdef PetscMat newmat = NULL
- CHKERR( MatCreateSubMatrix(A.mat, isrow.iset, iscol.iset, &newmat) )
+ CHKERR( MatCreateSubMatrixVirtual(A.mat, isrow.iset, iscol.iset, &newmat) )
PetscCLEAR(self.obj); self.mat = newmat
return self
@@ -477,7 +477,7 @@ cdef class Mat(Object):
PetscCLEAR(self.obj); self.mat = newmat
return self
- ##def createIS(self, size, LGMap lgmap not None, comm=None):
+ ##def createIS(self, size, LGMap lgmap, comm=None):
## # communicator and sizes
## if comm is None: comm = lgmap.getComm()
## cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
@@ -618,6 +618,7 @@ cdef class Mat(Object):
def duplicate(self, copy=False):
cdef PetscMatDuplicateOption flag = MAT_DO_NOT_COPY_VALUES
if copy: flag = MAT_COPY_VALUES
+ if copy > MAT_COPY_VALUES: flag = MAT_SHARE_NONZERO_PATTERN
cdef Mat mat = type(self)()
CHKERR( MatDuplicate(self.mat, flag, &mat.mat) )
return mat
@@ -633,7 +634,7 @@ cdef class Mat(Object):
CHKERR( MatCopy(self.mat, result.mat, mstr) )
return result
- def load(self, Viewer viewer not None):
+ def load(self, Viewer viewer):
cdef MPI_Comm comm = MPI_COMM_NULL
cdef PetscObject obj = <PetscObject>(viewer.vwr)
if self.mat == NULL:
@@ -683,51 +684,51 @@ cdef class Mat(Object):
CHKERR( MatConjugate(out.mat) )
return out
- def permute(self, IS row not None, IS col not None):
+ def permute(self, IS row, IS col):
cdef Mat mat = Mat()
CHKERR( MatPermute(self.mat, row.iset, col.iset, &mat.mat) )
return mat
- def equal(self, Mat mat not None):
+ def equal(self, Mat mat):
cdef PetscBool flag = PETSC_FALSE
CHKERR( MatEqual(self.mat, mat.mat, &flag) )
- return <bint> mat
+ return toBool(flag)
def isTranspose(self, Mat mat=None, tol=0):
if mat is None: mat = self
cdef PetscReal rval = asReal(tol)
cdef PetscBool flag = PETSC_FALSE
CHKERR( MatIsTranspose(self.mat, mat.mat, rval, &flag) )
- return <bint>flag
+ return toBool(flag)
def isSymmetric(self, tol=0):
cdef PetscReal rval = asReal(tol)
cdef PetscBool flag = PETSC_FALSE
CHKERR( MatIsSymmetric(self.mat, rval, &flag) )
- return <bint>flag
+ return toBool(flag)
def isSymmetricKnown(self):
cdef PetscBool flag1 = PETSC_FALSE
cdef PetscBool flag2 = PETSC_FALSE
CHKERR( MatIsSymmetricKnown(self.mat, &flag1, &flag2) )
- return (<bint>flag1, <bint>flag2)
+ return (toBool(flag1), toBool(flag2))
def isHermitian(self, tol=0):
cdef PetscReal rval = asReal(tol)
- cdef PetscBool bval = PETSC_FALSE
- CHKERR( MatIsHermitian(self.mat, rval, &bval) )
- return <bint>bval
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( MatIsHermitian(self.mat, rval, &flag) )
+ return toBool(flag)
def isHermitianKnown(self):
- cdef PetscBool bval1 = PETSC_FALSE
- cdef PetscBool bval2 = PETSC_FALSE
- CHKERR( MatIsHermitianKnown(self.mat, &bval1, &bval2) )
- return (<bint>bval1, <bint>bval2)
+ cdef PetscBool flag1 = PETSC_FALSE
+ cdef PetscBool flag2 = PETSC_FALSE
+ CHKERR( MatIsHermitianKnown(self.mat, &flag1, &flag2) )
+ return (toBool(flag1), toBool(flag2))
def isStructurallySymmetric(self):
- cdef PetscBool bval = PETSC_FALSE
- CHKERR( MatIsStructurallySymmetric(self.mat, &bval) )
- return <bint>bval
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( MatIsStructurallySymmetric(self.mat, &flag) )
+ return toBool(flag)
def zeroEntries(self):
CHKERR( MatZeroEntries(self.mat) )
@@ -842,10 +843,18 @@ cdef class Mat(Object):
def setValuesBlockedCSR(self, I, J, V, addv=None):
matsetvalues_csr(self.mat, I, J, V, addv, 1, 0)
- def setLGMap(self, LGMap rmap not None, LGMap cmap=None):
+ def setLGMap(self, LGMap rmap, LGMap cmap=None):
if cmap is None: cmap = rmap
CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) )
+ def getLGMap(self):
+ cdef LGMap cmap = LGMap()
+ cdef LGMap rmap = LGMap()
+ CHKERR( MatGetLocalToGlobalMapping(self.mat, &rmap.lgm, &cmap.lgm) )
+ PetscINCREF(cmap.obj)
+ PetscINCREF(rmap.obj)
+ return (rmap, cmap)
+
def setValueLocal(self, row, col, value, addv=None):
cdef PetscInt ival1 = asInt(row)
cdef PetscInt ival2 = asInt(col)
@@ -961,9 +970,9 @@ cdef class Mat(Object):
CHKERR( MatAssemblyEnd(self.mat, flag) )
def isAssembled(self):
- cdef PetscBool assembled = PETSC_FALSE
- CHKERR( MatAssembled(self.mat, &assembled) )
- return <bint> assembled
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( MatAssembled(self.mat, &flag) )
+ return toBool(flag)
#
def createVecs(self, side=None):
@@ -1034,7 +1043,7 @@ cdef class Mat(Object):
CHKERR( MatGetRowSum(self.mat, result.vec) )
return result
- def setDiagonal(self, Vec diag not None, addv=None):
+ def setDiagonal(self, Vec diag, addv=None):
cdef PetscInsertMode caddv = insertmode(addv)
CHKERR( MatDiagonalSet(self.mat, diag.vec, caddv) )
@@ -1056,7 +1065,7 @@ cdef class Mat(Object):
# null space
- def setNullSpace(self, NullSpace nsp not None):
+ def setNullSpace(self, NullSpace nsp):
CHKERR( MatSetNullSpace(self.mat, nsp.nsp) )
def getNullSpace(self):
@@ -1065,7 +1074,16 @@ cdef class Mat(Object):
PetscINCREF(nsp.obj)
return nsp
- def setNearNullSpace(self, NullSpace nsp not None):
+ def setTransposeNullSpace(self, NullSpace nsp):
+ CHKERR( MatSetTransposeNullSpace(self.mat, nsp.nsp) )
+
+ def getTransposeNullSpace(self):
+ cdef NullSpace nsp = NullSpace()
+ CHKERR( MatGetTransposeNullSpace(self.mat, &nsp.nsp) )
+ PetscINCREF(nsp.obj)
+ return nsp
+
+ def setNearNullSpace(self, NullSpace nsp):
CHKERR( MatSetNearNullSpace(self.mat, nsp.nsp) )
def getNearNullSpace(self):
@@ -1076,27 +1094,27 @@ cdef class Mat(Object):
# matrix-vector product
- def mult(self, Vec x not None, Vec y not None):
+ def mult(self, Vec x, Vec y):
CHKERR( MatMult(self.mat, x.vec, y.vec) )
- def multAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ def multAdd(self, Vec x, Vec v, Vec y):
CHKERR( MatMultAdd(self.mat, x.vec, v.vec, y.vec) )
- def multTranspose(self, Vec x not None, Vec y not None):
+ def multTranspose(self, Vec x, Vec y):
CHKERR( MatMultTranspose(self.mat, x.vec, y.vec) )
- def multTransposeAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ def multTransposeAdd(self, Vec x, Vec v, Vec y):
CHKERR( MatMultTransposeAdd(self.mat, x.vec, v.vec, y.vec) )
- def multHermitian(self, Vec x not None, Vec y not None):
+ def multHermitian(self, Vec x, Vec y):
CHKERR( MatMultHermitian(self.mat, x.vec, y.vec) )
- def multHermitianAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ def multHermitianAdd(self, Vec x, Vec v, Vec y):
CHKERR( MatMultHermitianAdd(self.mat, x.vec, v.vec, y.vec) )
# SOR
- def SOR(self, Vec b not None, Vec x not None, omega=1.0, sortype=None, shift=0.0, its=1, lits=1):
+ def SOR(self, Vec b, Vec x, omega=1.0, sortype=None, shift=0.0, its=1, lits=1):
cdef PetscReal comega = asReal(omega)
cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP
if sortype is not None:
@@ -1114,21 +1132,21 @@ cdef class Mat(Object):
PetscINCREF(submat.obj)
return submat
- def increaseOverlap(self, IS iset not None, overlap=1):
+ def increaseOverlap(self, IS iset, overlap=1):
cdef PetscInt ival = asInt(overlap)
CHKERR( MatIncreaseOverlap(self.mat, 1, &iset.iset, ival) )
- def getSubMatrix(self, IS isrow not None, IS iscol=None, Mat submat=None):
+ def createSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None):
cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
cdef PetscIS ciscol = NULL
if iscol is not None: ciscol = iscol.iset
if submat is None: submat = Mat()
if submat.mat != NULL: reuse = MAT_REUSE_MATRIX
- CHKERR( MatGetSubMatrix(self.mat, isrow.iset, ciscol,
+ CHKERR( MatCreateSubMatrix(self.mat, isrow.iset, ciscol,
reuse, &submat.mat) )
return submat
- def getSubMatrices(self, isrows not None, iscols=None, submats=None):
+ def createSubMatrices(self, isrows, iscols=None, submats=None):
if iscols is None: iscols = isrows
isrows = [isrows] if isinstance(isrows, IS) else list(isrows)
iscols = [iscols] if isinstance(iscols, IS) else list(iscols)
@@ -1150,7 +1168,7 @@ cdef class Mat(Object):
assert len(submats) == len(isrows)
CHKERR( PetscMalloc(<size_t>(n+1)*sizeof(PetscMat), &cmats) )
for i from 0 <= i < n: cmats[i] = (<Mat?>submats[i]).mat
- CHKERR( MatGetSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
+ CHKERR( MatCreateSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
for i from 0 <= i < n: PetscINCREF(<PetscObject*>&cmats[i])
if reuse == MAT_INITIAL_MATRIX:
submats = [None] * n
@@ -1162,13 +1180,13 @@ cdef class Mat(Object):
#
- def getLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat=None):
+ def getLocalSubMatrix(self, IS isrow, IS iscol, Mat submat=None):
if submat is None: submat = Mat()
else: CHKERR( MatDestroy(&submat.mat) )
CHKERR( MatGetLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) )
return submat
- def restoreLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat not None):
+ def restoreLocalSubMatrix(self, IS isrow, IS iscol, Mat submat):
CHKERR( MatRestoreLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) )
#
@@ -1194,26 +1212,26 @@ cdef class Mat(Object):
cdef PetscReal rval = asReal(tol)
CHKERR( MatChop(self.mat, rval) )
- def axpy(self, alpha, Mat X not None, structure=None):
+ def axpy(self, alpha, Mat X, structure=None):
cdef PetscScalar sval = asScalar(alpha)
cdef PetscMatStructure flag = matstructure(structure)
CHKERR( MatAXPY(self.mat, sval, X.mat, flag) )
- def aypx(self, alpha, Mat X not None, structure=None):
+ def aypx(self, alpha, Mat X, structure=None):
cdef PetscScalar sval = asScalar(alpha)
cdef PetscMatStructure flag = matstructure(structure)
CHKERR( MatAYPX(self.mat, sval, X.mat, flag) )
# matrix-matrix product
- def matMultSymbolic(self, Mat mat not None, fill=None):
+ def matMultSymbolic(self, Mat mat, fill=None):
cdef Mat result = Mat()
cdef PetscReal rval = 2
if fill is not None: rval = asReal(fill)
CHKERR( MatMatMultSymbolic(self.mat, mat.mat, rval, &result.mat) )
return result
- def matMultNumeric(self, Mat mat not None, Mat result=None):
+ def matMultNumeric(self, Mat mat, Mat result=None):
if result is None:
result = Mat()
if result.mat == NULL:
@@ -1221,7 +1239,7 @@ cdef class Mat(Object):
CHKERR( MatMatMultNumeric(self.mat, mat.mat, result.mat) )
return result
- def matMult(self, Mat mat not None, Mat result=None, fill=None):
+ def matMult(self, Mat mat, Mat result=None, fill=None):
cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
cdef PetscReal rval = 2
if result is None:
@@ -1232,7 +1250,7 @@ cdef class Mat(Object):
CHKERR( MatMatMult(self.mat, mat.mat, reuse, rval, &result.mat) )
return result
- def matTransposeMult(self, Mat mat not None, Mat result=None, fill=None):
+ def matTransposeMult(self, Mat mat, Mat result=None, fill=None):
cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
cdef PetscReal rval = 2
if result is None:
@@ -1243,7 +1261,7 @@ cdef class Mat(Object):
CHKERR( MatMatTransposeMult(self.mat, mat.mat, reuse, rval, &result.mat) )
return result
- def transposeMatMult(self, Mat mat not None, Mat result=None, fill=None):
+ def transposeMatMult(self, Mat mat, Mat result=None, fill=None):
cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
cdef PetscReal rval = 2
if result is None:
@@ -1254,6 +1272,17 @@ cdef class Mat(Object):
CHKERR( MatTransposeMatMult(self.mat, mat.mat, reuse, rval, &result.mat) )
return result
+ def PtAP(self, Mat P, Mat result=None, fill=None):
+ cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
+ cdef PetscReal cfill = PETSC_DEFAULT
+ if result is None:
+ result = Mat()
+ elif result.mat != NULL:
+ reuse = MAT_REUSE_MATRIX
+ if fill is not None: cfill = asReal(fill)
+ CHKERR( MatPtAP(self.mat, P.mat, reuse, cfill, &result.mat) )
+ return result
+
# XXX factorization
def getOrdering(self, ord_type):
@@ -1263,44 +1292,44 @@ cdef class Mat(Object):
CHKERR( MatGetOrdering(self.mat, cval, &rp.iset, &cp.iset) )
return (rp, cp)
- def reorderForNonzeroDiagonal(self, IS isrow not None, IS iscol not None, atol=0):
+ def reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0):
cdef PetscReal rval = asReal(atol)
cdef PetscIS rp = isrow.iset, cp = iscol.iset
CHKERR( MatReorderForNonzeroDiagonal(self.mat, rval, rp, cp) )
- def factorLU(self, IS isrow not None, IS iscol not None, options=None):
+ def factorLU(self, IS isrow, IS iscol, options=None):
cdef PetscMatFactorInfo info
matfactorinfo(PETSC_FALSE, PETSC_FALSE, options, &info)
CHKERR( MatLUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- def factorSymbolicLU(self, Mat mat not None, IS isrow not None, IS iscol not None, options=None):
+ def factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None):
<void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused
raise NotImplementedError
- def factorNumericLU(self, Mat mat not None, options=None):
+ def factorNumericLU(self, Mat mat, options=None):
<void>self; <void>mat; <void>options; # unused
raise NotImplementedError
- def factorILU(self, IS isrow not None, IS iscol not None, options=None):
+ def factorILU(self, IS isrow, IS iscol, options=None):
cdef PetscMatFactorInfo info
matfactorinfo(PETSC_TRUE, PETSC_FALSE, options, &info)
CHKERR( MatILUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- def factorSymbolicILU(self, IS isrow not None, IS iscol not None, options=None):
+ def factorSymbolicILU(self, IS isrow, IS iscol, options=None):
<void>self; <void>isrow; <void>iscol; <void>options; # unused
raise NotImplementedError
- def factorCholesky(self, IS isperm not None, options=None):
+ def factorCholesky(self, IS isperm, options=None):
cdef PetscMatFactorInfo info
matfactorinfo(PETSC_FALSE, PETSC_TRUE, options, &info)
CHKERR( MatCholeskyFactor(self.mat, isperm.iset, &info) )
- def factorSymbolicCholesky(self, IS isperm not None, options=None):
+ def factorSymbolicCholesky(self, IS isperm, options=None):
<void>self; <void>isperm; <void>options; # unused
raise NotImplementedError
- def factorNumericCholesky(self, Mat mat not None, options=None):
+ def factorNumericCholesky(self, Mat mat, options=None):
<void>self; <void>mat; <void>options; # unused
raise NotImplementedError
- def factorICC(self, IS isperm not None, options=None):
+ def factorICC(self, IS isperm, options=None):
cdef PetscMatFactorInfo info
matfactorinfo(PETSC_TRUE, PETSC_TRUE, options, &info)
CHKERR( MatICCFactor(self.mat, isperm.iset, &info) )
- def factorSymbolicICC(self, IS isperm not None, options=None):
+ def factorSymbolicICC(self, IS isperm, options=None):
<void>self; <void>isperm; <void>options; # unused
raise NotImplementedError
@@ -1312,6 +1341,20 @@ cdef class Mat(Object):
def setUnfactored(self):
CHKERR( MatSetUnfactored(self.mat) )
+ # LRC
+
+ def getLRCMats(self):
+ cdef Mat A = Mat()
+ cdef Mat U = Mat()
+ cdef Vec c = Vec()
+ cdef Mat V = Mat()
+ CHKERR( MatLRCGetMats(self.mat, &A.mat, &U.mat, &c.vec, &V.mat) )
+ PetscINCREF(A.obj)
+ PetscINCREF(U.obj)
+ PetscINCREF(c.obj)
+ PetscINCREF(V.obj)
+ return (A, U, c, V)
+
# MUMPS
def setMumpsIcntl(self, icntl, ival):
@@ -1362,25 +1405,25 @@ cdef class Mat(Object):
# solve
- def solveForward(self, Vec b not None, Vec x not None):
+ def solveForward(self, Vec b, Vec x):
CHKERR( MatForwardSolve(self.mat, b.vec, x.vec) )
- def solveBackward(self, Vec b not None, Vec x not None):
+ def solveBackward(self, Vec b, Vec x):
CHKERR( MatBackwardSolve(self.mat, b.vec, x.vec) )
- def solve(self, Vec b not None, Vec x not None):
+ def solve(self, Vec b, Vec x):
CHKERR( MatSolve(self.mat, b.vec, x.vec) )
- def solveTranspose(self, Vec b not None, Vec x not None):
+ def solveTranspose(self, Vec b, Vec x):
CHKERR( MatSolveTranspose(self.mat, b.vec, x.vec) )
- def solveAdd(self, Vec b not None, Vec y, Vec x not None):
+ def solveAdd(self, Vec b, Vec y, Vec x):
CHKERR( MatSolveAdd(self.mat, b.vec, y.vec, x.vec) )
- def solveTransposeAdd(self, Vec b not None, Vec y, Vec x not None):
+ def solveTransposeAdd(self, Vec b, Vec y, Vec x):
CHKERR( MatSolveTransposeAdd(self.mat, b.vec, y.vec, x.vec) )
- def matSolve(self, Mat B not None, Mat X not None):
+ def matSolve(self, Mat B, Mat X):
CHKERR( MatMatSolve(self.mat, B.mat, X.mat) )
# dense matrices
@@ -1494,7 +1537,7 @@ cdef class NullSpace(Object):
PetscCLEAR(self.obj); self.nsp = newnsp
return self
- def createRigidBody(self, Vec coords not None):
+ def createRigidBody(self, Vec coords):
cdef PetscNullSpace newnsp = NULL
CHKERR( MatNullSpaceCreateRigidBody(coords.vec, &newnsp) )
PetscCLEAR(self.obj); self.nsp = newnsp
@@ -1515,7 +1558,7 @@ cdef class NullSpace(Object):
def hasConstant(self):
cdef PetscBool flag = PETSC_FALSE
CHKERR( MatNullSpaceGetVecs(self.nsp, &flag, NULL, NULL) )
- return <bint> flag
+ return toBool(flag)
def getVecs(self):
cdef PetscInt i = 0, nv = 0
@@ -1535,9 +1578,14 @@ cdef class NullSpace(Object):
#
- def remove(self, Vec vec not None):
+ def remove(self, Vec vec):
CHKERR( MatNullSpaceRemove(self.nsp, vec.vec) )
+ def test(self, Mat mat):
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( MatNullSpaceTest(self.nsp, mat.mat, &flag) )
+ return toBool(flag)
+
# --------------------------------------------------------------------
del MatType
diff --git a/src/PETSc/Object.pyx b/src/PETSc/Object.pyx
index 8e6626d..890a220 100644
--- a/src/PETSc/Object.pyx
+++ b/src/PETSc/Object.pyx
@@ -31,7 +31,7 @@ cdef class Object:
obj.obj[0] = o
return obj
- def __deepcopy__(self, dict memo not None):
+ def __deepcopy__(self, dict memo):
cdef object obj_copy = None
try:
obj_copy = self.copy
@@ -82,6 +82,13 @@ cdef class Object:
def setFromOptions(self):
CHKERR( PetscObjectSetFromOptions(self.obj[0]) )
+ def viewFromOptions(self, name, Object prefix=None):
+ cdef PetscObject pobj = NULL
+ cdef const_char *cval = NULL
+ pobj = prefix.obj[0] if prefix is not None else NULL
+ name = str2bytes(name, &cval)
+ CHKERR( PetscObjectViewFromOptions(self.obj[0], pobj, cval) )
+
#
def getComm(self):
@@ -117,7 +124,7 @@ cdef class Object:
# --- general support ---
- def compose(self, name, Object obj):
+ def compose(self, name, Object obj or None):
cdef const_char *cval = NULL
cdef PetscObject cobj = NULL
name = str2bytes(name, &cval)
diff --git a/src/PETSc/Options.pyx b/src/PETSc/Options.pyx
index d5b41fc..0cbf008 100644
--- a/src/PETSc/Options.pyx
+++ b/src/PETSc/Options.pyx
@@ -74,7 +74,7 @@ cdef class Options:
tmp = getpair(self.prefix, name, &pr, &nm)
cdef PetscBool flag = PETSC_FALSE
CHKERR( PetscOptionsHasName(self.opt, pr, nm, &flag) )
- return <bint> flag
+ return toBool(flag)
def setValue(self, name, value):
cdef const_char *pr = NULL
diff --git a/src/PETSc/PC.pyx b/src/PETSc/PC.pyx
index 23cc95c..7862954 100644
--- a/src/PETSc/PC.pyx
+++ b/src/PETSc/PC.pyx
@@ -74,6 +74,10 @@ class PCMGType(object):
FULL = PC_MG_FULL
KASKADE = PC_MG_KASKADE
+class PCMGCycleType(object):
+ V = PC_MG_CYCLE_V
+ W = PC_MG_CYCLE_W
+
class PCGAMGType(object):
AGG = S_(PCGAMGAGG)
GEO = S_(PCGAMGGEO)
@@ -109,6 +113,7 @@ cdef class PC(Object):
ASMType = PCASMType
GASMType = PCGASMType
MGType = PCMGType
+ MGCycleType = PCMGCycleType
GAMGType = PCGAMGType
CompositeType = PCCompositeType
SchurFactType = PCFieldSplitSchurFactType
@@ -197,16 +202,16 @@ cdef class PC(Object):
def setUpOnBlocks(self):
CHKERR( PCSetUpOnBlocks(self.pc) )
- def apply(self, Vec x not None, Vec y not None):
+ def apply(self, Vec x, Vec y):
CHKERR( PCApply(self.pc, x.vec, y.vec) )
- def applyTranspose(self, Vec x not None, Vec y not None):
+ def applyTranspose(self, Vec x, Vec y):
CHKERR( PCApplyTranspose(self.pc, x.vec, y.vec) )
- def applySymmetricLeft(self, Vec x not None, Vec y not None):
+ def applySymmetricLeft(self, Vec x, Vec y):
CHKERR( PCApplySymmetricLeft(self.pc, x.vec, y.vec) )
- def applySymmetricRight(self, Vec x not None, Vec y not None):
+ def applySymmetricRight(self, Vec x, Vec y):
CHKERR( PCApplySymmetricRight(self.pc, x.vec, y.vec) )
# --- discretization space ---
@@ -219,7 +224,7 @@ cdef class PC(Object):
PetscINCREF(dm.obj)
return dm
- def setDM(self, DM dm not None):
+ def setDM(self, DM dm):
CHKERR( PCSetDM(self.pc, dm.dm) )
def setCoordinates(self, coordinates):
@@ -319,13 +324,13 @@ cdef class PC(Object):
hypretype = str2bytes(hypretype, &cval)
CHKERR( PCHYPRESetType(self.pc, cval) )
- def setHYPREDiscreteCurl(self, Mat mat not None):
+ def setHYPREDiscreteCurl(self, Mat mat):
CHKERR( PCHYPRESetDiscreteCurl(self.pc, mat.mat) )
- def setHYPREDiscreteGradient(self, Mat mat not None):
+ def setHYPREDiscreteGradient(self, Mat mat):
CHKERR( PCHYPRESetDiscreteGradient(self.pc, mat.mat) )
- def setHYPRESetAlphaPoissonMatrix(self, Mat mat not None):
+ def setHYPRESetAlphaPoissonMatrix(self, Mat mat):
CHKERR( PCHYPRESetAlphaPoissonMatrix(self.pc, mat.mat) )
def setHYPRESetBetaPoissonMatrix(self, Mat mat=None):
@@ -333,8 +338,7 @@ cdef class PC(Object):
if mat is not None: pmat = mat.mat
CHKERR( PCHYPRESetBetaPoissonMatrix(self.pc, pmat) )
- def setHYPRESetEdgeConstantVectors(self, Vec ozz not None,
- Vec zoz not None, Vec zzo=None):
+ def setHYPRESetEdgeConstantVectors(self, Vec ozz, Vec zoz, Vec zzo=None):
cdef PetscVec zzo_vec = NULL
if zzo is not None: zzo_vec = zzo.vec
CHKERR( PCHYPRESetEdgeConstantVectors(self.pc, ozz.vec, zoz.vec,
@@ -498,7 +502,7 @@ cdef class PC(Object):
PetscINCREF(ksp.obj)
return ksp
- def setMGInterpolation(self, level, Mat mat not None):
+ def setMGInterpolation(self, level, Mat mat):
cdef PetscInt clevel = asInt(level)
CHKERR( PCMGSetInterpolation(self.pc, clevel, mat.mat) )
@@ -509,7 +513,7 @@ cdef class PC(Object):
PetscINCREF(interpolation.obj)
return interpolation
- def setMGRestriction(self, level, Mat mat not None):
+ def setMGRestriction(self, level, Mat mat):
cdef PetscInt clevel = asInt(level)
CHKERR( PCMGSetRestriction(self.pc, clevel, mat.mat) )
@@ -520,7 +524,7 @@ cdef class PC(Object):
PetscINCREF(restriction.obj)
return restriction
- def setMGRScale(self, level, Vec rscale not None):
+ def setMGRScale(self, level, Vec rscale):
cdef PetscInt clevel = asInt(level)
CHKERR( PCMGSetRScale(self.pc, clevel, rscale.vec) )
@@ -552,20 +556,24 @@ cdef class PC(Object):
PetscINCREF(ksp.obj)
return ksp
- def setMGCyclesOnLevel(self, level, ncycle):
+ def setMGCycleType(self, cycle_type):
+ cdef PetscPCMGCycleType ctype = cycle_type
+ CHKERR( PCMGSetCycleType(self.pc, ctype) )
+
+ def setMGCycleTypeOnLevel(self, level, cycle_type):
cdef PetscInt clevel = asInt(level)
- cdef PetscInt c = asInt(ncycle)
- CHKERR( PCMGSetCyclesOnLevel(self.pc, clevel, c) )
+ cdef PetscPCMGCycleType ctype = cycle_type
+ CHKERR( PCMGSetCycleTypeOnLevel(self.pc, clevel, ctype) )
- def setMGRhs(self, level, Vec rhs not None):
+ def setMGRhs(self, level, Vec rhs):
cdef PetscInt clevel = asInt(level)
CHKERR( PCMGSetRhs(self.pc, clevel, rhs.vec) )
- def setMGX(self, level, Vec x not None):
+ def setMGX(self, level, Vec x):
cdef PetscInt clevel = asInt(level)
CHKERR( PCMGSetX(self.pc, clevel, x.vec) )
- def setMGR(self, level, Vec r not None):
+ def setMGR(self, level, Vec r):
cdef PetscInt clevel = asInt(level)
CHKERR( PCMGSetR(self.pc, clevel, r.vec) )
@@ -576,6 +584,7 @@ del PCSide
del PCASMType
del PCGASMType
del PCMGType
+del PCMGCycleType
del PCGAMGType
del PCCompositeType
del PCFieldSplitSchurPreType
diff --git a/src/PETSc/PETSc.pyx b/src/PETSc/PETSc.pyx
index cde7cd0..2e1ce8b 100644
--- a/src/PETSc/PETSc.pyx
+++ b/src/PETSc/PETSc.pyx
@@ -79,7 +79,10 @@ cdef extern from *:
cdef extern from "scalar.h":
object PyPetscScalar_FromPetscScalar(PetscScalar)
- PetscScalar PyPetscScalar_AsPetscScalar(object) except*
+ PetscScalar PyPetscScalar_AsPetscScalar(object) except? <PetscScalar>-1.0
+
+cdef inline object toBool(PetscBool value):
+ return True if value else False
cdef inline object toInt(PetscInt value):
return value
@@ -93,7 +96,7 @@ cdef inline PetscReal asReal(object value) except? -1:
cdef inline object toScalar(PetscScalar value):
return PyPetscScalar_FromPetscScalar(value)
-cdef inline PetscScalar asScalar(object value) except*:
+cdef inline PetscScalar asScalar(object value) except? <PetscScalar>-1.0:
return PyPetscScalar_AsPetscScalar(value)
# --------------------------------------------------------------------
@@ -139,6 +142,7 @@ include "petscdmcomposite.pxi"
include "petscdmshell.pxi"
include "petscsf.pxi"
include "petscpartitioner.pxi"
+include "petsclinesearch.pxi"
# --------------------------------------------------------------------
diff --git a/src/PETSc/SNES.pyx b/src/PETSc/SNES.pyx
index 9c58bf9..8a4d119 100644
--- a/src/PETSc/SNES.pyx
+++ b/src/PETSc/SNES.pyx
@@ -129,11 +129,11 @@ cdef class SNES(Object):
PetscINCREF(dm.obj)
return dm
- def setDM(self, DM dm not None):
+ def setDM(self, DM dm):
CHKERR( SNESSetDM(self.snes, dm.dm) )
# --- FAS ---
- def setFASInterpolation(self, level, Mat mat not None):
+ def setFASInterpolation(self, level, Mat mat):
cdef PetscInt clevel = asInt(level)
CHKERR( SNESFASSetInterpolation(self.snes, clevel, mat.mat) )
@@ -144,7 +144,7 @@ cdef class SNES(Object):
PetscINCREF(mat.obj)
return mat
- def setFASRestriction(self, level, Mat mat not None):
+ def setFASRestriction(self, level, Mat mat):
cdef PetscInt clevel = asInt(level)
CHKERR( SNESFASSetRestriction(self.snes, clevel, mat.mat) )
@@ -155,7 +155,7 @@ cdef class SNES(Object):
PetscINCREF(mat.obj)
return mat
- def setFASInjection(self, level, Mat mat not None):
+ def setFASInjection(self, level, Mat mat):
cdef PetscInt clevel = asInt(level)
CHKERR( SNESFASSetInjection(self.snes, clevel, mat.mat) )
@@ -166,7 +166,7 @@ cdef class SNES(Object):
PetscINCREF(mat.obj)
return mat
- def setFASRScale(self, level, Vec vec not None):
+ def setFASRScale(self, level, Vec vec):
cdef PetscInt clevel = asInt(level)
CHKERR( SNESFASSetRScale(self.snes, clevel, vec.vec) )
@@ -234,11 +234,11 @@ cdef class SNES(Object):
return snes
def hasNPC(self):
- cdef PetscBool has_npc = PETSC_FALSE
- CHKERR( SNESHasNPC(self.snes, &has_npc) )
- return <bint> has_npc
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( SNESHasNPC(self.snes, &flag) )
+ return toBool(flag)
- def setNPC(self, SNES snes not None):
+ def setNPC(self, SNES snes):
CHKERR( SNESSetNPC(self.snes, snes.snes) )
# --- user Function/Jacobian routines ---
@@ -290,7 +290,7 @@ cdef class SNES(Object):
def getUpdate(self):
return self.get_attr('__update__')
- def setJacobian(self, jacobian, Mat J, Mat P=None, args=None, kargs=None):
+ def setJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
cdef PetscMat Jmat=NULL
if J is not None: Jmat = J.mat
cdef PetscMat Pmat=Jmat
@@ -328,19 +328,36 @@ cdef class SNES(Object):
cdef object objective = self.get_attr('__objective__')
return objective
- def computeFunction(self, Vec x not None, Vec f not None):
+ def computeFunction(self, Vec x, Vec f):
CHKERR( SNESComputeFunction(self.snes, x.vec, f.vec) )
- def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None):
+ def computeJacobian(self, Vec x, Mat J, Mat P=None):
cdef PetscMat jmat = J.mat, pmat = J.mat
if P is not None: pmat = P.mat
CHKERR( SNESComputeJacobian(self.snes, x.vec, jmat, pmat) )
- def computeObjective(self, Vec x not None):
+ def computeObjective(self, Vec x):
cdef PetscReal o = 0
CHKERR( SNESComputeObjective(self.snes, x.vec, &o) )
return toReal(o)
+ def setNGS(self, ngs, args=None, kargs=None):
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (ngs, args, kargs)
+ self.set_attr('__ngs__', context)
+ CHKERR( SNESSetNGS(self.snes, SNES_NGS, <void*>context) )
+
+ def getNGS(self):
+ CHKERR( SNESGetNGS(self.snes, NULL, NULL) )
+ cdef object ngs = self.get_attr('__ngs__')
+ return ngs
+
+ def computeNGS(self, Vec x, Vec b=None):
+ cdef PetscVec bvec = NULL
+ if b is not None: bvec = b.vec
+ CHKERR( SNESComputeNGS(self.snes, bvec, x.vec) )
+
# --- tolerances and convergence ---
def setTolerances(self, rtol=None, atol=None, stol=None, max_it=None):
@@ -514,7 +531,7 @@ cdef class SNES(Object):
def reset(self):
CHKERR( SNESReset(self.snes) )
- def solve(self, Vec b, Vec x not None):
+ def solve(self, Vec b or None, Vec x):
cdef PetscVec rhs = NULL
if b is not None: rhs = b.vec
CHKERR( SNESSolve(self.snes, rhs, x.vec) )
@@ -537,6 +554,15 @@ cdef class SNES(Object):
CHKERR( SNESGetIterationNumber(self.snes, &ival) )
return toInt(ival)
+ def setFunctionNorm(self, norm):
+ cdef PetscReal rval = asReal(norm)
+ CHKERR( SNESSetFunctionNorm(self.snes, rval) )
+
+ def getFunctionNorm(self):
+ cdef PetscReal rval = 0
+ CHKERR( SNESGetFunctionNorm(self.snes, &rval) )
+ return toReal(rval)
+
def getLinearSolveIterations(self):
cdef PetscInt ival = 0
CHKERR( SNESGetLinearSolveIterations(self.snes, &ival) )
@@ -554,7 +580,7 @@ cdef class SNES(Object):
PetscINCREF(vec.obj)
return vec
- def setSolution(self, Vec vec not None):
+ def setSolution(self, Vec vec):
CHKERR( SNESSetSolution(self.snes, vec.vec) )
def getSolutionUpdate(self):
@@ -565,7 +591,7 @@ cdef class SNES(Object):
# --- linear solver ---
- def setKSP(self, KSP ksp not None):
+ def setKSP(self, KSP ksp):
CHKERR( SNESSetKSP(self.snes, ksp.ksp) )
def getKSP(self):
@@ -582,7 +608,7 @@ cdef class SNES(Object):
def getUseEW(self):
cdef PetscBool flag = PETSC_FALSE
CHKERR( SNESKSPGetUseEW(self.snes, &flag) )
- return <bint> flag
+ return toBool(flag)
def setParamsEW(self, version=None,
rtol_0=None, rtol_max=None,
@@ -629,22 +655,22 @@ cdef class SNES(Object):
CHKERR( SNESSetUseMFFD(self.snes, bval) )
def getUseMF(self):
- cdef PetscBool bval = PETSC_FALSE
- CHKERR( SNESGetUseMFFD(self.snes, &bval) )
- return <bint> bval
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( SNESGetUseMFFD(self.snes, &flag) )
+ return toBool(flag)
def setUseFD(self, flag=True):
cdef PetscBool bval = flag
CHKERR( SNESSetUseFDColoring(self.snes, bval) )
def getUseFD(self):
- cdef PetscBool bval = PETSC_FALSE
- CHKERR( SNESGetUseFDColoring(self.snes, &bval) )
- return <bint> bval
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( SNESGetUseFDColoring(self.snes, &flag) )
+ return toBool(flag)
# --- VI ---
- def setVariableBounds(self, Vec xl not None, Vec xu not None):
+ def setVariableBounds(self, Vec xl, Vec xu):
CHKERR( SNESVISetVariableBounds(self.snes, xl.vec, xu.vec) )
def getVIInactiveSet(self):
@@ -693,6 +719,20 @@ cdef class SNES(Object):
CHKERR( SNESCompositeGetNumber(self.snes, &cn) )
return toInt(cn)
+ # --- NASM ---
+
+ def getNASMSNES(self, n):
+ cdef PetscInt cn = asInt(n)
+ cdef SNES snes = SNES()
+ CHKERR( SNESNASMGetSNES(self.snes, cn, &snes.snes) )
+ PetscINCREF(snes.obj)
+ return snes
+
+ def getNASMNumber(self):
+ cdef PetscInt cn = 0
+ CHKERR( SNESNASMGetNumber(self.snes, &cn) )
+ return toInt(cn)
+
# --- application context ---
property appctx:
@@ -787,6 +827,12 @@ cdef class SNES(Object):
def __set__(self, value):
self.setIterationNumber(value)
+ property norm:
+ def __get__(self):
+ return self.getFunctionNorm()
+ def __set__(self, value):
+ self.setFunctionNorm(value)
+
property history:
def __get__(self):
return self.getConvergenceHistory()
diff --git a/src/PETSc/Scatter.pyx b/src/PETSc/Scatter.pyx
index 16c7ca7..e47f4a0 100644
--- a/src/PETSc/Scatter.pyx
+++ b/src/PETSc/Scatter.pyx
@@ -24,8 +24,8 @@ cdef class Scatter(Object):
CHKERR( VecScatterDestroy(&self.sct) )
return self
- def create(self, Vec vec_from not None, IS is_from,
- Vec vec_to not None, IS is_to):
+ def create(self, Vec vec_from, IS is_from or None,
+ Vec vec_to, IS is_to or None):
cdef PetscIS cisfrom = NULL, cisto = NULL
if is_from is not None: cisfrom = is_from.iset
if is_to is not None: cisto = is_to.iset
@@ -41,7 +41,7 @@ cdef class Scatter(Object):
return scatter
@classmethod
- def toAll(cls, Vec vec not None):
+ def toAll(cls, Vec vec):
cdef Scatter scatter = Scatter()
cdef Vec ovec = Vec()
CHKERR( VecScatterCreateToAll(
@@ -49,7 +49,7 @@ cdef class Scatter(Object):
return (scatter, ovec)
@classmethod
- def toZero(cls, Vec vec not None):
+ def toZero(cls, Vec vec):
cdef Scatter scatter = Scatter()
cdef Vec ovec = Vec()
CHKERR( VecScatterCreateToZero(
@@ -57,15 +57,13 @@ cdef class Scatter(Object):
return (scatter, ovec)
#
- def begin(self, Vec vec_from not None, Vec vec_to not None,
- addv=None, mode=None):
+ def begin(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
cdef PetscInsertMode caddv = insertmode(addv)
cdef PetscScatterMode csctm = scattermode(mode)
CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
caddv, csctm) )
- def end(self, Vec vec_from not None, Vec vec_to not None,
- addv=None, mode=None):
+ def end(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
cdef PetscInsertMode caddv = insertmode(addv)
cdef PetscScatterMode csctm = scattermode(mode)
CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec,
@@ -73,22 +71,19 @@ cdef class Scatter(Object):
#
- def scatterBegin(self, Vec vec_from not None, Vec vec_to not None,
- addv=None, mode=None):
+ def scatterBegin(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
cdef PetscInsertMode caddv = insertmode(addv)
cdef PetscScatterMode csctm = scattermode(mode)
CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
caddv, csctm) )
- def scatterEnd(self, Vec vec_from not None, Vec vec_to not None,
- addv=None, mode=None):
+ def scatterEnd(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
cdef PetscInsertMode caddv = insertmode(addv)
cdef PetscScatterMode csctm = scattermode(mode)
CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec,
caddv, csctm) )
- def scatter(self, Vec vec_from not None, Vec vec_to not None,
- addv=None, mode=None):
+ def scatter(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
cdef PetscInsertMode caddv = insertmode(addv)
cdef PetscScatterMode csctm = scattermode(mode)
CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
diff --git a/src/PETSc/Section.pyx b/src/PETSc/Section.pyx
index 9472dc9..353b7fb 100644
--- a/src/PETSc/Section.pyx
+++ b/src/PETSc/Section.pyx
@@ -208,7 +208,7 @@ cdef class Section(Object):
CHKERR( PetscSectionGetOffsetRange(self.sec,&oStart,&oEnd) )
return toInt(oStart),toInt(oEnd)
- def createGlobalSection(self, SF sf not None):
+ def createGlobalSection(self, SF sf):
cdef Section gsec = Section()
CHKERR( PetscSectionCreateGlobalSection(self.sec,sf.sf,PETSC_FALSE,PETSC_FALSE,&gsec.sec) )
return gsec
diff --git a/src/PETSc/Sys.pyx b/src/PETSc/Sys.pyx
index 073288d..e557093 100644
--- a/src/PETSc/Sys.pyx
+++ b/src/PETSc/Sys.pyx
@@ -3,60 +3,48 @@
cdef class Sys:
@classmethod
- def getVersion(cls, patch=False, devel=False,
- date=False, author=False):
- cdef int cmajor = PETSC_VERSION_MAJOR
- cdef int cminor = PETSC_VERSION_MINOR
- cdef int cmicro = PETSC_VERSION_SUBMINOR
- cdef int cpatch = PETSC_VERSION_PATCH
- cdef int cdevel = not PETSC_VERSION_RELEASE
- cdef const_char *cdate = PETSC_VERSION_DATE
- cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- version = (cmajor, cminor, cmicro)
- out = version
- if patch or devel or date or author:
+ def getVersion(cls, devel=False, date=False, author=False):
+ cdef char cversion[256]
+ cdef PetscInt major=0, minor=0, micro=0, release=0
+ CHKERR( PetscGetVersion(cversion, sizeof(cversion)) )
+ CHKERR( PetscGetVersionNumber(&major, &minor, µ, &release) )
+ out = version = (toInt(major), toInt(minor), toInt(micro))
+ if devel or date or author:
out = [version]
- if patch:
- out.append(cpatch)
if devel:
- out.append(<bint>cdevel)
+ out.append(not <bint>release)
if date:
- date = bytes2str(cdate)
+ vstr = bytes2str(cversion)
+ if release != 0:
+ date = vstr.split(",", 1)[-1].strip()
+ else:
+ date = vstr.split("GIT Date:")[-1].strip()
out.append(date)
if author:
- author = bytes2str(cauthorinfo).split('\n')
- author = [s.strip() for s in author if s]
+ author = bytes2str(PETSC_AUTHOR_INFO).split('\n')
+ author = tuple([s.strip() for s in author if s])
out.append(author)
return tuple(out)
@classmethod
def getVersionInfo(cls):
- cdef int cmajor = PETSC_VERSION_MAJOR
- cdef int cminor = PETSC_VERSION_MINOR
- cdef int cmicro = PETSC_VERSION_SUBMINOR
- cdef int cpatch = PETSC_VERSION_PATCH
- cdef int crelease = PETSC_VERSION_RELEASE
- cdef const_char *cdate = PETSC_VERSION_DATE
- cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- author = bytes2str(cauthorinfo).split('\n')
- author = [s.strip() for s in author if s]
- return dict(major = cmajor,
- minor = cminor,
- subminor = cmicro,
- patch = cpatch,
- release = <bint>crelease,
- date = bytes2str(cdate),
+ version, dev, date, author = cls.getVersion(True, True, True)
+ return dict(major = version[0],
+ minor = version[1],
+ subminor = version[2],
+ release = not dev,
+ date = date,
authorinfo = author)
# --- xxx ---
@classmethod
def isInitialized(cls):
- return <bint>PetscInitializeCalled
+ return toBool(PetscInitializeCalled)
@classmethod
def isFinalized(cls):
- return <bint>PetscFinalizeCalled
+ return toBool(PetscFinalizeCalled)
# --- xxx ---
@@ -165,6 +153,10 @@ cdef class Sys:
CHKERR( PetscPopErrorHandler() )
@classmethod
+ def popSignalHandler(cls):
+ CHKERR( PetscPopSignalHandler() )
+
+ @classmethod
def infoAllow(cls, flag):
cdef PetscBool tval = PETSC_FALSE
if flag: tval = PETSC_TRUE
@@ -175,9 +167,9 @@ cdef class Sys:
if not citation: raise ValueError("empty citation")
cdef const_char *cit = NULL
citation = str2bytes(citation, &cit)
- cdef PetscBool set = get_citation(citation)
- CHKERR( PetscCitationsRegister(cit, &set) )
- set_citation(citation, <bint>set)
+ cdef PetscBool flag = get_citation(citation)
+ CHKERR( PetscCitationsRegister(cit, &flag) )
+ set_citation(citation, toBool(flag))
cdef dict citations_registry = { }
diff --git a/src/PETSc/TAO.pyx b/src/PETSc/TAO.pyx
index c359b10..87771ab 100644
--- a/src/PETSc/TAO.pyx
+++ b/src/PETSc/TAO.pyx
@@ -137,7 +137,7 @@ cdef class TAO(Object):
def getAppCtx(self):
return self.get_attr("__appctx__")
- def setInitial(self, Vec x not None):
+ def setInitial(self, Vec x):
"""
"""
CHKERR( TaoSetInitialVector(self.tao, x.vec) )
@@ -235,7 +235,7 @@ cdef class TAO(Object):
#
- def setStateDesignIS(self, IS state, IS design):
+ def setStateDesignIS(self, IS state=None, IS design=None):
"""
"""
cdef PetscIS s_is = NULL, d_is = NULL
@@ -273,36 +273,36 @@ cdef class TAO(Object):
# --------------
- def computeObjective(self, Vec x not None):
+ def computeObjective(self, Vec x):
"""
"""
cdef PetscReal f = 0
CHKERR( TaoComputeObjective(self.tao, x.vec, &f) )
return toReal(f)
- def computeSeparableObjective(self, Vec x not None, Vec f not None):
+ def computeSeparableObjective(self, Vec x, Vec f):
"""
"""
CHKERR( TaoComputeSeparableObjective(self.tao, x.vec, f.vec) )
- def computeGradient(self, Vec x not None, Vec g not None):
+ def computeGradient(self, Vec x, Vec g):
"""
"""
CHKERR( TaoComputeGradient(self.tao, x.vec, g.vec) )
- def computeObjectiveGradient(self, Vec x not None, Vec g not None):
+ def computeObjectiveGradient(self, Vec x, Vec g):
"""
"""
cdef PetscReal f = 0
CHKERR( TaoComputeObjectiveAndGradient(self.tao, x.vec, &f, g.vec) )
return toReal(f)
- def computeDualVariables(self, Vec xl not None, Vec xu not None):
+ def computeDualVariables(self, Vec xl, Vec xu):
"""
"""
CHKERR( TaoComputeDualVariables(self.tao, xl.vec, xu.vec) )
- def computeVariableBounds(self, Vec xl not None, Vec xu not None):
+ def computeVariableBounds(self, Vec xl, Vec xu):
"""
"""
CHKERR( TaoComputeVariableBounds(self.tao) )
@@ -319,19 +319,19 @@ cdef class TAO(Object):
else:
CHKERR( VecSet(xu.vec, <PetscScalar>PETSC_INFINITY) )
- def computeConstraints(self, Vec x not None, Vec c not None):
+ def computeConstraints(self, Vec x, Vec c):
"""
"""
CHKERR( TaoComputeConstraints(self.tao, x.vec, c.vec) )
- def computeHessian(self, Vec x not None, Mat H not None, Mat P=None):
+ def computeHessian(self, Vec x, Mat H, Mat P=None):
"""
"""
cdef PetscMat hmat = H.mat, pmat = H.mat
if P is not None: pmat = P.mat
CHKERR( TaoComputeHessian(self.tao, x.vec, hmat, pmat) )
- def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None):
+ def computeJacobian(self, Vec x, Mat J, Mat P=None):
"""
"""
cdef PetscMat jmat = J.mat, pmat = J.mat
diff --git a/src/PETSc/TS.pyx b/src/PETSc/TS.pyx
index ae62dc0..8953414 100644
--- a/src/PETSc/TS.pyx
+++ b/src/PETSc/TS.pyx
@@ -12,7 +12,7 @@ class TSType(object):
THETA = S_(TSTHETA)
ALPHA = S_(TSALPHA)
ALPHA2 = S_(TSALPHA2)
- GL = S_(TSGL)
+ GLLE = S_(TSGLLE)
SSP = S_(TSSSP)
ARKIMEX = S_(TSARKIMEX)
ROSW = S_(TSROSW)
@@ -26,6 +26,16 @@ class TSType(object):
CRANK_NICOLSON = CN
RUNGE_KUTTA = RK
+class TSRKType(object):
+ RK1FE = S_(TSRK1FE)
+ RK2A = S_(TSRK2A)
+ RK4 = S_(TSRK4)
+ RK3BS = S_(TSRK3BS)
+ RK3 = S_(TSRK3)
+ RK5F = S_(TSRK5F)
+ RK5DP = S_(TSRK5DP)
+ RK5BS = S_(TSRK5BS)
+
class TSProblemType(object):
LINEAR = TS_LINEAR
NONLINEAR = TS_NONLINEAR
@@ -69,6 +79,7 @@ class TSConvergedReason(object):
cdef class TS(Object):
Type = TSType
+ RKType = TSRKType
ProblemType = TSProblemType
EquationType = TSEquationType
ExactFinalTime = TSExactFinalTime
@@ -88,7 +99,7 @@ cdef class TS(Object):
if viewer is not None: cviewer = viewer.vwr
CHKERR( TSView(self.ts, cviewer) )
- def load(self, Viewer viewer not None):
+ def load(self, Viewer viewer):
CHKERR( TSLoad(self.ts, viewer.vwr) )
def destroy(self):
@@ -112,11 +123,21 @@ cdef class TS(Object):
ts_type = str2bytes(ts_type, &cval)
CHKERR( TSSetType(self.ts, cval) )
+ def setRKType(self, ts_type):
+ cdef const_char *cval = NULL
+ ts_type = str2bytes(ts_type, &cval)
+ CHKERR( TSRKSetType(self.ts, cval) )
+
def getType(self):
cdef PetscTSType cval = NULL
CHKERR( TSGetType(self.ts, &cval) )
return bytes2str(cval)
+ def getRKType(self):
+ cdef PetscTSRKType cval = NULL
+ CHKERR( TSRKGetType(self.ts, &cval) )
+ return bytes2str(cval)
+
def setProblemType(self, ptype):
CHKERR( TSSetProblemType(self.ts, ptype) )
@@ -182,21 +203,21 @@ cdef class TS(Object):
else:
CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
- def computeRHSFunction(self, t, Vec x not None, Vec f not None):
+ def computeRHSFunction(self, t, Vec x, Vec f):
cdef PetscReal time = asReal(t)
CHKERR( TSComputeRHSFunction(self.ts, time, x.vec, f.vec) )
- def computeRHSFunctionLinear(self, t, Vec x not None, Vec f not None):
+ def computeRHSFunctionLinear(self, t, Vec x, Vec f):
cdef PetscReal time = asReal(t)
CHKERR( TSComputeRHSFunctionLinear(self.ts, time, x.vec, f.vec, NULL) )
- def computeRHSJacobian(self, t, Vec x not None, Mat J not None, Mat P=None):
+ def computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None):
cdef PetscReal time = asReal(t)
cdef PetscMat jmat = J.mat, pmat = J.mat
if P is not None: pmat = P.mat
CHKERR( TSComputeRHSJacobian(self.ts, time, x.vec, jmat, pmat) )
- def computeRHSJacobianConstant(self, t, Vec x not None, Mat J not None, Mat P=None):
+ def computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None):
cdef PetscReal time = asReal(t)
cdef PetscMat jmat = J.mat, pmat = J.mat
if P is not None: pmat = P.mat
@@ -245,16 +266,16 @@ cdef class TS(Object):
CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
def computeIFunction(self,
- t, Vec x not None, Vec xdot not None,
- Vec f not None, imex=False):
+ t, Vec x, Vec xdot,
+ Vec f, imex=False):
cdef PetscReal rval = asReal(t)
cdef PetscBool bval = imex
CHKERR( TSComputeIFunction(self.ts, rval, x.vec, xdot.vec,
f.vec, bval) )
def computeIJacobian(self,
- t, Vec x not None, Vec xdot not None, a,
- Mat J not None, Mat P=None, imex=False):
+ t, Vec x, Vec xdot, a,
+ Mat J, Mat P=None, imex=False):
cdef PetscReal rval1 = asReal(t)
cdef PetscReal rval2 = asReal(a)
cdef PetscBool bval = imex
@@ -277,9 +298,63 @@ cdef class TS(Object):
cdef object jacobian = self.get_attr('__ijacobian__')
return (J, P, jacobian)
+ def setI2Function(self, function, Vec f=None, args=None, kargs=None):
+ cdef PetscVec fvec=NULL
+ if f is not None: fvec = f.vec
+ if function is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (function, args, kargs)
+ self.set_attr('__i2function__', context)
+ CHKERR( TSSetI2Function(self.ts, fvec, TS_I2Function, <void*>context) )
+ else:
+ CHKERR( TSSetI2Function(self.ts, fvec, NULL, NULL) )
+
+ def setI2Jacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
+ cdef PetscMat Jmat=NULL
+ if J is not None: Jmat = J.mat
+ cdef PetscMat Pmat=Jmat
+ if P is not None: Pmat = P.mat
+ if jacobian is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (jacobian, args, kargs)
+ self.set_attr('__i2jacobian__', context)
+ CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, TS_I2Jacobian, <void*>context) )
+ else:
+ CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, NULL, NULL) )
+
+ def computeI2Function(self, t, Vec x, Vec xdot, Vec xdotdot, Vec f):
+ cdef PetscReal rval = asReal(t)
+ CHKERR( TSComputeI2Function(self.ts, rval, x.vec, xdot.vec, xdotdot.vec,
+ f.vec) )
+
+ def computeI2Jacobian(self, t, Vec x, Vec xdot, Vec xdotdot, v, a, Mat J, Mat P=None):
+ cdef PetscReal rval1 = asReal(t)
+ cdef PetscReal rval2 = asReal(v)
+ cdef PetscReal rval3 = asReal(a)
+ cdef PetscMat jmat = J.mat, pmat = J.mat
+ if P is not None: pmat = P.mat
+ CHKERR( TSComputeI2Jacobian(self.ts, rval1, x.vec, xdot.vec, xdotdot.vec, rval2, rval3,
+ jmat, pmat) )
+
+ def getI2Function(self):
+ cdef Vec f = Vec()
+ CHKERR( TSGetI2Function(self.ts, &f.vec, NULL, NULL) )
+ PetscINCREF(f.obj)
+ cdef object function = self.get_attr('__i2function__')
+ return (f, function)
+
+ def getI2Jacobian(self):
+ cdef Mat J = Mat(), P = Mat()
+ CHKERR( TSGetI2Jacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
+ PetscINCREF(J.obj); PetscINCREF(P.obj)
+ cdef object jacobian = self.get_attr('__i2jacobian__')
+ return (J, P, jacobian)
+
# --- solution vector ---
- def setSolution(self, Vec u not None):
+ def setSolution(self, Vec u):
CHKERR( TSSetSolution(self.ts, u.vec) )
def getSolution(self):
@@ -288,6 +363,17 @@ cdef class TS(Object):
PetscINCREF(u.obj)
return u
+ def setSolution2(self, Vec u, Vec v):
+ CHKERR( TS2SetSolution(self.ts, u.vec, v.vec) )
+
+ def getSolution2(self):
+ cdef Vec u = Vec()
+ cdef Vec v = Vec()
+ CHKERR( TS2GetSolution(self.ts, &u.vec, &v.vec) )
+ PetscINCREF(u.obj)
+ PetscINCREF(v.obj)
+ return (u, v)
+
# --- inner solver ---
def getSNES(self):
@@ -312,7 +398,7 @@ cdef class TS(Object):
PetscINCREF(dm.obj)
return dm
- def setDM(self, DM dm not None):
+ def setDM(self, DM dm):
CHKERR( TSSetDM(self.ts, dm.dm) )
# --- customization ---
@@ -336,11 +422,6 @@ cdef class TS(Object):
CHKERR( TSGetSolveTime(self.ts, &rval) )
return toReal(rval)
- def setInitialTimeStep(self, initial_time, initial_time_step):
- cdef PetscReal rval1 = asReal(initial_time)
- cdef PetscReal rval2 = asReal(initial_time_step)
- CHKERR( TSSetInitialTimeStep(self.ts, rval1, rval2) )
-
def setTimeStep(self, time_step):
cdef PetscReal rval = asReal(time_step)
CHKERR( TSSetTimeStep(self.ts, rval) )
@@ -352,52 +433,29 @@ cdef class TS(Object):
def setStepNumber(self, step_number):
cdef PetscInt ival = asInt(step_number)
- CHKERR( TSSetTimeStepNumber(self.ts, ival) )
+ CHKERR( TSSetStepNumber(self.ts, ival) )
def getStepNumber(self):
cdef PetscInt ival = 0
- CHKERR( TSGetTimeStepNumber(self.ts, &ival) )
+ CHKERR( TSGetStepNumber(self.ts, &ival) )
return toInt(ival)
def setMaxTime(self, max_time):
- cdef PetscInt ival = 0
cdef PetscReal rval = asReal(max_time)
- CHKERR( TSGetDuration(self.ts, &ival, NULL) )
- CHKERR( TSSetDuration(self.ts, ival, rval) )
+ CHKERR( TSSetMaxTime(self.ts, rval) )
def getMaxTime(self):
cdef PetscReal rval = 0
- CHKERR( TSGetDuration(self.ts, NULL, &rval) )
+ CHKERR( TSGetMaxTime(self.ts, &rval) )
return toReal(rval)
def setMaxSteps(self, max_steps):
cdef PetscInt ival = asInt(max_steps)
- cdef PetscReal rval = 0
- CHKERR( TSGetDuration(self.ts, NULL, &rval) )
- CHKERR( TSSetDuration(self.ts, ival, rval) )
+ CHKERR( TSSetMaxSteps(self.ts, ival) )
def getMaxSteps(self):
cdef PetscInt ival = 0
- CHKERR( TSGetDuration(self.ts, &ival, NULL) )
- return toInt(ival)
-
- def setDuration(self, max_time, max_steps=None):
- cdef PetscInt ival = 0
- cdef PetscReal rval = 0
- CHKERR( TSGetDuration(self.ts, &ival, &rval) )
- if max_steps is not None: ival = asInt(max_steps)
- if max_time is not None: rval = asReal(max_time)
- CHKERR( TSSetDuration(self.ts, ival, rval) )
-
- def getDuration(self):
- cdef PetscInt ival = 0
- cdef PetscReal rval = 0
- CHKERR( TSGetDuration(self.ts, &ival, &rval) )
- return (toReal(rval), toInt(ival))
-
- def getTotalSteps(self):
- cdef PetscInt ival = 0
- CHKERR( TSGetTotalSteps(self.ts, &ival) )
+ CHKERR( TSGetMaxSteps(self.ts, &ival) )
return toInt(ival)
def getSNESIterations(self):
@@ -564,13 +622,109 @@ cdef class TS(Object):
def rollBack(self):
CHKERR( TSRollBack(self.ts) )
- def solve(self, Vec u not None):
+ def solve(self, Vec u):
CHKERR( TSSolve(self.ts, u.vec) )
- def interpolate(self, t, Vec u not None):
+ def interpolate(self, t, Vec u):
cdef PetscReal rval = asReal(t)
CHKERR( TSInterpolate(self.ts, rval, u.vec) )
+ # --- Adjoint methods ---
+
+ def setSaveTrajectory(self):
+ CHKERR(TSSetSaveTrajectory(self.ts))
+
+ def getCostIntegral(self):
+ cdef Vec cost = Vec()
+ CHKERR( TSGetCostIntegral(self.ts, &cost.vec) )
+ PetscINCREF(cost.obj)
+ return cost
+
+ def setCostGradients(self, vl, vm=None):
+ cdef PetscInt n = 0;
+ cdef PetscVec *vecl = NULL
+ cdef PetscVec *vecm = NULL
+ cdef mem1 = None, mem2 = None
+ if isinstance(vl, Vec): vl = [vl]
+ if isinstance(vm, Vec): vm = [vm]
+ if vl is not None:
+ n = <PetscInt>len(vl)
+ elif vm is not None:
+ n = <PetscInt>len(vm)
+ if vl is not None:
+ assert len(vl) == <Py_ssize_t>n
+ mem1 = oarray_p(empty_p(n), NULL, <void**>&vecl)
+ for i from 0 <= i < n:
+ vecl[i] = (<Vec?>vl[i]).vec
+ if vm is not None:
+ assert len(vm) == <Py_ssize_t>n
+ mem2 = oarray_p(empty_p(n), NULL, <void**>&vecm)
+ for i from 0 <= i < n:
+ vecm[i] = (<Vec?>vm[i]).vec
+ self.set_attr('__costgradients_memory', (mem1, mem2))
+ CHKERR( TSSetCostGradients(self.ts, n, vecl, vecm) )
+
+ def getCostGradients(self):
+ cdef PetscInt i = 0, n = 0
+ cdef PetscVec *vecl = NULL
+ cdef PetscVec *vecm = NULL
+ CHKERR( TSGetCostGradients(self.ts, &n, &vecl, &vecm) )
+ cdef object vl = None, vm = None
+ if vecl != NULL:
+ vl = [ref_Vec(vecl[i]) for i from 0 <= i < n]
+ if vecm != NULL:
+ vm = [ref_Vec(vecm[i]) for i from 0 <= i < n]
+ return (vl, vm)
+
+ def setCostIntegrand(self, Vec cost or None, rfunction,
+ n=0, drdyfunction=None, drdpfunction=None,
+ forward=True, args=None, kargs=None):
+ cdef PetscInt ival = asInt(n)
+ cdef PetscVec vec = NULL
+ cdef int (*R )(PetscTS,PetscReal,PetscVec,PetscVec, void*) nogil except PETSC_ERR_PYTHON
+ cdef int (*DRDY)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) nogil except PETSC_ERR_PYTHON
+ cdef int (*DRDP)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) nogil except PETSC_ERR_PYTHON
+ R = NULL; DRDY = NULL; DRDP = NULL;
+ if cost is not None: vec = (<Vec>cost).vec
+ if rfunction is not None: R = TSAdjoint_CostIntegrand
+ if drdyfunction is not None: DRDY = TSAdjoint_CostIntegrand_DY
+ if drdpfunction is not None: DRDP = TSAdjoint_CostIntegrand_DP
+ cdef PetscBool fwd = forward
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = ((rfunction, drdyfunction, drdpfunction), args, kargs)
+ self.set_attr('__costintegrand__', context)
+ CHKERR( TSSetCostIntegrand(self.ts, ival, vec, R, DRDY, DRDP, fwd, <void*>context) )
+
+ def adjointSetRHSJacobian(self, adjointjacobian, Mat A=None, args=None, kargs=None):
+ cdef PetscMat Amat=NULL
+ if A is not None: Amat = A.mat
+ if adjointjacobian is not None:
+ if args is None: args = ()
+ if kargs is None: kargs = {}
+ context = (adjointjacobian, args, kargs)
+ self.set_attr('__adjointrhsjacobian__', context)
+ CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, TSAdjoint_RHSJacobian, <void*>context) )
+ else:
+ CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, NULL, NULL) )
+
+ def adjointComputeRHSJacobian(self, t, Vec x, Mat J):
+ cdef PetscReal rval = asReal(t)
+ CHKERR( TSAdjointComputeRHSJacobian(self.ts, rval, x.vec, J.mat) )
+
+ def adjointSetSteps(self, adjoint_steps):
+ cdef PetscInt ival = asInt(adjoint_steps)
+ CHKERR( TSAdjointSetSteps(self.ts, ival) )
+
+ def adjointSetUp(self):
+ CHKERR(TSAdjointSetUp(self.ts))
+
+ def adjointSolve(self):
+ CHKERR( TSAdjointSolve(self.ts) )
+
+ def adjointStep(self):
+ CHKERR(TSAdjointStep(self.ts))
+
# --- Python ---
@@ -613,9 +767,9 @@ cdef class TS(Object):
CHKERR( TSThetaSetEndpoint(self.ts, bval) )
def getThetaEndpoint(self):
- cdef PetscBool bval = PETSC_FALSE
- CHKERR( TSThetaGetEndpoint(self.ts, &bval) )
- return <bint> bval
+ cdef PetscBool flag = PETSC_FALSE
+ CHKERR( TSThetaGetEndpoint(self.ts, &flag) )
+ return toBool(flag)
# --- Alpha ---
@@ -746,6 +900,7 @@ cdef class TS(Object):
# -----------------------------------------------------------------------------
del TSType
+del TSRKType
del TSProblemType
del TSEquationType
del TSExactFinalTime
diff --git a/src/PETSc/Vec.pyx b/src/PETSc/Vec.pyx
index b0a8981..3b9d93b 100644
--- a/src/PETSc/Vec.pyx
+++ b/src/PETSc/Vec.pyx
@@ -438,7 +438,7 @@ cdef class Vec(Object):
cdef PetscReal rval = asReal(tol)
CHKERR( VecChop(self.vec, rval) )
- def load(self, Viewer viewer not None):
+ def load(self, Viewer viewer):
cdef MPI_Comm comm = MPI_COMM_NULL
cdef PetscObject obj = <PetscObject>(viewer.vwr)
if self.vec == NULL:
@@ -447,35 +447,35 @@ cdef class Vec(Object):
CHKERR( VecLoad(self.vec, viewer.vwr) )
return self
- def equal(self, Vec vec not None):
+ def equal(self, Vec vec):
cdef PetscBool flag = PETSC_FALSE
CHKERR( VecEqual(self.vec, vec.vec, &flag) )
- return <bint> flag
+ return toBool(flag)
- def dot(self, Vec vec not None):
+ def dot(self, Vec vec):
cdef PetscScalar sval = 0
CHKERR( VecDot(self.vec, vec.vec, &sval) )
return toScalar(sval)
- def dotBegin(self, Vec vec not None):
+ def dotBegin(self, Vec vec):
cdef PetscScalar sval = 0
CHKERR( VecDotBegin(self.vec, vec.vec, &sval) )
- def dotEnd(self, Vec vec not None):
+ def dotEnd(self, Vec vec):
cdef PetscScalar sval = 0
CHKERR( VecDotEnd(self.vec, vec.vec, &sval) )
return toScalar(sval)
- def tDot(self, Vec vec not None):
+ def tDot(self, Vec vec):
cdef PetscScalar sval = 0
CHKERR( VecTDot(self.vec, vec.vec, &sval) )
return toScalar(sval)
- def tDotBegin(self, Vec vec not None):
+ def tDotBegin(self, Vec vec):
cdef PetscScalar sval = 0
CHKERR( VecTDotBegin(self.vec, vec.vec, &sval) )
- def tDotEnd(self, Vec vec not None):
+ def tDotEnd(self, Vec vec):
cdef PetscScalar sval = 0
CHKERR( VecTDotEnd(self.vec, vec.vec, &sval) )
return toScalar(sval)
@@ -573,7 +573,7 @@ cdef class Vec(Object):
if random is not None: rnd = random.rnd
CHKERR( VecSetRandom(self.vec, rnd) )
- def permute(self, IS order not None, invert=False):
+ def permute(self, IS order, invert=False):
cdef PetscBool cinvert = PETSC_FALSE
if invert: cinvert = PETSC_TRUE
CHKERR( VecPermute(self.vec, order.iset, cinvert) )
@@ -585,7 +585,7 @@ cdef class Vec(Object):
cdef PetscScalar sval = asScalar(alpha)
CHKERR( VecSet(self.vec, sval) )
- def isset(self, IS idx not None, alpha):
+ def isset(self, IS idx, alpha):
cdef PetscScalar aval = asScalar(alpha)
CHKERR( VecISSet(self.vec, idx.iset, aval) )
@@ -601,27 +601,27 @@ cdef class Vec(Object):
cdef PetscReal rval = asReal(tol)
CHKERR( VecChop(self.vec, rval) )
- def swap(self, Vec vec not None):
+ def swap(self, Vec vec):
CHKERR( VecSwap(self.vec, vec.vec) )
- def axpy(self, alpha, Vec x not None):
+ def axpy(self, alpha, Vec x):
cdef PetscScalar sval = asScalar(alpha)
CHKERR( VecAXPY(self.vec, sval, x.vec) )
- def isaxpy(self, IS idx not None, alpha, Vec x not None):
+ def isaxpy(self, IS idx, alpha, Vec x):
cdef PetscScalar sval = asScalar(alpha)
CHKERR( VecISAXPY(self.vec, idx.iset, sval, x.vec) )
- def aypx(self, alpha, Vec x not None):
+ def aypx(self, alpha, Vec x):
cdef PetscScalar sval = asScalar(alpha)
CHKERR( VecAYPX(self.vec, sval, x.vec) )
- def axpby(self, alpha, beta, Vec y not None):
+ def axpby(self, alpha, beta, Vec y):
cdef PetscScalar sval1 = asScalar(alpha)
cdef PetscScalar sval2 = asScalar(beta)
CHKERR( VecAXPBY(self.vec, sval1, sval2, y.vec) )
- def waxpy(self, alpha, Vec x not None, Vec y not None):
+ def waxpy(self, alpha, Vec x, Vec y):
cdef PetscScalar sval = asScalar(alpha)
CHKERR( VecWAXPY(self.vec, sval, x.vec, y.vec) )
@@ -637,22 +637,22 @@ cdef class Vec(Object):
v[i] = (<Vec?>(vecs[i])).vec
CHKERR( VecMAXPY(self.vec, n, a, v) )
- def pointwiseMult(self, Vec x not None, Vec y not None):
+ def pointwiseMult(self, Vec x, Vec y):
CHKERR( VecPointwiseMult(self.vec, x.vec, y.vec) )
- def pointwiseDivide(self, Vec x not None, Vec y not None):
+ def pointwiseDivide(self, Vec x, Vec y):
CHKERR( VecPointwiseDivide(self.vec, x.vec, y.vec) )
- def pointwiseMin(self, Vec x not None, Vec y not None):
+ def pointwiseMin(self, Vec x, Vec y):
CHKERR( VecPointwiseMin(self.vec, x.vec, y.vec) )
- def pointwiseMax(self, Vec x not None, Vec y not None):
+ def pointwiseMax(self, Vec x, Vec y):
CHKERR( VecPointwiseMax(self.vec, x.vec, y.vec) )
- def pointwiseMaxAbs(self, Vec x not None, Vec y not None):
+ def pointwiseMaxAbs(self, Vec x, Vec y):
CHKERR( VecPointwiseMaxAbs(self.vec, x.vec, y.vec) )
- def maxPointwiseDivide(self, Vec vec not None):
+ def maxPointwiseDivide(self, Vec vec):
cdef PetscReal rval = 0
CHKERR( VecMaxPointwiseDivide(self.vec, vec.vec, &rval) )
return toReal(rval)
@@ -678,9 +678,15 @@ cdef class Vec(Object):
def setValuesBlocked(self, indices, values, addv=None):
vecsetvalues(self.vec, indices, values, addv, 1, 0)
- def setLGMap(self, LGMap lgmap not None):
+ def setLGMap(self, LGMap lgmap):
CHKERR( VecSetLocalToGlobalMapping(self.vec, lgmap.lgm) )
+ def getLGMap(self):
+ cdef LGMap cmap = LGMap()
+ CHKERR( VecGetLocalToGlobalMapping(self.vec, &cmap.lgm) )
+ PetscINCREF(cmap.obj)
+ return cmap
+
def setValueLocal(self, index, value, addv=None):
cdef PetscInt ival = asInt(index)
cdef PetscScalar sval = asScalar(value)
@@ -740,12 +746,12 @@ cdef class Vec(Object):
if ntype != norm_1_2: return toReal(rval[0])
else: return (toReal(rval[0]), toReal(rval[1]))
- def strideScatter(self, field, Vec vec not None, addv=None):
+ def strideScatter(self, field, Vec vec, addv=None):
cdef PetscInt ival = asInt(field)
cdef PetscInsertMode caddv = insertmode(addv)
CHKERR( VecStrideScatter(self.vec, ival, vec.vec, caddv) )
- def strideGather(self, field, Vec vec not None, addv=None):
+ def strideGather(self, field, Vec vec, addv=None):
cdef PetscInt ival = asInt(field)
cdef PetscInsertMode caddv = insertmode(addv)
CHKERR( VecStrideGather(self.vec, ival, vec.vec, caddv) )
@@ -785,13 +791,13 @@ cdef class Vec(Object):
#
- def getSubVector(self, IS iset not None, Vec subvec=None):
+ def getSubVector(self, IS iset, Vec subvec=None):
if subvec is None: subvec = Vec()
else: CHKERR( VecDestroy(&subvec.vec) )
CHKERR( VecGetSubVector(self.vec, iset.iset, &subvec.vec) )
return subvec
- def restoreSubVector(self, IS iset not None, Vec subvec not None):
+ def restoreSubVector(self, IS iset, Vec subvec):
CHKERR( VecRestoreSubVector(self.vec, iset.iset, &subvec.vec) )
def getNestSubVecs(self):
diff --git a/src/PETSc/Viewer.pyx b/src/PETSc/Viewer.pyx
index f255d8b..e83c752 100644
--- a/src/PETSc/Viewer.pyx
+++ b/src/PETSc/Viewer.pyx
@@ -9,7 +9,6 @@ class ViewerType(object):
VU = S_(PETSCVIEWERVU)
MATHEMATICA = S_(PETSCVIEWERMATHEMATICA)
HDF5 = S_(PETSCVIEWERHDF5)
- NETCDF = S_(PETSCVIEWERNETCDF)
VTK = S_(PETSCVIEWERVTK)
MATLAB = S_(PETSCVIEWERMATLAB)
SAWS = S_(PETSCVIEWERSAWS)
@@ -174,19 +173,6 @@ cdef class Viewer(Object):
CHKERR( PetscViewerFileSetName(self.vwr, cname) )
return self
- def createNetCDF(self, name, mode=None, comm=None):
- cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
- cdef const_char *cname = NULL
- name = str2bytes(name, &cname)
- cdef PetscFileMode cmode = filemode(mode)
- cdef PetscViewer newvwr = NULL
- CHKERR( PetscViewerCreate(ccomm, &newvwr) )
- PetscCLEAR(self.obj); self.vwr = newvwr
- CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERNETCDF) )
- CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
- CHKERR( PetscViewerFileSetName(self.vwr, cname) )
- return self
-
def createDraw(self, display=None, title=None,
position=None, size=None, comm=None):
cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
@@ -271,6 +257,51 @@ cdef class Viewer(Object):
PetscINCREF(viewer.obj)
return viewer
+ # --- ASCII viewers ---
+
+ def setASCIITab(self, tabs):
+ cdef PetscInt ctabs = asInt(tabs)
+ CHKERR( PetscViewerASCIISetTab(self.vwr, ctabs) )
+
+ def getASCIITab(self):
+ cdef PetscInt tabs = 0
+ CHKERR( PetscViewerASCIIGetTab(self.vwr, &tabs) )
+ return toInt(tabs)
+
+ def addASCIITab(self, tabs):
+ cdef PetscInt ctabs = asInt(tabs)
+ CHKERR( PetscViewerASCIIAddTab(self.vwr, ctabs) )
+
+ def subtractASCIITab(self, tabs):
+ cdef PetscInt ctabs = asInt(tabs)
+ CHKERR( PetscViewerASCIISubtractTab(self.vwr, ctabs) )
+
+ def pushASCIISynchronized(self):
+ CHKERR( PetscViewerASCIIPushSynchronized(self.vwr) )
+
+ def popASCIISynchronized(self):
+ CHKERR( PetscViewerASCIIPopSynchronized(self.vwr) )
+
+ def pushASCIITab(self):
+ CHKERR( PetscViewerASCIIPushTab(self.vwr) )
+
+ def popASCIITab(self):
+ CHKERR( PetscViewerASCIIPopTab(self.vwr) )
+
+ def useASCIITabs(self, flag):
+ cdef PetscBool flg = flag
+ CHKERR( PetscViewerASCIIUseTabs(self.vwr, flg) )
+
+ def printfASCII(self, msg):
+ cdef const_char *cmsg = NULL
+ msg = str2bytes(msg, &cmsg)
+ CHKERR( PetscViewerASCIIPrintf(self.vwr, cmsg) )
+
+ def printfASCIISynchronized(self, msg):
+ cdef const_char *cmsg = NULL
+ msg = str2bytes(msg, &cmsg)
+ CHKERR( PetscViewerASCIISynchronizedPrintf(self.vwr, cmsg) )
+
# --- methods specific to file viewers ---
def flush(self):
diff --git a/src/PETSc/petscdef.pxi b/src/PETSc/petscdef.pxi
index cf2eb5a..77c501d 100644
--- a/src/PETSc/petscdef.pxi
+++ b/src/PETSc/petscdef.pxi
@@ -8,8 +8,8 @@ cdef extern from * nogil:
PetscReal PETSC_NINFINITY
ctypedef enum PetscBool:
- PETSC_TRUE, PETSC_YES,
- PETSC_FALSE, PETSC_NO,
+ PETSC_FALSE
+ PETSC_TRUE
ctypedef enum PetscInsertMode "InsertMode":
PETSC_NOT_SET_VALUES "NOT_SET_VALUES"
diff --git a/src/PETSc/petscdm.pxi b/src/PETSc/petscdm.pxi
index eee61ff..67e0b6e 100644
--- a/src/PETSc/petscdm.pxi
+++ b/src/PETSc/petscdm.pxi
@@ -41,6 +41,10 @@ cdef extern from * nogil:
int DMSetVecType(PetscDM,PetscVecType)
int DMCreateLocalVector(PetscDM,PetscVec*)
int DMCreateGlobalVector(PetscDM,PetscVec*)
+ int DMGetLocalVector(PetscDM,PetscVec*)
+ int DMRestoreLocalVector(PetscDM,PetscVec*)
+ int DMGetGlobalVector(PetscDM,PetscVec*)
+ int DMRestoreGlobalVector(PetscDM,PetscVec*)
int DMSetMatType(PetscDM,PetscMatType)
int DMCreateMatrix(PetscDM,PetscMat*)
@@ -60,6 +64,12 @@ cdef extern from * nogil:
int DMCoarsen(PetscDM,MPI_Comm,PetscDM*)
int DMRefineHierarchy(PetscDM,PetscInt,PetscDM[])
int DMCoarsenHierarchy(PetscDM,PetscInt,PetscDM[])
+ int DMGetRefineLevel(PetscDM,PetscInt*)
+ int DMSetRefineLevel(PetscDM,PetscInt)
+ int DMGetCoarsenLevel(PetscDM,PetscInt*)
+
+ int DMAdaptLabel(PetscDM,PetscDMLabel,PetscDM*)
+ int DMAdaptMetric(PetscDM,PetscVec,PetscDMLabel,PetscDM*)
int DMGlobalToLocalBegin(PetscDM,PetscVec,PetscInsertMode,PetscVec)
int DMGlobalToLocalEnd(PetscDM,PetscVec,PetscInsertMode,PetscVec)
@@ -103,6 +113,13 @@ cdef extern from * nogil:
int DMShellSetGlobalVector(PetscDM,PetscVec)
int DMShellSetLocalVector(PetscDM,PetscVec)
+ int DMKSPSetComputeOperators(PetscDM,PetscKSPComputeOpsFunction,void*)
+
+ int DMCreateFieldDecomposition(PetscDM,PetscInt*,char***,PetscIS**,PetscDM**)
+
+ int DMSNESSetFunction(PetscDM,PetscSNESFunctionFunction,void*)
+ int DMSNESSetJacobian(PetscDM,PetscSNESJacobianFunction,void*)
+
# --------------------------------------------------------------------
cdef inline PetscDMBoundaryType asBoundaryType(object boundary) \
diff --git a/src/PETSc/petscdmcomposite.pxi b/src/PETSc/petscdmcomposite.pxi
index 1e89dc0..860ff6c 100644
--- a/src/PETSc/petscdmcomposite.pxi
+++ b/src/PETSc/petscdmcomposite.pxi
@@ -6,7 +6,7 @@ cdef extern from * nogil:
int DMCompositeAddDM(PetscDM,PetscDM)
int DMCompositeGetNumberDM(PetscDM,PetscInt*)
int DMCompositeScatterArray(PetscDM,PetscVec,PetscVec*)
- int DMCompositeGatherArray(PetscDM,PetscVec,PetscInsertMode,PetscVec*)
+ int DMCompositeGatherArray(PetscDM,PetscInsertMode,PetscVec,PetscVec*)
int DMCompositeGetEntriesArray(PetscDM,PetscDM*)
int DMCompositeGetAccessArray(PetscDM,PetscVec,PetscInt,const_PetscInt*,PetscVec*)
int DMCompositeRestoreAccessArray(PetscDM,PetscVec,PetscInt,const_PetscInt*,PetscVec*)
@@ -24,7 +24,7 @@ cdef class _DMComposite_access:
cdef object vecs_mem
cdef object access
- def __cinit__(self, DM dm, Vec gvec not None, locs=None):
+ def __cinit__(self, DM dm, Vec gvec, locs=None):
self.dm = dm.dm
CHKERR( PetscINCREF(<PetscObject*>&self.dm) )
self.gvec = gvec.vec
diff --git a/src/PETSc/petscdmda.pxi b/src/PETSc/petscdmda.pxi
index b17b538..e5cb6df 100644
--- a/src/PETSc/petscdmda.pxi
+++ b/src/PETSc/petscdmda.pxi
@@ -178,7 +178,7 @@ cdef inline tuple asOwnershipRanges(object ownership_ranges,
elif p[0] != nlz: raise ValueError(
"ownership range size %d and number or processors %d" %
(toInt(nlz), toInt(p[0])))
- return ranges
+ return tuple(ranges)
cdef inline tuple toOwnershipRanges(PetscInt dim,
PetscInt m, PetscInt n, PetscInt p,
@@ -202,7 +202,7 @@ cdef class _DMDA_Vec_array(object):
cdef readonly tuple shape, strides
cdef readonly ndarray array
- def __cinit__(self, DMDA da not None, Vec vec not None, bint DOF=False):
+ def __cinit__(self, DMDA da, Vec vec, bint DOF=False):
#
cdef PetscInt dim=0, dof=0
CHKERR( DMDAGetInfo(da.dm,
diff --git a/src/PETSc/petscdmplex.pxi b/src/PETSc/petscdmplex.pxi
index 3afbdad..960c6f7 100644
--- a/src/PETSc/petscdmplex.pxi
+++ b/src/PETSc/petscdmplex.pxi
@@ -31,18 +31,20 @@ cdef extern from * nogil:
int DMPlexStratify(PetscDM)
#int DMPlexEqual(PetscDM,PetscDM,PetscBool*)
int DMPlexOrient(PetscDM)
- #int DMPlexInterpolate(PetscDM,PetscDM*)
- #int DMPlexUninterpolate(PetscDM,PetscDM*)
+ int DMPlexInterpolate(PetscDM,PetscDM*)
+ int DMPlexUninterpolate(PetscDM,PetscDM*)
#int DMPlexLoad(PetscViewer,PetscDM)
#int DMPlexSetPreallocationCenterDimension(PetscDM,PetscInt)
#int DMPlexGetPreallocationCenterDimension(PetscDM,PetscInt*)
#int DMPlexPreallocateOperator(PetscDM,PetscInt,PetscSection,PetscSection,PetscInt[],PetscInt[],PetscInt[],PetscInt[],Mat,PetscBool)
- #int DMPlexGetPointLocal(PetscDM,PetscInt,PetscInt*,PetscInt*)
+ int DMPlexGetPointLocal(PetscDM,PetscInt,PetscInt*,PetscInt*)
#int DMPlexPointLocalRef(PetscDM,PetscInt,PetscScalar*,void*)
#int DMPlexPointLocalRead(PetscDM,PetscInt,const_PetscScalar*,const_void*)
- #int DMPlexGetPointGlobal(PetscDM,PetscInt,PetscInt*,PetscInt*)
+ int DMPlexGetPointGlobal(PetscDM,PetscInt,PetscInt*,PetscInt*)
#int DMPlexPointGlobalRef(PetscDM,PetscInt,PetscScalar*,void*)
#int DMPlexPointGlobalRead(PetscDM,PetscInt,const_PetscScalar*,const_void*)
+ int DMPlexGetPointLocalField(PetscDM,PetscInt,PetscInt,PetscInt*,PetscInt*)
+ int DMPlexGetPointGlobalField(PetscDM,PetscInt,PetscInt,PetscInt*,PetscInt*)
#int PetscSectionCreateGlobalSectionLabel(PetscSection,PetscSF,PetscBool,PetscDMLabel,PetscInt,PetscSection*)
@@ -65,6 +67,8 @@ cdef extern from * nogil:
int DMPlexRestoreTransitiveClosure(PetscDM,PetscInt,PetscBool,PetscInt*,PetscInt*[])
int DMPlexVecGetClosure(PetscDM,PetscSection,PetscVec,PetscInt,PetscInt*,PetscScalar*[])
int DMPlexVecRestoreClosure(PetscDM,PetscSection,PetscVec,PetscInt,PetscInt*,PetscScalar*[])
+ int DMPlexVecSetClosure(PetscDM,PetscSection,PetscVec,PetscInt,PetscScalar[],PetscInsertMode)
+ int DMPlexMatSetClosure(PetscDM,PetscSection,PetscSection,PetscMat,PetscInt,PetscScalar[],PetscInsertMode)
int DMPlexGenerate(PetscDM,const_char[],PetscBool ,PetscDM*)
int DMPlexTriangleSetOptions(PetscDM,const_char*)
@@ -73,8 +77,9 @@ cdef extern from * nogil:
#int DMPlexCreateDoublet(MPI_Comm,PetscInt,PetscBool,PetscBool,PetscBool,PetscReal,PetscDM*)
int DMPlexCreateSquareBoundary(PetscDM,const_PetscReal[],const_PetscReal[],const_PetscInt[])
int DMPlexCreateCubeBoundary(PetscDM,const_PetscReal[],const_PetscReal[],const_PetscInt[])
- int DMPlexCreateBoxMesh(MPI_Comm,PetscInt,PetscBool,PetscDM*)
+ int DMPlexCreateBoxMesh(MPI_Comm,PetscInt,PetscInt,PetscBool,PetscDM*)
int DMPlexCreateHexBoxMesh(MPI_Comm,PetscInt,const_PetscInt[],PetscDMBoundaryType,PetscDMBoundaryType,PetscDMBoundaryType,PetscDM*)
+ int DMPlexCreateFromFile(MPI_Comm,const_char[],PetscBool,PetscDM*)
int DMPlexCreateCGNS(MPI_Comm,PetscInt,PetscBool,PetscDM*)
int DMPlexCreateCGNSFromFile(MPI_Comm,const_char[],PetscBool,PetscDM*)
int DMPlexCreateExodus(MPI_Comm,PetscInt,PetscBool,PetscDM*)
@@ -89,11 +94,17 @@ cdef extern from * nogil:
int DMPlexSetAdjacencyUseCone(PetscDM,PetscBool)
int DMPlexSetAdjacencyUseClosure(PetscDM,PetscBool)
+ int DMPlexSetAdjacencyUseAnchors(PetscDM,PetscBool)
+ int DMPlexGetAdjacencyUseCone(PetscDM,PetscBool*)
+ int DMPlexGetAdjacencyUseClosure(PetscDM,PetscBool*)
+ int DMPlexGetAdjacencyUseAnchors(PetscDM,PetscBool*)
+ int DMPlexGetAdjacency(PetscDM,PetscInt,PetscInt*,PetscInt*[])
#int DMPlexCreateNeighborCSR(PetscDM,PetscInt,PetscInt*,PetscInt**,PetscInt**)
#int DMPlexCreatePartition(PetscDM,const_char[],PetscInt,PetscBool,PetscSection*,PetscIS*,PetscSection*,PetscIS*)
#int DMPlexCreatePartitionClosure(PetscDM,PetscSection,PetscIS,PetscSection*,PetscIS*)
int DMPlexDistribute(PetscDM,PetscInt,PetscSF*,PetscDM*)
int DMPlexDistributeOverlap(PetscDM,PetscInt,PetscSF*,PetscDM*)
+ int DMPlexSetPartitioner(PetscDM,PetscPartitioner)
int DMPlexGetPartitioner(PetscDM,PetscPartitioner*)
int DMPlexDistributeField(PetscDM,PetscSF,PetscSection,PetscVec,PetscSection,PetscVec)
#int DMPlexDistributeData(PetscDM,PetscSF,PetscSection,MPI_Datatype,void*,PetscSection,void**)
@@ -123,3 +134,4 @@ cdef extern from * nogil:
int DMPlexCreateSection(PetscDM,PetscInt,PetscInt,const_PetscInt[],const_PetscInt[],PetscInt,const_PetscInt[],const_PetscIS[],const_PetscIS[],PetscIS,PetscSection*)
int DMPlexComputeCellGeometryFVM(PetscDM,PetscInt,PetscReal*,PetscReal[],PetscReal[])
+ int DMPlexConstructGhostCells(PetscDM,const char[],PetscInt*,PetscDM*)
diff --git a/src/PETSc/petscdmshell.pxi b/src/PETSc/petscdmshell.pxi
index f4d45f4..fcb7ba1 100644
--- a/src/PETSc/petscdmshell.pxi
+++ b/src/PETSc/petscdmshell.pxi
@@ -17,11 +17,26 @@ cdef extern from * nogil:
ctypedef int (*PetscDMShellCreateInjectionFunction)(PetscDM,
PetscDM,
PetscMat*) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscDMShellCreateRestrictionFunction)(PetscDM,
+ PetscDM,
+ PetscMat*) except PETSC_ERR_PYTHON
ctypedef int (*PetscDMShellCreateFieldDecompositionFunction)(PetscDM,
PetscInt*,
char***,
PetscIS**,
PetscDM**) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscDMShellCreateDomainDecompositionFunction)(PetscDM,
+ PetscInt*,
+ char***,
+ PetscIS**,
+ PetscIS**,
+ PetscDM**) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscDMShellCreateDomainDecompositionScattersFunction)(PetscDM,
+ PetscInt,
+ PetscDM*,
+ PetscScatter**,
+ PetscScatter**,
+ PetscScatter**) except PETSC_ERR_PYTHON
ctypedef int (*PetscDMShellCreateSubDM)(PetscDM,
PetscInt,
PetscInt[],
@@ -44,7 +59,10 @@ cdef extern from * nogil:
int DMShellSetRefine(PetscDM,PetscDMShellTransferFunction)
int DMShellSetCreateInterpolation(PetscDM,PetscDMShellCreateInterpolationFunction)
int DMShellSetCreateInjection(PetscDM,PetscDMShellCreateInjectionFunction)
+ int DMShellSetCreateRestriction(PetscDM,PetscDMShellCreateRestrictionFunction)
int DMShellSetCreateFieldDecomposition(PetscDM,PetscDMShellCreateFieldDecompositionFunction)
+ int DMShellSetCreateDomainDecomposition(PetscDM,PetscDMShellCreateDomainDecompositionFunction)
+ int DMShellSetCreateDomainDecompositionScatters(PetscDM,PetscDMShellCreateDomainDecompositionScattersFunction)
int DMShellSetCreateSubDM(PetscDM,PetscDMShellCreateSubDM)
cdef int DMSHELL_CreateGlobalVector(
@@ -268,6 +286,25 @@ cdef int DMSHELL_CreateInjection(
cmat[0] = mat.mat
return 0
+cdef int DMSHELL_CreateRestriction(
+ PetscDM dmf,
+ PetscDM dmc,
+ PetscMat *cmat) except PETSC_ERR_PYTHON with gil:
+ cdef DM Dmf = subtype_DM(dmf)()
+ cdef DM Dmc = subtype_DM(dmc)()
+ cdef Mat mat
+ Dmf.dm = dmf
+ PetscINCREF(Dmf.obj)
+ Dmc.dm = dmc
+ PetscINCREF(Dmc.obj)
+ context = Dmf.get_attr('__create_restriction__')
+ assert context is not None and type(context) is tuple
+ (restriction, args, kargs) = context
+ mat = restriction(Dmf, Dmc, *args, **kargs)
+ PetscINCREF(mat.obj)
+ cmat[0] = mat.mat
+ return 0
+
cdef int DMSHELL_CreateFieldDecomposition(
PetscDM dm,
PetscInt *clen,
@@ -313,6 +350,108 @@ cdef int DMSHELL_CreateFieldDecomposition(
PetscINCREF((<DM?>dms[i]).obj)
return 0
+cdef int DMSHELL_CreateDomainDecomposition(
+ PetscDM dm,
+ PetscInt *clen,
+ char ***namelist,
+ PetscIS **innerislist,
+ PetscIS **outerislist,
+ PetscDM **dmlist) except PETSC_ERR_PYTHON with gil:
+ cdef DM Dm = subtype_DM(dm)()
+ cdef int i
+ cdef const_char *cname = NULL
+ Dm.dm = dm
+ PetscINCREF(Dm.obj)
+ context = Dm.get_attr('__create_domain_decomp__')
+ assert context is not None and type(context) is tuple
+ (decomp, args, kargs) = context
+ names, innerises, outerises, dms = decomp(Dm, *args, **kargs)
+
+ if clen != NULL:
+ if names is not None:
+ clen[0] = <PetscInt>len(names)
+ elif innerises is not None:
+ clen[0] = <PetscInt>len(innerises)
+ elif outerises is not None:
+ clen[0] = <PetscInt>len(outerises)
+ elif dms is not None:
+ clen[0] = <PetscInt>len(dms)
+ else:
+ clen[0] = 0
+
+ if namelist != NULL and names is not None:
+ CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) )
+ for i in range(len(names)):
+ names[i] = str2bytes(names[i], &cname)
+ CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
+
+ if innerislist != NULL and innerises is not None:
+ CHKERR( PetscMalloc(len(innerises)*sizeof(PetscIS), innerislist) )
+ for i in range(len(innerises)):
+ innerislist[0][i] = (<IS?>innerises[i]).iset
+ PetscINCREF((<IS?>innerises[i]).obj)
+
+ if outerislist != NULL and outerises is not None:
+ CHKERR( PetscMalloc(len(outerises)*sizeof(PetscIS), outerislist) )
+ for i in range(len(outerises)):
+ outerislist[0][i] = (<IS?>outerises[i]).iset
+ PetscINCREF((<IS?>outerises[i]).obj)
+
+ if dmlist != NULL and dms is not None:
+ CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) )
+ for i in range(len(dms)):
+ dmlist[0][i] = (<DM?>dms[i]).dm
+ PetscINCREF((<DM?>dms[i]).obj)
+ return 0
+
+cdef int DMSHELL_CreateDomainDecompositionScatters(
+ PetscDM dm,
+ PetscInt clen,
+ PetscDM *subdms,
+ PetscScatter** iscat,
+ PetscScatter** oscat,
+ PetscScatter** gscat) except PETSC_ERR_PYTHON with gil:
+
+ cdef DM Dm = subtype_DM(dm)()
+ cdef int i
+ cdef const_char *cname = NULL
+ cdef DM subdm = None
+
+ Dm.dm = dm
+ PetscINCREF(Dm.obj)
+
+ psubdms = []
+ for i from 0 <= i < clen:
+ subdm = subtype_DM(subdms[i])()
+ subdm.dm = subdms[i]
+ PetscINCREF(subdm.obj)
+ psubdms.append(subdm)
+
+ context = Dm.get_attr('__create_domain_decomp_scatters__')
+ assert context is not None and type(context) is tuple
+ (scatters, args, kargs) = context
+ (iscatter, oscatter, gscatter) = scatters(Dm, psubdms, *args, **kargs)
+
+ assert len(iscatter) == clen
+ assert len(oscatter) == clen
+ assert len(gscatter) == clen
+
+ CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), iscat) )
+ CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), oscat) )
+ CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), gscat) )
+
+ for i in range(clen):
+ iscat[0][i] = (<Scatter?>iscatter[i]).sct
+ PetscINCREF((<Scatter?>iscatter[i]).obj)
+
+ oscat[0][i] = (<Scatter?>oscatter[i]).sct
+ PetscINCREF((<Scatter?>oscatter[i]).obj)
+
+ gscat[0][i] = (<Scatter?>gscatter[i]).sct
+ PetscINCREF((<Scatter?>gscatter[i]).obj)
+
+ return 0
+
cdef int DMSHELL_CreateSubDM(
PetscDM cdm,
PetscInt numFields,
diff --git a/src/PETSc/petscis.pxi b/src/PETSc/petscis.pxi
index f24196f..4170233 100644
--- a/src/PETSc/petscis.pxi
+++ b/src/PETSc/petscis.pxi
@@ -60,13 +60,19 @@ cdef extern from * nogil:
cdef extern from * nogil:
- ctypedef enum PetscGLMapType "ISGlobalToLocalMappingType":
+ ctypedef char* PetscISLocalToGlobalMappingType "const char*"
+ PetscISLocalToGlobalMappingType ISLOCALTOGLOBALMAPPINGBASIC
+ PetscISLocalToGlobalMappingType ISLOCALTOGLOBALMAPPINGHASH
+
+ ctypedef enum PetscGLMapMode "ISGlobalToLocalMappingMode":
PETSC_IS_GTOLM_MASK "IS_GTOLM_MASK"
PETSC_IS_GTOLM_DROP "IS_GTOLM_DROP"
int ISLocalToGlobalMappingCreate(MPI_Comm,PetscInt,PetscInt,PetscInt[],PetscCopyMode,PetscLGMap*)
int ISLocalToGlobalMappingCreateIS(PetscIS,PetscLGMap*)
int ISLocalToGlobalMappingCreateSF(PetscSF,PetscInt,PetscLGMap*)
+ int ISLocalToGlobalMappingSetType(PetscLGMap,PetscISLocalToGlobalMappingType)
+ int ISLocalToGlobalMappingSetFromOptions(PetscLGMap)
int ISLocalToGlobalMappingView(PetscLGMap,PetscViewer)
int ISLocalToGlobalMappingDestroy(PetscLGMap*)
int ISLocalToGlobalMappingGetSize(PetscLGMap,PetscInt*)
@@ -82,8 +88,8 @@ cdef extern from * nogil:
int ISLocalToGlobalMappingApply(PetscLGMap,PetscInt,PetscInt[],PetscInt[])
int ISLocalToGlobalMappingApplyBlock(PetscLGMap,PetscInt,PetscInt[],PetscInt[])
int ISLocalToGlobalMappingApplyIS(PetscLGMap,PetscIS,PetscIS*)
- int ISGlobalToLocalMappingApply(PetscLGMap,PetscGLMapType,PetscInt,PetscInt[],PetscInt*,PetscInt[])
- int ISGlobalToLocalMappingApplyBlock(PetscLGMap,PetscGLMapType,PetscInt,PetscInt[],PetscInt*,PetscInt[])
+ int ISGlobalToLocalMappingApply(PetscLGMap,PetscGLMapMode,PetscInt,PetscInt[],PetscInt*,PetscInt[])
+ int ISGlobalToLocalMappingApplyBlock(PetscLGMap,PetscGLMapMode,PetscInt,PetscInt[],PetscInt*,PetscInt[])
# --------------------------------------------------------------------
@@ -117,7 +123,7 @@ cdef class _IS_buffer:
cdef const_PetscInt *data
cdef bint hasarray
- def __cinit__(self, IS iset not None):
+ def __cinit__(self, IS iset):
cdef PetscIS i = iset.iset
CHKERR( PetscINCREF(<PetscObject*>&i) )
self.iset = i
diff --git a/src/PETSc/petscksp.pxi b/src/PETSc/petscksp.pxi
index c1d5869..acf2dd3 100644
--- a/src/PETSc/petscksp.pxi
+++ b/src/PETSc/petscksp.pxi
@@ -4,13 +4,13 @@ cdef extern from * nogil:
PetscKSPType KSPRICHARDSON
PetscKSPType KSPCHEBYSHEV
PetscKSPType KSPCG
- PetscKSPType KSPGROPPCG
- PetscKSPType KSPPIPECG
- PetscKSPType KSPPIPECGRR
+ PetscKSPType KSPGROPPCG
+ PetscKSPType KSPPIPECG
+ PetscKSPType KSPPIPECGRR
PetscKSPType KSPCGNE
- PetscKSPType KSPNASH
- PetscKSPType KSPSTCG
- PetscKSPType KSPGLTR
+ PetscKSPType KSPCGNASH
+ PetscKSPType KSPCGSTCG
+ PetscKSPType KSPCGGLTR
PetscKSPType KSPFCG
PetscKSPType KSPPIPEFCG
PetscKSPType KSPGMRES
@@ -41,6 +41,7 @@ cdef extern from * nogil:
PetscKSPType KSPPIPEGCR
PetscKSPType KSPTSIRM
PetscKSPType KSPCGLS
+ PetscKSPType KSPFETIDP
ctypedef enum PetscKSPNormType "KSPNormType":
KSP_NORM_DEFAULT
diff --git a/src/PETSc/petsclinesearch.pxi b/src/PETSc/petsclinesearch.pxi
new file mode 100644
index 0000000..94e4857
--- /dev/null
+++ b/src/PETSc/petsclinesearch.pxi
@@ -0,0 +1,13 @@
+cdef extern from * nogil:
+
+ ctypedef char* PetscSNESLineSearchType "const char*"
+ PetscSNESLineSearchType SNESLINESEARCHBT
+ PetscSNESLineSearchType SNESLINESEARCHNLEQERR
+ PetscSNESLineSearchType SNESLINESEARCHBASIC
+ PetscSNESLineSearchType SNESLINESEARCHL2
+ PetscSNESLineSearchType SNESLINESEARCHCP
+
+ int SNESGetLineSearch(PetscSNES,PetscSNESLineSearch*)
+ int SNESLineSearchSetFromOptions(PetscSNESLineSearch)
+ int SNESLineSearchApply(PetscSNESLineSearch,PetscVec,PetscVec,PetscReal*,PetscVec)
+ int SNESLineSearchDestroy(PetscSNESLineSearch*)
diff --git a/src/PETSc/petscmat.pxi b/src/PETSc/petscmat.pxi
index 71737f7..e0feeed 100644
--- a/src/PETSc/petscmat.pxi
+++ b/src/PETSc/petscmat.pxi
@@ -151,8 +151,8 @@ cdef extern from * nogil:
int MatCreateNormal(PetscMat,PetscMat*)
int MatCreateTranspose(PetscMat,PetscMat*)
- int MatCreateLRC(PetscMat,PetscMat,PetscMat,PetscMat*)
- int MatCreateSubMatrix(PetscMat,PetscIS,PetscIS,PetscMat*)
+ int MatCreateLRC(PetscMat,PetscMat,PetscVec,PetscMat,PetscMat*)
+ int MatCreateSubMatrixVirtual(PetscMat,PetscIS,PetscIS,PetscMat*)
int MatCreateRedundantMatrix(PetscMat,PetscInt,MPI_Comm,PetscMatReuse,PetscMat*)
int MatCreateNest(MPI_Comm,PetscInt,PetscIS[],PetscInt,PetscIS[],PetscMat[],PetscMat*)
int MatCreateShell(MPI_Comm,PetscInt,PetscInt,PetscInt,PetscInt,void*,PetscMat*)
@@ -220,6 +220,7 @@ cdef extern from * nogil:
int MatSetValuesBlocked(PetscMat,PetscInt,PetscInt[],PetscInt,PetscInt[],PetscScalar[],PetscInsertMode)
int MatSetLocalToGlobalMapping(PetscMat,PetscLGMap,PetscLGMap)
+ int MatGetLocalToGlobalMapping(PetscMat,PetscLGMap*,PetscLGMap*)
int MatSetValueLocal(PetscMat,PetscInt,PetscInt,PetscScalar,PetscInsertMode)
int MatSetValuesLocal(PetscMat,PetscInt,PetscInt[],PetscInt,PetscInt[],PetscScalar[],PetscInsertMode)
int MatSetValuesBlockedLocal(PetscMat,PetscInt,PetscInt[],PetscInt,PetscInt[],PetscScalar[],PetscInsertMode)
@@ -257,6 +258,7 @@ cdef extern from * nogil:
int MatTransposeMatMult(PetscMat,PetscMat,PetscMatReuse,PetscReal,PetscMat*)
int MatMatMultSymbolic(PetscMat,PetscMat,PetscReal,PetscMat*)
int MatMatMultNumeric(PetscMat,PetscMat,PetscMat)
+ int MatPtAP(PetscMat,PetscMat,PetscMatReuse,PetscReal,PetscMat*)
int MatInterpolate(PetscMat,PetscVec,PetscVec)
int MatInterpolateAdd(PetscMat,PetscVec,PetscVec,PetscVec)
@@ -266,8 +268,8 @@ cdef extern from * nogil:
int MatPermuteSparsify(PetscMat,PetscInt,PetscReal,PetscReal,PetscIS,PetscIS,PetscMat*)
int MatMerge(MPI_Comm,PetscMat,PetscInt,PetscMatReuse,PetscMat*)
- int MatGetSubMatrix(PetscMat,PetscIS,PetscIS,PetscMatReuse,PetscMat*)
- int MatGetSubMatrices(PetscMat,PetscInt,PetscIS[],PetscIS[],PetscMatReuse,PetscMat*[])
+ int MatCreateSubMatrix(PetscMat,PetscIS,PetscIS,PetscMatReuse,PetscMat*)
+ int MatCreateSubMatrices(PetscMat,PetscInt,PetscIS[],PetscIS[],PetscMatReuse,PetscMat*[])
int MatIncreaseOverlap(PetscMat,PetscInt,PetscIS[],PetscInt)
int MatGetDiagonalBlock(PetscMat,PetscMat*)
int MatGetLocalSubMatrix(PetscMat,PetscIS,PetscIS,PetscMat*)
@@ -350,6 +352,8 @@ cdef extern from * nogil:
int MatGetInertia(PetscMat,PetscInt*,PetscInt*,PetscInt*)
int MatSetUnfactored(PetscMat)
+ int MatLRCGetMats(PetscMat,PetscMat*,PetscMat*,PetscVec*,PetscMat*)
+
int MatMumpsSetIcntl(PetscMat,PetscInt,PetscInt)
int MatMumpsGetIcntl(PetscMat,PetscInt,PetscInt*)
int MatMumpsSetCntl(PetscMat,PetscInt,PetscReal)
@@ -397,7 +401,7 @@ cdef extern from * nogil:
int MatNullSpaceCreateRigidBody(PetscVec,PetscNullSpace*)
int MatNullSpaceGetVecs(PetscNullSpace,PetscBool*,PetscInt*,const_PetscVec*[])
int MatNullSpaceRemove(PetscNullSpace,PetscVec)
- int MatNullSpaceTest(PetscNullSpace,PetscMat)
+ int MatNullSpaceTest(PetscNullSpace,PetscMat,PetscBool*)
ctypedef int MatNullSpaceFunction(PetscNullSpace,
PetscVec,
@@ -406,6 +410,8 @@ cdef extern from * nogil:
int MatSetNullSpace(PetscMat,PetscNullSpace)
int MatGetNullSpace(PetscMat,PetscNullSpace*)
+ int MatSetTransposeNullSpace(PetscMat,PetscNullSpace)
+ int MatGetTransposeNullSpace(PetscMat,PetscNullSpace*)
int MatSetNearNullSpace(PetscMat,PetscNullSpace)
int MatGetNearNullSpace(PetscMat,PetscNullSpace*)
diff --git a/src/PETSc/petscobj.pxi b/src/PETSc/petscobj.pxi
index 67155fe..8c24d84 100644
--- a/src/PETSc/petscobj.pxi
+++ b/src/PETSc/petscobj.pxi
@@ -14,6 +14,7 @@ cdef extern from * nogil:
int PetscObjectSetOptionsPrefix(PetscObject,char[])
int PetscObjectGetOptionsPrefix(PetscObject,char*[])
int PetscObjectSetFromOptions(PetscObject)
+ int PetscObjectViewFromOptions(PetscObject,PetscObject,char[])
int PetscObjectGetComm(PetscObject,MPI_Comm*)
int PetscObjectGetClassId(PetscObject,PetscClassId*)
@@ -122,10 +123,11 @@ cdef object PetscSetPyObj(PetscObject o, char name[], object p):
# --------------------------------------------------------------------
cdef extern from *:
+ ctypedef ssize_t Py_intptr_t
object PyLong_FromVoidPtr(void*)
-cdef inline long Object_toFortran(PetscObject o) nogil:
- return <long> o
+cdef inline Py_intptr_t Object_toFortran(PetscObject o) nogil:
+ return <Py_intptr_t> o
# --------------------------------------------------------------------
diff --git a/src/PETSc/petscopt.pxi b/src/PETSc/petscopt.pxi
index 3125d51..7d93e95 100644
--- a/src/PETSc/petscopt.pxi
+++ b/src/PETSc/petscopt.pxi
@@ -64,7 +64,7 @@ cdef getopt_Bool(PetscOptions opt, const_char *pre, const_char *name, object def
cdef PetscBool value = PETSC_FALSE
cdef PetscBool flag = PETSC_FALSE
CHKERR( PetscOptionsGetBool(opt, pre, name, &value, &flag) )
- if flag==PETSC_TRUE: return <bint>value
+ if flag==PETSC_TRUE: return toBool(value)
if deft is not None: return deft
raise KeyError(opt2str(pre, name))
diff --git a/src/PETSc/petscpc.pxi b/src/PETSc/petscpc.pxi
index 9669878..933b305 100644
--- a/src/PETSc/petscpc.pxi
+++ b/src/PETSc/petscpc.pxi
@@ -69,6 +69,10 @@ cdef extern from * nogil:
PC_MG_FULL
PC_MG_KASKADE
+ ctypedef enum PetscPCMGCycleType "PCMGCycleType":
+ PC_MG_CYCLE_V
+ PC_MG_CYCLE_W
+
ctypedef char* PetscPCGAMGType "const char*"
PetscPCGAMGType PCGAMGAGG
PetscPCGAMGType PCGAMGGEO
@@ -213,7 +217,8 @@ cdef extern from * nogil:
int PCMGSetX(PetscPC,PetscInt,PetscVec)
int PCMGSetR(PetscPC,PetscInt,PetscVec)
int PCMGGetLevels(PetscPC,PetscInt*)
- int PCMGSetCyclesOnLevel(PetscPC,PetscInt,PetscInt)
+ int PCMGSetCycleType(PetscPC,PetscPCMGCycleType)
+ int PCMGSetCycleTypeOnLevel(PetscPC,PetscInt,PetscPCMGCycleType)
# --------------------------------------------------------------------
diff --git a/src/PETSc/petscsnes.pxi b/src/PETSc/petscsnes.pxi
index 9835914..7353558 100644
--- a/src/PETSc/petscsnes.pxi
+++ b/src/PETSc/petscsnes.pxi
@@ -141,6 +141,14 @@ cdef extern from * nogil:
int SNESComputeJacobian(PetscSNES,PetscVec,PetscMat,PetscMat)
int SNESComputeObjective(PetscSNES,PetscVec,PetscReal*)
+ ctypedef int (*PetscSNESNGSFunction)(PetscSNES,
+ PetscVec,
+ PetscVec,
+ void*) except PETSC_ERR_PYTHON
+ int SNESSetNGS(PetscSNES,PetscSNESNGSFunction,void*)
+ int SNESGetNGS(PetscSNES,PetscSNESNGSFunction*,void**)
+ int SNESComputeNGS(PetscSNES,PetscVec,PetscVec)
+
int SNESSetNormSchedule(PetscSNES,PetscSNESNormSchedule)
int SNESGetNormSchedule(PetscSNES,PetscSNESNormSchedule*)
@@ -168,6 +176,8 @@ cdef extern from * nogil:
int SNESGetConvergedReason(PetscSNES,PetscSNESConvergedReason*)
int SNESSetIterationNumber(PetscSNES,PetscInt)
int SNESGetIterationNumber(PetscSNES,PetscInt*)
+ int SNESSetFunctionNorm(PetscSNES,PetscReal)
+ int SNESGetFunctionNorm(PetscSNES,PetscReal*)
int SNESGetLinearSolveIterations(PetscSNES,PetscInt*)
int SNESSetCountersReset(PetscSNES,PetscBool)
@@ -193,6 +203,8 @@ cdef extern from * nogil:
int SNESCompositeGetSNES(PetscSNES,PetscInt,PetscSNES*)
int SNESCompositeGetNumber(PetscSNES,PetscInt*)
+ int SNESNASMGetSNES(PetscSNES,PetscInt,PetscSNES*)
+ int SNESNASMGetNumber(PetscSNES,PetscInt*)
cdef extern from "custom.h" nogil:
int SNESSetUseMFFD(PetscSNES,PetscBool)
@@ -306,6 +318,24 @@ cdef int SNES_Objective(
# -----------------------------------------------------------------------------
+cdef int SNES_NGS(
+ PetscSNES snes,
+ PetscVec x,
+ PetscVec b,
+ void* ctx,
+ ) except PETSC_ERR_PYTHON with gil:
+ cdef SNES Snes = ref_SNES(snes)
+ cdef Vec Xvec = ref_Vec(x)
+ cdef Vec Bvec = ref_Vec(b)
+ cdef object context = Snes.get_attr('__ngs__')
+ if context is None and ctx != NULL: context = <object>ctx
+ assert context is not None and type(context) is tuple # sanity check
+ (ngs, args, kargs) = context
+ ngs(Snes, Xvec, Bvec, *args, **kargs)
+ return 0
+
+# -----------------------------------------------------------------------------
+
cdef int SNES_Converged(
PetscSNES snes,
PetscInt iters,
diff --git a/src/PETSc/petscsys.pxi b/src/PETSc/petscsys.pxi
index 97f6e40..0b3d7c9 100644
--- a/src/PETSc/petscsys.pxi
+++ b/src/PETSc/petscsys.pxi
@@ -1,18 +1,8 @@
cdef extern from * nogil:
- enum: PETSC_VERSION_MAJOR
- enum: PETSC_VERSION_MINOR
- enum: PETSC_VERSION_SUBMINOR
- enum: PETSC_VERSION_PATCH
- enum: PETSC_VERSION_RELEASE
- char* PETSC_VERSION_DATE
- char* PETSC_AUTHOR_INFO
-
- bint PETSC_VERSION_LT(int,int,int)
- bint PETSC_VERSION_LE(int,int,int)
- bint PETSC_VERSION_EQ(int,int,int)
- bint PETSC_VERSION_GE(int,int,int)
- bint PETSC_VERSION_GT(int,int,int)
+ const_char PETSC_AUTHOR_INFO[]
+ int PetscGetVersion(char[],size_t)
+ int PetscGetVersionNumber(PetscInt*,PetscInt*,PetscInt*,PetscInt*)
int PetscInitialize(int*,char***,char[],char[])
int PetscInitializeNoArguments()
@@ -33,6 +23,7 @@ cdef extern from * nogil:
PetscErrorHandlerFunction PetscIgnoreErrorHandler
int PetscPushErrorHandler(PetscErrorHandlerFunction,void*)
int PetscPopErrorHandler()
+ int PetscPopSignalHandler()
int PetscInfoAllow(PetscBool, char*)
int PetscErrorMessage(int,char*[],char**)
diff --git a/src/PETSc/petscts.pxi b/src/PETSc/petscts.pxi
index 0c3b86f..822960e 100644
--- a/src/PETSc/petscts.pxi
+++ b/src/PETSc/petscts.pxi
@@ -11,7 +11,7 @@ cdef extern from * nogil:
PetscTSType TSTHETA
PetscTSType TSALPHA
PetscTSType TSALPHA2
- PetscTSType TSGL
+ PetscTSType TSGLLE
PetscTSType TSSSP
PetscTSType TSARKIMEX
PetscTSType TSROSW
@@ -86,6 +86,24 @@ cdef extern from * nogil:
PetscMat,
void*) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscTSI2FunctionFunction)(PetscTS,
+ PetscReal,
+ PetscVec,
+ PetscVec,
+ PetscVec,
+ PetscVec,
+ void*) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscTSI2JacobianFunction)(PetscTS,
+ PetscReal,
+ PetscVec,
+ PetscVec,
+ PetscVec,
+ PetscReal,
+ PetscReal,
+ PetscMat,
+ PetscMat,
+ void*) except PETSC_ERR_PYTHON
+
ctypedef int (*PetscTSMonitorFunction)(PetscTS,
PetscInt,
PetscReal,
@@ -115,7 +133,8 @@ cdef extern from * nogil:
int TSSetSolution(PetscTS,PetscVec)
int TSGetSolution(PetscTS,PetscVec*)
- int TSGetSolveTime(PetscTS,PetscReal*)
+ int TS2SetSolution(PetscTS,PetscVec,PetscVec)
+ int TS2GetSolution(PetscTS,PetscVec*,PetscVec*)
int TSGetRHSFunction(PetscTS,PetscVec*,PetscTSFunctionFunction*,void*)
int TSGetRHSJacobian(PetscTS,PetscMat*,PetscMat*,PetscTSJacobianFunction*,void**)
@@ -125,6 +144,10 @@ cdef extern from * nogil:
int TSSetIJacobian(PetscTS,PetscMat,PetscMat,PetscTSIJacobianFunction,void*)
int TSGetIFunction(PetscTS,PetscVec*,PetscTSIFunctionFunction*,void*)
int TSGetIJacobian(PetscTS,PetscMat*,PetscMat*,PetscTSIJacobianFunction*,void**)
+ int TSSetI2Function(PetscTS,PetscVec,PetscTSI2FunctionFunction,void*)
+ int TSSetI2Jacobian(PetscTS,PetscMat,PetscMat,PetscTSI2JacobianFunction,void*)
+ int TSGetI2Function(PetscTS,PetscVec*,PetscTSI2FunctionFunction*,void**)
+ int TSGetI2Jacobian(PetscTS,PetscMat*,PetscMat*,PetscTSI2JacobianFunction*,void**)
int TSGetKSP(PetscTS,PetscKSP*)
int TSGetSNES(PetscTS,PetscSNES*)
@@ -138,20 +161,24 @@ cdef extern from * nogil:
int TSComputeRHSJacobianConstant(PetscTS,PetscReal,PetscVec,PetscMat,PetscMat,void*)
int TSComputeIFunction(PetscTS,PetscReal,PetscVec,PetscVec,PetscVec,PetscBool)
int TSComputeIJacobian(PetscTS,PetscReal,PetscVec,PetscVec,PetscReal,PetscMat,PetscMat,PetscBool)
+ int TSComputeI2Function(PetscTS,PetscReal,PetscVec,PetscVec,PetscVec,PetscVec)
+ int TSComputeI2Jacobian(PetscTS,PetscReal,PetscVec,PetscVec,PetscVec,PetscReal,PetscReal,PetscMat,PetscMat)
int TSSetTime(PetscTS,PetscReal)
int TSGetTime(PetscTS,PetscReal*)
int TSGetPrevTime(PetscTS,PetscReal*)
- int TSSetInitialTimeStep(PetscTS,PetscReal,PetscReal)
+ int TSGetSolveTime(PetscTS,PetscReal*)
int TSSetTimeStep(PetscTS,PetscReal)
int TSGetTimeStep(PetscTS,PetscReal*)
- int TSGetTimeStepNumber(PetscTS,PetscInt*)
- int TSSetDuration(PetscTS,PetscInt,PetscReal)
- int TSGetDuration(PetscTS,PetscInt*,PetscReal*)
+ int TSSetStepNumber(PetscTS,PetscInt)
+ int TSGetStepNumber(PetscTS,PetscInt*)
+ int TSSetMaxSteps(PetscTS,PetscInt)
+ int TSGetMaxSteps(PetscTS,PetscInt*)
+ int TSSetMaxTime(PetscTS,PetscReal)
+ int TSGetMaxTime(PetscTS,PetscReal*)
int TSSetExactFinalTime(PetscTS,PetscTSExactFinalTimeOption)
int TSSetConvergedReason(PetscTS,PetscTSConvergedReason)
int TSGetConvergedReason(PetscTS,PetscTSConvergedReason*)
- int TSGetTotalSteps(PetscTS,PetscInt*)
int TSGetSNESIterations(PetscTS,PetscInt*)
int TSGetKSPIterations(PetscTS,PetscInt*)
int TSGetStepRejections(PetscTS,PetscInt*)
@@ -166,6 +193,44 @@ cdef extern from * nogil:
int TSMonitorCancel(PetscTS)
int TSMonitor(PetscTS,PetscInt,PetscReal,PetscVec)
+ ctypedef int (*PetscTSAdjointR)(PetscTS,PetscReal,PetscVec,PetscVec,void*) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscTSAdjointDRDY)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscTSAdjointDRDP)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) except PETSC_ERR_PYTHON
+ ctypedef int (*PetscTSAdjointRHSJacobianFunction)(PetscTS,
+ PetscReal,
+ PetscVec,
+ PetscMat,
+ void*) except PETSC_ERR_PYTHON
+
+
+ int TSSetSaveTrajectory(PetscTS)
+ int TSSetCostGradients(PetscTS,PetscInt,PetscVec*,PetscVec*)
+ int TSGetCostGradients(PetscTS,PetscInt*,PetscVec**,PetscVec**)
+ int TSGetCostIntegral(PetscTS,PetscVec*)
+
+ int TSSetCostIntegrand(PetscTS,PetscInt,PetscVec,PetscTSAdjointR,PetscTSAdjointDRDY,PetscTSAdjointDRDP,PetscBool,void*)
+ int TSAdjointSetRHSJacobian(PetscTS,PetscMat,PetscTSAdjointRHSJacobianFunction,void*)
+ int TSComputeCostIntegrand(PetscTS,PetscReal,PetscVec,PetscVec)
+ int TSAdjointComputeRHSJacobian(PetscTS,PetscReal,PetscVec,PetscMat)
+
+ int TSAdjointSolve(PetscTS)
+ int TSAdjointSetSteps(PetscTS,PetscInt)
+ int TSAdjointStep(PetscTS)
+ int TSAdjointSetUp(PetscTS)
+ int TSAdjointComputeDRDPFunction(PetscTS,PetscReal,PetscVec,PetscVec*)
+ int TSAdjointComputeDRDYFunction(PetscTS,PetscReal,PetscVec,PetscVec*)
+ int TSAdjointCostIntegral(PetscTS)
+
+ int TSForwardSetSensitivities(PetscTS,PetscInt,PetscVec*,PetscInt,PetscVec*)
+ int TSForwardGetSensitivities(PetscTS,PetscInt*,PetscVec**,PetscInt*,PetscVec**)
+ int TSForwardSetIntegralGradients(PetscTS,PetscInt,PetscVec *,PetscVec *)
+ int TSForwardGetIntegralGradients(PetscTS,PetscInt*,PetscVec **,PetscVec **)
+ int TSForwardSetRHSJacobianP(PetscTS,PetscVec*,PetscTSCostIntegrandFunction,void*)
+ int TSForwardComputeRHSJacobianP(PetscTS,PetscReal,PetscVec,PetscVec*)
+ int TSForwardSetUp(PetscTS)
+ int TSForwardCostIntegral(PetscTS)
+ int TSForwardStep(PetscTS)
+
int TSSetPreStep(PetscTS, PetscTSPreStepFunction)
int TSSetPostStep(PetscTS, PetscTSPostStepFunction)
@@ -185,6 +250,19 @@ cdef extern from * nogil:
int TSAlphaSetParams(PetscTS,PetscReal,PetscReal,PetscReal)
int TSAlphaGetParams(PetscTS,PetscReal*,PetscReal*,PetscReal*)
+ ctypedef char* PetscTSRKType "const char*"
+ PetscTSRKType TSRK1FE
+ PetscTSRKType TSRK2A
+ PetscTSRKType TSRK3
+ PetscTSRKType TSRK3BS
+ PetscTSRKType TSRK4
+ PetscTSRKType TSRK5F
+ PetscTSRKType TSRK5DP
+ PetscTSRKType TSRK5BS
+
+ int TSRKGetType(PetscTS ts,PetscTSRKType*)
+ int TSRKSetType(PetscTS ts,PetscTSRKType)
+
cdef extern from "custom.h" nogil:
int TSSetTimeStepNumber(PetscTS,PetscInt)
@@ -283,6 +361,52 @@ cdef int TS_IJacobian(
jacobian(Ts, toReal(t), Xvec, XDvec, toReal(a), Jmat, Pmat, *args, **kargs)
return 0
+cdef int TS_I2Function(
+ PetscTS ts,
+ PetscReal t,
+ PetscVec x,
+ PetscVec xdot,
+ PetscVec xdotdot,
+ PetscVec f,
+ void* ctx,
+ ) except PETSC_ERR_PYTHON with gil:
+ cdef TS Ts = ref_TS(ts)
+ cdef Vec Xvec = ref_Vec(x)
+ cdef Vec XDvec = ref_Vec(xdot)
+ cdef Vec XDDvec = ref_Vec(xdotdot)
+ cdef Vec Fvec = ref_Vec(f)
+ cdef object context = Ts.get_attr('__i2function__')
+ if context is None and ctx != NULL: context = <object>ctx
+ assert context is not None and type(context) is tuple # sanity check
+ (function, args, kargs) = context
+ function(Ts, toReal(t), Xvec, XDvec, XDDvec, Fvec, *args, **kargs)
+ return 0
+
+cdef int TS_I2Jacobian(
+ PetscTS ts,
+ PetscReal t,
+ PetscVec x,
+ PetscVec xdot,
+ PetscVec xdotdot,
+ PetscReal v,
+ PetscReal a,
+ PetscMat J,
+ PetscMat P,
+ void* ctx,
+ ) except PETSC_ERR_PYTHON with gil:
+ cdef TS Ts = ref_TS(ts)
+ cdef Vec Xvec = ref_Vec(x)
+ cdef Vec XDvec = ref_Vec(xdot)
+ cdef Vec XDDvec = ref_Vec(xdotdot)
+ cdef Mat Jmat = ref_Mat(J)
+ cdef Mat Pmat = ref_Mat(P)
+ cdef object context = Ts.get_attr('__i2jacobian__')
+ if context is None and ctx != NULL: context = <object>ctx
+ assert context is not None and type(context) is tuple # sanity check
+ (jacobian, args, kargs) = context
+ jacobian(Ts, toReal(t), Xvec, XDvec, XDDvec, toReal(v), toReal(a), Jmat, Pmat, *args, **kargs)
+ return 0
+
# -----------------------------------------------------------------------------
cdef int TS_Monitor(
@@ -319,3 +443,74 @@ cdef int TS_PostStep(
return 0
# -----------------------------------------------------------------------------
+
+cdef int TSAdjoint_CostIntegrand(
+ PetscTS ts,
+ PetscReal t,
+ PetscVec y,
+ PetscVec r,
+ void* ctx,
+ ) except PETSC_ERR_PYTHON with gil:
+ cdef TS Ts = ref_TS(ts)
+ cdef Vec Yvec = ref_Vec(y)
+ cdef Vec Rvec = ref_Vec(r)
+ cdef object context = Ts.get_attr('__costintegrand__')
+ if context is None and ctx != NULL: context = <object>ctx
+ ((rfunction, _, _), args, kargs) = context
+ rfunction(Ts, toReal(t), Yvec, Rvec, *args, **kargs)
+ return 0
+
+cdef int TSAdjoint_CostIntegrand_DY(
+ PetscTS ts,
+ PetscReal t,
+ PetscVec y,
+ PetscVec drdy[],
+ void* ctx,
+ ) except PETSC_ERR_PYTHON with gil:
+ cdef TS Ts = ref_TS(ts)
+ cdef Vec Yvec = ref_Vec(y)
+ cdef PetscInt i = 0, n = 0
+ CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ cdef list vecs = [ref_Vec(drdy[i]) for i from 0 <= i < n]
+ cdef object context = Ts.get_attr('__costintegrand__')
+ if context is None and ctx != NULL: context = <object>ctx
+ ((_, drdyfunction, _), args, kargs) = context
+ drdyfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ return 0
+
+cdef int TSAdjoint_CostIntegrand_DP(
+ PetscTS ts,
+ PetscReal t,
+ PetscVec y,
+ PetscVec drdp[],
+ void* ctx,
+ ) except PETSC_ERR_PYTHON with gil:
+ cdef TS Ts = ref_TS(ts)
+ cdef Vec Yvec = ref_Vec(y)
+ cdef PetscInt i = 0, n = 0
+ CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ cdef list vecs = [ref_Vec(drdp[i]) for i from 0 <= i < n]
+ cdef object context = Ts.get_attr('__costintegrand__')
+ if context is None and ctx != NULL: context = <object>ctx
+ ((_, _, drdpfunction), args, kargs) = context
+ drdpfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ return 0
+
+cdef int TSAdjoint_RHSJacobian(
+ PetscTS ts,
+ PetscReal t,
+ PetscVec x,
+ PetscMat J,
+ void* ctx,
+ ) except PETSC_ERR_PYTHON with gil:
+ cdef TS Ts = ref_TS(ts)
+ cdef Vec Xvec = ref_Vec(x)
+ cdef Mat Jmat = ref_Mat(J)
+ cdef object context = Ts.get_attr('__adjointrhsjacobian__')
+ if context is None and ctx != NULL: context = <object>ctx
+ assert context is not None and type(context) is tuple # sanity check
+ (adjointjacobian, args, kargs) = context
+ adjointjacobian(Ts, toReal(t), Xvec, Jmat, *args, **kargs)
+ return 0
+
+# -----------------------------------------------------------------------------
diff --git a/src/PETSc/petscvec.pxi b/src/PETSc/petscvec.pxi
index 884dc3d..919a509 100644
--- a/src/PETSc/petscvec.pxi
+++ b/src/PETSc/petscvec.pxi
@@ -76,6 +76,7 @@ cdef extern from * nogil:
int VecSetValuesBlocked(PetscVec,PetscInt,PetscInt[],PetscScalar[],PetscInsertMode)
int VecSetLocalToGlobalMapping(PetscVec,PetscLGMap)
+ int VecGetLocalToGlobalMapping(PetscVec,PetscLGMap*)
int VecSetValueLocal(PetscVec,PetscInt,PetscScalar,PetscInsertMode)
int VecSetValuesLocal(PetscVec,PetscInt,PetscInt[],PetscScalar[],PetscInsertMode)
int VecSetValuesBlockedLocal(PetscVec,PetscInt,PetscInt[],PetscScalar[],PetscInsertMode)
@@ -418,7 +419,7 @@ cdef class _Vec_buffer:
cdef bint readonly
cdef bint hasarray
- def __cinit__(self, Vec vec not None, bint readonly=0):
+ def __cinit__(self, Vec vec, bint readonly=0):
cdef PetscVec v = vec.vec
CHKERR( PetscINCREF(<PetscObject*>&v) )
self.vec = v
@@ -537,7 +538,7 @@ cdef class _Vec_LocalForm:
cdef Vec gvec
cdef Vec lvec
- def __init__(self, Vec gvec not None):
+ def __init__(self, Vec gvec):
self.gvec = gvec
self.lvec = Vec()
diff --git a/src/PETSc/petscvwr.pxi b/src/PETSc/petscvwr.pxi
index 4327030..95878d3 100644
--- a/src/PETSc/petscvwr.pxi
+++ b/src/PETSc/petscvwr.pxi
@@ -8,7 +8,6 @@ cdef extern from * nogil:
PetscViewerType PETSCVIEWERDRAW
PetscViewerType PETSCVIEWERVU
PetscViewerType PETSCVIEWERMATHEMATICA
- PetscViewerType PETSCVIEWERNETCDF
PetscViewerType PETSCVIEWERHDF5
PetscViewerType PETSCVIEWERVTK
PetscViewerType PETSCVIEWERMATLAB
@@ -82,6 +81,18 @@ cdef extern from * nogil:
int PetscViewerPushFormat(PetscViewer,PetscViewerFormat)
int PetscViewerPopFormat(PetscViewer)
+ int PetscViewerASCIISetTab(PetscViewer,PetscInt)
+ int PetscViewerASCIIGetTab(PetscViewer,PetscInt*)
+ int PetscViewerASCIIAddTab(PetscViewer,PetscInt)
+ int PetscViewerASCIISubtractTab(PetscViewer,PetscInt)
+ int PetscViewerASCIIPushSynchronized(PetscViewer)
+ int PetscViewerASCIIPopSynchronized(PetscViewer)
+ int PetscViewerASCIIPushTab(PetscViewer)
+ int PetscViewerASCIIPopTab(PetscViewer)
+ int PetscViewerASCIIUseTabs(PetscViewer,PetscBool)
+ int PetscViewerASCIIPrintf(PetscViewer,const_char[],...)
+ int PetscViewerASCIISynchronizedPrintf(PetscViewer,const_char[],...)
+
int PetscViewerFileGetName(PetscViewer,char*[])
int PetscViewerFileSetName(PetscViewer,char[])
int PetscViewerFileGetMode(PetscViewer,PetscFileMode*)
diff --git a/src/__init__.py b/src/__init__.py
index a6868b9..857083c 100644
--- a/src/__init__.py
+++ b/src/__init__.py
@@ -21,7 +21,7 @@ communication.
"""
__author__ = 'Lisandro Dalcin'
-__version__ = '3.7.0'
+__version__ = '3.8.0'
__credits__ = 'PETSc Team <petsc-maint at mcs.anl.gov>'
# --------------------------------------------------------------------
@@ -61,3 +61,22 @@ def get_include():
return join(dirname(__file__), 'include')
# --------------------------------------------------------------------
+
+def get_config():
+ """Return a dictionary with information about PETSc."""
+ import sys, os.path as p
+ if sys.version_info[0] >= 3:
+ from io import StringIO
+ from configparser import ConfigParser
+ else:
+ from StringIO import StringIO
+ from ConfigParser import ConfigParser
+ filename = p.join(p.dirname(__file__), 'lib', 'petsc.cfg')
+ with open(filename) as fp:
+ stream = StringIO("[petsc]\n"+fp.read())
+ parser = ConfigParser()
+ parser.optionxform = str
+ parser.readfp(stream, filename)
+ return dict(parser.items('petsc'))
+
+# --------------------------------------------------------------------
diff --git a/src/include/compat/hdf5.h b/src/include/compat/hdf5.h
index d1224cd..ae94e4a 100644
--- a/src/include/compat/hdf5.h
+++ b/src/include/compat/hdf5.h
@@ -3,29 +3,21 @@
#include <petscviewerhdf5.h>
#if !defined(PETSC_HAVE_HDF5)
-#define PetscViewerHDF5Error do { \
+
+#define PetscViewerHDF5Error do { \
PetscFunctionBegin; \
- SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,__FUNCT__"() requires HDF5"); \
+ SETERRQ1(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() requires HDF5",PETSC_FUNCTION_NAME); \
PetscFunctionReturn(PETSC_ERR_SUP);} while (0)
-#undef __FUNCT__
-#define __FUNCT__ "PetscViewerHDF5PushGroup"
+
PetscErrorCode PetscViewerHDF5PushGroup(PETSC_UNUSED PetscViewer vw,PETSC_UNUSED const char g[]){PetscViewerHDF5Error;}
-#undef __FUNCT__
-#define __FUNCT__ "PetscViewerHDF5PopGroup"
PetscErrorCode PetscViewerHDF5PopGroup(PETSC_UNUSED PetscViewer vw){PetscViewerHDF5Error;}
-#undef __FUNCT__
-#define __FUNCT__ "PetscViewerHDF5GetGroup"
PetscErrorCode PetscViewerHDF5GetGroup(PETSC_UNUSED PetscViewer vw,PETSC_UNUSED const char *g[]){PetscViewerHDF5Error;}
-#undef __FUNCT__
-#define __FUNCT__ "PetscViewerHDF5SetTimestep"
PetscErrorCode PetscViewerHDF5SetTimestep(PETSC_UNUSED PetscViewer vw, PETSC_UNUSED PetscInt n){PetscViewerHDF5Error;}
-#undef __FUNCT__
-#define __FUNCT__ "PetscViewerHDF5GetTimestep"
PetscErrorCode PetscViewerHDF5GetTimestep(PETSC_UNUSED PetscViewer vw, PETSC_UNUSED PetscInt*n){PetscViewerHDF5Error;}
-#undef __FUNCT__
-#define __FUNCT__ "PetscViewerHDF5IncrementTimestep"
PetscErrorCode PetscViewerHDF5IncrementTimestep(PETSC_UNUSED PetscViewer vw){PetscViewerHDF5Error;}
+
#undef PetscViewerHDF5Error
+
#endif
#endif/*PETSC4PY_COMPAT_HDF5_H*/
diff --git a/src/include/compat/hypre.h b/src/include/compat/hypre.h
index 08e5816..6f8e01c 100644
--- a/src/include/compat/hypre.h
+++ b/src/include/compat/hypre.h
@@ -2,32 +2,22 @@
#define PETSC4PY_COMPAT_HYPRE_H
#if !defined(PETSC_HAVE_HYPRE)
+
#define PetscPCHYPREError do { \
PetscFunctionBegin; \
- SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,__FUNCT__"() requires HYPRE"); \
+ SETERRQ1(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() requires HYPRE",PETSC_FUNCTION_NAME); \
PetscFunctionReturn(PETSC_ERR_SUP);} while (0)
-#undef __FUNCT__
-#define __FUNCT__ "PCHYPREGetType"
+
PetscErrorCode PCHYPREGetType(PETSC_UNUSED PC pc,PETSC_UNUSED const char *name[]){PetscPCHYPREError;}
-#undef __FUNCT__
-#define __FUNCT__ "PCHYPRESetType"
PetscErrorCode PCHYPRESetType(PETSC_UNUSED PC pc,PETSC_UNUSED const char name[]){PetscPCHYPREError;}
-#undef __FUNCT__
-#define __FUNCT__ "PCHYPRESetDiscreteCurl"
PetscErrorCode PCHYPRESetDiscreteCurl(PETSC_UNUSED PC pc,PETSC_UNUSED Mat C){PetscPCHYPREError;}
-#undef __FUNCT__
-#define __FUNCT__ "PCHYPRESetDiscreteGradient"
PetscErrorCode PCHYPRESetDiscreteGradient(PETSC_UNUSED PC pc,PETSC_UNUSED Mat G){PetscPCHYPREError;}
-#undef __FUNCT__
-#define __FUNCT__ "PCHYPRESetAlphaPoissonMatrix"
PetscErrorCode PCHYPRESetAlphaPoissonMatrix(PETSC_UNUSED PC pc,PETSC_UNUSED Mat A){PetscPCHYPREError;}
-#undef __FUNCT__
-#define __FUNCT__ "PCHYPRESetBetaPoissonMatrix"
PetscErrorCode PCHYPRESetBetaPoissonMatrix(PETSC_UNUSED PC pc,PETSC_UNUSED Mat B){PetscPCHYPREError;}
-#undef __FUNCT__
-#define __FUNCT__ "PCHYPRESetEdgeConstantVectors"
PetscErrorCode PCHYPRESetEdgeConstantVectors(PETSC_UNUSED PC pc,PETSC_UNUSED Vec ozz,PETSC_UNUSED Vec zoz,PETSC_UNUSED Vec zzo){PetscPCHYPREError;}
+
#undef PetscPCHYPREError
+
#endif
#endif/*PETSC4PY_COMPAT_HYPRE_H*/
diff --git a/src/include/compat/mpi.h b/src/include/compat/mpi.h
index bf69bf6..9cb1771 100644
--- a/src/include/compat/mpi.h
+++ b/src/include/compat/mpi.h
@@ -3,6 +3,19 @@
#if defined(OPEN_MPI)
+/*
+ * The hackery below redefines the actuall calls to 'MPI_Init()' and
+ * 'MPI_Init_thread()' in order to preload the main MPI dynamic
+ * library with appropriate flags to 'dlopen()' ensuring global
+ * availability of library symbols.
+ */
+
+#if !defined(OPENMPI_DLOPEN_LIBMPI) && defined(OMPI_MAJOR_VERSION)
+#if OMPI_MAJOR_VERSION >= 3 && OMPI_MAJOR_VERSION < 10
+#define OPENMPI_DLOPEN_LIBMPI 0
+#endif
+#endif
+
#ifndef OPENMPI_DLOPEN_LIBMPI
#define OPENMPI_DLOPEN_LIBMPI 1
#endif
@@ -93,26 +106,48 @@ static void OPENMPI_dlopen_libmpi(void)
{
void *handle = 0;
int mode = RTLD_NOW | RTLD_GLOBAL;
+#if defined(__APPLE__)
+ /* macOS */
#ifdef RTLD_NOLOAD
mode |= RTLD_NOLOAD;
#endif
-#if defined(__CYGWIN__)
- if (!handle) handle = dlopen("cygmpi.dll", mode);
- if (!handle) handle = dlopen("mpi.dll", mode);
-#elif defined(__APPLE__)
- /* Mac OS X */
- if (!handle) handle = dlopen("libmpi.3.dylib", mode);
- if (!handle) handle = dlopen("libmpi.2.dylib", mode);
+ #if defined(OMPI_MAJOR_VERSION)
+ #if OMPI_MAJOR_VERSION == 3
+ if (!handle) handle = dlopen("libmpi.40.dylib", mode);
+ #elif OMPI_MAJOR_VERSION == 2
+ if (!handle) handle = dlopen("libmpi.20.dylib", mode);
+ #elif OMPI_MAJOR_VERSION == 1 && OMPI_MINOR_VERSION >= 10
+ if (!handle) handle = dlopen("libmpi.12.dylib", mode);
+ #elif OMPI_MAJOR_VERSION == 1 && OMPI_MINOR_VERSION >= 6
if (!handle) handle = dlopen("libmpi.1.dylib", mode);
+ #elif OMPI_MAJOR_VERSION == 1
if (!handle) handle = dlopen("libmpi.0.dylib", mode);
- if (!handle) handle = dlopen("libmpi.dylib", mode);
+ #endif
+ #endif
+ if (!handle) handle = dlopen("libmpi.dylib", mode);
#else
/* GNU/Linux and others */
- if (!handle) handle = dlopen("libmpi.so.3", mode);
- if (!handle) handle = dlopen("libmpi.so.2", mode);
+ #ifdef RTLD_NOLOAD
+ mode |= RTLD_NOLOAD;
+ #endif
+ #if defined(OMPI_MAJOR_VERSION)
+ #if OMPI_MAJOR_VERSION >= 10 /* IBM Spectrum MPI */
+ if (!handle) handle = dlopen("libmpi_ibm.so.2", mode);
+ if (!handle) handle = dlopen("libmpi_ibm.so.1", mode);
+ if (!handle) handle = dlopen("libmpi_ibm.so", mode);
+ #elif OMPI_MAJOR_VERSION == 3
+ if (!handle) handle = dlopen("libmpi.so.40", mode);
+ #elif OMPI_MAJOR_VERSION == 2
+ if (!handle) handle = dlopen("libmpi.so.20", mode);
+ #elif OMPI_MAJOR_VERSION == 1 && OMPI_MINOR_VERSION >= 10
+ if (!handle) handle = dlopen("libmpi.so.12", mode);
+ #elif OMPI_MAJOR_VERSION == 1 && OMPI_MINOR_VERSION >= 6
if (!handle) handle = dlopen("libmpi.so.1", mode);
+ #elif OMPI_MAJOR_VERSION == 1
if (!handle) handle = dlopen("libmpi.so.0", mode);
- if (!handle) handle = dlopen("libmpi.so", mode);
+ #endif
+ #endif
+ if (!handle) handle = dlopen("libmpi.so", mode);
#endif
}
diff --git a/src/include/compat/mumps.h b/src/include/compat/mumps.h
index dbc2e89..fbf3eee 100644
--- a/src/include/compat/mumps.h
+++ b/src/include/compat/mumps.h
@@ -3,35 +3,23 @@
#include <petscmat.h>
#if !defined(PETSC_HAVE_MUMPS)
-#define PetscMUMPSError do { \
+
+#define PetscMUMPSError do { \
PetscFunctionBegin; \
- SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,__FUNCT__"() requires MUMPS"); \
+ SETERRQ1(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() requires MUMPS",PETSC_FUNCTION_NAME); \
PetscFunctionReturn(PETSC_ERR_SUP);} while (0)
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsSetIcntl"
+
PetscErrorCode MatMumpsSetIcntl(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscInt ival){PetscMUMPSError;}
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsGetIcntl"
PetscErrorCode MatMumpsGetIcntl(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscInt *ival){PetscMUMPSError;}
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsSetCntl"
PetscErrorCode MatMumpsSetCntl(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscReal val){PetscMUMPSError;}
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsGetCntl"
PetscErrorCode MatMumpsGetCntl(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscReal *val){PetscMUMPSError;}
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsGetInfo"
PetscErrorCode MatMumpsGetInfo(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscInt *ival){PetscMUMPSError;}
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsGetInfog"
PetscErrorCode MatMumpsGetInfog(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscInt *ival){PetscMUMPSError;}
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsGetRinfo"
PetscErrorCode MatMumpsGetRinfo(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscReal *val){PetscMUMPSError;}
-#undef __FUNCT__
-#define __FUNCT__ "MatMumpsGetRinfog"
PetscErrorCode MatMumpsGetRinfog(PETSC_UNUSED Mat F,PETSC_UNUSED PetscInt icntl,PETSC_UNUSED PetscReal *val){PetscMUMPSError;}
+
#undef PetscMUMPSError
+
#endif
#endif/*PETSC4PY_COMPAT_MUMPS_H*/
diff --git a/src/include/compat/tao.h b/src/include/compat/tao.h
index b4b70ee..b31a8dc 100644
--- a/src/include/compat/tao.h
+++ b/src/include/compat/tao.h
@@ -4,19 +4,11 @@
#define PetscTaoError do { \
PetscFunctionBegin; \
- SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,__FUNCT__"() not supported with complex scalars"); \
+ SETERRQ1(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() not supported with complex scalars",PETSC_FUNCTION_NAME); \
PetscFunctionReturn(PETSC_ERR_SUP);} while (0)
-#undef __FUNCT__
-#define __FUNCT__ "TaoLMVMSetH0"
PetscErrorCode TaoLMVMSetH0(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat mat) {PetscTaoError;}
-
-#undef __FUNCT__
-#define __FUNCT__ "TaoLMVMGetH0"
PetscErrorCode TaoLMVMGetH0(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat *mat) {PetscTaoError;}
-
-#undef __FUNCT__
-#define __FUNCT__ "TaoLMVMGetH0KSP"
PetscErrorCode TaoLMVMGetH0KSP(PETSC_UNUSED Tao tao,PETSC_UNUSED KSP *ksp) {PetscTaoError;}
#undef PetscTaoError
diff --git a/src/include/custom.h b/src/include/custom.h
index d4b544d..a036490 100644
--- a/src/include/custom.h
+++ b/src/include/custom.h
@@ -1,9 +1,6 @@
#ifndef PETSC4PY_CUSTOM_H
#define PETSC4PY_CUSTOM_H
-#undef __FUNCT__
-#define __FUNCT__ "<petsc4py.PETSc>"
-
#include "petsc/private/vecimpl.h"
#include "petsc/private/matimpl.h"
#include "petsc/private/kspimpl.h"
@@ -28,11 +25,13 @@ typedef PetscErrorCode (*PetscErrorHandlerFunction)
/* ---------------------------------------------------------------- */
+#if !defined(PETSC_USE_LOG)
+static PetscStageLog petsc_stageLog = NULL;
+#endif
+
#define PetscCLASSID(stageLog,index) \
((stageLog)->classLog->classInfo[(index)].classid)
-#undef __FUNCT__
-#define __FUNCT__ "PetscLogStageFindId"
static PetscErrorCode
PetscLogStageFindId(const char name[], PetscLogStage *stageid)
{
@@ -53,8 +52,6 @@ PetscLogStageFindId(const char name[], PetscLogStage *stageid)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "PetscLogClassFindId"
static PetscErrorCode
PetscLogClassFindId(const char name[], PetscClassId *classid)
{
@@ -76,8 +73,6 @@ PetscLogClassFindId(const char name[], PetscClassId *classid)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "PetscLogEventFindId"
static PetscErrorCode
PetscLogEventFindId(const char name[], PetscLogEvent *eventid)
{
@@ -98,8 +93,6 @@ PetscLogEventFindId(const char name[], PetscLogEvent *eventid)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "PetscLogStageFindName"
static PetscErrorCode
PetscLogStageFindName(PetscLogStage stageid,
const char *name[])
@@ -115,8 +108,6 @@ PetscLogStageFindName(PetscLogStage stageid,
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "PetscLogClassFindName"
static PetscErrorCode
PetscLogClassFindName(PetscClassId classid,
const char *name[])
@@ -136,8 +127,6 @@ PetscLogClassFindName(PetscClassId classid,
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "PetscLogEventFindName"
static PetscErrorCode
PetscLogEventFindName(PetscLogEvent eventid,
const char *name[])
@@ -153,12 +142,33 @@ PetscLogEventFindName(PetscLogEvent eventid,
PetscFunctionReturn(0);
}
+#if !defined(PETSC_USE_LOG)
+static PetscErrorCode
+PetscLogEventGetPerfInfo(int stage,PetscLogEvent event,PetscEventPerfInfo *info)
+{
+ PetscErrorCode ierr;
+ PetscFunctionBegin;
+ PetscValidPointer(info,3);
+ (void)stage; (void)event; /* unused */
+ ierr = PetscMemzero(info,sizeof(PetscEventPerfInfo));CHKERRQ(ierr);
+ PetscFunctionReturn(0);
+}
+#endif
+
/* ---------------------------------------------------------------- */
-#if !defined(PETSC_HAVE_CUSP)
+#if defined(PETSC_HAVE_CUSP)
+
+PETSC_EXTERN PetscErrorCode VecCUSPGetCUDAArrayRead(Vec,PetscScalar**);
+PETSC_EXTERN PetscErrorCode VecCUSPGetCUDAArrayWrite(Vec,PetscScalar**);
+PETSC_EXTERN PetscErrorCode VecCUSPGetCUDAArrayReadWrite(Vec,PetscScalar**);
+
+PETSC_EXTERN PetscErrorCode VecCUSPRestoreCUDAArrayRead(Vec,PetscScalar**);
+PETSC_EXTERN PetscErrorCode VecCUSPRestoreCUDAArrayWrite(Vec,PetscScalar**);
+PETSC_EXTERN PetscErrorCode VecCUSPRestoreCUDAArrayReadWrite(Vec,PetscScalar**);
+
+#else
-#undef __FUNCT__
-#define __FUNCT__ "VecCUSPGetCUDAArray"
PETSC_STATIC_INLINE PetscErrorCode
VecCUSPGetCUDAArray(Vec v,PetscScalar **a)
{
@@ -166,15 +176,13 @@ VecCUSPGetCUDAArray(Vec v,PetscScalar **a)
PetscValidHeaderSpecific(v,VEC_CLASSID,1);
PetscValidType(v,1);
PetscValidPointer(a,2);
- SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,__FUNCT__"() requires CUSP");
+ SETERRQ1(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() requires CUSP",PETSC_FUNCTION_NAME);
PetscFunctionReturn(PETSC_ERR_SUP);
}
#define VecCUSPGetCUDAArrayRead VecCUSPGetCUDAArray
#define VecCUSPGetCUDAArrayWrite VecCUSPGetCUDAArray
#define VecCUSPGetCUDAArrayReadWrite VecCUSPGetCUDAArray
-#undef __FUNCT__
-#define __FUNCT__ "VecCUSPRestoreCUDAArray"
PETSC_STATIC_INLINE PetscErrorCode
VecCUSPRestoreCUDAArray(Vec v,PetscScalar **a)
{
@@ -182,7 +190,7 @@ VecCUSPRestoreCUDAArray(Vec v,PetscScalar **a)
PetscValidHeaderSpecific(v,VEC_CLASSID,1);
PetscValidType(v,1);
PetscValidPointer(a,2);
- SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,__FUNCT__"() requires CUSP");
+ SETERRQ1(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() requires CUSP",PETSC_FUNCTION_NAME);
PetscFunctionReturn(PETSC_ERR_SUP);
}
#define VecCUSPRestoreCUDAArrayRead VecCUSPRestoreCUDAArray
@@ -191,8 +199,6 @@ VecCUSPRestoreCUDAArray(Vec v,PetscScalar **a)
#endif
-#undef __FUNCT__
-#define __FUNCT__ "VecStrideSum"
PETSC_STATIC_INLINE PetscErrorCode
VecStrideSum(Vec v, PetscInt start, PetscScalar *a)
{
@@ -224,8 +230,6 @@ VecStrideSum(Vec v, PetscInt start, PetscScalar *a)
/* ---------------------------------------------------------------- */
PETSC_STATIC_INLINE
-#undef __FUNCT__
-#define __FUNCT__ "MatIsPreallocated"
PetscErrorCode MatIsPreallocated(Mat A,PetscBool *flag)
{
PetscFunctionBegin;
@@ -236,8 +240,6 @@ PetscErrorCode MatIsPreallocated(Mat A,PetscBool *flag)
}
PETSC_STATIC_INLINE
-#undef __FUNCT__
-#define __FUNCT__ "MatHasPreallocationAIJ"
PetscErrorCode MatHasPreallocationAIJ(Mat A,PetscBool *aij,PetscBool *baij,PetscBool *sbaij)
{
void (*f)(void) = 0;
@@ -268,8 +270,6 @@ typedef PetscErrorCode MatNullSpaceFunction(MatNullSpace,Vec,void*);
/* ---------------------------------------------------------------- */
-#undef __FUNCT__
-#define __FUNCT__ "MatFactorInfoDefaults"
static PetscErrorCode
MatFactorInfoDefaults(PetscBool incomplete,PetscBool cholesky,
MatFactorInfo *info)
@@ -309,8 +309,6 @@ MatFactorInfoDefaults(PetscBool incomplete,PetscBool cholesky,
/* ---------------------------------------------------------------- */
-#undef __FUNCT__
-#define __FUNCT__ "KSPSetIterationNumber"
static PetscErrorCode
KSPSetIterationNumber(KSP ksp, PetscInt its)
{
@@ -322,8 +320,6 @@ KSPSetIterationNumber(KSP ksp, PetscInt its)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "KSPSetResidualNorm"
static PetscErrorCode
KSPSetResidualNorm(KSP ksp, PetscReal rnorm)
{
@@ -335,8 +331,6 @@ KSPSetResidualNorm(KSP ksp, PetscReal rnorm)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "KSPConvergenceTestCall"
static PetscErrorCode
KSPConvergenceTestCall(KSP ksp, PetscInt its, PetscReal rnorm, KSPConvergedReason *reason)
{
@@ -352,8 +346,6 @@ KSPConvergenceTestCall(KSP ksp, PetscInt its, PetscReal rnorm, KSPConvergedReaso
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "KSPSetConvergedReason"
static PetscErrorCode
KSPSetConvergedReason(KSP ksp, KSPConvergedReason reason)
{
@@ -365,8 +357,6 @@ KSPSetConvergedReason(KSP ksp, KSPConvergedReason reason)
/* ---------------------------------------------------------------- */
-#undef __FUNCT__
-#define __FUNCT__ "SNESConvergenceTestCall"
static PetscErrorCode
SNESConvergenceTestCall(SNES snes, PetscInt its,
PetscReal xnorm, PetscReal ynorm, PetscReal fnorm,
@@ -388,8 +378,6 @@ SNESConvergenceTestCall(SNES snes, PetscInt its,
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "SNESGetUseMFFD"
static PetscErrorCode
SNESGetUseMFFD(SNES snes,PetscBool *flag)
{
@@ -406,8 +394,6 @@ SNESGetUseMFFD(SNES snes,PetscBool *flag)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "SNESSetUseMFFD"
static PetscErrorCode
SNESSetUseMFFD(SNES snes,PetscBool flag)
{
@@ -459,8 +445,6 @@ SNESSetUseMFFD(SNES snes,PetscBool flag)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "SNESGetUseFDColoring"
static PetscErrorCode
SNESGetUseFDColoring(SNES snes,PetscBool *flag)
{
@@ -475,8 +459,6 @@ SNESGetUseFDColoring(SNES snes,PetscBool *flag)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "SNESSetUseFDColoring"
static PetscErrorCode
SNESSetUseFDColoring(SNES snes,PetscBool flag)
{
@@ -514,21 +496,6 @@ SNESSetUseFDColoring(SNES snes,PetscBool flag)
/* ---------------------------------------------------------------- */
-#undef __FUNCT__
-#define __FUNCT__ "TSSetTimeStepNumber"
-static PetscErrorCode
-TSSetTimeStepNumber(TS ts, PetscInt step)
-{
- PetscFunctionBegin;
- PetscValidHeaderSpecific(ts,TS_CLASSID,1);
- ts->steps = step;
- PetscFunctionReturn(0);
-}
-
-/* ---------------------------------------------------------------- */
-
-#undef __FUNCT__
-#define __FUNCT__ "DMDACreateND"
static PetscErrorCode
DMDACreateND(MPI_Comm comm,
PetscInt dim,PetscInt dof,
@@ -558,9 +525,6 @@ DMDACreateND(MPI_Comm comm,
/* ---------------------------------------------------------------- */
-#undef __FUNCT__
-#define __FUNCT__ "<petsc4py.PETSc>"
-
#endif/* PETSC4PY_CUSTOM_H*/
/*
diff --git a/src/include/initpkg.h b/src/include/initpkg.h
index 4071f28..300cd42 100644
--- a/src/include/initpkg.h
+++ b/src/include/initpkg.h
@@ -1,7 +1,5 @@
/* ------------------------------------------------------------------------- */
-#undef __FUNCT__
-#define __FUNCT__ "PetscInitializePackageAll"
static PetscErrorCode PetscInitializePackageAll(void)
{
PetscErrorCode ierr;
@@ -23,8 +21,6 @@ static PetscErrorCode PetscInitializePackageAll(void)
ierr = PetscSFInitializePackage();CHKERRQ(ierr);
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "<petsc4py.PETSc>"
/* ------------------------------------------------------------------------- */
diff --git a/src/include/petsc4py/PETSc.pxd b/src/include/petsc4py/PETSc.pxd
index a268b3f..2e13f40 100644
--- a/src/include/petsc4py/PETSc.pxd
+++ b/src/include/petsc4py/PETSc.pxd
@@ -65,6 +65,9 @@ cdef extern from "petsc.h":
struct _p_PetscPartitioner
ctypedef _p_PetscPartitioner* PetscPartitioner "PetscPartitioner"
+ struct _p_SNESLineSearch
+ ctypedef _p_SNESLineSearch* PetscSNESLineSearch "SNESLineSearch"
+
# --------------------------------------------------------------------
ctypedef public api class Comm [
diff --git a/src/include/petsc4py/petsc4py.PETSc.h b/src/include/petsc4py/petsc4py.PETSc.h
index dc55231..af1fea4 100644
--- a/src/include/petsc4py/petsc4py.PETSc.h
+++ b/src/include/petsc4py/petsc4py.PETSc.h
@@ -1,4 +1,4 @@
-/* Generated by Cython 0.24 */
+/* Generated by Cython 0.27.1 */
#ifndef __PYX_HAVE__petsc4py__PETSc
#define __PYX_HAVE__petsc4py__PETSc
@@ -24,7 +24,7 @@ struct PyPetscAOObject;
struct PyPetscDMObject;
struct PyPetscPartitionerObject;
-/* "petsc4py/PETSc.pxd":70
+/* "petsc4py/PETSc.pxd":73
* # --------------------------------------------------------------------
*
* ctypedef public api class Comm [ # <<<<<<<<<<<<<<
@@ -39,7 +39,7 @@ struct PyPetscCommObject {
};
typedef struct PyPetscCommObject PyPetscCommObject;
-/* "petsc4py/PETSc.pxd":78
+/* "petsc4py/PETSc.pxd":81
* cdef object base
*
* ctypedef public api class Object [ # <<<<<<<<<<<<<<
@@ -56,7 +56,7 @@ struct PyPetscObjectObject {
};
typedef struct PyPetscObjectObject PyPetscObjectObject;
-/* "petsc4py/PETSc.pxd":90
+/* "petsc4py/PETSc.pxd":93
* cdef object get_dict(self)
*
* ctypedef public api class Viewer(Object) [ # <<<<<<<<<<<<<<
@@ -69,7 +69,7 @@ struct PyPetscViewerObject {
};
typedef struct PyPetscViewerObject PyPetscViewerObject;
-/* "petsc4py/PETSc.pxd":96
+/* "petsc4py/PETSc.pxd":99
* cdef PetscViewer vwr
*
* ctypedef public api class Random(Object) [ # <<<<<<<<<<<<<<
@@ -82,7 +82,7 @@ struct PyPetscRandomObject {
};
typedef struct PyPetscRandomObject PyPetscRandomObject;
-/* "petsc4py/PETSc.pxd":102
+/* "petsc4py/PETSc.pxd":105
* cdef PetscRandom rnd
*
* ctypedef public api class IS(Object) [ # <<<<<<<<<<<<<<
@@ -95,7 +95,7 @@ struct PyPetscISObject {
};
typedef struct PyPetscISObject PyPetscISObject;
-/* "petsc4py/PETSc.pxd":108
+/* "petsc4py/PETSc.pxd":111
* cdef PetscIS iset
*
* ctypedef public api class LGMap(Object) [ # <<<<<<<<<<<<<<
@@ -108,7 +108,7 @@ struct PyPetscLGMapObject {
};
typedef struct PyPetscLGMapObject PyPetscLGMapObject;
-/* "petsc4py/PETSc.pxd":114
+/* "petsc4py/PETSc.pxd":117
* cdef PetscLGMap lgm
*
* ctypedef public api class SF(Object) [ # <<<<<<<<<<<<<<
@@ -121,7 +121,7 @@ struct PyPetscSFObject {
};
typedef struct PyPetscSFObject PyPetscSFObject;
-/* "petsc4py/PETSc.pxd":120
+/* "petsc4py/PETSc.pxd":123
* cdef PetscSF sf
*
* ctypedef public api class Vec(Object) [ # <<<<<<<<<<<<<<
@@ -134,7 +134,7 @@ struct PyPetscVecObject {
};
typedef struct PyPetscVecObject PyPetscVecObject;
-/* "petsc4py/PETSc.pxd":126
+/* "petsc4py/PETSc.pxd":129
* cdef PetscVec vec
*
* ctypedef public api class Scatter(Object) [ # <<<<<<<<<<<<<<
@@ -147,7 +147,7 @@ struct PyPetscScatterObject {
};
typedef struct PyPetscScatterObject PyPetscScatterObject;
-/* "petsc4py/PETSc.pxd":132
+/* "petsc4py/PETSc.pxd":135
* cdef PetscScatter sct
*
* ctypedef public api class Section(Object) [ # <<<<<<<<<<<<<<
@@ -160,7 +160,7 @@ struct PyPetscSectionObject {
};
typedef struct PyPetscSectionObject PyPetscSectionObject;
-/* "petsc4py/PETSc.pxd":138
+/* "petsc4py/PETSc.pxd":141
* cdef PetscSection sec
*
* ctypedef public api class Mat(Object) [ # <<<<<<<<<<<<<<
@@ -173,7 +173,7 @@ struct PyPetscMatObject {
};
typedef struct PyPetscMatObject PyPetscMatObject;
-/* "petsc4py/PETSc.pxd":144
+/* "petsc4py/PETSc.pxd":147
* cdef PetscMat mat
*
* ctypedef public api class NullSpace(Object) [ # <<<<<<<<<<<<<<
@@ -186,7 +186,7 @@ struct PyPetscNullSpaceObject {
};
typedef struct PyPetscNullSpaceObject PyPetscNullSpaceObject;
-/* "petsc4py/PETSc.pxd":150
+/* "petsc4py/PETSc.pxd":153
* cdef PetscNullSpace nsp
*
* ctypedef public api class PC(Object) [ # <<<<<<<<<<<<<<
@@ -199,7 +199,7 @@ struct PyPetscPCObject {
};
typedef struct PyPetscPCObject PyPetscPCObject;
-/* "petsc4py/PETSc.pxd":156
+/* "petsc4py/PETSc.pxd":159
* cdef PetscPC pc
*
* ctypedef public api class KSP(Object) [ # <<<<<<<<<<<<<<
@@ -212,7 +212,7 @@ struct PyPetscKSPObject {
};
typedef struct PyPetscKSPObject PyPetscKSPObject;
-/* "petsc4py/PETSc.pxd":162
+/* "petsc4py/PETSc.pxd":165
* cdef PetscKSP ksp
*
* ctypedef public api class SNES(Object) [ # <<<<<<<<<<<<<<
@@ -225,7 +225,7 @@ struct PyPetscSNESObject {
};
typedef struct PyPetscSNESObject PyPetscSNESObject;
-/* "petsc4py/PETSc.pxd":168
+/* "petsc4py/PETSc.pxd":171
* cdef PetscSNES snes
*
* ctypedef public api class TS(Object) [ # <<<<<<<<<<<<<<
@@ -238,7 +238,7 @@ struct PyPetscTSObject {
};
typedef struct PyPetscTSObject PyPetscTSObject;
-/* "petsc4py/PETSc.pxd":174
+/* "petsc4py/PETSc.pxd":177
* cdef PetscTS ts
*
* ctypedef public api class TAO(Object) [ # <<<<<<<<<<<<<<
@@ -251,7 +251,7 @@ struct PyPetscTAOObject {
};
typedef struct PyPetscTAOObject PyPetscTAOObject;
-/* "petsc4py/PETSc.pxd":180
+/* "petsc4py/PETSc.pxd":183
* cdef PetscTAO tao
*
* ctypedef public api class AO(Object) [ # <<<<<<<<<<<<<<
@@ -264,7 +264,7 @@ struct PyPetscAOObject {
};
typedef struct PyPetscAOObject PyPetscAOObject;
-/* "petsc4py/PETSc.pxd":186
+/* "petsc4py/PETSc.pxd":189
* cdef PetscAO ao
*
* ctypedef public api class DM(Object) [ # <<<<<<<<<<<<<<
@@ -277,7 +277,7 @@ struct PyPetscDMObject {
};
typedef struct PyPetscDMObject PyPetscDMObject;
-/* "petsc4py/PETSc.pxd":192
+/* "petsc4py/PETSc.pxd":195
* cdef PetscDM dm
*
* ctypedef public api class Partitioner(Object) [ # <<<<<<<<<<<<<<
@@ -327,6 +327,9 @@ __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscPartitioner_Type;
#endif /* !__PYX_HAVE_API__petsc4py__PETSc */
+/* WARNING: the interface of the module init function changed in CPython 3.5. */
+/* It now returns a PyModuleDef instance instead of a PyModule instance. */
+
#if PY_MAJOR_VERSION < 3
PyMODINIT_FUNC initPETSc(void);
#else
diff --git a/src/include/petsc4py/petsc4py.PETSc_api.h b/src/include/petsc4py/petsc4py.PETSc_api.h
index 46b6589..b99af72 100644
--- a/src/include/petsc4py/petsc4py.PETSc_api.h
+++ b/src/include/petsc4py/petsc4py.PETSc_api.h
@@ -1,4 +1,4 @@
-/* Generated by Cython 0.24 */
+/* Generated by Cython 0.27.1 */
#ifndef __PYX_HAVE_API__petsc4py__PETSc
#define __PYX_HAVE_API__petsc4py__PETSc
diff --git a/src/include/petsc4py/petsc4py.i b/src/include/petsc4py/petsc4py.i
index ef90150..58e2781 100644
--- a/src/include/petsc4py/petsc4py.i
+++ b/src/include/petsc4py/petsc4py.i
@@ -72,12 +72,12 @@ Py##Pkg##_ChkErrQ($1); %set_output(VOID_Object);
/* PetscInt */
/* -------- */
-%fragment(SWIG_From_frag(Petsc64bitInt),"header",
+%fragment(SWIG_From_frag(PetscInt64),"header",
fragment=SWIG_From_frag(long long),
fragment=SWIG_From_frag(long))
{
SWIGINTERN SWIG_Object
-SWIG_From_dec(Petsc64bitInt)(Petsc64bitInt val) {
+SWIG_From_dec(PetscInt64)(PetscInt64 val) {
%#if PETSC_SIZEOF_LONG == 8
return SWIG_From(long)(%numeric_cast(val,long));
%#else
@@ -85,37 +85,37 @@ SWIG_From_dec(Petsc64bitInt)(Petsc64bitInt val) {
%#endif
}
}
-%fragment(SWIG_AsVal_frag(Petsc64bitInt),"header",
+%fragment(SWIG_AsVal_frag(PetscInt64),"header",
fragment=SWIG_AsVal_frag(long long),
fragment=SWIG_AsVal_frag(long))
{
SWIGINTERN int
-SWIG_AsVal_dec(Petsc64bitInt)(SWIG_Object obj, Petsc64bitInt *val) {
+SWIG_AsVal_dec(PetscInt64)(SWIG_Object obj, PetscInt64 *val) {
%#if PETSC_SIZEOF_LONG == 8
long v; int res = SWIG_AsVal(long)(obj, &v);
%#else
long long v; int res = SWIG_AsVal(long long)(obj, &v);
%#endif
- if (SWIG_IsOK(res) && val) if (val) *val = %numeric_cast(v,Petsc64bitInt);
+ if (SWIG_IsOK(res) && val) if (val) *val = %numeric_cast(v,PetscInt64);
return res;
}
}
%fragment(SWIG_From_frag(PetscInt),"header",
- fragment=SWIG_From_frag(Petsc64bitInt),
+ fragment=SWIG_From_frag(PetscInt64),
fragment=SWIG_From_frag(int))
{
%#if defined(PETSC_USE_64BIT_INDICES)
-%define_as(SWIG_From(PetscInt), SWIG_From(Petsc64bitInt))
+%define_as(SWIG_From(PetscInt), SWIG_From(PetscInt64))
%#else
%define_as(SWIG_From(PetscInt), SWIG_From(int))
%#endif
}
%fragment(SWIG_AsVal_frag(PetscInt),"header",
- fragment=SWIG_AsVal_frag(Petsc64bitInt),
+ fragment=SWIG_AsVal_frag(PetscInt64),
fragment=SWIG_AsVal_frag(int))
{
%#if defined(PETSC_USE_64BIT_INDICES)
-%define_as(SWIG_AsVal(PetscInt), SWIG_AsVal(Petsc64bitInt))
+%define_as(SWIG_AsVal(PetscInt), SWIG_AsVal(PetscInt64))
%#else
%define_as(SWIG_AsVal(PetscInt), SWIG_AsVal(int))
%#endif
diff --git a/src/lib/__init__.py b/src/lib/__init__.py
index 19e4c15..7e02763 100644
--- a/src/lib/__init__.py
+++ b/src/lib/__init__.py
@@ -60,8 +60,8 @@ def Import(pkg, name, path, arch):
return module
# import extension module from 'path/arch' directory
pathlist = [os.path.join(path, arch)]
- fo, fn, stuff = imp.find_module(name, pathlist)
- module = imp.load_module(fullname, fo, fn, stuff)
+ f, fn, info = imp.find_module(name, pathlist)
+ with f: module = imp.load_module(fullname, f, fn, info)
module.__arch__ = arch # save arch value
setattr(sys.modules[pkg], name, module)
return module
diff --git a/src/libpetsc4py/custom.h b/src/libpetsc4py/custom.h
index 93e228d..974ec99 100644
--- a/src/libpetsc4py/custom.h
+++ b/src/libpetsc4py/custom.h
@@ -5,12 +5,8 @@
#include "petsc/private/snesimpl.h"
#include "petsc/private/tsimpl.h"
-EXTERN_C_BEGIN
-extern PetscErrorCode (*PetscPythonMonitorSet_C)(PetscObject,const char*);
-EXTERN_C_END
+PETSC_EXTERN PetscErrorCode (*PetscPythonMonitorSet_C)(PetscObject,const char*);
-#undef __FUNCT__
-#define __FUNCT__ "KSPLogHistory"
PETSC_STATIC_INLINE
PetscErrorCode KSPLogHistory(KSP ksp,PetscReal rnorm)
{
@@ -21,8 +17,6 @@ PetscErrorCode KSPLogHistory(KSP ksp,PetscReal rnorm)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "SNESLogHistory"
PETSC_STATIC_INLINE
PetscErrorCode SNESLogHistory(SNES snes,PetscReal rnorm,PetscInt lits)
{
@@ -33,8 +27,6 @@ PetscErrorCode SNESLogHistory(SNES snes,PetscReal rnorm,PetscInt lits)
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "KSPConverged"
PETSC_STATIC_INLINE
PetscErrorCode KSPConverged(KSP ksp,
PetscInt iter,PetscReal rnorm,
@@ -60,8 +52,6 @@ PetscErrorCode KSPConverged(KSP ksp,
PetscFunctionReturn(0);
}
-#undef __FUNCT__
-#define __FUNCT__ "SNESConverged"
PETSC_STATIC_INLINE
PetscErrorCode SNESConverged(SNES snes,
PetscInt iter,PetscReal xnorm,PetscReal ynorm,PetscReal fnorm,
@@ -96,6 +86,8 @@ PetscErrorCode SNESConverged(SNES snes,
#if PY_MAJOR_VERSION < 3
PyMODINIT_FUNC initlibpetsc4py(void);
#else
+#undef CYTHON_PEP489_MULTI_PHASE_INIT
+#define CYTHON_PEP489_MULTI_PHASE_INIT 0
PyMODINIT_FUNC PyInit_libpetsc4py(void);
static void initlibpetsc4py(void)
{
@@ -108,6 +100,3 @@ static void initlibpetsc4py(void)
Py_DECREF(m);
}
#endif
-
-#undef __FUNCT__
-#define __FUNCT__ "<libpetsc4py>"
diff --git a/src/libpetsc4py/libpetsc4py.c b/src/libpetsc4py/libpetsc4py.c
index acbe5f9..08d7909 100644
--- a/src/libpetsc4py/libpetsc4py.c
+++ b/src/libpetsc4py/libpetsc4py.c
@@ -1,13 +1,14 @@
-/* Generated by Cython 0.24 */
+/* Generated by Cython 0.27.1 */
#define PY_SSIZE_T_CLEAN
#include "Python.h"
#ifndef Py_PYTHON_H
#error Python headers needed to compile C extensions, please install development version of Python.
-#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03020000)
- #error Cython requires Python 2.6+ or Python 3.2+.
+#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
+ #error Cython requires Python 2.6+ or Python 3.3+.
#else
-#define CYTHON_ABI "0_24"
+#define CYTHON_ABI "0_27_1"
+#define CYTHON_FUTURE_DIVISION 0
#include <stddef.h>
#ifndef offsetof
#define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
@@ -29,6 +30,12 @@
#ifndef DL_EXPORT
#define DL_EXPORT(t) t
#endif
+#define __PYX_COMMA ,
+#ifndef HAVE_LONG_LONG
+ #if PY_VERSION_HEX >= 0x02070000
+ #define HAVE_LONG_LONG
+ #endif
+#endif
#ifndef PY_LONG_LONG
#define PY_LONG_LONG LONG_LONG
#endif
@@ -37,13 +44,138 @@
#endif
#ifdef PYPY_VERSION
#define CYTHON_COMPILING_IN_PYPY 1
+ #define CYTHON_COMPILING_IN_PYSTON 0
+ #define CYTHON_COMPILING_IN_CPYTHON 0
+ #undef CYTHON_USE_TYPE_SLOTS
+ #define CYTHON_USE_TYPE_SLOTS 0
+ #undef CYTHON_USE_PYTYPE_LOOKUP
+ #define CYTHON_USE_PYTYPE_LOOKUP 0
+ #if PY_VERSION_HEX < 0x03050000
+ #undef CYTHON_USE_ASYNC_SLOTS
+ #define CYTHON_USE_ASYNC_SLOTS 0
+ #elif !defined(CYTHON_USE_ASYNC_SLOTS)
+ #define CYTHON_USE_ASYNC_SLOTS 1
+ #endif
+ #undef CYTHON_USE_PYLIST_INTERNALS
+ #define CYTHON_USE_PYLIST_INTERNALS 0
+ #undef CYTHON_USE_UNICODE_INTERNALS
+ #define CYTHON_USE_UNICODE_INTERNALS 0
+ #undef CYTHON_USE_UNICODE_WRITER
+ #define CYTHON_USE_UNICODE_WRITER 0
+ #undef CYTHON_USE_PYLONG_INTERNALS
+ #define CYTHON_USE_PYLONG_INTERNALS 0
+ #undef CYTHON_AVOID_BORROWED_REFS
+ #define CYTHON_AVOID_BORROWED_REFS 1
+ #undef CYTHON_ASSUME_SAFE_MACROS
+ #define CYTHON_ASSUME_SAFE_MACROS 0
+ #undef CYTHON_UNPACK_METHODS
+ #define CYTHON_UNPACK_METHODS 0
+ #undef CYTHON_FAST_THREAD_STATE
+ #define CYTHON_FAST_THREAD_STATE 0
+ #undef CYTHON_FAST_PYCALL
+ #define CYTHON_FAST_PYCALL 0
+ #undef CYTHON_PEP489_MULTI_PHASE_INIT
+ #define CYTHON_PEP489_MULTI_PHASE_INIT 0
+ #undef CYTHON_USE_TP_FINALIZE
+ #define CYTHON_USE_TP_FINALIZE 0
+#elif defined(PYSTON_VERSION)
+ #define CYTHON_COMPILING_IN_PYPY 0
+ #define CYTHON_COMPILING_IN_PYSTON 1
#define CYTHON_COMPILING_IN_CPYTHON 0
+ #ifndef CYTHON_USE_TYPE_SLOTS
+ #define CYTHON_USE_TYPE_SLOTS 1
+ #endif
+ #undef CYTHON_USE_PYTYPE_LOOKUP
+ #define CYTHON_USE_PYTYPE_LOOKUP 0
+ #undef CYTHON_USE_ASYNC_SLOTS
+ #define CYTHON_USE_ASYNC_SLOTS 0
+ #undef CYTHON_USE_PYLIST_INTERNALS
+ #define CYTHON_USE_PYLIST_INTERNALS 0
+ #ifndef CYTHON_USE_UNICODE_INTERNALS
+ #define CYTHON_USE_UNICODE_INTERNALS 1
+ #endif
+ #undef CYTHON_USE_UNICODE_WRITER
+ #define CYTHON_USE_UNICODE_WRITER 0
+ #undef CYTHON_USE_PYLONG_INTERNALS
+ #define CYTHON_USE_PYLONG_INTERNALS 0
+ #ifndef CYTHON_AVOID_BORROWED_REFS
+ #define CYTHON_AVOID_BORROWED_REFS 0
+ #endif
+ #ifndef CYTHON_ASSUME_SAFE_MACROS
+ #define CYTHON_ASSUME_SAFE_MACROS 1
+ #endif
+ #ifndef CYTHON_UNPACK_METHODS
+ #define CYTHON_UNPACK_METHODS 1
+ #endif
+ #undef CYTHON_FAST_THREAD_STATE
+ #define CYTHON_FAST_THREAD_STATE 0
+ #undef CYTHON_FAST_PYCALL
+ #define CYTHON_FAST_PYCALL 0
+ #undef CYTHON_PEP489_MULTI_PHASE_INIT
+ #define CYTHON_PEP489_MULTI_PHASE_INIT 0
+ #undef CYTHON_USE_TP_FINALIZE
+ #define CYTHON_USE_TP_FINALIZE 0
#else
#define CYTHON_COMPILING_IN_PYPY 0
+ #define CYTHON_COMPILING_IN_PYSTON 0
#define CYTHON_COMPILING_IN_CPYTHON 1
+ #ifndef CYTHON_USE_TYPE_SLOTS
+ #define CYTHON_USE_TYPE_SLOTS 1
+ #endif
+ #if PY_VERSION_HEX < 0x02070000
+ #undef CYTHON_USE_PYTYPE_LOOKUP
+ #define CYTHON_USE_PYTYPE_LOOKUP 0
+ #elif !defined(CYTHON_USE_PYTYPE_LOOKUP)
+ #define CYTHON_USE_PYTYPE_LOOKUP 1
+ #endif
+ #if PY_MAJOR_VERSION < 3
+ #undef CYTHON_USE_ASYNC_SLOTS
+ #define CYTHON_USE_ASYNC_SLOTS 0
+ #elif !defined(CYTHON_USE_ASYNC_SLOTS)
+ #define CYTHON_USE_ASYNC_SLOTS 1
+ #endif
+ #if PY_VERSION_HEX < 0x02070000
+ #undef CYTHON_USE_PYLONG_INTERNALS
+ #define CYTHON_USE_PYLONG_INTERNALS 0
+ #elif !defined(CYTHON_USE_PYLONG_INTERNALS)
+ #define CYTHON_USE_PYLONG_INTERNALS 1
+ #endif
+ #ifndef CYTHON_USE_PYLIST_INTERNALS
+ #define CYTHON_USE_PYLIST_INTERNALS 1
+ #endif
+ #ifndef CYTHON_USE_UNICODE_INTERNALS
+ #define CYTHON_USE_UNICODE_INTERNALS 1
+ #endif
+ #if PY_VERSION_HEX < 0x030300F0
+ #undef CYTHON_USE_UNICODE_WRITER
+ #define CYTHON_USE_UNICODE_WRITER 0
+ #elif !defined(CYTHON_USE_UNICODE_WRITER)
+ #define CYTHON_USE_UNICODE_WRITER 1
+ #endif
+ #ifndef CYTHON_AVOID_BORROWED_REFS
+ #define CYTHON_AVOID_BORROWED_REFS 0
+ #endif
+ #ifndef CYTHON_ASSUME_SAFE_MACROS
+ #define CYTHON_ASSUME_SAFE_MACROS 1
+ #endif
+ #ifndef CYTHON_UNPACK_METHODS
+ #define CYTHON_UNPACK_METHODS 1
+ #endif
+ #ifndef CYTHON_FAST_THREAD_STATE
+ #define CYTHON_FAST_THREAD_STATE 1
+ #endif
+ #ifndef CYTHON_FAST_PYCALL
+ #define CYTHON_FAST_PYCALL 1
+ #endif
+ #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
+ #define CYTHON_PEP489_MULTI_PHASE_INIT (0 && PY_VERSION_HEX >= 0x03050000)
+ #endif
+ #ifndef CYTHON_USE_TP_FINALIZE
+ #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1)
+ #endif
#endif
-#if !defined(CYTHON_USE_PYLONG_INTERNALS) && CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x02070000
- #define CYTHON_USE_PYLONG_INTERNALS 1
+#if !defined(CYTHON_FAST_PYCCALL)
+#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1)
#endif
#if CYTHON_USE_PYLONG_INTERNALS
#include "longintrepr.h"
@@ -79,24 +211,69 @@
#ifndef Py_TPFLAGS_HAVE_FINALIZE
#define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
+#if PY_VERSION_HEX < 0x030700A0 || !defined(METH_FASTCALL)
+ #ifndef METH_FASTCALL
+ #define METH_FASTCALL 0x80
+ #endif
+ typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args, Py_ssize_t nargs);
+ typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject **args,
+ Py_ssize_t nargs, PyObject *kwnames);
+#else
+ #define __Pyx_PyCFunctionFast _PyCFunctionFast
+ #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
+#endif
+#if CYTHON_FAST_PYCCALL
+#define __Pyx_PyFastCFunction_Check(func)\
+ ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)))))
+#else
+#define __Pyx_PyFastCFunction_Check(func) 0
+#endif
+#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000
+ #define __Pyx_PyThreadState_Current PyThreadState_GET()
+#elif PY_VERSION_HEX >= 0x03060000
+ #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
+#elif PY_VERSION_HEX >= 0x03000000
+ #define __Pyx_PyThreadState_Current PyThreadState_GET()
+#else
+ #define __Pyx_PyThreadState_Current _PyThreadState_Current
+#endif
+#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
+#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
+#else
+#define __Pyx_PyDict_NewPresized(n) PyDict_New()
+#endif
+#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION
+ #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
+ #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
+#else
+ #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
+ #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
+#endif
#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
#define CYTHON_PEP393_ENABLED 1
#define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\
0 : _PyUnicode_Ready((PyObject *)(op)))
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
+ #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u)
#define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u)
#define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u)
#define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i)
+ #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch)
#define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
#else
#define CYTHON_PEP393_ENABLED 0
+ #define PyUnicode_1BYTE_KIND 1
+ #define PyUnicode_2BYTE_KIND 2
+ #define PyUnicode_4BYTE_KIND 4
#define __Pyx_PyUnicode_READY(op) (0)
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
+ #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111)
#define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE))
#define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u))
#define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
+ #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch)
#define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u))
#endif
#if CYTHON_COMPILING_IN_PYPY
@@ -110,6 +287,9 @@
#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains)
#define PyUnicode_Contains(u, s) PySequence_Contains(u, s)
#endif
+#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check)
+ #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type)
+#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format)
#define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt)
#endif
@@ -118,6 +298,13 @@
#define PyObject_Free(p) PyMem_Free(p)
#define PyObject_Realloc(p) PyMem_Realloc(p)
#endif
+#if CYTHON_COMPILING_IN_PYSTON
+ #define __Pyx_PyCode_HasFreeVars(co) PyCode_HasFreeVars(co)
+ #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno)
+#else
+ #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0)
+ #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno)
+#endif
#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
@@ -145,7 +332,7 @@
#ifndef PySet_CheckExact
#define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type)
#endif
-#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
+#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)
#if PY_MAJOR_VERSION >= 3
#define PyIntObject PyLongObject
#define PyInt_Type PyLong_Type
@@ -184,18 +371,28 @@
#else
#define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
#endif
-#if PY_VERSION_HEX >= 0x030500B1
-#define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
-#define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
-#elif CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
-typedef struct {
- unaryfunc am_await;
- unaryfunc am_aiter;
- unaryfunc am_anext;
-} __Pyx_PyAsyncMethodsStruct;
-#define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
+#ifndef __has_attribute
+ #define __has_attribute(x) 0
+#endif
+#ifndef __has_cpp_attribute
+ #define __has_cpp_attribute(x) 0
+#endif
+#if CYTHON_USE_ASYNC_SLOTS
+ #if PY_VERSION_HEX >= 0x030500B1
+ #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
+ #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
+ #else
+ #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
+ #endif
#else
-#define __Pyx_PyType_AsAsync(obj) NULL
+ #define __Pyx_PyType_AsAsync(obj) NULL
+#endif
+#ifndef __Pyx_PyAsyncMethodsStruct
+ typedef struct {
+ unaryfunc am_await;
+ unaryfunc am_aiter;
+ unaryfunc am_anext;
+ } __Pyx_PyAsyncMethodsStruct;
#endif
#ifndef CYTHON_RESTRICT
#if defined(__GNUC__)
@@ -208,10 +405,68 @@ typedef struct {
#define CYTHON_RESTRICT
#endif
#endif
+#ifndef CYTHON_UNUSED
+# if defined(__GNUC__)
+# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
+# define CYTHON_UNUSED __attribute__ ((__unused__))
+# else
+# define CYTHON_UNUSED
+# endif
+# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
+# define CYTHON_UNUSED __attribute__ ((__unused__))
+# else
+# define CYTHON_UNUSED
+# endif
+#endif
+#ifndef CYTHON_MAYBE_UNUSED_VAR
+# if defined(__cplusplus)
+ template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }
+# else
+# define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x)
+# endif
+#endif
+#ifndef CYTHON_NCP_UNUSED
+# if CYTHON_COMPILING_IN_CPYTHON
+# define CYTHON_NCP_UNUSED
+# else
+# define CYTHON_NCP_UNUSED CYTHON_UNUSED
+# endif
+#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
+#ifdef _MSC_VER
+ #ifndef _MSC_STDINT_H_
+ #if _MSC_VER < 1300
+ typedef unsigned char uint8_t;
+ typedef unsigned int uint32_t;
+ #else
+ typedef unsigned __int8 uint8_t;
+ typedef unsigned __int32 uint32_t;
+ #endif
+ #endif
+#else
+ #include <stdint.h>
+#endif
+#ifndef CYTHON_FALLTHROUGH
+ #ifdef __cplusplus
+ #if __has_cpp_attribute(fallthrough)
+ #define CYTHON_FALLTHROUGH [[fallthrough]]
+ #elif __has_cpp_attribute(clang::fallthrough)
+ #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
+ #endif
+ #endif
+ #ifndef CYTHON_FALLTHROUGH
+ #if __has_attribute(fallthrough) || (defined(__GNUC__) && defined(__attribute__))
+ #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
+ #else
+ #define CYTHON_FALLTHROUGH
+ #endif
+ #endif
+#endif
#ifndef CYTHON_INLINE
- #if defined(__GNUC__)
+ #if defined(__clang__)
+ #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
+ #elif defined(__GNUC__)
#define CYTHON_INLINE __inline__
#elif defined(_MSC_VER)
#define CYTHON_INLINE __inline
@@ -235,6 +490,11 @@ static CYTHON_INLINE float __PYX_NAN() {
return value;
}
#endif
+#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
+#define __Pyx_truncl trunc
+#else
+#define __Pyx_truncl truncl
+#endif
#define __PYX_ERR(f_index, lineno, Ln_error) \
@@ -242,14 +502,6 @@ static CYTHON_INLINE float __PYX_NAN() {
__pyx_filename = __pyx_f[f_index]; __pyx_lineno = lineno; __pyx_clineno = __LINE__; goto Ln_error; \
}
-#if PY_MAJOR_VERSION >= 3
- #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
- #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
-#else
- #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
- #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
-#endif
-
#ifndef __PYX_EXTERN_C
#ifdef __cplusplus
#define __PYX_EXTERN_C extern "C"
@@ -267,30 +519,10 @@ static CYTHON_INLINE float __PYX_NAN() {
#include <omp.h>
#endif /* _OPENMP */
-#ifdef PYREX_WITHOUT_ASSERTIONS
+#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif
-#ifndef CYTHON_UNUSED
-# if defined(__GNUC__)
-# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
-# define CYTHON_UNUSED __attribute__ ((__unused__))
-# else
-# define CYTHON_UNUSED
-# endif
-# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
-# define CYTHON_UNUSED __attribute__ ((__unused__))
-# else
-# define CYTHON_UNUSED
-# endif
-#endif
-#ifndef CYTHON_NCP_UNUSED
-# if CYTHON_COMPILING_IN_CPYTHON
-# define CYTHON_NCP_UNUSED
-# else
-# define CYTHON_NCP_UNUSED CYTHON_UNUSED
-# endif
-#endif
typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;
const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;
@@ -318,8 +550,8 @@ typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* enc
#define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
#define __Pyx_sst_abs(value) labs(value)
-#elif defined (_MSC_VER) && defined (_M_X64)
- #define __Pyx_sst_abs(value) _abs64(value)
+#elif defined (_MSC_VER)
+ #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
@@ -327,8 +559,8 @@ typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* enc
#else
#define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
-static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject*);
-static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
+static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
+static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString PyBytes_FromString
@@ -341,23 +573,27 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString
#define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
-#define __Pyx_PyObject_AsSString(s) ((signed char*) __Pyx_PyObject_AsString(s))
-#define __Pyx_PyObject_AsUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyObject_AsWritableString(s) ((char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsWritableSString(s) ((signed char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
-#if PY_MAJOR_VERSION < 3
-static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
-{
+static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) {
const Py_UNICODE *u_end = u;
while (*u_end++) ;
return (size_t)(u_end - u - 1);
}
-#else
-#define __Pyx_Py_UNICODE_strlen Py_UNICODE_strlen
-#endif
#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode
@@ -366,9 +602,11 @@ static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
#define __Pyx_PyBool_FromLong(b) ((b) ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False))
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
+#define __Pyx_PySequence_Tuple(obj)\
+ (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
@@ -464,10 +702,12 @@ bad:
#define likely(x) (x)
#define unlikely(x) (x)
#endif /* __GNUC__ */
+static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }
-static PyObject *__pyx_m;
+static PyObject *__pyx_m = NULL;
static PyObject *__pyx_d;
static PyObject *__pyx_b;
+static PyObject *__pyx_cython_runtime;
static PyObject *__pyx_empty_tuple;
static PyObject *__pyx_empty_bytes;
static PyObject *__pyx_empty_unicode;
@@ -481,6 +721,18 @@ static const char *__pyx_f[] = {
"libpetsc4py/libpetsc4py.pyx",
"include/petsc4py/PETSc.pxd",
};
+/* ForceInitThreads.proto */
+#ifndef __PYX_FORCE_INIT_THREADS
+ #define __PYX_FORCE_INIT_THREADS 0
+#endif
+
+/* NoFastGil.proto */
+#define __Pyx_PyGILState_Ensure PyGILState_Ensure
+#define __Pyx_PyGILState_Release PyGILState_Release
+#define __Pyx_FastGIL_Remember()
+#define __Pyx_FastGIL_Forget()
+#define __Pyx_FastGilFuncInit()
+
/*--- Type declarations ---*/
struct PyPetscCommObject;
@@ -510,7 +762,7 @@ struct __pyx_obj_11libpetsc4py__PyKSP;
struct __pyx_obj_11libpetsc4py__PySNES;
struct __pyx_obj_11libpetsc4py__PyTS;
-/* "petsc4py/PETSc.pxd":70
+/* "petsc4py/PETSc.pxd":73
* # --------------------------------------------------------------------
*
* ctypedef public api class Comm [ # <<<<<<<<<<<<<<
@@ -527,7 +779,7 @@ typedef struct PyPetscCommObject PyPetscCommObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscComm_Type;
-/* "petsc4py/PETSc.pxd":78
+/* "petsc4py/PETSc.pxd":81
* cdef object base
*
* ctypedef public api class Object [ # <<<<<<<<<<<<<<
@@ -546,7 +798,7 @@ typedef struct PyPetscObjectObject PyPetscObjectObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscObject_Type;
-/* "petsc4py/PETSc.pxd":90
+/* "petsc4py/PETSc.pxd":93
* cdef object get_dict(self)
*
* ctypedef public api class Viewer(Object) [ # <<<<<<<<<<<<<<
@@ -561,7 +813,7 @@ typedef struct PyPetscViewerObject PyPetscViewerObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscViewer_Type;
-/* "petsc4py/PETSc.pxd":96
+/* "petsc4py/PETSc.pxd":99
* cdef PetscViewer vwr
*
* ctypedef public api class Random(Object) [ # <<<<<<<<<<<<<<
@@ -576,7 +828,7 @@ typedef struct PyPetscRandomObject PyPetscRandomObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscRandom_Type;
-/* "petsc4py/PETSc.pxd":102
+/* "petsc4py/PETSc.pxd":105
* cdef PetscRandom rnd
*
* ctypedef public api class IS(Object) [ # <<<<<<<<<<<<<<
@@ -591,7 +843,7 @@ typedef struct PyPetscISObject PyPetscISObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscIS_Type;
-/* "petsc4py/PETSc.pxd":108
+/* "petsc4py/PETSc.pxd":111
* cdef PetscIS iset
*
* ctypedef public api class LGMap(Object) [ # <<<<<<<<<<<<<<
@@ -606,7 +858,7 @@ typedef struct PyPetscLGMapObject PyPetscLGMapObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscLGMap_Type;
-/* "petsc4py/PETSc.pxd":114
+/* "petsc4py/PETSc.pxd":117
* cdef PetscLGMap lgm
*
* ctypedef public api class SF(Object) [ # <<<<<<<<<<<<<<
@@ -621,7 +873,7 @@ typedef struct PyPetscSFObject PyPetscSFObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSF_Type;
-/* "petsc4py/PETSc.pxd":120
+/* "petsc4py/PETSc.pxd":123
* cdef PetscSF sf
*
* ctypedef public api class Vec(Object) [ # <<<<<<<<<<<<<<
@@ -636,7 +888,7 @@ typedef struct PyPetscVecObject PyPetscVecObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscVec_Type;
-/* "petsc4py/PETSc.pxd":126
+/* "petsc4py/PETSc.pxd":129
* cdef PetscVec vec
*
* ctypedef public api class Scatter(Object) [ # <<<<<<<<<<<<<<
@@ -651,7 +903,7 @@ typedef struct PyPetscScatterObject PyPetscScatterObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscScatter_Type;
-/* "petsc4py/PETSc.pxd":132
+/* "petsc4py/PETSc.pxd":135
* cdef PetscScatter sct
*
* ctypedef public api class Section(Object) [ # <<<<<<<<<<<<<<
@@ -666,7 +918,7 @@ typedef struct PyPetscSectionObject PyPetscSectionObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSection_Type;
-/* "petsc4py/PETSc.pxd":138
+/* "petsc4py/PETSc.pxd":141
* cdef PetscSection sec
*
* ctypedef public api class Mat(Object) [ # <<<<<<<<<<<<<<
@@ -681,7 +933,7 @@ typedef struct PyPetscMatObject PyPetscMatObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscMat_Type;
-/* "petsc4py/PETSc.pxd":144
+/* "petsc4py/PETSc.pxd":147
* cdef PetscMat mat
*
* ctypedef public api class NullSpace(Object) [ # <<<<<<<<<<<<<<
@@ -696,7 +948,7 @@ typedef struct PyPetscNullSpaceObject PyPetscNullSpaceObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscNullSpace_Type;
-/* "petsc4py/PETSc.pxd":150
+/* "petsc4py/PETSc.pxd":153
* cdef PetscNullSpace nsp
*
* ctypedef public api class PC(Object) [ # <<<<<<<<<<<<<<
@@ -711,7 +963,7 @@ typedef struct PyPetscPCObject PyPetscPCObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscPC_Type;
-/* "petsc4py/PETSc.pxd":156
+/* "petsc4py/PETSc.pxd":159
* cdef PetscPC pc
*
* ctypedef public api class KSP(Object) [ # <<<<<<<<<<<<<<
@@ -726,7 +978,7 @@ typedef struct PyPetscKSPObject PyPetscKSPObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscKSP_Type;
-/* "petsc4py/PETSc.pxd":162
+/* "petsc4py/PETSc.pxd":165
* cdef PetscKSP ksp
*
* ctypedef public api class SNES(Object) [ # <<<<<<<<<<<<<<
@@ -741,7 +993,7 @@ typedef struct PyPetscSNESObject PyPetscSNESObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSNES_Type;
-/* "petsc4py/PETSc.pxd":168
+/* "petsc4py/PETSc.pxd":171
* cdef PetscSNES snes
*
* ctypedef public api class TS(Object) [ # <<<<<<<<<<<<<<
@@ -756,7 +1008,7 @@ typedef struct PyPetscTSObject PyPetscTSObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscTS_Type;
-/* "petsc4py/PETSc.pxd":174
+/* "petsc4py/PETSc.pxd":177
* cdef PetscTS ts
*
* ctypedef public api class TAO(Object) [ # <<<<<<<<<<<<<<
@@ -771,7 +1023,7 @@ typedef struct PyPetscTAOObject PyPetscTAOObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscTAO_Type;
-/* "petsc4py/PETSc.pxd":180
+/* "petsc4py/PETSc.pxd":183
* cdef PetscTAO tao
*
* ctypedef public api class AO(Object) [ # <<<<<<<<<<<<<<
@@ -786,7 +1038,7 @@ typedef struct PyPetscAOObject PyPetscAOObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscAO_Type;
-/* "petsc4py/PETSc.pxd":186
+/* "petsc4py/PETSc.pxd":189
* cdef PetscAO ao
*
* ctypedef public api class DM(Object) [ # <<<<<<<<<<<<<<
@@ -801,7 +1053,7 @@ typedef struct PyPetscDMObject PyPetscDMObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscDM_Type;
-/* "petsc4py/PETSc.pxd":192
+/* "petsc4py/PETSc.pxd":195
* cdef PetscDM dm
*
* ctypedef public api class Partitioner(Object) [ # <<<<<<<<<<<<<<
@@ -816,7 +1068,7 @@ typedef struct PyPetscPartitionerObject PyPetscPartitionerObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscPartitioner_Type;
-/* "libpetsc4py.pyx":284
+/* "libpetsc4py.pyx":286
*
* @cython.internal
* cdef class _PyObj: # <<<<<<<<<<<<<<
@@ -831,7 +1083,7 @@ struct __pyx_obj_11libpetsc4py__PyObj {
};
-/* "libpetsc4py.pyx":512
+/* "libpetsc4py.pyx":514
*
* @cython.internal
* cdef class _PyMat(_PyObj): pass # <<<<<<<<<<<<<<
@@ -843,7 +1095,7 @@ struct __pyx_obj_11libpetsc4py__PyMat {
};
-/* "libpetsc4py.pyx":1152
+/* "libpetsc4py.pyx":1154
*
* @cython.internal
* cdef class _PyPC(_PyObj): pass # <<<<<<<<<<<<<<
@@ -855,7 +1107,7 @@ struct __pyx_obj_11libpetsc4py__PyPC {
};
-/* "libpetsc4py.pyx":1427
+/* "libpetsc4py.pyx":1430
*
* @cython.internal
* cdef class _PyKSP(_PyObj): pass # <<<<<<<<<<<<<<
@@ -867,7 +1119,7 @@ struct __pyx_obj_11libpetsc4py__PyKSP {
};
-/* "libpetsc4py.pyx":1782
+/* "libpetsc4py.pyx":1792
*
* @cython.internal
* cdef class _PySNES(_PyObj): pass # <<<<<<<<<<<<<<
@@ -879,7 +1131,7 @@ struct __pyx_obj_11libpetsc4py__PySNES {
};
-/* "libpetsc4py.pyx":2117
+/* "libpetsc4py.pyx":2132
*
* @cython.internal
* cdef class _PyTS(_PyObj): pass # <<<<<<<<<<<<<<
@@ -893,7 +1145,7 @@ struct __pyx_obj_11libpetsc4py__PyTS {
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscObject_Type;
-/* "petsc4py/PETSc.pxd":78
+/* "petsc4py/PETSc.pxd":81
* cdef object base
*
* ctypedef public api class Object [ # <<<<<<<<<<<<<<
@@ -910,7 +1162,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *__pyx_vtabptr_8petsc4py_
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscViewer_Type;
-/* "petsc4py/PETSc.pxd":90
+/* "petsc4py/PETSc.pxd":93
* cdef object get_dict(self)
*
* ctypedef public api class Viewer(Object) [ # <<<<<<<<<<<<<<
@@ -925,7 +1177,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Viewer *__pyx_vtabptr_8petsc4py_
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscRandom_Type;
-/* "petsc4py/PETSc.pxd":96
+/* "petsc4py/PETSc.pxd":99
* cdef PetscViewer vwr
*
* ctypedef public api class Random(Object) [ # <<<<<<<<<<<<<<
@@ -940,7 +1192,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Random *__pyx_vtabptr_8petsc4py_
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscIS_Type;
-/* "petsc4py/PETSc.pxd":102
+/* "petsc4py/PETSc.pxd":105
* cdef PetscRandom rnd
*
* ctypedef public api class IS(Object) [ # <<<<<<<<<<<<<<
@@ -955,7 +1207,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_IS *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscLGMap_Type;
-/* "petsc4py/PETSc.pxd":108
+/* "petsc4py/PETSc.pxd":111
* cdef PetscIS iset
*
* ctypedef public api class LGMap(Object) [ # <<<<<<<<<<<<<<
@@ -970,7 +1222,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_LGMap *__pyx_vtabptr_8petsc4py_5
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSF_Type;
-/* "petsc4py/PETSc.pxd":114
+/* "petsc4py/PETSc.pxd":117
* cdef PetscLGMap lgm
*
* ctypedef public api class SF(Object) [ # <<<<<<<<<<<<<<
@@ -985,7 +1237,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_SF *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscVec_Type;
-/* "petsc4py/PETSc.pxd":120
+/* "petsc4py/PETSc.pxd":123
* cdef PetscSF sf
*
* ctypedef public api class Vec(Object) [ # <<<<<<<<<<<<<<
@@ -1000,7 +1252,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Vec *__pyx_vtabptr_8petsc4py_5PE
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscScatter_Type;
-/* "petsc4py/PETSc.pxd":126
+/* "petsc4py/PETSc.pxd":129
* cdef PetscVec vec
*
* ctypedef public api class Scatter(Object) [ # <<<<<<<<<<<<<<
@@ -1015,7 +1267,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Scatter *__pyx_vtabptr_8petsc4py
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSection_Type;
-/* "petsc4py/PETSc.pxd":132
+/* "petsc4py/PETSc.pxd":135
* cdef PetscScatter sct
*
* ctypedef public api class Section(Object) [ # <<<<<<<<<<<<<<
@@ -1030,7 +1282,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Section *__pyx_vtabptr_8petsc4py
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscMat_Type;
-/* "petsc4py/PETSc.pxd":138
+/* "petsc4py/PETSc.pxd":141
* cdef PetscSection sec
*
* ctypedef public api class Mat(Object) [ # <<<<<<<<<<<<<<
@@ -1045,7 +1297,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *__pyx_vtabptr_8petsc4py_5PE
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscNullSpace_Type;
-/* "petsc4py/PETSc.pxd":144
+/* "petsc4py/PETSc.pxd":147
* cdef PetscMat mat
*
* ctypedef public api class NullSpace(Object) [ # <<<<<<<<<<<<<<
@@ -1060,7 +1312,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *__pyx_vtabptr_8petsc4
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscPC_Type;
-/* "petsc4py/PETSc.pxd":150
+/* "petsc4py/PETSc.pxd":153
* cdef PetscNullSpace nsp
*
* ctypedef public api class PC(Object) [ # <<<<<<<<<<<<<<
@@ -1075,7 +1327,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_PC *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscKSP_Type;
-/* "petsc4py/PETSc.pxd":156
+/* "petsc4py/PETSc.pxd":159
* cdef PetscPC pc
*
* ctypedef public api class KSP(Object) [ # <<<<<<<<<<<<<<
@@ -1090,7 +1342,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *__pyx_vtabptr_8petsc4py_5PE
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSNES_Type;
-/* "petsc4py/PETSc.pxd":162
+/* "petsc4py/PETSc.pxd":165
* cdef PetscKSP ksp
*
* ctypedef public api class SNES(Object) [ # <<<<<<<<<<<<<<
@@ -1105,7 +1357,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *__pyx_vtabptr_8petsc4py_5P
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscTS_Type;
-/* "petsc4py/PETSc.pxd":168
+/* "petsc4py/PETSc.pxd":171
* cdef PetscSNES snes
*
* ctypedef public api class TS(Object) [ # <<<<<<<<<<<<<<
@@ -1120,7 +1372,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscTAO_Type;
-/* "petsc4py/PETSc.pxd":174
+/* "petsc4py/PETSc.pxd":177
* cdef PetscTS ts
*
* ctypedef public api class TAO(Object) [ # <<<<<<<<<<<<<<
@@ -1135,7 +1387,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_TAO *__pyx_vtabptr_8petsc4py_5PE
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscAO_Type;
-/* "petsc4py/PETSc.pxd":180
+/* "petsc4py/PETSc.pxd":183
* cdef PetscTAO tao
*
* ctypedef public api class AO(Object) [ # <<<<<<<<<<<<<<
@@ -1150,7 +1402,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_AO *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscDM_Type;
-/* "petsc4py/PETSc.pxd":186
+/* "petsc4py/PETSc.pxd":189
* cdef PetscAO ao
*
* ctypedef public api class DM(Object) [ # <<<<<<<<<<<<<<
@@ -1165,7 +1417,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscPartitioner_Type;
-/* "petsc4py/PETSc.pxd":192
+/* "petsc4py/PETSc.pxd":195
* cdef PetscDM dm
*
* ctypedef public api class Partitioner(Object) [ # <<<<<<<<<<<<<<
@@ -1179,7 +1431,7 @@ struct __pyx_vtabstruct_8petsc4py_5PETSc_Partitioner {
static struct __pyx_vtabstruct_8petsc4py_5PETSc_Partitioner *__pyx_vtabptr_8petsc4py_5PETSc_Partitioner;
-/* "libpetsc4py.pyx":284
+/* "libpetsc4py.pyx":286
*
* @cython.internal
* cdef class _PyObj: # <<<<<<<<<<<<<<
@@ -1196,7 +1448,7 @@ struct __pyx_vtabstruct_11libpetsc4py__PyObj {
static struct __pyx_vtabstruct_11libpetsc4py__PyObj *__pyx_vtabptr_11libpetsc4py__PyObj;
-/* "libpetsc4py.pyx":512
+/* "libpetsc4py.pyx":514
*
* @cython.internal
* cdef class _PyMat(_PyObj): pass # <<<<<<<<<<<<<<
@@ -1210,7 +1462,7 @@ struct __pyx_vtabstruct_11libpetsc4py__PyMat {
static struct __pyx_vtabstruct_11libpetsc4py__PyMat *__pyx_vtabptr_11libpetsc4py__PyMat;
-/* "libpetsc4py.pyx":1152
+/* "libpetsc4py.pyx":1154
*
* @cython.internal
* cdef class _PyPC(_PyObj): pass # <<<<<<<<<<<<<<
@@ -1224,7 +1476,7 @@ struct __pyx_vtabstruct_11libpetsc4py__PyPC {
static struct __pyx_vtabstruct_11libpetsc4py__PyPC *__pyx_vtabptr_11libpetsc4py__PyPC;
-/* "libpetsc4py.pyx":1427
+/* "libpetsc4py.pyx":1430
*
* @cython.internal
* cdef class _PyKSP(_PyObj): pass # <<<<<<<<<<<<<<
@@ -1238,7 +1490,7 @@ struct __pyx_vtabstruct_11libpetsc4py__PyKSP {
static struct __pyx_vtabstruct_11libpetsc4py__PyKSP *__pyx_vtabptr_11libpetsc4py__PyKSP;
-/* "libpetsc4py.pyx":1782
+/* "libpetsc4py.pyx":1792
*
* @cython.internal
* cdef class _PySNES(_PyObj): pass # <<<<<<<<<<<<<<
@@ -1252,7 +1504,7 @@ struct __pyx_vtabstruct_11libpetsc4py__PySNES {
static struct __pyx_vtabstruct_11libpetsc4py__PySNES *__pyx_vtabptr_11libpetsc4py__PySNES;
-/* "libpetsc4py.pyx":2117
+/* "libpetsc4py.pyx":2132
*
* @cython.internal
* cdef class _PyTS(_PyObj): pass # <<<<<<<<<<<<<<
@@ -1330,7 +1582,7 @@ static struct __pyx_vtabstruct_11libpetsc4py__PyTS *__pyx_vtabptr_11libpetsc4py_
#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)
/* PyObjectGetAttrStr.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
PyTypeObject* tp = Py_TYPE(obj);
if (likely(tp->tp_getattro))
@@ -1348,29 +1600,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject
/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);
-/* ForceInitThreads.proto */
-#ifndef __PYX_FORCE_INIT_THREADS
- #define __PYX_FORCE_INIT_THREADS 0
-#endif
-
/* PyThreadStateGet.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate;
-#define __Pyx_PyThreadState_assign __pyx_tstate = PyThreadState_GET();
+#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current;
+#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
+#define __Pyx_PyErr_Occurred() PyErr_Occurred()
#endif
/* PyErrFetchRestore.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
+#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
+#if CYTHON_COMPILING_IN_CPYTHON
+#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
+#else
+#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
+#endif
#else
+#define __Pyx_PyErr_Clear() PyErr_Clear()
+#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb)
@@ -1391,6 +1648,20 @@ static CYTHON_INLINE PyObject* __Pyx_tp_new_kwargs(PyObject* type_obj, PyObject*
/* ExtTypeTest.proto */
static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type);
+/* decode_c_string_utf16.proto */
+static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16(const char *s, Py_ssize_t size, const char *errors) {
+ int byteorder = 0;
+ return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
+}
+static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16LE(const char *s, Py_ssize_t size, const char *errors) {
+ int byteorder = -1;
+ return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
+}
+static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16BE(const char *s, Py_ssize_t size, const char *errors) {
+ int byteorder = 1;
+ return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
+}
+
/* decode_c_bytes.proto */
static CYTHON_INLINE PyObject* __Pyx_decode_c_bytes(
const char* cstring, Py_ssize_t length, Py_ssize_t start, Py_ssize_t stop,
@@ -1454,7 +1725,7 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {
#endif
/* PyObjectSetAttrStr.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_USE_TYPE_SLOTS
#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o,n,NULL)
static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) {
PyTypeObject* tp = Py_TYPE(obj);
@@ -1471,6 +1742,24 @@ static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr
#define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v)
#endif
+/* PyCFunctionFastCall.proto */
+#if CYTHON_FAST_PYCCALL
+static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs);
+#else
+#define __Pyx_PyCFunction_FastCall(func, args, nargs) (assert(0), NULL)
+#endif
+
+/* PyFunctionFastCall.proto */
+#if CYTHON_FAST_PYCALL
+#define __Pyx_PyFunction_FastCall(func, args, nargs)\
+ __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
+#if 1 || PY_VERSION_HEX < 0x030600B1
+static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs);
+#else
+#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs)
+#endif
+#endif
+
/* PyObjectCallMethO.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
@@ -1487,7 +1776,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);
#endif
/* GetException.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_GetException(type, value, tb) __Pyx__GetException(__pyx_tstate, type, value, tb)
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
@@ -1495,7 +1784,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
#endif
/* SwapException.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSwap(type, value, tb) __Pyx__ExceptionSwap(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
@@ -1503,7 +1792,7 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value,
#endif
/* SaveResetException.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSave(type, value, tb) __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#define __Pyx_ExceptionReset(type, value, tb) __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
@@ -1513,6 +1802,14 @@ static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject
#define __Pyx_ExceptionReset(type, value, tb) PyErr_SetExcInfo(type, value, tb)
#endif
+/* PyErrExceptionMatches.proto */
+#if CYTHON_FAST_THREAD_STATE
+#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
+static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
+#else
+#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err)
+#endif
+
/* GetAttr.proto */
static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *);
@@ -1525,6 +1822,9 @@ static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* s
return unlikely(result < 0) ? result : (result == (eq == Py_EQ));
}
+/* HasAttr.proto */
+static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *);
+
/* SetVTable.proto */
static int __Pyx_SetVtable(PyObject *dict, void *vtable);
@@ -1553,6 +1853,9 @@ static PyObject *__Pyx_ImportModule(const char *name);
static void __pyx_module_cleanup(PyObject *self);
static int __Pyx_RegisterCleanup(void);
+/* CLineInTraceback.proto */
+static int __Pyx_CLineForTraceback(int c_line);
+
/* CodeObjectCache.proto */
typedef struct {
PyCodeObject* code_object;
@@ -1586,9 +1889,6 @@ static PyObject* __Pyx_PyExec3(PyObject*, PyObject*, PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyExec2(PyObject*, PyObject*);
/* CIntToPy.proto */
-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscBool(PetscBool value);
-
-/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value);
/* CIntToPy.proto */
@@ -1606,6 +1906,18 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);
/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);
+/* FastTypeChecks.proto */
+#if CYTHON_COMPILING_IN_CPYTHON
+#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
+static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
+static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
+static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
+#else
+#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
+#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
+#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2))
+#endif
+
/* CheckBinaryVersion.proto */
static int __Pyx_check_binary_version(void);
@@ -1660,7 +1972,7 @@ static char *__pyx_v_11libpetsc4py_fstack[0x400];
static int __pyx_v_11libpetsc4py_istack;
static PyObject *__pyx_v_11libpetsc4py_PetscError = 0;
static PyObject *__pyx_v_11libpetsc4py_module_cache = 0;
-__PYX_EXTERN_C DL_EXPORT(int) import_libpetsc4py(void); /*proto*/
+__PYX_EXTERN_C int import_libpetsc4py(void); /*proto*/
static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_toInt(PetscInt); /*proto*/
static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_asInt(PyObject *); /*proto*/
static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_toReal(PetscReal); /*proto*/
@@ -1692,8 +2004,8 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *); /*proto*/
static PyObject *__pyx_f_11libpetsc4py_createcontext(char *); /*proto*/
static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyObj *, PetscViewer); /*proto*/
static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyMat *__pyx_f_11libpetsc4py_PyMat(Mat); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) MatPythonGetContext(Mat, void **); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) MatPythonSetContext(Mat, void *); /*proto*/
+__PYX_EXTERN_C PetscErrorCode MatPythonGetContext(Mat, void **); /*proto*/
+__PYX_EXTERN_C PetscErrorCode MatPythonSetContext(Mat, void *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(Mat, char *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat); /*proto*/
@@ -1702,7 +2014,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatView_Python(Mat, PetscViewer); /*
static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat, MatDuplicateOption, Mat *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatCopy_Python(Mat, Mat, MatStructure); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat, Mat *); /*proto*/
-static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat, IS, IS, MatReuse, Mat *); /*proto*/
+static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateSubMatrix_Python(Mat, IS, IS, MatReuse, Mat *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatSetOption_Python(Mat, MatOption, PetscBool); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat, MatAssemblyType); /*proto*/
@@ -1731,8 +2043,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatRealPart_Python(Mat); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatImagPart_Python(Mat); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_MatConjugate_Python(Mat); /*proto*/
static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyPC *__pyx_f_11libpetsc4py_PyPC(PC); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) PCPythonGetContext(PC, void **); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) PCPythonSetContext(PC, void *); /*proto*/
+__PYX_EXTERN_C PetscErrorCode PCPythonGetContext(PC, void **); /*proto*/
+__PYX_EXTERN_C PetscErrorCode PCPythonSetContext(PC, void *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(PC, char *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC); /*proto*/
@@ -1747,8 +2059,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplyTranspose_Python(PC, Vec, Vec
static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricLeft_Python(PC, Vec, Vec); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricRight_Python(PC, Vec, Vec); /*proto*/
static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyKSP *__pyx_f_11libpetsc4py_PyKSP(KSP); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) KSPPythonGetContext(KSP, void **); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) KSPPythonSetContext(KSP, void *); /*proto*/
+__PYX_EXTERN_C PetscErrorCode KSPPythonGetContext(KSP, void **); /*proto*/
+__PYX_EXTERN_C PetscErrorCode KSPPythonSetContext(KSP, void *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(KSP, char *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP); /*proto*/
@@ -1764,8 +2076,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP, Vec, Vec); /*proto*/
static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PySNES *__pyx_f_11libpetsc4py_PySNES(SNES); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) SNESPythonGetContext(SNES, void **); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) SNESPythonSetContext(SNES, void *); /*proto*/
+__PYX_EXTERN_C PetscErrorCode SNESPythonGetContext(SNES, void **); /*proto*/
+__PYX_EXTERN_C PetscErrorCode SNESPythonSetContext(SNES, void *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(SNES, char *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES); /*proto*/
@@ -1780,8 +2092,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES, Vec, Vec, Vec); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES, Vec, Vec, Vec); /*proto*/
static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyTS *__pyx_f_11libpetsc4py_PyTS(TS); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) TSPythonGetContext(TS, void **); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) TSPythonSetContext(TS, void *); /*proto*/
+__PYX_EXTERN_C PetscErrorCode TSPythonGetContext(TS, void **); /*proto*/
+__PYX_EXTERN_C PetscErrorCode TSPythonSetContext(TS, void *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(TS, char *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS); /*proto*/
@@ -1799,7 +2111,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS, PetscReal, Ve
static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS, PetscReal, Vec, PetscReal *, PetscBool *); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS); /*proto*/
static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscObject, const char *); /*proto*/
-__PYX_EXTERN_C DL_EXPORT(PetscErrorCode) PetscPythonRegisterAll(void); /*proto*/
+__PYX_EXTERN_C PetscErrorCode PetscPythonRegisterAll(void); /*proto*/
#define __Pyx_MODULE_NAME "libpetsc4py"
int __pyx_module_is_main_libpetsc4py = 0;
@@ -1867,7 +2179,6 @@ static const char __pyx_k_interpolate[] = "interpolate";
static const char __pyx_k_setDiagonal[] = "setDiagonal";
static const char __pyx_k_zeroEntries[] = "zeroEntries";
static const char __pyx_k_evaluatestep[] = "evaluatestep";
-static const char __pyx_k_getSubMatrix[] = "getSubMatrix";
static const char __pyx_k_assemblyBegin[] = "assemblyBegin";
static const char __pyx_k_buildResidual[] = "buildResidual";
static const char __pyx_k_buildSolution[] = "buildSolution";
@@ -1879,6 +2190,7 @@ static const char __pyx_k_applyTranspose[] = "applyTranspose";
static const char __pyx_k_petsc4py_PETSc[] = "petsc4py.PETSc";
static const char __pyx_k_setFromOptions[] = "setFromOptions";
static const char __pyx_k_solveTranspose[] = "solveTranspose";
+static const char __pyx_k_createSubMatrix[] = "createSubMatrix";
static const char __pyx_k_formSNESFunction[] = "formSNESFunction";
static const char __pyx_k_formSNESJacobian[] = "formSNESJacobian";
static const char __pyx_k_getDiagonalBlock[] = "getDiagonalBlock";
@@ -1887,6 +2199,7 @@ static const char __pyx_k_multTransposeAdd[] = "multTransposeAdd";
static const char __pyx_k_multDiagonalBlock[] = "multDiagonalBlock";
static const char __pyx_k_solveTransposeAdd[] = "solveTransposeAdd";
static const char __pyx_k_applySymmetricLeft[] = "applySymmetricLeft";
+static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_applySymmetricRight[] = "applySymmetricRight";
static PyObject *__pyx_kp_s_;
static PyObject *__pyx_n_s_Error;
@@ -1905,11 +2218,13 @@ static PyObject *__pyx_n_s_buildResidual;
static PyObject *__pyx_n_s_buildSolution;
static PyObject *__pyx_n_s_builtins;
static PyObject *__pyx_n_s_class;
+static PyObject *__pyx_n_s_cline_in_traceback;
static PyObject *__pyx_n_s_close;
static PyObject *__pyx_n_s_compile;
static PyObject *__pyx_n_s_conjugate;
static PyObject *__pyx_n_s_copy;
static PyObject *__pyx_n_s_create;
+static PyObject *__pyx_n_s_createSubMatrix;
static PyObject *__pyx_n_s_createVecs;
static PyObject *__pyx_n_s_destroy;
static PyObject *__pyx_n_s_diagonalScale;
@@ -1923,7 +2238,6 @@ static PyObject *__pyx_n_s_formSNESFunction;
static PyObject *__pyx_n_s_formSNESJacobian;
static PyObject *__pyx_n_s_getDiagonal;
static PyObject *__pyx_n_s_getDiagonalBlock;
-static PyObject *__pyx_n_s_getSubMatrix;
static PyObject *__pyx_n_s_imagPart;
static PyObject *__pyx_n_s_import;
static PyObject *__pyx_n_s_interpolate;
@@ -1982,7 +2296,7 @@ static PyObject *__pyx_tuple__2;
static PyObject *__pyx_tuple__4;
static PyObject *__pyx_tuple__6;
-/* "libpetsc4py.pyx":28
+/* "libpetsc4py.pyx":30
* void initlibpetsc4py() nogil except *
*
* cdef public int import_libpetsc4py() nogil except -1: # <<<<<<<<<<<<<<
@@ -1993,16 +2307,16 @@ static PyObject *__pyx_tuple__6;
int import_libpetsc4py(void) {
int __pyx_r;
- /* "libpetsc4py.pyx":29
+ /* "libpetsc4py.pyx":31
*
* cdef public int import_libpetsc4py() nogil except -1:
* initlibpetsc4py() # <<<<<<<<<<<<<<
* return 0
*
*/
- initlibpetsc4py(); if (unlikely(__Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 29, __pyx_L1_error)
+ initlibpetsc4py(); if (unlikely(__Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 31, __pyx_L1_error)
- /* "libpetsc4py.pyx":30
+ /* "libpetsc4py.pyx":32
* cdef public int import_libpetsc4py() nogil except -1:
* initlibpetsc4py()
* return 0 # <<<<<<<<<<<<<<
@@ -2012,7 +2326,7 @@ int import_libpetsc4py(void) {
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":28
+ /* "libpetsc4py.pyx":30
* void initlibpetsc4py() nogil except *
*
* cdef public int import_libpetsc4py() nogil except -1: # <<<<<<<<<<<<<<
@@ -2024,11 +2338,11 @@ int import_libpetsc4py(void) {
__pyx_L1_error:;
{
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_AddTraceback("libpetsc4py.import_libpetsc4py", __pyx_clineno, __pyx_lineno, __pyx_filename);
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
}
__pyx_r = -1;
@@ -2036,7 +2350,7 @@ int import_libpetsc4py(void) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":83
+/* "libpetsc4py.pyx":85
* PetscErrorCode PetscViewerStringSPrintf(PetscViewer,char[],...)
*
* cdef inline object toInt(PetscInt value): return value # <<<<<<<<<<<<<<
@@ -2050,7 +2364,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_toInt(PetscInt __pyx_v_valu
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("toInt", 0);
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_PetscInt(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 83, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_PetscInt(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
@@ -2067,7 +2381,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_toInt(PetscInt __pyx_v_valu
return __pyx_r;
}
-/* "libpetsc4py.pyx":84
+/* "libpetsc4py.pyx":86
*
* cdef inline object toInt(PetscInt value): return value
* cdef inline PetscInt asInt(object value) except?-1: return value # <<<<<<<<<<<<<<
@@ -2080,7 +2394,7 @@ static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_asInt(PyObject *__pyx_v_valu
__Pyx_RefNannyDeclarations
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("asInt", 0);
- __pyx_t_1 = __Pyx_PyInt_As_PetscInt(__pyx_v_value); if (unlikely((__pyx_t_1 == (PetscInt)-1) && PyErr_Occurred())) __PYX_ERR(0, 84, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_As_PetscInt(__pyx_v_value); if (unlikely((__pyx_t_1 == ((PetscInt)-1)) && PyErr_Occurred())) __PYX_ERR(0, 86, __pyx_L1_error)
__pyx_r = __pyx_t_1;
goto __pyx_L0;
@@ -2093,7 +2407,7 @@ static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_asInt(PyObject *__pyx_v_valu
return __pyx_r;
}
-/* "libpetsc4py.pyx":85
+/* "libpetsc4py.pyx":87
* cdef inline object toInt(PetscInt value): return value
* cdef inline PetscInt asInt(object value) except?-1: return value
* cdef inline object toReal(PetscReal value): return value # <<<<<<<<<<<<<<
@@ -2107,7 +2421,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_toReal(PetscReal __pyx_v_va
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("toReal", 0);
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyFloat_FromDouble(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error)
+ __pyx_t_1 = PyFloat_FromDouble(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 87, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
@@ -2124,7 +2438,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_toReal(PetscReal __pyx_v_va
return __pyx_r;
}
-/* "libpetsc4py.pyx":86
+/* "libpetsc4py.pyx":88
* cdef inline PetscInt asInt(object value) except?-1: return value
* cdef inline object toReal(PetscReal value): return value
* cdef inline PetscReal asReal(object value) except?-1: return value # <<<<<<<<<<<<<<
@@ -2137,7 +2451,7 @@ static CYTHON_INLINE PetscReal __pyx_f_11libpetsc4py_asReal(PyObject *__pyx_v_va
__Pyx_RefNannyDeclarations
PetscReal __pyx_t_1;
__Pyx_RefNannySetupContext("asReal", 0);
- __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (PetscReal)-1) && PyErr_Occurred())) __PYX_ERR(0, 86, __pyx_L1_error)
+ __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == ((PetscReal)-1)) && PyErr_Occurred())) __PYX_ERR(0, 88, __pyx_L1_error)
__pyx_r = __pyx_t_1;
goto __pyx_L0;
@@ -2150,7 +2464,7 @@ static CYTHON_INLINE PetscReal __pyx_f_11libpetsc4py_asReal(PyObject *__pyx_v_va
return __pyx_r;
}
-/* "libpetsc4py.pyx":103
+/* "libpetsc4py.pyx":105
* cdef int istack = 0
*
* cdef inline void FunctionBegin(char name[]) nogil: # <<<<<<<<<<<<<<
@@ -2161,7 +2475,7 @@ static CYTHON_INLINE PetscReal __pyx_f_11libpetsc4py_asReal(PyObject *__pyx_v_va
static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name) {
int __pyx_t_1;
- /* "libpetsc4py.pyx":105
+ /* "libpetsc4py.pyx":107
* cdef inline void FunctionBegin(char name[]) nogil:
* global FUNCT
* FUNCT = name # <<<<<<<<<<<<<<
@@ -2170,7 +2484,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
*/
__pyx_v_11libpetsc4py_FUNCT = __pyx_v_name;
- /* "libpetsc4py.pyx":107
+ /* "libpetsc4py.pyx":109
* FUNCT = name
* global fstack, istack
* fstack[istack] = FUNCT # <<<<<<<<<<<<<<
@@ -2179,7 +2493,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
*/
(__pyx_v_11libpetsc4py_fstack[__pyx_v_11libpetsc4py_istack]) = __pyx_v_11libpetsc4py_FUNCT;
- /* "libpetsc4py.pyx":108
+ /* "libpetsc4py.pyx":110
* global fstack, istack
* fstack[istack] = FUNCT
* istack += 1 # <<<<<<<<<<<<<<
@@ -2188,7 +2502,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
*/
__pyx_v_11libpetsc4py_istack = (__pyx_v_11libpetsc4py_istack + 1);
- /* "libpetsc4py.pyx":109
+ /* "libpetsc4py.pyx":111
* fstack[istack] = FUNCT
* istack += 1
* if istack >= 1024: # <<<<<<<<<<<<<<
@@ -2198,7 +2512,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
__pyx_t_1 = ((__pyx_v_11libpetsc4py_istack >= 0x400) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":110
+ /* "libpetsc4py.pyx":112
* istack += 1
* if istack >= 1024:
* istack = 0 # <<<<<<<<<<<<<<
@@ -2207,7 +2521,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
*/
__pyx_v_11libpetsc4py_istack = 0;
- /* "libpetsc4py.pyx":109
+ /* "libpetsc4py.pyx":111
* fstack[istack] = FUNCT
* istack += 1
* if istack >= 1024: # <<<<<<<<<<<<<<
@@ -2216,7 +2530,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
*/
}
- /* "libpetsc4py.pyx":111
+ /* "libpetsc4py.pyx":113
* if istack >= 1024:
* istack = 0
* return # <<<<<<<<<<<<<<
@@ -2225,7 +2539,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
*/
goto __pyx_L0;
- /* "libpetsc4py.pyx":103
+ /* "libpetsc4py.pyx":105
* cdef int istack = 0
*
* cdef inline void FunctionBegin(char name[]) nogil: # <<<<<<<<<<<<<<
@@ -2237,7 +2551,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_FunctionBegin(char *__pyx_v_name
__pyx_L0:;
}
-/* "libpetsc4py.pyx":113
+/* "libpetsc4py.pyx":115
* return
*
* cdef inline PetscErrorCode FunctionEnd() nogil: # <<<<<<<<<<<<<<
@@ -2249,7 +2563,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
PetscErrorCode __pyx_r;
int __pyx_t_1;
- /* "libpetsc4py.pyx":115
+ /* "libpetsc4py.pyx":117
* cdef inline PetscErrorCode FunctionEnd() nogil:
* global FUNCT
* FUNCT = NULL # <<<<<<<<<<<<<<
@@ -2258,7 +2572,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
*/
__pyx_v_11libpetsc4py_FUNCT = NULL;
- /* "libpetsc4py.pyx":117
+ /* "libpetsc4py.pyx":119
* FUNCT = NULL
* global fstack, istack
* istack -= 1 # <<<<<<<<<<<<<<
@@ -2267,7 +2581,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
*/
__pyx_v_11libpetsc4py_istack = (__pyx_v_11libpetsc4py_istack - 1);
- /* "libpetsc4py.pyx":118
+ /* "libpetsc4py.pyx":120
* global fstack, istack
* istack -= 1
* if istack < 0: # <<<<<<<<<<<<<<
@@ -2277,7 +2591,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
__pyx_t_1 = ((__pyx_v_11libpetsc4py_istack < 0) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":119
+ /* "libpetsc4py.pyx":121
* istack -= 1
* if istack < 0:
* istack = 1024 # <<<<<<<<<<<<<<
@@ -2286,7 +2600,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
*/
__pyx_v_11libpetsc4py_istack = 0x400;
- /* "libpetsc4py.pyx":118
+ /* "libpetsc4py.pyx":120
* global fstack, istack
* istack -= 1
* if istack < 0: # <<<<<<<<<<<<<<
@@ -2295,7 +2609,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
*/
}
- /* "libpetsc4py.pyx":120
+ /* "libpetsc4py.pyx":122
* if istack < 0:
* istack = 1024
* FUNCT = fstack[istack] # <<<<<<<<<<<<<<
@@ -2304,7 +2618,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
*/
__pyx_v_11libpetsc4py_FUNCT = (__pyx_v_11libpetsc4py_fstack[__pyx_v_11libpetsc4py_istack]);
- /* "libpetsc4py.pyx":121
+ /* "libpetsc4py.pyx":123
* istack = 1024
* FUNCT = fstack[istack]
* return 0 # <<<<<<<<<<<<<<
@@ -2314,7 +2628,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":113
+ /* "libpetsc4py.pyx":115
* return
*
* cdef inline PetscErrorCode FunctionEnd() nogil: # <<<<<<<<<<<<<<
@@ -2327,7 +2641,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":123
+/* "libpetsc4py.pyx":125
* return 0
*
* cdef PetscErrorCode PetscSETERR(PetscErrorCode ierr,char msg[]) nogil: # <<<<<<<<<<<<<<
@@ -2338,7 +2652,7 @@ static CYTHON_INLINE PetscErrorCode __pyx_f_11libpetsc4py_FunctionEnd(void) {
static PetscErrorCode __pyx_f_11libpetsc4py_PetscSETERR(PetscErrorCode __pyx_v_ierr, char *__pyx_v_msg) {
PetscErrorCode __pyx_r;
- /* "libpetsc4py.pyx":125
+ /* "libpetsc4py.pyx":127
* cdef PetscErrorCode PetscSETERR(PetscErrorCode ierr,char msg[]) nogil:
* global fstack, istack
* istack = 0; fstack[istack] = NULL; # <<<<<<<<<<<<<<
@@ -2348,7 +2662,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscSETERR(PetscErrorCode __pyx_v_i
__pyx_v_11libpetsc4py_istack = 0;
(__pyx_v_11libpetsc4py_fstack[__pyx_v_11libpetsc4py_istack]) = NULL;
- /* "libpetsc4py.pyx":127
+ /* "libpetsc4py.pyx":129
* istack = 0; fstack[istack] = NULL;
* global FUNCT
* return PetscERROR(PETSC_COMM_SELF,FUNCT,ierr, # <<<<<<<<<<<<<<
@@ -2358,7 +2672,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscSETERR(PetscErrorCode __pyx_v_i
__pyx_r = PetscERROR(PETSC_COMM_SELF, __pyx_v_11libpetsc4py_FUNCT, __pyx_v_ierr, PETSC_ERROR_INITIAL, __pyx_v_msg, NULL);
goto __pyx_L0;
- /* "libpetsc4py.pyx":123
+ /* "libpetsc4py.pyx":125
* return 0
*
* cdef PetscErrorCode PetscSETERR(PetscErrorCode ierr,char msg[]) nogil: # <<<<<<<<<<<<<<
@@ -2371,7 +2685,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscSETERR(PetscErrorCode __pyx_v_i
return __pyx_r;
}
-/* "libpetsc4py.pyx":130
+/* "libpetsc4py.pyx":132
* PETSC_ERROR_INITIAL, msg, NULL)
*
* cdef PetscErrorCode PetscCHKERR(PetscErrorCode ierr) nogil: # <<<<<<<<<<<<<<
@@ -2382,7 +2696,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscSETERR(PetscErrorCode __pyx_v_i
static PetscErrorCode __pyx_f_11libpetsc4py_PetscCHKERR(PetscErrorCode __pyx_v_ierr) {
PetscErrorCode __pyx_r;
- /* "libpetsc4py.pyx":132
+ /* "libpetsc4py.pyx":134
* cdef PetscErrorCode PetscCHKERR(PetscErrorCode ierr) nogil:
* global fstack, istack
* istack = 0; fstack[istack] = NULL; # <<<<<<<<<<<<<<
@@ -2392,7 +2706,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscCHKERR(PetscErrorCode __pyx_v_i
__pyx_v_11libpetsc4py_istack = 0;
(__pyx_v_11libpetsc4py_fstack[__pyx_v_11libpetsc4py_istack]) = NULL;
- /* "libpetsc4py.pyx":134
+ /* "libpetsc4py.pyx":136
* istack = 0; fstack[istack] = NULL;
* global FUNCT
* return PetscERROR(PETSC_COMM_SELF,FUNCT,ierr, # <<<<<<<<<<<<<<
@@ -2402,7 +2716,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscCHKERR(PetscErrorCode __pyx_v_i
__pyx_r = PetscERROR(PETSC_COMM_SELF, __pyx_v_11libpetsc4py_FUNCT, __pyx_v_ierr, PETSC_ERROR_REPEAT, ((char *)""), NULL);
goto __pyx_L0;
- /* "libpetsc4py.pyx":130
+ /* "libpetsc4py.pyx":132
* PETSC_ERROR_INITIAL, msg, NULL)
*
* cdef PetscErrorCode PetscCHKERR(PetscErrorCode ierr) nogil: # <<<<<<<<<<<<<<
@@ -2415,7 +2729,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscCHKERR(PetscErrorCode __pyx_v_i
return __pyx_r;
}
-/* "libpetsc4py.pyx":145
+/* "libpetsc4py.pyx":147
* from petsc4py.PETSc import Error as PetscError
*
* cdef inline void PythonSETERR(PetscErrorCode ierr) with gil: # <<<<<<<<<<<<<<
@@ -2429,11 +2743,11 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_PythonSETERR(PetscErrorCode __py
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PythonSETERR", 0);
- /* "libpetsc4py.pyx":146
+ /* "libpetsc4py.pyx":148
*
* cdef inline void PythonSETERR(PetscErrorCode ierr) with gil:
* if (<void*>PetscError) != NULL: # <<<<<<<<<<<<<<
@@ -2443,7 +2757,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_PythonSETERR(PetscErrorCode __py
__pyx_t_1 = ((((void *)__pyx_v_11libpetsc4py_PetscError) != NULL) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":147
+ /* "libpetsc4py.pyx":149
* cdef inline void PythonSETERR(PetscErrorCode ierr) with gil:
* if (<void*>PetscError) != NULL:
* PyErr_SetObject(PetscError, <long>ierr) # <<<<<<<<<<<<<<
@@ -2452,13 +2766,13 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_PythonSETERR(PetscErrorCode __py
*/
__pyx_t_2 = __pyx_v_11libpetsc4py_PetscError;
__Pyx_INCREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyInt_From_long(((long)__pyx_v_ierr)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 147, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyInt_From_long(((long)__pyx_v_ierr)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 149, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
PyErr_SetObject(__pyx_t_2, __pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":146
+ /* "libpetsc4py.pyx":148
*
* cdef inline void PythonSETERR(PetscErrorCode ierr) with gil:
* if (<void*>PetscError) != NULL: # <<<<<<<<<<<<<<
@@ -2468,7 +2782,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_PythonSETERR(PetscErrorCode __py
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":149
+ /* "libpetsc4py.pyx":151
* PyErr_SetObject(PetscError, <long>ierr)
* else:
* PyErr_SetObject(<object>PyExc_RuntimeError, <long>ierr) # <<<<<<<<<<<<<<
@@ -2478,7 +2792,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_PythonSETERR(PetscErrorCode __py
/*else*/ {
__pyx_t_3 = ((PyObject *)PyExc_RuntimeError);
__Pyx_INCREF(__pyx_t_3);
- __pyx_t_2 = __Pyx_PyInt_From_long(((long)__pyx_v_ierr)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 149, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_long(((long)__pyx_v_ierr)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 151, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
PyErr_SetObject(__pyx_t_3, __pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -2486,7 +2800,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_PythonSETERR(PetscErrorCode __py
}
__pyx_L3:;
- /* "libpetsc4py.pyx":145
+ /* "libpetsc4py.pyx":147
* from petsc4py.PETSc import Error as PetscError
*
* cdef inline void PythonSETERR(PetscErrorCode ierr) with gil: # <<<<<<<<<<<<<<
@@ -2499,15 +2813,15 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_PythonSETERR(PetscErrorCode __py
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
- __Pyx_WriteUnraisable("libpetsc4py.PythonSETERR", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("libpetsc4py.PythonSETERR", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
}
-/* "libpetsc4py.pyx":151
+/* "libpetsc4py.pyx":153
* PyErr_SetObject(<object>PyExc_RuntimeError, <long>ierr)
*
* cdef inline int CHKERR(PetscErrorCode ierr) nogil except -1: # <<<<<<<<<<<<<<
@@ -2519,7 +2833,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
int __pyx_r;
int __pyx_t_1;
- /* "libpetsc4py.pyx":152
+ /* "libpetsc4py.pyx":154
*
* cdef inline int CHKERR(PetscErrorCode ierr) nogil except -1:
* if ierr == 0: # <<<<<<<<<<<<<<
@@ -2529,7 +2843,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
__pyx_t_1 = ((__pyx_v_ierr == 0) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":153
+ /* "libpetsc4py.pyx":155
* cdef inline int CHKERR(PetscErrorCode ierr) nogil except -1:
* if ierr == 0:
* return 0 # <<<<<<<<<<<<<<
@@ -2539,7 +2853,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":152
+ /* "libpetsc4py.pyx":154
*
* cdef inline int CHKERR(PetscErrorCode ierr) nogil except -1:
* if ierr == 0: # <<<<<<<<<<<<<<
@@ -2548,7 +2862,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
*/
}
- /* "libpetsc4py.pyx":154
+ /* "libpetsc4py.pyx":156
* if ierr == 0:
* return 0
* if ierr == PETSC_ERR_PYTHON: # <<<<<<<<<<<<<<
@@ -2558,7 +2872,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
__pyx_t_1 = ((__pyx_v_ierr == PETSC_ERR_PYTHON) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":156
+ /* "libpetsc4py.pyx":158
* if ierr == PETSC_ERR_PYTHON:
* #PetscCHKERR(ierr)
* return -1 # <<<<<<<<<<<<<<
@@ -2568,7 +2882,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
__pyx_r = -1;
goto __pyx_L0;
- /* "libpetsc4py.pyx":154
+ /* "libpetsc4py.pyx":156
* if ierr == 0:
* return 0
* if ierr == PETSC_ERR_PYTHON: # <<<<<<<<<<<<<<
@@ -2577,7 +2891,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
*/
}
- /* "libpetsc4py.pyx":157
+ /* "libpetsc4py.pyx":159
* #PetscCHKERR(ierr)
* return -1
* if Py_IsInitialized(): # <<<<<<<<<<<<<<
@@ -2587,7 +2901,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
__pyx_t_1 = (Py_IsInitialized() != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":158
+ /* "libpetsc4py.pyx":160
* return -1
* if Py_IsInitialized():
* PythonSETERR(ierr) # <<<<<<<<<<<<<<
@@ -2596,7 +2910,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
*/
__pyx_f_11libpetsc4py_PythonSETERR(__pyx_v_ierr);
- /* "libpetsc4py.pyx":157
+ /* "libpetsc4py.pyx":159
* #PetscCHKERR(ierr)
* return -1
* if Py_IsInitialized(): # <<<<<<<<<<<<<<
@@ -2605,7 +2919,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
*/
}
- /* "libpetsc4py.pyx":159
+ /* "libpetsc4py.pyx":161
* if Py_IsInitialized():
* PythonSETERR(ierr)
* PetscCHKERR(ierr) # <<<<<<<<<<<<<<
@@ -2614,7 +2928,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
*/
__pyx_f_11libpetsc4py_PetscCHKERR(__pyx_v_ierr);
- /* "libpetsc4py.pyx":160
+ /* "libpetsc4py.pyx":162
* PythonSETERR(ierr)
* PetscCHKERR(ierr)
* return -1 # <<<<<<<<<<<<<<
@@ -2624,7 +2938,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
__pyx_r = -1;
goto __pyx_L0;
- /* "libpetsc4py.pyx":151
+ /* "libpetsc4py.pyx":153
* PyErr_SetObject(<object>PyExc_RuntimeError, <long>ierr)
*
* cdef inline int CHKERR(PetscErrorCode ierr) nogil except -1: # <<<<<<<<<<<<<<
@@ -2637,7 +2951,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
return __pyx_r;
}
-/* "libpetsc4py.pyx":162
+/* "libpetsc4py.pyx":164
* return -1
*
* cdef PetscErrorCode UNSUPPORTED(char msg[]) nogil: # <<<<<<<<<<<<<<
@@ -2648,7 +2962,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_CHKERR(PetscErrorCode __pyx_v_ier
static PetscErrorCode __pyx_f_11libpetsc4py_UNSUPPORTED(char *__pyx_v_msg) {
PetscErrorCode __pyx_r;
- /* "libpetsc4py.pyx":164
+ /* "libpetsc4py.pyx":166
* cdef PetscErrorCode UNSUPPORTED(char msg[]) nogil:
* global FUNCT
* return PetscERROR(PETSC_COMM_SELF,FUNCT,PETSC_ERR_USER, # <<<<<<<<<<<<<<
@@ -2658,7 +2972,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_UNSUPPORTED(char *__pyx_v_msg) {
__pyx_r = PetscERROR(PETSC_COMM_SELF, __pyx_v_11libpetsc4py_FUNCT, PETSC_ERR_USER, PETSC_ERROR_INITIAL, ((char *)"method %s()"), __pyx_v_msg);
goto __pyx_L0;
- /* "libpetsc4py.pyx":162
+ /* "libpetsc4py.pyx":164
* return -1
*
* cdef PetscErrorCode UNSUPPORTED(char msg[]) nogil: # <<<<<<<<<<<<<<
@@ -2671,7 +2985,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_UNSUPPORTED(char *__pyx_v_msg) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":169
+/* "libpetsc4py.pyx":171
* # --------------------------------------------------------------------
*
* cdef inline PetscInt getRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2684,7 +2998,7 @@ static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_getRef(void *__pyx_v_pobj) {
PetscInt __pyx_r;
int __pyx_t_1;
- /* "libpetsc4py.pyx":170
+ /* "libpetsc4py.pyx":172
*
* cdef inline PetscInt getRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj # <<<<<<<<<<<<<<
@@ -2693,7 +3007,7 @@ static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_getRef(void *__pyx_v_pobj) {
*/
__pyx_v_obj = ((PetscObject)__pyx_v_pobj);
- /* "libpetsc4py.pyx":171
+ /* "libpetsc4py.pyx":173
* cdef inline PetscInt getRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj
* if obj == NULL: return 0 # <<<<<<<<<<<<<<
@@ -2706,7 +3020,7 @@ static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_getRef(void *__pyx_v_pobj) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":172
+ /* "libpetsc4py.pyx":174
* cdef PetscObject obj = <PetscObject>pobj
* if obj == NULL: return 0
* else: return obj.refct # <<<<<<<<<<<<<<
@@ -2718,7 +3032,7 @@ static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_getRef(void *__pyx_v_pobj) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":169
+ /* "libpetsc4py.pyx":171
* # --------------------------------------------------------------------
*
* cdef inline PetscInt getRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2731,7 +3045,7 @@ static CYTHON_INLINE PetscInt __pyx_f_11libpetsc4py_getRef(void *__pyx_v_pobj) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":174
+/* "libpetsc4py.pyx":176
* else: return obj.refct
*
* cdef inline void addRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2743,7 +3057,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_addRef(void *__pyx_v_pobj) {
PetscObject __pyx_v_obj;
int __pyx_t_1;
- /* "libpetsc4py.pyx":175
+ /* "libpetsc4py.pyx":177
*
* cdef inline void addRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj # <<<<<<<<<<<<<<
@@ -2752,7 +3066,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_addRef(void *__pyx_v_pobj) {
*/
__pyx_v_obj = ((PetscObject)__pyx_v_pobj);
- /* "libpetsc4py.pyx":176
+ /* "libpetsc4py.pyx":178
* cdef inline void addRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj
* if obj != NULL: obj.refct += 1 # <<<<<<<<<<<<<<
@@ -2764,7 +3078,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_addRef(void *__pyx_v_pobj) {
__pyx_v_obj->refct = (__pyx_v_obj->refct + 1);
}
- /* "libpetsc4py.pyx":174
+ /* "libpetsc4py.pyx":176
* else: return obj.refct
*
* cdef inline void addRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2775,7 +3089,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_addRef(void *__pyx_v_pobj) {
/* function exit code */
}
-/* "libpetsc4py.pyx":178
+/* "libpetsc4py.pyx":180
* if obj != NULL: obj.refct += 1
*
* cdef inline void delRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2787,7 +3101,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_delRef(void *__pyx_v_pobj) {
PetscObject __pyx_v_obj;
int __pyx_t_1;
- /* "libpetsc4py.pyx":179
+ /* "libpetsc4py.pyx":181
*
* cdef inline void delRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj # <<<<<<<<<<<<<<
@@ -2796,7 +3110,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_delRef(void *__pyx_v_pobj) {
*/
__pyx_v_obj = ((PetscObject)__pyx_v_pobj);
- /* "libpetsc4py.pyx":180
+ /* "libpetsc4py.pyx":182
* cdef inline void delRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj
* if obj != NULL: obj.refct -= 1 # <<<<<<<<<<<<<<
@@ -2808,7 +3122,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_delRef(void *__pyx_v_pobj) {
__pyx_v_obj->refct = (__pyx_v_obj->refct - 1);
}
- /* "libpetsc4py.pyx":178
+ /* "libpetsc4py.pyx":180
* if obj != NULL: obj.refct += 1
*
* cdef inline void delRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2819,7 +3133,7 @@ static CYTHON_INLINE void __pyx_f_11libpetsc4py_delRef(void *__pyx_v_pobj) {
/* function exit code */
}
-/* "libpetsc4py.pyx":182
+/* "libpetsc4py.pyx":184
* if obj != NULL: obj.refct -= 1
*
* cdef inline PetscObject newRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2833,7 +3147,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
PetscObject __pyx_r;
int __pyx_t_1;
- /* "libpetsc4py.pyx":183
+ /* "libpetsc4py.pyx":185
*
* cdef inline PetscObject newRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj # <<<<<<<<<<<<<<
@@ -2842,7 +3156,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
*/
__pyx_v_obj = ((PetscObject)__pyx_v_pobj);
- /* "libpetsc4py.pyx":184
+ /* "libpetsc4py.pyx":186
* cdef inline PetscObject newRef(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj
* cdef int ierr = 0 # <<<<<<<<<<<<<<
@@ -2851,7 +3165,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
*/
__pyx_v_ierr = 0;
- /* "libpetsc4py.pyx":185
+ /* "libpetsc4py.pyx":187
* cdef PetscObject obj = <PetscObject>pobj
* cdef int ierr = 0
* if obj != NULL: # <<<<<<<<<<<<<<
@@ -2861,7 +3175,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
__pyx_t_1 = ((__pyx_v_obj != NULL) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":186
+ /* "libpetsc4py.pyx":188
* cdef int ierr = 0
* if obj != NULL:
* ierr = PetscObjectReference(obj) # <<<<<<<<<<<<<<
@@ -2870,7 +3184,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
*/
__pyx_v_ierr = PetscObjectReference(__pyx_v_obj);
- /* "libpetsc4py.pyx":187
+ /* "libpetsc4py.pyx":189
* if obj != NULL:
* ierr = PetscObjectReference(obj)
* if ierr: return NULL # XXX warning! # <<<<<<<<<<<<<<
@@ -2883,7 +3197,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":185
+ /* "libpetsc4py.pyx":187
* cdef PetscObject obj = <PetscObject>pobj
* cdef int ierr = 0
* if obj != NULL: # <<<<<<<<<<<<<<
@@ -2892,7 +3206,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
*/
}
- /* "libpetsc4py.pyx":188
+ /* "libpetsc4py.pyx":190
* ierr = PetscObjectReference(obj)
* if ierr: return NULL # XXX warning!
* return obj # <<<<<<<<<<<<<<
@@ -2902,7 +3216,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
__pyx_r = __pyx_v_obj;
goto __pyx_L0;
- /* "libpetsc4py.pyx":182
+ /* "libpetsc4py.pyx":184
* if obj != NULL: obj.refct -= 1
*
* cdef inline PetscObject newRef(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2915,7 +3229,7 @@ static CYTHON_INLINE PetscObject __pyx_f_11libpetsc4py_newRef(void *__pyx_v_pobj
return __pyx_r;
}
-/* "libpetsc4py.pyx":190
+/* "libpetsc4py.pyx":192
* return obj
*
* cdef inline char* getPrefix(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2928,7 +3242,7 @@ static CYTHON_INLINE char *__pyx_f_11libpetsc4py_getPrefix(void *__pyx_v_pobj) {
char *__pyx_r;
int __pyx_t_1;
- /* "libpetsc4py.pyx":191
+ /* "libpetsc4py.pyx":193
*
* cdef inline char* getPrefix(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj # <<<<<<<<<<<<<<
@@ -2937,7 +3251,7 @@ static CYTHON_INLINE char *__pyx_f_11libpetsc4py_getPrefix(void *__pyx_v_pobj) {
*/
__pyx_v_obj = ((PetscObject)__pyx_v_pobj);
- /* "libpetsc4py.pyx":192
+ /* "libpetsc4py.pyx":194
* cdef inline char* getPrefix(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj
* if obj == NULL: return NULL # <<<<<<<<<<<<<<
@@ -2950,7 +3264,7 @@ static CYTHON_INLINE char *__pyx_f_11libpetsc4py_getPrefix(void *__pyx_v_pobj) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":193
+ /* "libpetsc4py.pyx":195
* cdef PetscObject obj = <PetscObject>pobj
* if obj == NULL: return NULL
* return obj.prefix # <<<<<<<<<<<<<<
@@ -2960,7 +3274,7 @@ static CYTHON_INLINE char *__pyx_f_11libpetsc4py_getPrefix(void *__pyx_v_pobj) {
__pyx_r = __pyx_v_obj->prefix;
goto __pyx_L0;
- /* "libpetsc4py.pyx":190
+ /* "libpetsc4py.pyx":192
* return obj
*
* cdef inline char* getPrefix(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2973,7 +3287,7 @@ static CYTHON_INLINE char *__pyx_f_11libpetsc4py_getPrefix(void *__pyx_v_pobj) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":195
+/* "libpetsc4py.pyx":197
* return obj.prefix
*
* cdef inline int getCommSize(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -2987,7 +3301,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_getCommSize(void *__pyx_v_pobj) {
int __pyx_r;
int __pyx_t_1;
- /* "libpetsc4py.pyx":196
+ /* "libpetsc4py.pyx":198
*
* cdef inline int getCommSize(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj # <<<<<<<<<<<<<<
@@ -2996,7 +3310,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_getCommSize(void *__pyx_v_pobj) {
*/
__pyx_v_obj = ((PetscObject)__pyx_v_pobj);
- /* "libpetsc4py.pyx":197
+ /* "libpetsc4py.pyx":199
* cdef inline int getCommSize(void *pobj) nogil:
* cdef PetscObject obj = <PetscObject>pobj
* if obj == NULL: return 0 # <<<<<<<<<<<<<<
@@ -3009,7 +3323,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_getCommSize(void *__pyx_v_pobj) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":198
+ /* "libpetsc4py.pyx":200
* cdef PetscObject obj = <PetscObject>pobj
* if obj == NULL: return 0
* cdef int size = 0 # <<<<<<<<<<<<<<
@@ -3018,7 +3332,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_getCommSize(void *__pyx_v_pobj) {
*/
__pyx_v_size = 0;
- /* "libpetsc4py.pyx":199
+ /* "libpetsc4py.pyx":201
* if obj == NULL: return 0
* cdef int size = 0
* MPI_Comm_size(obj.comm,&size) # <<<<<<<<<<<<<<
@@ -3027,7 +3341,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_getCommSize(void *__pyx_v_pobj) {
*/
MPI_Comm_size(__pyx_v_obj->comm, (&__pyx_v_size));
- /* "libpetsc4py.pyx":200
+ /* "libpetsc4py.pyx":202
* cdef int size = 0
* MPI_Comm_size(obj.comm,&size)
* return size # <<<<<<<<<<<<<<
@@ -3037,7 +3351,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_getCommSize(void *__pyx_v_pobj) {
__pyx_r = __pyx_v_size;
goto __pyx_L0;
- /* "libpetsc4py.pyx":195
+ /* "libpetsc4py.pyx":197
* return obj.prefix
*
* cdef inline int getCommSize(void *pobj) nogil: # <<<<<<<<<<<<<<
@@ -3050,7 +3364,7 @@ static CYTHON_INLINE int __pyx_f_11libpetsc4py_getCommSize(void *__pyx_v_pobj) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":202
+/* "libpetsc4py.pyx":204
* return size
*
* cdef inline Viewer Viewer_(PetscViewer p): # <<<<<<<<<<<<<<
@@ -3065,20 +3379,20 @@ static CYTHON_INLINE struct PyPetscViewerObject *__pyx_f_11libpetsc4py_Viewer_(P
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("Viewer_", 0);
- /* "libpetsc4py.pyx":203
+ /* "libpetsc4py.pyx":205
*
* cdef inline Viewer Viewer_(PetscViewer p):
* cdef Viewer ob = Viewer.__new__(Viewer) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 203, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Viewer)))) __PYX_ERR(0, 203, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Viewer)))) __PYX_ERR(0, 205, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscViewerObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":204
+ /* "libpetsc4py.pyx":206
* cdef inline Viewer Viewer_(PetscViewer p):
* cdef Viewer ob = Viewer.__new__(Viewer)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3087,7 +3401,7 @@ static CYTHON_INLINE struct PyPetscViewerObject *__pyx_f_11libpetsc4py_Viewer_(P
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":205
+ /* "libpetsc4py.pyx":207
* cdef Viewer ob = Viewer.__new__(Viewer)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3099,7 +3413,7 @@ static CYTHON_INLINE struct PyPetscViewerObject *__pyx_f_11libpetsc4py_Viewer_(P
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":202
+ /* "libpetsc4py.pyx":204
* return size
*
* cdef inline Viewer Viewer_(PetscViewer p): # <<<<<<<<<<<<<<
@@ -3119,7 +3433,7 @@ static CYTHON_INLINE struct PyPetscViewerObject *__pyx_f_11libpetsc4py_Viewer_(P
return __pyx_r;
}
-/* "libpetsc4py.pyx":207
+/* "libpetsc4py.pyx":209
* return ob
*
* cdef inline IS IS_(PetscIS p): # <<<<<<<<<<<<<<
@@ -3134,20 +3448,20 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_11libpetsc4py_IS_(IS __pyx_
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("IS_", 0);
- /* "libpetsc4py.pyx":208
+ /* "libpetsc4py.pyx":210
*
* cdef inline IS IS_(PetscIS p):
* cdef IS ob = IS.__new__(IS) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 208, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(0, 208, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(0, 210, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":209
+ /* "libpetsc4py.pyx":211
* cdef inline IS IS_(PetscIS p):
* cdef IS ob = IS.__new__(IS)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3156,7 +3470,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_11libpetsc4py_IS_(IS __pyx_
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":210
+ /* "libpetsc4py.pyx":212
* cdef IS ob = IS.__new__(IS)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3168,7 +3482,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_11libpetsc4py_IS_(IS __pyx_
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":207
+ /* "libpetsc4py.pyx":209
* return ob
*
* cdef inline IS IS_(PetscIS p): # <<<<<<<<<<<<<<
@@ -3188,7 +3502,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_11libpetsc4py_IS_(IS __pyx_
return __pyx_r;
}
-/* "libpetsc4py.pyx":212
+/* "libpetsc4py.pyx":214
* return ob
*
* cdef inline Vec Vec_(PetscVec p): # <<<<<<<<<<<<<<
@@ -3203,20 +3517,20 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_11libpetsc4py_Vec_(Vec __p
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("Vec_", 0);
- /* "libpetsc4py.pyx":213
+ /* "libpetsc4py.pyx":215
*
* cdef inline Vec Vec_(PetscVec p):
* cdef Vec ob = Vec.__new__(Vec) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 213, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 215, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(0, 213, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(0, 215, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":214
+ /* "libpetsc4py.pyx":216
* cdef inline Vec Vec_(PetscVec p):
* cdef Vec ob = Vec.__new__(Vec)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3225,7 +3539,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_11libpetsc4py_Vec_(Vec __p
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":215
+ /* "libpetsc4py.pyx":217
* cdef Vec ob = Vec.__new__(Vec)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3237,7 +3551,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_11libpetsc4py_Vec_(Vec __p
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":212
+ /* "libpetsc4py.pyx":214
* return ob
*
* cdef inline Vec Vec_(PetscVec p): # <<<<<<<<<<<<<<
@@ -3257,7 +3571,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_11libpetsc4py_Vec_(Vec __p
return __pyx_r;
}
-/* "libpetsc4py.pyx":217
+/* "libpetsc4py.pyx":219
* return ob
*
* cdef inline Mat Mat_(PetscMat p): # <<<<<<<<<<<<<<
@@ -3272,20 +3586,20 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_11libpetsc4py_Mat_(Mat __p
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("Mat_", 0);
- /* "libpetsc4py.pyx":218
+ /* "libpetsc4py.pyx":220
*
* cdef inline Mat Mat_(PetscMat p):
* cdef Mat ob = Mat.__new__(Mat) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 218, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 220, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Mat)))) __PYX_ERR(0, 218, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Mat)))) __PYX_ERR(0, 220, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":219
+ /* "libpetsc4py.pyx":221
* cdef inline Mat Mat_(PetscMat p):
* cdef Mat ob = Mat.__new__(Mat)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3294,7 +3608,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_11libpetsc4py_Mat_(Mat __p
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":220
+ /* "libpetsc4py.pyx":222
* cdef Mat ob = Mat.__new__(Mat)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3306,7 +3620,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_11libpetsc4py_Mat_(Mat __p
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":217
+ /* "libpetsc4py.pyx":219
* return ob
*
* cdef inline Mat Mat_(PetscMat p): # <<<<<<<<<<<<<<
@@ -3326,7 +3640,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_11libpetsc4py_Mat_(Mat __p
return __pyx_r;
}
-/* "libpetsc4py.pyx":222
+/* "libpetsc4py.pyx":224
* return ob
*
* cdef inline PC PC_(PetscPC p): # <<<<<<<<<<<<<<
@@ -3341,20 +3655,20 @@ static CYTHON_INLINE struct PyPetscPCObject *__pyx_f_11libpetsc4py_PC_(PC __pyx_
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("PC_", 0);
- /* "libpetsc4py.pyx":223
+ /* "libpetsc4py.pyx":225
*
* cdef inline PC PC_(PetscPC p):
* cdef PC ob = PC.__new__(PC) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_PC), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 223, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_PC), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 225, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_PC)))) __PYX_ERR(0, 223, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_PC)))) __PYX_ERR(0, 225, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscPCObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":224
+ /* "libpetsc4py.pyx":226
* cdef inline PC PC_(PetscPC p):
* cdef PC ob = PC.__new__(PC)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3363,7 +3677,7 @@ static CYTHON_INLINE struct PyPetscPCObject *__pyx_f_11libpetsc4py_PC_(PC __pyx_
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":225
+ /* "libpetsc4py.pyx":227
* cdef PC ob = PC.__new__(PC)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3375,7 +3689,7 @@ static CYTHON_INLINE struct PyPetscPCObject *__pyx_f_11libpetsc4py_PC_(PC __pyx_
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":222
+ /* "libpetsc4py.pyx":224
* return ob
*
* cdef inline PC PC_(PetscPC p): # <<<<<<<<<<<<<<
@@ -3395,7 +3709,7 @@ static CYTHON_INLINE struct PyPetscPCObject *__pyx_f_11libpetsc4py_PC_(PC __pyx_
return __pyx_r;
}
-/* "libpetsc4py.pyx":227
+/* "libpetsc4py.pyx":229
* return ob
*
* cdef inline KSP KSP_(PetscKSP p): # <<<<<<<<<<<<<<
@@ -3410,20 +3724,20 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_11libpetsc4py_KSP_(KSP __p
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("KSP_", 0);
- /* "libpetsc4py.pyx":228
+ /* "libpetsc4py.pyx":230
*
* cdef inline KSP KSP_(PetscKSP p):
* cdef KSP ob = KSP.__new__(KSP) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 228, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_KSP)))) __PYX_ERR(0, 228, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_KSP)))) __PYX_ERR(0, 230, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":229
+ /* "libpetsc4py.pyx":231
* cdef inline KSP KSP_(PetscKSP p):
* cdef KSP ob = KSP.__new__(KSP)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3432,7 +3746,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_11libpetsc4py_KSP_(KSP __p
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":230
+ /* "libpetsc4py.pyx":232
* cdef KSP ob = KSP.__new__(KSP)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3444,7 +3758,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_11libpetsc4py_KSP_(KSP __p
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":227
+ /* "libpetsc4py.pyx":229
* return ob
*
* cdef inline KSP KSP_(PetscKSP p): # <<<<<<<<<<<<<<
@@ -3464,7 +3778,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_11libpetsc4py_KSP_(KSP __p
return __pyx_r;
}
-/* "libpetsc4py.pyx":232
+/* "libpetsc4py.pyx":234
* return ob
*
* cdef inline SNES SNES_(PetscSNES p): # <<<<<<<<<<<<<<
@@ -3479,20 +3793,20 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_11libpetsc4py_SNES_(SNES
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("SNES_", 0);
- /* "libpetsc4py.pyx":233
+ /* "libpetsc4py.pyx":235
*
* cdef inline SNES SNES_(PetscSNES p):
* cdef SNES ob = SNES.__new__(SNES) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 233, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 235, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_SNES)))) __PYX_ERR(0, 233, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_SNES)))) __PYX_ERR(0, 235, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":234
+ /* "libpetsc4py.pyx":236
* cdef inline SNES SNES_(PetscSNES p):
* cdef SNES ob = SNES.__new__(SNES)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3501,7 +3815,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_11libpetsc4py_SNES_(SNES
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":235
+ /* "libpetsc4py.pyx":237
* cdef SNES ob = SNES.__new__(SNES)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3513,7 +3827,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_11libpetsc4py_SNES_(SNES
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":232
+ /* "libpetsc4py.pyx":234
* return ob
*
* cdef inline SNES SNES_(PetscSNES p): # <<<<<<<<<<<<<<
@@ -3533,7 +3847,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_11libpetsc4py_SNES_(SNES
return __pyx_r;
}
-/* "libpetsc4py.pyx":237
+/* "libpetsc4py.pyx":239
* return ob
*
* cdef inline TS TS_(PetscTS p): # <<<<<<<<<<<<<<
@@ -3548,20 +3862,20 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_11libpetsc4py_TS_(TS __pyx_
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("TS_", 0);
- /* "libpetsc4py.pyx":238
+ /* "libpetsc4py.pyx":240
*
* cdef inline TS TS_(PetscTS p):
* cdef TS ob = TS.__new__(TS) # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(p)
* return ob
*/
- __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_TS), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 238, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_tp_new(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_TS), __pyx_empty_tuple); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 240, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_TS)))) __PYX_ERR(0, 238, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_TS)))) __PYX_ERR(0, 240, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":239
+ /* "libpetsc4py.pyx":241
* cdef inline TS TS_(PetscTS p):
* cdef TS ob = TS.__new__(TS)
* ob.obj[0] = newRef(p) # <<<<<<<<<<<<<<
@@ -3570,7 +3884,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_11libpetsc4py_TS_(TS __pyx_
*/
(__pyx_v_ob->__pyx_base.obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_p);
- /* "libpetsc4py.pyx":240
+ /* "libpetsc4py.pyx":242
* cdef TS ob = TS.__new__(TS)
* ob.obj[0] = newRef(p)
* return ob # <<<<<<<<<<<<<<
@@ -3582,7 +3896,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_11libpetsc4py_TS_(TS __pyx_
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "libpetsc4py.pyx":237
+ /* "libpetsc4py.pyx":239
* return ob
*
* cdef inline TS TS_(PetscTS p): # <<<<<<<<<<<<<<
@@ -3602,7 +3916,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_11libpetsc4py_TS_(TS __pyx_
return __pyx_r;
}
-/* "libpetsc4py.pyx":247
+/* "libpetsc4py.pyx":249
* ctypedef char const_char "const char"
*
* cdef inline object bytes2str(const_char p[]): # <<<<<<<<<<<<<<
@@ -3619,7 +3933,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_bytes2str(const char *__pyx
int __pyx_t_3;
__Pyx_RefNannySetupContext("bytes2str", 0);
- /* "libpetsc4py.pyx":248
+ /* "libpetsc4py.pyx":250
*
* cdef inline object bytes2str(const_char p[]):
* if p == NULL: return None # <<<<<<<<<<<<<<
@@ -3634,19 +3948,19 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_bytes2str(const char *__pyx
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":249
+ /* "libpetsc4py.pyx":251
* cdef inline object bytes2str(const_char p[]):
* if p == NULL: return None
* cdef bytes s = <char*>p # <<<<<<<<<<<<<<
* if not isinstance(s, str):
* return s.decode()
*/
- __pyx_t_2 = __Pyx_PyBytes_FromString(((char *)__pyx_v_p)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 249, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyBytes_FromString(((char *)__pyx_v_p)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_s = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":250
+ /* "libpetsc4py.pyx":252
* if p == NULL: return None
* cdef bytes s = <char*>p
* if not isinstance(s, str): # <<<<<<<<<<<<<<
@@ -3657,7 +3971,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_bytes2str(const char *__pyx
__pyx_t_3 = ((!(__pyx_t_1 != 0)) != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":251
+ /* "libpetsc4py.pyx":253
* cdef bytes s = <char*>p
* if not isinstance(s, str):
* return s.decode() # <<<<<<<<<<<<<<
@@ -3665,13 +3979,13 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_bytes2str(const char *__pyx
* return s
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_decode_bytes(__pyx_v_s, 0, PY_SSIZE_T_MAX, NULL, NULL, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_decode_bytes(__pyx_v_s, 0, PY_SSIZE_T_MAX, NULL, NULL, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":250
+ /* "libpetsc4py.pyx":252
* if p == NULL: return None
* cdef bytes s = <char*>p
* if not isinstance(s, str): # <<<<<<<<<<<<<<
@@ -3680,7 +3994,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_bytes2str(const char *__pyx
*/
}
- /* "libpetsc4py.pyx":253
+ /* "libpetsc4py.pyx":255
* return s.decode()
* else:
* return s # <<<<<<<<<<<<<<
@@ -3694,7 +4008,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_bytes2str(const char *__pyx
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":247
+ /* "libpetsc4py.pyx":249
* ctypedef char const_char "const char"
*
* cdef inline object bytes2str(const_char p[]): # <<<<<<<<<<<<<<
@@ -3714,7 +4028,7 @@ static CYTHON_INLINE PyObject *__pyx_f_11libpetsc4py_bytes2str(const char *__pyx
return __pyx_r;
}
-/* "libpetsc4py.pyx":255
+/* "libpetsc4py.pyx":257
* return s
*
* cdef object parse_url(object url): # <<<<<<<<<<<<<<
@@ -3734,21 +4048,21 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
PyObject *(*__pyx_t_5)(PyObject *);
__Pyx_RefNannySetupContext("parse_url", 0);
- /* "libpetsc4py.pyx":256
+ /* "libpetsc4py.pyx":258
*
* cdef object parse_url(object url):
* path, name = url.rsplit(":", 1) # <<<<<<<<<<<<<<
* return (path, name)
*
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_url, __pyx_n_s_rsplit); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 256, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_url, __pyx_n_s_rsplit); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 256, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -3756,9 +4070,9 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 256, __pyx_L1_error)
+ __PYX_ERR(0, 258, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -3769,15 +4083,15 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_3);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 256, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 256, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 256, __pyx_L1_error)
+ __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
@@ -3785,7 +4099,7 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_3 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) __PYX_ERR(0, 256, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) __PYX_ERR(0, 258, __pyx_L1_error)
__pyx_t_5 = NULL;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L4_unpacking_done;
@@ -3793,7 +4107,7 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_5 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 256, __pyx_L1_error)
+ __PYX_ERR(0, 258, __pyx_L1_error)
__pyx_L4_unpacking_done:;
}
__pyx_v_path = __pyx_t_1;
@@ -3801,7 +4115,7 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
__pyx_v_name = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":257
+ /* "libpetsc4py.pyx":259
* cdef object parse_url(object url):
* path, name = url.rsplit(":", 1)
* return (path, name) # <<<<<<<<<<<<<<
@@ -3809,7 +4123,7 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
* cdef dict module_cache = {}
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 257, __pyx_L1_error)
+ __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_path);
__Pyx_GIVEREF(__pyx_v_path);
@@ -3821,7 +4135,7 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":255
+ /* "libpetsc4py.pyx":257
* return s
*
* cdef object parse_url(object url): # <<<<<<<<<<<<<<
@@ -3845,7 +4159,7 @@ static PyObject *__pyx_f_11libpetsc4py_parse_url(PyObject *__pyx_v_url) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":261
+/* "libpetsc4py.pyx":263
* cdef dict module_cache = {}
*
* cdef object load_module(object path): # <<<<<<<<<<<<<<
@@ -3879,7 +4193,7 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
PyObject *__pyx_t_17 = NULL;
__Pyx_RefNannySetupContext("load_module", 0);
- /* "libpetsc4py.pyx":262
+ /* "libpetsc4py.pyx":264
*
* cdef object load_module(object path):
* if path in module_cache: # <<<<<<<<<<<<<<
@@ -3888,13 +4202,13 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
*/
if (unlikely(__pyx_v_11libpetsc4py_module_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
- __PYX_ERR(0, 262, __pyx_L1_error)
+ __PYX_ERR(0, 264, __pyx_L1_error)
}
- __pyx_t_1 = (__Pyx_PyDict_ContainsTF(__pyx_v_path, __pyx_v_11libpetsc4py_module_cache, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 262, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyDict_ContainsTF(__pyx_v_path, __pyx_v_11libpetsc4py_module_cache, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 264, __pyx_L1_error)
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":263
+ /* "libpetsc4py.pyx":265
* cdef object load_module(object path):
* if path in module_cache:
* return module_cache[path] # <<<<<<<<<<<<<<
@@ -3904,15 +4218,15 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__Pyx_XDECREF(__pyx_r);
if (unlikely(__pyx_v_11libpetsc4py_module_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 263, __pyx_L1_error)
+ __PYX_ERR(0, 265, __pyx_L1_error)
}
- __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_11libpetsc4py_module_cache, __pyx_v_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 263, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_11libpetsc4py_module_cache, __pyx_v_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":262
+ /* "libpetsc4py.pyx":264
*
* cdef object load_module(object path):
* if path in module_cache: # <<<<<<<<<<<<<<
@@ -3921,37 +4235,37 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
*/
}
- /* "libpetsc4py.pyx":264
+ /* "libpetsc4py.pyx":266
* if path in module_cache:
* return module_cache[path]
* module = PyModule_New("__petsc__") # <<<<<<<<<<<<<<
* module.__file__ = path
* module.__package__ = None
*/
- __pyx_t_3 = PyModule_New(((char *)"__petsc__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 264, __pyx_L1_error)
+ __pyx_t_3 = PyModule_New(((char *)"__petsc__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 266, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_module = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":265
+ /* "libpetsc4py.pyx":267
* return module_cache[path]
* module = PyModule_New("__petsc__")
* module.__file__ = path # <<<<<<<<<<<<<<
* module.__package__ = None
* module_cache[path] = module
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_module, __pyx_n_s_file, __pyx_v_path) < 0) __PYX_ERR(0, 265, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_module, __pyx_n_s_file, __pyx_v_path) < 0) __PYX_ERR(0, 267, __pyx_L1_error)
- /* "libpetsc4py.pyx":266
+ /* "libpetsc4py.pyx":268
* module = PyModule_New("__petsc__")
* module.__file__ = path
* module.__package__ = None # <<<<<<<<<<<<<<
* module_cache[path] = module
* try:
*/
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_module, __pyx_n_s_package, Py_None) < 0) __PYX_ERR(0, 266, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_module, __pyx_n_s_package, Py_None) < 0) __PYX_ERR(0, 268, __pyx_L1_error)
- /* "libpetsc4py.pyx":267
+ /* "libpetsc4py.pyx":269
* module.__file__ = path
* module.__package__ = None
* module_cache[path] = module # <<<<<<<<<<<<<<
@@ -3960,11 +4274,11 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
*/
if (unlikely(__pyx_v_11libpetsc4py_module_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 267, __pyx_L1_error)
+ __PYX_ERR(0, 269, __pyx_L1_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_11libpetsc4py_module_cache, __pyx_v_path, __pyx_v_module) < 0)) __PYX_ERR(0, 267, __pyx_L1_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_11libpetsc4py_module_cache, __pyx_v_path, __pyx_v_module) < 0)) __PYX_ERR(0, 269, __pyx_L1_error)
- /* "libpetsc4py.pyx":268
+ /* "libpetsc4py.pyx":270
* module.__package__ = None
* module_cache[path] = module
* try: # <<<<<<<<<<<<<<
@@ -3980,14 +4294,14 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__Pyx_XGOTREF(__pyx_t_6);
/*try:*/ {
- /* "libpetsc4py.pyx":269
+ /* "libpetsc4py.pyx":271
* module_cache[path] = module
* try:
* source = open(path, 'rU') # <<<<<<<<<<<<<<
* try:
* code = compile(source.read(), path, 'exec')
*/
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 269, __pyx_L4_error)
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 271, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_path);
__Pyx_GIVEREF(__pyx_v_path);
@@ -3995,13 +4309,13 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__Pyx_INCREF(__pyx_n_s_rU);
__Pyx_GIVEREF(__pyx_n_s_rU);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_rU);
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_open, __pyx_t_3, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 269, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_open, __pyx_t_3, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 271, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_source = __pyx_t_7;
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":270
+ /* "libpetsc4py.pyx":272
* try:
* source = open(path, 'rU')
* try: # <<<<<<<<<<<<<<
@@ -4010,17 +4324,17 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
*/
/*try:*/ {
- /* "libpetsc4py.pyx":271
+ /* "libpetsc4py.pyx":273
* source = open(path, 'rU')
* try:
* code = compile(source.read(), path, 'exec') # <<<<<<<<<<<<<<
* finally:
* source.close()
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_read); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 271, __pyx_L15_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_read); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 273, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -4030,14 +4344,14 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
}
}
if (__pyx_t_8) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 271, __pyx_L15_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 273, __pyx_L11_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
- __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 271, __pyx_L15_error)
+ __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 273, __pyx_L11_error)
}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 271, __pyx_L15_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 273, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_7);
@@ -4048,14 +4362,14 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__Pyx_GIVEREF(__pyx_n_s_exec);
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_n_s_exec);
__pyx_t_7 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_compile, __pyx_t_3, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 271, __pyx_L15_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_compile, __pyx_t_3, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 273, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_code = __pyx_t_7;
__pyx_t_7 = 0;
}
- /* "libpetsc4py.pyx":273
+ /* "libpetsc4py.pyx":275
* code = compile(source.read(), path, 'exec')
* finally:
* source.close() # <<<<<<<<<<<<<<
@@ -4064,10 +4378,10 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_close); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 273, __pyx_L4_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_close); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 275, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -4077,19 +4391,19 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
}
}
if (__pyx_t_8) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 273, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 275, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
- __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 273, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 275, __pyx_L4_error)
}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- goto __pyx_L16;
+ goto __pyx_L12;
}
/*exception exit:*/{
__Pyx_PyThreadState_declare
- __pyx_L15_error:;
+ __pyx_L11_error:;
__pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0;
__Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
@@ -4105,10 +4419,10 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__Pyx_XGOTREF(__pyx_t_17);
__pyx_t_9 = __pyx_lineno; __pyx_t_10 = __pyx_clineno; __pyx_t_11 = __pyx_filename;
{
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_close); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 273, __pyx_L20_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_source, __pyx_n_s_close); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 275, __pyx_L14_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -4118,16 +4432,15 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
}
}
if (__pyx_t_8) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 273, __pyx_L20_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 275, __pyx_L14_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
- __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 273, __pyx_L20_error)
+ __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 275, __pyx_L14_error)
}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_15);
__Pyx_XGIVEREF(__pyx_t_16);
@@ -4141,8 +4454,7 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__pyx_t_12 = 0; __pyx_t_13 = 0; __pyx_t_14 = 0; __pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0;
__pyx_lineno = __pyx_t_9; __pyx_clineno = __pyx_t_10; __pyx_filename = __pyx_t_11;
goto __pyx_L4_error;
- __pyx_L20_error:;
- __Pyx_PyThreadState_assign
+ __pyx_L14_error:;
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_15);
__Pyx_XGIVEREF(__pyx_t_16);
@@ -4155,22 +4467,22 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__pyx_t_15 = 0; __pyx_t_16 = 0; __pyx_t_17 = 0;
goto __pyx_L4_error;
}
- __pyx_L16:;
+ __pyx_L12:;
}
- /* "libpetsc4py.pyx":274
+ /* "libpetsc4py.pyx":276
* finally:
* source.close()
* namespace = module.__dict__ # <<<<<<<<<<<<<<
* exec code in namespace
* except:
*/
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_module, __pyx_n_s_dict); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 274, __pyx_L4_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_module, __pyx_n_s_dict); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 276, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_v_namespace = __pyx_t_7;
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":275
+ /* "libpetsc4py.pyx":277
* source.close()
* namespace = module.__dict__
* exec code in namespace # <<<<<<<<<<<<<<
@@ -4178,11 +4490,11 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
* del module_cache[path]
*/
__pyx_t_7 = __Pyx_PyExec3(__pyx_v_code, __pyx_v_namespace, 0);
- if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 275, __pyx_L4_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 277, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":268
+ /* "libpetsc4py.pyx":270
* module.__package__ = None
* module_cache[path] = module
* try: # <<<<<<<<<<<<<<
@@ -4193,14 +4505,13 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- goto __pyx_L11_try_end;
+ goto __pyx_L9_try_end;
__pyx_L4_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":276
+ /* "libpetsc4py.pyx":278
* namespace = module.__dict__
* exec code in namespace
* except: # <<<<<<<<<<<<<<
@@ -4209,12 +4520,12 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
*/
/*except:*/ {
__Pyx_AddTraceback("libpetsc4py.load_module", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_3, &__pyx_t_8) < 0) __PYX_ERR(0, 276, __pyx_L6_except_error)
+ if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_3, &__pyx_t_8) < 0) __PYX_ERR(0, 278, __pyx_L6_except_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_t_8);
- /* "libpetsc4py.pyx":277
+ /* "libpetsc4py.pyx":279
* exec code in namespace
* except:
* del module_cache[path] # <<<<<<<<<<<<<<
@@ -4223,11 +4534,11 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
*/
if (unlikely(__pyx_v_11libpetsc4py_module_cache == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(0, 277, __pyx_L6_except_error)
+ __PYX_ERR(0, 279, __pyx_L6_except_error)
}
- if (unlikely(PyDict_DelItem(__pyx_v_11libpetsc4py_module_cache, __pyx_v_path) < 0)) __PYX_ERR(0, 277, __pyx_L6_except_error)
+ if (unlikely(PyDict_DelItem(__pyx_v_11libpetsc4py_module_cache, __pyx_v_path) < 0)) __PYX_ERR(0, 279, __pyx_L6_except_error)
- /* "libpetsc4py.pyx":278
+ /* "libpetsc4py.pyx":280
* except:
* del module_cache[path]
* raise # <<<<<<<<<<<<<<
@@ -4239,27 +4550,26 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_ErrRestoreWithState(__pyx_t_7, __pyx_t_3, __pyx_t_8);
__pyx_t_7 = 0; __pyx_t_3 = 0; __pyx_t_8 = 0;
- __PYX_ERR(0, 278, __pyx_L6_except_error)
+ __PYX_ERR(0, 280, __pyx_L6_except_error)
}
__pyx_L6_except_error:;
- /* "libpetsc4py.pyx":268
+ /* "libpetsc4py.pyx":270
* module.__package__ = None
* module_cache[path] = module
* try: # <<<<<<<<<<<<<<
* source = open(path, 'rU')
* try:
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
goto __pyx_L1_error;
- __pyx_L11_try_end:;
+ __pyx_L9_try_end:;
}
- /* "libpetsc4py.pyx":279
+ /* "libpetsc4py.pyx":281
* del module_cache[path]
* raise
* return module # <<<<<<<<<<<<<<
@@ -4271,7 +4581,7 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
__pyx_r = __pyx_v_module;
goto __pyx_L0;
- /* "libpetsc4py.pyx":261
+ /* "libpetsc4py.pyx":263
* cdef dict module_cache = {}
*
* cdef object load_module(object path): # <<<<<<<<<<<<<<
@@ -4296,7 +4606,7 @@ static PyObject *__pyx_f_11libpetsc4py_load_module(PyObject *__pyx_v_path) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":289
+/* "libpetsc4py.pyx":291
* cdef bytes name
*
* def __getattr__(self, attr): # <<<<<<<<<<<<<<
@@ -4324,7 +4634,7 @@ static PyObject *__pyx_pf_11libpetsc4py_6_PyObj___getattr__(struct __pyx_obj_11l
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__getattr__", 0);
- /* "libpetsc4py.pyx":290
+ /* "libpetsc4py.pyx":292
*
* def __getattr__(self, attr):
* return getattr(self.self, attr, None) # <<<<<<<<<<<<<<
@@ -4334,14 +4644,14 @@ static PyObject *__pyx_pf_11libpetsc4py_6_PyObj___getattr__(struct __pyx_obj_11l
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = __pyx_v_self->self;
__Pyx_INCREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_GetAttr3(__pyx_t_1, __pyx_v_attr, Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 290, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetAttr3(__pyx_t_1, __pyx_v_attr, Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 292, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":289
+ /* "libpetsc4py.pyx":291
* cdef bytes name
*
* def __getattr__(self, attr): # <<<<<<<<<<<<<<
@@ -4361,7 +4671,7 @@ static PyObject *__pyx_pf_11libpetsc4py_6_PyObj___getattr__(struct __pyx_obj_11l
return __pyx_r;
}
-/* "libpetsc4py.pyx":292
+/* "libpetsc4py.pyx":294
* return getattr(self.self, attr, None)
*
* cdef int setcontext(self, void *ctx, Object base) except -1: # <<<<<<<<<<<<<<
@@ -4382,7 +4692,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("setcontext", 0);
- /* "libpetsc4py.pyx":294
+ /* "libpetsc4py.pyx":296
* cdef int setcontext(self, void *ctx, Object base) except -1:
* #
* if ctx == <void*>self.self: # <<<<<<<<<<<<<<
@@ -4392,7 +4702,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_t_1 = ((__pyx_v_ctx == ((void *)__pyx_v_self->self)) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":295
+ /* "libpetsc4py.pyx":297
* #
* if ctx == <void*>self.self:
* return 0 # <<<<<<<<<<<<<<
@@ -4402,7 +4712,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":294
+ /* "libpetsc4py.pyx":296
* cdef int setcontext(self, void *ctx, Object base) except -1:
* #
* if ctx == <void*>self.self: # <<<<<<<<<<<<<<
@@ -4411,19 +4721,19 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
*/
}
- /* "libpetsc4py.pyx":297
+ /* "libpetsc4py.pyx":299
* return 0
* #
* cdef object destroy = self.destroy # <<<<<<<<<<<<<<
* if destroy is not None:
* destroy(base)
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_destroy); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 297, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_destroy); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_destroy = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":298
+ /* "libpetsc4py.pyx":300
* #
* cdef object destroy = self.destroy
* if destroy is not None: # <<<<<<<<<<<<<<
@@ -4434,7 +4744,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_t_3 = (__pyx_t_1 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":299
+ /* "libpetsc4py.pyx":301
* cdef object destroy = self.destroy
* if destroy is not None:
* destroy(base) # <<<<<<<<<<<<<<
@@ -4443,7 +4753,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
*/
__Pyx_INCREF(__pyx_v_destroy);
__pyx_t_4 = __pyx_v_destroy; __pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -4453,23 +4763,41 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
}
}
if (!__pyx_t_5) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_4, ((PyObject *)__pyx_v_base)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 299, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_4, ((PyObject *)__pyx_v_base)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 301, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 299, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
- __Pyx_INCREF(((PyObject *)__pyx_v_base));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_base));
- PyTuple_SET_ITEM(__pyx_t_6, 0+1, ((PyObject *)__pyx_v_base));
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 299, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, ((PyObject *)__pyx_v_base)};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 301, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, ((PyObject *)__pyx_v_base)};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 301, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ {
+ __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 301, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ __Pyx_INCREF(((PyObject *)__pyx_v_base));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_base));
+ PyTuple_SET_ITEM(__pyx_t_6, 0+1, ((PyObject *)__pyx_v_base));
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 301, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":300
+ /* "libpetsc4py.pyx":302
* if destroy is not None:
* destroy(base)
* destroy = None # <<<<<<<<<<<<<<
@@ -4479,7 +4807,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_destroy, Py_None);
- /* "libpetsc4py.pyx":298
+ /* "libpetsc4py.pyx":300
* #
* cdef object destroy = self.destroy
* if destroy is not None: # <<<<<<<<<<<<<<
@@ -4488,7 +4816,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
*/
}
- /* "libpetsc4py.pyx":302
+ /* "libpetsc4py.pyx":304
* destroy = None
* #
* if ctx == NULL: # <<<<<<<<<<<<<<
@@ -4498,7 +4826,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_t_3 = ((__pyx_v_ctx == NULL) != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":303
+ /* "libpetsc4py.pyx":305
* #
* if ctx == NULL:
* self.self = None # <<<<<<<<<<<<<<
@@ -4511,7 +4839,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__Pyx_DECREF(__pyx_v_self->self);
__pyx_v_self->self = Py_None;
- /* "libpetsc4py.pyx":304
+ /* "libpetsc4py.pyx":306
* if ctx == NULL:
* self.self = None
* self.name = None # <<<<<<<<<<<<<<
@@ -4524,7 +4852,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__Pyx_DECREF(__pyx_v_self->name);
__pyx_v_self->name = ((PyObject*)Py_None);
- /* "libpetsc4py.pyx":305
+ /* "libpetsc4py.pyx":307
* self.self = None
* self.name = None
* return 0 # <<<<<<<<<<<<<<
@@ -4534,7 +4862,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":302
+ /* "libpetsc4py.pyx":304
* destroy = None
* #
* if ctx == NULL: # <<<<<<<<<<<<<<
@@ -4543,7 +4871,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
*/
}
- /* "libpetsc4py.pyx":307
+ /* "libpetsc4py.pyx":309
* return 0
* #
* self.self = <object>ctx # <<<<<<<<<<<<<<
@@ -4558,7 +4886,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_v_self->self = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":308
+ /* "libpetsc4py.pyx":310
* #
* self.self = <object>ctx
* self.name = None # <<<<<<<<<<<<<<
@@ -4571,19 +4899,19 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__Pyx_DECREF(__pyx_v_self->name);
__pyx_v_self->name = ((PyObject*)Py_None);
- /* "libpetsc4py.pyx":309
+ /* "libpetsc4py.pyx":311
* self.self = <object>ctx
* self.name = None
* cdef object create = self.create # <<<<<<<<<<<<<<
* if create is not None:
* create(base)
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_create); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 309, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_create); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 311, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_create = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":310
+ /* "libpetsc4py.pyx":312
* self.name = None
* cdef object create = self.create
* if create is not None: # <<<<<<<<<<<<<<
@@ -4594,7 +4922,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_t_1 = (__pyx_t_3 != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":311
+ /* "libpetsc4py.pyx":313
* cdef object create = self.create
* if create is not None:
* create(base) # <<<<<<<<<<<<<<
@@ -4603,7 +4931,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
*/
__Pyx_INCREF(__pyx_v_create);
__pyx_t_4 = __pyx_v_create; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -4613,23 +4941,41 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_4, ((PyObject *)__pyx_v_base)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 311, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_4, ((PyObject *)__pyx_v_base)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 313, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 311, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_INCREF(((PyObject *)__pyx_v_base));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_base));
- PyTuple_SET_ITEM(__pyx_t_5, 0+1, ((PyObject *)__pyx_v_base));
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 311, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, ((PyObject *)__pyx_v_base)};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 313, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, ((PyObject *)__pyx_v_base)};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 313, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 313, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_INCREF(((PyObject *)__pyx_v_base));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_base));
+ PyTuple_SET_ITEM(__pyx_t_5, 0+1, ((PyObject *)__pyx_v_base));
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 313, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":312
+ /* "libpetsc4py.pyx":314
* if create is not None:
* create(base)
* create = None # <<<<<<<<<<<<<<
@@ -4639,7 +4985,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_create, Py_None);
- /* "libpetsc4py.pyx":310
+ /* "libpetsc4py.pyx":312
* self.name = None
* cdef object create = self.create
* if create is not None: # <<<<<<<<<<<<<<
@@ -4648,7 +4994,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
*/
}
- /* "libpetsc4py.pyx":313
+ /* "libpetsc4py.pyx":315
* create(base)
* create = None
* return 0 # <<<<<<<<<<<<<<
@@ -4658,7 +5004,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":292
+ /* "libpetsc4py.pyx":294
* return getattr(self.self, attr, None)
*
* cdef int setcontext(self, void *ctx, Object base) except -1: # <<<<<<<<<<<<<<
@@ -4681,7 +5027,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setcontext(struct __pyx_obj_11libpetsc4
return __pyx_r;
}
-/* "libpetsc4py.pyx":315
+/* "libpetsc4py.pyx":317
* return 0
*
* cdef int getcontext(self, void **ctx) except -1: # <<<<<<<<<<<<<<
@@ -4696,7 +5042,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
int __pyx_t_2;
__Pyx_RefNannySetupContext("getcontext", 0);
- /* "libpetsc4py.pyx":316
+ /* "libpetsc4py.pyx":318
*
* cdef int getcontext(self, void **ctx) except -1:
* if ctx == NULL: return 0 # <<<<<<<<<<<<<<
@@ -4709,7 +5055,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":317
+ /* "libpetsc4py.pyx":319
* cdef int getcontext(self, void **ctx) except -1:
* if ctx == NULL: return 0
* if self.self is not None: # <<<<<<<<<<<<<<
@@ -4720,7 +5066,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":318
+ /* "libpetsc4py.pyx":320
* if ctx == NULL: return 0
* if self.self is not None:
* ctx[0] = <void*> self.self # <<<<<<<<<<<<<<
@@ -4729,7 +5075,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
*/
(__pyx_v_ctx[0]) = ((void *)__pyx_v_self->self);
- /* "libpetsc4py.pyx":317
+ /* "libpetsc4py.pyx":319
* cdef int getcontext(self, void **ctx) except -1:
* if ctx == NULL: return 0
* if self.self is not None: # <<<<<<<<<<<<<<
@@ -4739,7 +5085,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
goto __pyx_L4;
}
- /* "libpetsc4py.pyx":320
+ /* "libpetsc4py.pyx":322
* ctx[0] = <void*> self.self
* else:
* ctx[0] = NULL # <<<<<<<<<<<<<<
@@ -4751,7 +5097,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
}
__pyx_L4:;
- /* "libpetsc4py.pyx":321
+ /* "libpetsc4py.pyx":323
* else:
* ctx[0] = NULL
* return 0 # <<<<<<<<<<<<<<
@@ -4761,7 +5107,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":315
+ /* "libpetsc4py.pyx":317
* return 0
*
* cdef int getcontext(self, void **ctx) except -1: # <<<<<<<<<<<<<<
@@ -4775,7 +5121,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_getcontext(struct __pyx_obj_11libpetsc4
return __pyx_r;
}
-/* "libpetsc4py.pyx":323
+/* "libpetsc4py.pyx":325
* return 0
*
* cdef int setname(self, char name[]) except -1: # <<<<<<<<<<<<<<
@@ -4791,7 +5137,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setname(struct __pyx_obj_11libpetsc4py_
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("setname", 0);
- /* "libpetsc4py.pyx":324
+ /* "libpetsc4py.pyx":326
*
* cdef int setname(self, char name[]) except -1:
* if name != NULL and name[0] != 0: # <<<<<<<<<<<<<<
@@ -4809,14 +5155,14 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setname(struct __pyx_obj_11libpetsc4py_
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":325
+ /* "libpetsc4py.pyx":327
* cdef int setname(self, char name[]) except -1:
* if name != NULL and name[0] != 0:
* self.name = name # <<<<<<<<<<<<<<
* else:
* self.name = None
*/
- __pyx_t_3 = __Pyx_PyBytes_FromString(__pyx_v_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 325, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyBytes_FromString(__pyx_v_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 327, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_v_self->name);
@@ -4824,7 +5170,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setname(struct __pyx_obj_11libpetsc4py_
__pyx_v_self->name = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":324
+ /* "libpetsc4py.pyx":326
*
* cdef int setname(self, char name[]) except -1:
* if name != NULL and name[0] != 0: # <<<<<<<<<<<<<<
@@ -4834,7 +5180,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setname(struct __pyx_obj_11libpetsc4py_
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":327
+ /* "libpetsc4py.pyx":329
* self.name = name
* else:
* self.name = None # <<<<<<<<<<<<<<
@@ -4850,7 +5196,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setname(struct __pyx_obj_11libpetsc4py_
}
__pyx_L3:;
- /* "libpetsc4py.pyx":328
+ /* "libpetsc4py.pyx":330
* else:
* self.name = None
* return 0 # <<<<<<<<<<<<<<
@@ -4860,7 +5206,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setname(struct __pyx_obj_11libpetsc4py_
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":323
+ /* "libpetsc4py.pyx":325
* return 0
*
* cdef int setname(self, char name[]) except -1: # <<<<<<<<<<<<<<
@@ -4878,7 +5224,7 @@ static int __pyx_f_11libpetsc4py_6_PyObj_setname(struct __pyx_obj_11libpetsc4py_
return __pyx_r;
}
-/* "libpetsc4py.pyx":330
+/* "libpetsc4py.pyx":332
* return 0
*
* cdef char* getname(self) except? NULL: # <<<<<<<<<<<<<<
@@ -4902,7 +5248,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("getname", 0);
- /* "libpetsc4py.pyx":331
+ /* "libpetsc4py.pyx":333
*
* cdef char* getname(self) except? NULL:
* if self.self is None: # <<<<<<<<<<<<<<
@@ -4913,7 +5259,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":332
+ /* "libpetsc4py.pyx":334
* cdef char* getname(self) except? NULL:
* if self.self is None:
* return NULL # <<<<<<<<<<<<<<
@@ -4923,7 +5269,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_r = NULL;
goto __pyx_L0;
- /* "libpetsc4py.pyx":331
+ /* "libpetsc4py.pyx":333
*
* cdef char* getname(self) except? NULL:
* if self.self is None: # <<<<<<<<<<<<<<
@@ -4932,7 +5278,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":333
+ /* "libpetsc4py.pyx":335
* if self.self is None:
* return NULL
* if self.name is not None: # <<<<<<<<<<<<<<
@@ -4943,18 +5289,22 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":334
+ /* "libpetsc4py.pyx":336
* return NULL
* if self.name is not None:
* return self.name # <<<<<<<<<<<<<<
* cdef ctx = self.self
* cdef name = None
*/
- __pyx_t_3 = __Pyx_PyObject_AsString(__pyx_v_self->name); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 334, __pyx_L1_error)
+ if (unlikely(__pyx_v_self->name == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
+ __PYX_ERR(0, 336, __pyx_L1_error)
+ }
+ __pyx_t_3 = __Pyx_PyBytes_AsWritableString(__pyx_v_self->name); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 336, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "libpetsc4py.pyx":333
+ /* "libpetsc4py.pyx":335
* if self.self is None:
* return NULL
* if self.name is not None: # <<<<<<<<<<<<<<
@@ -4963,7 +5313,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":335
+ /* "libpetsc4py.pyx":337
* if self.name is not None:
* return self.name
* cdef ctx = self.self # <<<<<<<<<<<<<<
@@ -4975,7 +5325,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_v_ctx = __pyx_t_4;
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":336
+ /* "libpetsc4py.pyx":338
* return self.name
* cdef ctx = self.self
* cdef name = None # <<<<<<<<<<<<<<
@@ -4985,7 +5335,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__Pyx_INCREF(Py_None);
__pyx_v_name = Py_None;
- /* "libpetsc4py.pyx":337
+ /* "libpetsc4py.pyx":339
* cdef ctx = self.self
* cdef name = None
* if PyModule_Check(ctx): # <<<<<<<<<<<<<<
@@ -4995,19 +5345,19 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_t_1 = (PyModule_Check(__pyx_v_ctx) != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":338
+ /* "libpetsc4py.pyx":340
* cdef name = None
* if PyModule_Check(ctx):
* name = getattr(ctx, '__name__', None) # <<<<<<<<<<<<<<
* else:
* modname = getattr(ctx, '__module__', None)
*/
- __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_ctx, __pyx_n_s_name, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 338, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_ctx, __pyx_n_s_name, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 340, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_4);
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":337
+ /* "libpetsc4py.pyx":339
* cdef ctx = self.self
* cdef name = None
* if PyModule_Check(ctx): # <<<<<<<<<<<<<<
@@ -5017,7 +5367,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
goto __pyx_L5;
}
- /* "libpetsc4py.pyx":340
+ /* "libpetsc4py.pyx":342
* name = getattr(ctx, '__name__', None)
* else:
* modname = getattr(ctx, '__module__', None) # <<<<<<<<<<<<<<
@@ -5025,12 +5375,12 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
* cls = getattr(ctx, '__class__', None)
*/
/*else*/ {
- __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_ctx, __pyx_n_s_module, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 340, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_ctx, __pyx_n_s_module, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 342, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_v_modname = __pyx_t_4;
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":341
+ /* "libpetsc4py.pyx":343
* else:
* modname = getattr(ctx, '__module__', None)
* clsname = None # <<<<<<<<<<<<<<
@@ -5040,64 +5390,64 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__Pyx_INCREF(Py_None);
__pyx_v_clsname = Py_None;
- /* "libpetsc4py.pyx":342
+ /* "libpetsc4py.pyx":344
* modname = getattr(ctx, '__module__', None)
* clsname = None
* cls = getattr(ctx, '__class__', None) # <<<<<<<<<<<<<<
* if cls:
* clsname = getattr(cls, '__name__', None)
*/
- __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_ctx, __pyx_n_s_class, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 342, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_ctx, __pyx_n_s_class, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 344, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_v_cls = __pyx_t_4;
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":343
+ /* "libpetsc4py.pyx":345
* clsname = None
* cls = getattr(ctx, '__class__', None)
* if cls: # <<<<<<<<<<<<<<
* clsname = getattr(cls, '__name__', None)
* if not modname:
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_cls); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 343, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_cls); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 345, __pyx_L1_error)
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":344
+ /* "libpetsc4py.pyx":346
* cls = getattr(ctx, '__class__', None)
* if cls:
* clsname = getattr(cls, '__name__', None) # <<<<<<<<<<<<<<
* if not modname:
* modname = getattr(cls, '__module__', None)
*/
- __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_cls, __pyx_n_s_name, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 344, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_cls, __pyx_n_s_name, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 346, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_clsname, __pyx_t_4);
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":345
+ /* "libpetsc4py.pyx":347
* if cls:
* clsname = getattr(cls, '__name__', None)
* if not modname: # <<<<<<<<<<<<<<
* modname = getattr(cls, '__module__', None)
* if modname and clsname:
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_modname); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 345, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_modname); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 347, __pyx_L1_error)
__pyx_t_2 = ((!__pyx_t_1) != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":346
+ /* "libpetsc4py.pyx":348
* clsname = getattr(cls, '__name__', None)
* if not modname:
* modname = getattr(cls, '__module__', None) # <<<<<<<<<<<<<<
* if modname and clsname:
* name = modname + '.' + clsname
*/
- __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_cls, __pyx_n_s_module, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 346, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_GetAttr3(__pyx_v_cls, __pyx_n_s_module, Py_None); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_modname, __pyx_t_4);
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":345
+ /* "libpetsc4py.pyx":347
* if cls:
* clsname = getattr(cls, '__name__', None)
* if not modname: # <<<<<<<<<<<<<<
@@ -5106,7 +5456,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":343
+ /* "libpetsc4py.pyx":345
* clsname = None
* cls = getattr(ctx, '__class__', None)
* if cls: # <<<<<<<<<<<<<<
@@ -5115,40 +5465,40 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":347
+ /* "libpetsc4py.pyx":349
* if not modname:
* modname = getattr(cls, '__module__', None)
* if modname and clsname: # <<<<<<<<<<<<<<
* name = modname + '.' + clsname
* elif clsname:
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_modname); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 347, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_modname); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 349, __pyx_L1_error)
if (__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_clsname); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 347, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_clsname); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 349, __pyx_L1_error)
__pyx_t_2 = __pyx_t_1;
__pyx_L9_bool_binop_done:;
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":348
+ /* "libpetsc4py.pyx":350
* modname = getattr(cls, '__module__', None)
* if modname and clsname:
* name = modname + '.' + clsname # <<<<<<<<<<<<<<
* elif clsname:
* name = clsname
*/
- __pyx_t_4 = PyNumber_Add(__pyx_v_modname, __pyx_kp_s__3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 348, __pyx_L1_error)
+ __pyx_t_4 = PyNumber_Add(__pyx_v_modname, __pyx_kp_s__3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 350, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyNumber_Add(__pyx_t_4, __pyx_v_clsname); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 348, __pyx_L1_error)
+ __pyx_t_5 = PyNumber_Add(__pyx_t_4, __pyx_v_clsname); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 350, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_5);
__pyx_t_5 = 0;
- /* "libpetsc4py.pyx":347
+ /* "libpetsc4py.pyx":349
* if not modname:
* modname = getattr(cls, '__module__', None)
* if modname and clsname: # <<<<<<<<<<<<<<
@@ -5158,17 +5508,17 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
goto __pyx_L8;
}
- /* "libpetsc4py.pyx":349
+ /* "libpetsc4py.pyx":351
* if modname and clsname:
* name = modname + '.' + clsname
* elif clsname: # <<<<<<<<<<<<<<
* name = clsname
* elif modname:
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_clsname); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 349, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_clsname); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 351, __pyx_L1_error)
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":350
+ /* "libpetsc4py.pyx":352
* name = modname + '.' + clsname
* elif clsname:
* name = clsname # <<<<<<<<<<<<<<
@@ -5178,7 +5528,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__Pyx_INCREF(__pyx_v_clsname);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_v_clsname);
- /* "libpetsc4py.pyx":349
+ /* "libpetsc4py.pyx":351
* if modname and clsname:
* name = modname + '.' + clsname
* elif clsname: # <<<<<<<<<<<<<<
@@ -5188,17 +5538,17 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
goto __pyx_L8;
}
- /* "libpetsc4py.pyx":351
+ /* "libpetsc4py.pyx":353
* elif clsname:
* name = clsname
* elif modname: # <<<<<<<<<<<<<<
* name = modname
* if name is not None:
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_modname); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 351, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_modname); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 353, __pyx_L1_error)
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":352
+ /* "libpetsc4py.pyx":354
* name = clsname
* elif modname:
* name = modname # <<<<<<<<<<<<<<
@@ -5208,7 +5558,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__Pyx_INCREF(__pyx_v_modname);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_v_modname);
- /* "libpetsc4py.pyx":351
+ /* "libpetsc4py.pyx":353
* elif clsname:
* name = clsname
* elif modname: # <<<<<<<<<<<<<<
@@ -5220,7 +5570,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
}
__pyx_L5:;
- /* "libpetsc4py.pyx":353
+ /* "libpetsc4py.pyx":355
* elif modname:
* name = modname
* if name is not None: # <<<<<<<<<<<<<<
@@ -5231,17 +5581,17 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":354
+ /* "libpetsc4py.pyx":356
* name = modname
* if name is not None:
* self.name = name.encode() # <<<<<<<<<<<<<<
* if self.name is not None:
* return self.name
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_name, __pyx_n_s_encode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 354, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_name, __pyx_n_s_encode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -5251,21 +5601,21 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
}
}
if (__pyx_t_6) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 354, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 356, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 354, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 356, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (!(likely(PyBytes_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 354, __pyx_L1_error)
+ if (!(likely(PyBytes_CheckExact(__pyx_t_5))||((__pyx_t_5) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_5)->tp_name), 0))) __PYX_ERR(0, 356, __pyx_L1_error)
__Pyx_GIVEREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_v_self->name);
__Pyx_DECREF(__pyx_v_self->name);
__pyx_v_self->name = ((PyObject*)__pyx_t_5);
__pyx_t_5 = 0;
- /* "libpetsc4py.pyx":353
+ /* "libpetsc4py.pyx":355
* elif modname:
* name = modname
* if name is not None: # <<<<<<<<<<<<<<
@@ -5274,7 +5624,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":355
+ /* "libpetsc4py.pyx":357
* if name is not None:
* self.name = name.encode()
* if self.name is not None: # <<<<<<<<<<<<<<
@@ -5285,18 +5635,22 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":356
+ /* "libpetsc4py.pyx":358
* self.name = name.encode()
* if self.name is not None:
* return self.name # <<<<<<<<<<<<<<
* return NULL
*
*/
- __pyx_t_3 = __Pyx_PyObject_AsString(__pyx_v_self->name); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 356, __pyx_L1_error)
+ if (unlikely(__pyx_v_self->name == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found");
+ __PYX_ERR(0, 358, __pyx_L1_error)
+ }
+ __pyx_t_3 = __Pyx_PyBytes_AsWritableString(__pyx_v_self->name); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 358, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "libpetsc4py.pyx":355
+ /* "libpetsc4py.pyx":357
* if name is not None:
* self.name = name.encode()
* if self.name is not None: # <<<<<<<<<<<<<<
@@ -5305,7 +5659,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":357
+ /* "libpetsc4py.pyx":359
* if self.name is not None:
* return self.name
* return NULL # <<<<<<<<<<<<<<
@@ -5315,7 +5669,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
__pyx_r = NULL;
goto __pyx_L0;
- /* "libpetsc4py.pyx":330
+ /* "libpetsc4py.pyx":332
* return 0
*
* cdef char* getname(self) except? NULL: # <<<<<<<<<<<<<<
@@ -5340,7 +5694,7 @@ static char *__pyx_f_11libpetsc4py_6_PyObj_getname(struct __pyx_obj_11libpetsc4p
return __pyx_r;
}
-/* "libpetsc4py.pyx":359
+/* "libpetsc4py.pyx":361
* return NULL
*
* cdef createcontext(char name_p[]): # <<<<<<<<<<<<<<
@@ -5367,7 +5721,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
PyObject *(*__pyx_t_7)(PyObject *);
__Pyx_RefNannySetupContext("createcontext", 0);
- /* "libpetsc4py.pyx":360
+ /* "libpetsc4py.pyx":362
*
* cdef createcontext(char name_p[]):
* if name_p == NULL: return None # <<<<<<<<<<<<<<
@@ -5382,19 +5736,19 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":361
+ /* "libpetsc4py.pyx":363
* cdef createcontext(char name_p[]):
* if name_p == NULL: return None
* cdef name = bytes2str(name_p) # <<<<<<<<<<<<<<
* cdef mod, path, modname=None
* cdef cls, attr, clsname=None
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_bytes2str(__pyx_v_name_p); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 361, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_bytes2str(__pyx_v_name_p); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 363, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_name = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":362
+ /* "libpetsc4py.pyx":364
* if name_p == NULL: return None
* cdef name = bytes2str(name_p)
* cdef mod, path, modname=None # <<<<<<<<<<<<<<
@@ -5404,7 +5758,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_INCREF(Py_None);
__pyx_v_modname = Py_None;
- /* "libpetsc4py.pyx":363
+ /* "libpetsc4py.pyx":365
* cdef name = bytes2str(name_p)
* cdef mod, path, modname=None
* cdef cls, attr, clsname=None # <<<<<<<<<<<<<<
@@ -5414,29 +5768,29 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_INCREF(Py_None);
__pyx_v_clsname = Py_None;
- /* "libpetsc4py.pyx":365
+ /* "libpetsc4py.pyx":367
* cdef cls, attr, clsname=None
* # path/to/filename.py:{function|class}
* if ':' in name: # <<<<<<<<<<<<<<
* path, attr = parse_url(name)
* mod = load_module(path)
*/
- __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_kp_s_, __pyx_v_name, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 365, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PySequence_ContainsTF(__pyx_kp_s_, __pyx_v_name, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 367, __pyx_L1_error)
__pyx_t_3 = (__pyx_t_1 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":366
+ /* "libpetsc4py.pyx":368
* # path/to/filename.py:{function|class}
* if ':' in name:
* path, attr = parse_url(name) # <<<<<<<<<<<<<<
* mod = load_module(path)
* if attr:
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_parse_url(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 366, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_parse_url(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 368, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -5444,9 +5798,9 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 366, __pyx_L1_error)
+ __PYX_ERR(0, 368, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -5457,15 +5811,15 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 366, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 368, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 366, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 368, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 366, __pyx_L1_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 368, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
@@ -5473,7 +5827,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 366, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 368, __pyx_L1_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L6_unpacking_done;
@@ -5481,7 +5835,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 366, __pyx_L1_error)
+ __PYX_ERR(0, 368, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_path = __pyx_t_4;
@@ -5489,41 +5843,41 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__pyx_v_attr = __pyx_t_5;
__pyx_t_5 = 0;
- /* "libpetsc4py.pyx":367
+ /* "libpetsc4py.pyx":369
* if ':' in name:
* path, attr = parse_url(name)
* mod = load_module(path) # <<<<<<<<<<<<<<
* if attr:
* cls = getattr(mod, attr)
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_load_module(__pyx_v_path); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 367, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_load_module(__pyx_v_path); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_mod = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":368
+ /* "libpetsc4py.pyx":370
* path, attr = parse_url(name)
* mod = load_module(path)
* if attr: # <<<<<<<<<<<<<<
* cls = getattr(mod, attr)
* return cls()
*/
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_attr); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 368, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_attr); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 370, __pyx_L1_error)
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":369
+ /* "libpetsc4py.pyx":371
* mod = load_module(path)
* if attr:
* cls = getattr(mod, attr) # <<<<<<<<<<<<<<
* return cls()
* else:
*/
- __pyx_t_2 = __Pyx_GetAttr(__pyx_v_mod, __pyx_v_attr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 369, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetAttr(__pyx_v_mod, __pyx_v_attr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 371, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_cls = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":370
+ /* "libpetsc4py.pyx":372
* if attr:
* cls = getattr(mod, attr)
* return cls() # <<<<<<<<<<<<<<
@@ -5533,7 +5887,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_cls);
__pyx_t_5 = __pyx_v_cls; __pyx_t_4 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -5543,10 +5897,10 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
}
}
if (__pyx_t_4) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 370, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 372, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
- __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 370, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 372, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
@@ -5554,7 +5908,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":368
+ /* "libpetsc4py.pyx":370
* path, attr = parse_url(name)
* mod = load_module(path)
* if attr: # <<<<<<<<<<<<<<
@@ -5563,7 +5917,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
*/
}
- /* "libpetsc4py.pyx":372
+ /* "libpetsc4py.pyx":374
* return cls()
* else:
* return mod # <<<<<<<<<<<<<<
@@ -5577,7 +5931,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":365
+ /* "libpetsc4py.pyx":367
* cdef cls, attr, clsname=None
* # path/to/filename.py:{function|class}
* if ':' in name: # <<<<<<<<<<<<<<
@@ -5586,32 +5940,32 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
*/
}
- /* "libpetsc4py.pyx":374
+ /* "libpetsc4py.pyx":376
* return mod
* # package.module[.{function|class}]
* if '.' in name: # <<<<<<<<<<<<<<
* modname, clsname = name.rsplit('.', 1)
* mod = PyImport_Import(modname)
*/
- __pyx_t_3 = (__Pyx_PySequence_ContainsTF(__pyx_kp_s__3, __pyx_v_name, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 374, __pyx_L1_error)
+ __pyx_t_3 = (__Pyx_PySequence_ContainsTF(__pyx_kp_s__3, __pyx_v_name, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 376, __pyx_L1_error)
__pyx_t_1 = (__pyx_t_3 != 0);
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":375
+ /* "libpetsc4py.pyx":377
* # package.module[.{function|class}]
* if '.' in name:
* modname, clsname = name.rsplit('.', 1) # <<<<<<<<<<<<<<
* mod = PyImport_Import(modname)
* if hasattr(mod, clsname):
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_name, __pyx_n_s_rsplit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 375, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_name, __pyx_n_s_rsplit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 375, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) {
PyObject* sequence = __pyx_t_5;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -5619,9 +5973,9 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 375, __pyx_L1_error)
+ __PYX_ERR(0, 377, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
@@ -5632,15 +5986,15 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 375, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 375, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 375, __pyx_L1_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
@@ -5648,7 +6002,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_GOTREF(__pyx_t_2);
index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L9_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 375, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(0, 377, __pyx_L1_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L10_unpacking_done;
@@ -5656,7 +6010,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 375, __pyx_L1_error)
+ __PYX_ERR(0, 377, __pyx_L1_error)
__pyx_L10_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_modname, __pyx_t_2);
@@ -5664,42 +6018,42 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_DECREF_SET(__pyx_v_clsname, __pyx_t_4);
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":376
+ /* "libpetsc4py.pyx":378
* if '.' in name:
* modname, clsname = name.rsplit('.', 1)
* mod = PyImport_Import(modname) # <<<<<<<<<<<<<<
* if hasattr(mod, clsname):
* cls = getattr(mod, clsname)
*/
- __pyx_t_5 = PyImport_Import(__pyx_v_modname); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 376, __pyx_L1_error)
+ __pyx_t_5 = PyImport_Import(__pyx_v_modname); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_v_mod = __pyx_t_5;
__pyx_t_5 = 0;
- /* "libpetsc4py.pyx":377
+ /* "libpetsc4py.pyx":379
* modname, clsname = name.rsplit('.', 1)
* mod = PyImport_Import(modname)
* if hasattr(mod, clsname): # <<<<<<<<<<<<<<
* cls = getattr(mod, clsname)
* if not PyModule_Check(cls):
*/
- __pyx_t_1 = PyObject_HasAttr(__pyx_v_mod, __pyx_v_clsname); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 377, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_HasAttr(__pyx_v_mod, __pyx_v_clsname); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 379, __pyx_L1_error)
__pyx_t_3 = (__pyx_t_1 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":378
+ /* "libpetsc4py.pyx":380
* mod = PyImport_Import(modname)
* if hasattr(mod, clsname):
* cls = getattr(mod, clsname) # <<<<<<<<<<<<<<
* if not PyModule_Check(cls):
* return cls()
*/
- __pyx_t_5 = __Pyx_GetAttr(__pyx_v_mod, __pyx_v_clsname); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 378, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_GetAttr(__pyx_v_mod, __pyx_v_clsname); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 380, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_v_cls = __pyx_t_5;
__pyx_t_5 = 0;
- /* "libpetsc4py.pyx":379
+ /* "libpetsc4py.pyx":381
* if hasattr(mod, clsname):
* cls = getattr(mod, clsname)
* if not PyModule_Check(cls): # <<<<<<<<<<<<<<
@@ -5709,7 +6063,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__pyx_t_3 = ((!(PyModule_Check(__pyx_v_cls) != 0)) != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":380
+ /* "libpetsc4py.pyx":382
* cls = getattr(mod, clsname)
* if not PyModule_Check(cls):
* return cls() # <<<<<<<<<<<<<<
@@ -5719,7 +6073,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_cls);
__pyx_t_4 = __pyx_v_cls; __pyx_t_2 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_2)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -5729,10 +6083,10 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
}
}
if (__pyx_t_2) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 380, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 382, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
- __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 380, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 382, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -5740,7 +6094,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":379
+ /* "libpetsc4py.pyx":381
* if hasattr(mod, clsname):
* cls = getattr(mod, clsname)
* if not PyModule_Check(cls): # <<<<<<<<<<<<<<
@@ -5749,7 +6103,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
*/
}
- /* "libpetsc4py.pyx":377
+ /* "libpetsc4py.pyx":379
* modname, clsname = name.rsplit('.', 1)
* mod = PyImport_Import(modname)
* if hasattr(mod, clsname): # <<<<<<<<<<<<<<
@@ -5758,7 +6112,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
*/
}
- /* "libpetsc4py.pyx":374
+ /* "libpetsc4py.pyx":376
* return mod
* # package.module[.{function|class}]
* if '.' in name: # <<<<<<<<<<<<<<
@@ -5767,19 +6121,19 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
*/
}
- /* "libpetsc4py.pyx":382
+ /* "libpetsc4py.pyx":384
* return cls()
* # package[.module]
* mod = PyImport_Import(name) # <<<<<<<<<<<<<<
* return mod
*
*/
- __pyx_t_5 = PyImport_Import(__pyx_v_name); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 382, __pyx_L1_error)
+ __pyx_t_5 = PyImport_Import(__pyx_v_name); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 384, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_XDECREF_SET(__pyx_v_mod, __pyx_t_5);
__pyx_t_5 = 0;
- /* "libpetsc4py.pyx":383
+ /* "libpetsc4py.pyx":385
* # package[.module]
* mod = PyImport_Import(name)
* return mod # <<<<<<<<<<<<<<
@@ -5791,7 +6145,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
__pyx_r = __pyx_v_mod;
goto __pyx_L0;
- /* "libpetsc4py.pyx":359
+ /* "libpetsc4py.pyx":361
* return NULL
*
* cdef createcontext(char name_p[]): # <<<<<<<<<<<<<<
@@ -5820,7 +6174,7 @@ static PyObject *__pyx_f_11libpetsc4py_createcontext(char *__pyx_v_name_p) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":385
+/* "libpetsc4py.pyx":387
* return mod
*
* cdef int viewcontext(_PyObj ctx, PetscViewer viewer) except -1: # <<<<<<<<<<<<<<
@@ -5839,7 +6193,7 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
int __pyx_t_3;
__Pyx_RefNannySetupContext("viewcontext", 0);
- /* "libpetsc4py.pyx":386
+ /* "libpetsc4py.pyx":388
*
* cdef int viewcontext(_PyObj ctx, PetscViewer viewer) except -1:
* cdef PetscBool isascii = PETSC_FALSE, isstring = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -5849,35 +6203,35 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
__pyx_v_isascii = PETSC_FALSE;
__pyx_v_isstring = PETSC_FALSE;
- /* "libpetsc4py.pyx":387
+ /* "libpetsc4py.pyx":389
* cdef int viewcontext(_PyObj ctx, PetscViewer viewer) except -1:
* cdef PetscBool isascii = PETSC_FALSE, isstring = PETSC_FALSE
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERASCII, &isascii) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERSTRING, &isstring) )
* cdef char *name = ctx.getname()
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectTypeCompare(((PetscObject)__pyx_v_viewer), PETSCVIEWERASCII, (&__pyx_v_isascii))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 387, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectTypeCompare(((PetscObject)__pyx_v_viewer), PETSCVIEWERASCII, (&__pyx_v_isascii))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 389, __pyx_L1_error)
- /* "libpetsc4py.pyx":388
+ /* "libpetsc4py.pyx":390
* cdef PetscBool isascii = PETSC_FALSE, isstring = PETSC_FALSE
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERASCII, &isascii) )
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERSTRING, &isstring) ) # <<<<<<<<<<<<<<
* cdef char *name = ctx.getname()
* if isascii:
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectTypeCompare(((PetscObject)__pyx_v_viewer), PETSCVIEWERSTRING, (&__pyx_v_isstring))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 388, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectTypeCompare(((PetscObject)__pyx_v_viewer), PETSCVIEWERSTRING, (&__pyx_v_isstring))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 390, __pyx_L1_error)
- /* "libpetsc4py.pyx":389
+ /* "libpetsc4py.pyx":391
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERASCII, &isascii) )
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERSTRING, &isstring) )
* cdef char *name = ctx.getname() # <<<<<<<<<<<<<<
* if isascii:
* if name == NULL: name = b"unknown/no yet set"
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyObj *)__pyx_v_ctx->__pyx_vtab)->getname(__pyx_v_ctx); if (unlikely(__pyx_t_2 == NULL && PyErr_Occurred())) __PYX_ERR(0, 389, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyObj *)__pyx_v_ctx->__pyx_vtab)->getname(__pyx_v_ctx); if (unlikely(__pyx_t_2 == ((char *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 391, __pyx_L1_error)
__pyx_v_name = __pyx_t_2;
- /* "libpetsc4py.pyx":390
+ /* "libpetsc4py.pyx":392
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERSTRING, &isstring) )
* cdef char *name = ctx.getname()
* if isascii: # <<<<<<<<<<<<<<
@@ -5886,7 +6240,7 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
*/
if (__pyx_v_isascii) {
- /* "libpetsc4py.pyx":391
+ /* "libpetsc4py.pyx":393
* cdef char *name = ctx.getname()
* if isascii:
* if name == NULL: name = b"unknown/no yet set" # <<<<<<<<<<<<<<
@@ -5898,16 +6252,16 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
__pyx_v_name = ((char *)"unknown/no yet set");
}
- /* "libpetsc4py.pyx":392
+ /* "libpetsc4py.pyx":394
* if isascii:
* if name == NULL: name = b"unknown/no yet set"
* CHKERR( PetscViewerASCIIPrintf(viewer, b" Python: %s\n", name) ) # <<<<<<<<<<<<<<
* if isstring:
* if name == NULL: name = b"<unknown>"
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscViewerASCIIPrintf(__pyx_v_viewer, ((char *)" Python: %s\n"), __pyx_v_name)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 392, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscViewerASCIIPrintf(__pyx_v_viewer, ((char *)" Python: %s\n"), __pyx_v_name)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 394, __pyx_L1_error)
- /* "libpetsc4py.pyx":390
+ /* "libpetsc4py.pyx":392
* CHKERR( PetscObjectTypeCompare(<PetscObject>viewer, PETSCVIEWERSTRING, &isstring) )
* cdef char *name = ctx.getname()
* if isascii: # <<<<<<<<<<<<<<
@@ -5916,7 +6270,7 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
*/
}
- /* "libpetsc4py.pyx":393
+ /* "libpetsc4py.pyx":395
* if name == NULL: name = b"unknown/no yet set"
* CHKERR( PetscViewerASCIIPrintf(viewer, b" Python: %s\n", name) )
* if isstring: # <<<<<<<<<<<<<<
@@ -5925,7 +6279,7 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
*/
if (__pyx_v_isstring) {
- /* "libpetsc4py.pyx":394
+ /* "libpetsc4py.pyx":396
* CHKERR( PetscViewerASCIIPrintf(viewer, b" Python: %s\n", name) )
* if isstring:
* if name == NULL: name = b"<unknown>" # <<<<<<<<<<<<<<
@@ -5937,16 +6291,16 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
__pyx_v_name = ((char *)"<unknown>");
}
- /* "libpetsc4py.pyx":395
+ /* "libpetsc4py.pyx":397
* if isstring:
* if name == NULL: name = b"<unknown>"
* CHKERR( PetscViewerStringSPrintf(viewer,"%s", name) ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscViewerStringSPrintf(__pyx_v_viewer, ((char *)"%s"), __pyx_v_name)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 395, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscViewerStringSPrintf(__pyx_v_viewer, ((char *)"%s"), __pyx_v_name)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 397, __pyx_L1_error)
- /* "libpetsc4py.pyx":393
+ /* "libpetsc4py.pyx":395
* if name == NULL: name = b"unknown/no yet set"
* CHKERR( PetscViewerASCIIPrintf(viewer, b" Python: %s\n", name) )
* if isstring: # <<<<<<<<<<<<<<
@@ -5955,7 +6309,7 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
*/
}
- /* "libpetsc4py.pyx":396
+ /* "libpetsc4py.pyx":398
* if name == NULL: name = b"<unknown>"
* CHKERR( PetscViewerStringSPrintf(viewer,"%s", name) )
* return 0 # <<<<<<<<<<<<<<
@@ -5965,7 +6319,7 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":385
+ /* "libpetsc4py.pyx":387
* return mod
*
* cdef int viewcontext(_PyObj ctx, PetscViewer viewer) except -1: # <<<<<<<<<<<<<<
@@ -5982,7 +6336,7 @@ static int __pyx_f_11libpetsc4py_viewcontext(struct __pyx_obj_11libpetsc4py__PyO
return __pyx_r;
}
-/* "libpetsc4py.pyx":513
+/* "libpetsc4py.pyx":515
* @cython.internal
* cdef class _PyMat(_PyObj): pass
* cdef inline _PyMat PyMat(PetscMat mat): # <<<<<<<<<<<<<<
@@ -5998,7 +6352,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyMat *__pyx_f_11libpetsc4p
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("PyMat", 0);
- /* "libpetsc4py.pyx":514
+ /* "libpetsc4py.pyx":516
* cdef class _PyMat(_PyObj): pass
* cdef inline _PyMat PyMat(PetscMat mat):
* if mat != NULL and mat.data != NULL: # <<<<<<<<<<<<<<
@@ -6016,7 +6370,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyMat *__pyx_f_11libpetsc4p
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":515
+ /* "libpetsc4py.pyx":517
* cdef inline _PyMat PyMat(PetscMat mat):
* if mat != NULL and mat.data != NULL:
* return <_PyMat>mat.data # <<<<<<<<<<<<<<
@@ -6028,7 +6382,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyMat *__pyx_f_11libpetsc4p
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_v_mat->data);
goto __pyx_L0;
- /* "libpetsc4py.pyx":514
+ /* "libpetsc4py.pyx":516
* cdef class _PyMat(_PyObj): pass
* cdef inline _PyMat PyMat(PetscMat mat):
* if mat != NULL and mat.data != NULL: # <<<<<<<<<<<<<<
@@ -6037,7 +6391,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyMat *__pyx_f_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":517
+ /* "libpetsc4py.pyx":519
* return <_PyMat>mat.data
* else:
* return _PyMat.__new__(_PyMat) # <<<<<<<<<<<<<<
@@ -6046,15 +6400,15 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyMat *__pyx_f_11libpetsc4p
*/
/*else*/ {
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyMat(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyMat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 517, __pyx_L1_error)
+ __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyMat(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyMat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 519, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyMat)))) __PYX_ERR(0, 517, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyMat)))) __PYX_ERR(0, 519, __pyx_L1_error)
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_3);
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":513
+ /* "libpetsc4py.pyx":515
* @cython.internal
* cdef class _PyMat(_PyObj): pass
* cdef inline _PyMat PyMat(PetscMat mat): # <<<<<<<<<<<<<<
@@ -6073,7 +6427,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyMat *__pyx_f_11libpetsc4p
return __pyx_r;
}
-/* "libpetsc4py.pyx":519
+/* "libpetsc4py.pyx":521
* return _PyMat.__new__(_PyMat)
*
* cdef public PetscErrorCode MatPythonGetContext(PetscMat mat, void **ctx) \ # <<<<<<<<<<<<<<
@@ -6088,7 +6442,7 @@ PetscErrorCode MatPythonGetContext(Mat __pyx_v_mat, void **__pyx_v_ctx) {
int __pyx_t_2;
__Pyx_RefNannySetupContext("MatPythonGetContext", 0);
- /* "libpetsc4py.pyx":521
+ /* "libpetsc4py.pyx":523
* cdef public PetscErrorCode MatPythonGetContext(PetscMat mat, void **ctx) \
* except IERR:
* FunctionBegin(b"MatPythonGetContext") # <<<<<<<<<<<<<<
@@ -6097,19 +6451,19 @@ PetscErrorCode MatPythonGetContext(Mat __pyx_v_mat, void **__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatPythonGetContext"));
- /* "libpetsc4py.pyx":522
+ /* "libpetsc4py.pyx":524
* except IERR:
* FunctionBegin(b"MatPythonGetContext")
* PyMat(mat).getcontext(ctx) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 522, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 524, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":523
+ /* "libpetsc4py.pyx":525
* FunctionBegin(b"MatPythonGetContext")
* PyMat(mat).getcontext(ctx)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -6119,7 +6473,7 @@ PetscErrorCode MatPythonGetContext(Mat __pyx_v_mat, void **__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":519
+ /* "libpetsc4py.pyx":521
* return _PyMat.__new__(_PyMat)
*
* cdef public PetscErrorCode MatPythonGetContext(PetscMat mat, void **ctx) \ # <<<<<<<<<<<<<<
@@ -6137,7 +6491,7 @@ PetscErrorCode MatPythonGetContext(Mat __pyx_v_mat, void **__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":525
+/* "libpetsc4py.pyx":527
* return FunctionEnd()
*
* cdef public PetscErrorCode MatPythonSetContext(PetscMat mat, void *ctx) \ # <<<<<<<<<<<<<<
@@ -6153,7 +6507,7 @@ PetscErrorCode MatPythonSetContext(Mat __pyx_v_mat, void *__pyx_v_ctx) {
int __pyx_t_3;
__Pyx_RefNannySetupContext("MatPythonSetContext", 0);
- /* "libpetsc4py.pyx":527
+ /* "libpetsc4py.pyx":529
* cdef public PetscErrorCode MatPythonSetContext(PetscMat mat, void *ctx) \
* except IERR:
* FunctionBegin(b"MatPythonSetContext") # <<<<<<<<<<<<<<
@@ -6162,22 +6516,22 @@ PetscErrorCode MatPythonSetContext(Mat __pyx_v_mat, void *__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatPythonSetContext"));
- /* "libpetsc4py.pyx":528
+ /* "libpetsc4py.pyx":530
* except IERR:
* FunctionBegin(b"MatPythonSetContext")
* PyMat(mat).setcontext(ctx, Mat_(mat)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 528, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 530, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 528, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 530, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 528, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 530, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":529
+ /* "libpetsc4py.pyx":531
* FunctionBegin(b"MatPythonSetContext")
* PyMat(mat).setcontext(ctx, Mat_(mat))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -6187,7 +6541,7 @@ PetscErrorCode MatPythonSetContext(Mat __pyx_v_mat, void *__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":525
+ /* "libpetsc4py.pyx":527
* return FunctionEnd()
*
* cdef public PetscErrorCode MatPythonSetContext(PetscMat mat, void *ctx) \ # <<<<<<<<<<<<<<
@@ -6206,7 +6560,7 @@ PetscErrorCode MatPythonSetContext(Mat __pyx_v_mat, void *__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":531
+/* "libpetsc4py.pyx":533
* return FunctionEnd()
*
* cdef PetscErrorCode MatPythonSetType_PYTHON(PetscMat mat, char name[]) \ # <<<<<<<<<<<<<<
@@ -6223,11 +6577,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(Mat __pyx_v_
PetscErrorCode __pyx_t_3;
int __pyx_t_4;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatPythonSetType_PYTHON", 0);
- /* "libpetsc4py.pyx":533
+ /* "libpetsc4py.pyx":535
* cdef PetscErrorCode MatPythonSetType_PYTHON(PetscMat mat, char name[]) \
* except IERR with gil:
* FunctionBegin(b"MatPythonSetType_PYTHON") # <<<<<<<<<<<<<<
@@ -6236,7 +6590,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(Mat __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatPythonSetType_PYTHON"));
- /* "libpetsc4py.pyx":534
+ /* "libpetsc4py.pyx":536
* except IERR with gil:
* FunctionBegin(b"MatPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX # <<<<<<<<<<<<<<
@@ -6249,40 +6603,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(Mat __pyx_v_
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":535
+ /* "libpetsc4py.pyx":537
* FunctionBegin(b"MatPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name) # <<<<<<<<<<<<<<
* MatPythonSetContext(mat, <void*>ctx)
* PyMat(mat).setname(name)
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 535, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ctx = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":536
+ /* "libpetsc4py.pyx":538
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name)
* MatPythonSetContext(mat, <void*>ctx) # <<<<<<<<<<<<<<
* PyMat(mat).setname(name)
* return FunctionEnd()
*/
- __pyx_t_3 = MatPythonSetContext(__pyx_v_mat, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 536, __pyx_L1_error)
+ __pyx_t_3 = MatPythonSetContext(__pyx_v_mat, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 538, __pyx_L1_error)
- /* "libpetsc4py.pyx":537
+ /* "libpetsc4py.pyx":539
* cdef object ctx = createcontext(name)
* MatPythonSetContext(mat, <void*>ctx)
* PyMat(mat).setname(name) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 537, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 539, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 537, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 539, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":538
+ /* "libpetsc4py.pyx":540
* MatPythonSetContext(mat, <void*>ctx)
* PyMat(mat).setname(name)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -6292,7 +6646,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(Mat __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":531
+ /* "libpetsc4py.pyx":533
* return FunctionEnd()
*
* cdef PetscErrorCode MatPythonSetType_PYTHON(PetscMat mat, char name[]) \ # <<<<<<<<<<<<<<
@@ -6309,12 +6663,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(Mat __pyx_v_
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":540
+/* "libpetsc4py.pyx":542
* return FunctionEnd()
*
* cdef PetscErrorCode MatCreate_Python( # <<<<<<<<<<<<<<
@@ -6331,11 +6685,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatCreate_Python", 0);
- /* "libpetsc4py.pyx":544
+ /* "libpetsc4py.pyx":546
* ) \
* except IERR with gil:
* FunctionBegin(b"MatCreate_Python") # <<<<<<<<<<<<<<
@@ -6344,7 +6698,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatCreate_Python"));
- /* "libpetsc4py.pyx":546
+ /* "libpetsc4py.pyx":548
* FunctionBegin(b"MatCreate_Python")
* #
* cdef MatOps ops = mat.ops # <<<<<<<<<<<<<<
@@ -6354,7 +6708,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
__pyx_t_1 = __pyx_v_mat->ops;
__pyx_v_ops = __pyx_t_1;
- /* "libpetsc4py.pyx":547
+ /* "libpetsc4py.pyx":549
* #
* cdef MatOps ops = mat.ops
* ops.destroy = MatDestroy_Python # <<<<<<<<<<<<<<
@@ -6363,7 +6717,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->destroy = __pyx_f_11libpetsc4py_MatDestroy_Python;
- /* "libpetsc4py.pyx":548
+ /* "libpetsc4py.pyx":550
* cdef MatOps ops = mat.ops
* ops.destroy = MatDestroy_Python
* ops.setfromoptions = MatSetFromOptions_Python # <<<<<<<<<<<<<<
@@ -6372,7 +6726,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->setfromoptions = __pyx_f_11libpetsc4py_MatSetFromOptions_Python;
- /* "libpetsc4py.pyx":549
+ /* "libpetsc4py.pyx":551
* ops.destroy = MatDestroy_Python
* ops.setfromoptions = MatSetFromOptions_Python
* ops.view = MatView_Python # <<<<<<<<<<<<<<
@@ -6381,44 +6735,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->view = __pyx_f_11libpetsc4py_MatView_Python;
- /* "libpetsc4py.pyx":550
+ /* "libpetsc4py.pyx":552
* ops.setfromoptions = MatSetFromOptions_Python
* ops.view = MatView_Python
* ops.duplicate = MatDuplicate_Python # <<<<<<<<<<<<<<
* ops.copy = MatCopy_Python
- * ops.getsubmatrix = MatGetSubMatrix_Python
+ * ops.createsubmatrix = MatCreateSubMatrix_Python
*/
__pyx_v_ops->duplicate = __pyx_f_11libpetsc4py_MatDuplicate_Python;
- /* "libpetsc4py.pyx":551
+ /* "libpetsc4py.pyx":553
* ops.view = MatView_Python
* ops.duplicate = MatDuplicate_Python
* ops.copy = MatCopy_Python # <<<<<<<<<<<<<<
- * ops.getsubmatrix = MatGetSubMatrix_Python
+ * ops.createsubmatrix = MatCreateSubMatrix_Python
* ops.setoption = MatSetOption_Python
*/
__pyx_v_ops->copy = __pyx_f_11libpetsc4py_MatCopy_Python;
- /* "libpetsc4py.pyx":552
+ /* "libpetsc4py.pyx":554
* ops.duplicate = MatDuplicate_Python
* ops.copy = MatCopy_Python
- * ops.getsubmatrix = MatGetSubMatrix_Python # <<<<<<<<<<<<<<
+ * ops.createsubmatrix = MatCreateSubMatrix_Python # <<<<<<<<<<<<<<
* ops.setoption = MatSetOption_Python
* ops.setup = MatSetUp_Python
*/
- __pyx_v_ops->getsubmatrix = __pyx_f_11libpetsc4py_MatGetSubMatrix_Python;
+ __pyx_v_ops->createsubmatrix = __pyx_f_11libpetsc4py_MatCreateSubMatrix_Python;
- /* "libpetsc4py.pyx":553
+ /* "libpetsc4py.pyx":555
* ops.copy = MatCopy_Python
- * ops.getsubmatrix = MatGetSubMatrix_Python
+ * ops.createsubmatrix = MatCreateSubMatrix_Python
* ops.setoption = MatSetOption_Python # <<<<<<<<<<<<<<
* ops.setup = MatSetUp_Python
* ops.assemblybegin = MatAssemblyBegin_Python
*/
__pyx_v_ops->setoption = __pyx_f_11libpetsc4py_MatSetOption_Python;
- /* "libpetsc4py.pyx":554
- * ops.getsubmatrix = MatGetSubMatrix_Python
+ /* "libpetsc4py.pyx":556
+ * ops.createsubmatrix = MatCreateSubMatrix_Python
* ops.setoption = MatSetOption_Python
* ops.setup = MatSetUp_Python # <<<<<<<<<<<<<<
* ops.assemblybegin = MatAssemblyBegin_Python
@@ -6426,7 +6780,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->setup = __pyx_f_11libpetsc4py_MatSetUp_Python;
- /* "libpetsc4py.pyx":555
+ /* "libpetsc4py.pyx":557
* ops.setoption = MatSetOption_Python
* ops.setup = MatSetUp_Python
* ops.assemblybegin = MatAssemblyBegin_Python # <<<<<<<<<<<<<<
@@ -6435,7 +6789,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->assemblybegin = __pyx_f_11libpetsc4py_MatAssemblyBegin_Python;
- /* "libpetsc4py.pyx":556
+ /* "libpetsc4py.pyx":558
* ops.setup = MatSetUp_Python
* ops.assemblybegin = MatAssemblyBegin_Python
* ops.assemblyend = MatAssemblyEnd_Python # <<<<<<<<<<<<<<
@@ -6444,7 +6798,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->assemblyend = __pyx_f_11libpetsc4py_MatAssemblyEnd_Python;
- /* "libpetsc4py.pyx":557
+ /* "libpetsc4py.pyx":559
* ops.assemblybegin = MatAssemblyBegin_Python
* ops.assemblyend = MatAssemblyEnd_Python
* ops.zeroentries = MatZeroEntries_Python # <<<<<<<<<<<<<<
@@ -6453,7 +6807,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->zeroentries = __pyx_f_11libpetsc4py_MatZeroEntries_Python;
- /* "libpetsc4py.pyx":558
+ /* "libpetsc4py.pyx":560
* ops.assemblyend = MatAssemblyEnd_Python
* ops.zeroentries = MatZeroEntries_Python
* ops.scale = MatScale_Python # <<<<<<<<<<<<<<
@@ -6462,7 +6816,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->scale = __pyx_f_11libpetsc4py_MatScale_Python;
- /* "libpetsc4py.pyx":559
+ /* "libpetsc4py.pyx":561
* ops.zeroentries = MatZeroEntries_Python
* ops.scale = MatScale_Python
* ops.shift = MatShift_Python # <<<<<<<<<<<<<<
@@ -6471,7 +6825,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->shift = __pyx_f_11libpetsc4py_MatShift_Python;
- /* "libpetsc4py.pyx":560
+ /* "libpetsc4py.pyx":562
* ops.scale = MatScale_Python
* ops.shift = MatShift_Python
* ops.getvecs = MatCreateVecs_Python # <<<<<<<<<<<<<<
@@ -6480,7 +6834,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->getvecs = __pyx_f_11libpetsc4py_MatCreateVecs_Python;
- /* "libpetsc4py.pyx":561
+ /* "libpetsc4py.pyx":563
* ops.shift = MatShift_Python
* ops.getvecs = MatCreateVecs_Python
* ops.mult = MatMult_Python # <<<<<<<<<<<<<<
@@ -6489,7 +6843,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->mult = __pyx_f_11libpetsc4py_MatMult_Python;
- /* "libpetsc4py.pyx":562
+ /* "libpetsc4py.pyx":564
* ops.getvecs = MatCreateVecs_Python
* ops.mult = MatMult_Python
* ops.sor = MatSOR_Python # <<<<<<<<<<<<<<
@@ -6498,7 +6852,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->sor = __pyx_f_11libpetsc4py_MatSOR_Python;
- /* "libpetsc4py.pyx":563
+ /* "libpetsc4py.pyx":565
* ops.mult = MatMult_Python
* ops.sor = MatSOR_Python
* ops.multtranspose = MatMultTranspose_Python # <<<<<<<<<<<<<<
@@ -6507,7 +6861,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->multtranspose = __pyx_f_11libpetsc4py_MatMultTranspose_Python;
- /* "libpetsc4py.pyx":564
+ /* "libpetsc4py.pyx":566
* ops.sor = MatSOR_Python
* ops.multtranspose = MatMultTranspose_Python
* ops.multhermitian = MatMultHermitian_Python # <<<<<<<<<<<<<<
@@ -6516,7 +6870,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->multhermitiantranspose = __pyx_f_11libpetsc4py_MatMultHermitian_Python;
- /* "libpetsc4py.pyx":565
+ /* "libpetsc4py.pyx":567
* ops.multtranspose = MatMultTranspose_Python
* ops.multhermitian = MatMultHermitian_Python
* ops.multadd = MatMultAdd_Python # <<<<<<<<<<<<<<
@@ -6525,7 +6879,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->multadd = __pyx_f_11libpetsc4py_MatMultAdd_Python;
- /* "libpetsc4py.pyx":566
+ /* "libpetsc4py.pyx":568
* ops.multhermitian = MatMultHermitian_Python
* ops.multadd = MatMultAdd_Python
* ops.multtransposeadd = MatMultTransposeAdd_Python # <<<<<<<<<<<<<<
@@ -6534,7 +6888,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->multtransposeadd = __pyx_f_11libpetsc4py_MatMultTransposeAdd_Python;
- /* "libpetsc4py.pyx":567
+ /* "libpetsc4py.pyx":569
* ops.multadd = MatMultAdd_Python
* ops.multtransposeadd = MatMultTransposeAdd_Python
* ops.multhermitianadd = MatMultHermitianAdd_Python # <<<<<<<<<<<<<<
@@ -6543,7 +6897,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->multhermitiantransposeadd = __pyx_f_11libpetsc4py_MatMultHermitianAdd_Python;
- /* "libpetsc4py.pyx":568
+ /* "libpetsc4py.pyx":570
* ops.multtransposeadd = MatMultTransposeAdd_Python
* ops.multhermitianadd = MatMultHermitianAdd_Python
* ops.multdiagonalblock = MatMultDiagonalBlock_Python # <<<<<<<<<<<<<<
@@ -6552,7 +6906,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->multdiagonalblock = __pyx_f_11libpetsc4py_MatMultDiagonalBlock_Python;
- /* "libpetsc4py.pyx":569
+ /* "libpetsc4py.pyx":571
* ops.multhermitianadd = MatMultHermitianAdd_Python
* ops.multdiagonalblock = MatMultDiagonalBlock_Python
* ops.solve = MatSolve_Python # <<<<<<<<<<<<<<
@@ -6561,7 +6915,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->solve = __pyx_f_11libpetsc4py_MatSolve_Python;
- /* "libpetsc4py.pyx":570
+ /* "libpetsc4py.pyx":572
* ops.multdiagonalblock = MatMultDiagonalBlock_Python
* ops.solve = MatSolve_Python
* ops.solvetranspose = MatSolveTranspose_Python # <<<<<<<<<<<<<<
@@ -6570,7 +6924,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->solvetranspose = __pyx_f_11libpetsc4py_MatSolveTranspose_Python;
- /* "libpetsc4py.pyx":571
+ /* "libpetsc4py.pyx":573
* ops.solve = MatSolve_Python
* ops.solvetranspose = MatSolveTranspose_Python
* ops.solveadd = MatSolveAdd_Python # <<<<<<<<<<<<<<
@@ -6579,7 +6933,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->solveadd = __pyx_f_11libpetsc4py_MatSolveAdd_Python;
- /* "libpetsc4py.pyx":572
+ /* "libpetsc4py.pyx":574
* ops.solvetranspose = MatSolveTranspose_Python
* ops.solveadd = MatSolveAdd_Python
* ops.solvetransposeadd = MatSolveTransposeAdd_Python # <<<<<<<<<<<<<<
@@ -6588,7 +6942,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->solvetransposeadd = __pyx_f_11libpetsc4py_MatSolveTransposeAdd_Python;
- /* "libpetsc4py.pyx":573
+ /* "libpetsc4py.pyx":575
* ops.solveadd = MatSolveAdd_Python
* ops.solvetransposeadd = MatSolveTransposeAdd_Python
* ops.getdiagonal = MatGetDiagonal_Python # <<<<<<<<<<<<<<
@@ -6597,7 +6951,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->getdiagonal = __pyx_f_11libpetsc4py_MatGetDiagonal_Python;
- /* "libpetsc4py.pyx":574
+ /* "libpetsc4py.pyx":576
* ops.solvetransposeadd = MatSolveTransposeAdd_Python
* ops.getdiagonal = MatGetDiagonal_Python
* ops.setdiagonal = MatSetDiagonal_Python # <<<<<<<<<<<<<<
@@ -6606,7 +6960,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->diagonalset = __pyx_f_11libpetsc4py_MatSetDiagonal_Python;
- /* "libpetsc4py.pyx":575
+ /* "libpetsc4py.pyx":577
* ops.getdiagonal = MatGetDiagonal_Python
* ops.setdiagonal = MatSetDiagonal_Python
* ops.diagonalscale = MatDiagonalScale_Python # <<<<<<<<<<<<<<
@@ -6615,7 +6969,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->diagonalscale = __pyx_f_11libpetsc4py_MatDiagonalScale_Python;
- /* "libpetsc4py.pyx":576
+ /* "libpetsc4py.pyx":578
* ops.setdiagonal = MatSetDiagonal_Python
* ops.diagonalscale = MatDiagonalScale_Python
* ops.norm = MatNorm_Python # <<<<<<<<<<<<<<
@@ -6624,7 +6978,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->norm = __pyx_f_11libpetsc4py_MatNorm_Python;
- /* "libpetsc4py.pyx":577
+ /* "libpetsc4py.pyx":579
* ops.diagonalscale = MatDiagonalScale_Python
* ops.norm = MatNorm_Python
* ops.realpart = MatRealPart_Python # <<<<<<<<<<<<<<
@@ -6633,7 +6987,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->realpart = __pyx_f_11libpetsc4py_MatRealPart_Python;
- /* "libpetsc4py.pyx":578
+ /* "libpetsc4py.pyx":580
* ops.norm = MatNorm_Python
* ops.realpart = MatRealPart_Python
* ops.imagpart = MatImagPart_Python # <<<<<<<<<<<<<<
@@ -6642,7 +6996,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->imaginarypart = __pyx_f_11libpetsc4py_MatImagPart_Python;
- /* "libpetsc4py.pyx":579
+ /* "libpetsc4py.pyx":581
* ops.realpart = MatRealPart_Python
* ops.imagpart = MatImagPart_Python
* ops.conjugate = MatConjugate_Python # <<<<<<<<<<<<<<
@@ -6651,7 +7005,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_ops->conjugate = __pyx_f_11libpetsc4py_MatConjugate_Python;
- /* "libpetsc4py.pyx":581
+ /* "libpetsc4py.pyx":583
* ops.conjugate = MatConjugate_Python
* #
* mat.assembled = PETSC_TRUE # XXX # <<<<<<<<<<<<<<
@@ -6660,7 +7014,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_mat->assembled = PETSC_TRUE;
- /* "libpetsc4py.pyx":582
+ /* "libpetsc4py.pyx":584
* #
* mat.assembled = PETSC_TRUE # XXX
* mat.preallocated = PETSC_FALSE # XXX # <<<<<<<<<<<<<<
@@ -6669,46 +7023,46 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_mat->preallocated = PETSC_FALSE;
- /* "libpetsc4py.pyx":584
+ /* "libpetsc4py.pyx":586
* mat.preallocated = PETSC_FALSE # XXX
* #
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>mat,b"MatGetDiagonalBlock_C",
* <PetscVoidFunction>MatGetDiagonalBlock_Python) )
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatGetDiagonalBlock_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 584, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatGetDiagonalBlock_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 586, __pyx_L1_error)
- /* "libpetsc4py.pyx":587
+ /* "libpetsc4py.pyx":589
* <PetscObject>mat,b"MatGetDiagonalBlock_C",
* <PetscVoidFunction>MatGetDiagonalBlock_Python) )
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>mat,b"MatPythonSetType_C",
* <PetscVoidFunction>MatPythonSetType_PYTHON) )
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_MatPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 587, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_MatPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 589, __pyx_L1_error)
- /* "libpetsc4py.pyx":590
+ /* "libpetsc4py.pyx":592
* <PetscObject>mat,b"MatPythonSetType_C",
* <PetscVoidFunction>MatPythonSetType_PYTHON) )
* CHKERR( PetscObjectChangeTypeName( # <<<<<<<<<<<<<<
* <PetscObject>mat,MATPYTHON) )
* #
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectChangeTypeName(((PetscObject)__pyx_v_mat), "python")); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 590, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectChangeTypeName(((PetscObject)__pyx_v_mat), "python")); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 592, __pyx_L1_error)
- /* "libpetsc4py.pyx":593
+ /* "libpetsc4py.pyx":595
* <PetscObject>mat,MATPYTHON) )
* #
* cdef ctx = PyMat(NULL) # <<<<<<<<<<<<<<
* mat.data = <void*> ctx
* Py_INCREF(<PyObject*>mat.data)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 593, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_ctx = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":594
+ /* "libpetsc4py.pyx":596
* #
* cdef ctx = PyMat(NULL)
* mat.data = <void*> ctx # <<<<<<<<<<<<<<
@@ -6717,7 +7071,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
__pyx_v_mat->data = ((void *)__pyx_v_ctx);
- /* "libpetsc4py.pyx":595
+ /* "libpetsc4py.pyx":597
* cdef ctx = PyMat(NULL)
* mat.data = <void*> ctx
* Py_INCREF(<PyObject*>mat.data) # <<<<<<<<<<<<<<
@@ -6726,7 +7080,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
*/
Py_INCREF(((PyObject *)__pyx_v_mat->data));
- /* "libpetsc4py.pyx":596
+ /* "libpetsc4py.pyx":598
* mat.data = <void*> ctx
* Py_INCREF(<PyObject*>mat.data)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -6736,7 +7090,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":540
+ /* "libpetsc4py.pyx":542
* return FunctionEnd()
*
* cdef PetscErrorCode MatCreate_Python( # <<<<<<<<<<<<<<
@@ -6753,12 +7107,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreate_Python(Mat __pyx_v_mat) {
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":598
+/* "libpetsc4py.pyx":600
* return FunctionEnd()
*
* cdef PetscErrorCode MatDestroy_Python( # <<<<<<<<<<<<<<
@@ -6781,11 +7135,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
PyObject *__pyx_t_10 = NULL;
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatDestroy_Python", 0);
- /* "libpetsc4py.pyx":602
+ /* "libpetsc4py.pyx":604
* ) \
* except IERR with gil:
* FunctionBegin(b"MatDestroy_Python") # <<<<<<<<<<<<<<
@@ -6794,34 +7148,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatDestroy_Python"));
- /* "libpetsc4py.pyx":603
+ /* "libpetsc4py.pyx":605
* except IERR with gil:
* FunctionBegin(b"MatDestroy_Python")
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>mat,b"MatGetDiagonalBlock_C",
* <PetscVoidFunction>NULL) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatGetDiagonalBlock_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 603, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatGetDiagonalBlock_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 605, __pyx_L1_error)
- /* "libpetsc4py.pyx":606
+ /* "libpetsc4py.pyx":608
* <PetscObject>mat,b"MatGetDiagonalBlock_C",
* <PetscVoidFunction>NULL) )
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>mat,b"MatPythonSetType_C",
* <PetscVoidFunction>NULL) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 606, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_mat), ((char *)"MatPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 608, __pyx_L1_error)
- /* "libpetsc4py.pyx":609
+ /* "libpetsc4py.pyx":611
* <PetscObject>mat,b"MatPythonSetType_C",
* <PetscVoidFunction>NULL) )
* CHKERR( PetscObjectChangeTypeName( # <<<<<<<<<<<<<<
* <PetscObject>mat,NULL) )
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectChangeTypeName(((PetscObject)__pyx_v_mat), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 609, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectChangeTypeName(((PetscObject)__pyx_v_mat), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 611, __pyx_L1_error)
- /* "libpetsc4py.pyx":612
+ /* "libpetsc4py.pyx":614
* <PetscObject>mat,NULL) )
* #
* if not Py_IsInitialized(): return FunctionEnd() # <<<<<<<<<<<<<<
@@ -6834,7 +7188,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":613
+ /* "libpetsc4py.pyx":615
* #
* if not Py_IsInitialized(): return FunctionEnd()
* try: # <<<<<<<<<<<<<<
@@ -6843,7 +7197,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
*/
/*try:*/ {
- /* "libpetsc4py.pyx":614
+ /* "libpetsc4py.pyx":616
* if not Py_IsInitialized(): return FunctionEnd()
* try:
* addRef(mat) # <<<<<<<<<<<<<<
@@ -6852,17 +7206,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
*/
__pyx_f_11libpetsc4py_addRef(__pyx_v_mat);
- /* "libpetsc4py.pyx":615
+ /* "libpetsc4py.pyx":617
* try:
* addRef(mat)
* MatPythonSetContext(mat, NULL) # <<<<<<<<<<<<<<
* finally:
* delRef(mat)
*/
- __pyx_t_3 = MatPythonSetContext(__pyx_v_mat, NULL); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 615, __pyx_L5_error)
+ __pyx_t_3 = MatPythonSetContext(__pyx_v_mat, NULL); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 617, __pyx_L5_error)
}
- /* "libpetsc4py.pyx":617
+ /* "libpetsc4py.pyx":619
* MatPythonSetContext(mat, NULL)
* finally:
* delRef(mat) # <<<<<<<<<<<<<<
@@ -6873,7 +7227,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
/*normal exit:*/{
__pyx_f_11libpetsc4py_delRef(__pyx_v_mat);
- /* "libpetsc4py.pyx":618
+ /* "libpetsc4py.pyx":620
* finally:
* delRef(mat)
* Py_DECREF(<PyObject*>mat.data) # <<<<<<<<<<<<<<
@@ -6882,7 +7236,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
*/
Py_DECREF(((PyObject *)__pyx_v_mat->data));
- /* "libpetsc4py.pyx":619
+ /* "libpetsc4py.pyx":621
* delRef(mat)
* Py_DECREF(<PyObject*>mat.data)
* mat.data = NULL # <<<<<<<<<<<<<<
@@ -6908,7 +7262,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
__pyx_t_1 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
{
- /* "libpetsc4py.pyx":617
+ /* "libpetsc4py.pyx":619
* MatPythonSetContext(mat, NULL)
* finally:
* delRef(mat) # <<<<<<<<<<<<<<
@@ -6917,7 +7271,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
*/
__pyx_f_11libpetsc4py_delRef(__pyx_v_mat);
- /* "libpetsc4py.pyx":618
+ /* "libpetsc4py.pyx":620
* finally:
* delRef(mat)
* Py_DECREF(<PyObject*>mat.data) # <<<<<<<<<<<<<<
@@ -6926,7 +7280,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
*/
Py_DECREF(((PyObject *)__pyx_v_mat->data));
- /* "libpetsc4py.pyx":619
+ /* "libpetsc4py.pyx":621
* delRef(mat)
* Py_DECREF(<PyObject*>mat.data)
* mat.data = NULL # <<<<<<<<<<<<<<
@@ -6935,7 +7289,6 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
*/
__pyx_v_mat->data = NULL;
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_9);
__Pyx_XGIVEREF(__pyx_t_10);
@@ -6953,7 +7306,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
__pyx_L6:;
}
- /* "libpetsc4py.pyx":620
+ /* "libpetsc4py.pyx":622
* Py_DECREF(<PyObject*>mat.data)
* mat.data = NULL
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -6963,7 +7316,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":598
+ /* "libpetsc4py.pyx":600
* return FunctionEnd()
*
* cdef PetscErrorCode MatDestroy_Python( # <<<<<<<<<<<<<<
@@ -6978,12 +7331,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDestroy_Python(Mat __pyx_v_mat) {
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":622
+/* "libpetsc4py.pyx":624
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -7010,11 +7363,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSetFromOptions_Python", 0);
- /* "libpetsc4py.pyx":627
+ /* "libpetsc4py.pyx":629
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSetFromOptions_Python") # <<<<<<<<<<<<<<
@@ -7023,20 +7376,20 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSetFromOptions_Python"));
- /* "libpetsc4py.pyx":629
+ /* "libpetsc4py.pyx":631
* FunctionBegin(b"MatSetFromOptions_Python")
* #
* cdef char name[2048], *defval = PyMat(mat).getname() # <<<<<<<<<<<<<<
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 629, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 631, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == NULL && PyErr_Occurred())) __PYX_ERR(0, 629, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyMat *)((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == ((char *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 631, __pyx_L1_error)
__pyx_v_defval = __pyx_t_2;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":630
+ /* "libpetsc4py.pyx":632
* #
* cdef char name[2048], *defval = PyMat(mat).getname()
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -7045,7 +7398,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":631
+ /* "libpetsc4py.pyx":633
* cdef char name[2048], *defval = PyMat(mat).getname()
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject # <<<<<<<<<<<<<<
@@ -7054,16 +7407,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
*/
PetscOptionsObject = __pyx_v_PetscOptionsObject;
- /* "libpetsc4py.pyx":632
+ /* "libpetsc4py.pyx":634
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
* CHKERR( PetscOptionsString( # <<<<<<<<<<<<<<
* b"-mat_python_type",b"Python [package.]module[.{class|function}]",
* b"MatPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-mat_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"MatPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 632, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-mat_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"MatPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 634, __pyx_L1_error)
- /* "libpetsc4py.pyx":634
+ /* "libpetsc4py.pyx":636
* CHKERR( PetscOptionsString(
* b"-mat_python_type",b"Python [package.]module[.{class|function}]",
* b"MatPythonSetType",defval,name,sizeof(name),&found) ); <void>opts; # <<<<<<<<<<<<<<
@@ -7072,7 +7425,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
*/
((void)PetscOptionsObject);
- /* "libpetsc4py.pyx":635
+ /* "libpetsc4py.pyx":637
* b"-mat_python_type",b"Python [package.]module[.{class|function}]",
* b"MatPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -7089,17 +7442,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
__pyx_L4_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":636
+ /* "libpetsc4py.pyx":638
* b"MatPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]:
* CHKERR( MatPythonSetType_PYTHON(mat,name) ) # <<<<<<<<<<<<<<
* #
* cdef setFromOptions = PyMat(mat).setFromOptions
*/
- __pyx_t_6 = __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(__pyx_v_mat, __pyx_v_name); if (unlikely(__pyx_t_6 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 636, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 636, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(__pyx_v_mat, __pyx_v_name); if (unlikely(__pyx_t_6 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 638, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 638, __pyx_L1_error)
- /* "libpetsc4py.pyx":635
+ /* "libpetsc4py.pyx":637
* b"-mat_python_type",b"Python [package.]module[.{class|function}]",
* b"MatPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -7108,22 +7461,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
*/
}
- /* "libpetsc4py.pyx":638
+ /* "libpetsc4py.pyx":640
* CHKERR( MatPythonSetType_PYTHON(mat,name) )
* #
* cdef setFromOptions = PyMat(mat).setFromOptions # <<<<<<<<<<<<<<
* if setFromOptions is not None:
* setFromOptions(Mat_(mat))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 638, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 640, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 638, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 640, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setFromOptions = __pyx_t_7;
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":639
+ /* "libpetsc4py.pyx":641
* #
* cdef setFromOptions = PyMat(mat).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -7134,18 +7487,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":640
+ /* "libpetsc4py.pyx":642
* cdef setFromOptions = PyMat(mat).setFromOptions
* if setFromOptions is not None:
* setFromOptions(Mat_(mat)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 640, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 642, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setFromOptions);
__pyx_t_8 = __pyx_v_setFromOptions; __pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -7155,24 +7508,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
}
}
if (!__pyx_t_9) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 640, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 642, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else {
- __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 640, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 640, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 642, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 642, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 642, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 642, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":639
+ /* "libpetsc4py.pyx":641
* #
* cdef setFromOptions = PyMat(mat).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -7181,7 +7554,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
*/
}
- /* "libpetsc4py.pyx":641
+ /* "libpetsc4py.pyx":643
* if setFromOptions is not None:
* setFromOptions(Mat_(mat))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -7191,7 +7564,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":622
+ /* "libpetsc4py.pyx":624
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -7212,12 +7585,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetFromOptions_Python(PetscOption
__Pyx_XDECREF(__pyx_v_setFromOptions);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":643
+/* "libpetsc4py.pyx":645
* return FunctionEnd()
*
* cdef PetscErrorCode MatView_Python( # <<<<<<<<<<<<<<
@@ -7237,14 +7610,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatView_Python(Mat __pyx_v_mat, Pets
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
- PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatView_Python", 0);
- /* "libpetsc4py.pyx":648
+ /* "libpetsc4py.pyx":650
* ) \
* except IERR with gil:
* FunctionBegin(b"MatView_Python") # <<<<<<<<<<<<<<
@@ -7253,34 +7625,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatView_Python(Mat __pyx_v_mat, Pets
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatView_Python"));
- /* "libpetsc4py.pyx":649
+ /* "libpetsc4py.pyx":651
* except IERR with gil:
* FunctionBegin(b"MatView_Python")
* viewcontext(PyMat(mat), vwr) # <<<<<<<<<<<<<<
* cdef view = PyMat(mat).view
* if view is not None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 649, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 649, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":650
+ /* "libpetsc4py.pyx":652
* FunctionBegin(b"MatView_Python")
* viewcontext(PyMat(mat), vwr)
* cdef view = PyMat(mat).view # <<<<<<<<<<<<<<
* if view is not None:
* view(Mat_(mat), Viewer_(vwr))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 650, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 652, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 650, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 652, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_view = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":651
+ /* "libpetsc4py.pyx":653
* viewcontext(PyMat(mat), vwr)
* cdef view = PyMat(mat).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -7291,48 +7663,70 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatView_Python(Mat __pyx_v_mat, Pets
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":652
+ /* "libpetsc4py.pyx":654
* cdef view = PyMat(mat).view
* if view is not None:
* view(Mat_(mat), Viewer_(vwr)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 652, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 654, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 652, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 654, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_view);
__pyx_t_7 = __pyx_v_view; __pyx_t_8 = NULL;
- __pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ __pyx_t_2 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
- __pyx_t_9 = 1;
+ __pyx_t_2 = 1;
}
}
- __pyx_t_10 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 652, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 654, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 654, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 654, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_2, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_2, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 654, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 652, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":651
+ /* "libpetsc4py.pyx":653
* viewcontext(PyMat(mat), vwr)
* cdef view = PyMat(mat).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -7341,7 +7735,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatView_Python(Mat __pyx_v_mat, Pets
*/
}
- /* "libpetsc4py.pyx":653
+ /* "libpetsc4py.pyx":655
* if view is not None:
* view(Mat_(mat), Viewer_(vwr))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -7351,7 +7745,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatView_Python(Mat __pyx_v_mat, Pets
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":643
+ /* "libpetsc4py.pyx":645
* return FunctionEnd()
*
* cdef PetscErrorCode MatView_Python( # <<<<<<<<<<<<<<
@@ -7366,19 +7760,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatView_Python(Mat __pyx_v_mat, Pets
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
- __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_XDECREF(__pyx_t_9);
__Pyx_AddTraceback("libpetsc4py.MatView_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_view);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":655
+/* "libpetsc4py.pyx":657
* return FunctionEnd()
*
* cdef PetscErrorCode MatDuplicate_Python( # <<<<<<<<<<<<<<
@@ -7398,15 +7792,15 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat __pyx_v_mat,
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
Mat __pyx_t_10;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatDuplicate_Python", 0);
- /* "libpetsc4py.pyx":661
+ /* "libpetsc4py.pyx":663
* ) \
* except IERR with gil:
* FunctionBegin(b"MatDuplicate_Python") # <<<<<<<<<<<<<<
@@ -7415,22 +7809,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat __pyx_v_mat,
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatDuplicate_Python"));
- /* "libpetsc4py.pyx":662
+ /* "libpetsc4py.pyx":664
* except IERR with gil:
* FunctionBegin(b"MatDuplicate_Python")
* cdef duplicate = PyMat(mat).duplicate # <<<<<<<<<<<<<<
* if duplicate is None: return UNSUPPORTED(b"duplicate")
* cdef Mat m = duplicate(Mat_(mat), <long>op)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 662, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 664, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_duplicate); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 662, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_duplicate); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 664, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_duplicate = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":663
+ /* "libpetsc4py.pyx":665
* FunctionBegin(b"MatDuplicate_Python")
* cdef duplicate = PyMat(mat).duplicate
* if duplicate is None: return UNSUPPORTED(b"duplicate") # <<<<<<<<<<<<<<
@@ -7444,21 +7838,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat __pyx_v_mat,
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":664
+ /* "libpetsc4py.pyx":666
* cdef duplicate = PyMat(mat).duplicate
* if duplicate is None: return UNSUPPORTED(b"duplicate")
* cdef Mat m = duplicate(Mat_(mat), <long>op) # <<<<<<<<<<<<<<
* out[0] = m.mat; m.mat = NULL
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 664, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 666, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __Pyx_PyInt_From_long(((long)__pyx_v_op)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 664, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyInt_From_long(((long)__pyx_v_op)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 666, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_duplicate);
__pyx_t_6 = __pyx_v_duplicate; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -7468,26 +7862,48 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat __pyx_v_mat,
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 664, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 666, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 666, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 666, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 666, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 664, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 664, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 666, __pyx_L1_error)
__pyx_v_m = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":665
+ /* "libpetsc4py.pyx":667
* if duplicate is None: return UNSUPPORTED(b"duplicate")
* cdef Mat m = duplicate(Mat_(mat), <long>op)
* out[0] = m.mat; m.mat = NULL # <<<<<<<<<<<<<<
@@ -7498,7 +7914,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat __pyx_v_mat,
(__pyx_v_out[0]) = __pyx_t_10;
__pyx_v_m->mat = NULL;
- /* "libpetsc4py.pyx":666
+ /* "libpetsc4py.pyx":668
* cdef Mat m = duplicate(Mat_(mat), <long>op)
* out[0] = m.mat; m.mat = NULL
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -7508,7 +7924,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat __pyx_v_mat,
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":655
+ /* "libpetsc4py.pyx":657
* return FunctionEnd()
*
* cdef PetscErrorCode MatDuplicate_Python( # <<<<<<<<<<<<<<
@@ -7531,12 +7947,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDuplicate_Python(Mat __pyx_v_mat,
__Pyx_XDECREF((PyObject *)__pyx_v_m);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":668
+/* "libpetsc4py.pyx":670
* return FunctionEnd()
*
* cdef PetscErrorCode MatCopy_Python( # <<<<<<<<<<<<<<
@@ -7556,14 +7972,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCopy_Python(Mat __pyx_v_mat, Mat
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatCopy_Python", 0);
- /* "libpetsc4py.pyx":674
+ /* "libpetsc4py.pyx":676
* ) \
* except IERR with gil:
* FunctionBegin(b"MatCopy_Python") # <<<<<<<<<<<<<<
@@ -7572,22 +7988,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCopy_Python(Mat __pyx_v_mat, Mat
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatCopy_Python"));
- /* "libpetsc4py.pyx":675
+ /* "libpetsc4py.pyx":677
* except IERR with gil:
* FunctionBegin(b"MatCopy_Python")
* cdef copy = PyMat(mat).copy # <<<<<<<<<<<<<<
* if copy is None: return UNSUPPORTED(b"copy")
* copy(Mat_(mat), Mat_(out), <long>op)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 675, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 677, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 675, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 677, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_copy = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":676
+ /* "libpetsc4py.pyx":678
* FunctionBegin(b"MatCopy_Python")
* cdef copy = PyMat(mat).copy
* if copy is None: return UNSUPPORTED(b"copy") # <<<<<<<<<<<<<<
@@ -7601,23 +8017,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCopy_Python(Mat __pyx_v_mat, Mat
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":677
+ /* "libpetsc4py.pyx":679
* cdef copy = PyMat(mat).copy
* if copy is None: return UNSUPPORTED(b"copy")
* copy(Mat_(mat), Mat_(out), <long>op) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 677, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_out)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 677, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_out)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __Pyx_PyInt_From_long(((long)__pyx_v_op)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 677, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_From_long(((long)__pyx_v_op)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_copy);
__pyx_t_7 = __pyx_v_copy; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -7627,27 +8043,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCopy_Python(Mat __pyx_v_mat, Mat
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 677, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 677, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 679, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 679, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 679, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 679, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":678
+ /* "libpetsc4py.pyx":680
* if copy is None: return UNSUPPORTED(b"copy")
* copy(Mat_(mat), Mat_(out), <long>op)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -7657,7 +8097,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCopy_Python(Mat __pyx_v_mat, Mat
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":668
+ /* "libpetsc4py.pyx":670
* return FunctionEnd()
*
* cdef PetscErrorCode MatCopy_Python( # <<<<<<<<<<<<<<
@@ -7680,12 +8120,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCopy_Python(Mat __pyx_v_mat, Mat
__Pyx_XDECREF(__pyx_v_copy);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":680
+/* "libpetsc4py.pyx":682
* return FunctionEnd()
*
* cdef PetscErrorCode MatGetDiagonalBlock_Python( # <<<<<<<<<<<<<<
@@ -7707,11 +8147,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
PyObject *__pyx_t_7 = NULL;
Mat __pyx_t_8;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatGetDiagonalBlock_Python", 0);
- /* "libpetsc4py.pyx":685
+ /* "libpetsc4py.pyx":687
* ) \
* except IERR with gil:
* FunctionBegin(b"MatGetDiagonalBlock_Python") # <<<<<<<<<<<<<<
@@ -7720,22 +8160,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatGetDiagonalBlock_Python"));
- /* "libpetsc4py.pyx":686
+ /* "libpetsc4py.pyx":688
* except IERR with gil:
* FunctionBegin(b"MatGetDiagonalBlock_Python")
* cdef getDiagonalBlock = PyMat(mat).getDiagonalBlock # <<<<<<<<<<<<<<
* if getDiagonalBlock is None:
* if getCommSize(mat) == 1:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 686, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 688, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_getDiagonalBlock); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 686, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_getDiagonalBlock); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 688, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_getDiagonalBlock = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":687
+ /* "libpetsc4py.pyx":689
* FunctionBegin(b"MatGetDiagonalBlock_Python")
* cdef getDiagonalBlock = PyMat(mat).getDiagonalBlock
* if getDiagonalBlock is None: # <<<<<<<<<<<<<<
@@ -7746,7 +8186,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":688
+ /* "libpetsc4py.pyx":690
* cdef getDiagonalBlock = PyMat(mat).getDiagonalBlock
* if getDiagonalBlock is None:
* if getCommSize(mat) == 1: # <<<<<<<<<<<<<<
@@ -7756,7 +8196,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
__pyx_t_4 = ((__pyx_f_11libpetsc4py_getCommSize(__pyx_v_mat) == 1) != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":689
+ /* "libpetsc4py.pyx":691
* if getDiagonalBlock is None:
* if getCommSize(mat) == 1:
* out[0] = mat # <<<<<<<<<<<<<<
@@ -7765,7 +8205,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
*/
(__pyx_v_out[0]) = __pyx_v_mat;
- /* "libpetsc4py.pyx":690
+ /* "libpetsc4py.pyx":692
* if getCommSize(mat) == 1:
* out[0] = mat
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -7775,7 +8215,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":688
+ /* "libpetsc4py.pyx":690
* cdef getDiagonalBlock = PyMat(mat).getDiagonalBlock
* if getDiagonalBlock is None:
* if getCommSize(mat) == 1: # <<<<<<<<<<<<<<
@@ -7784,7 +8224,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
*/
}
- /* "libpetsc4py.pyx":687
+ /* "libpetsc4py.pyx":689
* FunctionBegin(b"MatGetDiagonalBlock_Python")
* cdef getDiagonalBlock = PyMat(mat).getDiagonalBlock
* if getDiagonalBlock is None: # <<<<<<<<<<<<<<
@@ -7793,7 +8233,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
*/
}
- /* "libpetsc4py.pyx":691
+ /* "libpetsc4py.pyx":693
* out[0] = mat
* return FunctionEnd()
* if getDiagonalBlock is None: return UNSUPPORTED(b"getDiagonalBlock") # <<<<<<<<<<<<<<
@@ -7807,18 +8247,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":692
+ /* "libpetsc4py.pyx":694
* return FunctionEnd()
* if getDiagonalBlock is None: return UNSUPPORTED(b"getDiagonalBlock")
* cdef Mat sub = getDiagonalBlock(Mat_(mat)) # <<<<<<<<<<<<<<
* if sub is not None: out[0] = sub.mat
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 692, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 694, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_getDiagonalBlock);
__pyx_t_5 = __pyx_v_getDiagonalBlock; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -7828,26 +8268,46 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 692, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 694, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 692, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 692, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 694, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 694, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 694, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 694, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 692, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 694, __pyx_L1_error)
__pyx_v_sub = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":693
+ /* "libpetsc4py.pyx":695
* if getDiagonalBlock is None: return UNSUPPORTED(b"getDiagonalBlock")
* cdef Mat sub = getDiagonalBlock(Mat_(mat))
* if sub is not None: out[0] = sub.mat # <<<<<<<<<<<<<<
@@ -7861,17 +8321,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
(__pyx_v_out[0]) = __pyx_t_8;
}
- /* "libpetsc4py.pyx":694
+ /* "libpetsc4py.pyx":696
* cdef Mat sub = getDiagonalBlock(Mat_(mat))
* if sub is not None: out[0] = sub.mat
* return FunctionEnd() # <<<<<<<<<<<<<<
*
- * cdef PetscErrorCode MatGetSubMatrix_Python(
+ * cdef PetscErrorCode MatCreateSubMatrix_Python(
*/
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":680
+ /* "libpetsc4py.pyx":682
* return FunctionEnd()
*
* cdef PetscErrorCode MatGetDiagonalBlock_Python( # <<<<<<<<<<<<<<
@@ -7893,21 +8353,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonalBlock_Python(Mat __pyx
__Pyx_XDECREF((PyObject *)__pyx_v_sub);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":696
+/* "libpetsc4py.pyx":698
* return FunctionEnd()
*
- * cdef PetscErrorCode MatGetSubMatrix_Python( # <<<<<<<<<<<<<<
+ * cdef PetscErrorCode MatCreateSubMatrix_Python( # <<<<<<<<<<<<<<
* PetscMat mat,
* PetscIS row,
*/
-static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_mat, IS __pyx_v_row, IS __pyx_v_col, MatReuse __pyx_v_op, Mat *__pyx_v_out) {
- PyObject *__pyx_v_getSubMatrix = 0;
+static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateSubMatrix_Python(Mat __pyx_v_mat, IS __pyx_v_row, IS __pyx_v_col, MatReuse __pyx_v_op, Mat *__pyx_v_out) {
+ PyObject *__pyx_v_createSubMatrix = 0;
struct PyPetscMatObject *__pyx_v_sub = 0;
PetscErrorCode __pyx_r;
__Pyx_RefNannyDeclarations
@@ -7919,56 +8379,56 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
PyObject *__pyx_t_11 = NULL;
Mat __pyx_t_12;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
- __Pyx_RefNannySetupContext("MatGetSubMatrix_Python", 0);
+ __Pyx_RefNannySetupContext("MatCreateSubMatrix_Python", 0);
- /* "libpetsc4py.pyx":704
+ /* "libpetsc4py.pyx":706
* ) \
* except IERR with gil:
* FunctionBegin(b"MatCopy_Python") # <<<<<<<<<<<<<<
- * cdef getSubMatrix = PyMat(mat).getSubMatrix
- * if getSubMatrix is None: return UNSUPPORTED(b"getSubMatrix")
+ * cdef createSubMatrix = PyMat(mat).createSubMatrix
+ * if createSubMatrix is None: return UNSUPPORTED(b"createSubMatrix")
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatCopy_Python"));
- /* "libpetsc4py.pyx":705
+ /* "libpetsc4py.pyx":707
* except IERR with gil:
* FunctionBegin(b"MatCopy_Python")
- * cdef getSubMatrix = PyMat(mat).getSubMatrix # <<<<<<<<<<<<<<
- * if getSubMatrix is None: return UNSUPPORTED(b"getSubMatrix")
+ * cdef createSubMatrix = PyMat(mat).createSubMatrix # <<<<<<<<<<<<<<
+ * if createSubMatrix is None: return UNSUPPORTED(b"createSubMatrix")
* cdef Mat sub = None
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 705, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 707, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_getSubMatrix); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 705, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_createSubMatrix); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 707, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_v_getSubMatrix = __pyx_t_2;
+ __pyx_v_createSubMatrix = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":706
+ /* "libpetsc4py.pyx":708
* FunctionBegin(b"MatCopy_Python")
- * cdef getSubMatrix = PyMat(mat).getSubMatrix
- * if getSubMatrix is None: return UNSUPPORTED(b"getSubMatrix") # <<<<<<<<<<<<<<
+ * cdef createSubMatrix = PyMat(mat).createSubMatrix
+ * if createSubMatrix is None: return UNSUPPORTED(b"createSubMatrix") # <<<<<<<<<<<<<<
* cdef Mat sub = None
* if op == MAT_IGNORE_MATRIX:
*/
- __pyx_t_3 = (__pyx_v_getSubMatrix == Py_None);
+ __pyx_t_3 = (__pyx_v_createSubMatrix == Py_None);
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- __pyx_r = __pyx_f_11libpetsc4py_UNSUPPORTED(((char *)"getSubMatrix"));
+ __pyx_r = __pyx_f_11libpetsc4py_UNSUPPORTED(((char *)"createSubMatrix"));
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":707
- * cdef getSubMatrix = PyMat(mat).getSubMatrix
- * if getSubMatrix is None: return UNSUPPORTED(b"getSubMatrix")
+ /* "libpetsc4py.pyx":709
+ * cdef createSubMatrix = PyMat(mat).createSubMatrix
+ * if createSubMatrix is None: return UNSUPPORTED(b"createSubMatrix")
* cdef Mat sub = None # <<<<<<<<<<<<<<
* if op == MAT_IGNORE_MATRIX:
* sub = None
@@ -7976,8 +8436,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
__Pyx_INCREF(Py_None);
__pyx_v_sub = ((struct PyPetscMatObject *)Py_None);
- /* "libpetsc4py.pyx":708
- * if getSubMatrix is None: return UNSUPPORTED(b"getSubMatrix")
+ /* "libpetsc4py.pyx":710
+ * if createSubMatrix is None: return UNSUPPORTED(b"createSubMatrix")
* cdef Mat sub = None
* if op == MAT_IGNORE_MATRIX: # <<<<<<<<<<<<<<
* sub = None
@@ -7986,18 +8446,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
switch (__pyx_v_op) {
case MAT_IGNORE_MATRIX:
- /* "libpetsc4py.pyx":709
+ /* "libpetsc4py.pyx":711
* cdef Mat sub = None
* if op == MAT_IGNORE_MATRIX:
* sub = None # <<<<<<<<<<<<<<
* elif op == MAT_INITIAL_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
*/
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_sub, ((struct PyPetscMatObject *)Py_None));
- /* "libpetsc4py.pyx":708
- * if getSubMatrix is None: return UNSUPPORTED(b"getSubMatrix")
+ /* "libpetsc4py.pyx":710
+ * if createSubMatrix is None: return UNSUPPORTED(b"createSubMatrix")
* cdef Mat sub = None
* if op == MAT_IGNORE_MATRIX: # <<<<<<<<<<<<<<
* sub = None
@@ -8005,32 +8465,32 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
*/
break;
- /* "libpetsc4py.pyx":710
+ /* "libpetsc4py.pyx":712
* if op == MAT_IGNORE_MATRIX:
* sub = None
* elif op == MAT_INITIAL_MATRIX: # <<<<<<<<<<<<<<
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
* elif op == MAT_REUSE_MATRIX:
*/
case MAT_INITIAL_MATRIX:
- /* "libpetsc4py.pyx":711
+ /* "libpetsc4py.pyx":713
* sub = None
* elif op == MAT_INITIAL_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None) # <<<<<<<<<<<<<<
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None) # <<<<<<<<<<<<<<
* elif op == MAT_REUSE_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 711, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 713, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_row)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 711, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_row)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 713, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_col)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 711, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_col)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 713, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __Pyx_INCREF(__pyx_v_getSubMatrix);
- __pyx_t_7 = __pyx_v_getSubMatrix; __pyx_t_8 = NULL;
+ __Pyx_INCREF(__pyx_v_createSubMatrix);
+ __pyx_t_7 = __pyx_v_createSubMatrix; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -8040,68 +8500,92 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(4+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 711, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __Pyx_INCREF(Py_None);
- __Pyx_GIVEREF(Py_None);
- PyTuple_SET_ITEM(__pyx_t_10, 3+__pyx_t_9, Py_None);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 711, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6, Py_None};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6, Py_None};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(4+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __Pyx_INCREF(Py_None);
+ __Pyx_GIVEREF(Py_None);
+ PyTuple_SET_ITEM(__pyx_t_10, 3+__pyx_t_9, Py_None);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 711, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 713, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_sub, ((struct PyPetscMatObject *)__pyx_t_2));
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":710
+ /* "libpetsc4py.pyx":712
* if op == MAT_IGNORE_MATRIX:
* sub = None
* elif op == MAT_INITIAL_MATRIX: # <<<<<<<<<<<<<<
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
* elif op == MAT_REUSE_MATRIX:
*/
break;
- /* "libpetsc4py.pyx":712
+ /* "libpetsc4py.pyx":714
* elif op == MAT_INITIAL_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
* elif op == MAT_REUSE_MATRIX: # <<<<<<<<<<<<<<
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
* if sub is not None:
*/
case MAT_REUSE_MATRIX:
- /* "libpetsc4py.pyx":713
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
+ /* "libpetsc4py.pyx":715
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
* elif op == MAT_REUSE_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0])) # <<<<<<<<<<<<<<
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0])) # <<<<<<<<<<<<<<
* if sub is not None:
* addRef(sub.mat)
*/
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 715, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_10 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_row)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __pyx_t_10 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_row)); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 715, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_col)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_IS_(__pyx_v_col)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 715, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_((__pyx_v_out[0]))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 713, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_((__pyx_v_out[0]))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 715, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __Pyx_INCREF(__pyx_v_getSubMatrix);
- __pyx_t_1 = __pyx_v_getSubMatrix; __pyx_t_8 = NULL;
+ __Pyx_INCREF(__pyx_v_createSubMatrix);
+ __pyx_t_1 = __pyx_v_createSubMatrix; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
@@ -8111,45 +8595,71 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
__pyx_t_9 = 1;
}
}
- __pyx_t_11 = PyTuple_New(4+__pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 713, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_1)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_8, __pyx_t_7, __pyx_t_10, __pyx_t_6, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 715, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_8, __pyx_t_7, __pyx_t_10, __pyx_t_6, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-__pyx_t_9, 4+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 715, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 715, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_9, __pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_10);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_9, __pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_9, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_9, __pyx_t_5);
+ __pyx_t_7 = 0;
+ __pyx_t_10 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 715, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
}
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_9, __pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_10);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_9, __pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_9, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_9, __pyx_t_5);
- __pyx_t_7 = 0;
- __pyx_t_10 = 0;
- __pyx_t_6 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 713, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 713, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(0, 715, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_sub, ((struct PyPetscMatObject *)__pyx_t_2));
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":712
+ /* "libpetsc4py.pyx":714
* elif op == MAT_INITIAL_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
* elif op == MAT_REUSE_MATRIX: # <<<<<<<<<<<<<<
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
* if sub is not None:
*/
break;
default: break;
}
- /* "libpetsc4py.pyx":714
+ /* "libpetsc4py.pyx":716
* elif op == MAT_REUSE_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
* if sub is not None: # <<<<<<<<<<<<<<
* addRef(sub.mat)
* out[0] = sub.mat
@@ -8158,8 +8668,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
__pyx_t_3 = (__pyx_t_4 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":715
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
+ /* "libpetsc4py.pyx":717
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
* if sub is not None:
* addRef(sub.mat) # <<<<<<<<<<<<<<
* out[0] = sub.mat
@@ -8167,7 +8677,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
*/
__pyx_f_11libpetsc4py_addRef(__pyx_v_sub->mat);
- /* "libpetsc4py.pyx":716
+ /* "libpetsc4py.pyx":718
* if sub is not None:
* addRef(sub.mat)
* out[0] = sub.mat # <<<<<<<<<<<<<<
@@ -8177,16 +8687,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
__pyx_t_12 = __pyx_v_sub->mat;
(__pyx_v_out[0]) = __pyx_t_12;
- /* "libpetsc4py.pyx":714
+ /* "libpetsc4py.pyx":716
* elif op == MAT_REUSE_MATRIX:
- * sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
+ * sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
* if sub is not None: # <<<<<<<<<<<<<<
* addRef(sub.mat)
* out[0] = sub.mat
*/
}
- /* "libpetsc4py.pyx":717
+ /* "libpetsc4py.pyx":719
* addRef(sub.mat)
* out[0] = sub.mat
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -8196,10 +8706,10 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":696
+ /* "libpetsc4py.pyx":698
* return FunctionEnd()
*
- * cdef PetscErrorCode MatGetSubMatrix_Python( # <<<<<<<<<<<<<<
+ * cdef PetscErrorCode MatCreateSubMatrix_Python( # <<<<<<<<<<<<<<
* PetscMat mat,
* PetscIS row,
*/
@@ -8214,19 +8724,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetSubMatrix_Python(Mat __pyx_v_m
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_10);
__Pyx_XDECREF(__pyx_t_11);
- __Pyx_AddTraceback("libpetsc4py.MatGetSubMatrix_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("libpetsc4py.MatCreateSubMatrix_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
- __Pyx_XDECREF(__pyx_v_getSubMatrix);
+ __Pyx_XDECREF(__pyx_v_createSubMatrix);
__Pyx_XDECREF((PyObject *)__pyx_v_sub);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":719
+/* "libpetsc4py.pyx":721
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetOption_Python( # <<<<<<<<<<<<<<
@@ -8246,14 +8756,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetOption_Python(Mat __pyx_v_mat,
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSetOption_Python", 0);
- /* "libpetsc4py.pyx":725
+ /* "libpetsc4py.pyx":727
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSetOption_Python") # <<<<<<<<<<<<<<
@@ -8262,49 +8772,49 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetOption_Python(Mat __pyx_v_mat,
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSetOption_Python"));
- /* "libpetsc4py.pyx":726
+ /* "libpetsc4py.pyx":728
* except IERR with gil:
* FunctionBegin(b"MatSetOption_Python")
* cdef setOption = PyMat(mat).setOption # <<<<<<<<<<<<<<
* if setOption is not None:
- * setOption(Mat_(mat), <long>op, <bint>flag)
+ * setOption(Mat_(mat), <long>op, <bint>(<int>flag))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 726, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setOption); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 726, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setOption); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setOption = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":727
+ /* "libpetsc4py.pyx":729
* FunctionBegin(b"MatSetOption_Python")
* cdef setOption = PyMat(mat).setOption
* if setOption is not None: # <<<<<<<<<<<<<<
- * setOption(Mat_(mat), <long>op, <bint>flag)
+ * setOption(Mat_(mat), <long>op, <bint>(<int>flag))
* return FunctionEnd()
*/
__pyx_t_3 = (__pyx_v_setOption != Py_None);
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":728
+ /* "libpetsc4py.pyx":730
* cdef setOption = PyMat(mat).setOption
* if setOption is not None:
- * setOption(Mat_(mat), <long>op, <bint>flag) # <<<<<<<<<<<<<<
+ * setOption(Mat_(mat), <long>op, <bint>(<int>flag)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 728, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 730, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __Pyx_PyInt_From_long(((long)__pyx_v_op)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 728, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyInt_From_long(((long)__pyx_v_op)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 730, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 728, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyBool_FromLong((((int)__pyx_v_flag) != 0)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 730, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_setOption);
__pyx_t_7 = __pyx_v_setOption; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -8314,38 +8824,62 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetOption_Python(Mat __pyx_v_mat,
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 728, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 730, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 730, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 730, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 730, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 728, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":727
+ /* "libpetsc4py.pyx":729
* FunctionBegin(b"MatSetOption_Python")
* cdef setOption = PyMat(mat).setOption
* if setOption is not None: # <<<<<<<<<<<<<<
- * setOption(Mat_(mat), <long>op, <bint>flag)
+ * setOption(Mat_(mat), <long>op, <bint>(<int>flag))
* return FunctionEnd()
*/
}
- /* "libpetsc4py.pyx":729
+ /* "libpetsc4py.pyx":731
* if setOption is not None:
- * setOption(Mat_(mat), <long>op, <bint>flag)
+ * setOption(Mat_(mat), <long>op, <bint>(<int>flag))
* return FunctionEnd() # <<<<<<<<<<<<<<
*
* cdef PetscErrorCode MatSetUp_Python(
@@ -8353,7 +8887,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetOption_Python(Mat __pyx_v_mat,
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":719
+ /* "libpetsc4py.pyx":721
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetOption_Python( # <<<<<<<<<<<<<<
@@ -8376,12 +8910,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetOption_Python(Mat __pyx_v_mat,
__Pyx_XDECREF(__pyx_v_setOption);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":731
+/* "libpetsc4py.pyx":733
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetUp_Python( # <<<<<<<<<<<<<<
@@ -8407,11 +8941,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSetUp_Python", 0);
- /* "libpetsc4py.pyx":735
+ /* "libpetsc4py.pyx":737
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSetUp_Python") # <<<<<<<<<<<<<<
@@ -8420,7 +8954,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSetUp_Python"));
- /* "libpetsc4py.pyx":736
+ /* "libpetsc4py.pyx":738
* except IERR with gil:
* FunctionBegin(b"MatSetUp_Python")
* cdef PetscInt rbs = -1, cbs = -1 # <<<<<<<<<<<<<<
@@ -8430,25 +8964,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__pyx_v_rbs = -1L;
__pyx_v_cbs = -1L;
- /* "libpetsc4py.pyx":737
+ /* "libpetsc4py.pyx":739
* FunctionBegin(b"MatSetUp_Python")
* cdef PetscInt rbs = -1, cbs = -1
* CHKERR( PetscLayoutGetBlockSize(mat.rmap,&rbs) ) # <<<<<<<<<<<<<<
* CHKERR( PetscLayoutGetBlockSize(mat.cmap,&cbs) )
* if rbs == -1: rbs = 1
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutGetBlockSize(__pyx_v_mat->rmap, (&__pyx_v_rbs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 737, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutGetBlockSize(__pyx_v_mat->rmap, (&__pyx_v_rbs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 739, __pyx_L1_error)
- /* "libpetsc4py.pyx":738
+ /* "libpetsc4py.pyx":740
* cdef PetscInt rbs = -1, cbs = -1
* CHKERR( PetscLayoutGetBlockSize(mat.rmap,&rbs) )
* CHKERR( PetscLayoutGetBlockSize(mat.cmap,&cbs) ) # <<<<<<<<<<<<<<
* if rbs == -1: rbs = 1
* if cbs == -1: cbs = rbs
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutGetBlockSize(__pyx_v_mat->cmap, (&__pyx_v_cbs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 738, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutGetBlockSize(__pyx_v_mat->cmap, (&__pyx_v_cbs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 740, __pyx_L1_error)
- /* "libpetsc4py.pyx":739
+ /* "libpetsc4py.pyx":741
* CHKERR( PetscLayoutGetBlockSize(mat.rmap,&rbs) )
* CHKERR( PetscLayoutGetBlockSize(mat.cmap,&cbs) )
* if rbs == -1: rbs = 1 # <<<<<<<<<<<<<<
@@ -8460,7 +8994,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__pyx_v_rbs = 1;
}
- /* "libpetsc4py.pyx":740
+ /* "libpetsc4py.pyx":742
* CHKERR( PetscLayoutGetBlockSize(mat.cmap,&cbs) )
* if rbs == -1: rbs = 1
* if cbs == -1: cbs = rbs # <<<<<<<<<<<<<<
@@ -8472,43 +9006,43 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__pyx_v_cbs = __pyx_v_rbs;
}
- /* "libpetsc4py.pyx":741
+ /* "libpetsc4py.pyx":743
* if rbs == -1: rbs = 1
* if cbs == -1: cbs = rbs
* CHKERR( PetscLayoutSetBlockSize(mat.rmap,rbs) ) # <<<<<<<<<<<<<<
* CHKERR( PetscLayoutSetBlockSize(mat.cmap,cbs) )
* CHKERR( PetscLayoutSetUp(mat.rmap) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetBlockSize(__pyx_v_mat->rmap, __pyx_v_rbs)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 741, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetBlockSize(__pyx_v_mat->rmap, __pyx_v_rbs)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 743, __pyx_L1_error)
- /* "libpetsc4py.pyx":742
+ /* "libpetsc4py.pyx":744
* if cbs == -1: cbs = rbs
* CHKERR( PetscLayoutSetBlockSize(mat.rmap,rbs) )
* CHKERR( PetscLayoutSetBlockSize(mat.cmap,cbs) ) # <<<<<<<<<<<<<<
* CHKERR( PetscLayoutSetUp(mat.rmap) )
* CHKERR( PetscLayoutSetUp(mat.cmap) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetBlockSize(__pyx_v_mat->cmap, __pyx_v_cbs)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 742, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetBlockSize(__pyx_v_mat->cmap, __pyx_v_cbs)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 744, __pyx_L1_error)
- /* "libpetsc4py.pyx":743
+ /* "libpetsc4py.pyx":745
* CHKERR( PetscLayoutSetBlockSize(mat.rmap,rbs) )
* CHKERR( PetscLayoutSetBlockSize(mat.cmap,cbs) )
* CHKERR( PetscLayoutSetUp(mat.rmap) ) # <<<<<<<<<<<<<<
* CHKERR( PetscLayoutSetUp(mat.cmap) )
* mat.preallocated = PETSC_TRUE
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetUp(__pyx_v_mat->rmap)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 743, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetUp(__pyx_v_mat->rmap)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 745, __pyx_L1_error)
- /* "libpetsc4py.pyx":744
+ /* "libpetsc4py.pyx":746
* CHKERR( PetscLayoutSetBlockSize(mat.cmap,cbs) )
* CHKERR( PetscLayoutSetUp(mat.rmap) )
* CHKERR( PetscLayoutSetUp(mat.cmap) ) # <<<<<<<<<<<<<<
* mat.preallocated = PETSC_TRUE
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetUp(__pyx_v_mat->cmap)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 744, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscLayoutSetUp(__pyx_v_mat->cmap)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 746, __pyx_L1_error)
- /* "libpetsc4py.pyx":745
+ /* "libpetsc4py.pyx":747
* CHKERR( PetscLayoutSetUp(mat.rmap) )
* CHKERR( PetscLayoutSetUp(mat.cmap) )
* mat.preallocated = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -8517,7 +9051,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
*/
__pyx_v_mat->preallocated = PETSC_TRUE;
- /* "libpetsc4py.pyx":748
+ /* "libpetsc4py.pyx":750
* #
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -8526,30 +9060,30 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":749
+ /* "libpetsc4py.pyx":751
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyMat(mat).self is None: # <<<<<<<<<<<<<<
* CHKERR( PetscOptionsGetString(NULL,
* getPrefix(mat), b"-mat_python_type",
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 749, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 751, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_2 = (((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_3)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_4 = (__pyx_t_2 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":750
+ /* "libpetsc4py.pyx":752
* cdef PetscBool found = PETSC_FALSE
* if PyMat(mat).self is None:
* CHKERR( PetscOptionsGetString(NULL, # <<<<<<<<<<<<<<
* getPrefix(mat), b"-mat_python_type",
* name,sizeof(name),&found) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_mat), ((char *)"-mat_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 750, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_mat), ((char *)"-mat_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 752, __pyx_L1_error)
- /* "libpetsc4py.pyx":753
+ /* "libpetsc4py.pyx":755
* getPrefix(mat), b"-mat_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -8566,17 +9100,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__pyx_L7_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":754
+ /* "libpetsc4py.pyx":756
* name,sizeof(name),&found) )
* if found and name[0]:
* CHKERR( MatPythonSetType_PYTHON(mat,name) ) # <<<<<<<<<<<<<<
* if PyMat(mat).self is None:
* return PetscSETERR(PETSC_ERR_USER,
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(__pyx_v_mat, __pyx_v_name); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 754, __pyx_L1_error)
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 754, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_MatPythonSetType_PYTHON(__pyx_v_mat, __pyx_v_name); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 756, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 756, __pyx_L1_error)
- /* "libpetsc4py.pyx":753
+ /* "libpetsc4py.pyx":755
* getPrefix(mat), b"-mat_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -8585,7 +9119,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
*/
}
- /* "libpetsc4py.pyx":749
+ /* "libpetsc4py.pyx":751
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyMat(mat).self is None: # <<<<<<<<<<<<<<
@@ -8594,21 +9128,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
*/
}
- /* "libpetsc4py.pyx":755
+ /* "libpetsc4py.pyx":757
* if found and name[0]:
* CHKERR( MatPythonSetType_PYTHON(mat,name) )
* if PyMat(mat).self is None: # <<<<<<<<<<<<<<
* return PetscSETERR(PETSC_ERR_USER,
* "Python context not set, call one of \n"
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 755, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 757, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = (((struct __pyx_obj_11libpetsc4py__PyMat *)__pyx_t_3)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_2 = (__pyx_t_4 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":756
+ /* "libpetsc4py.pyx":758
* CHKERR( MatPythonSetType_PYTHON(mat,name) )
* if PyMat(mat).self is None:
* return PetscSETERR(PETSC_ERR_USER, # <<<<<<<<<<<<<<
@@ -8618,7 +9152,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__pyx_r = __pyx_f_11libpetsc4py_PetscSETERR(PETSC_ERR_USER, ((char *)"Python context not set, call one of \n * MatPythonSetType(mat,\"[package.]module.class\")\n * MatSetFromOptions(mat) and pass option -mat_python_type [package.]module.class"));
goto __pyx_L0;
- /* "libpetsc4py.pyx":755
+ /* "libpetsc4py.pyx":757
* if found and name[0]:
* CHKERR( MatPythonSetType_PYTHON(mat,name) )
* if PyMat(mat).self is None: # <<<<<<<<<<<<<<
@@ -8627,22 +9161,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
*/
}
- /* "libpetsc4py.pyx":762
+ /* "libpetsc4py.pyx":764
* "-mat_python_type [package.]module.class")
* #
* cdef setUp = PyMat(mat).setUp # <<<<<<<<<<<<<<
* if setUp is not None:
* setUp(Mat_(mat))
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 762, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 764, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 762, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 764, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_setUp = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":763
+ /* "libpetsc4py.pyx":765
* #
* cdef setUp = PyMat(mat).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -8653,18 +9187,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__pyx_t_4 = (__pyx_t_2 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":764
+ /* "libpetsc4py.pyx":766
* cdef setUp = PyMat(mat).setUp
* if setUp is not None:
* setUp(Mat_(mat)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 764, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 766, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_setUp);
__pyx_t_7 = __pyx_v_setUp; __pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -8674,24 +9208,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
}
}
if (!__pyx_t_8) {
- __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 764, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 766, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 764, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3);
- __pyx_t_3 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 764, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_3};
+ __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 766, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_3};
+ __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 766, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 766, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3);
+ __pyx_t_3 = 0;
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 766, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "libpetsc4py.pyx":763
+ /* "libpetsc4py.pyx":765
* #
* cdef setUp = PyMat(mat).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -8700,7 +9254,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
*/
}
- /* "libpetsc4py.pyx":765
+ /* "libpetsc4py.pyx":767
* if setUp is not None:
* setUp(Mat_(mat))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -8710,7 +9264,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":731
+ /* "libpetsc4py.pyx":733
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetUp_Python( # <<<<<<<<<<<<<<
@@ -8731,12 +9285,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetUp_Python(Mat __pyx_v_mat) {
__Pyx_XDECREF(__pyx_v_setUp);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":767
+/* "libpetsc4py.pyx":769
* return FunctionEnd()
*
* cdef PetscErrorCode MatAssemblyBegin_Python( # <<<<<<<<<<<<<<
@@ -8755,14 +9309,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat __pyx_v_
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatAssemblyBegin_Python", 0);
- /* "libpetsc4py.pyx":772
+ /* "libpetsc4py.pyx":774
* ) \
* except IERR with gil:
* FunctionBegin(b"MatAssemblyBegin_Python") # <<<<<<<<<<<<<<
@@ -8771,22 +9325,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatAssemblyBegin_Python"));
- /* "libpetsc4py.pyx":773
+ /* "libpetsc4py.pyx":775
* except IERR with gil:
* FunctionBegin(b"MatAssemblyBegin_Python")
* cdef assembly = PyMat(mat).assemblyBegin # <<<<<<<<<<<<<<
* if assembly is not None:
* assembly(Mat_(mat), <long>at)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 773, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 775, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_assemblyBegin); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 773, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_assemblyBegin); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 775, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_assembly = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":774
+ /* "libpetsc4py.pyx":776
* FunctionBegin(b"MatAssemblyBegin_Python")
* cdef assembly = PyMat(mat).assemblyBegin
* if assembly is not None: # <<<<<<<<<<<<<<
@@ -8797,21 +9351,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat __pyx_v_
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":775
+ /* "libpetsc4py.pyx":777
* cdef assembly = PyMat(mat).assemblyBegin
* if assembly is not None:
* assembly(Mat_(mat), <long>at) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 775, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 777, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __Pyx_PyInt_From_long(((long)__pyx_v_at)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 775, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyInt_From_long(((long)__pyx_v_at)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 777, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_assembly);
__pyx_t_6 = __pyx_v_assembly; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -8821,24 +9375,46 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat __pyx_v_
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 775, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 777, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 777, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 777, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 777, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 775, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":774
+ /* "libpetsc4py.pyx":776
* FunctionBegin(b"MatAssemblyBegin_Python")
* cdef assembly = PyMat(mat).assemblyBegin
* if assembly is not None: # <<<<<<<<<<<<<<
@@ -8847,7 +9423,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat __pyx_v_
*/
}
- /* "libpetsc4py.pyx":776
+ /* "libpetsc4py.pyx":778
* if assembly is not None:
* assembly(Mat_(mat), <long>at)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -8857,7 +9433,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":767
+ /* "libpetsc4py.pyx":769
* return FunctionEnd()
*
* cdef PetscErrorCode MatAssemblyBegin_Python( # <<<<<<<<<<<<<<
@@ -8879,12 +9455,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyBegin_Python(Mat __pyx_v_
__Pyx_XDECREF(__pyx_v_assembly);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":778
+/* "libpetsc4py.pyx":780
* return FunctionEnd()
*
* cdef PetscErrorCode MatAssemblyEnd_Python( # <<<<<<<<<<<<<<
@@ -8903,14 +9479,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatAssemblyEnd_Python", 0);
- /* "libpetsc4py.pyx":783
+ /* "libpetsc4py.pyx":785
* ) \
* except IERR with gil:
* FunctionBegin(b"MatAssemblyEnd_Python") # <<<<<<<<<<<<<<
@@ -8919,22 +9495,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatAssemblyEnd_Python"));
- /* "libpetsc4py.pyx":784
+ /* "libpetsc4py.pyx":786
* except IERR with gil:
* FunctionBegin(b"MatAssemblyEnd_Python")
* cdef assembly = PyMat(mat).assemblyEnd # <<<<<<<<<<<<<<
* if assembly is None:
* assembly = PyMat(mat).assembly
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 784, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 786, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_assemblyEnd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 784, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_assemblyEnd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 786, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_assembly = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":785
+ /* "libpetsc4py.pyx":787
* FunctionBegin(b"MatAssemblyEnd_Python")
* cdef assembly = PyMat(mat).assemblyEnd
* if assembly is None: # <<<<<<<<<<<<<<
@@ -8945,22 +9521,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":786
+ /* "libpetsc4py.pyx":788
* cdef assembly = PyMat(mat).assemblyEnd
* if assembly is None:
* assembly = PyMat(mat).assembly # <<<<<<<<<<<<<<
* if assembly is not None:
* assembly(Mat_(mat), <int>at)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 786, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 788, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_assembly); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 786, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_assembly); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 788, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF_SET(__pyx_v_assembly, __pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":785
+ /* "libpetsc4py.pyx":787
* FunctionBegin(b"MatAssemblyEnd_Python")
* cdef assembly = PyMat(mat).assemblyEnd
* if assembly is None: # <<<<<<<<<<<<<<
@@ -8969,7 +9545,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
*/
}
- /* "libpetsc4py.pyx":787
+ /* "libpetsc4py.pyx":789
* if assembly is None:
* assembly = PyMat(mat).assembly
* if assembly is not None: # <<<<<<<<<<<<<<
@@ -8980,21 +9556,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
__pyx_t_3 = (__pyx_t_4 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":788
+ /* "libpetsc4py.pyx":790
* assembly = PyMat(mat).assembly
* if assembly is not None:
* assembly(Mat_(mat), <int>at) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 788, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 790, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_5 = __Pyx_PyInt_From_int(((int)__pyx_v_at)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 788, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyInt_From_int(((int)__pyx_v_at)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 790, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_assembly);
__pyx_t_6 = __pyx_v_assembly; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -9004,24 +9580,46 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 788, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_2, __pyx_t_5};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 790, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_2, __pyx_t_5};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 790, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 790, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_2);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_2 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 790, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_2 = 0;
- __pyx_t_5 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 788, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":787
+ /* "libpetsc4py.pyx":789
* if assembly is None:
* assembly = PyMat(mat).assembly
* if assembly is not None: # <<<<<<<<<<<<<<
@@ -9030,7 +9628,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
*/
}
- /* "libpetsc4py.pyx":789
+ /* "libpetsc4py.pyx":791
* if assembly is not None:
* assembly(Mat_(mat), <int>at)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -9040,7 +9638,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":778
+ /* "libpetsc4py.pyx":780
* return FunctionEnd()
*
* cdef PetscErrorCode MatAssemblyEnd_Python( # <<<<<<<<<<<<<<
@@ -9062,12 +9660,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatAssemblyEnd_Python(Mat __pyx_v_ma
__Pyx_XDECREF(__pyx_v_assembly);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":791
+/* "libpetsc4py.pyx":793
* return FunctionEnd()
*
* cdef PetscErrorCode MatZeroEntries_Python( # <<<<<<<<<<<<<<
@@ -9087,11 +9685,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatZeroEntries_Python(Mat __pyx_v_ma
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatZeroEntries_Python", 0);
- /* "libpetsc4py.pyx":795
+ /* "libpetsc4py.pyx":797
* ) \
* except IERR with gil:
* FunctionBegin(b"MatZeroEntries_Python") # <<<<<<<<<<<<<<
@@ -9100,22 +9698,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatZeroEntries_Python(Mat __pyx_v_ma
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatZeroEntries_Python"));
- /* "libpetsc4py.pyx":796
+ /* "libpetsc4py.pyx":798
* except IERR with gil:
* FunctionBegin(b"MatZeroEntries_Python")
* cdef zeroEntries = PyMat(mat).zeroEntries # <<<<<<<<<<<<<<
* if zeroEntries is None: return UNSUPPORTED(b"zeroEntries")
* zeroEntries(Mat_(mat))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 796, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 798, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeroEntries); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 796, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeroEntries); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 798, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_zeroEntries = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":797
+ /* "libpetsc4py.pyx":799
* FunctionBegin(b"MatZeroEntries_Python")
* cdef zeroEntries = PyMat(mat).zeroEntries
* if zeroEntries is None: return UNSUPPORTED(b"zeroEntries") # <<<<<<<<<<<<<<
@@ -9129,18 +9727,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatZeroEntries_Python(Mat __pyx_v_ma
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":798
+ /* "libpetsc4py.pyx":800
* cdef zeroEntries = PyMat(mat).zeroEntries
* if zeroEntries is None: return UNSUPPORTED(b"zeroEntries")
* zeroEntries(Mat_(mat)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 798, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_zeroEntries);
__pyx_t_5 = __pyx_v_zeroEntries; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -9150,34 +9748,54 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatZeroEntries_Python(Mat __pyx_v_ma
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 798, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 800, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 798, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 798, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- }
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
-
- /* "libpetsc4py.pyx":799
- * if zeroEntries is None: return UNSUPPORTED(b"zeroEntries")
- * zeroEntries(Mat_(mat))
- * return FunctionEnd() # <<<<<<<<<<<<<<
- *
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 800, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 800, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 800, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 800, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
+ }
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+
+ /* "libpetsc4py.pyx":801
+ * if zeroEntries is None: return UNSUPPORTED(b"zeroEntries")
+ * zeroEntries(Mat_(mat))
+ * return FunctionEnd() # <<<<<<<<<<<<<<
+ *
* cdef PetscErrorCode MatScale_Python(
*/
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":791
+ /* "libpetsc4py.pyx":793
* return FunctionEnd()
*
* cdef PetscErrorCode MatZeroEntries_Python( # <<<<<<<<<<<<<<
@@ -9198,12 +9816,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatZeroEntries_Python(Mat __pyx_v_ma
__Pyx_XDECREF(__pyx_v_zeroEntries);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":801
+/* "libpetsc4py.pyx":803
* return FunctionEnd()
*
* cdef PetscErrorCode MatScale_Python( # <<<<<<<<<<<<<<
@@ -9222,14 +9840,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatScale_Python(Mat __pyx_v_mat, Pet
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatScale_Python", 0);
- /* "libpetsc4py.pyx":806
+ /* "libpetsc4py.pyx":808
* ) \
* except IERR with gil:
* FunctionBegin(b"MatScale_Python") # <<<<<<<<<<<<<<
@@ -9238,22 +9856,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatScale_Python(Mat __pyx_v_mat, Pet
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatScale_Python"));
- /* "libpetsc4py.pyx":807
+ /* "libpetsc4py.pyx":809
* except IERR with gil:
* FunctionBegin(b"MatScale_Python")
* cdef scale = PyMat(mat).scale # <<<<<<<<<<<<<<
* if scale is None: return UNSUPPORTED(b"scale")
* scale(Mat_(mat), toScalar(s))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 807, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 809, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_scale); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 807, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_scale); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 809, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_scale = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":808
+ /* "libpetsc4py.pyx":810
* FunctionBegin(b"MatScale_Python")
* cdef scale = PyMat(mat).scale
* if scale is None: return UNSUPPORTED(b"scale") # <<<<<<<<<<<<<<
@@ -9267,21 +9885,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatScale_Python(Mat __pyx_v_mat, Pet
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":809
+ /* "libpetsc4py.pyx":811
* cdef scale = PyMat(mat).scale
* if scale is None: return UNSUPPORTED(b"scale")
* scale(Mat_(mat), toScalar(s)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 809, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 811, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PyPetscScalar_FromPetscScalar(__pyx_v_s); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 809, __pyx_L1_error)
+ __pyx_t_5 = PyPetscScalar_FromPetscScalar(__pyx_v_s); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 811, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_scale);
__pyx_t_6 = __pyx_v_scale; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -9291,24 +9909,46 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatScale_Python(Mat __pyx_v_mat, Pet
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 809, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 811, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 811, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 811, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 811, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 809, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":810
+ /* "libpetsc4py.pyx":812
* if scale is None: return UNSUPPORTED(b"scale")
* scale(Mat_(mat), toScalar(s))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -9318,7 +9958,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatScale_Python(Mat __pyx_v_mat, Pet
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":801
+ /* "libpetsc4py.pyx":803
* return FunctionEnd()
*
* cdef PetscErrorCode MatScale_Python( # <<<<<<<<<<<<<<
@@ -9340,12 +9980,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatScale_Python(Mat __pyx_v_mat, Pet
__Pyx_XDECREF(__pyx_v_scale);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":812
+/* "libpetsc4py.pyx":814
* return FunctionEnd()
*
* cdef PetscErrorCode MatShift_Python( # <<<<<<<<<<<<<<
@@ -9364,14 +10004,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatShift_Python(Mat __pyx_v_mat, Pet
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatShift_Python", 0);
- /* "libpetsc4py.pyx":817
+ /* "libpetsc4py.pyx":819
* ) \
* except IERR with gil:
* FunctionBegin(b"MatShift_Python") # <<<<<<<<<<<<<<
@@ -9380,22 +10020,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatShift_Python(Mat __pyx_v_mat, Pet
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatShift_Python"));
- /* "libpetsc4py.pyx":818
+ /* "libpetsc4py.pyx":820
* except IERR with gil:
* FunctionBegin(b"MatShift_Python")
* cdef shift = PyMat(mat).shift # <<<<<<<<<<<<<<
* if shift is None: return UNSUPPORTED(b"shift")
* shift(Mat_(mat), toScalar(s))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 818, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 820, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_shift); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 818, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_shift); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 820, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_shift = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":819
+ /* "libpetsc4py.pyx":821
* FunctionBegin(b"MatShift_Python")
* cdef shift = PyMat(mat).shift
* if shift is None: return UNSUPPORTED(b"shift") # <<<<<<<<<<<<<<
@@ -9409,21 +10049,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatShift_Python(Mat __pyx_v_mat, Pet
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":820
+ /* "libpetsc4py.pyx":822
* cdef shift = PyMat(mat).shift
* if shift is None: return UNSUPPORTED(b"shift")
* shift(Mat_(mat), toScalar(s)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 820, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 822, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PyPetscScalar_FromPetscScalar(__pyx_v_s); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 820, __pyx_L1_error)
+ __pyx_t_5 = PyPetscScalar_FromPetscScalar(__pyx_v_s); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 822, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_shift);
__pyx_t_6 = __pyx_v_shift; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -9433,24 +10073,46 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatShift_Python(Mat __pyx_v_mat, Pet
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 820, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 822, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 822, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 822, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 822, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 820, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":821
+ /* "libpetsc4py.pyx":823
* if shift is None: return UNSUPPORTED(b"shift")
* shift(Mat_(mat), toScalar(s))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -9460,7 +10122,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatShift_Python(Mat __pyx_v_mat, Pet
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":812
+ /* "libpetsc4py.pyx":814
* return FunctionEnd()
*
* cdef PetscErrorCode MatShift_Python( # <<<<<<<<<<<<<<
@@ -9482,12 +10144,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatShift_Python(Mat __pyx_v_mat, Pet
__Pyx_XDECREF(__pyx_v_shift);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":823
+/* "libpetsc4py.pyx":825
* return FunctionEnd()
*
* cdef PetscErrorCode MatCreateVecs_Python( # <<<<<<<<<<<<<<
@@ -9520,11 +10182,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
PyObject *(*__pyx_t_17)(PyObject *);
Vec __pyx_t_18;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatCreateVecs_Python", 0);
- /* "libpetsc4py.pyx":829
+ /* "libpetsc4py.pyx":831
* ) \
* except IERR with gil:
* FunctionBegin(b"MatCreateVecs_Python") # <<<<<<<<<<<<<<
@@ -9533,22 +10195,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatCreateVecs_Python"));
- /* "libpetsc4py.pyx":830
+ /* "libpetsc4py.pyx":832
* except IERR with gil:
* FunctionBegin(b"MatCreateVecs_Python")
* cdef createVecs = PyMat(mat).createVecs # <<<<<<<<<<<<<<
* if createVecs is None:
* try:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 830, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 832, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_createVecs); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 830, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_createVecs); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 832, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_createVecs = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":831
+ /* "libpetsc4py.pyx":833
* FunctionBegin(b"MatCreateVecs_Python")
* cdef createVecs = PyMat(mat).createVecs
* if createVecs is None: # <<<<<<<<<<<<<<
@@ -9559,7 +10221,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":832
+ /* "libpetsc4py.pyx":834
* cdef createVecs = PyMat(mat).createVecs
* if createVecs is None:
* try: # <<<<<<<<<<<<<<
@@ -9568,7 +10230,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
/*try:*/ {
- /* "libpetsc4py.pyx":833
+ /* "libpetsc4py.pyx":835
* if createVecs is None:
* try:
* mat.ops.getvecs = NULL # <<<<<<<<<<<<<<
@@ -9577,17 +10239,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
__pyx_v_mat->ops->getvecs = NULL;
- /* "libpetsc4py.pyx":834
+ /* "libpetsc4py.pyx":836
* try:
* mat.ops.getvecs = NULL
* CHKERR( MatCreateVecs(mat,x,y) ) # <<<<<<<<<<<<<<
* finally:
* mat.ops.getvecs = MatCreateVecs_Python
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatCreateVecs(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 834, __pyx_L5_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatCreateVecs(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 836, __pyx_L5_error)
}
- /* "libpetsc4py.pyx":836
+ /* "libpetsc4py.pyx":838
* CHKERR( MatCreateVecs(mat,x,y) )
* finally:
* mat.ops.getvecs = MatCreateVecs_Python # <<<<<<<<<<<<<<
@@ -9618,7 +10280,6 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
{
__pyx_v_mat->ops->getvecs = __pyx_f_11libpetsc4py_MatCreateVecs_Python;
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_11);
__Pyx_XGIVEREF(__pyx_t_12);
@@ -9636,7 +10297,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_L6:;
}
- /* "libpetsc4py.pyx":837
+ /* "libpetsc4py.pyx":839
* finally:
* mat.ops.getvecs = MatCreateVecs_Python
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -9646,7 +10307,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":831
+ /* "libpetsc4py.pyx":833
* FunctionBegin(b"MatCreateVecs_Python")
* cdef createVecs = PyMat(mat).createVecs
* if createVecs is None: # <<<<<<<<<<<<<<
@@ -9655,7 +10316,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
}
- /* "libpetsc4py.pyx":838
+ /* "libpetsc4py.pyx":840
* mat.ops.getvecs = MatCreateVecs_Python
* return FunctionEnd()
* if createVecs is None: return UNSUPPORTED(b"createVecs") # <<<<<<<<<<<<<<
@@ -9669,18 +10330,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":840
+ /* "libpetsc4py.pyx":842
* if createVecs is None: return UNSUPPORTED(b"createVecs")
* cdef Vec u, v
* u, v = createVecs(Mat_(mat)) # <<<<<<<<<<<<<<
* if x != NULL:
* x[0] = u.vec
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 840, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 842, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_createVecs);
__pyx_t_14 = __pyx_v_createVecs; __pyx_t_15 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_14))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_14))) {
__pyx_t_15 = PyMethod_GET_SELF(__pyx_t_14);
if (likely(__pyx_t_15)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
@@ -9690,24 +10351,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
}
}
if (!__pyx_t_15) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 840, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 842, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_16 = PyTuple_New(1+1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 840, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_16);
- __Pyx_GIVEREF(__pyx_t_15); PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_15); __pyx_t_15 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_16, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_16, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 840, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_14)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_15, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 842, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_14)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_15, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 842, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_16 = PyTuple_New(1+1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 842, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_16);
+ __Pyx_GIVEREF(__pyx_t_15); PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_15); __pyx_t_15 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_16, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_16, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 842, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -9715,9 +10396,9 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 840, __pyx_L1_error)
+ __PYX_ERR(0, 842, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_14 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_16 = PyTuple_GET_ITEM(sequence, 1);
@@ -9728,15 +10409,15 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__Pyx_INCREF(__pyx_t_14);
__Pyx_INCREF(__pyx_t_16);
#else
- __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 840, __pyx_L1_error)
+ __pyx_t_14 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 842, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_14);
- __pyx_t_16 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 840, __pyx_L1_error)
+ __pyx_t_16 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 842, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_16);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 840, __pyx_L1_error)
+ __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 842, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_17 = Py_TYPE(__pyx_t_1)->tp_iternext;
@@ -9744,7 +10425,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__Pyx_GOTREF(__pyx_t_14);
index = 1; __pyx_t_16 = __pyx_t_17(__pyx_t_1); if (unlikely(!__pyx_t_16)) goto __pyx_L10_unpacking_failed;
__Pyx_GOTREF(__pyx_t_16);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_1), 2) < 0) __PYX_ERR(0, 840, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_1), 2) < 0) __PYX_ERR(0, 842, __pyx_L1_error)
__pyx_t_17 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L11_unpacking_done;
@@ -9752,17 +10433,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_17 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 840, __pyx_L1_error)
+ __PYX_ERR(0, 842, __pyx_L1_error)
__pyx_L11_unpacking_done:;
}
- if (!(likely(((__pyx_t_14) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_14, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(0, 840, __pyx_L1_error)
- if (!(likely(((__pyx_t_16) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_16, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(0, 840, __pyx_L1_error)
+ if (!(likely(((__pyx_t_14) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_14, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(0, 842, __pyx_L1_error)
+ if (!(likely(((__pyx_t_16) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_16, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(0, 842, __pyx_L1_error)
__pyx_v_u = ((struct PyPetscVecObject *)__pyx_t_14);
__pyx_t_14 = 0;
__pyx_v_v = ((struct PyPetscVecObject *)__pyx_t_16);
__pyx_t_16 = 0;
- /* "libpetsc4py.pyx":841
+ /* "libpetsc4py.pyx":843
* cdef Vec u, v
* u, v = createVecs(Mat_(mat))
* if x != NULL: # <<<<<<<<<<<<<<
@@ -9772,7 +10453,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_t_3 = ((__pyx_v_x != NULL) != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":842
+ /* "libpetsc4py.pyx":844
* u, v = createVecs(Mat_(mat))
* if x != NULL:
* x[0] = u.vec # <<<<<<<<<<<<<<
@@ -9782,7 +10463,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_t_18 = __pyx_v_u->vec;
(__pyx_v_x[0]) = __pyx_t_18;
- /* "libpetsc4py.pyx":843
+ /* "libpetsc4py.pyx":845
* if x != NULL:
* x[0] = u.vec
* u.vec = NULL # <<<<<<<<<<<<<<
@@ -9791,7 +10472,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
__pyx_v_u->vec = NULL;
- /* "libpetsc4py.pyx":841
+ /* "libpetsc4py.pyx":843
* cdef Vec u, v
* u, v = createVecs(Mat_(mat))
* if x != NULL: # <<<<<<<<<<<<<<
@@ -9800,7 +10481,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
}
- /* "libpetsc4py.pyx":844
+ /* "libpetsc4py.pyx":846
* x[0] = u.vec
* u.vec = NULL
* if y != NULL: # <<<<<<<<<<<<<<
@@ -9810,7 +10491,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_t_3 = ((__pyx_v_y != NULL) != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":845
+ /* "libpetsc4py.pyx":847
* u.vec = NULL
* if y != NULL:
* y[0] = v.vec # <<<<<<<<<<<<<<
@@ -9820,7 +10501,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_t_18 = __pyx_v_v->vec;
(__pyx_v_y[0]) = __pyx_t_18;
- /* "libpetsc4py.pyx":846
+ /* "libpetsc4py.pyx":848
* if y != NULL:
* y[0] = v.vec
* v.vec = NULL # <<<<<<<<<<<<<<
@@ -9829,7 +10510,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
__pyx_v_v->vec = NULL;
- /* "libpetsc4py.pyx":844
+ /* "libpetsc4py.pyx":846
* x[0] = u.vec
* u.vec = NULL
* if y != NULL: # <<<<<<<<<<<<<<
@@ -9838,7 +10519,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
*/
}
- /* "libpetsc4py.pyx":847
+ /* "libpetsc4py.pyx":849
* y[0] = v.vec
* v.vec = NULL
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -9848,7 +10529,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":823
+ /* "libpetsc4py.pyx":825
* return FunctionEnd()
*
* cdef PetscErrorCode MatCreateVecs_Python( # <<<<<<<<<<<<<<
@@ -9871,12 +10552,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatCreateVecs_Python(Mat __pyx_v_mat
__Pyx_XDECREF((PyObject *)__pyx_v_v);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":849
+/* "libpetsc4py.pyx":851
* return FunctionEnd()
*
* cdef PetscErrorCode MatMult_Python( # <<<<<<<<<<<<<<
@@ -9896,14 +10577,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMult_Python(Mat __pyx_v_mat, Vec
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatMult_Python", 0);
- /* "libpetsc4py.pyx":855
+ /* "libpetsc4py.pyx":857
* ) \
* except IERR with gil:
* FunctionBegin(b"MatMult_Python") # <<<<<<<<<<<<<<
@@ -9912,22 +10593,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMult_Python(Mat __pyx_v_mat, Vec
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatMult_Python"));
- /* "libpetsc4py.pyx":856
+ /* "libpetsc4py.pyx":858
* except IERR with gil:
* FunctionBegin(b"MatMult_Python")
* cdef mult = PyMat(mat).mult # <<<<<<<<<<<<<<
* if mult is None: return UNSUPPORTED(b"mult")
* mult(Mat_(mat), Vec_(x), Vec_(y))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 856, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 858, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_mult); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 856, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_mult); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 858, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_mult = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":857
+ /* "libpetsc4py.pyx":859
* FunctionBegin(b"MatMult_Python")
* cdef mult = PyMat(mat).mult
* if mult is None: return UNSUPPORTED(b"mult") # <<<<<<<<<<<<<<
@@ -9941,23 +10622,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMult_Python(Mat __pyx_v_mat, Vec
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":858
+ /* "libpetsc4py.pyx":860
* cdef mult = PyMat(mat).mult
* if mult is None: return UNSUPPORTED(b"mult")
* mult(Mat_(mat), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 858, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 858, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 858, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_mult);
__pyx_t_7 = __pyx_v_mult; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -9967,27 +10648,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMult_Python(Mat __pyx_v_mat, Vec
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 858, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 858, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 860, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 860, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 860, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 860, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":859
+ /* "libpetsc4py.pyx":861
* if mult is None: return UNSUPPORTED(b"mult")
* mult(Mat_(mat), Vec_(x), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -9997,7 +10702,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMult_Python(Mat __pyx_v_mat, Vec
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":849
+ /* "libpetsc4py.pyx":851
* return FunctionEnd()
*
* cdef PetscErrorCode MatMult_Python( # <<<<<<<<<<<<<<
@@ -10020,12 +10725,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMult_Python(Mat __pyx_v_mat, Vec
__Pyx_XDECREF(__pyx_v_mult);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":861
+/* "libpetsc4py.pyx":863
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultTranspose_Python( # <<<<<<<<<<<<<<
@@ -10048,14 +10753,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
- PyObject *__pyx_t_11 = NULL;
+ PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatMultTranspose_Python", 0);
- /* "libpetsc4py.pyx":867
+ /* "libpetsc4py.pyx":869
* ) \
* except IERR with gil:
* FunctionBegin(b"MatMultTranspose_Python") # <<<<<<<<<<<<<<
@@ -10064,22 +10768,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatMultTranspose_Python"));
- /* "libpetsc4py.pyx":868
+ /* "libpetsc4py.pyx":870
* except IERR with gil:
* FunctionBegin(b"MatMultTranspose_Python")
* cdef multTranspose = PyMat(mat).multTranspose # <<<<<<<<<<<<<<
* cdef PetscBool symmset, symmknown
* if multTranspose is None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 868, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 868, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 870, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_multTranspose = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":870
+ /* "libpetsc4py.pyx":872
* cdef multTranspose = PyMat(mat).multTranspose
* cdef PetscBool symmset, symmknown
* if multTranspose is None: # <<<<<<<<<<<<<<
@@ -10090,7 +10794,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":871
+ /* "libpetsc4py.pyx":873
* cdef PetscBool symmset, symmknown
* if multTranspose is None:
* symmset = symmknown = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -10100,16 +10804,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
__pyx_v_symmset = PETSC_FALSE;
__pyx_v_symmknown = PETSC_FALSE;
- /* "libpetsc4py.pyx":872
+ /* "libpetsc4py.pyx":874
* if multTranspose is None:
* symmset = symmknown = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) ) # <<<<<<<<<<<<<<
* if symmset and symmknown:
* CHKERR( MatMult(mat,x,y) )
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatIsSymmetricKnown(__pyx_v_mat, (&__pyx_v_symmset), (&__pyx_v_symmknown))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 872, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatIsSymmetricKnown(__pyx_v_mat, (&__pyx_v_symmset), (&__pyx_v_symmknown))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 874, __pyx_L1_error)
- /* "libpetsc4py.pyx":873
+ /* "libpetsc4py.pyx":875
* symmset = symmknown = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) )
* if symmset and symmknown: # <<<<<<<<<<<<<<
@@ -10125,16 +10829,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
__pyx_L5_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":874
+ /* "libpetsc4py.pyx":876
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) )
* if symmset and symmknown:
* CHKERR( MatMult(mat,x,y) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if multTranspose is None: return UNSUPPORTED(b"multTranspose")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 874, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 876, __pyx_L1_error)
- /* "libpetsc4py.pyx":875
+ /* "libpetsc4py.pyx":877
* if symmset and symmknown:
* CHKERR( MatMult(mat,x,y) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -10144,7 +10848,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":873
+ /* "libpetsc4py.pyx":875
* symmset = symmknown = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) )
* if symmset and symmknown: # <<<<<<<<<<<<<<
@@ -10153,7 +10857,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
*/
}
- /* "libpetsc4py.pyx":870
+ /* "libpetsc4py.pyx":872
* cdef multTranspose = PyMat(mat).multTranspose
* cdef PetscBool symmset, symmknown
* if multTranspose is None: # <<<<<<<<<<<<<<
@@ -10162,7 +10866,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
*/
}
- /* "libpetsc4py.pyx":876
+ /* "libpetsc4py.pyx":878
* CHKERR( MatMult(mat,x,y) )
* return FunctionEnd()
* if multTranspose is None: return UNSUPPORTED(b"multTranspose") # <<<<<<<<<<<<<<
@@ -10176,53 +10880,77 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":877
+ /* "libpetsc4py.pyx":879
* return FunctionEnd()
* if multTranspose is None: return UNSUPPORTED(b"multTranspose")
* multTranspose(Mat_(mat), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 877, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 877, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 877, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_multTranspose);
__pyx_t_8 = __pyx_v_multTranspose; __pyx_t_9 = NULL;
- __pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
- __pyx_t_10 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_11 = PyTuple_New(3+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 877, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_7);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 877, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_1, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 879, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_1, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 879, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 879, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_5, __pyx_t_7);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 879, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":878
+ /* "libpetsc4py.pyx":880
* if multTranspose is None: return UNSUPPORTED(b"multTranspose")
* multTranspose(Mat_(mat), Vec_(x), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -10232,7 +10960,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":861
+ /* "libpetsc4py.pyx":863
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultTranspose_Python( # <<<<<<<<<<<<<<
@@ -10248,19 +10976,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTranspose_Python(Mat __pyx_v_
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
- __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_XDECREF(__pyx_t_10);
__Pyx_AddTraceback("libpetsc4py.MatMultTranspose_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_multTranspose);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":880
+/* "libpetsc4py.pyx":882
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultHermitian_Python( # <<<<<<<<<<<<<<
@@ -10283,14 +11011,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
- PyObject *__pyx_t_11 = NULL;
+ PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatMultHermitian_Python", 0);
- /* "libpetsc4py.pyx":886
+ /* "libpetsc4py.pyx":888
* ) \
* except IERR with gil:
* FunctionBegin(b"MatMultHermitian_Python") # <<<<<<<<<<<<<<
@@ -10299,22 +11026,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatMultHermitian_Python"));
- /* "libpetsc4py.pyx":887
+ /* "libpetsc4py.pyx":889
* except IERR with gil:
* FunctionBegin(b"MatMultHermitian_Python")
* cdef multHermitian = PyMat(mat).multHermitian # <<<<<<<<<<<<<<
* cdef PetscBool hermset, hermknown
* if multHermitian is None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 887, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 889, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multHermitian); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 887, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multHermitian); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 889, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_multHermitian = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":889
+ /* "libpetsc4py.pyx":891
* cdef multHermitian = PyMat(mat).multHermitian
* cdef PetscBool hermset, hermknown
* if multHermitian is None: # <<<<<<<<<<<<<<
@@ -10325,7 +11052,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":890
+ /* "libpetsc4py.pyx":892
* cdef PetscBool hermset, hermknown
* if multHermitian is None:
* hermset = hermknown = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -10335,16 +11062,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
__pyx_v_hermset = PETSC_FALSE;
__pyx_v_hermknown = PETSC_FALSE;
- /* "libpetsc4py.pyx":891
+ /* "libpetsc4py.pyx":893
* if multHermitian is None:
* hermset = hermknown = PETSC_FALSE
* CHKERR( MatIsHermitianKnown(mat,&hermset,&hermknown) ) # <<<<<<<<<<<<<<
* if hermset and hermknown:
* CHKERR( MatMult(mat,x,y) )
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatIsHermitianKnown(__pyx_v_mat, (&__pyx_v_hermset), (&__pyx_v_hermknown))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 891, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatIsHermitianKnown(__pyx_v_mat, (&__pyx_v_hermset), (&__pyx_v_hermknown))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 893, __pyx_L1_error)
- /* "libpetsc4py.pyx":892
+ /* "libpetsc4py.pyx":894
* hermset = hermknown = PETSC_FALSE
* CHKERR( MatIsHermitianKnown(mat,&hermset,&hermknown) )
* if hermset and hermknown: # <<<<<<<<<<<<<<
@@ -10360,16 +11087,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
__pyx_L5_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":893
+ /* "libpetsc4py.pyx":895
* CHKERR( MatIsHermitianKnown(mat,&hermset,&hermknown) )
* if hermset and hermknown:
* CHKERR( MatMult(mat,x,y) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if multHermitian is None: return UNSUPPORTED(b"multHermitian")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 893, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 895, __pyx_L1_error)
- /* "libpetsc4py.pyx":894
+ /* "libpetsc4py.pyx":896
* if hermset and hermknown:
* CHKERR( MatMult(mat,x,y) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -10379,7 +11106,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":892
+ /* "libpetsc4py.pyx":894
* hermset = hermknown = PETSC_FALSE
* CHKERR( MatIsHermitianKnown(mat,&hermset,&hermknown) )
* if hermset and hermknown: # <<<<<<<<<<<<<<
@@ -10388,7 +11115,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
*/
}
- /* "libpetsc4py.pyx":889
+ /* "libpetsc4py.pyx":891
* cdef multHermitian = PyMat(mat).multHermitian
* cdef PetscBool hermset, hermknown
* if multHermitian is None: # <<<<<<<<<<<<<<
@@ -10397,7 +11124,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
*/
}
- /* "libpetsc4py.pyx":895
+ /* "libpetsc4py.pyx":897
* CHKERR( MatMult(mat,x,y) )
* return FunctionEnd()
* if multHermitian is None: return UNSUPPORTED(b"multHermitian") # <<<<<<<<<<<<<<
@@ -10411,63 +11138,87 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":896
+ /* "libpetsc4py.pyx":898
* return FunctionEnd()
* if multHermitian is None: return UNSUPPORTED(b"multHermitian")
* multHermitian(Mat_(mat), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 896, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 898, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 896, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 898, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 896, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 898, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_multHermitian);
__pyx_t_8 = __pyx_v_multHermitian; __pyx_t_9 = NULL;
- __pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
- __pyx_t_10 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_11 = PyTuple_New(3+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 896, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_7);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 896, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
-
- /* "libpetsc4py.pyx":897
- * if multHermitian is None: return UNSUPPORTED(b"multHermitian")
- * multHermitian(Mat_(mat), Vec_(x), Vec_(y))
- * return FunctionEnd() # <<<<<<<<<<<<<<
- *
- * cdef PetscErrorCode MatMultAdd_Python(
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_1, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 898, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_1, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 898, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 898, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_5, __pyx_t_7);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 898, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+
+ /* "libpetsc4py.pyx":899
+ * if multHermitian is None: return UNSUPPORTED(b"multHermitian")
+ * multHermitian(Mat_(mat), Vec_(x), Vec_(y))
+ * return FunctionEnd() # <<<<<<<<<<<<<<
+ *
+ * cdef PetscErrorCode MatMultAdd_Python(
*/
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":880
+ /* "libpetsc4py.pyx":882
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultHermitian_Python( # <<<<<<<<<<<<<<
@@ -10483,19 +11234,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitian_Python(Mat __pyx_v_
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
- __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_XDECREF(__pyx_t_10);
__Pyx_AddTraceback("libpetsc4py.MatMultHermitian_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_multHermitian);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":899
+/* "libpetsc4py.pyx":901
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultAdd_Python( # <<<<<<<<<<<<<<
@@ -10518,14 +11269,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
- Py_ssize_t __pyx_t_11;
- PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatMultAdd_Python", 0);
- /* "libpetsc4py.pyx":906
+ /* "libpetsc4py.pyx":908
* ) \
* except IERR with gil:
* FunctionBegin(b"MatMultAdd_Python") # <<<<<<<<<<<<<<
@@ -10534,22 +11284,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatMultAdd_Python"));
- /* "libpetsc4py.pyx":907
+ /* "libpetsc4py.pyx":909
* except IERR with gil:
* FunctionBegin(b"MatMultAdd_Python")
* cdef multAdd = PyMat(mat).multAdd # <<<<<<<<<<<<<<
* cdef PetscVec t = NULL
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 907, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 909, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 907, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 909, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_multAdd = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":908
+ /* "libpetsc4py.pyx":910
* FunctionBegin(b"MatMultAdd_Python")
* cdef multAdd = PyMat(mat).multAdd
* cdef PetscVec t = NULL # <<<<<<<<<<<<<<
@@ -10558,7 +11308,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
*/
__pyx_v_t = NULL;
- /* "libpetsc4py.pyx":910
+ /* "libpetsc4py.pyx":912
* cdef PetscVec t = NULL
*
* if multAdd is None: # <<<<<<<<<<<<<<
@@ -10569,7 +11319,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":911
+ /* "libpetsc4py.pyx":913
*
* if multAdd is None:
* if v == y: # <<<<<<<<<<<<<<
@@ -10579,43 +11329,43 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
__pyx_t_4 = ((__pyx_v_v == __pyx_v_y) != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":912
+ /* "libpetsc4py.pyx":914
* if multAdd is None:
* if v == y:
* CHKERR( VecDuplicate(y, &t) ) # <<<<<<<<<<<<<<
* CHKERR( MatMult(mat,x,t) )
* CHKERR( VecAXPY(y,1.0,t) )
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_y, (&__pyx_v_t))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 912, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_y, (&__pyx_v_t))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 914, __pyx_L1_error)
- /* "libpetsc4py.pyx":913
+ /* "libpetsc4py.pyx":915
* if v == y:
* CHKERR( VecDuplicate(y, &t) )
* CHKERR( MatMult(mat,x,t) ) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(y,1.0,t) )
* CHKERR( VecDestroy(&t) )
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_t)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 913, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_t)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 915, __pyx_L1_error)
- /* "libpetsc4py.pyx":914
+ /* "libpetsc4py.pyx":916
* CHKERR( VecDuplicate(y, &t) )
* CHKERR( MatMult(mat,x,t) )
* CHKERR( VecAXPY(y,1.0,t) ) # <<<<<<<<<<<<<<
* CHKERR( VecDestroy(&t) )
* else:
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_t)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 914, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_t)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 916, __pyx_L1_error)
- /* "libpetsc4py.pyx":915
+ /* "libpetsc4py.pyx":917
* CHKERR( MatMult(mat,x,t) )
* CHKERR( VecAXPY(y,1.0,t) )
* CHKERR( VecDestroy(&t) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( MatMult(mat,x,y) )
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecDestroy((&__pyx_v_t))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 915, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecDestroy((&__pyx_v_t))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 917, __pyx_L1_error)
- /* "libpetsc4py.pyx":911
+ /* "libpetsc4py.pyx":913
*
* if multAdd is None:
* if v == y: # <<<<<<<<<<<<<<
@@ -10625,7 +11375,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
goto __pyx_L4;
}
- /* "libpetsc4py.pyx":917
+ /* "libpetsc4py.pyx":919
* CHKERR( VecDestroy(&t) )
* else:
* CHKERR( MatMult(mat,x,y) ) # <<<<<<<<<<<<<<
@@ -10633,20 +11383,20 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
* return FunctionEnd()
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 917, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMult(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 919, __pyx_L1_error)
- /* "libpetsc4py.pyx":918
+ /* "libpetsc4py.pyx":920
* else:
* CHKERR( MatMult(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if multAdd is None: return UNSUPPORTED(b"multAdd")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_v)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 918, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_v)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 920, __pyx_L1_error)
}
__pyx_L4:;
- /* "libpetsc4py.pyx":919
+ /* "libpetsc4py.pyx":921
* CHKERR( MatMult(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -10656,7 +11406,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":910
+ /* "libpetsc4py.pyx":912
* cdef PetscVec t = NULL
*
* if multAdd is None: # <<<<<<<<<<<<<<
@@ -10665,7 +11415,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
*/
}
- /* "libpetsc4py.pyx":920
+ /* "libpetsc4py.pyx":922
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd()
* if multAdd is None: return UNSUPPORTED(b"multAdd") # <<<<<<<<<<<<<<
@@ -10679,58 +11429,84 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":921
+ /* "libpetsc4py.pyx":923
* return FunctionEnd()
* if multAdd is None: return UNSUPPORTED(b"multAdd")
* multAdd(Mat_(mat), Vec_(x), Vec_(v), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 921, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 923, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 921, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 923, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 921, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 923, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 921, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 923, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_multAdd);
__pyx_t_9 = __pyx_v_multAdd; __pyx_t_10 = NULL;
- __pyx_t_11 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_9))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
__pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9);
if (likely(__pyx_t_10)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
__Pyx_INCREF(__pyx_t_10);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_9, function);
- __pyx_t_11 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_12 = PyTuple_New(4+__pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 921, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_12);
- if (__pyx_t_10) {
- __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10); __pyx_t_10 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_12, 0+__pyx_t_11, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_12, 1+__pyx_t_11, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_12, 2+__pyx_t_11, __pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_8);
- PyTuple_SET_ITEM(__pyx_t_12, 3+__pyx_t_11, __pyx_t_8);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_8 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 921, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 923, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 923, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 923, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_10) {
+ __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_10); __pyx_t_10 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_5, __pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_5, __pyx_t_8);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_8 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 923, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ }
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":922
+ /* "libpetsc4py.pyx":924
* if multAdd is None: return UNSUPPORTED(b"multAdd")
* multAdd(Mat_(mat), Vec_(x), Vec_(v), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -10740,7 +11516,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":899
+ /* "libpetsc4py.pyx":901
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultAdd_Python( # <<<<<<<<<<<<<<
@@ -10757,19 +11533,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultAdd_Python(Mat __pyx_v_mat, V
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
- __Pyx_XDECREF(__pyx_t_12);
+ __Pyx_XDECREF(__pyx_t_11);
__Pyx_AddTraceback("libpetsc4py.MatMultAdd_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_multAdd);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":924
+/* "libpetsc4py.pyx":926
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultTransposeAdd_Python( # <<<<<<<<<<<<<<
@@ -10791,67 +11567,66 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTransposeAdd_Python(Mat __pyx
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
- Py_ssize_t __pyx_t_11;
- PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatMultTransposeAdd_Python", 0);
- /* "libpetsc4py.pyx":931
+ /* "libpetsc4py.pyx":933
* ) \
* except IERR with gil:
* FunctionBegin(b"MatMultTransposeAdd_Python") # <<<<<<<<<<<<<<
* cdef multTransposeAdd = PyMat(mat).multTransposeAdd
- * if multTransposeAdd is not None:
+ * if multTransposeAdd is None:
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatMultTransposeAdd_Python"));
- /* "libpetsc4py.pyx":932
+ /* "libpetsc4py.pyx":934
* except IERR with gil:
* FunctionBegin(b"MatMultTransposeAdd_Python")
* cdef multTransposeAdd = PyMat(mat).multTransposeAdd # <<<<<<<<<<<<<<
- * if multTransposeAdd is not None:
+ * if multTransposeAdd is None:
* CHKERR( MatMultTranspose(mat,x,y) )
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 932, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 934, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multTransposeAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 932, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multTransposeAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 934, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_multTransposeAdd = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":933
+ /* "libpetsc4py.pyx":935
* FunctionBegin(b"MatMultTransposeAdd_Python")
* cdef multTransposeAdd = PyMat(mat).multTransposeAdd
- * if multTransposeAdd is not None: # <<<<<<<<<<<<<<
+ * if multTransposeAdd is None: # <<<<<<<<<<<<<<
* CHKERR( MatMultTranspose(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) )
*/
- __pyx_t_3 = (__pyx_v_multTransposeAdd != Py_None);
+ __pyx_t_3 = (__pyx_v_multTransposeAdd == Py_None);
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":934
+ /* "libpetsc4py.pyx":936
* cdef multTransposeAdd = PyMat(mat).multTransposeAdd
- * if multTransposeAdd is not None:
+ * if multTransposeAdd is None:
* CHKERR( MatMultTranspose(mat,x,y) ) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd()
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMultTranspose(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 934, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMultTranspose(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 936, __pyx_L1_error)
- /* "libpetsc4py.pyx":935
- * if multTransposeAdd is not None:
+ /* "libpetsc4py.pyx":937
+ * if multTransposeAdd is None:
* CHKERR( MatMultTranspose(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if multTransposeAdd is None: return UNSUPPORTED(b"multTransposeAdd")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_v)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 935, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_v)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 937, __pyx_L1_error)
- /* "libpetsc4py.pyx":936
+ /* "libpetsc4py.pyx":938
* CHKERR( MatMultTranspose(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -10861,16 +11636,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTransposeAdd_Python(Mat __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":933
+ /* "libpetsc4py.pyx":935
* FunctionBegin(b"MatMultTransposeAdd_Python")
* cdef multTransposeAdd = PyMat(mat).multTransposeAdd
- * if multTransposeAdd is not None: # <<<<<<<<<<<<<<
+ * if multTransposeAdd is None: # <<<<<<<<<<<<<<
* CHKERR( MatMultTranspose(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) )
*/
}
- /* "libpetsc4py.pyx":937
+ /* "libpetsc4py.pyx":939
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd()
* if multTransposeAdd is None: return UNSUPPORTED(b"multTransposeAdd") # <<<<<<<<<<<<<<
@@ -10884,58 +11659,84 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTransposeAdd_Python(Mat __pyx
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":938
+ /* "libpetsc4py.pyx":940
* return FunctionEnd()
* if multTransposeAdd is None: return UNSUPPORTED(b"multTransposeAdd")
* multTransposeAdd(Mat_(mat), Vec_(x), Vec_(v), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 938, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 940, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 938, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 940, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 938, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 940, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 938, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 940, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_multTransposeAdd);
__pyx_t_9 = __pyx_v_multTransposeAdd; __pyx_t_10 = NULL;
- __pyx_t_11 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_9))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
__pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9);
if (likely(__pyx_t_10)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
__Pyx_INCREF(__pyx_t_10);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_9, function);
- __pyx_t_11 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_12 = PyTuple_New(4+__pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 938, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_12);
- if (__pyx_t_10) {
- __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10); __pyx_t_10 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_12, 0+__pyx_t_11, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_12, 1+__pyx_t_11, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_12, 2+__pyx_t_11, __pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_8);
- PyTuple_SET_ITEM(__pyx_t_12, 3+__pyx_t_11, __pyx_t_8);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_8 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 938, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 940, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 940, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 940, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_10) {
+ __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_10); __pyx_t_10 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_5, __pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_5, __pyx_t_8);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_8 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 940, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ }
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":939
+ /* "libpetsc4py.pyx":941
* if multTransposeAdd is None: return UNSUPPORTED(b"multTransposeAdd")
* multTransposeAdd(Mat_(mat), Vec_(x), Vec_(v), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -10945,7 +11746,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTransposeAdd_Python(Mat __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":924
+ /* "libpetsc4py.pyx":926
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultTransposeAdd_Python( # <<<<<<<<<<<<<<
@@ -10962,19 +11763,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultTransposeAdd_Python(Mat __pyx
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
- __Pyx_XDECREF(__pyx_t_12);
+ __Pyx_XDECREF(__pyx_t_11);
__Pyx_AddTraceback("libpetsc4py.MatMultTransposeAdd_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_multTransposeAdd);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":941
+/* "libpetsc4py.pyx":943
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultHermitianAdd_Python( # <<<<<<<<<<<<<<
@@ -10996,67 +11797,66 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitianAdd_Python(Mat __pyx
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
- Py_ssize_t __pyx_t_11;
- PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatMultHermitianAdd_Python", 0);
- /* "libpetsc4py.pyx":948
+ /* "libpetsc4py.pyx":950
* ) \
* except IERR with gil:
* FunctionBegin(b"MatMultHermitianAdd_Python") # <<<<<<<<<<<<<<
* cdef multHermitianAdd = PyMat(mat).multHermitianAdd
- * if multHermitianAdd is not None:
+ * if multHermitianAdd is None:
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatMultHermitianAdd_Python"));
- /* "libpetsc4py.pyx":949
+ /* "libpetsc4py.pyx":951
* except IERR with gil:
* FunctionBegin(b"MatMultHermitianAdd_Python")
* cdef multHermitianAdd = PyMat(mat).multHermitianAdd # <<<<<<<<<<<<<<
- * if multHermitianAdd is not None:
+ * if multHermitianAdd is None:
* CHKERR( MatMultHermitian(mat,x,y) )
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 949, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multHermitianAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 949, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multHermitianAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_multHermitianAdd = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":950
+ /* "libpetsc4py.pyx":952
* FunctionBegin(b"MatMultHermitianAdd_Python")
* cdef multHermitianAdd = PyMat(mat).multHermitianAdd
- * if multHermitianAdd is not None: # <<<<<<<<<<<<<<
+ * if multHermitianAdd is None: # <<<<<<<<<<<<<<
* CHKERR( MatMultHermitian(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) )
*/
- __pyx_t_3 = (__pyx_v_multHermitianAdd != Py_None);
+ __pyx_t_3 = (__pyx_v_multHermitianAdd == Py_None);
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":951
+ /* "libpetsc4py.pyx":953
* cdef multHermitianAdd = PyMat(mat).multHermitianAdd
- * if multHermitianAdd is not None:
+ * if multHermitianAdd is None:
* CHKERR( MatMultHermitian(mat,x,y) ) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd()
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMultHermitianTranspose(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 951, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatMultHermitianTranspose(__pyx_v_mat, __pyx_v_x, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 953, __pyx_L1_error)
- /* "libpetsc4py.pyx":952
- * if multHermitianAdd is not None:
+ /* "libpetsc4py.pyx":954
+ * if multHermitianAdd is None:
* CHKERR( MatMultHermitian(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if multHermitianAdd is None: return UNSUPPORTED(b"multHermitianAdd")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_v)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 952, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_y, 1.0, __pyx_v_v)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 954, __pyx_L1_error)
- /* "libpetsc4py.pyx":953
+ /* "libpetsc4py.pyx":955
* CHKERR( MatMultHermitian(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -11066,16 +11866,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitianAdd_Python(Mat __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":950
+ /* "libpetsc4py.pyx":952
* FunctionBegin(b"MatMultHermitianAdd_Python")
* cdef multHermitianAdd = PyMat(mat).multHermitianAdd
- * if multHermitianAdd is not None: # <<<<<<<<<<<<<<
+ * if multHermitianAdd is None: # <<<<<<<<<<<<<<
* CHKERR( MatMultHermitian(mat,x,y) )
* CHKERR( VecAXPY(y,1.0,v) )
*/
}
- /* "libpetsc4py.pyx":954
+ /* "libpetsc4py.pyx":956
* CHKERR( VecAXPY(y,1.0,v) )
* return FunctionEnd()
* if multHermitianAdd is None: return UNSUPPORTED(b"multHermitianAdd") # <<<<<<<<<<<<<<
@@ -11089,58 +11889,84 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitianAdd_Python(Mat __pyx
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":955
+ /* "libpetsc4py.pyx":957
* return FunctionEnd()
* if multHermitianAdd is None: return UNSUPPORTED(b"multHermitianAdd")
* multHermitianAdd(Mat_(mat), Vec_(x), Vec_(v), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 955, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 957, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 955, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 957, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 955, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 957, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 955, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 957, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_multHermitianAdd);
__pyx_t_9 = __pyx_v_multHermitianAdd; __pyx_t_10 = NULL;
- __pyx_t_11 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_9))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
__pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9);
if (likely(__pyx_t_10)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
__Pyx_INCREF(__pyx_t_10);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_9, function);
- __pyx_t_11 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_12 = PyTuple_New(4+__pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 955, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_12);
- if (__pyx_t_10) {
- __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10); __pyx_t_10 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_12, 0+__pyx_t_11, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_12, 1+__pyx_t_11, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_12, 2+__pyx_t_11, __pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_8);
- PyTuple_SET_ITEM(__pyx_t_12, 3+__pyx_t_11, __pyx_t_8);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_8 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 955, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 957, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 957, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 957, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_10) {
+ __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_10); __pyx_t_10 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_5, __pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_5, __pyx_t_8);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_8 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 957, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ }
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":956
+ /* "libpetsc4py.pyx":958
* if multHermitianAdd is None: return UNSUPPORTED(b"multHermitianAdd")
* multHermitianAdd(Mat_(mat), Vec_(x), Vec_(v), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -11150,7 +11976,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitianAdd_Python(Mat __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":941
+ /* "libpetsc4py.pyx":943
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultHermitianAdd_Python( # <<<<<<<<<<<<<<
@@ -11167,19 +11993,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultHermitianAdd_Python(Mat __pyx
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
- __Pyx_XDECREF(__pyx_t_12);
+ __Pyx_XDECREF(__pyx_t_11);
__Pyx_AddTraceback("libpetsc4py.MatMultHermitianAdd_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_multHermitianAdd);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":958
+/* "libpetsc4py.pyx":960
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultDiagonalBlock_Python( # <<<<<<<<<<<<<<
@@ -11199,14 +12025,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultDiagonalBlock_Python(Mat __py
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatMultDiagonalBlock_Python", 0);
- /* "libpetsc4py.pyx":964
+ /* "libpetsc4py.pyx":966
* ) \
* except IERR with gil:
* FunctionBegin(b"MatMultDiagonalBlock_Python") # <<<<<<<<<<<<<<
@@ -11215,22 +12041,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultDiagonalBlock_Python(Mat __py
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatMultDiagonalBlock_Python"));
- /* "libpetsc4py.pyx":965
+ /* "libpetsc4py.pyx":967
* except IERR with gil:
* FunctionBegin(b"MatMultDiagonalBlock_Python")
* cdef multDiagonalBlock = PyMat(mat).multDiagonalBlock # <<<<<<<<<<<<<<
* if multDiagonalBlock is None: return UNSUPPORTED(b"multDiagonalBlock")
* multDiagonalBlock(Mat_(mat), Vec_(x), Vec_(y))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 965, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multDiagonalBlock); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 965, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_multDiagonalBlock); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_multDiagonalBlock = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":966
+ /* "libpetsc4py.pyx":968
* FunctionBegin(b"MatMultDiagonalBlock_Python")
* cdef multDiagonalBlock = PyMat(mat).multDiagonalBlock
* if multDiagonalBlock is None: return UNSUPPORTED(b"multDiagonalBlock") # <<<<<<<<<<<<<<
@@ -11244,23 +12070,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultDiagonalBlock_Python(Mat __py
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":967
+ /* "libpetsc4py.pyx":969
* cdef multDiagonalBlock = PyMat(mat).multDiagonalBlock
* if multDiagonalBlock is None: return UNSUPPORTED(b"multDiagonalBlock")
* multDiagonalBlock(Mat_(mat), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 967, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 969, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 967, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 969, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 967, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 969, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_multDiagonalBlock);
__pyx_t_7 = __pyx_v_multDiagonalBlock; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -11270,27 +12096,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultDiagonalBlock_Python(Mat __py
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 967, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 967, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 969, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 969, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 969, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 969, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":968
+ /* "libpetsc4py.pyx":970
* if multDiagonalBlock is None: return UNSUPPORTED(b"multDiagonalBlock")
* multDiagonalBlock(Mat_(mat), Vec_(x), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -11300,7 +12150,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultDiagonalBlock_Python(Mat __py
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":958
+ /* "libpetsc4py.pyx":960
* return FunctionEnd()
*
* cdef PetscErrorCode MatMultDiagonalBlock_Python( # <<<<<<<<<<<<<<
@@ -11323,12 +12173,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatMultDiagonalBlock_Python(Mat __py
__Pyx_XDECREF(__pyx_v_multDiagonalBlock);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":970
+/* "libpetsc4py.pyx":972
* return FunctionEnd()
*
* cdef PetscErrorCode MatSolve_Python( # <<<<<<<<<<<<<<
@@ -11348,14 +12198,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolve_Python(Mat __pyx_v_mat, Vec
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSolve_Python", 0);
- /* "libpetsc4py.pyx":976
+ /* "libpetsc4py.pyx":978
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSolve_Python") # <<<<<<<<<<<<<<
@@ -11364,22 +12214,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolve_Python(Mat __pyx_v_mat, Vec
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSolve_Python"));
- /* "libpetsc4py.pyx":977
+ /* "libpetsc4py.pyx":979
* except IERR with gil:
* FunctionBegin(b"MatSolve_Python")
* cdef solve = PyMat(mat).solve # <<<<<<<<<<<<<<
* if solve is None: return UNSUPPORTED(b"solve")
* solve(Mat_(mat), Vec_(b), Vec_(x))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 977, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 979, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 977, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 979, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_solve = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":978
+ /* "libpetsc4py.pyx":980
* FunctionBegin(b"MatSolve_Python")
* cdef solve = PyMat(mat).solve
* if solve is None: return UNSUPPORTED(b"solve") # <<<<<<<<<<<<<<
@@ -11393,23 +12243,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolve_Python(Mat __pyx_v_mat, Vec
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":979
+ /* "libpetsc4py.pyx":981
* cdef solve = PyMat(mat).solve
* if solve is None: return UNSUPPORTED(b"solve")
* solve(Mat_(mat), Vec_(b), Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 979, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 979, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 979, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_solve);
__pyx_t_7 = __pyx_v_solve; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -11419,38 +12269,62 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolve_Python(Mat __pyx_v_mat, Vec
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 979, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 979, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
-
- /* "libpetsc4py.pyx":980
- * if solve is None: return UNSUPPORTED(b"solve")
- * solve(Mat_(mat), Vec_(b), Vec_(x))
- * return FunctionEnd() # <<<<<<<<<<<<<<
- *
- * cdef PetscErrorCode MatSolveTranspose_Python(
- */
- __pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
- goto __pyx_L0;
-
- /* "libpetsc4py.pyx":970
- * return FunctionEnd()
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 981, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 981, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 981, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 981, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+
+ /* "libpetsc4py.pyx":982
+ * if solve is None: return UNSUPPORTED(b"solve")
+ * solve(Mat_(mat), Vec_(b), Vec_(x))
+ * return FunctionEnd() # <<<<<<<<<<<<<<
+ *
+ * cdef PetscErrorCode MatSolveTranspose_Python(
+ */
+ __pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
+ goto __pyx_L0;
+
+ /* "libpetsc4py.pyx":972
+ * return FunctionEnd()
*
* cdef PetscErrorCode MatSolve_Python( # <<<<<<<<<<<<<<
* PetscMat mat,
@@ -11472,12 +12346,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolve_Python(Mat __pyx_v_mat, Vec
__Pyx_XDECREF(__pyx_v_solve);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":982
+/* "libpetsc4py.pyx":984
* return FunctionEnd()
*
* cdef PetscErrorCode MatSolveTranspose_Python( # <<<<<<<<<<<<<<
@@ -11500,14 +12374,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
- PyObject *__pyx_t_11 = NULL;
+ PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSolveTranspose_Python", 0);
- /* "libpetsc4py.pyx":988
+ /* "libpetsc4py.pyx":990
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSolveTranspose_Python") # <<<<<<<<<<<<<<
@@ -11516,22 +12389,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSolveTranspose_Python"));
- /* "libpetsc4py.pyx":989
+ /* "libpetsc4py.pyx":991
* except IERR with gil:
* FunctionBegin(b"MatSolveTranspose_Python")
* cdef solveTranspose = PyMat(mat).solveTranspose # <<<<<<<<<<<<<<
* cdef PetscBool symmset, symmknown
* if solveTranspose is None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 989, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 991, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 989, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 991, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_solveTranspose = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":991
+ /* "libpetsc4py.pyx":993
* cdef solveTranspose = PyMat(mat).solveTranspose
* cdef PetscBool symmset, symmknown
* if solveTranspose is None: # <<<<<<<<<<<<<<
@@ -11542,7 +12415,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":992
+ /* "libpetsc4py.pyx":994
* cdef PetscBool symmset, symmknown
* if solveTranspose is None:
* symmset = symmknown = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -11552,16 +12425,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
__pyx_v_symmset = PETSC_FALSE;
__pyx_v_symmknown = PETSC_FALSE;
- /* "libpetsc4py.pyx":993
+ /* "libpetsc4py.pyx":995
* if solveTranspose is None:
* symmset = symmknown = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) ) # <<<<<<<<<<<<<<
* if symmset and symmknown:
* CHKERR( MatSolve(mat,b,x) )
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatIsSymmetricKnown(__pyx_v_mat, (&__pyx_v_symmset), (&__pyx_v_symmknown))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 993, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatIsSymmetricKnown(__pyx_v_mat, (&__pyx_v_symmset), (&__pyx_v_symmknown))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 995, __pyx_L1_error)
- /* "libpetsc4py.pyx":994
+ /* "libpetsc4py.pyx":996
* symmset = symmknown = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) )
* if symmset and symmknown: # <<<<<<<<<<<<<<
@@ -11577,16 +12450,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
__pyx_L5_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":995
+ /* "libpetsc4py.pyx":997
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) )
* if symmset and symmknown:
* CHKERR( MatSolve(mat,b,x) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if solveTranspose is None: return UNSUPPORTED(b"solveTranspose")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatSolve(__pyx_v_mat, __pyx_v_b, __pyx_v_x)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 995, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatSolve(__pyx_v_mat, __pyx_v_b, __pyx_v_x)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 997, __pyx_L1_error)
- /* "libpetsc4py.pyx":996
+ /* "libpetsc4py.pyx":998
* if symmset and symmknown:
* CHKERR( MatSolve(mat,b,x) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -11596,7 +12469,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":994
+ /* "libpetsc4py.pyx":996
* symmset = symmknown = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(mat,&symmset,&symmknown) )
* if symmset and symmknown: # <<<<<<<<<<<<<<
@@ -11605,7 +12478,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
*/
}
- /* "libpetsc4py.pyx":991
+ /* "libpetsc4py.pyx":993
* cdef solveTranspose = PyMat(mat).solveTranspose
* cdef PetscBool symmset, symmknown
* if solveTranspose is None: # <<<<<<<<<<<<<<
@@ -11614,7 +12487,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
*/
}
- /* "libpetsc4py.pyx":997
+ /* "libpetsc4py.pyx":999
* CHKERR( MatSolve(mat,b,x) )
* return FunctionEnd()
* if solveTranspose is None: return UNSUPPORTED(b"solveTranspose") # <<<<<<<<<<<<<<
@@ -11628,53 +12501,77 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":998
+ /* "libpetsc4py.pyx":1000
* return FunctionEnd()
* if solveTranspose is None: return UNSUPPORTED(b"solveTranspose")
* solveTranspose(Mat_(mat), Vec_(b), Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 998, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1000, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 998, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1000, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 998, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1000, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_solveTranspose);
__pyx_t_8 = __pyx_v_solveTranspose; __pyx_t_9 = NULL;
- __pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
- __pyx_t_10 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_11 = PyTuple_New(3+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 998, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_7);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 998, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_1, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1000, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_1, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_5, 3+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1000, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_5); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1000, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_5, __pyx_t_7);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1000, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":999
+ /* "libpetsc4py.pyx":1001
* if solveTranspose is None: return UNSUPPORTED(b"solveTranspose")
* solveTranspose(Mat_(mat), Vec_(b), Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -11684,7 +12581,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":982
+ /* "libpetsc4py.pyx":984
* return FunctionEnd()
*
* cdef PetscErrorCode MatSolveTranspose_Python( # <<<<<<<<<<<<<<
@@ -11700,19 +12597,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTranspose_Python(Mat __pyx_v
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
- __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_XDECREF(__pyx_t_10);
__Pyx_AddTraceback("libpetsc4py.MatSolveTranspose_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_solveTranspose);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1001
+/* "libpetsc4py.pyx":1003
* return FunctionEnd()
*
* cdef PetscErrorCode MatSolveAdd_Python( # <<<<<<<<<<<<<<
@@ -11734,14 +12631,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
- Py_ssize_t __pyx_t_11;
- PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSolveAdd_Python", 0);
- /* "libpetsc4py.pyx":1008
+ /* "libpetsc4py.pyx":1010
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSolveAdd_Python") # <<<<<<<<<<<<<<
@@ -11750,22 +12646,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSolveAdd_Python"));
- /* "libpetsc4py.pyx":1009
+ /* "libpetsc4py.pyx":1011
* except IERR with gil:
* FunctionBegin(b"MatSolveAdd_Python")
* cdef solveAdd = PyMat(mat).solveAdd # <<<<<<<<<<<<<<
* if solveAdd is None:
* CHKERR( MatSolve(mat,b,x) )
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1009, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1009, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_solveAdd = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1010
+ /* "libpetsc4py.pyx":1012
* FunctionBegin(b"MatSolveAdd_Python")
* cdef solveAdd = PyMat(mat).solveAdd
* if solveAdd is None: # <<<<<<<<<<<<<<
@@ -11776,25 +12672,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1011
+ /* "libpetsc4py.pyx":1013
* cdef solveAdd = PyMat(mat).solveAdd
* if solveAdd is None:
* CHKERR( MatSolve(mat,b,x) ) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(x,1.0,y) )
* return FunctionEnd()
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatSolve(__pyx_v_mat, __pyx_v_b, __pyx_v_x)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 1011, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatSolve(__pyx_v_mat, __pyx_v_b, __pyx_v_x)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 1013, __pyx_L1_error)
- /* "libpetsc4py.pyx":1012
+ /* "libpetsc4py.pyx":1014
* if solveAdd is None:
* CHKERR( MatSolve(mat,b,x) )
* CHKERR( VecAXPY(x,1.0,y) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if solveAdd is None: return UNSUPPORTED(b"solveAdd")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_x, 1.0, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 1012, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_x, 1.0, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 1014, __pyx_L1_error)
- /* "libpetsc4py.pyx":1013
+ /* "libpetsc4py.pyx":1015
* CHKERR( MatSolve(mat,b,x) )
* CHKERR( VecAXPY(x,1.0,y) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -11804,7 +12700,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1010
+ /* "libpetsc4py.pyx":1012
* FunctionBegin(b"MatSolveAdd_Python")
* cdef solveAdd = PyMat(mat).solveAdd
* if solveAdd is None: # <<<<<<<<<<<<<<
@@ -11813,7 +12709,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
*/
}
- /* "libpetsc4py.pyx":1014
+ /* "libpetsc4py.pyx":1016
* CHKERR( VecAXPY(x,1.0,y) )
* return FunctionEnd()
* if solveAdd is None: return UNSUPPORTED(b"solveAdd") # <<<<<<<<<<<<<<
@@ -11827,58 +12723,84 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1015
+ /* "libpetsc4py.pyx":1017
* return FunctionEnd()
* if solveAdd is None: return UNSUPPORTED(b"solveAdd")
* solveAdd(Mat_(mat), Vec_(b), Vec_(y), Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1015, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1015, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1015, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1015, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_solveAdd);
__pyx_t_9 = __pyx_v_solveAdd; __pyx_t_10 = NULL;
- __pyx_t_11 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_9))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
__pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9);
if (likely(__pyx_t_10)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
__Pyx_INCREF(__pyx_t_10);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_9, function);
- __pyx_t_11 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_12 = PyTuple_New(4+__pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1015, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_12);
- if (__pyx_t_10) {
- __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10); __pyx_t_10 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_12, 0+__pyx_t_11, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_12, 1+__pyx_t_11, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_12, 2+__pyx_t_11, __pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_8);
- PyTuple_SET_ITEM(__pyx_t_12, 3+__pyx_t_11, __pyx_t_8);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_8 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1015, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1017, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1017, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1017, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_10) {
+ __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_10); __pyx_t_10 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_5, __pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_5, __pyx_t_8);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_8 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1017, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ }
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1016
+ /* "libpetsc4py.pyx":1018
* if solveAdd is None: return UNSUPPORTED(b"solveAdd")
* solveAdd(Mat_(mat), Vec_(b), Vec_(y), Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -11888,7 +12810,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1001
+ /* "libpetsc4py.pyx":1003
* return FunctionEnd()
*
* cdef PetscErrorCode MatSolveAdd_Python( # <<<<<<<<<<<<<<
@@ -11905,19 +12827,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveAdd_Python(Mat __pyx_v_mat,
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
- __Pyx_XDECREF(__pyx_t_12);
+ __Pyx_XDECREF(__pyx_t_11);
__Pyx_AddTraceback("libpetsc4py.MatSolveAdd_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_solveAdd);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1018
+/* "libpetsc4py.pyx":1020
* return FunctionEnd()
*
* cdef PetscErrorCode MatSolveTransposeAdd_Python( # <<<<<<<<<<<<<<
@@ -11939,67 +12861,66 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTransposeAdd_Python(Mat __py
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
- Py_ssize_t __pyx_t_11;
- PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSolveTransposeAdd_Python", 0);
- /* "libpetsc4py.pyx":1025
+ /* "libpetsc4py.pyx":1027
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSolveTransposeAdd_Python") # <<<<<<<<<<<<<<
* cdef solveTransposeAdd = PyMat(mat).solveTransposeAdd
- * if solveTransposeAdd is not None:
+ * if solveTransposeAdd is None:
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSolveTransposeAdd_Python"));
- /* "libpetsc4py.pyx":1026
+ /* "libpetsc4py.pyx":1028
* except IERR with gil:
* FunctionBegin(b"MatSolveTransposeAdd_Python")
* cdef solveTransposeAdd = PyMat(mat).solveTransposeAdd # <<<<<<<<<<<<<<
- * if solveTransposeAdd is not None:
+ * if solveTransposeAdd is None:
* CHKERR( MatSolveTranspose(mat,b,x) )
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1026, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1028, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveTransposeAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1026, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveTransposeAdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1028, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_solveTransposeAdd = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1027
+ /* "libpetsc4py.pyx":1029
* FunctionBegin(b"MatSolveTransposeAdd_Python")
* cdef solveTransposeAdd = PyMat(mat).solveTransposeAdd
- * if solveTransposeAdd is not None: # <<<<<<<<<<<<<<
+ * if solveTransposeAdd is None: # <<<<<<<<<<<<<<
* CHKERR( MatSolveTranspose(mat,b,x) )
* CHKERR( VecAXPY(x,1.0,y) )
*/
- __pyx_t_3 = (__pyx_v_solveTransposeAdd != Py_None);
+ __pyx_t_3 = (__pyx_v_solveTransposeAdd == Py_None);
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1028
+ /* "libpetsc4py.pyx":1030
* cdef solveTransposeAdd = PyMat(mat).solveTransposeAdd
- * if solveTransposeAdd is not None:
+ * if solveTransposeAdd is None:
* CHKERR( MatSolveTranspose(mat,b,x) ) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(x,1.0,y) )
* return FunctionEnd()
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatSolveTranspose(__pyx_v_mat, __pyx_v_b, __pyx_v_x)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 1028, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(MatSolveTranspose(__pyx_v_mat, __pyx_v_b, __pyx_v_x)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 1030, __pyx_L1_error)
- /* "libpetsc4py.pyx":1029
- * if solveTransposeAdd is not None:
+ /* "libpetsc4py.pyx":1031
+ * if solveTransposeAdd is None:
* CHKERR( MatSolveTranspose(mat,b,x) )
* CHKERR( VecAXPY(x,1.0,y) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
* if solveTransposeAdd is None: return UNSUPPORTED(b"solveTransposeAdd")
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_x, 1.0, __pyx_v_y)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 1029, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_x, 1.0, __pyx_v_y)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 1031, __pyx_L1_error)
- /* "libpetsc4py.pyx":1030
+ /* "libpetsc4py.pyx":1032
* CHKERR( MatSolveTranspose(mat,b,x) )
* CHKERR( VecAXPY(x,1.0,y) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -12009,16 +12930,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTransposeAdd_Python(Mat __py
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1027
+ /* "libpetsc4py.pyx":1029
* FunctionBegin(b"MatSolveTransposeAdd_Python")
* cdef solveTransposeAdd = PyMat(mat).solveTransposeAdd
- * if solveTransposeAdd is not None: # <<<<<<<<<<<<<<
+ * if solveTransposeAdd is None: # <<<<<<<<<<<<<<
* CHKERR( MatSolveTranspose(mat,b,x) )
* CHKERR( VecAXPY(x,1.0,y) )
*/
}
- /* "libpetsc4py.pyx":1031
+ /* "libpetsc4py.pyx":1033
* CHKERR( VecAXPY(x,1.0,y) )
* return FunctionEnd()
* if solveTransposeAdd is None: return UNSUPPORTED(b"solveTransposeAdd") # <<<<<<<<<<<<<<
@@ -12032,58 +12953,84 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTransposeAdd_Python(Mat __py
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1032
+ /* "libpetsc4py.pyx":1034
* return FunctionEnd()
* if solveTransposeAdd is None: return UNSUPPORTED(b"solveTransposeAdd")
* solveTransposeAdd(Mat_(mat), Vec_(b), Vec_(y), Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1032, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1034, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1032, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1034, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1032, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1034, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1032, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1034, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_solveTransposeAdd);
__pyx_t_9 = __pyx_v_solveTransposeAdd; __pyx_t_10 = NULL;
- __pyx_t_11 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_9))) {
+ __pyx_t_5 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) {
__pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9);
if (likely(__pyx_t_10)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
__Pyx_INCREF(__pyx_t_10);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_9, function);
- __pyx_t_11 = 1;
+ __pyx_t_5 = 1;
}
}
- __pyx_t_12 = PyTuple_New(4+__pyx_t_11); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1032, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_12);
- if (__pyx_t_10) {
- __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10); __pyx_t_10 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_12, 0+__pyx_t_11, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_12, 1+__pyx_t_11, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_12, 2+__pyx_t_11, __pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_8);
- PyTuple_SET_ITEM(__pyx_t_12, 3+__pyx_t_11, __pyx_t_8);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_8 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_12, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1032, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1034, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_9)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_10, __pyx_t_1, __pyx_t_6, __pyx_t_7, __pyx_t_8};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_9, __pyx_temp+1-__pyx_t_5, 4+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1034, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1034, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_10) {
+ __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_10); __pyx_t_10 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_5, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_5, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_5, __pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_5, __pyx_t_8);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_8 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1034, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ }
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1033
+ /* "libpetsc4py.pyx":1035
* if solveTransposeAdd is None: return UNSUPPORTED(b"solveTransposeAdd")
* solveTransposeAdd(Mat_(mat), Vec_(b), Vec_(y), Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -12093,7 +13040,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTransposeAdd_Python(Mat __py
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1018
+ /* "libpetsc4py.pyx":1020
* return FunctionEnd()
*
* cdef PetscErrorCode MatSolveTransposeAdd_Python( # <<<<<<<<<<<<<<
@@ -12110,19 +13057,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSolveTransposeAdd_Python(Mat __py
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
- __Pyx_XDECREF(__pyx_t_12);
+ __Pyx_XDECREF(__pyx_t_11);
__Pyx_AddTraceback("libpetsc4py.MatSolveTransposeAdd_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_solveTransposeAdd);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1035
+/* "libpetsc4py.pyx":1037
* return FunctionEnd()
*
* cdef PetscErrorCode MatSOR_Python( # <<<<<<<<<<<<<<
@@ -12149,14 +13096,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSOR_Python(Mat __pyx_v_mat, Vec _
PyObject *__pyx_t_13 = NULL;
PyObject *__pyx_t_14 = NULL;
PyObject *__pyx_t_15 = NULL;
- Py_ssize_t __pyx_t_16;
+ int __pyx_t_16;
PyObject *__pyx_t_17 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSOR_Python", 0);
- /* "libpetsc4py.pyx":1046
+ /* "libpetsc4py.pyx":1048
* )\
* except IERR with gil:
* FunctionBegin(b"MatSOR_Python") # <<<<<<<<<<<<<<
@@ -12165,22 +13112,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSOR_Python(Mat __pyx_v_mat, Vec _
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSOR_Python"));
- /* "libpetsc4py.pyx":1047
+ /* "libpetsc4py.pyx":1049
* except IERR with gil:
* FunctionBegin(b"MatSOR_Python")
* cdef SOR = PyMat(mat).SOR # <<<<<<<<<<<<<<
* if SOR is None: return UNSUPPORTED(b"SOR")
* SOR(Mat_(mat), Vec_(b), asReal(omega), asInt(sortype), asReal(shift), asInt(its), asInt(lits), Vec_(x))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1047, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1049, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_SOR); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1047, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_SOR); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1049, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_SOR = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1048
+ /* "libpetsc4py.pyx":1050
* FunctionBegin(b"MatSOR_Python")
* cdef SOR = PyMat(mat).SOR
* if SOR is None: return UNSUPPORTED(b"SOR") # <<<<<<<<<<<<<<
@@ -12194,53 +13141,53 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSOR_Python(Mat __pyx_v_mat, Vec _
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1049
+ /* "libpetsc4py.pyx":1051
* cdef SOR = PyMat(mat).SOR
* if SOR is None: return UNSUPPORTED(b"SOR")
* SOR(Mat_(mat), Vec_(b), asReal(omega), asInt(sortype), asReal(shift), asInt(its), asInt(lits), Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyFloat_FromDouble(__pyx_v_omega); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_6 = PyFloat_FromDouble(__pyx_v_omega); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = __pyx_f_11libpetsc4py_asReal(__pyx_t_6); if (unlikely(__pyx_t_7 == -1.0 && PyErr_Occurred())) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_11libpetsc4py_asReal(__pyx_t_6); if (unlikely(__pyx_t_7 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_6 = PyFloat_FromDouble(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_6 = PyFloat_FromDouble(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_8 = __Pyx_PyInt_From_MatSORType(__pyx_v_sortype); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyInt_From_MatSORType(__pyx_v_sortype); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = __pyx_f_11libpetsc4py_asInt(__pyx_t_8); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_asInt(__pyx_t_8); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyInt_From_PetscInt(__pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyInt_From_PetscInt(__pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_10 = PyFloat_FromDouble(__pyx_v_shift); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_10 = PyFloat_FromDouble(__pyx_v_shift); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_7 = __pyx_f_11libpetsc4py_asReal(__pyx_t_10); if (unlikely(__pyx_t_7 == -1.0 && PyErr_Occurred())) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_11libpetsc4py_asReal(__pyx_t_10); if (unlikely(__pyx_t_7 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- __pyx_t_10 = PyFloat_FromDouble(__pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_10 = PyFloat_FromDouble(__pyx_t_7); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_11 = __Pyx_PyInt_From_PetscInt(__pyx_v_its); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_11 = __Pyx_PyInt_From_PetscInt(__pyx_v_its); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_9 = __pyx_f_11libpetsc4py_asInt(__pyx_t_11); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_asInt(__pyx_t_11); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
- __pyx_t_11 = __Pyx_PyInt_From_PetscInt(__pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_11 = __Pyx_PyInt_From_PetscInt(__pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = __Pyx_PyInt_From_PetscInt(__pyx_v_lits); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_12 = __Pyx_PyInt_From_PetscInt(__pyx_v_lits); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_12);
- __pyx_t_9 = __pyx_f_11libpetsc4py_asInt(__pyx_t_12); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_asInt(__pyx_t_12); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
- __pyx_t_12 = __Pyx_PyInt_From_PetscInt(__pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_12 = __Pyx_PyInt_From_PetscInt(__pyx_t_9); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_12);
- __pyx_t_13 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1049, __pyx_L1_error)
+ __pyx_t_13 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1051, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_INCREF(__pyx_v_SOR);
__pyx_t_14 = __pyx_v_SOR; __pyx_t_15 = NULL;
__pyx_t_16 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_14))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_14))) {
__pyx_t_15 = PyMethod_GET_SELF(__pyx_t_14);
if (likely(__pyx_t_15)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14);
@@ -12250,42 +13197,76 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSOR_Python(Mat __pyx_v_mat, Vec _
__pyx_t_16 = 1;
}
}
- __pyx_t_17 = PyTuple_New(8+__pyx_t_16); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1049, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_17);
- if (__pyx_t_15) {
- __Pyx_GIVEREF(__pyx_t_15); PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_15); __pyx_t_15 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_17, 0+__pyx_t_16, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_17, 1+__pyx_t_16, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_17, 2+__pyx_t_16, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_8);
- PyTuple_SET_ITEM(__pyx_t_17, 3+__pyx_t_16, __pyx_t_8);
- __Pyx_GIVEREF(__pyx_t_10);
- PyTuple_SET_ITEM(__pyx_t_17, 4+__pyx_t_16, __pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_11);
- PyTuple_SET_ITEM(__pyx_t_17, 5+__pyx_t_16, __pyx_t_11);
- __Pyx_GIVEREF(__pyx_t_12);
- PyTuple_SET_ITEM(__pyx_t_17, 6+__pyx_t_16, __pyx_t_12);
- __Pyx_GIVEREF(__pyx_t_13);
- PyTuple_SET_ITEM(__pyx_t_17, 7+__pyx_t_16, __pyx_t_13);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_8 = 0;
- __pyx_t_10 = 0;
- __pyx_t_11 = 0;
- __pyx_t_12 = 0;
- __pyx_t_13 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_17, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1049, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_14)) {
+ PyObject *__pyx_temp[9] = {__pyx_t_15, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_8, __pyx_t_10, __pyx_t_11, __pyx_t_12, __pyx_t_13};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_16, 8+__pyx_t_16); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1051, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+ __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_14)) {
+ PyObject *__pyx_temp[9] = {__pyx_t_15, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_8, __pyx_t_10, __pyx_t_11, __pyx_t_12, __pyx_t_13};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_16, 8+__pyx_t_16); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1051, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
+ __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_17 = PyTuple_New(8+__pyx_t_16); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1051, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_17);
+ if (__pyx_t_15) {
+ __Pyx_GIVEREF(__pyx_t_15); PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_15); __pyx_t_15 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_17, 0+__pyx_t_16, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_17, 1+__pyx_t_16, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_17, 2+__pyx_t_16, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_17, 3+__pyx_t_16, __pyx_t_8);
+ __Pyx_GIVEREF(__pyx_t_10);
+ PyTuple_SET_ITEM(__pyx_t_17, 4+__pyx_t_16, __pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_11);
+ PyTuple_SET_ITEM(__pyx_t_17, 5+__pyx_t_16, __pyx_t_11);
+ __Pyx_GIVEREF(__pyx_t_12);
+ PyTuple_SET_ITEM(__pyx_t_17, 6+__pyx_t_16, __pyx_t_12);
+ __Pyx_GIVEREF(__pyx_t_13);
+ PyTuple_SET_ITEM(__pyx_t_17, 7+__pyx_t_16, __pyx_t_13);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_8 = 0;
+ __pyx_t_10 = 0;
+ __pyx_t_11 = 0;
+ __pyx_t_12 = 0;
+ __pyx_t_13 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_17, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1051, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
+ }
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1050
+ /* "libpetsc4py.pyx":1052
* if SOR is None: return UNSUPPORTED(b"SOR")
* SOR(Mat_(mat), Vec_(b), asReal(omega), asInt(sortype), asReal(shift), asInt(its), asInt(lits), Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -12295,7 +13276,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSOR_Python(Mat __pyx_v_mat, Vec _
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1035
+ /* "libpetsc4py.pyx":1037
* return FunctionEnd()
*
* cdef PetscErrorCode MatSOR_Python( # <<<<<<<<<<<<<<
@@ -12323,12 +13304,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSOR_Python(Mat __pyx_v_mat, Vec _
__Pyx_XDECREF(__pyx_v_SOR);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1052
+/* "libpetsc4py.pyx":1054
* return FunctionEnd()
*
* cdef PetscErrorCode MatGetDiagonal_Python( # <<<<<<<<<<<<<<
@@ -12347,14 +13328,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonal_Python(Mat __pyx_v_ma
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatGetDiagonal_Python", 0);
- /* "libpetsc4py.pyx":1057
+ /* "libpetsc4py.pyx":1059
* ) \
* except IERR with gil:
* FunctionBegin(b"MatGetDiagonal_Python") # <<<<<<<<<<<<<<
@@ -12363,22 +13344,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonal_Python(Mat __pyx_v_ma
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatGetDiagonal_Python"));
- /* "libpetsc4py.pyx":1058
+ /* "libpetsc4py.pyx":1060
* except IERR with gil:
* FunctionBegin(b"MatGetDiagonal_Python")
* cdef getDiagonal = PyMat(mat).getDiagonal # <<<<<<<<<<<<<<
* if getDiagonal is None: return UNSUPPORTED(b"getDiagonal")
* getDiagonal(Mat_(mat), Vec_(v))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1058, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1060, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_getDiagonal); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1058, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_getDiagonal); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1060, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_getDiagonal = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1059
+ /* "libpetsc4py.pyx":1061
* FunctionBegin(b"MatGetDiagonal_Python")
* cdef getDiagonal = PyMat(mat).getDiagonal
* if getDiagonal is None: return UNSUPPORTED(b"getDiagonal") # <<<<<<<<<<<<<<
@@ -12392,21 +13373,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonal_Python(Mat __pyx_v_ma
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1060
+ /* "libpetsc4py.pyx":1062
* cdef getDiagonal = PyMat(mat).getDiagonal
* if getDiagonal is None: return UNSUPPORTED(b"getDiagonal")
* getDiagonal(Mat_(mat), Vec_(v)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1060, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1062, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1060, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1062, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_getDiagonal);
__pyx_t_6 = __pyx_v_getDiagonal; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -12416,36 +13397,58 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonal_Python(Mat __pyx_v_ma
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1060, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1060, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
-
- /* "libpetsc4py.pyx":1061
- * if getDiagonal is None: return UNSUPPORTED(b"getDiagonal")
- * getDiagonal(Mat_(mat), Vec_(v))
- * return FunctionEnd() # <<<<<<<<<<<<<<
- *
- * cdef PetscErrorCode MatSetDiagonal_Python(
- */
- __pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
- goto __pyx_L0;
-
- /* "libpetsc4py.pyx":1052
- * return FunctionEnd()
- *
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1062, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1062, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1062, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1062, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+
+ /* "libpetsc4py.pyx":1063
+ * if getDiagonal is None: return UNSUPPORTED(b"getDiagonal")
+ * getDiagonal(Mat_(mat), Vec_(v))
+ * return FunctionEnd() # <<<<<<<<<<<<<<
+ *
+ * cdef PetscErrorCode MatSetDiagonal_Python(
+ */
+ __pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
+ goto __pyx_L0;
+
+ /* "libpetsc4py.pyx":1054
+ * return FunctionEnd()
+ *
* cdef PetscErrorCode MatGetDiagonal_Python( # <<<<<<<<<<<<<<
* PetscMat mat,
* PetscVec v,
@@ -12465,12 +13468,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatGetDiagonal_Python(Mat __pyx_v_ma
__Pyx_XDECREF(__pyx_v_getDiagonal);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1063
+/* "libpetsc4py.pyx":1065
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetDiagonal_Python( # <<<<<<<<<<<<<<
@@ -12491,14 +13494,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetDiagonal_Python(Mat __pyx_v_ma
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatSetDiagonal_Python", 0);
- /* "libpetsc4py.pyx":1069
+ /* "libpetsc4py.pyx":1071
* ) \
* except IERR with gil:
* FunctionBegin(b"MatSetDiagonal_Python") # <<<<<<<<<<<<<<
@@ -12507,22 +13510,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetDiagonal_Python(Mat __pyx_v_ma
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatSetDiagonal_Python"));
- /* "libpetsc4py.pyx":1070
+ /* "libpetsc4py.pyx":1072
* except IERR with gil:
* FunctionBegin(b"MatSetDiagonal_Python")
* cdef setDiagonal = PyMat(mat).setDiagonal # <<<<<<<<<<<<<<
* cdef bint addv = True if im == ADD_VALUES else False
* if setDiagonal is None: return UNSUPPORTED(b"setDiagonal")
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1070, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1072, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setDiagonal); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1070, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setDiagonal); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1072, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setDiagonal = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1071
+ /* "libpetsc4py.pyx":1073
* FunctionBegin(b"MatSetDiagonal_Python")
* cdef setDiagonal = PyMat(mat).setDiagonal
* cdef bint addv = True if im == ADD_VALUES else False # <<<<<<<<<<<<<<
@@ -12536,7 +13539,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetDiagonal_Python(Mat __pyx_v_ma
}
__pyx_v_addv = __pyx_t_3;
- /* "libpetsc4py.pyx":1072
+ /* "libpetsc4py.pyx":1074
* cdef setDiagonal = PyMat(mat).setDiagonal
* cdef bint addv = True if im == ADD_VALUES else False
* if setDiagonal is None: return UNSUPPORTED(b"setDiagonal") # <<<<<<<<<<<<<<
@@ -12550,23 +13553,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetDiagonal_Python(Mat __pyx_v_ma
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1073
+ /* "libpetsc4py.pyx":1075
* cdef bint addv = True if im == ADD_VALUES else False
* if setDiagonal is None: return UNSUPPORTED(b"setDiagonal")
* setDiagonal(Mat_(mat), Vec_(v), addv) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1073, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1075, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1073, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1075, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_v_addv); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1073, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_v_addv); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1075, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_setDiagonal);
__pyx_t_7 = __pyx_v_setDiagonal; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -12576,27 +13579,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetDiagonal_Python(Mat __pyx_v_ma
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1073, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1073, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1075, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1075, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1075, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1075, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1074
+ /* "libpetsc4py.pyx":1076
* if setDiagonal is None: return UNSUPPORTED(b"setDiagonal")
* setDiagonal(Mat_(mat), Vec_(v), addv)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -12606,7 +13633,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetDiagonal_Python(Mat __pyx_v_ma
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1063
+ /* "libpetsc4py.pyx":1065
* return FunctionEnd()
*
* cdef PetscErrorCode MatSetDiagonal_Python( # <<<<<<<<<<<<<<
@@ -12629,12 +13656,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatSetDiagonal_Python(Mat __pyx_v_ma
__Pyx_XDECREF(__pyx_v_setDiagonal);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1076
+/* "libpetsc4py.pyx":1078
* return FunctionEnd()
*
* cdef PetscErrorCode MatDiagonalScale_Python( # <<<<<<<<<<<<<<
@@ -12654,14 +13681,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDiagonalScale_Python(Mat __pyx_v_
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatDiagonalScale_Python", 0);
- /* "libpetsc4py.pyx":1082
+ /* "libpetsc4py.pyx":1084
* ) \
* except IERR with gil:
* FunctionBegin(b"MatDiagonalScale_Python") # <<<<<<<<<<<<<<
@@ -12670,22 +13697,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDiagonalScale_Python(Mat __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatDiagonalScale_Python"));
- /* "libpetsc4py.pyx":1083
+ /* "libpetsc4py.pyx":1085
* except IERR with gil:
* FunctionBegin(b"MatDiagonalScale_Python")
* cdef diagonalScale = PyMat(mat).diagonalScale # <<<<<<<<<<<<<<
* if diagonalScale is None: return UNSUPPORTED(b"diagonalScale")
* diagonalScale(Mat_(mat), Vec_(l), Vec_(r))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1083, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1085, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_diagonalScale); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1083, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_diagonalScale); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1085, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_diagonalScale = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1084
+ /* "libpetsc4py.pyx":1086
* FunctionBegin(b"MatDiagonalScale_Python")
* cdef diagonalScale = PyMat(mat).diagonalScale
* if diagonalScale is None: return UNSUPPORTED(b"diagonalScale") # <<<<<<<<<<<<<<
@@ -12699,23 +13726,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDiagonalScale_Python(Mat __pyx_v_
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1085
+ /* "libpetsc4py.pyx":1087
* cdef diagonalScale = PyMat(mat).diagonalScale
* if diagonalScale is None: return UNSUPPORTED(b"diagonalScale")
* diagonalScale(Mat_(mat), Vec_(l), Vec_(r)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1085, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1087, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_l)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1085, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_l)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1087, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_r)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1085, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_r)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1087, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_diagonalScale);
__pyx_t_7 = __pyx_v_diagonalScale; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -12725,27 +13752,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDiagonalScale_Python(Mat __pyx_v_
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1085, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1085, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1087, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1087, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1087, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1087, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1086
+ /* "libpetsc4py.pyx":1088
* if diagonalScale is None: return UNSUPPORTED(b"diagonalScale")
* diagonalScale(Mat_(mat), Vec_(l), Vec_(r))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -12755,7 +13806,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDiagonalScale_Python(Mat __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1076
+ /* "libpetsc4py.pyx":1078
* return FunctionEnd()
*
* cdef PetscErrorCode MatDiagonalScale_Python( # <<<<<<<<<<<<<<
@@ -12778,12 +13829,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatDiagonalScale_Python(Mat __pyx_v_
__Pyx_XDECREF(__pyx_v_diagonalScale);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1088
+/* "libpetsc4py.pyx":1090
* return FunctionEnd()
*
* cdef PetscErrorCode MatNorm_Python( # <<<<<<<<<<<<<<
@@ -12803,15 +13854,15 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatNorm_Python(Mat __pyx_v_mat, Norm
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
PetscReal __pyx_t_10;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatNorm_Python", 0);
- /* "libpetsc4py.pyx":1094
+ /* "libpetsc4py.pyx":1096
* ) \
* except IERR with gil:
* FunctionBegin(b"MatNorm_Python") # <<<<<<<<<<<<<<
@@ -12820,22 +13871,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatNorm_Python(Mat __pyx_v_mat, Norm
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatNorm_Python"));
- /* "libpetsc4py.pyx":1095
+ /* "libpetsc4py.pyx":1097
* except IERR with gil:
* FunctionBegin(b"MatNorm_Python")
* cdef norm = PyMat(mat).norm # <<<<<<<<<<<<<<
* if norm is None: return UNSUPPORTED(b"norm")
* retval = norm(Mat_(mat), ntype)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1095, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1097, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_norm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1095, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_norm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1097, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_norm = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1096
+ /* "libpetsc4py.pyx":1098
* FunctionBegin(b"MatNorm_Python")
* cdef norm = PyMat(mat).norm
* if norm is None: return UNSUPPORTED(b"norm") # <<<<<<<<<<<<<<
@@ -12849,21 +13900,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatNorm_Python(Mat __pyx_v_mat, Norm
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1097
+ /* "libpetsc4py.pyx":1099
* cdef norm = PyMat(mat).norm
* if norm is None: return UNSUPPORTED(b"norm")
* retval = norm(Mat_(mat), ntype) # <<<<<<<<<<<<<<
* nrm[0] = <PetscReal>retval
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1097, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1099, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __Pyx_PyInt_From_NormType(__pyx_v_ntype); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1097, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyInt_From_NormType(__pyx_v_ntype); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1099, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_norm);
__pyx_t_6 = __pyx_v_norm; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -12873,35 +13924,57 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatNorm_Python(Mat __pyx_v_mat, Norm
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1097, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1099, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1099, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1099, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1099, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1097, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_v_retval = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1098
+ /* "libpetsc4py.pyx":1100
* if norm is None: return UNSUPPORTED(b"norm")
* retval = norm(Mat_(mat), ntype)
* nrm[0] = <PetscReal>retval # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_10 = __pyx_PyFloat_AsDouble(__pyx_v_retval); if (unlikely((__pyx_t_10 == (PetscReal)-1) && PyErr_Occurred())) __PYX_ERR(0, 1098, __pyx_L1_error)
+ __pyx_t_10 = __pyx_PyFloat_AsDouble(__pyx_v_retval); if (unlikely((__pyx_t_10 == ((PetscReal)-1)) && PyErr_Occurred())) __PYX_ERR(0, 1100, __pyx_L1_error)
(__pyx_v_nrm[0]) = ((PetscReal)__pyx_t_10);
- /* "libpetsc4py.pyx":1099
+ /* "libpetsc4py.pyx":1101
* retval = norm(Mat_(mat), ntype)
* nrm[0] = <PetscReal>retval
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -12911,7 +13984,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatNorm_Python(Mat __pyx_v_mat, Norm
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1088
+ /* "libpetsc4py.pyx":1090
* return FunctionEnd()
*
* cdef PetscErrorCode MatNorm_Python( # <<<<<<<<<<<<<<
@@ -12934,12 +14007,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatNorm_Python(Mat __pyx_v_mat, Norm
__Pyx_XDECREF(__pyx_v_retval);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1101
+/* "libpetsc4py.pyx":1103
* return FunctionEnd()
*
* cdef PetscErrorCode MatRealPart_Python( # <<<<<<<<<<<<<<
@@ -12959,11 +14032,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatRealPart_Python(Mat __pyx_v_mat)
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatRealPart_Python", 0);
- /* "libpetsc4py.pyx":1105
+ /* "libpetsc4py.pyx":1107
* ) \
* except IERR with gil:
* FunctionBegin(b"MatRealPart_Python") # <<<<<<<<<<<<<<
@@ -12972,22 +14045,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatRealPart_Python(Mat __pyx_v_mat)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatRealPart_Python"));
- /* "libpetsc4py.pyx":1106
+ /* "libpetsc4py.pyx":1108
* except IERR with gil:
* FunctionBegin(b"MatRealPart_Python")
* cdef realPart = PyMat(mat).realPart # <<<<<<<<<<<<<<
* if realPart is None: return UNSUPPORTED(b"realPart")
* realPart(Mat_(mat))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1106, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1108, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_realPart); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1106, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_realPart); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1108, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_realPart = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1107
+ /* "libpetsc4py.pyx":1109
* FunctionBegin(b"MatRealPart_Python")
* cdef realPart = PyMat(mat).realPart
* if realPart is None: return UNSUPPORTED(b"realPart") # <<<<<<<<<<<<<<
@@ -13001,18 +14074,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatRealPart_Python(Mat __pyx_v_mat)
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1108
+ /* "libpetsc4py.pyx":1110
* cdef realPart = PyMat(mat).realPart
* if realPart is None: return UNSUPPORTED(b"realPart")
* realPart(Mat_(mat)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1108, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1110, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_realPart);
__pyx_t_5 = __pyx_v_realPart; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -13022,24 +14095,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatRealPart_Python(Mat __pyx_v_mat)
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1108, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1110, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1108, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1108, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1110, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1110, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1110, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1110, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1109
+ /* "libpetsc4py.pyx":1111
* if realPart is None: return UNSUPPORTED(b"realPart")
* realPart(Mat_(mat))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13049,7 +14142,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatRealPart_Python(Mat __pyx_v_mat)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1101
+ /* "libpetsc4py.pyx":1103
* return FunctionEnd()
*
* cdef PetscErrorCode MatRealPart_Python( # <<<<<<<<<<<<<<
@@ -13070,12 +14163,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatRealPart_Python(Mat __pyx_v_mat)
__Pyx_XDECREF(__pyx_v_realPart);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1111
+/* "libpetsc4py.pyx":1113
* return FunctionEnd()
*
* cdef PetscErrorCode MatImagPart_Python( # <<<<<<<<<<<<<<
@@ -13095,11 +14188,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatImagPart_Python(Mat __pyx_v_mat)
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatImagPart_Python", 0);
- /* "libpetsc4py.pyx":1115
+ /* "libpetsc4py.pyx":1117
* ) \
* except IERR with gil:
* FunctionBegin(b"MatImagPart_Python") # <<<<<<<<<<<<<<
@@ -13108,22 +14201,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatImagPart_Python(Mat __pyx_v_mat)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatImagPart_Python"));
- /* "libpetsc4py.pyx":1116
+ /* "libpetsc4py.pyx":1118
* except IERR with gil:
* FunctionBegin(b"MatImagPart_Python")
* cdef imagPart = PyMat(mat).imagPart # <<<<<<<<<<<<<<
* if imagPart is None: return UNSUPPORTED(b"imagPart")
* imagPart(Mat_(mat))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1116, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1118, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_imagPart); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1116, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_imagPart); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1118, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_imagPart = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1117
+ /* "libpetsc4py.pyx":1119
* FunctionBegin(b"MatImagPart_Python")
* cdef imagPart = PyMat(mat).imagPart
* if imagPart is None: return UNSUPPORTED(b"imagPart") # <<<<<<<<<<<<<<
@@ -13137,18 +14230,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatImagPart_Python(Mat __pyx_v_mat)
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1118
+ /* "libpetsc4py.pyx":1120
* cdef imagPart = PyMat(mat).imagPart
* if imagPart is None: return UNSUPPORTED(b"imagPart")
* imagPart(Mat_(mat)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1118, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_imagPart);
__pyx_t_5 = __pyx_v_imagPart; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -13158,24 +14251,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatImagPart_Python(Mat __pyx_v_mat)
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1118, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1120, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1118, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1118, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1120, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1119
+ /* "libpetsc4py.pyx":1121
* if imagPart is None: return UNSUPPORTED(b"imagPart")
* imagPart(Mat_(mat))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13185,7 +14298,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatImagPart_Python(Mat __pyx_v_mat)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1111
+ /* "libpetsc4py.pyx":1113
* return FunctionEnd()
*
* cdef PetscErrorCode MatImagPart_Python( # <<<<<<<<<<<<<<
@@ -13206,12 +14319,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatImagPart_Python(Mat __pyx_v_mat)
__Pyx_XDECREF(__pyx_v_imagPart);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1121
+/* "libpetsc4py.pyx":1123
* return FunctionEnd()
*
* cdef PetscErrorCode MatConjugate_Python( # <<<<<<<<<<<<<<
@@ -13231,11 +14344,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatConjugate_Python(Mat __pyx_v_mat)
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("MatConjugate_Python", 0);
- /* "libpetsc4py.pyx":1125
+ /* "libpetsc4py.pyx":1127
* ) \
* except IERR with gil:
* FunctionBegin(b"MatConjugate_Python") # <<<<<<<<<<<<<<
@@ -13244,22 +14357,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatConjugate_Python(Mat __pyx_v_mat)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"MatConjugate_Python"));
- /* "libpetsc4py.pyx":1126
+ /* "libpetsc4py.pyx":1128
* except IERR with gil:
* FunctionBegin(b"MatConjugate_Python")
* cdef conjugate = PyMat(mat).conjugate # <<<<<<<<<<<<<<
* if conjugate is None: return UNSUPPORTED(b"conjugate")
* conjugate(Mat_(mat))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1126, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyMat(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1128, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_conjugate); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1126, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_conjugate); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1128, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_conjugate = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1127
+ /* "libpetsc4py.pyx":1129
* FunctionBegin(b"MatConjugate_Python")
* cdef conjugate = PyMat(mat).conjugate
* if conjugate is None: return UNSUPPORTED(b"conjugate") # <<<<<<<<<<<<<<
@@ -13273,18 +14386,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatConjugate_Python(Mat __pyx_v_mat)
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1128
+ /* "libpetsc4py.pyx":1130
* cdef conjugate = PyMat(mat).conjugate
* if conjugate is None: return UNSUPPORTED(b"conjugate")
* conjugate(Mat_(mat)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1128, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_mat)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_conjugate);
__pyx_t_5 = __pyx_v_conjugate; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -13294,24 +14407,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatConjugate_Python(Mat __pyx_v_mat)
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1128, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1130, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1128, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1128, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1130, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1129
+ /* "libpetsc4py.pyx":1131
* if conjugate is None: return UNSUPPORTED(b"conjugate")
* conjugate(Mat_(mat))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13321,7 +14454,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatConjugate_Python(Mat __pyx_v_mat)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1121
+ /* "libpetsc4py.pyx":1123
* return FunctionEnd()
*
* cdef PetscErrorCode MatConjugate_Python( # <<<<<<<<<<<<<<
@@ -13342,12 +14475,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_MatConjugate_Python(Mat __pyx_v_mat)
__Pyx_XDECREF(__pyx_v_conjugate);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1153
+/* "libpetsc4py.pyx":1155
* @cython.internal
* cdef class _PyPC(_PyObj): pass
* cdef inline _PyPC PyPC(PetscPC pc): # <<<<<<<<<<<<<<
@@ -13363,7 +14496,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyPC *__pyx_f_11libpetsc4py
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("PyPC", 0);
- /* "libpetsc4py.pyx":1154
+ /* "libpetsc4py.pyx":1156
* cdef class _PyPC(_PyObj): pass
* cdef inline _PyPC PyPC(PetscPC pc):
* if pc != NULL and pc.data != NULL: # <<<<<<<<<<<<<<
@@ -13381,7 +14514,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyPC *__pyx_f_11libpetsc4py
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":1155
+ /* "libpetsc4py.pyx":1157
* cdef inline _PyPC PyPC(PetscPC pc):
* if pc != NULL and pc.data != NULL:
* return <_PyPC>pc.data # <<<<<<<<<<<<<<
@@ -13393,7 +14526,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyPC *__pyx_f_11libpetsc4py
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_v_pc->data);
goto __pyx_L0;
- /* "libpetsc4py.pyx":1154
+ /* "libpetsc4py.pyx":1156
* cdef class _PyPC(_PyObj): pass
* cdef inline _PyPC PyPC(PetscPC pc):
* if pc != NULL and pc.data != NULL: # <<<<<<<<<<<<<<
@@ -13402,7 +14535,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyPC *__pyx_f_11libpetsc4py
*/
}
- /* "libpetsc4py.pyx":1157
+ /* "libpetsc4py.pyx":1159
* return <_PyPC>pc.data
* else:
* return _PyPC.__new__(_PyPC) # <<<<<<<<<<<<<<
@@ -13411,15 +14544,15 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyPC *__pyx_f_11libpetsc4py
*/
/*else*/ {
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyPC(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyPC), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1157, __pyx_L1_error)
+ __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyPC(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyPC), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyPC)))) __PYX_ERR(0, 1157, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyPC)))) __PYX_ERR(0, 1159, __pyx_L1_error)
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_3);
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1153
+ /* "libpetsc4py.pyx":1155
* @cython.internal
* cdef class _PyPC(_PyObj): pass
* cdef inline _PyPC PyPC(PetscPC pc): # <<<<<<<<<<<<<<
@@ -13438,7 +14571,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyPC *__pyx_f_11libpetsc4py
return __pyx_r;
}
-/* "libpetsc4py.pyx":1159
+/* "libpetsc4py.pyx":1161
* return _PyPC.__new__(_PyPC)
*
* cdef public PetscErrorCode PCPythonGetContext(PetscPC pc, void **ctx) \ # <<<<<<<<<<<<<<
@@ -13453,7 +14586,7 @@ PetscErrorCode PCPythonGetContext(PC __pyx_v_pc, void **__pyx_v_ctx) {
int __pyx_t_2;
__Pyx_RefNannySetupContext("PCPythonGetContext", 0);
- /* "libpetsc4py.pyx":1161
+ /* "libpetsc4py.pyx":1163
* cdef public PetscErrorCode PCPythonGetContext(PetscPC pc, void **ctx) \
* except IERR:
* FunctionBegin(b"PCPythonGetContext") # <<<<<<<<<<<<<<
@@ -13462,19 +14595,19 @@ PetscErrorCode PCPythonGetContext(PC __pyx_v_pc, void **__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCPythonGetContext"));
- /* "libpetsc4py.pyx":1162
+ /* "libpetsc4py.pyx":1164
* except IERR:
* FunctionBegin(b"PCPythonGetContext")
* PyPC(pc).getcontext(ctx) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1162, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1164, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1162, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1164, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1163
+ /* "libpetsc4py.pyx":1165
* FunctionBegin(b"PCPythonGetContext")
* PyPC(pc).getcontext(ctx)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13484,7 +14617,7 @@ PetscErrorCode PCPythonGetContext(PC __pyx_v_pc, void **__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1159
+ /* "libpetsc4py.pyx":1161
* return _PyPC.__new__(_PyPC)
*
* cdef public PetscErrorCode PCPythonGetContext(PetscPC pc, void **ctx) \ # <<<<<<<<<<<<<<
@@ -13502,7 +14635,7 @@ PetscErrorCode PCPythonGetContext(PC __pyx_v_pc, void **__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":1165
+/* "libpetsc4py.pyx":1167
* return FunctionEnd()
*
* cdef public PetscErrorCode PCPythonSetContext(PetscPC pc, void *ctx) \ # <<<<<<<<<<<<<<
@@ -13518,7 +14651,7 @@ PetscErrorCode PCPythonSetContext(PC __pyx_v_pc, void *__pyx_v_ctx) {
int __pyx_t_3;
__Pyx_RefNannySetupContext("PCPythonSetContext", 0);
- /* "libpetsc4py.pyx":1167
+ /* "libpetsc4py.pyx":1169
* cdef public PetscErrorCode PCPythonSetContext(PetscPC pc, void *ctx) \
* except IERR:
* FunctionBegin(b"PCPythonSetContext") # <<<<<<<<<<<<<<
@@ -13527,22 +14660,22 @@ PetscErrorCode PCPythonSetContext(PC __pyx_v_pc, void *__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCPythonSetContext"));
- /* "libpetsc4py.pyx":1168
+ /* "libpetsc4py.pyx":1170
* except IERR:
* FunctionBegin(b"PCPythonSetContext")
* PyPC(pc).setcontext(ctx, PC_(pc)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1168, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1170, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1168, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1170, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1168, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1170, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1169
+ /* "libpetsc4py.pyx":1171
* FunctionBegin(b"PCPythonSetContext")
* PyPC(pc).setcontext(ctx, PC_(pc))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13552,7 +14685,7 @@ PetscErrorCode PCPythonSetContext(PC __pyx_v_pc, void *__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1165
+ /* "libpetsc4py.pyx":1167
* return FunctionEnd()
*
* cdef public PetscErrorCode PCPythonSetContext(PetscPC pc, void *ctx) \ # <<<<<<<<<<<<<<
@@ -13571,7 +14704,7 @@ PetscErrorCode PCPythonSetContext(PC __pyx_v_pc, void *__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":1171
+/* "libpetsc4py.pyx":1173
* return FunctionEnd()
*
* cdef PetscErrorCode PCPythonSetType_PYTHON(PetscPC pc, char name[]) \ # <<<<<<<<<<<<<<
@@ -13588,11 +14721,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(PC __pyx_v_pc
PetscErrorCode __pyx_t_3;
int __pyx_t_4;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCPythonSetType_PYTHON", 0);
- /* "libpetsc4py.pyx":1173
+ /* "libpetsc4py.pyx":1175
* cdef PetscErrorCode PCPythonSetType_PYTHON(PetscPC pc, char name[]) \
* except IERR with gil:
* FunctionBegin(b"PCPythonSetType_PYTHON") # <<<<<<<<<<<<<<
@@ -13601,7 +14734,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(PC __pyx_v_pc
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCPythonSetType_PYTHON"));
- /* "libpetsc4py.pyx":1174
+ /* "libpetsc4py.pyx":1176
* except IERR with gil:
* FunctionBegin(b"PCPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX # <<<<<<<<<<<<<<
@@ -13614,40 +14747,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(PC __pyx_v_pc
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1175
+ /* "libpetsc4py.pyx":1177
* FunctionBegin(b"PCPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name) # <<<<<<<<<<<<<<
* PCPythonSetContext(pc, <void*>ctx)
* PyPC(pc).setname(name)
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1175, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1177, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ctx = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1176
+ /* "libpetsc4py.pyx":1178
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name)
* PCPythonSetContext(pc, <void*>ctx) # <<<<<<<<<<<<<<
* PyPC(pc).setname(name)
* return FunctionEnd()
*/
- __pyx_t_3 = PCPythonSetContext(__pyx_v_pc, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1176, __pyx_L1_error)
+ __pyx_t_3 = PCPythonSetContext(__pyx_v_pc, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1178, __pyx_L1_error)
- /* "libpetsc4py.pyx":1177
+ /* "libpetsc4py.pyx":1179
* cdef object ctx = createcontext(name)
* PCPythonSetContext(pc, <void*>ctx)
* PyPC(pc).setname(name) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1177, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1179, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1177, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1179, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1178
+ /* "libpetsc4py.pyx":1180
* PCPythonSetContext(pc, <void*>ctx)
* PyPC(pc).setname(name)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13657,7 +14790,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(PC __pyx_v_pc
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1171
+ /* "libpetsc4py.pyx":1173
* return FunctionEnd()
*
* cdef PetscErrorCode PCPythonSetType_PYTHON(PetscPC pc, char name[]) \ # <<<<<<<<<<<<<<
@@ -13674,12 +14807,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(PC __pyx_v_pc
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1180
+/* "libpetsc4py.pyx":1182
* return FunctionEnd()
*
* cdef PetscErrorCode PCCreate_Python( # <<<<<<<<<<<<<<
@@ -13696,11 +14829,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCCreate_Python", 0);
- /* "libpetsc4py.pyx":1184
+ /* "libpetsc4py.pyx":1186
* ) \
* except IERR with gil:
* FunctionBegin(b"PCCreate_Python") # <<<<<<<<<<<<<<
@@ -13709,7 +14842,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCCreate_Python"));
- /* "libpetsc4py.pyx":1186
+ /* "libpetsc4py.pyx":1188
* FunctionBegin(b"PCCreate_Python")
* #
* cdef PCOps ops = pc.ops # <<<<<<<<<<<<<<
@@ -13719,7 +14852,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
__pyx_t_1 = __pyx_v_pc->ops;
__pyx_v_ops = __pyx_t_1;
- /* "libpetsc4py.pyx":1187
+ /* "libpetsc4py.pyx":1189
* #
* cdef PCOps ops = pc.ops
* ops.reset = PCReset_Python # <<<<<<<<<<<<<<
@@ -13728,7 +14861,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->reset = __pyx_f_11libpetsc4py_PCReset_Python;
- /* "libpetsc4py.pyx":1188
+ /* "libpetsc4py.pyx":1190
* cdef PCOps ops = pc.ops
* ops.reset = PCReset_Python
* ops.destroy = PCDestroy_Python # <<<<<<<<<<<<<<
@@ -13737,7 +14870,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->destroy = __pyx_f_11libpetsc4py_PCDestroy_Python;
- /* "libpetsc4py.pyx":1189
+ /* "libpetsc4py.pyx":1191
* ops.reset = PCReset_Python
* ops.destroy = PCDestroy_Python
* ops.setup = PCSetUp_Python # <<<<<<<<<<<<<<
@@ -13746,7 +14879,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->setup = __pyx_f_11libpetsc4py_PCSetUp_Python;
- /* "libpetsc4py.pyx":1190
+ /* "libpetsc4py.pyx":1192
* ops.destroy = PCDestroy_Python
* ops.setup = PCSetUp_Python
* ops.setfromoptions = PCSetFromOptions_Python # <<<<<<<<<<<<<<
@@ -13755,7 +14888,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->setfromoptions = __pyx_f_11libpetsc4py_PCSetFromOptions_Python;
- /* "libpetsc4py.pyx":1191
+ /* "libpetsc4py.pyx":1193
* ops.setup = PCSetUp_Python
* ops.setfromoptions = PCSetFromOptions_Python
* ops.view = PCView_Python # <<<<<<<<<<<<<<
@@ -13764,7 +14897,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->view = __pyx_f_11libpetsc4py_PCView_Python;
- /* "libpetsc4py.pyx":1192
+ /* "libpetsc4py.pyx":1194
* ops.setfromoptions = PCSetFromOptions_Python
* ops.view = PCView_Python
* ops.presolve = PCPreSolve_Python # <<<<<<<<<<<<<<
@@ -13773,7 +14906,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->presolve = __pyx_f_11libpetsc4py_PCPreSolve_Python;
- /* "libpetsc4py.pyx":1193
+ /* "libpetsc4py.pyx":1195
* ops.view = PCView_Python
* ops.presolve = PCPreSolve_Python
* ops.postsolve = PCPostSolve_Python # <<<<<<<<<<<<<<
@@ -13782,7 +14915,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->postsolve = __pyx_f_11libpetsc4py_PCPostSolve_Python;
- /* "libpetsc4py.pyx":1194
+ /* "libpetsc4py.pyx":1196
* ops.presolve = PCPreSolve_Python
* ops.postsolve = PCPostSolve_Python
* ops.apply = PCApply_Python # <<<<<<<<<<<<<<
@@ -13791,7 +14924,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->apply = __pyx_f_11libpetsc4py_PCApply_Python;
- /* "libpetsc4py.pyx":1195
+ /* "libpetsc4py.pyx":1197
* ops.postsolve = PCPostSolve_Python
* ops.apply = PCApply_Python
* ops.applytranspose = PCApplyTranspose_Python # <<<<<<<<<<<<<<
@@ -13800,7 +14933,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->applytranspose = __pyx_f_11libpetsc4py_PCApplyTranspose_Python;
- /* "libpetsc4py.pyx":1196
+ /* "libpetsc4py.pyx":1198
* ops.apply = PCApply_Python
* ops.applytranspose = PCApplyTranspose_Python
* ops.applysymmetricleft = PCApplySymmetricLeft_Python # <<<<<<<<<<<<<<
@@ -13809,7 +14942,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->applysymmetricleft = __pyx_f_11libpetsc4py_PCApplySymmetricLeft_Python;
- /* "libpetsc4py.pyx":1197
+ /* "libpetsc4py.pyx":1199
* ops.applytranspose = PCApplyTranspose_Python
* ops.applysymmetricleft = PCApplySymmetricLeft_Python
* ops.applysymmetricright = PCApplySymmetricRight_Python # <<<<<<<<<<<<<<
@@ -13818,28 +14951,28 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->applysymmetricright = __pyx_f_11libpetsc4py_PCApplySymmetricRight_Python;
- /* "libpetsc4py.pyx":1199
+ /* "libpetsc4py.pyx":1201
* ops.applysymmetricright = PCApplySymmetricRight_Python
* #
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>pc, b"PCPythonSetType_C",
* <PetscVoidFunction>PCPythonSetType_PYTHON) )
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_pc), ((char *)"PCPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_PCPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1199, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_pc), ((char *)"PCPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_PCPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1201, __pyx_L1_error)
- /* "libpetsc4py.pyx":1203
+ /* "libpetsc4py.pyx":1205
* <PetscVoidFunction>PCPythonSetType_PYTHON) )
* #
* cdef ctx = PyPC(NULL) # <<<<<<<<<<<<<<
* pc.data = <void*> ctx
* Py_INCREF(<PyObject*>pc.data)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1203, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_ctx = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1204
+ /* "libpetsc4py.pyx":1206
* #
* cdef ctx = PyPC(NULL)
* pc.data = <void*> ctx # <<<<<<<<<<<<<<
@@ -13848,7 +14981,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
__pyx_v_pc->data = ((void *)__pyx_v_ctx);
- /* "libpetsc4py.pyx":1205
+ /* "libpetsc4py.pyx":1207
* cdef ctx = PyPC(NULL)
* pc.data = <void*> ctx
* Py_INCREF(<PyObject*>pc.data) # <<<<<<<<<<<<<<
@@ -13857,7 +14990,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
*/
Py_INCREF(((PyObject *)__pyx_v_pc->data));
- /* "libpetsc4py.pyx":1206
+ /* "libpetsc4py.pyx":1208
* pc.data = <void*> ctx
* Py_INCREF(<PyObject*>pc.data)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13867,7 +15000,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1180
+ /* "libpetsc4py.pyx":1182
* return FunctionEnd()
*
* cdef PetscErrorCode PCCreate_Python( # <<<<<<<<<<<<<<
@@ -13884,12 +15017,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCCreate_Python(PC __pyx_v_pc) {
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1208
+/* "libpetsc4py.pyx":1210
* return FunctionEnd()
*
* cdef PetscErrorCode PCDestroy_Python( # <<<<<<<<<<<<<<
@@ -13912,11 +15045,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
PyObject *__pyx_t_10 = NULL;
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCDestroy_Python", 0);
- /* "libpetsc4py.pyx":1212
+ /* "libpetsc4py.pyx":1214
* ) \
* except IERR with gil:
* FunctionBegin(b"PCDestroy_Python") # <<<<<<<<<<<<<<
@@ -13925,16 +15058,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCDestroy_Python"));
- /* "libpetsc4py.pyx":1213
+ /* "libpetsc4py.pyx":1215
* except IERR with gil:
* FunctionBegin(b"PCDestroy_Python")
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>pc, b"PCPythonSetType_C",
* <PetscVoidFunction>NULL) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_pc), ((char *)"PCPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1213, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_pc), ((char *)"PCPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1215, __pyx_L1_error)
- /* "libpetsc4py.pyx":1217
+ /* "libpetsc4py.pyx":1219
* <PetscVoidFunction>NULL) )
* #
* if not Py_IsInitialized(): return FunctionEnd() # <<<<<<<<<<<<<<
@@ -13947,7 +15080,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1218
+ /* "libpetsc4py.pyx":1220
* #
* if not Py_IsInitialized(): return FunctionEnd()
* try: # <<<<<<<<<<<<<<
@@ -13956,7 +15089,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
*/
/*try:*/ {
- /* "libpetsc4py.pyx":1219
+ /* "libpetsc4py.pyx":1221
* if not Py_IsInitialized(): return FunctionEnd()
* try:
* addRef(pc) # <<<<<<<<<<<<<<
@@ -13965,17 +15098,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
*/
__pyx_f_11libpetsc4py_addRef(__pyx_v_pc);
- /* "libpetsc4py.pyx":1220
+ /* "libpetsc4py.pyx":1222
* try:
* addRef(pc)
* PCPythonSetContext(pc, NULL) # <<<<<<<<<<<<<<
* finally:
* delRef(pc)
*/
- __pyx_t_3 = PCPythonSetContext(__pyx_v_pc, NULL); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1220, __pyx_L5_error)
+ __pyx_t_3 = PCPythonSetContext(__pyx_v_pc, NULL); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1222, __pyx_L5_error)
}
- /* "libpetsc4py.pyx":1222
+ /* "libpetsc4py.pyx":1224
* PCPythonSetContext(pc, NULL)
* finally:
* delRef(pc) # <<<<<<<<<<<<<<
@@ -13986,7 +15119,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
/*normal exit:*/{
__pyx_f_11libpetsc4py_delRef(__pyx_v_pc);
- /* "libpetsc4py.pyx":1223
+ /* "libpetsc4py.pyx":1225
* finally:
* delRef(pc)
* Py_DECREF(<PyObject*>pc.data) # <<<<<<<<<<<<<<
@@ -13995,7 +15128,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
*/
Py_DECREF(((PyObject *)__pyx_v_pc->data));
- /* "libpetsc4py.pyx":1224
+ /* "libpetsc4py.pyx":1226
* delRef(pc)
* Py_DECREF(<PyObject*>pc.data)
* pc.data = NULL # <<<<<<<<<<<<<<
@@ -14021,7 +15154,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
__pyx_t_1 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
{
- /* "libpetsc4py.pyx":1222
+ /* "libpetsc4py.pyx":1224
* PCPythonSetContext(pc, NULL)
* finally:
* delRef(pc) # <<<<<<<<<<<<<<
@@ -14030,7 +15163,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
*/
__pyx_f_11libpetsc4py_delRef(__pyx_v_pc);
- /* "libpetsc4py.pyx":1223
+ /* "libpetsc4py.pyx":1225
* finally:
* delRef(pc)
* Py_DECREF(<PyObject*>pc.data) # <<<<<<<<<<<<<<
@@ -14039,7 +15172,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
*/
Py_DECREF(((PyObject *)__pyx_v_pc->data));
- /* "libpetsc4py.pyx":1224
+ /* "libpetsc4py.pyx":1226
* delRef(pc)
* Py_DECREF(<PyObject*>pc.data)
* pc.data = NULL # <<<<<<<<<<<<<<
@@ -14048,7 +15181,6 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
*/
__pyx_v_pc->data = NULL;
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_9);
__Pyx_XGIVEREF(__pyx_t_10);
@@ -14066,7 +15198,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
__pyx_L6:;
}
- /* "libpetsc4py.pyx":1225
+ /* "libpetsc4py.pyx":1227
* Py_DECREF(<PyObject*>pc.data)
* pc.data = NULL
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -14076,7 +15208,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1208
+ /* "libpetsc4py.pyx":1210
* return FunctionEnd()
*
* cdef PetscErrorCode PCDestroy_Python( # <<<<<<<<<<<<<<
@@ -14091,12 +15223,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCDestroy_Python(PC __pyx_v_pc) {
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1227
+/* "libpetsc4py.pyx":1229
* return FunctionEnd()
*
* cdef PetscErrorCode PCSetUp_Python( # <<<<<<<<<<<<<<
@@ -14123,11 +15255,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
PyObject *__pyx_t_9 = NULL;
PCOps __pyx_t_10;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCSetUp_Python", 0);
- /* "libpetsc4py.pyx":1231
+ /* "libpetsc4py.pyx":1233
* ) \
* except IERR with gil:
* FunctionBegin(b"PCSetUp_Python") # <<<<<<<<<<<<<<
@@ -14136,7 +15268,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCSetUp_Python"));
- /* "libpetsc4py.pyx":1234
+ /* "libpetsc4py.pyx":1236
* #
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -14145,30 +15277,30 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":1235
+ /* "libpetsc4py.pyx":1237
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyPC(pc).self is None: # <<<<<<<<<<<<<<
* CHKERR( PetscOptionsGetString(NULL,
* getPrefix(pc), b"-pc_python_type",
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1235, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = (((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1236
+ /* "libpetsc4py.pyx":1238
* cdef PetscBool found = PETSC_FALSE
* if PyPC(pc).self is None:
* CHKERR( PetscOptionsGetString(NULL, # <<<<<<<<<<<<<<
* getPrefix(pc), b"-pc_python_type",
* name,sizeof(name),&found) )
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_pc), ((char *)"-pc_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1236, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_pc), ((char *)"-pc_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1238, __pyx_L1_error)
- /* "libpetsc4py.pyx":1239
+ /* "libpetsc4py.pyx":1241
* getPrefix(pc), b"-pc_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -14185,17 +15317,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
__pyx_L5_bool_binop_done:;
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1240
+ /* "libpetsc4py.pyx":1242
* name,sizeof(name),&found) )
* if found and name[0]:
* CHKERR( PCPythonSetType_PYTHON(pc,name) ) # <<<<<<<<<<<<<<
* if PyPC(pc).self is None:
* return PetscSETERR(PETSC_ERR_USER,
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(__pyx_v_pc, __pyx_v_name); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1240, __pyx_L1_error)
- __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1240, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(__pyx_v_pc, __pyx_v_name); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1242, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1242, __pyx_L1_error)
- /* "libpetsc4py.pyx":1239
+ /* "libpetsc4py.pyx":1241
* getPrefix(pc), b"-pc_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -14204,7 +15336,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1235
+ /* "libpetsc4py.pyx":1237
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyPC(pc).self is None: # <<<<<<<<<<<<<<
@@ -14213,21 +15345,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1241
+ /* "libpetsc4py.pyx":1243
* if found and name[0]:
* CHKERR( PCPythonSetType_PYTHON(pc,name) )
* if PyPC(pc).self is None: # <<<<<<<<<<<<<<
* return PetscSETERR(PETSC_ERR_USER,
* "Python context not set, call one of \n"
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1241, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = (((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":1242
+ /* "libpetsc4py.pyx":1244
* CHKERR( PCPythonSetType_PYTHON(pc,name) )
* if PyPC(pc).self is None:
* return PetscSETERR(PETSC_ERR_USER, # <<<<<<<<<<<<<<
@@ -14237,7 +15369,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
__pyx_r = __pyx_f_11libpetsc4py_PetscSETERR(PETSC_ERR_USER, ((char *)"Python context not set, call one of \n * PCPythonSetType(pc,\"[package.]module.class\")\n * PCSetFromOptions(pc) and pass option -pc_python_type [package.]module.class"));
goto __pyx_L0;
- /* "libpetsc4py.pyx":1241
+ /* "libpetsc4py.pyx":1243
* if found and name[0]:
* CHKERR( PCPythonSetType_PYTHON(pc,name) )
* if PyPC(pc).self is None: # <<<<<<<<<<<<<<
@@ -14246,22 +15378,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1248
+ /* "libpetsc4py.pyx":1250
* "-pc_python_type [package.]module.class")
* #
* cdef setUp = PyPC(pc).setUp # <<<<<<<<<<<<<<
* if setUp is not None:
* setUp(PC_(pc))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1248, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1250, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1248, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1250, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setUp = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":1249
+ /* "libpetsc4py.pyx":1251
* #
* cdef setUp = PyPC(pc).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -14272,18 +15404,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1250
+ /* "libpetsc4py.pyx":1252
* cdef setUp = PyPC(pc).setUp
* if setUp is not None:
* setUp(PC_(pc)) # <<<<<<<<<<<<<<
* #
* cdef o = PyPC(pc)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1250, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1252, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setUp);
__pyx_t_7 = __pyx_v_setUp; __pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -14293,24 +15425,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
}
}
if (!__pyx_t_8) {
- __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1250, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1252, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1250, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1250, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_1};
+ __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1252, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_1};
+ __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1252, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1252, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1252, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "libpetsc4py.pyx":1249
+ /* "libpetsc4py.pyx":1251
* #
* cdef setUp = PyPC(pc).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -14319,19 +15471,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1252
+ /* "libpetsc4py.pyx":1254
* setUp(PC_(pc))
* #
* cdef o = PyPC(pc) # <<<<<<<<<<<<<<
* cdef PCOps ops = pc.ops
* if o.applyTranspose is None:
*/
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1252, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_v_o = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":1253
+ /* "libpetsc4py.pyx":1255
* #
* cdef o = PyPC(pc)
* cdef PCOps ops = pc.ops # <<<<<<<<<<<<<<
@@ -14341,21 +15493,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
__pyx_t_10 = __pyx_v_pc->ops;
__pyx_v_ops = __pyx_t_10;
- /* "libpetsc4py.pyx":1254
+ /* "libpetsc4py.pyx":1256
* cdef o = PyPC(pc)
* cdef PCOps ops = pc.ops
* if o.applyTranspose is None: # <<<<<<<<<<<<<<
* ops.applytranspose = NULL
* if o.applySymmetricLeft is None:
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_o, __pyx_n_s_applyTranspose); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1254, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_o, __pyx_n_s_applyTranspose); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_3 = (__pyx_t_6 == Py_None);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":1255
+ /* "libpetsc4py.pyx":1257
* cdef PCOps ops = pc.ops
* if o.applyTranspose is None:
* ops.applytranspose = NULL # <<<<<<<<<<<<<<
@@ -14364,7 +15516,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->applytranspose = NULL;
- /* "libpetsc4py.pyx":1254
+ /* "libpetsc4py.pyx":1256
* cdef o = PyPC(pc)
* cdef PCOps ops = pc.ops
* if o.applyTranspose is None: # <<<<<<<<<<<<<<
@@ -14373,21 +15525,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1256
+ /* "libpetsc4py.pyx":1258
* if o.applyTranspose is None:
* ops.applytranspose = NULL
* if o.applySymmetricLeft is None: # <<<<<<<<<<<<<<
* ops.applysymmetricleft = NULL
* if o.applySymmetricRight is None:
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_o, __pyx_n_s_applySymmetricLeft); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1256, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_o, __pyx_n_s_applySymmetricLeft); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_2 = (__pyx_t_6 == Py_None);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1257
+ /* "libpetsc4py.pyx":1259
* ops.applytranspose = NULL
* if o.applySymmetricLeft is None:
* ops.applysymmetricleft = NULL # <<<<<<<<<<<<<<
@@ -14396,7 +15548,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->applysymmetricleft = NULL;
- /* "libpetsc4py.pyx":1256
+ /* "libpetsc4py.pyx":1258
* if o.applyTranspose is None:
* ops.applytranspose = NULL
* if o.applySymmetricLeft is None: # <<<<<<<<<<<<<<
@@ -14405,21 +15557,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1258
+ /* "libpetsc4py.pyx":1260
* if o.applySymmetricLeft is None:
* ops.applysymmetricleft = NULL
* if o.applySymmetricRight is None: # <<<<<<<<<<<<<<
* ops.applysymmetricright = NULL
* #
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_o, __pyx_n_s_applySymmetricRight); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1258, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_o, __pyx_n_s_applySymmetricRight); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_3 = (__pyx_t_6 == Py_None);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":1259
+ /* "libpetsc4py.pyx":1261
* ops.applysymmetricleft = NULL
* if o.applySymmetricRight is None:
* ops.applysymmetricright = NULL # <<<<<<<<<<<<<<
@@ -14428,7 +15580,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
__pyx_v_ops->applysymmetricright = NULL;
- /* "libpetsc4py.pyx":1258
+ /* "libpetsc4py.pyx":1260
* if o.applySymmetricLeft is None:
* ops.applysymmetricleft = NULL
* if o.applySymmetricRight is None: # <<<<<<<<<<<<<<
@@ -14437,7 +15589,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1261
+ /* "libpetsc4py.pyx":1263
* ops.applysymmetricright = NULL
* #
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -14447,7 +15599,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1227
+ /* "libpetsc4py.pyx":1229
* return FunctionEnd()
*
* cdef PetscErrorCode PCSetUp_Python( # <<<<<<<<<<<<<<
@@ -14469,12 +15621,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetUp_Python(PC __pyx_v_pc) {
__Pyx_XDECREF(__pyx_v_o);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1263
+/* "libpetsc4py.pyx":1265
* return FunctionEnd()
*
* cdef PetscErrorCode PCReset_Python( # <<<<<<<<<<<<<<
@@ -14494,11 +15646,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCReset_Python", 0);
- /* "libpetsc4py.pyx":1267
+ /* "libpetsc4py.pyx":1269
* ) \
* except IERR with gil:
* if getRef(pc) == 0: return 0 # <<<<<<<<<<<<<<
@@ -14511,7 +15663,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1268
+ /* "libpetsc4py.pyx":1270
* except IERR with gil:
* if getRef(pc) == 0: return 0
* FunctionBegin(b"PCReset_Python") # <<<<<<<<<<<<<<
@@ -14520,22 +15672,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCReset_Python"));
- /* "libpetsc4py.pyx":1269
+ /* "libpetsc4py.pyx":1271
* if getRef(pc) == 0: return 0
* FunctionBegin(b"PCReset_Python")
* cdef reset = PyPC(pc).reset # <<<<<<<<<<<<<<
* if reset is not None:
* reset(PC_(pc))
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1269, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1271, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_reset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1269, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_reset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1271, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_reset = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1270
+ /* "libpetsc4py.pyx":1272
* FunctionBegin(b"PCReset_Python")
* cdef reset = PyPC(pc).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -14546,18 +15698,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
__pyx_t_4 = (__pyx_t_1 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1271
+ /* "libpetsc4py.pyx":1273
* cdef reset = PyPC(pc).reset
* if reset is not None:
* reset(PC_(pc)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1271, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1273, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_reset);
__pyx_t_5 = __pyx_v_reset; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -14567,24 +15719,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
}
}
if (!__pyx_t_6) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1271, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1273, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1271, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_2);
- __pyx_t_2 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1271, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_2};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1273, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_2};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1273, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1273, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_2);
+ __pyx_t_2 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1273, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1270
+ /* "libpetsc4py.pyx":1272
* FunctionBegin(b"PCReset_Python")
* cdef reset = PyPC(pc).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -14593,7 +15765,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
*/
}
- /* "libpetsc4py.pyx":1272
+ /* "libpetsc4py.pyx":1274
* if reset is not None:
* reset(PC_(pc))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -14603,7 +15775,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1263
+ /* "libpetsc4py.pyx":1265
* return FunctionEnd()
*
* cdef PetscErrorCode PCReset_Python( # <<<<<<<<<<<<<<
@@ -14624,12 +15796,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCReset_Python(PC __pyx_v_pc) {
__Pyx_XDECREF(__pyx_v_reset);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1274
+/* "libpetsc4py.pyx":1276
* return FunctionEnd()
*
* cdef PetscErrorCode PCSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -14656,11 +15828,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCSetFromOptions_Python", 0);
- /* "libpetsc4py.pyx":1279
+ /* "libpetsc4py.pyx":1281
* ) \
* except IERR with gil:
* FunctionBegin(b"PCSetFromOptions_Python") # <<<<<<<<<<<<<<
@@ -14669,20 +15841,20 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCSetFromOptions_Python"));
- /* "libpetsc4py.pyx":1281
+ /* "libpetsc4py.pyx":1283
* FunctionBegin(b"PCSetFromOptions_Python")
* #
* cdef char name[2048], *defval = PyPC(pc).getname() # <<<<<<<<<<<<<<
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1281, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == NULL && PyErr_Occurred())) __PYX_ERR(0, 1281, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyPC *)((struct __pyx_obj_11libpetsc4py__PyPC *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == ((char *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 1283, __pyx_L1_error)
__pyx_v_defval = __pyx_t_2;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1282
+ /* "libpetsc4py.pyx":1284
* #
* cdef char name[2048], *defval = PyPC(pc).getname()
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -14691,7 +15863,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":1283
+ /* "libpetsc4py.pyx":1285
* cdef char name[2048], *defval = PyPC(pc).getname()
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject # <<<<<<<<<<<<<<
@@ -14700,16 +15872,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
*/
PetscOptionsObject = __pyx_v_PetscOptionsObject;
- /* "libpetsc4py.pyx":1284
+ /* "libpetsc4py.pyx":1286
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
* CHKERR( PetscOptionsString( # <<<<<<<<<<<<<<
* b"-pc_python_type",b"Python [package.]module[.{class|function}]",
* b"PCPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-pc_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"PCPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1284, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-pc_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"PCPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1286, __pyx_L1_error)
- /* "libpetsc4py.pyx":1286
+ /* "libpetsc4py.pyx":1288
* CHKERR( PetscOptionsString(
* b"-pc_python_type",b"Python [package.]module[.{class|function}]",
* b"PCPythonSetType",defval,name,sizeof(name),&found) ); <void>opts; # <<<<<<<<<<<<<<
@@ -14718,7 +15890,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
*/
((void)PetscOptionsObject);
- /* "libpetsc4py.pyx":1287
+ /* "libpetsc4py.pyx":1289
* b"-pc_python_type",b"Python [package.]module[.{class|function}]",
* b"PCPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -14735,17 +15907,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
__pyx_L4_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1288
+ /* "libpetsc4py.pyx":1290
* b"PCPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]:
* CHKERR( PCPythonSetType_PYTHON(pc,name) ) # <<<<<<<<<<<<<<
* #
* cdef setFromOptions = PyPC(pc).setFromOptions
*/
- __pyx_t_6 = __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(__pyx_v_pc, __pyx_v_name); if (unlikely(__pyx_t_6 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1288, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1288, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_11libpetsc4py_PCPythonSetType_PYTHON(__pyx_v_pc, __pyx_v_name); if (unlikely(__pyx_t_6 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1290, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1290, __pyx_L1_error)
- /* "libpetsc4py.pyx":1287
+ /* "libpetsc4py.pyx":1289
* b"-pc_python_type",b"Python [package.]module[.{class|function}]",
* b"PCPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -14754,22 +15926,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
*/
}
- /* "libpetsc4py.pyx":1290
+ /* "libpetsc4py.pyx":1292
* CHKERR( PCPythonSetType_PYTHON(pc,name) )
* #
* cdef setFromOptions = PyPC(pc).setFromOptions # <<<<<<<<<<<<<<
* if setFromOptions is not None:
* setFromOptions(PC_(pc))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1290, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1292, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1290, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1292, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setFromOptions = __pyx_t_7;
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":1291
+ /* "libpetsc4py.pyx":1293
* #
* cdef setFromOptions = PyPC(pc).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -14780,18 +15952,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1292
+ /* "libpetsc4py.pyx":1294
* cdef setFromOptions = PyPC(pc).setFromOptions
* if setFromOptions is not None:
* setFromOptions(PC_(pc)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1292, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1294, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setFromOptions);
__pyx_t_8 = __pyx_v_setFromOptions; __pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -14801,24 +15973,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
}
}
if (!__pyx_t_9) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1292, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1294, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else {
- __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1292, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1292, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1294, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1294, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1294, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1294, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":1291
+ /* "libpetsc4py.pyx":1293
* #
* cdef setFromOptions = PyPC(pc).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -14827,7 +16019,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
*/
}
- /* "libpetsc4py.pyx":1293
+ /* "libpetsc4py.pyx":1295
* if setFromOptions is not None:
* setFromOptions(PC_(pc))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -14837,7 +16029,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1274
+ /* "libpetsc4py.pyx":1276
* return FunctionEnd()
*
* cdef PetscErrorCode PCSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -14858,12 +16050,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCSetFromOptions_Python(PetscOptionI
__Pyx_XDECREF(__pyx_v_setFromOptions);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1295
+/* "libpetsc4py.pyx":1297
* return FunctionEnd()
*
* cdef PetscErrorCode PCView_Python( # <<<<<<<<<<<<<<
@@ -14883,14 +16075,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCView_Python(PC __pyx_v_pc, PetscVi
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
- PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCView_Python", 0);
- /* "libpetsc4py.pyx":1300
+ /* "libpetsc4py.pyx":1302
* ) \
* except IERR with gil:
* FunctionBegin(b"PCView_Python") # <<<<<<<<<<<<<<
@@ -14899,34 +16090,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCView_Python(PC __pyx_v_pc, PetscVi
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCView_Python"));
- /* "libpetsc4py.pyx":1301
+ /* "libpetsc4py.pyx":1303
* except IERR with gil:
* FunctionBegin(b"PCView_Python")
* viewcontext(PyPC(pc), vwr) # <<<<<<<<<<<<<<
* cdef view = PyPC(pc).view
* if view is not None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1301, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1303, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1301, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1303, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1302
+ /* "libpetsc4py.pyx":1304
* FunctionBegin(b"PCView_Python")
* viewcontext(PyPC(pc), vwr)
* cdef view = PyPC(pc).view # <<<<<<<<<<<<<<
* if view is not None:
* view(PC_(pc), Viewer_(vwr))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1302, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1304, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1302, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1304, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_view = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1303
+ /* "libpetsc4py.pyx":1305
* viewcontext(PyPC(pc), vwr)
* cdef view = PyPC(pc).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -14937,48 +16128,70 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCView_Python(PC __pyx_v_pc, PetscVi
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1304
+ /* "libpetsc4py.pyx":1306
* cdef view = PyPC(pc).view
* if view is not None:
* view(PC_(pc), Viewer_(vwr)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1304, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1306, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1304, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1306, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_view);
__pyx_t_7 = __pyx_v_view; __pyx_t_8 = NULL;
- __pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ __pyx_t_2 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
- __pyx_t_9 = 1;
+ __pyx_t_2 = 1;
}
}
- __pyx_t_10 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1304, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1306, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1306, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1306, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_2, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_2, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1306, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1304, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1303
+ /* "libpetsc4py.pyx":1305
* viewcontext(PyPC(pc), vwr)
* cdef view = PyPC(pc).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -14987,7 +16200,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCView_Python(PC __pyx_v_pc, PetscVi
*/
}
- /* "libpetsc4py.pyx":1305
+ /* "libpetsc4py.pyx":1307
* if view is not None:
* view(PC_(pc), Viewer_(vwr))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -14997,7 +16210,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCView_Python(PC __pyx_v_pc, PetscVi
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1295
+ /* "libpetsc4py.pyx":1297
* return FunctionEnd()
*
* cdef PetscErrorCode PCView_Python( # <<<<<<<<<<<<<<
@@ -15012,19 +16225,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCView_Python(PC __pyx_v_pc, PetscVi
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
- __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_XDECREF(__pyx_t_9);
__Pyx_AddTraceback("libpetsc4py.PCView_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_view);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1307
+/* "libpetsc4py.pyx":1309
* return FunctionEnd()
*
* cdef PetscErrorCode PCPreSolve_Python( # <<<<<<<<<<<<<<
@@ -15045,14 +16258,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPreSolve_Python(PC __pyx_v_pc, KSP
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
+ int __pyx_t_10;
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCPreSolve_Python", 0);
- /* "libpetsc4py.pyx":1314
+ /* "libpetsc4py.pyx":1316
* ) \
* except IERR with gil:
* FunctionBegin(b"PCPreSolve_Python") # <<<<<<<<<<<<<<
@@ -15061,22 +16274,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPreSolve_Python(PC __pyx_v_pc, KSP
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCPreSolve_Python"));
- /* "libpetsc4py.pyx":1315
+ /* "libpetsc4py.pyx":1317
* except IERR with gil:
* FunctionBegin(b"PCPreSolve_Python")
* cdef preSolve = PyPC(pc).preSolve # <<<<<<<<<<<<<<
* if preSolve is not None:
* preSolve(PC_(pc), KSP_(ksp), Vec_(b), Vec_(x))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1315, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_preSolve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1315, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_preSolve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_preSolve = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1316
+ /* "libpetsc4py.pyx":1318
* FunctionBegin(b"PCPreSolve_Python")
* cdef preSolve = PyPC(pc).preSolve
* if preSolve is not None: # <<<<<<<<<<<<<<
@@ -15087,25 +16300,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPreSolve_Python(PC __pyx_v_pc, KSP
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1317
+ /* "libpetsc4py.pyx":1319
* cdef preSolve = PyPC(pc).preSolve
* if preSolve is not None:
* preSolve(PC_(pc), KSP_(ksp), Vec_(b), Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1317, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1319, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1317, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1319, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1317, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1319, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1317, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1319, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_preSolve);
__pyx_t_8 = __pyx_v_preSolve; __pyx_t_9 = NULL;
__pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -15115,30 +16328,56 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPreSolve_Python(PC __pyx_v_pc, KSP
__pyx_t_10 = 1;
}
}
- __pyx_t_11 = PyTuple_New(4+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1317, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1319, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1319, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1319, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_10, __pyx_t_7);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1319, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_10, __pyx_t_7);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1317, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1316
+ /* "libpetsc4py.pyx":1318
* FunctionBegin(b"PCPreSolve_Python")
* cdef preSolve = PyPC(pc).preSolve
* if preSolve is not None: # <<<<<<<<<<<<<<
@@ -15147,7 +16386,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPreSolve_Python(PC __pyx_v_pc, KSP
*/
}
- /* "libpetsc4py.pyx":1318
+ /* "libpetsc4py.pyx":1320
* if preSolve is not None:
* preSolve(PC_(pc), KSP_(ksp), Vec_(b), Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -15157,7 +16396,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPreSolve_Python(PC __pyx_v_pc, KSP
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1307
+ /* "libpetsc4py.pyx":1309
* return FunctionEnd()
*
* cdef PetscErrorCode PCPreSolve_Python( # <<<<<<<<<<<<<<
@@ -15181,12 +16420,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPreSolve_Python(PC __pyx_v_pc, KSP
__Pyx_XDECREF(__pyx_v_preSolve);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1320
+/* "libpetsc4py.pyx":1322
* return FunctionEnd()
*
* cdef PetscErrorCode PCPostSolve_Python( # <<<<<<<<<<<<<<
@@ -15207,14 +16446,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPostSolve_Python(PC __pyx_v_pc, KS
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
+ int __pyx_t_10;
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCPostSolve_Python", 0);
- /* "libpetsc4py.pyx":1327
+ /* "libpetsc4py.pyx":1329
* ) \
* except IERR with gil:
* FunctionBegin(b"PCPostSolve_Python") # <<<<<<<<<<<<<<
@@ -15223,22 +16462,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPostSolve_Python(PC __pyx_v_pc, KS
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCPostSolve_Python"));
- /* "libpetsc4py.pyx":1328
+ /* "libpetsc4py.pyx":1330
* except IERR with gil:
* FunctionBegin(b"PCPostSolve_Python")
* cdef postSolve = PyPC(pc).postSolve # <<<<<<<<<<<<<<
* if postSolve is not None:
* postSolve(PC_(pc), KSP_(ksp), Vec_(b), Vec_(x))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1328, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_postSolve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1328, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_postSolve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_postSolve = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1329
+ /* "libpetsc4py.pyx":1331
* FunctionBegin(b"PCPostSolve_Python")
* cdef postSolve = PyPC(pc).postSolve
* if postSolve is not None: # <<<<<<<<<<<<<<
@@ -15249,25 +16488,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPostSolve_Python(PC __pyx_v_pc, KS
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1330
+ /* "libpetsc4py.pyx":1332
* cdef postSolve = PyPC(pc).postSolve
* if postSolve is not None:
* postSolve(PC_(pc), KSP_(ksp), Vec_(b), Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1330, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_postSolve);
__pyx_t_8 = __pyx_v_postSolve; __pyx_t_9 = NULL;
__pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -15277,30 +16516,56 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPostSolve_Python(PC __pyx_v_pc, KS
__pyx_t_10 = 1;
}
}
- __pyx_t_11 = PyTuple_New(4+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1330, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1332, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1332, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1332, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_10, __pyx_t_7);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1332, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_10, __pyx_t_7);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1330, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1329
+ /* "libpetsc4py.pyx":1331
* FunctionBegin(b"PCPostSolve_Python")
* cdef postSolve = PyPC(pc).postSolve
* if postSolve is not None: # <<<<<<<<<<<<<<
@@ -15309,7 +16574,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPostSolve_Python(PC __pyx_v_pc, KS
*/
}
- /* "libpetsc4py.pyx":1331
+ /* "libpetsc4py.pyx":1333
* if postSolve is not None:
* postSolve(PC_(pc), KSP_(ksp), Vec_(b), Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -15319,7 +16584,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPostSolve_Python(PC __pyx_v_pc, KS
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1320
+ /* "libpetsc4py.pyx":1322
* return FunctionEnd()
*
* cdef PetscErrorCode PCPostSolve_Python( # <<<<<<<<<<<<<<
@@ -15343,12 +16608,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCPostSolve_Python(PC __pyx_v_pc, KS
__Pyx_XDECREF(__pyx_v_postSolve);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1333
+/* "libpetsc4py.pyx":1335
* return FunctionEnd()
*
* cdef PetscErrorCode PCApply_Python( # <<<<<<<<<<<<<<
@@ -15366,14 +16631,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApply_Python(PC __pyx_v_pc, Vec __
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
- Py_ssize_t __pyx_t_7;
+ int __pyx_t_7;
PyObject *__pyx_t_8 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCApply_Python", 0);
- /* "libpetsc4py.pyx":1339
+ /* "libpetsc4py.pyx":1341
* ) \
* except IERR with gil:
* FunctionBegin(b"PCApply_Python") # <<<<<<<<<<<<<<
@@ -15382,38 +16647,38 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApply_Python(PC __pyx_v_pc, Vec __
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCApply_Python"));
- /* "libpetsc4py.pyx":1340
+ /* "libpetsc4py.pyx":1342
* except IERR with gil:
* FunctionBegin(b"PCApply_Python")
* cdef apply = PyPC(pc).apply # <<<<<<<<<<<<<<
* apply(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1340, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1342, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_apply); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1340, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_apply); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1342, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_apply = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1341
+ /* "libpetsc4py.pyx":1343
* FunctionBegin(b"PCApply_Python")
* cdef apply = PyPC(pc).apply
* apply(PC_(pc), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1341, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1343, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1341, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1343, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1341, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1343, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_apply);
__pyx_t_5 = __pyx_v_apply; __pyx_t_6 = NULL;
__pyx_t_7 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -15423,27 +16688,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApply_Python(PC __pyx_v_pc, Vec __
__pyx_t_7 = 1;
}
}
- __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1341, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (__pyx_t_6) {
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1343, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1343, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1343, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (__pyx_t_6) {
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
+ __pyx_t_1 = 0;
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1343, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_4);
- PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
- __pyx_t_1 = 0;
- __pyx_t_3 = 0;
- __pyx_t_4 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1341, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1342
+ /* "libpetsc4py.pyx":1344
* cdef apply = PyPC(pc).apply
* apply(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -15453,7 +16742,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApply_Python(PC __pyx_v_pc, Vec __
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1333
+ /* "libpetsc4py.pyx":1335
* return FunctionEnd()
*
* cdef PetscErrorCode PCApply_Python( # <<<<<<<<<<<<<<
@@ -15476,12 +16765,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApply_Python(PC __pyx_v_pc, Vec __
__Pyx_XDECREF(__pyx_v_apply);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1344
+/* "libpetsc4py.pyx":1346
* return FunctionEnd()
*
* cdef PetscErrorCode PCApplyTranspose_Python( # <<<<<<<<<<<<<<
@@ -15499,14 +16788,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplyTranspose_Python(PC __pyx_v_p
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
- Py_ssize_t __pyx_t_7;
+ int __pyx_t_7;
PyObject *__pyx_t_8 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCApplyTranspose_Python", 0);
- /* "libpetsc4py.pyx":1350
+ /* "libpetsc4py.pyx":1352
* ) \
* except IERR with gil:
* FunctionBegin(b"PCApplyTranspose_Python") # <<<<<<<<<<<<<<
@@ -15515,38 +16804,38 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplyTranspose_Python(PC __pyx_v_p
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCApplyTranspose_Python"));
- /* "libpetsc4py.pyx":1351
+ /* "libpetsc4py.pyx":1353
* except IERR with gil:
* FunctionBegin(b"PCApplyTranspose_Python")
* cdef applyTranspose = PyPC(pc).applyTranspose # <<<<<<<<<<<<<<
* applyTranspose(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1351, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_applyTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1351, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_applyTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_applyTranspose = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1352
+ /* "libpetsc4py.pyx":1354
* FunctionBegin(b"PCApplyTranspose_Python")
* cdef applyTranspose = PyPC(pc).applyTranspose
* applyTranspose(PC_(pc), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1352, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1354, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1352, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1354, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1352, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1354, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_applyTranspose);
__pyx_t_5 = __pyx_v_applyTranspose; __pyx_t_6 = NULL;
__pyx_t_7 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -15556,27 +16845,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplyTranspose_Python(PC __pyx_v_p
__pyx_t_7 = 1;
}
}
- __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1352, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (__pyx_t_6) {
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (__pyx_t_6) {
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
+ __pyx_t_1 = 0;
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1354, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_4);
- PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
- __pyx_t_1 = 0;
- __pyx_t_3 = 0;
- __pyx_t_4 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1352, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1353
+ /* "libpetsc4py.pyx":1355
* cdef applyTranspose = PyPC(pc).applyTranspose
* applyTranspose(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -15586,7 +16899,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplyTranspose_Python(PC __pyx_v_p
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1344
+ /* "libpetsc4py.pyx":1346
* return FunctionEnd()
*
* cdef PetscErrorCode PCApplyTranspose_Python( # <<<<<<<<<<<<<<
@@ -15609,12 +16922,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplyTranspose_Python(PC __pyx_v_p
__Pyx_XDECREF(__pyx_v_applyTranspose);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1355
+/* "libpetsc4py.pyx":1357
* return FunctionEnd()
*
* cdef PetscErrorCode PCApplySymmetricLeft_Python( # <<<<<<<<<<<<<<
@@ -15632,14 +16945,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricLeft_Python(PC __pyx
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
- Py_ssize_t __pyx_t_7;
+ int __pyx_t_7;
PyObject *__pyx_t_8 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCApplySymmetricLeft_Python", 0);
- /* "libpetsc4py.pyx":1361
+ /* "libpetsc4py.pyx":1363
* ) \
* except IERR with gil:
* FunctionBegin(b"PCApplySymmetricLeft_Python") # <<<<<<<<<<<<<<
@@ -15648,38 +16961,38 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricLeft_Python(PC __pyx
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCApplySymmetricLeft_Python"));
- /* "libpetsc4py.pyx":1362
+ /* "libpetsc4py.pyx":1364
* except IERR with gil:
* FunctionBegin(b"PCApplySymmetricLeft_Python")
* cdef applySymmetricLeft = PyPC(pc).applySymmetricLeft # <<<<<<<<<<<<<<
* applySymmetricLeft(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1362, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1364, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_applySymmetricLeft); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1362, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_applySymmetricLeft); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1364, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_applySymmetricLeft = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1363
+ /* "libpetsc4py.pyx":1365
* FunctionBegin(b"PCApplySymmetricLeft_Python")
* cdef applySymmetricLeft = PyPC(pc).applySymmetricLeft
* applySymmetricLeft(PC_(pc), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1363, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1365, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1363, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1365, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1363, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1365, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_applySymmetricLeft);
__pyx_t_5 = __pyx_v_applySymmetricLeft; __pyx_t_6 = NULL;
__pyx_t_7 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -15689,27 +17002,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricLeft_Python(PC __pyx
__pyx_t_7 = 1;
}
}
- __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1363, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (__pyx_t_6) {
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1365, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1365, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1365, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (__pyx_t_6) {
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
+ __pyx_t_1 = 0;
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1365, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_4);
- PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
- __pyx_t_1 = 0;
- __pyx_t_3 = 0;
- __pyx_t_4 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1363, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1364
+ /* "libpetsc4py.pyx":1366
* cdef applySymmetricLeft = PyPC(pc).applySymmetricLeft
* applySymmetricLeft(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -15719,7 +17056,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricLeft_Python(PC __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1355
+ /* "libpetsc4py.pyx":1357
* return FunctionEnd()
*
* cdef PetscErrorCode PCApplySymmetricLeft_Python( # <<<<<<<<<<<<<<
@@ -15742,12 +17079,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricLeft_Python(PC __pyx
__Pyx_XDECREF(__pyx_v_applySymmetricLeft);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1366
+/* "libpetsc4py.pyx":1368
* return FunctionEnd()
*
* cdef PetscErrorCode PCApplySymmetricRight_Python( # <<<<<<<<<<<<<<
@@ -15765,14 +17102,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricRight_Python(PC __py
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
- Py_ssize_t __pyx_t_7;
+ int __pyx_t_7;
PyObject *__pyx_t_8 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PCApplySymmetricRight_Python", 0);
- /* "libpetsc4py.pyx":1372
+ /* "libpetsc4py.pyx":1374
* ) \
* except IERR with gil:
* FunctionBegin(b"PCApplySymmetricRight_Python") # <<<<<<<<<<<<<<
@@ -15781,38 +17118,38 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricRight_Python(PC __py
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PCApplySymmetricRight_Python"));
- /* "libpetsc4py.pyx":1373
+ /* "libpetsc4py.pyx":1375
* except IERR with gil:
* FunctionBegin(b"PCApplySymmetricRight_Python")
* cdef applySymmetricRight = PyPC(pc).applySymmetricRight # <<<<<<<<<<<<<<
* applySymmetricRight(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1373, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyPC(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1375, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_applySymmetricRight); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1373, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_applySymmetricRight); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1375, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_applySymmetricRight = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1374
+ /* "libpetsc4py.pyx":1376
* FunctionBegin(b"PCApplySymmetricRight_Python")
* cdef applySymmetricRight = PyPC(pc).applySymmetricRight
* applySymmetricRight(PC_(pc), Vec_(x), Vec_(y)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1374, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PC_(__pyx_v_pc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1374, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1374, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_applySymmetricRight);
__pyx_t_5 = __pyx_v_applySymmetricRight; __pyx_t_6 = NULL;
__pyx_t_7 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -15822,27 +17159,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricRight_Python(PC __py
__pyx_t_7 = 1;
}
}
- __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1374, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (__pyx_t_6) {
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1376, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_6, __pyx_t_1, __pyx_t_3, __pyx_t_4};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1376, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1376, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (__pyx_t_6) {
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
+ __pyx_t_1 = 0;
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1376, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_4);
- PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_7, __pyx_t_4);
- __pyx_t_1 = 0;
- __pyx_t_3 = 0;
- __pyx_t_4 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1374, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1375
+ /* "libpetsc4py.pyx":1377
* cdef applySymmetricRight = PyPC(pc).applySymmetricRight
* applySymmetricRight(PC_(pc), Vec_(x), Vec_(y))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -15852,7 +17213,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricRight_Python(PC __py
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1366
+ /* "libpetsc4py.pyx":1368
* return FunctionEnd()
*
* cdef PetscErrorCode PCApplySymmetricRight_Python( # <<<<<<<<<<<<<<
@@ -15875,12 +17236,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PCApplySymmetricRight_Python(PC __py
__Pyx_XDECREF(__pyx_v_applySymmetricRight);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1428
+/* "libpetsc4py.pyx":1431
* @cython.internal
* cdef class _PyKSP(_PyObj): pass
* cdef inline _PyKSP PyKSP(PetscKSP ksp): # <<<<<<<<<<<<<<
@@ -15896,7 +17257,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyKSP *__pyx_f_11libpetsc4p
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("PyKSP", 0);
- /* "libpetsc4py.pyx":1429
+ /* "libpetsc4py.pyx":1432
* cdef class _PyKSP(_PyObj): pass
* cdef inline _PyKSP PyKSP(PetscKSP ksp):
* if ksp != NULL and ksp.data != NULL: # <<<<<<<<<<<<<<
@@ -15914,7 +17275,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyKSP *__pyx_f_11libpetsc4p
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":1430
+ /* "libpetsc4py.pyx":1433
* cdef inline _PyKSP PyKSP(PetscKSP ksp):
* if ksp != NULL and ksp.data != NULL:
* return <_PyKSP>ksp.data # <<<<<<<<<<<<<<
@@ -15926,7 +17287,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyKSP *__pyx_f_11libpetsc4p
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_v_ksp->data);
goto __pyx_L0;
- /* "libpetsc4py.pyx":1429
+ /* "libpetsc4py.pyx":1432
* cdef class _PyKSP(_PyObj): pass
* cdef inline _PyKSP PyKSP(PetscKSP ksp):
* if ksp != NULL and ksp.data != NULL: # <<<<<<<<<<<<<<
@@ -15935,7 +17296,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyKSP *__pyx_f_11libpetsc4p
*/
}
- /* "libpetsc4py.pyx":1432
+ /* "libpetsc4py.pyx":1435
* return <_PyKSP>ksp.data
* else:
* return _PyKSP.__new__(_PyKSP) # <<<<<<<<<<<<<<
@@ -15944,15 +17305,15 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyKSP *__pyx_f_11libpetsc4p
*/
/*else*/ {
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyKSP(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyKSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1432, __pyx_L1_error)
+ __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyKSP(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyKSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1435, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyKSP)))) __PYX_ERR(0, 1432, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyKSP)))) __PYX_ERR(0, 1435, __pyx_L1_error)
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_3);
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1428
+ /* "libpetsc4py.pyx":1431
* @cython.internal
* cdef class _PyKSP(_PyObj): pass
* cdef inline _PyKSP PyKSP(PetscKSP ksp): # <<<<<<<<<<<<<<
@@ -15971,7 +17332,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyKSP *__pyx_f_11libpetsc4p
return __pyx_r;
}
-/* "libpetsc4py.pyx":1434
+/* "libpetsc4py.pyx":1437
* return _PyKSP.__new__(_PyKSP)
*
* cdef public PetscErrorCode KSPPythonGetContext(PetscKSP ksp, void **ctx) \ # <<<<<<<<<<<<<<
@@ -15986,7 +17347,7 @@ PetscErrorCode KSPPythonGetContext(KSP __pyx_v_ksp, void **__pyx_v_ctx) {
int __pyx_t_2;
__Pyx_RefNannySetupContext("KSPPythonGetContext", 0);
- /* "libpetsc4py.pyx":1436
+ /* "libpetsc4py.pyx":1439
* cdef public PetscErrorCode KSPPythonGetContext(PetscKSP ksp, void **ctx) \
* except IERR:
* FunctionBegin(b"KSPPythonGetContext") # <<<<<<<<<<<<<<
@@ -15995,19 +17356,19 @@ PetscErrorCode KSPPythonGetContext(KSP __pyx_v_ksp, void **__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPPythonGetContext"));
- /* "libpetsc4py.pyx":1437
+ /* "libpetsc4py.pyx":1440
* except IERR:
* FunctionBegin(b"KSPPythonGetContext")
* PyKSP(ksp).getcontext(ctx) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1437, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1440, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1437, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1440, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1438
+ /* "libpetsc4py.pyx":1441
* FunctionBegin(b"KSPPythonGetContext")
* PyKSP(ksp).getcontext(ctx)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -16017,7 +17378,7 @@ PetscErrorCode KSPPythonGetContext(KSP __pyx_v_ksp, void **__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1434
+ /* "libpetsc4py.pyx":1437
* return _PyKSP.__new__(_PyKSP)
*
* cdef public PetscErrorCode KSPPythonGetContext(PetscKSP ksp, void **ctx) \ # <<<<<<<<<<<<<<
@@ -16035,7 +17396,7 @@ PetscErrorCode KSPPythonGetContext(KSP __pyx_v_ksp, void **__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":1440
+/* "libpetsc4py.pyx":1443
* return FunctionEnd()
*
* cdef public PetscErrorCode KSPPythonSetContext(PetscKSP ksp, void *ctx) \ # <<<<<<<<<<<<<<
@@ -16051,7 +17412,7 @@ PetscErrorCode KSPPythonSetContext(KSP __pyx_v_ksp, void *__pyx_v_ctx) {
int __pyx_t_3;
__Pyx_RefNannySetupContext("KSPPythonSetContext", 0);
- /* "libpetsc4py.pyx":1442
+ /* "libpetsc4py.pyx":1445
* cdef public PetscErrorCode KSPPythonSetContext(PetscKSP ksp, void *ctx) \
* except IERR:
* FunctionBegin(b"KSPPythonSetContext") # <<<<<<<<<<<<<<
@@ -16060,22 +17421,22 @@ PetscErrorCode KSPPythonSetContext(KSP __pyx_v_ksp, void *__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPPythonSetContext"));
- /* "libpetsc4py.pyx":1443
+ /* "libpetsc4py.pyx":1446
* except IERR:
* FunctionBegin(b"KSPPythonSetContext")
* PyKSP(ksp).setcontext(ctx, KSP_(ksp)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1443, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1446, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1443, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1446, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1443, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1446, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1444
+ /* "libpetsc4py.pyx":1447
* FunctionBegin(b"KSPPythonSetContext")
* PyKSP(ksp).setcontext(ctx, KSP_(ksp))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -16085,7 +17446,7 @@ PetscErrorCode KSPPythonSetContext(KSP __pyx_v_ksp, void *__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1440
+ /* "libpetsc4py.pyx":1443
* return FunctionEnd()
*
* cdef public PetscErrorCode KSPPythonSetContext(PetscKSP ksp, void *ctx) \ # <<<<<<<<<<<<<<
@@ -16104,7 +17465,7 @@ PetscErrorCode KSPPythonSetContext(KSP __pyx_v_ksp, void *__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":1446
+/* "libpetsc4py.pyx":1449
* return FunctionEnd()
*
* cdef PetscErrorCode KSPPythonSetType_PYTHON(PetscKSP ksp, char name[]) \ # <<<<<<<<<<<<<<
@@ -16121,11 +17482,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(KSP __pyx_v_
PetscErrorCode __pyx_t_3;
int __pyx_t_4;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPPythonSetType_PYTHON", 0);
- /* "libpetsc4py.pyx":1448
+ /* "libpetsc4py.pyx":1451
* cdef PetscErrorCode KSPPythonSetType_PYTHON(PetscKSP ksp, char name[]) \
* except IERR with gil:
* FunctionBegin(b"KSPPythonSetType_PYTHON") # <<<<<<<<<<<<<<
@@ -16134,7 +17495,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(KSP __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPPythonSetType_PYTHON"));
- /* "libpetsc4py.pyx":1449
+ /* "libpetsc4py.pyx":1452
* except IERR with gil:
* FunctionBegin(b"KSPPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX # <<<<<<<<<<<<<<
@@ -16147,40 +17508,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(KSP __pyx_v_
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1450
+ /* "libpetsc4py.pyx":1453
* FunctionBegin(b"KSPPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name) # <<<<<<<<<<<<<<
* KSPPythonSetContext(ksp, <void*>ctx)
* PyKSP(ksp).setname(name)
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1450, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1453, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ctx = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1451
+ /* "libpetsc4py.pyx":1454
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name)
* KSPPythonSetContext(ksp, <void*>ctx) # <<<<<<<<<<<<<<
* PyKSP(ksp).setname(name)
* return FunctionEnd()
*/
- __pyx_t_3 = KSPPythonSetContext(__pyx_v_ksp, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1451, __pyx_L1_error)
+ __pyx_t_3 = KSPPythonSetContext(__pyx_v_ksp, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1454, __pyx_L1_error)
- /* "libpetsc4py.pyx":1452
+ /* "libpetsc4py.pyx":1455
* cdef object ctx = createcontext(name)
* KSPPythonSetContext(ksp, <void*>ctx)
* PyKSP(ksp).setname(name) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1452, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1452, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1453
+ /* "libpetsc4py.pyx":1456
* KSPPythonSetContext(ksp, <void*>ctx)
* PyKSP(ksp).setname(name)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -16190,7 +17551,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(KSP __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1446
+ /* "libpetsc4py.pyx":1449
* return FunctionEnd()
*
* cdef PetscErrorCode KSPPythonSetType_PYTHON(PetscKSP ksp, char name[]) \ # <<<<<<<<<<<<<<
@@ -16207,12 +17568,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(KSP __pyx_v_
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1455
+/* "libpetsc4py.pyx":1458
* return FunctionEnd()
*
* cdef PetscErrorCode KSPCreate_Python( # <<<<<<<<<<<<<<
@@ -16229,11 +17590,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPCreate_Python", 0);
- /* "libpetsc4py.pyx":1459
+ /* "libpetsc4py.pyx":1462
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPCreate_Python") # <<<<<<<<<<<<<<
@@ -16242,7 +17603,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPCreate_Python"));
- /* "libpetsc4py.pyx":1461
+ /* "libpetsc4py.pyx":1464
* FunctionBegin(b"KSPCreate_Python")
* #
* cdef KSPOps ops = ksp.ops # <<<<<<<<<<<<<<
@@ -16252,7 +17613,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
__pyx_t_1 = __pyx_v_ksp->ops;
__pyx_v_ops = __pyx_t_1;
- /* "libpetsc4py.pyx":1462
+ /* "libpetsc4py.pyx":1465
* #
* cdef KSPOps ops = ksp.ops
* ops.reset = KSPReset_Python # <<<<<<<<<<<<<<
@@ -16261,7 +17622,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->reset = __pyx_f_11libpetsc4py_KSPReset_Python;
- /* "libpetsc4py.pyx":1463
+ /* "libpetsc4py.pyx":1466
* cdef KSPOps ops = ksp.ops
* ops.reset = KSPReset_Python
* ops.destroy = KSPDestroy_Python # <<<<<<<<<<<<<<
@@ -16270,7 +17631,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->destroy = __pyx_f_11libpetsc4py_KSPDestroy_Python;
- /* "libpetsc4py.pyx":1464
+ /* "libpetsc4py.pyx":1467
* ops.reset = KSPReset_Python
* ops.destroy = KSPDestroy_Python
* ops.setup = KSPSetUp_Python # <<<<<<<<<<<<<<
@@ -16279,7 +17640,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->setup = __pyx_f_11libpetsc4py_KSPSetUp_Python;
- /* "libpetsc4py.pyx":1465
+ /* "libpetsc4py.pyx":1468
* ops.destroy = KSPDestroy_Python
* ops.setup = KSPSetUp_Python
* ops.setfromoptions = KSPSetFromOptions_Python # <<<<<<<<<<<<<<
@@ -16288,7 +17649,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->setfromoptions = __pyx_f_11libpetsc4py_KSPSetFromOptions_Python;
- /* "libpetsc4py.pyx":1466
+ /* "libpetsc4py.pyx":1469
* ops.setup = KSPSetUp_Python
* ops.setfromoptions = KSPSetFromOptions_Python
* ops.view = KSPView_Python # <<<<<<<<<<<<<<
@@ -16297,7 +17658,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->view = __pyx_f_11libpetsc4py_KSPView_Python;
- /* "libpetsc4py.pyx":1467
+ /* "libpetsc4py.pyx":1470
* ops.setfromoptions = KSPSetFromOptions_Python
* ops.view = KSPView_Python
* ops.solve = KSPSolve_Python # <<<<<<<<<<<<<<
@@ -16306,7 +17667,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->solve = __pyx_f_11libpetsc4py_KSPSolve_Python;
- /* "libpetsc4py.pyx":1468
+ /* "libpetsc4py.pyx":1471
* ops.view = KSPView_Python
* ops.solve = KSPSolve_Python
* ops.buildsolution = KSPBuildSolution_Python # <<<<<<<<<<<<<<
@@ -16315,7 +17676,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->buildsolution = __pyx_f_11libpetsc4py_KSPBuildSolution_Python;
- /* "libpetsc4py.pyx":1469
+ /* "libpetsc4py.pyx":1472
* ops.solve = KSPSolve_Python
* ops.buildsolution = KSPBuildSolution_Python
* ops.buildresidual = KSPBuildResidual_Python # <<<<<<<<<<<<<<
@@ -16324,28 +17685,28 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ops->buildresidual = __pyx_f_11libpetsc4py_KSPBuildResidual_Python;
- /* "libpetsc4py.pyx":1471
+ /* "libpetsc4py.pyx":1474
* ops.buildresidual = KSPBuildResidual_Python
* #
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>ksp, b"KSPPythonSetType_C",
* <PetscVoidFunction>KSPPythonSetType_PYTHON) )
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ksp), ((char *)"KSPPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1471, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ksp), ((char *)"KSPPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1474, __pyx_L1_error)
- /* "libpetsc4py.pyx":1475
+ /* "libpetsc4py.pyx":1478
* <PetscVoidFunction>KSPPythonSetType_PYTHON) )
* #
* cdef ctx = PyKSP(NULL) # <<<<<<<<<<<<<<
* ksp.data = <void*> ctx
* Py_INCREF(<PyObject*>ksp.data)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1475, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1478, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_ctx = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1476
+ /* "libpetsc4py.pyx":1479
* #
* cdef ctx = PyKSP(NULL)
* ksp.data = <void*> ctx # <<<<<<<<<<<<<<
@@ -16354,7 +17715,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ksp->data = ((void *)__pyx_v_ctx);
- /* "libpetsc4py.pyx":1477
+ /* "libpetsc4py.pyx":1480
* cdef ctx = PyKSP(NULL)
* ksp.data = <void*> ctx
* Py_INCREF(<PyObject*>ksp.data) # <<<<<<<<<<<<<<
@@ -16363,61 +17724,61 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
*/
Py_INCREF(((PyObject *)__pyx_v_ksp->data));
- /* "libpetsc4py.pyx":1479
+ /* "libpetsc4py.pyx":1482
* Py_INCREF(<PyObject*>ksp.data)
* #
* CHKERR( KSPSetSupportedNorm( # <<<<<<<<<<<<<<
* ksp, KSP_NORM_PRECONDITIONED, PC_LEFT, 3) )
* CHKERR( KSPSetSupportedNorm(
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_PRECONDITIONED, PC_LEFT, 3)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1479, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_PRECONDITIONED, PC_LEFT, 3)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1482, __pyx_L1_error)
- /* "libpetsc4py.pyx":1481
+ /* "libpetsc4py.pyx":1484
* CHKERR( KSPSetSupportedNorm(
* ksp, KSP_NORM_PRECONDITIONED, PC_LEFT, 3) )
* CHKERR( KSPSetSupportedNorm( # <<<<<<<<<<<<<<
* ksp, KSP_NORM_UNPRECONDITIONED, PC_RIGHT, 3) )
* CHKERR( KSPSetSupportedNorm(
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_UNPRECONDITIONED, PC_RIGHT, 3)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1481, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_UNPRECONDITIONED, PC_RIGHT, 3)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1484, __pyx_L1_error)
- /* "libpetsc4py.pyx":1483
+ /* "libpetsc4py.pyx":1486
* CHKERR( KSPSetSupportedNorm(
* ksp, KSP_NORM_UNPRECONDITIONED, PC_RIGHT, 3) )
* CHKERR( KSPSetSupportedNorm( # <<<<<<<<<<<<<<
* ksp, KSP_NORM_UNPRECONDITIONED, PC_LEFT, 2) )
* CHKERR( KSPSetSupportedNorm(
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_UNPRECONDITIONED, PC_LEFT, 2)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1483, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_UNPRECONDITIONED, PC_LEFT, 2)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1486, __pyx_L1_error)
- /* "libpetsc4py.pyx":1485
+ /* "libpetsc4py.pyx":1488
* CHKERR( KSPSetSupportedNorm(
* ksp, KSP_NORM_UNPRECONDITIONED, PC_LEFT, 2) )
* CHKERR( KSPSetSupportedNorm( # <<<<<<<<<<<<<<
* ksp, KSP_NORM_PRECONDITIONED, PC_RIGHT, 2) )
* CHKERR( KSPSetSupportedNorm(
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_PRECONDITIONED, PC_RIGHT, 2)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1485, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_PRECONDITIONED, PC_RIGHT, 2)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1488, __pyx_L1_error)
- /* "libpetsc4py.pyx":1487
+ /* "libpetsc4py.pyx":1490
* CHKERR( KSPSetSupportedNorm(
* ksp, KSP_NORM_PRECONDITIONED, PC_RIGHT, 2) )
* CHKERR( KSPSetSupportedNorm( # <<<<<<<<<<<<<<
* ksp, KSP_NORM_PRECONDITIONED, PC_SYMMETRIC, 1) )
* CHKERR( KSPSetSupportedNorm(
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_PRECONDITIONED, PC_SYMMETRIC, 1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1487, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_PRECONDITIONED, PC_SYMMETRIC, 1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1490, __pyx_L1_error)
- /* "libpetsc4py.pyx":1489
+ /* "libpetsc4py.pyx":1492
* CHKERR( KSPSetSupportedNorm(
* ksp, KSP_NORM_PRECONDITIONED, PC_SYMMETRIC, 1) )
* CHKERR( KSPSetSupportedNorm( # <<<<<<<<<<<<<<
* ksp, KSP_NORM_UNPRECONDITIONED, PC_SYMMETRIC, 1) )
* return FunctionEnd()
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_UNPRECONDITIONED, PC_SYMMETRIC, 1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1489, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(KSPSetSupportedNorm(__pyx_v_ksp, KSP_NORM_UNPRECONDITIONED, PC_SYMMETRIC, 1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1492, __pyx_L1_error)
- /* "libpetsc4py.pyx":1491
+ /* "libpetsc4py.pyx":1494
* CHKERR( KSPSetSupportedNorm(
* ksp, KSP_NORM_UNPRECONDITIONED, PC_SYMMETRIC, 1) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -16427,7 +17788,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1455
+ /* "libpetsc4py.pyx":1458
* return FunctionEnd()
*
* cdef PetscErrorCode KSPCreate_Python( # <<<<<<<<<<<<<<
@@ -16444,12 +17805,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPCreate_Python(KSP __pyx_v_ksp) {
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1493
+/* "libpetsc4py.pyx":1496
* return FunctionEnd()
*
* cdef PetscErrorCode KSPDestroy_Python( # <<<<<<<<<<<<<<
@@ -16472,11 +17833,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
PyObject *__pyx_t_10 = NULL;
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPDestroy_Python", 0);
- /* "libpetsc4py.pyx":1497
+ /* "libpetsc4py.pyx":1500
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPDestroy_Python") # <<<<<<<<<<<<<<
@@ -16485,16 +17846,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPDestroy_Python"));
- /* "libpetsc4py.pyx":1498
+ /* "libpetsc4py.pyx":1501
* except IERR with gil:
* FunctionBegin(b"KSPDestroy_Python")
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>ksp, b"KSPPythonSetType_C",
* <PetscVoidFunction>NULL))
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ksp), ((char *)"KSPPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1498, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ksp), ((char *)"KSPPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1501, __pyx_L1_error)
- /* "libpetsc4py.pyx":1502
+ /* "libpetsc4py.pyx":1505
* <PetscVoidFunction>NULL))
* #
* if not Py_IsInitialized(): return FunctionEnd() # <<<<<<<<<<<<<<
@@ -16507,7 +17868,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1503
+ /* "libpetsc4py.pyx":1506
* #
* if not Py_IsInitialized(): return FunctionEnd()
* try: # <<<<<<<<<<<<<<
@@ -16516,7 +17877,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
*/
/*try:*/ {
- /* "libpetsc4py.pyx":1504
+ /* "libpetsc4py.pyx":1507
* if not Py_IsInitialized(): return FunctionEnd()
* try:
* addRef(ksp) # <<<<<<<<<<<<<<
@@ -16525,17 +17886,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_addRef(__pyx_v_ksp);
- /* "libpetsc4py.pyx":1505
+ /* "libpetsc4py.pyx":1508
* try:
* addRef(ksp)
* KSPPythonSetContext(ksp, NULL) # <<<<<<<<<<<<<<
* finally:
* delRef(ksp)
*/
- __pyx_t_3 = KSPPythonSetContext(__pyx_v_ksp, NULL); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1505, __pyx_L5_error)
+ __pyx_t_3 = KSPPythonSetContext(__pyx_v_ksp, NULL); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1508, __pyx_L5_error)
}
- /* "libpetsc4py.pyx":1507
+ /* "libpetsc4py.pyx":1510
* KSPPythonSetContext(ksp, NULL)
* finally:
* delRef(ksp) # <<<<<<<<<<<<<<
@@ -16546,7 +17907,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
/*normal exit:*/{
__pyx_f_11libpetsc4py_delRef(__pyx_v_ksp);
- /* "libpetsc4py.pyx":1508
+ /* "libpetsc4py.pyx":1511
* finally:
* delRef(ksp)
* Py_DECREF(<PyObject*>ksp.data) # <<<<<<<<<<<<<<
@@ -16555,7 +17916,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
*/
Py_DECREF(((PyObject *)__pyx_v_ksp->data));
- /* "libpetsc4py.pyx":1509
+ /* "libpetsc4py.pyx":1512
* delRef(ksp)
* Py_DECREF(<PyObject*>ksp.data)
* ksp.data = NULL # <<<<<<<<<<<<<<
@@ -16581,7 +17942,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
__pyx_t_1 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
{
- /* "libpetsc4py.pyx":1507
+ /* "libpetsc4py.pyx":1510
* KSPPythonSetContext(ksp, NULL)
* finally:
* delRef(ksp) # <<<<<<<<<<<<<<
@@ -16590,7 +17951,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_delRef(__pyx_v_ksp);
- /* "libpetsc4py.pyx":1508
+ /* "libpetsc4py.pyx":1511
* finally:
* delRef(ksp)
* Py_DECREF(<PyObject*>ksp.data) # <<<<<<<<<<<<<<
@@ -16599,7 +17960,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
*/
Py_DECREF(((PyObject *)__pyx_v_ksp->data));
- /* "libpetsc4py.pyx":1509
+ /* "libpetsc4py.pyx":1512
* delRef(ksp)
* Py_DECREF(<PyObject*>ksp.data)
* ksp.data = NULL # <<<<<<<<<<<<<<
@@ -16608,7 +17969,6 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_ksp->data = NULL;
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_9);
__Pyx_XGIVEREF(__pyx_t_10);
@@ -16626,7 +17986,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
__pyx_L6:;
}
- /* "libpetsc4py.pyx":1510
+ /* "libpetsc4py.pyx":1513
* Py_DECREF(<PyObject*>ksp.data)
* ksp.data = NULL
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -16636,7 +17996,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1493
+ /* "libpetsc4py.pyx":1496
* return FunctionEnd()
*
* cdef PetscErrorCode KSPDestroy_Python( # <<<<<<<<<<<<<<
@@ -16651,12 +18011,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPDestroy_Python(KSP __pyx_v_ksp) {
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1512
+/* "libpetsc4py.pyx":1515
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSetUp_Python( # <<<<<<<<<<<<<<
@@ -16680,11 +18040,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPSetUp_Python", 0);
- /* "libpetsc4py.pyx":1516
+ /* "libpetsc4py.pyx":1519
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPSetUp_Python") # <<<<<<<<<<<<<<
@@ -16693,7 +18053,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPSetUp_Python"));
- /* "libpetsc4py.pyx":1519
+ /* "libpetsc4py.pyx":1522
* #
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -16702,30 +18062,30 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":1520
+ /* "libpetsc4py.pyx":1523
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyKSP(ksp).self is None: # <<<<<<<<<<<<<<
* CHKERR( PetscOptionsGetString(NULL,
* getPrefix(ksp), b"-ksp_python_type",
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1520, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1523, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = (((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1521
+ /* "libpetsc4py.pyx":1524
* cdef PetscBool found = PETSC_FALSE
* if PyKSP(ksp).self is None:
* CHKERR( PetscOptionsGetString(NULL, # <<<<<<<<<<<<<<
* getPrefix(ksp), b"-ksp_python_type",
* name,sizeof(name),&found) )
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_ksp), ((char *)"-ksp_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1521, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_ksp), ((char *)"-ksp_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1524, __pyx_L1_error)
- /* "libpetsc4py.pyx":1524
+ /* "libpetsc4py.pyx":1527
* getPrefix(ksp), b"-ksp_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -16742,17 +18102,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
__pyx_L5_bool_binop_done:;
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1525
+ /* "libpetsc4py.pyx":1528
* name,sizeof(name),&found) )
* if found and name[0]:
* CHKERR( KSPPythonSetType_PYTHON(ksp,name) ) # <<<<<<<<<<<<<<
* if PyKSP(ksp).self is None:
* return PetscSETERR(PETSC_ERR_USER,
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(__pyx_v_ksp, __pyx_v_name); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1525, __pyx_L1_error)
- __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1525, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(__pyx_v_ksp, __pyx_v_name); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1528, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1528, __pyx_L1_error)
- /* "libpetsc4py.pyx":1524
+ /* "libpetsc4py.pyx":1527
* getPrefix(ksp), b"-ksp_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -16761,7 +18121,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
*/
}
- /* "libpetsc4py.pyx":1520
+ /* "libpetsc4py.pyx":1523
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyKSP(ksp).self is None: # <<<<<<<<<<<<<<
@@ -16770,21 +18130,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
*/
}
- /* "libpetsc4py.pyx":1526
+ /* "libpetsc4py.pyx":1529
* if found and name[0]:
* CHKERR( KSPPythonSetType_PYTHON(ksp,name) )
* if PyKSP(ksp).self is None: # <<<<<<<<<<<<<<
* return PetscSETERR(PETSC_ERR_USER,
* "Python context not set, call one of \n"
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1526, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1529, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = (((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":1527
+ /* "libpetsc4py.pyx":1530
* CHKERR( KSPPythonSetType_PYTHON(ksp,name) )
* if PyKSP(ksp).self is None:
* return PetscSETERR(PETSC_ERR_USER, # <<<<<<<<<<<<<<
@@ -16794,7 +18154,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
__pyx_r = __pyx_f_11libpetsc4py_PetscSETERR(PETSC_ERR_USER, ((char *)"Python context not set, call one of \n * KSPPythonSetType(ksp,\"[package.]module.class\")\n * KSPSetFromOptions(ksp) and pass option -ksp_python_type [package.]module.class"));
goto __pyx_L0;
- /* "libpetsc4py.pyx":1526
+ /* "libpetsc4py.pyx":1529
* if found and name[0]:
* CHKERR( KSPPythonSetType_PYTHON(ksp,name) )
* if PyKSP(ksp).self is None: # <<<<<<<<<<<<<<
@@ -16803,22 +18163,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
*/
}
- /* "libpetsc4py.pyx":1533
+ /* "libpetsc4py.pyx":1536
* "-ksp_python_type [package.]module.class")
* #
* cdef setUp = PyKSP(ksp).setUp # <<<<<<<<<<<<<<
* if setUp is not None:
* setUp(KSP_(ksp))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1533, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1536, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1533, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1536, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setUp = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":1534
+ /* "libpetsc4py.pyx":1537
* #
* cdef setUp = PyKSP(ksp).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -16829,18 +18189,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1535
+ /* "libpetsc4py.pyx":1538
* cdef setUp = PyKSP(ksp).setUp
* if setUp is not None:
* setUp(KSP_(ksp)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1535, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1538, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setUp);
__pyx_t_7 = __pyx_v_setUp; __pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -16850,24 +18210,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
}
}
if (!__pyx_t_8) {
- __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1535, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1538, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1535, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1535, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_1};
+ __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1538, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_1};
+ __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1538, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1538, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1538, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "libpetsc4py.pyx":1534
+ /* "libpetsc4py.pyx":1537
* #
* cdef setUp = PyKSP(ksp).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -16876,7 +18256,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
*/
}
- /* "libpetsc4py.pyx":1536
+ /* "libpetsc4py.pyx":1539
* if setUp is not None:
* setUp(KSP_(ksp))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -16886,7 +18266,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1512
+ /* "libpetsc4py.pyx":1515
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSetUp_Python( # <<<<<<<<<<<<<<
@@ -16907,12 +18287,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetUp_Python(KSP __pyx_v_ksp) {
__Pyx_XDECREF(__pyx_v_setUp);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1538
+/* "libpetsc4py.pyx":1541
* return FunctionEnd()
*
* cdef PetscErrorCode KSPReset_Python( # <<<<<<<<<<<<<<
@@ -16933,11 +18313,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPReset_Python", 0);
- /* "libpetsc4py.pyx":1542
+ /* "libpetsc4py.pyx":1545
* ) \
* except IERR with gil:
* if getRef(ksp) == 0: return 0 # <<<<<<<<<<<<<<
@@ -16950,7 +18330,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1543
+ /* "libpetsc4py.pyx":1546
* except IERR with gil:
* if getRef(ksp) == 0: return 0
* FunctionBegin(b"KSPReset_Python") # <<<<<<<<<<<<<<
@@ -16959,40 +18339,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPReset_Python"));
- /* "libpetsc4py.pyx":1544
+ /* "libpetsc4py.pyx":1547
* if getRef(ksp) == 0: return 0
* FunctionBegin(b"KSPReset_Python")
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_sol",NULL) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_res",NULL) )
* cdef reset = PyKSP(ksp).reset
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_sol"), NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1544, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_sol"), NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1547, __pyx_L1_error)
- /* "libpetsc4py.pyx":1545
+ /* "libpetsc4py.pyx":1548
* FunctionBegin(b"KSPReset_Python")
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_sol",NULL) )
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_res",NULL) ) # <<<<<<<<<<<<<<
* cdef reset = PyKSP(ksp).reset
* if reset is not None:
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_res"), NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1545, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_res"), NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1548, __pyx_L1_error)
- /* "libpetsc4py.pyx":1546
+ /* "libpetsc4py.pyx":1549
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_sol",NULL) )
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_res",NULL) )
* cdef reset = PyKSP(ksp).reset # <<<<<<<<<<<<<<
* if reset is not None:
* reset(KSP_(ksp))
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1546, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reset); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1546, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reset); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_reset = __pyx_t_4;
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":1547
+ /* "libpetsc4py.pyx":1550
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_res",NULL) )
* cdef reset = PyKSP(ksp).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -17003,18 +18383,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
__pyx_t_5 = (__pyx_t_1 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1548
+ /* "libpetsc4py.pyx":1551
* cdef reset = PyKSP(ksp).reset
* if reset is not None:
* reset(KSP_(ksp)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1548, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1551, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_reset);
__pyx_t_6 = __pyx_v_reset; __pyx_t_7 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -17024,24 +18404,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
}
}
if (!__pyx_t_7) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1548, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1551, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1548, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_3);
- __pyx_t_3 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1548, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_3};
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1551, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_3};
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1551, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1551, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_3);
+ __pyx_t_3 = 0;
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1551, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "libpetsc4py.pyx":1547
+ /* "libpetsc4py.pyx":1550
* CHKERR( PetscObjectCompose(<PetscObject>ksp,b"@ksp.vec_work_res",NULL) )
* cdef reset = PyKSP(ksp).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -17050,7 +18450,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
*/
}
- /* "libpetsc4py.pyx":1549
+ /* "libpetsc4py.pyx":1552
* if reset is not None:
* reset(KSP_(ksp))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -17060,7 +18460,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1538
+ /* "libpetsc4py.pyx":1541
* return FunctionEnd()
*
* cdef PetscErrorCode KSPReset_Python( # <<<<<<<<<<<<<<
@@ -17081,12 +18481,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPReset_Python(KSP __pyx_v_ksp) {
__Pyx_XDECREF(__pyx_v_reset);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1551
+/* "libpetsc4py.pyx":1554
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -17113,11 +18513,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPSetFromOptions_Python", 0);
- /* "libpetsc4py.pyx":1556
+ /* "libpetsc4py.pyx":1559
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPSetFromOptions_Python") # <<<<<<<<<<<<<<
@@ -17126,20 +18526,20 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPSetFromOptions_Python"));
- /* "libpetsc4py.pyx":1558
+ /* "libpetsc4py.pyx":1561
* FunctionBegin(b"KSPSetFromOptions_Python")
* #
* cdef char name[2048], *defval = PyKSP(ksp).getname() # <<<<<<<<<<<<<<
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1558, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1561, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == NULL && PyErr_Occurred())) __PYX_ERR(0, 1558, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyKSP *)((struct __pyx_obj_11libpetsc4py__PyKSP *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == ((char *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 1561, __pyx_L1_error)
__pyx_v_defval = __pyx_t_2;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1559
+ /* "libpetsc4py.pyx":1562
* #
* cdef char name[2048], *defval = PyKSP(ksp).getname()
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -17148,7 +18548,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":1560
+ /* "libpetsc4py.pyx":1563
* cdef char name[2048], *defval = PyKSP(ksp).getname()
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject # <<<<<<<<<<<<<<
@@ -17157,16 +18557,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
*/
PetscOptionsObject = __pyx_v_PetscOptionsObject;
- /* "libpetsc4py.pyx":1561
+ /* "libpetsc4py.pyx":1564
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
* CHKERR( PetscOptionsString( # <<<<<<<<<<<<<<
* b"-ksp_python_type",b"Python [package.]module[.{class|function}]",
* b"KSPPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-ksp_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"KSPPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1561, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-ksp_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"KSPPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1564, __pyx_L1_error)
- /* "libpetsc4py.pyx":1563
+ /* "libpetsc4py.pyx":1566
* CHKERR( PetscOptionsString(
* b"-ksp_python_type",b"Python [package.]module[.{class|function}]",
* b"KSPPythonSetType",defval,name,sizeof(name),&found) ); <void>opts; # <<<<<<<<<<<<<<
@@ -17175,7 +18575,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
*/
((void)PetscOptionsObject);
- /* "libpetsc4py.pyx":1564
+ /* "libpetsc4py.pyx":1567
* b"-ksp_python_type",b"Python [package.]module[.{class|function}]",
* b"KSPPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -17192,17 +18592,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
__pyx_L4_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1565
+ /* "libpetsc4py.pyx":1568
* b"KSPPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]:
* CHKERR( KSPPythonSetType_PYTHON(ksp,name) ) # <<<<<<<<<<<<<<
* #
* cdef setFromOptions = PyKSP(ksp).setFromOptions
*/
- __pyx_t_6 = __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(__pyx_v_ksp, __pyx_v_name); if (unlikely(__pyx_t_6 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1565, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1565, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_11libpetsc4py_KSPPythonSetType_PYTHON(__pyx_v_ksp, __pyx_v_name); if (unlikely(__pyx_t_6 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1568, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1568, __pyx_L1_error)
- /* "libpetsc4py.pyx":1564
+ /* "libpetsc4py.pyx":1567
* b"-ksp_python_type",b"Python [package.]module[.{class|function}]",
* b"KSPPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -17211,22 +18611,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
*/
}
- /* "libpetsc4py.pyx":1567
+ /* "libpetsc4py.pyx":1570
* CHKERR( KSPPythonSetType_PYTHON(ksp,name) )
* #
* cdef setFromOptions = PyKSP(ksp).setFromOptions # <<<<<<<<<<<<<<
* if setFromOptions is not None:
* setFromOptions(KSP_(ksp))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1567, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1570, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1567, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1570, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setFromOptions = __pyx_t_7;
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":1568
+ /* "libpetsc4py.pyx":1571
* #
* cdef setFromOptions = PyKSP(ksp).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -17237,18 +18637,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1569
+ /* "libpetsc4py.pyx":1572
* cdef setFromOptions = PyKSP(ksp).setFromOptions
* if setFromOptions is not None:
* setFromOptions(KSP_(ksp)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1569, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1572, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setFromOptions);
__pyx_t_8 = __pyx_v_setFromOptions; __pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -17258,24 +18658,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
}
}
if (!__pyx_t_9) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1569, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1572, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else {
- __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1569, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1569, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1572, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1572, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1572, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1572, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":1568
+ /* "libpetsc4py.pyx":1571
* #
* cdef setFromOptions = PyKSP(ksp).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -17284,7 +18704,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
*/
}
- /* "libpetsc4py.pyx":1570
+ /* "libpetsc4py.pyx":1573
* if setFromOptions is not None:
* setFromOptions(KSP_(ksp))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -17294,7 +18714,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1551
+ /* "libpetsc4py.pyx":1554
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -17315,12 +18735,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSetFromOptions_Python(PetscOption
__Pyx_XDECREF(__pyx_v_setFromOptions);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1572
+/* "libpetsc4py.pyx":1575
* return FunctionEnd()
*
* cdef PetscErrorCode KSPView_Python( # <<<<<<<<<<<<<<
@@ -17340,14 +18760,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPView_Python(KSP __pyx_v_ksp, Pets
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
- PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPView_Python", 0);
- /* "libpetsc4py.pyx":1577
+ /* "libpetsc4py.pyx":1580
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPView_Python") # <<<<<<<<<<<<<<
@@ -17356,34 +18775,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPView_Python(KSP __pyx_v_ksp, Pets
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPView_Python"));
- /* "libpetsc4py.pyx":1578
+ /* "libpetsc4py.pyx":1581
* except IERR with gil:
* FunctionBegin(b"KSPView_Python")
* viewcontext(PyKSP(ksp), vwr) # <<<<<<<<<<<<<<
* cdef view = PyKSP(ksp).view
* if view is not None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1578, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1581, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1578, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1581, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1579
+ /* "libpetsc4py.pyx":1582
* FunctionBegin(b"KSPView_Python")
* viewcontext(PyKSP(ksp), vwr)
* cdef view = PyKSP(ksp).view # <<<<<<<<<<<<<<
* if view is not None:
* view(KSP_(ksp), Viewer_(vwr))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1579, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1579, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_view = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1580
+ /* "libpetsc4py.pyx":1583
* viewcontext(PyKSP(ksp), vwr)
* cdef view = PyKSP(ksp).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -17394,48 +18813,70 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPView_Python(KSP __pyx_v_ksp, Pets
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1581
+ /* "libpetsc4py.pyx":1584
* cdef view = PyKSP(ksp).view
* if view is not None:
* view(KSP_(ksp), Viewer_(vwr)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1581, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1581, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_view);
__pyx_t_7 = __pyx_v_view; __pyx_t_8 = NULL;
- __pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ __pyx_t_2 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
- __pyx_t_9 = 1;
+ __pyx_t_2 = 1;
}
}
- __pyx_t_10 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1581, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1584, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1584, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1584, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_2, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_2, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1584, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1581, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1580
+ /* "libpetsc4py.pyx":1583
* viewcontext(PyKSP(ksp), vwr)
* cdef view = PyKSP(ksp).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -17444,7 +18885,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPView_Python(KSP __pyx_v_ksp, Pets
*/
}
- /* "libpetsc4py.pyx":1582
+ /* "libpetsc4py.pyx":1585
* if view is not None:
* view(KSP_(ksp), Viewer_(vwr))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -17454,7 +18895,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPView_Python(KSP __pyx_v_ksp, Pets
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1572
+ /* "libpetsc4py.pyx":1575
* return FunctionEnd()
*
* cdef PetscErrorCode KSPView_Python( # <<<<<<<<<<<<<<
@@ -17469,19 +18910,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPView_Python(KSP __pyx_v_ksp, Pets
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
- __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_XDECREF(__pyx_t_9);
__Pyx_AddTraceback("libpetsc4py.KSPView_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_view);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1584
+/* "libpetsc4py.pyx":1587
* return FunctionEnd()
*
* cdef PetscErrorCode KSPBuildSolution_Python( # <<<<<<<<<<<<<<
@@ -17501,15 +18942,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
- int __pyx_t_10;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPBuildSolution_Python", 0);
- /* "libpetsc4py.pyx":1590
+ /* "libpetsc4py.pyx":1593
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPBuildSolution_Python") # <<<<<<<<<<<<<<
@@ -17518,7 +18958,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPBuildSolution_Python"));
- /* "libpetsc4py.pyx":1591
+ /* "libpetsc4py.pyx":1594
* except IERR with gil:
* FunctionBegin(b"KSPBuildSolution_Python")
* cdef PetscVec x = v # <<<<<<<<<<<<<<
@@ -17527,22 +18967,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
*/
__pyx_v_x = __pyx_v_v;
- /* "libpetsc4py.pyx":1592
+ /* "libpetsc4py.pyx":1595
* FunctionBegin(b"KSPBuildSolution_Python")
* cdef PetscVec x = v
* cdef buildSolution = PyKSP(ksp).buildSolution # <<<<<<<<<<<<<<
* if buildSolution is not None:
* if x == NULL: pass # XXX
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1592, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_buildSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1592, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_buildSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_buildSolution = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1593
+ /* "libpetsc4py.pyx":1596
* cdef PetscVec x = v
* cdef buildSolution = PyKSP(ksp).buildSolution
* if buildSolution is not None: # <<<<<<<<<<<<<<
@@ -17553,7 +18993,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1594
+ /* "libpetsc4py.pyx":1597
* cdef buildSolution = PyKSP(ksp).buildSolution
* if buildSolution is not None:
* if x == NULL: pass # XXX # <<<<<<<<<<<<<<
@@ -17564,21 +19004,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
if (__pyx_t_4) {
}
- /* "libpetsc4py.pyx":1595
+ /* "libpetsc4py.pyx":1598
* if buildSolution is not None:
* if x == NULL: pass # XXX
* buildSolution(KSP_(ksp), Vec_(x)) # <<<<<<<<<<<<<<
* if V != NULL: V[0] = x
* else:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1595, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1598, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1595, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1598, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_buildSolution);
__pyx_t_6 = __pyx_v_buildSolution; __pyx_t_7 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -17588,24 +19028,46 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1595, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1598, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_1, __pyx_t_5};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1598, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1598, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1598, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_t_5);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1595, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1596
+ /* "libpetsc4py.pyx":1599
* if x == NULL: pass # XXX
* buildSolution(KSP_(ksp), Vec_(x))
* if V != NULL: V[0] = x # <<<<<<<<<<<<<<
@@ -17617,7 +19079,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
(__pyx_v_V[0]) = __pyx_v_x;
}
- /* "libpetsc4py.pyx":1593
+ /* "libpetsc4py.pyx":1596
* cdef PetscVec x = v
* cdef buildSolution = PyKSP(ksp).buildSolution
* if buildSolution is not None: # <<<<<<<<<<<<<<
@@ -17627,7 +19089,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":1598
+ /* "libpetsc4py.pyx":1601
* if V != NULL: V[0] = x
* else:
* CHKERR( KSPBuildSolutionDefault(ksp, v, V) ) # <<<<<<<<<<<<<<
@@ -17635,11 +19097,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
*
*/
/*else*/ {
- __pyx_t_10 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildSolutionDefault(__pyx_v_ksp, __pyx_v_v, __pyx_v_V)); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(0, 1598, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildSolutionDefault(__pyx_v_ksp, __pyx_v_v, __pyx_v_V)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 1601, __pyx_L1_error)
}
__pyx_L3:;
- /* "libpetsc4py.pyx":1599
+ /* "libpetsc4py.pyx":1602
* else:
* CHKERR( KSPBuildSolutionDefault(ksp, v, V) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -17649,7 +19111,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1584
+ /* "libpetsc4py.pyx":1587
* return FunctionEnd()
*
* cdef PetscErrorCode KSPBuildSolution_Python( # <<<<<<<<<<<<<<
@@ -17671,12 +19133,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildSolution_Python(KSP __pyx_v_
__Pyx_XDECREF(__pyx_v_buildSolution);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1601
+/* "libpetsc4py.pyx":1604
* return FunctionEnd()
*
* cdef PetscErrorCode KSPBuildResidual_Python( # <<<<<<<<<<<<<<
@@ -17696,15 +19158,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
- int __pyx_t_11;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPBuildResidual_Python", 0);
- /* "libpetsc4py.pyx":1608
+ /* "libpetsc4py.pyx":1611
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPBuildResidual_Python") # <<<<<<<<<<<<<<
@@ -17713,22 +19174,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPBuildResidual_Python"));
- /* "libpetsc4py.pyx":1609
+ /* "libpetsc4py.pyx":1612
* except IERR with gil:
* FunctionBegin(b"KSPBuildResidual_Python")
* cdef buildResidual = PyKSP(ksp).buildResidual # <<<<<<<<<<<<<<
* if buildResidual is not None:
* buildResidual(KSP_(ksp), Vec_(t), Vec_(v))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1609, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1612, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_buildResidual); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1609, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_buildResidual); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1612, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_buildResidual = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1610
+ /* "libpetsc4py.pyx":1613
* FunctionBegin(b"KSPBuildResidual_Python")
* cdef buildResidual = PyKSP(ksp).buildResidual
* if buildResidual is not None: # <<<<<<<<<<<<<<
@@ -17739,23 +19200,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1611
+ /* "libpetsc4py.pyx":1614
* cdef buildResidual = PyKSP(ksp).buildResidual
* if buildResidual is not None:
* buildResidual(KSP_(ksp), Vec_(t), Vec_(v)) # <<<<<<<<<<<<<<
* if V != NULL: V[0] = v
* else:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1611, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_t)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1611, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_t)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1611, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_v)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_buildResidual);
__pyx_t_7 = __pyx_v_buildResidual; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -17765,27 +19226,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1611, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1614, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1614, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1614, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1614, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1611, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1612
+ /* "libpetsc4py.pyx":1615
* if buildResidual is not None:
* buildResidual(KSP_(ksp), Vec_(t), Vec_(v))
* if V != NULL: V[0] = v # <<<<<<<<<<<<<<
@@ -17797,7 +19282,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
(__pyx_v_V[0]) = __pyx_v_v;
}
- /* "libpetsc4py.pyx":1610
+ /* "libpetsc4py.pyx":1613
* FunctionBegin(b"KSPBuildResidual_Python")
* cdef buildResidual = PyKSP(ksp).buildResidual
* if buildResidual is not None: # <<<<<<<<<<<<<<
@@ -17807,7 +19292,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":1614
+ /* "libpetsc4py.pyx":1617
* if V != NULL: V[0] = v
* else:
* CHKERR( KSPBuildResidualDefault(ksp, t, v, V) ) # <<<<<<<<<<<<<<
@@ -17815,11 +19300,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
*
*/
/*else*/ {
- __pyx_t_11 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildResidualDefault(__pyx_v_ksp, __pyx_v_t, __pyx_v_v, __pyx_v_V)); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(0, 1614, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildResidualDefault(__pyx_v_ksp, __pyx_v_t, __pyx_v_v, __pyx_v_V)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 1617, __pyx_L1_error)
}
__pyx_L3:;
- /* "libpetsc4py.pyx":1615
+ /* "libpetsc4py.pyx":1618
* else:
* CHKERR( KSPBuildResidualDefault(ksp, t, v, V) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -17829,7 +19314,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1601
+ /* "libpetsc4py.pyx":1604
* return FunctionEnd()
*
* cdef PetscErrorCode KSPBuildResidual_Python( # <<<<<<<<<<<<<<
@@ -17852,12 +19337,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPBuildResidual_Python(KSP __pyx_v_
__Pyx_XDECREF(__pyx_v_buildResidual);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1617
+/* "libpetsc4py.pyx":1620
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSolve_Python( # <<<<<<<<<<<<<<
@@ -17880,15 +19365,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
- PyObject *__pyx_t_11 = NULL;
- PetscErrorCode __pyx_t_12;
+ PyObject *__pyx_t_10 = NULL;
+ PetscErrorCode __pyx_t_11;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPSolve_Python", 0);
- /* "libpetsc4py.pyx":1621
+ /* "libpetsc4py.pyx":1624
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPSolve_Python") # <<<<<<<<<<<<<<
@@ -17897,7 +19381,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPSolve_Python"));
- /* "libpetsc4py.pyx":1622
+ /* "libpetsc4py.pyx":1625
* except IERR with gil:
* FunctionBegin(b"KSPSolve_Python")
* cdef PetscVec B = NULL, X = NULL # <<<<<<<<<<<<<<
@@ -17907,25 +19391,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
__pyx_v_B = NULL;
__pyx_v_X = NULL;
- /* "libpetsc4py.pyx":1623
+ /* "libpetsc4py.pyx":1626
* FunctionBegin(b"KSPSolve_Python")
* cdef PetscVec B = NULL, X = NULL
* CHKERR( KSPGetRhs(ksp,&B) ) # <<<<<<<<<<<<<<
* CHKERR( KSPGetSolution(ksp,&X) )
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPGetRhs(__pyx_v_ksp, (&__pyx_v_B))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1623, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPGetRhs(__pyx_v_ksp, (&__pyx_v_B))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1626, __pyx_L1_error)
- /* "libpetsc4py.pyx":1624
+ /* "libpetsc4py.pyx":1627
* cdef PetscVec B = NULL, X = NULL
* CHKERR( KSPGetRhs(ksp,&B) )
* CHKERR( KSPGetSolution(ksp,&X) ) # <<<<<<<<<<<<<<
* #
* cdef solve = None
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPGetSolution(__pyx_v_ksp, (&__pyx_v_X))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1624, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPGetSolution(__pyx_v_ksp, (&__pyx_v_X))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1627, __pyx_L1_error)
- /* "libpetsc4py.pyx":1626
+ /* "libpetsc4py.pyx":1629
* CHKERR( KSPGetSolution(ksp,&X) )
* #
* cdef solve = None # <<<<<<<<<<<<<<
@@ -17935,7 +19419,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
__Pyx_INCREF(Py_None);
__pyx_v_solve = Py_None;
- /* "libpetsc4py.pyx":1627
+ /* "libpetsc4py.pyx":1630
* #
* cdef solve = None
* if ksp.transpose_solve: # <<<<<<<<<<<<<<
@@ -17944,22 +19428,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
*/
if (__pyx_v_ksp->transpose_solve) {
- /* "libpetsc4py.pyx":1628
+ /* "libpetsc4py.pyx":1631
* cdef solve = None
* if ksp.transpose_solve:
* solve = PyKSP(ksp).solveTranspose # <<<<<<<<<<<<<<
* else:
* solve = PyKSP(ksp).solve
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1628, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1631, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_solveTranspose); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1628, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_solveTranspose); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1631, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF_SET(__pyx_v_solve, __pyx_t_3);
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1627
+ /* "libpetsc4py.pyx":1630
* #
* cdef solve = None
* if ksp.transpose_solve: # <<<<<<<<<<<<<<
@@ -17969,7 +19453,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":1630
+ /* "libpetsc4py.pyx":1633
* solve = PyKSP(ksp).solveTranspose
* else:
* solve = PyKSP(ksp).solve # <<<<<<<<<<<<<<
@@ -17977,9 +19461,9 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
* solve(KSP_(ksp),Vec_(B),Vec_(X))
*/
/*else*/ {
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1630, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1633, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_solve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1630, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_solve); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1633, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF_SET(__pyx_v_solve, __pyx_t_2);
@@ -17987,7 +19471,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
}
__pyx_L3:;
- /* "libpetsc4py.pyx":1631
+ /* "libpetsc4py.pyx":1634
* else:
* solve = PyKSP(ksp).solve
* if solve is not None: # <<<<<<<<<<<<<<
@@ -17998,53 +19482,77 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1632
+ /* "libpetsc4py.pyx":1635
* solve = PyKSP(ksp).solve
* if solve is not None:
* solve(KSP_(ksp),Vec_(B),Vec_(X)) # <<<<<<<<<<<<<<
* else:
* KSPSolve_Python_default(ksp,B,X)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1632, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_B)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1632, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_B)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_X)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1632, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_X)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1635, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_solve);
__pyx_t_8 = __pyx_v_solve; __pyx_t_9 = NULL;
- __pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ __pyx_t_1 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
- __pyx_t_10 = 1;
+ __pyx_t_1 = 1;
+ }
+ }
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_3, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_1, 3+__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1635, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_3, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_1, 3+__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1635, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1635, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
}
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_1, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_1, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_1, __pyx_t_7);
+ __pyx_t_3 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1635, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __pyx_t_11 = PyTuple_New(3+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1632, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_7);
- __pyx_t_3 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1632, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1631
+ /* "libpetsc4py.pyx":1634
* else:
* solve = PyKSP(ksp).solve
* if solve is not None: # <<<<<<<<<<<<<<
@@ -18054,7 +19562,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
goto __pyx_L4;
}
- /* "libpetsc4py.pyx":1634
+ /* "libpetsc4py.pyx":1637
* solve(KSP_(ksp),Vec_(B),Vec_(X))
* else:
* KSPSolve_Python_default(ksp,B,X) # <<<<<<<<<<<<<<
@@ -18062,11 +19570,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
*
*/
/*else*/ {
- __pyx_t_12 = __pyx_f_11libpetsc4py_KSPSolve_Python_default(__pyx_v_ksp, __pyx_v_B, __pyx_v_X); if (unlikely(__pyx_t_12 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1634, __pyx_L1_error)
+ __pyx_t_11 = __pyx_f_11libpetsc4py_KSPSolve_Python_default(__pyx_v_ksp, __pyx_v_B, __pyx_v_X); if (unlikely(__pyx_t_11 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1637, __pyx_L1_error)
}
__pyx_L4:;
- /* "libpetsc4py.pyx":1635
+ /* "libpetsc4py.pyx":1638
* else:
* KSPSolve_Python_default(ksp,B,X)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -18076,7 +19584,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1617
+ /* "libpetsc4py.pyx":1620
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSolve_Python( # <<<<<<<<<<<<<<
@@ -18092,19 +19600,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python(KSP __pyx_v_ksp) {
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
- __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_XDECREF(__pyx_t_10);
__Pyx_AddTraceback("libpetsc4py.KSPSolve_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_solve);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1637
+/* "libpetsc4py.pyx":1640
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSolve_Python_default( # <<<<<<<<<<<<<<
@@ -18125,11 +19633,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
PetscInt __pyx_t_3;
PetscErrorCode __pyx_t_4;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPSolve_Python_default", 0);
- /* "libpetsc4py.pyx":1643
+ /* "libpetsc4py.pyx":1646
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPSolve_Python_default") # <<<<<<<<<<<<<<
@@ -18138,7 +19646,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPSolve_Python_default"));
- /* "libpetsc4py.pyx":1645
+ /* "libpetsc4py.pyx":1648
* FunctionBegin(b"KSPSolve_Python_default")
* #
* cdef PetscVec t = NULL # <<<<<<<<<<<<<<
@@ -18147,16 +19655,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_t = NULL;
- /* "libpetsc4py.pyx":1646
+ /* "libpetsc4py.pyx":1649
* #
* cdef PetscVec t = NULL
* CHKERR( PetscObjectQuery( # <<<<<<<<<<<<<<
* <PetscObject>ksp,
* b"@ksp.vec_work_sol",
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_sol"), ((PetscObject *)(&__pyx_v_t)))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1646, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_sol"), ((PetscObject *)(&__pyx_v_t)))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1649, __pyx_L1_error)
- /* "libpetsc4py.pyx":1650
+ /* "libpetsc4py.pyx":1653
* b"@ksp.vec_work_sol",
* <PetscObject*>&t) )
* if t == NULL: # <<<<<<<<<<<<<<
@@ -18166,25 +19674,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
__pyx_t_2 = ((__pyx_v_t == NULL) != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":1651
+ /* "libpetsc4py.pyx":1654
* <PetscObject*>&t) )
* if t == NULL:
* CHKERR( VecDuplicate(X,&t) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectCompose(
* <PetscObject>ksp,
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_X, (&__pyx_v_t))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1651, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_X, (&__pyx_v_t))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1654, __pyx_L1_error)
- /* "libpetsc4py.pyx":1652
+ /* "libpetsc4py.pyx":1655
* if t == NULL:
* CHKERR( VecDuplicate(X,&t) )
* CHKERR( PetscObjectCompose( # <<<<<<<<<<<<<<
* <PetscObject>ksp,
* b"@ksp.vec_work_sol",
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_sol"), ((PetscObject)__pyx_v_t))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1652, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_sol"), ((PetscObject)__pyx_v_t))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1655, __pyx_L1_error)
- /* "libpetsc4py.pyx":1650
+ /* "libpetsc4py.pyx":1653
* b"@ksp.vec_work_sol",
* <PetscObject*>&t) )
* if t == NULL: # <<<<<<<<<<<<<<
@@ -18193,7 +19701,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
}
- /* "libpetsc4py.pyx":1656
+ /* "libpetsc4py.pyx":1659
* b"@ksp.vec_work_sol",
* <PetscObject>t) )
* cdef PetscVec v = NULL # <<<<<<<<<<<<<<
@@ -18202,16 +19710,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_v = NULL;
- /* "libpetsc4py.pyx":1657
+ /* "libpetsc4py.pyx":1660
* <PetscObject>t) )
* cdef PetscVec v = NULL
* CHKERR( PetscObjectQuery( # <<<<<<<<<<<<<<
* <PetscObject>ksp,
* b"@ksp.vec_work_res",
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_res"), ((PetscObject *)(&__pyx_v_v)))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1657, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_res"), ((PetscObject *)(&__pyx_v_v)))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1660, __pyx_L1_error)
- /* "libpetsc4py.pyx":1661
+ /* "libpetsc4py.pyx":1664
* b"@ksp.vec_work_res",
* <PetscObject*>&v) )
* if v == NULL: # <<<<<<<<<<<<<<
@@ -18221,25 +19729,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
__pyx_t_2 = ((__pyx_v_v == NULL) != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":1662
+ /* "libpetsc4py.pyx":1665
* <PetscObject*>&v) )
* if v == NULL:
* CHKERR( VecDuplicate(B,&v) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectCompose(
* <PetscObject>ksp,
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_B, (&__pyx_v_v))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1662, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_B, (&__pyx_v_v))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1665, __pyx_L1_error)
- /* "libpetsc4py.pyx":1663
+ /* "libpetsc4py.pyx":1666
* if v == NULL:
* CHKERR( VecDuplicate(B,&v) )
* CHKERR( PetscObjectCompose( # <<<<<<<<<<<<<<
* <PetscObject>ksp,
* b"@ksp.vec_work_res",
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_res"), ((PetscObject)__pyx_v_v))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1663, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ksp), ((char *)"@ksp.vec_work_res"), ((PetscObject)__pyx_v_v))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1666, __pyx_L1_error)
- /* "libpetsc4py.pyx":1661
+ /* "libpetsc4py.pyx":1664
* b"@ksp.vec_work_res",
* <PetscObject*>&v) )
* if v == NULL: # <<<<<<<<<<<<<<
@@ -18248,7 +19756,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
}
- /* "libpetsc4py.pyx":1668
+ /* "libpetsc4py.pyx":1671
* <PetscObject>v) )
* #
* cdef PetscInt its = 0 # <<<<<<<<<<<<<<
@@ -18257,7 +19765,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_its = 0;
- /* "libpetsc4py.pyx":1669
+ /* "libpetsc4py.pyx":1672
* #
* cdef PetscInt its = 0
* cdef PetscVec R = NULL # <<<<<<<<<<<<<<
@@ -18266,7 +19774,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_R = NULL;
- /* "libpetsc4py.pyx":1670
+ /* "libpetsc4py.pyx":1673
* cdef PetscInt its = 0
* cdef PetscVec R = NULL
* cdef PetscReal rnorm = 0 # <<<<<<<<<<<<<<
@@ -18275,7 +19783,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_rnorm = 0.0;
- /* "libpetsc4py.pyx":1672
+ /* "libpetsc4py.pyx":1675
* cdef PetscReal rnorm = 0
* #
* ksp.iter = 0 # <<<<<<<<<<<<<<
@@ -18284,7 +19792,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_ksp->its = 0;
- /* "libpetsc4py.pyx":1673
+ /* "libpetsc4py.pyx":1676
* #
* ksp.iter = 0
* ksp.reason = KSP_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -18293,52 +19801,52 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_ksp->reason = KSP_CONVERGED_ITERATING;
- /* "libpetsc4py.pyx":1674
+ /* "libpetsc4py.pyx":1677
* ksp.iter = 0
* ksp.reason = KSP_CONVERGED_ITERATING
* CHKERR( KSPBuildResidual(ksp,t,v,&R) ) # <<<<<<<<<<<<<<
* CHKERR( VecNorm(R,NORM_2,&rnorm) )
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildResidual(__pyx_v_ksp, __pyx_v_t, __pyx_v_v, (&__pyx_v_R))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1674, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildResidual(__pyx_v_ksp, __pyx_v_t, __pyx_v_v, (&__pyx_v_R))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1677, __pyx_L1_error)
- /* "libpetsc4py.pyx":1675
+ /* "libpetsc4py.pyx":1678
* ksp.reason = KSP_CONVERGED_ITERATING
* CHKERR( KSPBuildResidual(ksp,t,v,&R) )
* CHKERR( VecNorm(R,NORM_2,&rnorm) ) # <<<<<<<<<<<<<<
* #
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_R, NORM_2, (&__pyx_v_rnorm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1675, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_R, NORM_2, (&__pyx_v_rnorm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1678, __pyx_L1_error)
- /* "libpetsc4py.pyx":1677
+ /* "libpetsc4py.pyx":1680
* CHKERR( VecNorm(R,NORM_2,&rnorm) )
* #
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) ) # <<<<<<<<<<<<<<
* CHKERR( KSPLogHistory(ksp,ksp.norm) )
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPConverged(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_rnorm, (&__pyx_v_ksp->reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1677, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPConverged(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_rnorm, (&__pyx_v_ksp->reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1680, __pyx_L1_error)
- /* "libpetsc4py.pyx":1678
+ /* "libpetsc4py.pyx":1681
* #
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) )
* CHKERR( KSPLogHistory(ksp,ksp.norm) ) # <<<<<<<<<<<<<<
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
* for its from 0 <= its < ksp.max_its:
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPLogHistory(__pyx_v_ksp, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1678, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPLogHistory(__pyx_v_ksp, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1681, __pyx_L1_error)
- /* "libpetsc4py.pyx":1679
+ /* "libpetsc4py.pyx":1682
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) )
* CHKERR( KSPLogHistory(ksp,ksp.norm) )
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) ) # <<<<<<<<<<<<<<
* for its from 0 <= its < ksp.max_its:
* if ksp.reason: break
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPMonitor(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1679, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPMonitor(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1682, __pyx_L1_error)
- /* "libpetsc4py.pyx":1680
+ /* "libpetsc4py.pyx":1683
* CHKERR( KSPLogHistory(ksp,ksp.norm) )
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
* for its from 0 <= its < ksp.max_its: # <<<<<<<<<<<<<<
@@ -18348,7 +19856,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
__pyx_t_3 = __pyx_v_ksp->max_it;
for (__pyx_v_its = 0; __pyx_v_its < __pyx_t_3; __pyx_v_its++) {
- /* "libpetsc4py.pyx":1681
+ /* "libpetsc4py.pyx":1684
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
* for its from 0 <= its < ksp.max_its:
* if ksp.reason: break # <<<<<<<<<<<<<<
@@ -18359,43 +19867,43 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
goto __pyx_L6_break;
}
- /* "libpetsc4py.pyx":1682
+ /* "libpetsc4py.pyx":1685
* for its from 0 <= its < ksp.max_its:
* if ksp.reason: break
* KSPPreStep_Python(ksp) # <<<<<<<<<<<<<<
* #
* KSPStep_Python(ksp,B,X)
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_KSPPreStep_Python(__pyx_v_ksp); if (unlikely(__pyx_t_4 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1682, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_KSPPreStep_Python(__pyx_v_ksp); if (unlikely(__pyx_t_4 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1685, __pyx_L1_error)
- /* "libpetsc4py.pyx":1684
+ /* "libpetsc4py.pyx":1687
* KSPPreStep_Python(ksp)
* #
* KSPStep_Python(ksp,B,X) # <<<<<<<<<<<<<<
* CHKERR( KSPBuildResidual(ksp,t,v,&R) )
* CHKERR( VecNorm(R,NORM_2,&rnorm) )
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_KSPStep_Python(__pyx_v_ksp, __pyx_v_B, __pyx_v_X); if (unlikely(__pyx_t_4 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1684, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_KSPStep_Python(__pyx_v_ksp, __pyx_v_B, __pyx_v_X); if (unlikely(__pyx_t_4 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1687, __pyx_L1_error)
- /* "libpetsc4py.pyx":1685
+ /* "libpetsc4py.pyx":1688
* #
* KSPStep_Python(ksp,B,X)
* CHKERR( KSPBuildResidual(ksp,t,v,&R) ) # <<<<<<<<<<<<<<
* CHKERR( VecNorm(R,NORM_2,&rnorm) )
* ksp.iter += 1
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildResidual(__pyx_v_ksp, __pyx_v_t, __pyx_v_v, (&__pyx_v_R))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1685, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPBuildResidual(__pyx_v_ksp, __pyx_v_t, __pyx_v_v, (&__pyx_v_R))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1688, __pyx_L1_error)
- /* "libpetsc4py.pyx":1686
+ /* "libpetsc4py.pyx":1689
* KSPStep_Python(ksp,B,X)
* CHKERR( KSPBuildResidual(ksp,t,v,&R) )
* CHKERR( VecNorm(R,NORM_2,&rnorm) ) # <<<<<<<<<<<<<<
* ksp.iter += 1
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_R, NORM_2, (&__pyx_v_rnorm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1686, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_R, NORM_2, (&__pyx_v_rnorm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1689, __pyx_L1_error)
- /* "libpetsc4py.pyx":1687
+ /* "libpetsc4py.pyx":1690
* CHKERR( KSPBuildResidual(ksp,t,v,&R) )
* CHKERR( VecNorm(R,NORM_2,&rnorm) )
* ksp.iter += 1 # <<<<<<<<<<<<<<
@@ -18404,55 +19912,102 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
*/
__pyx_v_ksp->its = (__pyx_v_ksp->its + 1);
- /* "libpetsc4py.pyx":1689
+ /* "libpetsc4py.pyx":1692
* ksp.iter += 1
* #
* KSPPostStep_Python(ksp) # <<<<<<<<<<<<<<
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) )
* CHKERR( KSPLogHistory(ksp,ksp.norm) )
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_KSPPostStep_Python(__pyx_v_ksp); if (unlikely(__pyx_t_4 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1689, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_KSPPostStep_Python(__pyx_v_ksp); if (unlikely(__pyx_t_4 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1692, __pyx_L1_error)
- /* "libpetsc4py.pyx":1690
+ /* "libpetsc4py.pyx":1693
* #
* KSPPostStep_Python(ksp)
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) ) # <<<<<<<<<<<<<<
* CHKERR( KSPLogHistory(ksp,ksp.norm) )
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPConverged(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_rnorm, (&__pyx_v_ksp->reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1690, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPConverged(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_rnorm, (&__pyx_v_ksp->reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1693, __pyx_L1_error)
- /* "libpetsc4py.pyx":1691
+ /* "libpetsc4py.pyx":1694
* KSPPostStep_Python(ksp)
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) )
* CHKERR( KSPLogHistory(ksp,ksp.norm) ) # <<<<<<<<<<<<<<
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
* <void>its # silent unused warning
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPLogHistory(__pyx_v_ksp, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1691, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPLogHistory(__pyx_v_ksp, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1694, __pyx_L1_error)
- /* "libpetsc4py.pyx":1692
+ /* "libpetsc4py.pyx":1695
* CHKERR( KSPConverged(ksp,ksp.iter,rnorm,&ksp.reason) )
* CHKERR( KSPLogHistory(ksp,ksp.norm) )
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) ) # <<<<<<<<<<<<<<
* <void>its # silent unused warning
- * #
+ * if ksp.iter == ksp.max_its:
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPMonitor(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1692, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPMonitor(__pyx_v_ksp, __pyx_v_ksp->its, __pyx_v_ksp->rnorm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1695, __pyx_L1_error)
}
__pyx_L6_break:;
- /* "libpetsc4py.pyx":1693
+ /* "libpetsc4py.pyx":1696
* CHKERR( KSPLogHistory(ksp,ksp.norm) )
* CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
* <void>its # silent unused warning # <<<<<<<<<<<<<<
+ * if ksp.iter == ksp.max_its:
+ * if ksp.reason == KSP_CONVERGED_ITERATING:
+ */
+ ((void)__pyx_v_its);
+
+ /* "libpetsc4py.pyx":1697
+ * CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
+ * <void>its # silent unused warning
+ * if ksp.iter == ksp.max_its: # <<<<<<<<<<<<<<
+ * if ksp.reason == KSP_CONVERGED_ITERATING:
+ * ksp.reason = KSP_DIVERGED_ITS
+ */
+ __pyx_t_2 = ((__pyx_v_ksp->its == __pyx_v_ksp->max_it) != 0);
+ if (__pyx_t_2) {
+
+ /* "libpetsc4py.pyx":1698
+ * <void>its # silent unused warning
+ * if ksp.iter == ksp.max_its:
+ * if ksp.reason == KSP_CONVERGED_ITERATING: # <<<<<<<<<<<<<<
+ * ksp.reason = KSP_DIVERGED_ITS
+ * #
+ */
+ __pyx_t_2 = ((__pyx_v_ksp->reason == KSP_CONVERGED_ITERATING) != 0);
+ if (__pyx_t_2) {
+
+ /* "libpetsc4py.pyx":1699
+ * if ksp.iter == ksp.max_its:
+ * if ksp.reason == KSP_CONVERGED_ITERATING:
+ * ksp.reason = KSP_DIVERGED_ITS # <<<<<<<<<<<<<<
* #
* return FunctionEnd()
*/
- ((void)__pyx_v_its);
+ __pyx_v_ksp->reason = KSP_DIVERGED_ITS;
- /* "libpetsc4py.pyx":1695
+ /* "libpetsc4py.pyx":1698
* <void>its # silent unused warning
+ * if ksp.iter == ksp.max_its:
+ * if ksp.reason == KSP_CONVERGED_ITERATING: # <<<<<<<<<<<<<<
+ * ksp.reason = KSP_DIVERGED_ITS
+ * #
+ */
+ }
+
+ /* "libpetsc4py.pyx":1697
+ * CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
+ * <void>its # silent unused warning
+ * if ksp.iter == ksp.max_its: # <<<<<<<<<<<<<<
+ * if ksp.reason == KSP_CONVERGED_ITERATING:
+ * ksp.reason = KSP_DIVERGED_ITS
+ */
+ }
+
+ /* "libpetsc4py.pyx":1701
+ * ksp.reason = KSP_DIVERGED_ITS
* #
* return FunctionEnd() # <<<<<<<<<<<<<<
*
@@ -18461,7 +20016,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1637
+ /* "libpetsc4py.pyx":1640
* return FunctionEnd()
*
* cdef PetscErrorCode KSPSolve_Python_default( # <<<<<<<<<<<<<<
@@ -18476,12 +20031,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPSolve_Python_default(KSP __pyx_v_
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1697
+/* "libpetsc4py.pyx":1703
* return FunctionEnd()
*
* cdef PetscErrorCode KSPPreStep_Python( # <<<<<<<<<<<<<<
@@ -18501,11 +20056,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP __pyx_v_ksp) {
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPPreStep_Python", 0);
- /* "libpetsc4py.pyx":1701
+ /* "libpetsc4py.pyx":1707
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPPreStep_Python") # <<<<<<<<<<<<<<
@@ -18514,22 +20069,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP __pyx_v_ksp) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPPreStep_Python"));
- /* "libpetsc4py.pyx":1702
+ /* "libpetsc4py.pyx":1708
* except IERR with gil:
* FunctionBegin(b"KSPPreStep_Python")
* cdef preStep = PyKSP(ksp).preStep # <<<<<<<<<<<<<<
* if preStep is not None:
* preStep(KSP_(ksp))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1702, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1708, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_preStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1702, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_preStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1708, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_preStep = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1703
+ /* "libpetsc4py.pyx":1709
* FunctionBegin(b"KSPPreStep_Python")
* cdef preStep = PyKSP(ksp).preStep
* if preStep is not None: # <<<<<<<<<<<<<<
@@ -18540,18 +20095,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP __pyx_v_ksp) {
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1704
+ /* "libpetsc4py.pyx":1710
* cdef preStep = PyKSP(ksp).preStep
* if preStep is not None:
* preStep(KSP_(ksp)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1704, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1710, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_preStep);
__pyx_t_5 = __pyx_v_preStep; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -18561,24 +20116,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP __pyx_v_ksp) {
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1704, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1710, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1704, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1704, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1710, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1710, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1710, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1710, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1703
+ /* "libpetsc4py.pyx":1709
* FunctionBegin(b"KSPPreStep_Python")
* cdef preStep = PyKSP(ksp).preStep
* if preStep is not None: # <<<<<<<<<<<<<<
@@ -18587,7 +20162,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP __pyx_v_ksp) {
*/
}
- /* "libpetsc4py.pyx":1705
+ /* "libpetsc4py.pyx":1711
* if preStep is not None:
* preStep(KSP_(ksp))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -18597,7 +20172,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP __pyx_v_ksp) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1697
+ /* "libpetsc4py.pyx":1703
* return FunctionEnd()
*
* cdef PetscErrorCode KSPPreStep_Python( # <<<<<<<<<<<<<<
@@ -18618,12 +20193,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPreStep_Python(KSP __pyx_v_ksp) {
__Pyx_XDECREF(__pyx_v_preStep);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1707
+/* "libpetsc4py.pyx":1713
* return FunctionEnd()
*
* cdef PetscErrorCode KSPPostStep_Python( # <<<<<<<<<<<<<<
@@ -18643,11 +20218,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP __pyx_v_ksp)
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPPostStep_Python", 0);
- /* "libpetsc4py.pyx":1711
+ /* "libpetsc4py.pyx":1717
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPPostStep_Python") # <<<<<<<<<<<<<<
@@ -18656,22 +20231,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP __pyx_v_ksp)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPPostStep_Python"));
- /* "libpetsc4py.pyx":1712
+ /* "libpetsc4py.pyx":1718
* except IERR with gil:
* FunctionBegin(b"KSPPostStep_Python")
* cdef postStep = PyKSP(ksp).postStep # <<<<<<<<<<<<<<
* if postStep is not None:
* postStep(KSP_(ksp))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1712, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1718, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_postStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1712, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_postStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1718, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_postStep = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1713
+ /* "libpetsc4py.pyx":1719
* FunctionBegin(b"KSPPostStep_Python")
* cdef postStep = PyKSP(ksp).postStep
* if postStep is not None: # <<<<<<<<<<<<<<
@@ -18682,18 +20257,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP __pyx_v_ksp)
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1714
+ /* "libpetsc4py.pyx":1720
* cdef postStep = PyKSP(ksp).postStep
* if postStep is not None:
* postStep(KSP_(ksp)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1714, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1720, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_postStep);
__pyx_t_5 = __pyx_v_postStep; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -18703,24 +20278,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP __pyx_v_ksp)
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1714, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1720, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1714, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1714, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1720, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1720, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1720, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1720, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1713
+ /* "libpetsc4py.pyx":1719
* FunctionBegin(b"KSPPostStep_Python")
* cdef postStep = PyKSP(ksp).postStep
* if postStep is not None: # <<<<<<<<<<<<<<
@@ -18729,7 +20324,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP __pyx_v_ksp)
*/
}
- /* "libpetsc4py.pyx":1715
+ /* "libpetsc4py.pyx":1721
* if postStep is not None:
* postStep(KSP_(ksp))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -18739,7 +20334,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP __pyx_v_ksp)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1707
+ /* "libpetsc4py.pyx":1713
* return FunctionEnd()
*
* cdef PetscErrorCode KSPPostStep_Python( # <<<<<<<<<<<<<<
@@ -18760,12 +20355,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPPostStep_Python(KSP __pyx_v_ksp)
__Pyx_XDECREF(__pyx_v_postStep);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1717
+/* "libpetsc4py.pyx":1723
* return FunctionEnd()
*
* cdef PetscErrorCode KSPStep_Python( # <<<<<<<<<<<<<<
@@ -18785,14 +20380,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSPStep_Python", 0);
- /* "libpetsc4py.pyx":1723
+ /* "libpetsc4py.pyx":1729
* ) \
* except IERR with gil:
* FunctionBegin(b"KSPStep_Python") # <<<<<<<<<<<<<<
@@ -18801,7 +20396,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"KSPStep_Python"));
- /* "libpetsc4py.pyx":1724
+ /* "libpetsc4py.pyx":1730
* except IERR with gil:
* FunctionBegin(b"KSPStep_Python")
* cdef step = None # <<<<<<<<<<<<<<
@@ -18811,7 +20406,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
__Pyx_INCREF(Py_None);
__pyx_v_step = Py_None;
- /* "libpetsc4py.pyx":1725
+ /* "libpetsc4py.pyx":1731
* FunctionBegin(b"KSPStep_Python")
* cdef step = None
* if ksp.transpose_solve: # <<<<<<<<<<<<<<
@@ -18820,22 +20415,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
*/
if (__pyx_v_ksp->transpose_solve) {
- /* "libpetsc4py.pyx":1726
+ /* "libpetsc4py.pyx":1732
* cdef step = None
* if ksp.transpose_solve:
* step = PyKSP(ksp).stepTranspose # <<<<<<<<<<<<<<
* if step is None: return UNSUPPORTED(b"stepTranspose")
* else:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1726, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1732, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_stepTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1726, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_stepTranspose); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1732, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF_SET(__pyx_v_step, __pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1727
+ /* "libpetsc4py.pyx":1733
* if ksp.transpose_solve:
* step = PyKSP(ksp).stepTranspose
* if step is None: return UNSUPPORTED(b"stepTranspose") # <<<<<<<<<<<<<<
@@ -18849,7 +20444,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1725
+ /* "libpetsc4py.pyx":1731
* FunctionBegin(b"KSPStep_Python")
* cdef step = None
* if ksp.transpose_solve: # <<<<<<<<<<<<<<
@@ -18859,7 +20454,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":1729
+ /* "libpetsc4py.pyx":1735
* if step is None: return UNSUPPORTED(b"stepTranspose")
* else:
* step = PyKSP(ksp).step # <<<<<<<<<<<<<<
@@ -18867,15 +20462,15 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
* step(KSP_(ksp),Vec_(B),Vec_(X))
*/
/*else*/ {
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1729, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyKSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1735, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_step); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1729, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_step); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1735, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF_SET(__pyx_v_step, __pyx_t_1);
__pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1730
+ /* "libpetsc4py.pyx":1736
* else:
* step = PyKSP(ksp).step
* if step is None: return UNSUPPORTED(b"step") # <<<<<<<<<<<<<<
@@ -18891,23 +20486,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
}
__pyx_L3:;
- /* "libpetsc4py.pyx":1731
+ /* "libpetsc4py.pyx":1737
* step = PyKSP(ksp).step
* if step is None: return UNSUPPORTED(b"step")
* step(KSP_(ksp),Vec_(B),Vec_(X)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1731, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_KSP_(__pyx_v_ksp)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_B)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1731, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_B)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_X)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1731, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_X)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_step);
__pyx_t_7 = __pyx_v_step; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -18917,27 +20512,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1731, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_2, __pyx_t_5, __pyx_t_6};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1737, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_2, __pyx_t_5, __pyx_t_6};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1737, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1737, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_2);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_2 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1737, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_2 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1731, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1732
+ /* "libpetsc4py.pyx":1738
* if step is None: return UNSUPPORTED(b"step")
* step(KSP_(ksp),Vec_(B),Vec_(X))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -18947,7 +20566,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1717
+ /* "libpetsc4py.pyx":1723
* return FunctionEnd()
*
* cdef PetscErrorCode KSPStep_Python( # <<<<<<<<<<<<<<
@@ -18970,12 +20589,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_KSPStep_Python(KSP __pyx_v_ksp, Vec
__Pyx_XDECREF(__pyx_v_step);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1783
+/* "libpetsc4py.pyx":1793
* @cython.internal
* cdef class _PySNES(_PyObj): pass
* cdef inline _PySNES PySNES(PetscSNES snes): # <<<<<<<<<<<<<<
@@ -18991,7 +20610,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PySNES *__pyx_f_11libpetsc4
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("PySNES", 0);
- /* "libpetsc4py.pyx":1784
+ /* "libpetsc4py.pyx":1794
* cdef class _PySNES(_PyObj): pass
* cdef inline _PySNES PySNES(PetscSNES snes):
* if snes != NULL and snes.data != NULL: # <<<<<<<<<<<<<<
@@ -19009,7 +20628,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PySNES *__pyx_f_11libpetsc4
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":1785
+ /* "libpetsc4py.pyx":1795
* cdef inline _PySNES PySNES(PetscSNES snes):
* if snes != NULL and snes.data != NULL:
* return <_PySNES>snes.data # <<<<<<<<<<<<<<
@@ -19021,7 +20640,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PySNES *__pyx_f_11libpetsc4
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_v_snes->data);
goto __pyx_L0;
- /* "libpetsc4py.pyx":1784
+ /* "libpetsc4py.pyx":1794
* cdef class _PySNES(_PyObj): pass
* cdef inline _PySNES PySNES(PetscSNES snes):
* if snes != NULL and snes.data != NULL: # <<<<<<<<<<<<<<
@@ -19030,7 +20649,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PySNES *__pyx_f_11libpetsc4
*/
}
- /* "libpetsc4py.pyx":1787
+ /* "libpetsc4py.pyx":1797
* return <_PySNES>snes.data
* else:
* return _PySNES.__new__(_PySNES) # <<<<<<<<<<<<<<
@@ -19039,15 +20658,15 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PySNES *__pyx_f_11libpetsc4
*/
/*else*/ {
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PySNES(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PySNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1787, __pyx_L1_error)
+ __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PySNES(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PySNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1797, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PySNES)))) __PYX_ERR(0, 1787, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PySNES)))) __PYX_ERR(0, 1797, __pyx_L1_error)
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_3);
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1783
+ /* "libpetsc4py.pyx":1793
* @cython.internal
* cdef class _PySNES(_PyObj): pass
* cdef inline _PySNES PySNES(PetscSNES snes): # <<<<<<<<<<<<<<
@@ -19066,7 +20685,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PySNES *__pyx_f_11libpetsc4
return __pyx_r;
}
-/* "libpetsc4py.pyx":1789
+/* "libpetsc4py.pyx":1799
* return _PySNES.__new__(_PySNES)
*
* cdef public PetscErrorCode SNESPythonGetContext(PetscSNES snes, void **ctx) \ # <<<<<<<<<<<<<<
@@ -19081,7 +20700,7 @@ PetscErrorCode SNESPythonGetContext(SNES __pyx_v_snes, void **__pyx_v_ctx) {
int __pyx_t_2;
__Pyx_RefNannySetupContext("SNESPythonGetContext", 0);
- /* "libpetsc4py.pyx":1791
+ /* "libpetsc4py.pyx":1801
* cdef public PetscErrorCode SNESPythonGetContext(PetscSNES snes, void **ctx) \
* except IERR:
* FunctionBegin(b"SNESPythonGetContext ") # <<<<<<<<<<<<<<
@@ -19090,19 +20709,19 @@ PetscErrorCode SNESPythonGetContext(SNES __pyx_v_snes, void **__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESPythonGetContext "));
- /* "libpetsc4py.pyx":1792
+ /* "libpetsc4py.pyx":1802
* except IERR:
* FunctionBegin(b"SNESPythonGetContext ")
* PySNES(snes).getcontext(ctx) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1792, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1792, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1802, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1793
+ /* "libpetsc4py.pyx":1803
* FunctionBegin(b"SNESPythonGetContext ")
* PySNES(snes).getcontext(ctx)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -19112,7 +20731,7 @@ PetscErrorCode SNESPythonGetContext(SNES __pyx_v_snes, void **__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1789
+ /* "libpetsc4py.pyx":1799
* return _PySNES.__new__(_PySNES)
*
* cdef public PetscErrorCode SNESPythonGetContext(PetscSNES snes, void **ctx) \ # <<<<<<<<<<<<<<
@@ -19130,7 +20749,7 @@ PetscErrorCode SNESPythonGetContext(SNES __pyx_v_snes, void **__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":1795
+/* "libpetsc4py.pyx":1805
* return FunctionEnd()
*
* cdef public PetscErrorCode SNESPythonSetContext(PetscSNES snes, void *ctx) \ # <<<<<<<<<<<<<<
@@ -19146,7 +20765,7 @@ PetscErrorCode SNESPythonSetContext(SNES __pyx_v_snes, void *__pyx_v_ctx) {
int __pyx_t_3;
__Pyx_RefNannySetupContext("SNESPythonSetContext", 0);
- /* "libpetsc4py.pyx":1797
+ /* "libpetsc4py.pyx":1807
* cdef public PetscErrorCode SNESPythonSetContext(PetscSNES snes, void *ctx) \
* except IERR:
* FunctionBegin(b"SNESPythonSetContext ") # <<<<<<<<<<<<<<
@@ -19155,22 +20774,22 @@ PetscErrorCode SNESPythonSetContext(SNES __pyx_v_snes, void *__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESPythonSetContext "));
- /* "libpetsc4py.pyx":1798
+ /* "libpetsc4py.pyx":1808
* except IERR:
* FunctionBegin(b"SNESPythonSetContext ")
* PySNES(snes).setcontext(ctx, SNES_(snes)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1798, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1808, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1798, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1808, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1798, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1808, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1799
+ /* "libpetsc4py.pyx":1809
* FunctionBegin(b"SNESPythonSetContext ")
* PySNES(snes).setcontext(ctx, SNES_(snes))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -19180,7 +20799,7 @@ PetscErrorCode SNESPythonSetContext(SNES __pyx_v_snes, void *__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1795
+ /* "libpetsc4py.pyx":1805
* return FunctionEnd()
*
* cdef public PetscErrorCode SNESPythonSetContext(PetscSNES snes, void *ctx) \ # <<<<<<<<<<<<<<
@@ -19199,7 +20818,7 @@ PetscErrorCode SNESPythonSetContext(SNES __pyx_v_snes, void *__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":1801
+/* "libpetsc4py.pyx":1811
* return FunctionEnd()
*
* cdef PetscErrorCode SNESPythonSetType_PYTHON(PetscSNES snes, char name[]) \ # <<<<<<<<<<<<<<
@@ -19216,11 +20835,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(SNES __pyx_
PetscErrorCode __pyx_t_3;
int __pyx_t_4;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESPythonSetType_PYTHON", 0);
- /* "libpetsc4py.pyx":1803
+ /* "libpetsc4py.pyx":1813
* cdef PetscErrorCode SNESPythonSetType_PYTHON(PetscSNES snes, char name[]) \
* except IERR with gil:
* FunctionBegin(b"SNESPythonSetType_PYTHON") # <<<<<<<<<<<<<<
@@ -19229,7 +20848,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(SNES __pyx_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESPythonSetType_PYTHON"));
- /* "libpetsc4py.pyx":1804
+ /* "libpetsc4py.pyx":1814
* except IERR with gil:
* FunctionBegin(b"SNESPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX # <<<<<<<<<<<<<<
@@ -19242,40 +20861,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(SNES __pyx_
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1805
+ /* "libpetsc4py.pyx":1815
* FunctionBegin(b"SNESPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name) # <<<<<<<<<<<<<<
* SNESPythonSetContext(snes, <void*>ctx)
* PySNES(snes).setname(name)
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1805, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1815, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ctx = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1806
+ /* "libpetsc4py.pyx":1816
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name)
* SNESPythonSetContext(snes, <void*>ctx) # <<<<<<<<<<<<<<
* PySNES(snes).setname(name)
* return FunctionEnd()
*/
- __pyx_t_3 = SNESPythonSetContext(__pyx_v_snes, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1806, __pyx_L1_error)
+ __pyx_t_3 = SNESPythonSetContext(__pyx_v_snes, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1816, __pyx_L1_error)
- /* "libpetsc4py.pyx":1807
+ /* "libpetsc4py.pyx":1817
* cdef object ctx = createcontext(name)
* SNESPythonSetContext(snes, <void*>ctx)
* PySNES(snes).setname(name) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1807, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1817, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1807, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1817, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1808
+ /* "libpetsc4py.pyx":1818
* SNESPythonSetContext(snes, <void*>ctx)
* PySNES(snes).setname(name)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -19285,7 +20904,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(SNES __pyx_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1801
+ /* "libpetsc4py.pyx":1811
* return FunctionEnd()
*
* cdef PetscErrorCode SNESPythonSetType_PYTHON(PetscSNES snes, char name[]) \ # <<<<<<<<<<<<<<
@@ -19302,12 +20921,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(SNES __pyx_
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1810
+/* "libpetsc4py.pyx":1820
* return FunctionEnd()
*
* cdef PetscErrorCode SNESCreate_Python( # <<<<<<<<<<<<<<
@@ -19324,11 +20943,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESCreate_Python", 0);
- /* "libpetsc4py.pyx":1814
+ /* "libpetsc4py.pyx":1824
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESCreate_Python") # <<<<<<<<<<<<<<
@@ -19337,7 +20956,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESCreate_Python"));
- /* "libpetsc4py.pyx":1816
+ /* "libpetsc4py.pyx":1826
* FunctionBegin(b"SNESCreate_Python")
* #
* cdef SNESOps ops = snes.ops # <<<<<<<<<<<<<<
@@ -19347,7 +20966,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
__pyx_t_1 = __pyx_v_snes->ops;
__pyx_v_ops = __pyx_t_1;
- /* "libpetsc4py.pyx":1817
+ /* "libpetsc4py.pyx":1827
* #
* cdef SNESOps ops = snes.ops
* ops.reset = SNESReset_Python # <<<<<<<<<<<<<<
@@ -19356,7 +20975,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_v_ops->reset = __pyx_f_11libpetsc4py_SNESReset_Python;
- /* "libpetsc4py.pyx":1818
+ /* "libpetsc4py.pyx":1828
* cdef SNESOps ops = snes.ops
* ops.reset = SNESReset_Python
* ops.destroy = SNESDestroy_Python # <<<<<<<<<<<<<<
@@ -19365,7 +20984,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_v_ops->destroy = __pyx_f_11libpetsc4py_SNESDestroy_Python;
- /* "libpetsc4py.pyx":1819
+ /* "libpetsc4py.pyx":1829
* ops.reset = SNESReset_Python
* ops.destroy = SNESDestroy_Python
* ops.setup = SNESSetUp_Python # <<<<<<<<<<<<<<
@@ -19374,7 +20993,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_v_ops->setup = __pyx_f_11libpetsc4py_SNESSetUp_Python;
- /* "libpetsc4py.pyx":1820
+ /* "libpetsc4py.pyx":1830
* ops.destroy = SNESDestroy_Python
* ops.setup = SNESSetUp_Python
* ops.setfromoptions = SNESSetFromOptions_Python # <<<<<<<<<<<<<<
@@ -19383,7 +21002,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_v_ops->setfromoptions = __pyx_f_11libpetsc4py_SNESSetFromOptions_Python;
- /* "libpetsc4py.pyx":1821
+ /* "libpetsc4py.pyx":1831
* ops.setup = SNESSetUp_Python
* ops.setfromoptions = SNESSetFromOptions_Python
* ops.view = SNESView_Python # <<<<<<<<<<<<<<
@@ -19392,7 +21011,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_v_ops->view = __pyx_f_11libpetsc4py_SNESView_Python;
- /* "libpetsc4py.pyx":1822
+ /* "libpetsc4py.pyx":1832
* ops.setfromoptions = SNESSetFromOptions_Python
* ops.view = SNESView_Python
* ops.solve = SNESSolve_Python # <<<<<<<<<<<<<<
@@ -19401,28 +21020,28 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_v_ops->solve = __pyx_f_11libpetsc4py_SNESSolve_Python;
- /* "libpetsc4py.pyx":1824
+ /* "libpetsc4py.pyx":1834
* ops.solve = SNESSolve_Python
* #
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>snes, b"SNESPythonSetType_C",
* <PetscVoidFunction>SNESPythonSetType_PYTHON) )
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_snes), ((char *)"SNESPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1824, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_snes), ((char *)"SNESPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1834, __pyx_L1_error)
- /* "libpetsc4py.pyx":1828
+ /* "libpetsc4py.pyx":1838
* <PetscVoidFunction>SNESPythonSetType_PYTHON) )
* #
* cdef ctx = PySNES(NULL) # <<<<<<<<<<<<<<
* snes.data = <void*> ctx
* Py_INCREF(<PyObject*>snes.data)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1828, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1838, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_ctx = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1829
+ /* "libpetsc4py.pyx":1839
* #
* cdef ctx = PySNES(NULL)
* snes.data = <void*> ctx # <<<<<<<<<<<<<<
@@ -19431,7 +21050,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
__pyx_v_snes->data = ((void *)__pyx_v_ctx);
- /* "libpetsc4py.pyx":1830
+ /* "libpetsc4py.pyx":1840
* cdef ctx = PySNES(NULL)
* snes.data = <void*> ctx
* Py_INCREF(<PyObject*>snes.data) # <<<<<<<<<<<<<<
@@ -19440,7 +21059,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
*/
Py_INCREF(((PyObject *)__pyx_v_snes->data));
- /* "libpetsc4py.pyx":1831
+ /* "libpetsc4py.pyx":1841
* snes.data = <void*> ctx
* Py_INCREF(<PyObject*>snes.data)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -19450,7 +21069,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1810
+ /* "libpetsc4py.pyx":1820
* return FunctionEnd()
*
* cdef PetscErrorCode SNESCreate_Python( # <<<<<<<<<<<<<<
@@ -19467,12 +21086,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESCreate_Python(SNES __pyx_v_snes)
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1833
+/* "libpetsc4py.pyx":1843
* return FunctionEnd()
*
* cdef PetscErrorCode SNESDestroy_Python( # <<<<<<<<<<<<<<
@@ -19495,11 +21114,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
PyObject *__pyx_t_10 = NULL;
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESDestroy_Python", 0);
- /* "libpetsc4py.pyx":1837
+ /* "libpetsc4py.pyx":1847
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESDestroy_Python") # <<<<<<<<<<<<<<
@@ -19508,16 +21127,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESDestroy_Python"));
- /* "libpetsc4py.pyx":1838
+ /* "libpetsc4py.pyx":1848
* except IERR with gil:
* FunctionBegin(b"SNESDestroy_Python")
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>snes, b"SNESPythonSetType_C",
* <PetscVoidFunction>NULL) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_snes), ((char *)"SNESPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1838, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_snes), ((char *)"SNESPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1848, __pyx_L1_error)
- /* "libpetsc4py.pyx":1842
+ /* "libpetsc4py.pyx":1852
* <PetscVoidFunction>NULL) )
* #
* if not Py_IsInitialized(): return FunctionEnd() # <<<<<<<<<<<<<<
@@ -19530,7 +21149,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1843
+ /* "libpetsc4py.pyx":1853
* #
* if not Py_IsInitialized(): return FunctionEnd()
* try: # <<<<<<<<<<<<<<
@@ -19539,7 +21158,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
*/
/*try:*/ {
- /* "libpetsc4py.pyx":1844
+ /* "libpetsc4py.pyx":1854
* if not Py_IsInitialized(): return FunctionEnd()
* try:
* addRef(snes) # <<<<<<<<<<<<<<
@@ -19548,17 +21167,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
*/
__pyx_f_11libpetsc4py_addRef(__pyx_v_snes);
- /* "libpetsc4py.pyx":1845
+ /* "libpetsc4py.pyx":1855
* try:
* addRef(snes)
* SNESPythonSetContext(snes, NULL) # <<<<<<<<<<<<<<
* finally:
* delRef(snes)
*/
- __pyx_t_3 = SNESPythonSetContext(__pyx_v_snes, NULL); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1845, __pyx_L5_error)
+ __pyx_t_3 = SNESPythonSetContext(__pyx_v_snes, NULL); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1855, __pyx_L5_error)
}
- /* "libpetsc4py.pyx":1847
+ /* "libpetsc4py.pyx":1857
* SNESPythonSetContext(snes, NULL)
* finally:
* delRef(snes) # <<<<<<<<<<<<<<
@@ -19569,7 +21188,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
/*normal exit:*/{
__pyx_f_11libpetsc4py_delRef(__pyx_v_snes);
- /* "libpetsc4py.pyx":1848
+ /* "libpetsc4py.pyx":1858
* finally:
* delRef(snes)
* Py_DECREF(<PyObject*>snes.data) # <<<<<<<<<<<<<<
@@ -19578,7 +21197,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
*/
Py_DECREF(((PyObject *)__pyx_v_snes->data));
- /* "libpetsc4py.pyx":1849
+ /* "libpetsc4py.pyx":1859
* delRef(snes)
* Py_DECREF(<PyObject*>snes.data)
* snes.data = NULL # <<<<<<<<<<<<<<
@@ -19604,7 +21223,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
__pyx_t_1 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
{
- /* "libpetsc4py.pyx":1847
+ /* "libpetsc4py.pyx":1857
* SNESPythonSetContext(snes, NULL)
* finally:
* delRef(snes) # <<<<<<<<<<<<<<
@@ -19613,7 +21232,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
*/
__pyx_f_11libpetsc4py_delRef(__pyx_v_snes);
- /* "libpetsc4py.pyx":1848
+ /* "libpetsc4py.pyx":1858
* finally:
* delRef(snes)
* Py_DECREF(<PyObject*>snes.data) # <<<<<<<<<<<<<<
@@ -19622,7 +21241,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
*/
Py_DECREF(((PyObject *)__pyx_v_snes->data));
- /* "libpetsc4py.pyx":1849
+ /* "libpetsc4py.pyx":1859
* delRef(snes)
* Py_DECREF(<PyObject*>snes.data)
* snes.data = NULL # <<<<<<<<<<<<<<
@@ -19631,7 +21250,6 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
*/
__pyx_v_snes->data = NULL;
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_9);
__Pyx_XGIVEREF(__pyx_t_10);
@@ -19649,7 +21267,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
__pyx_L6:;
}
- /* "libpetsc4py.pyx":1850
+ /* "libpetsc4py.pyx":1860
* Py_DECREF(<PyObject*>snes.data)
* snes.data = NULL
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -19659,7 +21277,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1833
+ /* "libpetsc4py.pyx":1843
* return FunctionEnd()
*
* cdef PetscErrorCode SNESDestroy_Python( # <<<<<<<<<<<<<<
@@ -19674,12 +21292,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESDestroy_Python(SNES __pyx_v_snes
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1852
+/* "libpetsc4py.pyx":1862
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSetUp_Python( # <<<<<<<<<<<<<<
@@ -19703,11 +21321,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESSetUp_Python", 0);
- /* "libpetsc4py.pyx":1856
+ /* "libpetsc4py.pyx":1866
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESSetUp_Python") # <<<<<<<<<<<<<<
@@ -19716,7 +21334,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESSetUp_Python"));
- /* "libpetsc4py.pyx":1861
+ /* "libpetsc4py.pyx":1871
* #
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -19725,30 +21343,30 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":1862
+ /* "libpetsc4py.pyx":1872
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PySNES(snes).self is None: # <<<<<<<<<<<<<<
* CHKERR( PetscOptionsGetString(NULL,
* getPrefix(snes),b"-snes_python_type",
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1862, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1872, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = (((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1863
+ /* "libpetsc4py.pyx":1873
* cdef PetscBool found = PETSC_FALSE
* if PySNES(snes).self is None:
* CHKERR( PetscOptionsGetString(NULL, # <<<<<<<<<<<<<<
* getPrefix(snes),b"-snes_python_type",
* name,sizeof(name),&found) )
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_snes), ((char *)"-snes_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1863, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_snes), ((char *)"-snes_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1873, __pyx_L1_error)
- /* "libpetsc4py.pyx":1866
+ /* "libpetsc4py.pyx":1876
* getPrefix(snes),b"-snes_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -19765,17 +21383,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
__pyx_L5_bool_binop_done:;
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1867
+ /* "libpetsc4py.pyx":1877
* name,sizeof(name),&found) )
* if found and name[0]:
* CHKERR( SNESPythonSetType_PYTHON(snes,name) ) # <<<<<<<<<<<<<<
* if PySNES(snes).self is None:
* return PetscSETERR(PETSC_ERR_USER,
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(__pyx_v_snes, __pyx_v_name); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1867, __pyx_L1_error)
- __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 1867, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(__pyx_v_snes, __pyx_v_name); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1877, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 1877, __pyx_L1_error)
- /* "libpetsc4py.pyx":1866
+ /* "libpetsc4py.pyx":1876
* getPrefix(snes),b"-snes_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -19784,7 +21402,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
*/
}
- /* "libpetsc4py.pyx":1862
+ /* "libpetsc4py.pyx":1872
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PySNES(snes).self is None: # <<<<<<<<<<<<<<
@@ -19793,21 +21411,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
*/
}
- /* "libpetsc4py.pyx":1868
+ /* "libpetsc4py.pyx":1878
* if found and name[0]:
* CHKERR( SNESPythonSetType_PYTHON(snes,name) )
* if PySNES(snes).self is None: # <<<<<<<<<<<<<<
* return PetscSETERR(PETSC_ERR_USER,
* "Python context not set, call one of \n"
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1868, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1878, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_3 = (((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "libpetsc4py.pyx":1869
+ /* "libpetsc4py.pyx":1879
* CHKERR( SNESPythonSetType_PYTHON(snes,name) )
* if PySNES(snes).self is None:
* return PetscSETERR(PETSC_ERR_USER, # <<<<<<<<<<<<<<
@@ -19817,7 +21435,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
__pyx_r = __pyx_f_11libpetsc4py_PetscSETERR(PETSC_ERR_USER, ((char *)"Python context not set, call one of \n * SNESPythonSetType(snes,\"[package.]module.class\")\n * SNESSetFromOptions(snes) and pass option -snes_python_type [package.]module.class"));
goto __pyx_L0;
- /* "libpetsc4py.pyx":1868
+ /* "libpetsc4py.pyx":1878
* if found and name[0]:
* CHKERR( SNESPythonSetType_PYTHON(snes,name) )
* if PySNES(snes).self is None: # <<<<<<<<<<<<<<
@@ -19826,22 +21444,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
*/
}
- /* "libpetsc4py.pyx":1875
+ /* "libpetsc4py.pyx":1885
* "-snes_python_type [package.]module.class")
* #
* cdef setUp = PySNES(snes).setUp # <<<<<<<<<<<<<<
* if setUp is not None:
* setUp(SNES_(snes))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1875, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1885, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1875, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1885, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setUp = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":1876
+ /* "libpetsc4py.pyx":1886
* #
* cdef setUp = PySNES(snes).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -19852,18 +21470,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":1877
+ /* "libpetsc4py.pyx":1887
* cdef setUp = PySNES(snes).setUp
* if setUp is not None:
* setUp(SNES_(snes)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1877, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1887, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setUp);
__pyx_t_7 = __pyx_v_setUp; __pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -19873,24 +21491,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
}
}
if (!__pyx_t_8) {
- __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1877, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1887, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1877, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1877, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_1};
+ __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1887, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_1};
+ __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1887, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1887, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1887, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "libpetsc4py.pyx":1876
+ /* "libpetsc4py.pyx":1886
* #
* cdef setUp = PySNES(snes).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -19899,7 +21537,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
*/
}
- /* "libpetsc4py.pyx":1878
+ /* "libpetsc4py.pyx":1888
* if setUp is not None:
* setUp(SNES_(snes))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -19909,7 +21547,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1852
+ /* "libpetsc4py.pyx":1862
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSetUp_Python( # <<<<<<<<<<<<<<
@@ -19930,12 +21568,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetUp_Python(SNES __pyx_v_snes)
__Pyx_XDECREF(__pyx_v_setUp);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1880
+/* "libpetsc4py.pyx":1890
* return FunctionEnd()
*
* cdef PetscErrorCode SNESReset_Python( # <<<<<<<<<<<<<<
@@ -19955,11 +21593,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESReset_Python", 0);
- /* "libpetsc4py.pyx":1884
+ /* "libpetsc4py.pyx":1894
* ) \
* except IERR with gil:
* if getRef(snes) == 0: return 0 # <<<<<<<<<<<<<<
@@ -19972,7 +21610,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":1885
+ /* "libpetsc4py.pyx":1895
* except IERR with gil:
* if getRef(snes) == 0: return 0
* FunctionBegin(b"SNESReset_Python") # <<<<<<<<<<<<<<
@@ -19981,22 +21619,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESReset_Python"));
- /* "libpetsc4py.pyx":1886
+ /* "libpetsc4py.pyx":1896
* if getRef(snes) == 0: return 0
* FunctionBegin(b"SNESReset_Python")
* cdef reset = PySNES(snes).reset # <<<<<<<<<<<<<<
* if reset is not None:
* reset(SNES_(snes))
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1886, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1896, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_reset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1886, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_reset); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1896, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_reset = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1887
+ /* "libpetsc4py.pyx":1897
* FunctionBegin(b"SNESReset_Python")
* cdef reset = PySNES(snes).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -20007,18 +21645,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
__pyx_t_4 = (__pyx_t_1 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1888
+ /* "libpetsc4py.pyx":1898
* cdef reset = PySNES(snes).reset
* if reset is not None:
* reset(SNES_(snes)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1888, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1898, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_reset);
__pyx_t_5 = __pyx_v_reset; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -20028,24 +21666,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
}
}
if (!__pyx_t_6) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1888, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1898, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1888, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_2);
- __pyx_t_2 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1888, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_2};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1898, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_2};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1898, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1898, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_2);
+ __pyx_t_2 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1898, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1887
+ /* "libpetsc4py.pyx":1897
* FunctionBegin(b"SNESReset_Python")
* cdef reset = PySNES(snes).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -20054,7 +21712,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
*/
}
- /* "libpetsc4py.pyx":1889
+ /* "libpetsc4py.pyx":1899
* if reset is not None:
* reset(SNES_(snes))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -20064,7 +21722,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1880
+ /* "libpetsc4py.pyx":1890
* return FunctionEnd()
*
* cdef PetscErrorCode SNESReset_Python( # <<<<<<<<<<<<<<
@@ -20085,12 +21743,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESReset_Python(SNES __pyx_v_snes)
__Pyx_XDECREF(__pyx_v_reset);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1891
+/* "libpetsc4py.pyx":1901
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -20117,11 +21775,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESSetFromOptions_Python", 0);
- /* "libpetsc4py.pyx":1896
+ /* "libpetsc4py.pyx":1906
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESSetFromOptions_Python") # <<<<<<<<<<<<<<
@@ -20130,20 +21788,20 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESSetFromOptions_Python"));
- /* "libpetsc4py.pyx":1898
+ /* "libpetsc4py.pyx":1908
* FunctionBegin(b"SNESSetFromOptions_Python")
* #
* cdef char name[2048], *defval = PySNES(snes).getname() # <<<<<<<<<<<<<<
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1898, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1908, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == NULL && PyErr_Occurred())) __PYX_ERR(0, 1898, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PySNES *)((struct __pyx_obj_11libpetsc4py__PySNES *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == ((char *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 1908, __pyx_L1_error)
__pyx_v_defval = __pyx_t_2;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1899
+ /* "libpetsc4py.pyx":1909
* #
* cdef char name[2048], *defval = PySNES(snes).getname()
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -20152,7 +21810,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":1900
+ /* "libpetsc4py.pyx":1910
* cdef char name[2048], *defval = PySNES(snes).getname()
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject # <<<<<<<<<<<<<<
@@ -20161,16 +21819,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
*/
PetscOptionsObject = __pyx_v_PetscOptionsObject;
- /* "libpetsc4py.pyx":1901
+ /* "libpetsc4py.pyx":1911
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
* CHKERR( PetscOptionsString( # <<<<<<<<<<<<<<
* b"-snes_python_type",b"Python [package.]module[.{class|function}]",
* b"SNESPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-snes_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"SNESPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1901, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-snes_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"SNESPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1911, __pyx_L1_error)
- /* "libpetsc4py.pyx":1903
+ /* "libpetsc4py.pyx":1913
* CHKERR( PetscOptionsString(
* b"-snes_python_type",b"Python [package.]module[.{class|function}]",
* b"SNESPythonSetType",defval,name,sizeof(name),&found) ); <void>opts; # <<<<<<<<<<<<<<
@@ -20179,7 +21837,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
*/
((void)PetscOptionsObject);
- /* "libpetsc4py.pyx":1904
+ /* "libpetsc4py.pyx":1914
* b"-snes_python_type",b"Python [package.]module[.{class|function}]",
* b"SNESPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -20196,17 +21854,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
__pyx_L4_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1905
+ /* "libpetsc4py.pyx":1915
* b"SNESPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]:
* CHKERR( SNESPythonSetType_PYTHON(snes,name) ) # <<<<<<<<<<<<<<
* #
* cdef setFromOptions = PySNES(snes).setFromOptions
*/
- __pyx_t_6 = __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(__pyx_v_snes, __pyx_v_name); if (unlikely(__pyx_t_6 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1905, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 1905, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_11libpetsc4py_SNESPythonSetType_PYTHON(__pyx_v_snes, __pyx_v_name); if (unlikely(__pyx_t_6 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1915, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 1915, __pyx_L1_error)
- /* "libpetsc4py.pyx":1904
+ /* "libpetsc4py.pyx":1914
* b"-snes_python_type",b"Python [package.]module[.{class|function}]",
* b"SNESPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -20215,22 +21873,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
*/
}
- /* "libpetsc4py.pyx":1907
+ /* "libpetsc4py.pyx":1917
* CHKERR( SNESPythonSetType_PYTHON(snes,name) )
* #
* cdef setFromOptions = PySNES(snes).setFromOptions # <<<<<<<<<<<<<<
* if setFromOptions is not None:
* setFromOptions(SNES_(snes))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1907, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1917, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1907, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1917, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setFromOptions = __pyx_t_7;
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":1908
+ /* "libpetsc4py.pyx":1918
* #
* cdef setFromOptions = PySNES(snes).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -20241,18 +21899,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1909
+ /* "libpetsc4py.pyx":1919
* cdef setFromOptions = PySNES(snes).setFromOptions
* if setFromOptions is not None:
* setFromOptions(SNES_(snes)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1909, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1919, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setFromOptions);
__pyx_t_8 = __pyx_v_setFromOptions; __pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -20262,24 +21920,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
}
}
if (!__pyx_t_9) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1909, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1919, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else {
- __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1909, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1909, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1919, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1919, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1919, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1919, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":1908
+ /* "libpetsc4py.pyx":1918
* #
* cdef setFromOptions = PySNES(snes).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -20288,7 +21966,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
*/
}
- /* "libpetsc4py.pyx":1910
+ /* "libpetsc4py.pyx":1920
* if setFromOptions is not None:
* setFromOptions(SNES_(snes))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -20298,7 +21976,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1891
+ /* "libpetsc4py.pyx":1901
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -20319,12 +21997,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSetFromOptions_Python(PetscOptio
__Pyx_XDECREF(__pyx_v_setFromOptions);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1912
+/* "libpetsc4py.pyx":1922
* return FunctionEnd()
*
* cdef PetscErrorCode SNESView_Python( # <<<<<<<<<<<<<<
@@ -20344,14 +22022,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESView_Python(SNES __pyx_v_snes, P
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
- PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESView_Python", 0);
- /* "libpetsc4py.pyx":1917
+ /* "libpetsc4py.pyx":1927
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESView_Python") # <<<<<<<<<<<<<<
@@ -20360,34 +22037,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESView_Python(SNES __pyx_v_snes, P
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESView_Python"));
- /* "libpetsc4py.pyx":1918
+ /* "libpetsc4py.pyx":1928
* except IERR with gil:
* FunctionBegin(b"SNESView_Python")
* viewcontext(PySNES(snes), vwr) # <<<<<<<<<<<<<<
* cdef view = PySNES(snes).view
* if view is not None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1918, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1928, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 1918, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 1928, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":1919
+ /* "libpetsc4py.pyx":1929
* FunctionBegin(b"SNESView_Python")
* viewcontext(PySNES(snes), vwr)
* cdef view = PySNES(snes).view # <<<<<<<<<<<<<<
* if view is not None:
* view(SNES_(snes), Viewer_(vwr))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1919, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1929, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1919, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1929, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_view = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1920
+ /* "libpetsc4py.pyx":1930
* viewcontext(PySNES(snes), vwr)
* cdef view = PySNES(snes).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -20398,48 +22075,70 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESView_Python(SNES __pyx_v_snes, P
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1921
+ /* "libpetsc4py.pyx":1931
* cdef view = PySNES(snes).view
* if view is not None:
* view(SNES_(snes), Viewer_(vwr)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1921, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1931, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1921, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1931, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_view);
__pyx_t_7 = __pyx_v_view; __pyx_t_8 = NULL;
- __pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ __pyx_t_2 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
- __pyx_t_9 = 1;
+ __pyx_t_2 = 1;
}
}
- __pyx_t_10 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1921, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1931, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1931, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 1931, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_2, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_2, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1931, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1921, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1920
+ /* "libpetsc4py.pyx":1930
* viewcontext(PySNES(snes), vwr)
* cdef view = PySNES(snes).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -20448,7 +22147,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESView_Python(SNES __pyx_v_snes, P
*/
}
- /* "libpetsc4py.pyx":1922
+ /* "libpetsc4py.pyx":1932
* if view is not None:
* view(SNES_(snes), Viewer_(vwr))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -20458,7 +22157,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESView_Python(SNES __pyx_v_snes, P
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1912
+ /* "libpetsc4py.pyx":1922
* return FunctionEnd()
*
* cdef PetscErrorCode SNESView_Python( # <<<<<<<<<<<<<<
@@ -20473,19 +22172,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESView_Python(SNES __pyx_v_snes, P
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
- __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_XDECREF(__pyx_t_9);
__Pyx_AddTraceback("libpetsc4py.SNESView_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_view);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1924
+/* "libpetsc4py.pyx":1934
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSolve_Python( # <<<<<<<<<<<<<<
@@ -20508,15 +22207,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
- PyObject *__pyx_t_11 = NULL;
- PetscErrorCode __pyx_t_12;
+ PyObject *__pyx_t_10 = NULL;
+ PetscErrorCode __pyx_t_11;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESSolve_Python", 0);
- /* "libpetsc4py.pyx":1928
+ /* "libpetsc4py.pyx":1938
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESSolve_Python") # <<<<<<<<<<<<<<
@@ -20525,7 +22223,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESSolve_Python"));
- /* "libpetsc4py.pyx":1929
+ /* "libpetsc4py.pyx":1939
* except IERR with gil:
* FunctionBegin(b"SNESSolve_Python")
* cdef PetscVec b = NULL, x = NULL # <<<<<<<<<<<<<<
@@ -20535,40 +22233,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
__pyx_v_b = NULL;
__pyx_v_x = NULL;
- /* "libpetsc4py.pyx":1930
+ /* "libpetsc4py.pyx":1940
* FunctionBegin(b"SNESSolve_Python")
* cdef PetscVec b = NULL, x = NULL
* CHKERR( SNESGetRhs(snes,&b) ) # <<<<<<<<<<<<<<
* CHKERR( SNESGetSolution(snes,&x) )
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetRhs(__pyx_v_snes, (&__pyx_v_b))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1930, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetRhs(__pyx_v_snes, (&__pyx_v_b))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1940, __pyx_L1_error)
- /* "libpetsc4py.pyx":1931
+ /* "libpetsc4py.pyx":1941
* cdef PetscVec b = NULL, x = NULL
* CHKERR( SNESGetRhs(snes,&b) )
* CHKERR( SNESGetSolution(snes,&x) ) # <<<<<<<<<<<<<<
* #
* cdef solve = PySNES(snes).solve
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetSolution(__pyx_v_snes, (&__pyx_v_x))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1931, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetSolution(__pyx_v_snes, (&__pyx_v_x))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1941, __pyx_L1_error)
- /* "libpetsc4py.pyx":1933
+ /* "libpetsc4py.pyx":1943
* CHKERR( SNESGetSolution(snes,&x) )
* #
* cdef solve = PySNES(snes).solve # <<<<<<<<<<<<<<
* if solve is not None:
* solve(SNES_(snes), Vec_(b) if b != NULL else None, Vec_(x))
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1933, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1943, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_solve); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1933, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_solve); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1943, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_solve = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1934
+ /* "libpetsc4py.pyx":1944
* #
* cdef solve = PySNES(snes).solve
* if solve is not None: # <<<<<<<<<<<<<<
@@ -20579,17 +22277,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":1935
+ /* "libpetsc4py.pyx":1945
* cdef solve = PySNES(snes).solve
* if solve is not None:
* solve(SNES_(snes), Vec_(b) if b != NULL else None, Vec_(x)) # <<<<<<<<<<<<<<
* else:
* SNESSolve_Python_default(snes)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1935, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1945, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (((__pyx_v_b != NULL) != 0)) {
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1935, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_b)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1945, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_6 = __pyx_t_7;
__pyx_t_7 = 0;
@@ -20597,42 +22295,66 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
__Pyx_INCREF(Py_None);
__pyx_t_6 = Py_None;
}
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1935, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1945, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_solve);
__pyx_t_8 = __pyx_v_solve; __pyx_t_9 = NULL;
- __pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ __pyx_t_1 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
- __pyx_t_10 = 1;
+ __pyx_t_1 = 1;
}
}
- __pyx_t_11 = PyTuple_New(3+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1935, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_2, __pyx_t_6, __pyx_t_7};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_1, 3+__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1945, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_2, __pyx_t_6, __pyx_t_7};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_1, 3+__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1945, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1945, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_1, __pyx_t_2);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_1, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_1, __pyx_t_7);
+ __pyx_t_2 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1945, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_7);
- __pyx_t_2 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1935, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":1934
+ /* "libpetsc4py.pyx":1944
* #
* cdef solve = PySNES(snes).solve
* if solve is not None: # <<<<<<<<<<<<<<
@@ -20642,7 +22364,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":1937
+ /* "libpetsc4py.pyx":1947
* solve(SNES_(snes), Vec_(b) if b != NULL else None, Vec_(x))
* else:
* SNESSolve_Python_default(snes) # <<<<<<<<<<<<<<
@@ -20650,11 +22372,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
* return FunctionEnd()
*/
/*else*/ {
- __pyx_t_12 = __pyx_f_11libpetsc4py_SNESSolve_Python_default(__pyx_v_snes); if (unlikely(__pyx_t_12 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1937, __pyx_L1_error)
+ __pyx_t_11 = __pyx_f_11libpetsc4py_SNESSolve_Python_default(__pyx_v_snes); if (unlikely(__pyx_t_11 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1947, __pyx_L1_error)
}
__pyx_L3:;
- /* "libpetsc4py.pyx":1939
+ /* "libpetsc4py.pyx":1949
* SNESSolve_Python_default(snes)
* #
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -20664,7 +22386,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1924
+ /* "libpetsc4py.pyx":1934
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSolve_Python( # <<<<<<<<<<<<<<
@@ -20680,19 +22402,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python(SNES __pyx_v_snes)
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
- __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_XDECREF(__pyx_t_10);
__Pyx_AddTraceback("libpetsc4py.SNESSolve_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_solve);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1941
+/* "libpetsc4py.pyx":1951
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSolve_Python_default( # <<<<<<<<<<<<<<
@@ -20704,6 +22426,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
Vec __pyx_v_X;
Vec __pyx_v_F;
Vec __pyx_v_Y;
+ SNESLineSearch __pyx_v_ls;
PetscInt __pyx_v_its;
PetscInt __pyx_v_lits;
PetscReal __pyx_v_xnorm;
@@ -20714,12 +22437,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
int __pyx_t_1;
PetscInt __pyx_t_2;
PetscErrorCode __pyx_t_3;
+ int __pyx_t_4;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESSolve_Python_default", 0);
- /* "libpetsc4py.pyx":1945
+ /* "libpetsc4py.pyx":1955
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESSolve_Python_default") # <<<<<<<<<<<<<<
@@ -20728,47 +22452,56 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESSolve_Python_default"));
- /* "libpetsc4py.pyx":1947
+ /* "libpetsc4py.pyx":1957
* FunctionBegin(b"SNESSolve_Python_default")
* #
* cdef PetscVec X=NULL, F=NULL, Y=NULL # <<<<<<<<<<<<<<
+ * cdef PetscSNESLineSearch ls
* CHKERR( SNESGetSolution(snes,&X) )
- * CHKERR( SNESGetFunction(snes,&F,NULL,NULL) )
*/
__pyx_v_X = NULL;
__pyx_v_F = NULL;
__pyx_v_Y = NULL;
- /* "libpetsc4py.pyx":1948
- * #
+ /* "libpetsc4py.pyx":1959
* cdef PetscVec X=NULL, F=NULL, Y=NULL
+ * cdef PetscSNESLineSearch ls
* CHKERR( SNESGetSolution(snes,&X) ) # <<<<<<<<<<<<<<
* CHKERR( SNESGetFunction(snes,&F,NULL,NULL) )
* CHKERR( SNESGetSolutionUpdate(snes,&Y) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetSolution(__pyx_v_snes, (&__pyx_v_X))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1948, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetSolution(__pyx_v_snes, (&__pyx_v_X))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1959, __pyx_L1_error)
- /* "libpetsc4py.pyx":1949
- * cdef PetscVec X=NULL, F=NULL, Y=NULL
+ /* "libpetsc4py.pyx":1960
+ * cdef PetscSNESLineSearch ls
* CHKERR( SNESGetSolution(snes,&X) )
* CHKERR( SNESGetFunction(snes,&F,NULL,NULL) ) # <<<<<<<<<<<<<<
* CHKERR( SNESGetSolutionUpdate(snes,&Y) )
- * cdef PetscInt its=0, lits=0
+ * CHKERR( SNESGetLineSearch(snes, &ls) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetFunction(__pyx_v_snes, (&__pyx_v_F), NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1949, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetFunction(__pyx_v_snes, (&__pyx_v_F), NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1960, __pyx_L1_error)
- /* "libpetsc4py.pyx":1950
+ /* "libpetsc4py.pyx":1961
* CHKERR( SNESGetSolution(snes,&X) )
* CHKERR( SNESGetFunction(snes,&F,NULL,NULL) )
* CHKERR( SNESGetSolutionUpdate(snes,&Y) ) # <<<<<<<<<<<<<<
+ * CHKERR( SNESGetLineSearch(snes, &ls) )
* cdef PetscInt its=0, lits=0
- * cdef PetscReal xnorm = 0.0
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetSolutionUpdate(__pyx_v_snes, (&__pyx_v_Y))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1950, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetSolutionUpdate(__pyx_v_snes, (&__pyx_v_Y))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1961, __pyx_L1_error)
- /* "libpetsc4py.pyx":1951
+ /* "libpetsc4py.pyx":1962
* CHKERR( SNESGetFunction(snes,&F,NULL,NULL) )
* CHKERR( SNESGetSolutionUpdate(snes,&Y) )
+ * CHKERR( SNESGetLineSearch(snes, &ls) ) # <<<<<<<<<<<<<<
+ * cdef PetscInt its=0, lits=0
+ * cdef PetscReal xnorm = 0.0
+ */
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetLineSearch(__pyx_v_snes, (&__pyx_v_ls))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1962, __pyx_L1_error)
+
+ /* "libpetsc4py.pyx":1963
+ * CHKERR( SNESGetSolutionUpdate(snes,&Y) )
+ * CHKERR( SNESGetLineSearch(snes, &ls) )
* cdef PetscInt its=0, lits=0 # <<<<<<<<<<<<<<
* cdef PetscReal xnorm = 0.0
* cdef PetscReal fnorm = 0.0
@@ -20776,8 +22509,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
__pyx_v_its = 0;
__pyx_v_lits = 0;
- /* "libpetsc4py.pyx":1952
- * CHKERR( SNESGetSolutionUpdate(snes,&Y) )
+ /* "libpetsc4py.pyx":1964
+ * CHKERR( SNESGetLineSearch(snes, &ls) )
* cdef PetscInt its=0, lits=0
* cdef PetscReal xnorm = 0.0 # <<<<<<<<<<<<<<
* cdef PetscReal fnorm = 0.0
@@ -20785,7 +22518,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_v_xnorm = 0.0;
- /* "libpetsc4py.pyx":1953
+ /* "libpetsc4py.pyx":1965
* cdef PetscInt its=0, lits=0
* cdef PetscReal xnorm = 0.0
* cdef PetscReal fnorm = 0.0 # <<<<<<<<<<<<<<
@@ -20794,7 +22527,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_v_fnorm = 0.0;
- /* "libpetsc4py.pyx":1954
+ /* "libpetsc4py.pyx":1966
* cdef PetscReal xnorm = 0.0
* cdef PetscReal fnorm = 0.0
* cdef PetscReal ynorm = 0.0 # <<<<<<<<<<<<<<
@@ -20803,7 +22536,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_v_ynorm = 0.0;
- /* "libpetsc4py.pyx":1956
+ /* "libpetsc4py.pyx":1968
* cdef PetscReal ynorm = 0.0
* #
* snes.iter = 0 # <<<<<<<<<<<<<<
@@ -20812,7 +22545,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_v_snes->iter = 0;
- /* "libpetsc4py.pyx":1957
+ /* "libpetsc4py.pyx":1969
* #
* snes.iter = 0
* snes.reason = SNES_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -20821,70 +22554,70 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_v_snes->reason = SNES_CONVERGED_ITERATING;
- /* "libpetsc4py.pyx":1958
+ /* "libpetsc4py.pyx":1970
* snes.iter = 0
* snes.reason = SNES_CONVERGED_ITERATING
* CHKERR( VecSet(Y,0.0) ) # <<<<<<<<<<<<<<
* CHKERR( SNESComputeFunction(snes,X,F) )
* CHKERR( VecNorm(X,NORM_2,&xnorm) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecSet(__pyx_v_Y, 0.0)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1958, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecSet(__pyx_v_Y, 0.0)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1970, __pyx_L1_error)
- /* "libpetsc4py.pyx":1959
+ /* "libpetsc4py.pyx":1971
* snes.reason = SNES_CONVERGED_ITERATING
* CHKERR( VecSet(Y,0.0) )
* CHKERR( SNESComputeFunction(snes,X,F) ) # <<<<<<<<<<<<<<
* CHKERR( VecNorm(X,NORM_2,&xnorm) )
* CHKERR( VecNorm(F,NORM_2,&fnorm) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESComputeFunction(__pyx_v_snes, __pyx_v_X, __pyx_v_F)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1959, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESComputeFunction(__pyx_v_snes, __pyx_v_X, __pyx_v_F)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1971, __pyx_L1_error)
- /* "libpetsc4py.pyx":1960
+ /* "libpetsc4py.pyx":1972
* CHKERR( VecSet(Y,0.0) )
* CHKERR( SNESComputeFunction(snes,X,F) )
* CHKERR( VecNorm(X,NORM_2,&xnorm) ) # <<<<<<<<<<<<<<
* CHKERR( VecNorm(F,NORM_2,&fnorm) )
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_X, NORM_2, (&__pyx_v_xnorm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1960, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_X, NORM_2, (&__pyx_v_xnorm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1972, __pyx_L1_error)
- /* "libpetsc4py.pyx":1961
+ /* "libpetsc4py.pyx":1973
* CHKERR( SNESComputeFunction(snes,X,F) )
* CHKERR( VecNorm(X,NORM_2,&xnorm) )
* CHKERR( VecNorm(F,NORM_2,&fnorm) ) # <<<<<<<<<<<<<<
* #
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_F, NORM_2, (&__pyx_v_fnorm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1961, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_F, NORM_2, (&__pyx_v_fnorm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1973, __pyx_L1_error)
- /* "libpetsc4py.pyx":1963
+ /* "libpetsc4py.pyx":1975
* CHKERR( VecNorm(F,NORM_2,&fnorm) )
* #
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) ) # <<<<<<<<<<<<<<
* CHKERR( SNESLogHistory(snes,snes.norm,lits) )
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESConverged(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_xnorm, __pyx_v_ynorm, __pyx_v_fnorm, (&__pyx_v_snes->reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1963, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESConverged(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_xnorm, __pyx_v_ynorm, __pyx_v_fnorm, (&__pyx_v_snes->reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1975, __pyx_L1_error)
- /* "libpetsc4py.pyx":1964
+ /* "libpetsc4py.pyx":1976
* #
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) )
* CHKERR( SNESLogHistory(snes,snes.norm,lits) ) # <<<<<<<<<<<<<<
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
* for its from 0 <= its < snes.max_its:
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESLogHistory(__pyx_v_snes, __pyx_v_snes->norm, __pyx_v_lits)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1964, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESLogHistory(__pyx_v_snes, __pyx_v_snes->norm, __pyx_v_lits)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1976, __pyx_L1_error)
- /* "libpetsc4py.pyx":1965
+ /* "libpetsc4py.pyx":1977
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) )
* CHKERR( SNESLogHistory(snes,snes.norm,lits) )
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) ) # <<<<<<<<<<<<<<
* for its from 0 <= its < snes.max_its:
* if snes.reason: break
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESMonitor(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_snes->norm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1965, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESMonitor(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_snes->norm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1977, __pyx_L1_error)
- /* "libpetsc4py.pyx":1966
+ /* "libpetsc4py.pyx":1978
* CHKERR( SNESLogHistory(snes,snes.norm,lits) )
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
* for its from 0 <= its < snes.max_its: # <<<<<<<<<<<<<<
@@ -20894,7 +22627,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
__pyx_t_2 = __pyx_v_snes->max_its;
for (__pyx_v_its = 0; __pyx_v_its < __pyx_t_2; __pyx_v_its++) {
- /* "libpetsc4py.pyx":1967
+ /* "libpetsc4py.pyx":1979
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
* for its from 0 <= its < snes.max_its:
* if snes.reason: break # <<<<<<<<<<<<<<
@@ -20905,16 +22638,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
goto __pyx_L4_break;
}
- /* "libpetsc4py.pyx":1968
+ /* "libpetsc4py.pyx":1980
* for its from 0 <= its < snes.max_its:
* if snes.reason: break
* SNESPreStep_Python(snes) # <<<<<<<<<<<<<<
* #
* lits = -snes.linear_its
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_SNESPreStep_Python(__pyx_v_snes); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1968, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_SNESPreStep_Python(__pyx_v_snes); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1980, __pyx_L1_error)
- /* "libpetsc4py.pyx":1970
+ /* "libpetsc4py.pyx":1982
* SNESPreStep_Python(snes)
* #
* lits = -snes.linear_its # <<<<<<<<<<<<<<
@@ -20923,71 +22656,53 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_v_lits = (-__pyx_v_snes->linear_its);
- /* "libpetsc4py.pyx":1971
+ /* "libpetsc4py.pyx":1983
* #
* lits = -snes.linear_its
* SNESStep_Python(snes,X,F,Y) # <<<<<<<<<<<<<<
* lits += snes.linear_its
* #
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_SNESStep_Python(__pyx_v_snes, __pyx_v_X, __pyx_v_F, __pyx_v_Y); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1971, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_SNESStep_Python(__pyx_v_snes, __pyx_v_X, __pyx_v_F, __pyx_v_Y); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1983, __pyx_L1_error)
- /* "libpetsc4py.pyx":1972
+ /* "libpetsc4py.pyx":1984
* lits = -snes.linear_its
* SNESStep_Python(snes,X,F,Y)
* lits += snes.linear_its # <<<<<<<<<<<<<<
* #
- * CHKERR( VecAXPY(X,-1.0,Y) )
+ * CHKERR( SNESLineSearchApply(ls,X,F,&fnorm,Y) )
*/
__pyx_v_lits = (__pyx_v_lits + __pyx_v_snes->linear_its);
- /* "libpetsc4py.pyx":1974
+ /* "libpetsc4py.pyx":1986
* lits += snes.linear_its
* #
- * CHKERR( VecAXPY(X,-1.0,Y) ) # <<<<<<<<<<<<<<
- * CHKERR( SNESComputeFunction(snes,X,F) )
+ * CHKERR( SNESLineSearchApply(ls,X,F,&fnorm,Y) ) # <<<<<<<<<<<<<<
* CHKERR( VecNorm(X,NORM_2,&xnorm) )
+ * CHKERR( VecNorm(Y,NORM_2,&ynorm) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecAXPY(__pyx_v_X, -1.0, __pyx_v_Y)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1974, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESLineSearchApply(__pyx_v_ls, __pyx_v_X, __pyx_v_F, (&__pyx_v_fnorm), __pyx_v_Y)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1986, __pyx_L1_error)
- /* "libpetsc4py.pyx":1975
+ /* "libpetsc4py.pyx":1987
* #
- * CHKERR( VecAXPY(X,-1.0,Y) )
- * CHKERR( SNESComputeFunction(snes,X,F) ) # <<<<<<<<<<<<<<
- * CHKERR( VecNorm(X,NORM_2,&xnorm) )
- * CHKERR( VecNorm(F,NORM_2,&fnorm) )
- */
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESComputeFunction(__pyx_v_snes, __pyx_v_X, __pyx_v_F)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1975, __pyx_L1_error)
-
- /* "libpetsc4py.pyx":1976
- * CHKERR( VecAXPY(X,-1.0,Y) )
- * CHKERR( SNESComputeFunction(snes,X,F) )
+ * CHKERR( SNESLineSearchApply(ls,X,F,&fnorm,Y) )
* CHKERR( VecNorm(X,NORM_2,&xnorm) ) # <<<<<<<<<<<<<<
- * CHKERR( VecNorm(F,NORM_2,&fnorm) )
- * CHKERR( VecNorm(Y,NORM_2,&ynorm) )
- */
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_X, NORM_2, (&__pyx_v_xnorm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1976, __pyx_L1_error)
-
- /* "libpetsc4py.pyx":1977
- * CHKERR( SNESComputeFunction(snes,X,F) )
- * CHKERR( VecNorm(X,NORM_2,&xnorm) )
- * CHKERR( VecNorm(F,NORM_2,&fnorm) ) # <<<<<<<<<<<<<<
* CHKERR( VecNorm(Y,NORM_2,&ynorm) )
* snes.iter += 1
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_F, NORM_2, (&__pyx_v_fnorm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1977, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_X, NORM_2, (&__pyx_v_xnorm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1987, __pyx_L1_error)
- /* "libpetsc4py.pyx":1978
+ /* "libpetsc4py.pyx":1988
+ * CHKERR( SNESLineSearchApply(ls,X,F,&fnorm,Y) )
* CHKERR( VecNorm(X,NORM_2,&xnorm) )
- * CHKERR( VecNorm(F,NORM_2,&fnorm) )
* CHKERR( VecNorm(Y,NORM_2,&ynorm) ) # <<<<<<<<<<<<<<
* snes.iter += 1
* #
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_Y, NORM_2, (&__pyx_v_ynorm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1978, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecNorm(__pyx_v_Y, NORM_2, (&__pyx_v_ynorm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1988, __pyx_L1_error)
- /* "libpetsc4py.pyx":1979
- * CHKERR( VecNorm(F,NORM_2,&fnorm) )
+ /* "libpetsc4py.pyx":1989
+ * CHKERR( VecNorm(X,NORM_2,&xnorm) )
* CHKERR( VecNorm(Y,NORM_2,&ynorm) )
* snes.iter += 1 # <<<<<<<<<<<<<<
* #
@@ -20995,55 +22710,102 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
*/
__pyx_v_snes->iter = (__pyx_v_snes->iter + 1);
- /* "libpetsc4py.pyx":1981
+ /* "libpetsc4py.pyx":1991
* snes.iter += 1
* #
* SNESPostStep_Python(snes) # <<<<<<<<<<<<<<
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) )
* CHKERR( SNESLogHistory(snes,snes.norm,lits) )
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_SNESPostStep_Python(__pyx_v_snes); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 1981, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_SNESPostStep_Python(__pyx_v_snes); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 1991, __pyx_L1_error)
- /* "libpetsc4py.pyx":1982
+ /* "libpetsc4py.pyx":1992
* #
* SNESPostStep_Python(snes)
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) ) # <<<<<<<<<<<<<<
* CHKERR( SNESLogHistory(snes,snes.norm,lits) )
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESConverged(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_xnorm, __pyx_v_ynorm, __pyx_v_fnorm, (&__pyx_v_snes->reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1982, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESConverged(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_xnorm, __pyx_v_ynorm, __pyx_v_fnorm, (&__pyx_v_snes->reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1992, __pyx_L1_error)
- /* "libpetsc4py.pyx":1983
+ /* "libpetsc4py.pyx":1993
* SNESPostStep_Python(snes)
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) )
* CHKERR( SNESLogHistory(snes,snes.norm,lits) ) # <<<<<<<<<<<<<<
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
* <void>its # silent unused warning
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESLogHistory(__pyx_v_snes, __pyx_v_snes->norm, __pyx_v_lits)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1983, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESLogHistory(__pyx_v_snes, __pyx_v_snes->norm, __pyx_v_lits)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1993, __pyx_L1_error)
- /* "libpetsc4py.pyx":1984
+ /* "libpetsc4py.pyx":1994
* CHKERR( SNESConverged(snes,snes.iter,xnorm,ynorm,fnorm,&snes.reason) )
* CHKERR( SNESLogHistory(snes,snes.norm,lits) )
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) ) # <<<<<<<<<<<<<<
* <void>its # silent unused warning
- * #
+ * if snes.iter == snes.max_its:
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESMonitor(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_snes->norm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 1984, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESMonitor(__pyx_v_snes, __pyx_v_snes->iter, __pyx_v_snes->norm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 1994, __pyx_L1_error)
}
__pyx_L4_break:;
- /* "libpetsc4py.pyx":1985
+ /* "libpetsc4py.pyx":1995
* CHKERR( SNESLogHistory(snes,snes.norm,lits) )
* CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
* <void>its # silent unused warning # <<<<<<<<<<<<<<
+ * if snes.iter == snes.max_its:
+ * if snes.reason == SNES_CONVERGED_ITERATING:
+ */
+ ((void)__pyx_v_its);
+
+ /* "libpetsc4py.pyx":1996
+ * CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
+ * <void>its # silent unused warning
+ * if snes.iter == snes.max_its: # <<<<<<<<<<<<<<
+ * if snes.reason == SNES_CONVERGED_ITERATING:
+ * snes.reason = SNES_DIVERGED_MAX_IT
+ */
+ __pyx_t_4 = ((__pyx_v_snes->iter == __pyx_v_snes->max_its) != 0);
+ if (__pyx_t_4) {
+
+ /* "libpetsc4py.pyx":1997
+ * <void>its # silent unused warning
+ * if snes.iter == snes.max_its:
+ * if snes.reason == SNES_CONVERGED_ITERATING: # <<<<<<<<<<<<<<
+ * snes.reason = SNES_DIVERGED_MAX_IT
+ * #
+ */
+ __pyx_t_4 = ((__pyx_v_snes->reason == SNES_CONVERGED_ITERATING) != 0);
+ if (__pyx_t_4) {
+
+ /* "libpetsc4py.pyx":1998
+ * if snes.iter == snes.max_its:
+ * if snes.reason == SNES_CONVERGED_ITERATING:
+ * snes.reason = SNES_DIVERGED_MAX_IT # <<<<<<<<<<<<<<
* #
* return FunctionEnd()
*/
- ((void)__pyx_v_its);
+ __pyx_v_snes->reason = SNES_DIVERGED_MAX_IT;
+
+ /* "libpetsc4py.pyx":1997
+ * <void>its # silent unused warning
+ * if snes.iter == snes.max_its:
+ * if snes.reason == SNES_CONVERGED_ITERATING: # <<<<<<<<<<<<<<
+ * snes.reason = SNES_DIVERGED_MAX_IT
+ * #
+ */
+ }
- /* "libpetsc4py.pyx":1987
+ /* "libpetsc4py.pyx":1996
+ * CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
* <void>its # silent unused warning
+ * if snes.iter == snes.max_its: # <<<<<<<<<<<<<<
+ * if snes.reason == SNES_CONVERGED_ITERATING:
+ * snes.reason = SNES_DIVERGED_MAX_IT
+ */
+ }
+
+ /* "libpetsc4py.pyx":2000
+ * snes.reason = SNES_DIVERGED_MAX_IT
* #
* return FunctionEnd() # <<<<<<<<<<<<<<
*
@@ -21052,7 +22814,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1941
+ /* "libpetsc4py.pyx":1951
* return FunctionEnd()
*
* cdef PetscErrorCode SNESSolve_Python_default( # <<<<<<<<<<<<<<
@@ -21067,12 +22829,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESSolve_Python_default(SNES __pyx_
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1989
+/* "libpetsc4py.pyx":2002
* return FunctionEnd()
*
* cdef PetscErrorCode SNESPreStep_Python( # <<<<<<<<<<<<<<
@@ -21092,11 +22854,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPreStep_Python(SNES __pyx_v_snes
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESPreStep_Python", 0);
- /* "libpetsc4py.pyx":1993
+ /* "libpetsc4py.pyx":2006
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESPreStep_Python") # <<<<<<<<<<<<<<
@@ -21105,22 +22867,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPreStep_Python(SNES __pyx_v_snes
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESPreStep_Python"));
- /* "libpetsc4py.pyx":1994
+ /* "libpetsc4py.pyx":2007
* except IERR with gil:
* FunctionBegin(b"SNESPreStep_Python")
* cdef preStep = PySNES(snes).preStep # <<<<<<<<<<<<<<
* if preStep is not None:
* preStep(SNES_(snes))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1994, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2007, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_preStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1994, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_preStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2007, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_preStep = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1995
+ /* "libpetsc4py.pyx":2008
* FunctionBegin(b"SNESPreStep_Python")
* cdef preStep = PySNES(snes).preStep
* if preStep is not None: # <<<<<<<<<<<<<<
@@ -21131,18 +22893,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPreStep_Python(SNES __pyx_v_snes
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":1996
+ /* "libpetsc4py.pyx":2009
* cdef preStep = PySNES(snes).preStep
* if preStep is not None:
* preStep(SNES_(snes)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1996, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2009, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_preStep);
__pyx_t_5 = __pyx_v_preStep; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -21152,24 +22914,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPreStep_Python(SNES __pyx_v_snes
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1996, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2009, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1996, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1996, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2009, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2009, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2009, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2009, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":1995
+ /* "libpetsc4py.pyx":2008
* FunctionBegin(b"SNESPreStep_Python")
* cdef preStep = PySNES(snes).preStep
* if preStep is not None: # <<<<<<<<<<<<<<
@@ -21178,7 +22960,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPreStep_Python(SNES __pyx_v_snes
*/
}
- /* "libpetsc4py.pyx":1997
+ /* "libpetsc4py.pyx":2010
* if preStep is not None:
* preStep(SNES_(snes))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -21188,7 +22970,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPreStep_Python(SNES __pyx_v_snes
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1989
+ /* "libpetsc4py.pyx":2002
* return FunctionEnd()
*
* cdef PetscErrorCode SNESPreStep_Python( # <<<<<<<<<<<<<<
@@ -21209,12 +22991,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPreStep_Python(SNES __pyx_v_snes
__Pyx_XDECREF(__pyx_v_preStep);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":1999
+/* "libpetsc4py.pyx":2012
* return FunctionEnd()
*
* cdef PetscErrorCode SNESPostStep_Python( # <<<<<<<<<<<<<<
@@ -21234,11 +23016,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES __pyx_v_sne
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESPostStep_Python", 0);
- /* "libpetsc4py.pyx":2003
+ /* "libpetsc4py.pyx":2016
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESPostStep_Python") # <<<<<<<<<<<<<<
@@ -21247,22 +23029,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES __pyx_v_sne
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESPostStep_Python"));
- /* "libpetsc4py.pyx":2004
+ /* "libpetsc4py.pyx":2017
* except IERR with gil:
* FunctionBegin(b"SNESPostStep_Python")
* cdef postStep = PySNES(snes).postStep # <<<<<<<<<<<<<<
* if postStep is not None:
* postStep(SNES_(snes))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2004, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_postStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2004, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_postStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_postStep = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2005
+ /* "libpetsc4py.pyx":2018
* FunctionBegin(b"SNESPostStep_Python")
* cdef postStep = PySNES(snes).postStep
* if postStep is not None: # <<<<<<<<<<<<<<
@@ -21273,18 +23055,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES __pyx_v_sne
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2006
+ /* "libpetsc4py.pyx":2019
* cdef postStep = PySNES(snes).postStep
* if postStep is not None:
* postStep(SNES_(snes)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2006, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2019, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_postStep);
__pyx_t_5 = __pyx_v_postStep; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -21294,24 +23076,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES __pyx_v_sne
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2006, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2019, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2006, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2006, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2005
+ /* "libpetsc4py.pyx":2018
* FunctionBegin(b"SNESPostStep_Python")
* cdef postStep = PySNES(snes).postStep
* if postStep is not None: # <<<<<<<<<<<<<<
@@ -21320,7 +23122,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES __pyx_v_sne
*/
}
- /* "libpetsc4py.pyx":2007
+ /* "libpetsc4py.pyx":2020
* if postStep is not None:
* postStep(SNES_(snes))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -21330,7 +23132,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES __pyx_v_sne
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":1999
+ /* "libpetsc4py.pyx":2012
* return FunctionEnd()
*
* cdef PetscErrorCode SNESPostStep_Python( # <<<<<<<<<<<<<<
@@ -21351,12 +23153,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESPostStep_Python(SNES __pyx_v_sne
__Pyx_XDECREF(__pyx_v_postStep);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2009
+/* "libpetsc4py.pyx":2022
* return FunctionEnd()
*
* cdef PetscErrorCode SNESStep_Python( # <<<<<<<<<<<<<<
@@ -21377,15 +23179,15 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
+ int __pyx_t_10;
PyObject *__pyx_t_11 = NULL;
PetscErrorCode __pyx_t_12;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESStep_Python", 0);
- /* "libpetsc4py.pyx":2016
+ /* "libpetsc4py.pyx":2029
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESStep_Python") # <<<<<<<<<<<<<<
@@ -21394,22 +23196,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESStep_Python"));
- /* "libpetsc4py.pyx":2017
+ /* "libpetsc4py.pyx":2030
* except IERR with gil:
* FunctionBegin(b"SNESStep_Python")
* cdef step = PySNES(snes).step # <<<<<<<<<<<<<<
* if step is not None:
* step(SNES_(snes),Vec_(X),Vec_(F),Vec_(Y))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2017, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PySNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2030, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_step); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2017, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_step); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2030, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_step = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2018
+ /* "libpetsc4py.pyx":2031
* FunctionBegin(b"SNESStep_Python")
* cdef step = PySNES(snes).step
* if step is not None: # <<<<<<<<<<<<<<
@@ -21420,25 +23222,25 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2019
+ /* "libpetsc4py.pyx":2032
* cdef step = PySNES(snes).step
* if step is not None:
* step(SNES_(snes),Vec_(X),Vec_(F),Vec_(Y)) # <<<<<<<<<<<<<<
* else:
* SNESStep_Python_default(snes,X,F,Y)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_X)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_X)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_F)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_F)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_Y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2019, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_Y)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_step);
__pyx_t_8 = __pyx_v_step; __pyx_t_9 = NULL;
__pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -21448,30 +23250,56 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
__pyx_t_10 = 1;
}
}
- __pyx_t_11 = PyTuple_New(4+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2019, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_10, __pyx_t_7);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2019, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2032, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_9, __pyx_t_1, __pyx_t_5, __pyx_t_6, __pyx_t_7};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 4+__pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2032, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(4+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2032, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_10, __pyx_t_7);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2032, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ }
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2018
+ /* "libpetsc4py.pyx":2031
* FunctionBegin(b"SNESStep_Python")
* cdef step = PySNES(snes).step
* if step is not None: # <<<<<<<<<<<<<<
@@ -21481,7 +23309,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":2021
+ /* "libpetsc4py.pyx":2034
* step(SNES_(snes),Vec_(X),Vec_(F),Vec_(Y))
* else:
* SNESStep_Python_default(snes,X,F,Y) # <<<<<<<<<<<<<<
@@ -21489,11 +23317,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
*
*/
/*else*/ {
- __pyx_t_12 = __pyx_f_11libpetsc4py_SNESStep_Python_default(__pyx_v_snes, __pyx_v_X, __pyx_v_F, __pyx_v_Y); if (unlikely(__pyx_t_12 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2021, __pyx_L1_error)
+ __pyx_t_12 = __pyx_f_11libpetsc4py_SNESStep_Python_default(__pyx_v_snes, __pyx_v_X, __pyx_v_F, __pyx_v_Y); if (unlikely(__pyx_t_12 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2034, __pyx_L1_error)
}
__pyx_L3:;
- /* "libpetsc4py.pyx":2022
+ /* "libpetsc4py.pyx":2035
* else:
* SNESStep_Python_default(snes,X,F,Y)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -21503,7 +23331,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2009
+ /* "libpetsc4py.pyx":2022
* return FunctionEnd()
*
* cdef PetscErrorCode SNESStep_Python( # <<<<<<<<<<<<<<
@@ -21527,12 +23355,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python(SNES __pyx_v_snes, V
__Pyx_XDECREF(__pyx_v_step);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2024
+/* "libpetsc4py.pyx":2037
* return FunctionEnd()
*
* cdef PetscErrorCode SNESStep_Python_default( # <<<<<<<<<<<<<<
@@ -21548,11 +23376,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES __pyx_v
__Pyx_RefNannyDeclarations
int __pyx_t_1;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESStep_Python_default", 0);
- /* "libpetsc4py.pyx":2031
+ /* "libpetsc4py.pyx":2044
* ) \
* except IERR with gil:
* FunctionBegin(b"SNESStep_Python_default") # <<<<<<<<<<<<<<
@@ -21561,7 +23389,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES __pyx_v
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"SNESStep_Python_default"));
- /* "libpetsc4py.pyx":2032
+ /* "libpetsc4py.pyx":2045
* except IERR with gil:
* FunctionBegin(b"SNESStep_Python_default")
* cdef PetscMat J = NULL, P = NULL # <<<<<<<<<<<<<<
@@ -21571,7 +23399,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES __pyx_v
__pyx_v_J = NULL;
__pyx_v_P = NULL;
- /* "libpetsc4py.pyx":2033
+ /* "libpetsc4py.pyx":2046
* FunctionBegin(b"SNESStep_Python_default")
* cdef PetscMat J = NULL, P = NULL
* cdef PetscInt lits = 0 # <<<<<<<<<<<<<<
@@ -21580,52 +23408,52 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES __pyx_v
*/
__pyx_v_lits = 0;
- /* "libpetsc4py.pyx":2034
+ /* "libpetsc4py.pyx":2047
* cdef PetscMat J = NULL, P = NULL
* cdef PetscInt lits = 0
* CHKERR( SNESGetJacobian(snes,&J,&P,NULL,NULL) ) # <<<<<<<<<<<<<<
* CHKERR( SNESComputeJacobian(snes,X,J,P) )
* CHKERR( KSPSetOperators(snes.ksp,J,P) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetJacobian(__pyx_v_snes, (&__pyx_v_J), (&__pyx_v_P), NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2034, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESGetJacobian(__pyx_v_snes, (&__pyx_v_J), (&__pyx_v_P), NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2047, __pyx_L1_error)
- /* "libpetsc4py.pyx":2035
+ /* "libpetsc4py.pyx":2048
* cdef PetscInt lits = 0
* CHKERR( SNESGetJacobian(snes,&J,&P,NULL,NULL) )
* CHKERR( SNESComputeJacobian(snes,X,J,P) ) # <<<<<<<<<<<<<<
* CHKERR( KSPSetOperators(snes.ksp,J,P) )
* CHKERR( KSPSolve(snes.ksp,F,Y) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESComputeJacobian(__pyx_v_snes, __pyx_v_X, __pyx_v_J, __pyx_v_P)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2035, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESComputeJacobian(__pyx_v_snes, __pyx_v_X, __pyx_v_J, __pyx_v_P)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2048, __pyx_L1_error)
- /* "libpetsc4py.pyx":2036
+ /* "libpetsc4py.pyx":2049
* CHKERR( SNESGetJacobian(snes,&J,&P,NULL,NULL) )
* CHKERR( SNESComputeJacobian(snes,X,J,P) )
* CHKERR( KSPSetOperators(snes.ksp,J,P) ) # <<<<<<<<<<<<<<
* CHKERR( KSPSolve(snes.ksp,F,Y) )
* CHKERR( KSPGetIterationNumber(snes.ksp,&lits) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPSetOperators(__pyx_v_snes->ksp, __pyx_v_J, __pyx_v_P)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2036, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPSetOperators(__pyx_v_snes->ksp, __pyx_v_J, __pyx_v_P)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2049, __pyx_L1_error)
- /* "libpetsc4py.pyx":2037
+ /* "libpetsc4py.pyx":2050
* CHKERR( SNESComputeJacobian(snes,X,J,P) )
* CHKERR( KSPSetOperators(snes.ksp,J,P) )
* CHKERR( KSPSolve(snes.ksp,F,Y) ) # <<<<<<<<<<<<<<
* CHKERR( KSPGetIterationNumber(snes.ksp,&lits) )
* snes.linear_its += lits
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPSolve(__pyx_v_snes->ksp, __pyx_v_F, __pyx_v_Y)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2037, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPSolve(__pyx_v_snes->ksp, __pyx_v_F, __pyx_v_Y)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2050, __pyx_L1_error)
- /* "libpetsc4py.pyx":2038
+ /* "libpetsc4py.pyx":2051
* CHKERR( KSPSetOperators(snes.ksp,J,P) )
* CHKERR( KSPSolve(snes.ksp,F,Y) )
* CHKERR( KSPGetIterationNumber(snes.ksp,&lits) ) # <<<<<<<<<<<<<<
* snes.linear_its += lits
* return FunctionEnd()
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPGetIterationNumber(__pyx_v_snes->ksp, (&__pyx_v_lits))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2038, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPGetIterationNumber(__pyx_v_snes->ksp, (&__pyx_v_lits))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2051, __pyx_L1_error)
- /* "libpetsc4py.pyx":2039
+ /* "libpetsc4py.pyx":2052
* CHKERR( KSPSolve(snes.ksp,F,Y) )
* CHKERR( KSPGetIterationNumber(snes.ksp,&lits) )
* snes.linear_its += lits # <<<<<<<<<<<<<<
@@ -21634,7 +23462,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES __pyx_v
*/
__pyx_v_snes->linear_its = (__pyx_v_snes->linear_its + __pyx_v_lits);
- /* "libpetsc4py.pyx":2040
+ /* "libpetsc4py.pyx":2053
* CHKERR( KSPGetIterationNumber(snes.ksp,&lits) )
* snes.linear_its += lits
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -21644,7 +23472,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES __pyx_v
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2024
+ /* "libpetsc4py.pyx":2037
* return FunctionEnd()
*
* cdef PetscErrorCode SNESStep_Python_default( # <<<<<<<<<<<<<<
@@ -21659,12 +23487,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESStep_Python_default(SNES __pyx_v
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2118
+/* "libpetsc4py.pyx":2133
* @cython.internal
* cdef class _PyTS(_PyObj): pass
* cdef inline _PyTS PyTS(PetscTS ts): # <<<<<<<<<<<<<<
@@ -21680,7 +23508,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyTS *__pyx_f_11libpetsc4py
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("PyTS", 0);
- /* "libpetsc4py.pyx":2119
+ /* "libpetsc4py.pyx":2134
* cdef class _PyTS(_PyObj): pass
* cdef inline _PyTS PyTS(PetscTS ts):
* if ts != NULL and ts.data != NULL: # <<<<<<<<<<<<<<
@@ -21698,7 +23526,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyTS *__pyx_f_11libpetsc4py
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "libpetsc4py.pyx":2120
+ /* "libpetsc4py.pyx":2135
* cdef inline _PyTS PyTS(PetscTS ts):
* if ts != NULL and ts.data != NULL:
* return <_PyTS>ts.data # <<<<<<<<<<<<<<
@@ -21710,7 +23538,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyTS *__pyx_f_11libpetsc4py
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_v_ts->data);
goto __pyx_L0;
- /* "libpetsc4py.pyx":2119
+ /* "libpetsc4py.pyx":2134
* cdef class _PyTS(_PyObj): pass
* cdef inline _PyTS PyTS(PetscTS ts):
* if ts != NULL and ts.data != NULL: # <<<<<<<<<<<<<<
@@ -21719,7 +23547,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyTS *__pyx_f_11libpetsc4py
*/
}
- /* "libpetsc4py.pyx":2122
+ /* "libpetsc4py.pyx":2137
* return <_PyTS>ts.data
* else:
* return _PyTS.__new__(_PyTS) # <<<<<<<<<<<<<<
@@ -21728,15 +23556,15 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyTS *__pyx_f_11libpetsc4py
*/
/*else*/ {
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyTS(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyTS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2122, __pyx_L1_error)
+ __pyx_t_3 = __pyx_tp_new_11libpetsc4py__PyTS(((PyTypeObject *)__pyx_ptype_11libpetsc4py__PyTS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2137, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyTS)))) __PYX_ERR(0, 2122, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_11libpetsc4py__PyTS)))) __PYX_ERR(0, 2137, __pyx_L1_error)
__pyx_r = ((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_3);
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2118
+ /* "libpetsc4py.pyx":2133
* @cython.internal
* cdef class _PyTS(_PyObj): pass
* cdef inline _PyTS PyTS(PetscTS ts): # <<<<<<<<<<<<<<
@@ -21755,7 +23583,7 @@ static CYTHON_INLINE struct __pyx_obj_11libpetsc4py__PyTS *__pyx_f_11libpetsc4py
return __pyx_r;
}
-/* "libpetsc4py.pyx":2124
+/* "libpetsc4py.pyx":2139
* return _PyTS.__new__(_PyTS)
*
* cdef public PetscErrorCode TSPythonGetContext(PetscTS ts, void **ctx) \ # <<<<<<<<<<<<<<
@@ -21770,7 +23598,7 @@ PetscErrorCode TSPythonGetContext(TS __pyx_v_ts, void **__pyx_v_ctx) {
int __pyx_t_2;
__Pyx_RefNannySetupContext("TSPythonGetContext", 0);
- /* "libpetsc4py.pyx":2126
+ /* "libpetsc4py.pyx":2141
* cdef public PetscErrorCode TSPythonGetContext(PetscTS ts, void **ctx) \
* except IERR:
* FunctionBegin(b"TSPythonGetContext") # <<<<<<<<<<<<<<
@@ -21779,19 +23607,19 @@ PetscErrorCode TSPythonGetContext(TS __pyx_v_ts, void **__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSPythonGetContext"));
- /* "libpetsc4py.pyx":2127
+ /* "libpetsc4py.pyx":2142
* except IERR:
* FunctionBegin(b"TSPythonGetContext")
* PyTS(ts).getcontext(ctx) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2127, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2142, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 2127, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 2142, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":2128
+ /* "libpetsc4py.pyx":2143
* FunctionBegin(b"TSPythonGetContext")
* PyTS(ts).getcontext(ctx)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -21801,7 +23629,7 @@ PetscErrorCode TSPythonGetContext(TS __pyx_v_ts, void **__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2124
+ /* "libpetsc4py.pyx":2139
* return _PyTS.__new__(_PyTS)
*
* cdef public PetscErrorCode TSPythonGetContext(PetscTS ts, void **ctx) \ # <<<<<<<<<<<<<<
@@ -21819,7 +23647,7 @@ PetscErrorCode TSPythonGetContext(TS __pyx_v_ts, void **__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":2130
+/* "libpetsc4py.pyx":2145
* return FunctionEnd()
*
* cdef public PetscErrorCode TSPythonSetContext(PetscTS ts, void *ctx) \ # <<<<<<<<<<<<<<
@@ -21835,7 +23663,7 @@ PetscErrorCode TSPythonSetContext(TS __pyx_v_ts, void *__pyx_v_ctx) {
int __pyx_t_3;
__Pyx_RefNannySetupContext("TSPythonSetContext", 0);
- /* "libpetsc4py.pyx":2132
+ /* "libpetsc4py.pyx":2147
* cdef public PetscErrorCode TSPythonSetContext(PetscTS ts, void *ctx) \
* except IERR:
* FunctionBegin(b"TSPythonSetContext") # <<<<<<<<<<<<<<
@@ -21844,22 +23672,22 @@ PetscErrorCode TSPythonSetContext(TS __pyx_v_ts, void *__pyx_v_ctx) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSPythonSetContext"));
- /* "libpetsc4py.pyx":2133
+ /* "libpetsc4py.pyx":2148
* except IERR:
* FunctionBegin(b"TSPythonSetContext")
* PyTS(ts).setcontext(ctx, TS_(ts)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2133, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2148, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2133, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2148, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 2133, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.setcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_ctx, ((struct PyPetscObjectObject *)__pyx_t_2)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 2148, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2134
+ /* "libpetsc4py.pyx":2149
* FunctionBegin(b"TSPythonSetContext")
* PyTS(ts).setcontext(ctx, TS_(ts))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -21869,7 +23697,7 @@ PetscErrorCode TSPythonSetContext(TS __pyx_v_ts, void *__pyx_v_ctx) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2130
+ /* "libpetsc4py.pyx":2145
* return FunctionEnd()
*
* cdef public PetscErrorCode TSPythonSetContext(PetscTS ts, void *ctx) \ # <<<<<<<<<<<<<<
@@ -21888,7 +23716,7 @@ PetscErrorCode TSPythonSetContext(TS __pyx_v_ts, void *__pyx_v_ctx) {
return __pyx_r;
}
-/* "libpetsc4py.pyx":2136
+/* "libpetsc4py.pyx":2151
* return FunctionEnd()
*
* cdef PetscErrorCode TSPythonSetType_PYTHON(PetscTS ts, char name[]) \ # <<<<<<<<<<<<<<
@@ -21905,11 +23733,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(TS __pyx_v_ts
PetscErrorCode __pyx_t_3;
int __pyx_t_4;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSPythonSetType_PYTHON", 0);
- /* "libpetsc4py.pyx":2138
+ /* "libpetsc4py.pyx":2153
* cdef PetscErrorCode TSPythonSetType_PYTHON(PetscTS ts, char name[]) \
* except IERR with gil:
* FunctionBegin(b"TSPythonSetType_PYTHON") # <<<<<<<<<<<<<<
@@ -21918,7 +23746,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(TS __pyx_v_ts
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSPythonSetType_PYTHON"));
- /* "libpetsc4py.pyx":2139
+ /* "libpetsc4py.pyx":2154
* except IERR with gil:
* FunctionBegin(b"TSPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX # <<<<<<<<<<<<<<
@@ -21931,40 +23759,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(TS __pyx_v_ts
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2140
+ /* "libpetsc4py.pyx":2155
* FunctionBegin(b"TSPythonSetType_PYTHON")
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name) # <<<<<<<<<<<<<<
* TSPythonSetContext(ts, <void*>ctx)
* PyTS(ts).setname(name)
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2140, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_createcontext(__pyx_v_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2155, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ctx = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2141
+ /* "libpetsc4py.pyx":2156
* if name == NULL: return FunctionEnd() # XXX
* cdef object ctx = createcontext(name)
* TSPythonSetContext(ts, <void*>ctx) # <<<<<<<<<<<<<<
* PyTS(ts).setname(name)
* return 0
*/
- __pyx_t_3 = TSPythonSetContext(__pyx_v_ts, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2141, __pyx_L1_error)
+ __pyx_t_3 = TSPythonSetContext(__pyx_v_ts, ((void *)__pyx_v_ctx)); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2156, __pyx_L1_error)
- /* "libpetsc4py.pyx":2142
+ /* "libpetsc4py.pyx":2157
* cdef object ctx = createcontext(name)
* TSPythonSetContext(ts, <void*>ctx)
* PyTS(ts).setname(name) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2142, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2157, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 2142, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_2)->__pyx_base.__pyx_vtab)->__pyx_base.setname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_2), __pyx_v_name); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 2157, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2143
+ /* "libpetsc4py.pyx":2158
* TSPythonSetContext(ts, <void*>ctx)
* PyTS(ts).setname(name)
* return 0 # <<<<<<<<<<<<<<
@@ -21974,7 +23802,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(TS __pyx_v_ts
__pyx_r = 0;
goto __pyx_L0;
- /* "libpetsc4py.pyx":2136
+ /* "libpetsc4py.pyx":2151
* return FunctionEnd()
*
* cdef PetscErrorCode TSPythonSetType_PYTHON(PetscTS ts, char name[]) \ # <<<<<<<<<<<<<<
@@ -21991,12 +23819,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(TS __pyx_v_ts
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2145
+/* "libpetsc4py.pyx":2160
* return 0
*
* cdef PetscErrorCode TSCreate_Python( # <<<<<<<<<<<<<<
@@ -22013,11 +23841,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSCreate_Python", 0);
- /* "libpetsc4py.pyx":2149
+ /* "libpetsc4py.pyx":2164
* ) \
* except IERR with gil:
* FunctionBegin(b"TSCreate_Python") # <<<<<<<<<<<<<<
@@ -22026,7 +23854,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSCreate_Python"));
- /* "libpetsc4py.pyx":2151
+ /* "libpetsc4py.pyx":2166
* FunctionBegin(b"TSCreate_Python")
* #
* cdef TSOps ops = ts.ops # <<<<<<<<<<<<<<
@@ -22036,7 +23864,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
__pyx_t_1 = __pyx_v_ts->ops;
__pyx_v_ops = __pyx_t_1;
- /* "libpetsc4py.pyx":2152
+ /* "libpetsc4py.pyx":2167
* #
* cdef TSOps ops = ts.ops
* ops.reset = TSReset_Python # <<<<<<<<<<<<<<
@@ -22045,7 +23873,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->reset = __pyx_f_11libpetsc4py_TSReset_Python;
- /* "libpetsc4py.pyx":2153
+ /* "libpetsc4py.pyx":2168
* cdef TSOps ops = ts.ops
* ops.reset = TSReset_Python
* ops.destroy = TSDestroy_Python # <<<<<<<<<<<<<<
@@ -22054,7 +23882,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->destroy = __pyx_f_11libpetsc4py_TSDestroy_Python;
- /* "libpetsc4py.pyx":2154
+ /* "libpetsc4py.pyx":2169
* ops.reset = TSReset_Python
* ops.destroy = TSDestroy_Python
* ops.setup = TSSetUp_Python # <<<<<<<<<<<<<<
@@ -22063,7 +23891,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->setup = __pyx_f_11libpetsc4py_TSSetUp_Python;
- /* "libpetsc4py.pyx":2155
+ /* "libpetsc4py.pyx":2170
* ops.destroy = TSDestroy_Python
* ops.setup = TSSetUp_Python
* ops.setfromoptions = TSSetFromOptions_Python # <<<<<<<<<<<<<<
@@ -22072,7 +23900,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->setfromoptions = __pyx_f_11libpetsc4py_TSSetFromOptions_Python;
- /* "libpetsc4py.pyx":2156
+ /* "libpetsc4py.pyx":2171
* ops.setup = TSSetUp_Python
* ops.setfromoptions = TSSetFromOptions_Python
* ops.view = TSView_Python # <<<<<<<<<<<<<<
@@ -22081,7 +23909,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->view = __pyx_f_11libpetsc4py_TSView_Python;
- /* "libpetsc4py.pyx":2157
+ /* "libpetsc4py.pyx":2172
* ops.setfromoptions = TSSetFromOptions_Python
* ops.view = TSView_Python
* ops.step = TSStep_Python # <<<<<<<<<<<<<<
@@ -22090,7 +23918,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->step = __pyx_f_11libpetsc4py_TSStep_Python;
- /* "libpetsc4py.pyx":2158
+ /* "libpetsc4py.pyx":2173
* ops.view = TSView_Python
* ops.step = TSStep_Python
* ops.rollback = TSRollBack_Python # <<<<<<<<<<<<<<
@@ -22099,7 +23927,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->rollback = __pyx_f_11libpetsc4py_TSRollBack_Python;
- /* "libpetsc4py.pyx":2159
+ /* "libpetsc4py.pyx":2174
* ops.step = TSStep_Python
* ops.rollback = TSRollBack_Python
* ops.interpolate = TSInterpolate_Python # <<<<<<<<<<<<<<
@@ -22108,7 +23936,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->interpolate = __pyx_f_11libpetsc4py_TSInterpolate_Python;
- /* "libpetsc4py.pyx":2160
+ /* "libpetsc4py.pyx":2175
* ops.rollback = TSRollBack_Python
* ops.interpolate = TSInterpolate_Python
* ops.evaluatestep = TSEvaluateStep_Python # <<<<<<<<<<<<<<
@@ -22117,7 +23945,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->evaluatestep = __pyx_f_11libpetsc4py_TSEvaluateStep_Python;
- /* "libpetsc4py.pyx":2161
+ /* "libpetsc4py.pyx":2176
* ops.interpolate = TSInterpolate_Python
* ops.evaluatestep = TSEvaluateStep_Python
* ops.snesfunction = SNESTSFormFunction_Python # <<<<<<<<<<<<<<
@@ -22126,7 +23954,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->snesfunction = __pyx_f_11libpetsc4py_SNESTSFormFunction_Python;
- /* "libpetsc4py.pyx":2162
+ /* "libpetsc4py.pyx":2177
* ops.evaluatestep = TSEvaluateStep_Python
* ops.snesfunction = SNESTSFormFunction_Python
* ops.snesjacobian = SNESTSFormJacobian_Python # <<<<<<<<<<<<<<
@@ -22135,28 +23963,28 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ops->snesjacobian = __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python;
- /* "libpetsc4py.pyx":2164
+ /* "libpetsc4py.pyx":2179
* ops.snesjacobian = SNESTSFormJacobian_Python
* #
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>ts, b"TSPythonSetType_C",
* <PetscVoidFunction>TSPythonSetType_PYTHON) )
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ts), ((char *)"TSPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_TSPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 2164, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ts), ((char *)"TSPythonSetType_C"), ((PetscVoidFunction)__pyx_f_11libpetsc4py_TSPythonSetType_PYTHON))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 2179, __pyx_L1_error)
- /* "libpetsc4py.pyx":2168
+ /* "libpetsc4py.pyx":2183
* <PetscVoidFunction>TSPythonSetType_PYTHON) )
* #
* cdef ctx = PyTS(NULL) # <<<<<<<<<<<<<<
* ts.data = <void*> ctx
* Py_INCREF(<PyObject*>ts.data)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2168, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(NULL)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2183, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_ctx = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":2169
+ /* "libpetsc4py.pyx":2184
* #
* cdef ctx = PyTS(NULL)
* ts.data = <void*> ctx # <<<<<<<<<<<<<<
@@ -22165,7 +23993,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
__pyx_v_ts->data = ((void *)__pyx_v_ctx);
- /* "libpetsc4py.pyx":2170
+ /* "libpetsc4py.pyx":2185
* cdef ctx = PyTS(NULL)
* ts.data = <void*> ctx
* Py_INCREF(<PyObject*>ts.data) # <<<<<<<<<<<<<<
@@ -22174,7 +24002,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
*/
Py_INCREF(((PyObject *)__pyx_v_ts->data));
- /* "libpetsc4py.pyx":2171
+ /* "libpetsc4py.pyx":2186
* ts.data = <void*> ctx
* Py_INCREF(<PyObject*>ts.data)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -22184,7 +24012,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2145
+ /* "libpetsc4py.pyx":2160
* return 0
*
* cdef PetscErrorCode TSCreate_Python( # <<<<<<<<<<<<<<
@@ -22201,12 +24029,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSCreate_Python(TS __pyx_v_ts) {
__Pyx_XDECREF(__pyx_v_ctx);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2173
+/* "libpetsc4py.pyx":2188
* return FunctionEnd()
*
* cdef PetscErrorCode TSDestroy_Python( # <<<<<<<<<<<<<<
@@ -22229,11 +24057,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
PyObject *__pyx_t_10 = NULL;
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSDestroy_Python", 0);
- /* "libpetsc4py.pyx":2177
+ /* "libpetsc4py.pyx":2192
* ) \
* except IERR with gil:
* FunctionBegin(b"TSDestroy_Python") # <<<<<<<<<<<<<<
@@ -22242,16 +24070,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSDestroy_Python"));
- /* "libpetsc4py.pyx":2178
+ /* "libpetsc4py.pyx":2193
* except IERR with gil:
* FunctionBegin(b"TSDestroy_Python")
* CHKERR( PetscObjectComposeFunction( # <<<<<<<<<<<<<<
* <PetscObject>ts, b"TSPythonSetType_C",
* <PetscVoidFunction>NULL) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ts), ((char *)"TSPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2178, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectComposeFunction(((PetscObject)__pyx_v_ts), ((char *)"TSPythonSetType_C"), ((PetscVoidFunction)NULL))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2193, __pyx_L1_error)
- /* "libpetsc4py.pyx":2182
+ /* "libpetsc4py.pyx":2197
* <PetscVoidFunction>NULL) )
* #
* if not Py_IsInitialized(): return FunctionEnd() # <<<<<<<<<<<<<<
@@ -22264,7 +24092,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2183
+ /* "libpetsc4py.pyx":2198
* #
* if not Py_IsInitialized(): return FunctionEnd()
* try: # <<<<<<<<<<<<<<
@@ -22273,7 +24101,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
*/
/*try:*/ {
- /* "libpetsc4py.pyx":2184
+ /* "libpetsc4py.pyx":2199
* if not Py_IsInitialized(): return FunctionEnd()
* try:
* addRef(ts) # <<<<<<<<<<<<<<
@@ -22282,17 +24110,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_addRef(__pyx_v_ts);
- /* "libpetsc4py.pyx":2185
+ /* "libpetsc4py.pyx":2200
* try:
* addRef(ts)
* TSPythonSetContext(ts, NULL) # <<<<<<<<<<<<<<
* finally:
* delRef(ts)
*/
- __pyx_t_3 = TSPythonSetContext(__pyx_v_ts, NULL); if (unlikely(__pyx_t_3 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2185, __pyx_L5_error)
+ __pyx_t_3 = TSPythonSetContext(__pyx_v_ts, NULL); if (unlikely(__pyx_t_3 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2200, __pyx_L5_error)
}
- /* "libpetsc4py.pyx":2187
+ /* "libpetsc4py.pyx":2202
* TSPythonSetContext(ts, NULL)
* finally:
* delRef(ts) # <<<<<<<<<<<<<<
@@ -22303,7 +24131,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
/*normal exit:*/{
__pyx_f_11libpetsc4py_delRef(__pyx_v_ts);
- /* "libpetsc4py.pyx":2188
+ /* "libpetsc4py.pyx":2203
* finally:
* delRef(ts)
* Py_DECREF(<PyObject*>ts.data) # <<<<<<<<<<<<<<
@@ -22312,7 +24140,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
*/
Py_DECREF(((PyObject *)__pyx_v_ts->data));
- /* "libpetsc4py.pyx":2189
+ /* "libpetsc4py.pyx":2204
* delRef(ts)
* Py_DECREF(<PyObject*>ts.data)
* ts.data = NULL # <<<<<<<<<<<<<<
@@ -22338,7 +24166,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
__pyx_t_1 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
{
- /* "libpetsc4py.pyx":2187
+ /* "libpetsc4py.pyx":2202
* TSPythonSetContext(ts, NULL)
* finally:
* delRef(ts) # <<<<<<<<<<<<<<
@@ -22347,7 +24175,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_delRef(__pyx_v_ts);
- /* "libpetsc4py.pyx":2188
+ /* "libpetsc4py.pyx":2203
* finally:
* delRef(ts)
* Py_DECREF(<PyObject*>ts.data) # <<<<<<<<<<<<<<
@@ -22356,7 +24184,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
*/
Py_DECREF(((PyObject *)__pyx_v_ts->data));
- /* "libpetsc4py.pyx":2189
+ /* "libpetsc4py.pyx":2204
* delRef(ts)
* Py_DECREF(<PyObject*>ts.data)
* ts.data = NULL # <<<<<<<<<<<<<<
@@ -22365,7 +24193,6 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
*/
__pyx_v_ts->data = NULL;
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_9);
__Pyx_XGIVEREF(__pyx_t_10);
@@ -22383,7 +24210,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
__pyx_L6:;
}
- /* "libpetsc4py.pyx":2190
+ /* "libpetsc4py.pyx":2205
* Py_DECREF(<PyObject*>ts.data)
* ts.data = NULL
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -22393,7 +24220,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2173
+ /* "libpetsc4py.pyx":2188
* return FunctionEnd()
*
* cdef PetscErrorCode TSDestroy_Python( # <<<<<<<<<<<<<<
@@ -22408,12 +24235,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSDestroy_Python(TS __pyx_v_ts) {
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2192
+/* "libpetsc4py.pyx":2207
* return FunctionEnd()
*
* cdef PetscErrorCode TSSetUp_Python( # <<<<<<<<<<<<<<
@@ -22439,11 +24266,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSSetUp_Python", 0);
- /* "libpetsc4py.pyx":2196
+ /* "libpetsc4py.pyx":2211
* ) \
* except IERR with gil:
* FunctionBegin(b"TSSetUp_Python") # <<<<<<<<<<<<<<
@@ -22452,7 +24279,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSSetUp_Python"));
- /* "libpetsc4py.pyx":2198
+ /* "libpetsc4py.pyx":2213
* FunctionBegin(b"TSSetUp_Python")
* #
* cdef PetscVec vec_update = NULL # <<<<<<<<<<<<<<
@@ -22461,34 +24288,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
__pyx_v_vec_update = NULL;
- /* "libpetsc4py.pyx":2199
+ /* "libpetsc4py.pyx":2214
* #
* cdef PetscVec vec_update = NULL
* CHKERR( VecDuplicate(ts.vec_sol,&vec_update) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectCompose(<PetscObject>ts,
* b"@ts.vec_update",
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_ts->vec_sol, (&__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2199, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_ts->vec_sol, (&__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2214, __pyx_L1_error)
- /* "libpetsc4py.pyx":2200
+ /* "libpetsc4py.pyx":2215
* cdef PetscVec vec_update = NULL
* CHKERR( VecDuplicate(ts.vec_sol,&vec_update) )
* CHKERR( PetscObjectCompose(<PetscObject>ts, # <<<<<<<<<<<<<<
* b"@ts.vec_update",
* <PetscObject>vec_update) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_update"), ((PetscObject)__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2200, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_update"), ((PetscObject)__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2215, __pyx_L1_error)
- /* "libpetsc4py.pyx":2203
+ /* "libpetsc4py.pyx":2218
* b"@ts.vec_update",
* <PetscObject>vec_update) )
* CHKERR( VecDestroy(&vec_update) ) # <<<<<<<<<<<<<<
* cdef PetscVec vec_dot = NULL
* CHKERR( VecDuplicate(ts.vec_sol,&vec_dot) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDestroy((&__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2203, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDestroy((&__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2218, __pyx_L1_error)
- /* "libpetsc4py.pyx":2204
+ /* "libpetsc4py.pyx":2219
* <PetscObject>vec_update) )
* CHKERR( VecDestroy(&vec_update) )
* cdef PetscVec vec_dot = NULL # <<<<<<<<<<<<<<
@@ -22497,34 +24324,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
__pyx_v_vec_dot = NULL;
- /* "libpetsc4py.pyx":2205
+ /* "libpetsc4py.pyx":2220
* CHKERR( VecDestroy(&vec_update) )
* cdef PetscVec vec_dot = NULL
* CHKERR( VecDuplicate(ts.vec_sol,&vec_dot) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectCompose(<PetscObject>ts,
* b"@ts.vec_dot",
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_ts->vec_sol, (&__pyx_v_vec_dot))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2205, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDuplicate(__pyx_v_ts->vec_sol, (&__pyx_v_vec_dot))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2220, __pyx_L1_error)
- /* "libpetsc4py.pyx":2206
+ /* "libpetsc4py.pyx":2221
* cdef PetscVec vec_dot = NULL
* CHKERR( VecDuplicate(ts.vec_sol,&vec_dot) )
* CHKERR( PetscObjectCompose(<PetscObject>ts, # <<<<<<<<<<<<<<
* b"@ts.vec_dot",
* <PetscObject>vec_dot) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), ((PetscObject)__pyx_v_vec_dot))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2206, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), ((PetscObject)__pyx_v_vec_dot))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2221, __pyx_L1_error)
- /* "libpetsc4py.pyx":2209
+ /* "libpetsc4py.pyx":2224
* b"@ts.vec_dot",
* <PetscObject>vec_dot) )
* CHKERR( VecDestroy(&vec_dot) ) # <<<<<<<<<<<<<<
* #
* cdef char name[2048]
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDestroy((&__pyx_v_vec_dot))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2209, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecDestroy((&__pyx_v_vec_dot))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2224, __pyx_L1_error)
- /* "libpetsc4py.pyx":2212
+ /* "libpetsc4py.pyx":2227
* #
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -22533,30 +24360,30 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":2213
+ /* "libpetsc4py.pyx":2228
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyTS(ts).self is None: # <<<<<<<<<<<<<<
* CHKERR( PetscOptionsGetString(NULL,
* getPrefix(ts),b"-ts_python_type",
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2213, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2228, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = (((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_2)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2214
+ /* "libpetsc4py.pyx":2229
* cdef PetscBool found = PETSC_FALSE
* if PyTS(ts).self is None:
* CHKERR( PetscOptionsGetString(NULL, # <<<<<<<<<<<<<<
* getPrefix(ts),b"-ts_python_type",
* name,sizeof(name),&found) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_ts), ((char *)"-ts_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2214, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsGetString(NULL, __pyx_f_11libpetsc4py_getPrefix(__pyx_v_ts), ((char *)"-ts_python_type"), __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2229, __pyx_L1_error)
- /* "libpetsc4py.pyx":2217
+ /* "libpetsc4py.pyx":2232
* getPrefix(ts),b"-ts_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -22573,17 +24400,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
__pyx_L5_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2218
+ /* "libpetsc4py.pyx":2233
* name,sizeof(name),&found) )
* if found and name[0]:
* CHKERR( TSPythonSetType_PYTHON(ts,name) ) # <<<<<<<<<<<<<<
* if PyTS(ts).self is None:
* return PetscSETERR(PETSC_ERR_USER,
*/
- __pyx_t_5 = __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(__pyx_v_ts, __pyx_v_name); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2218, __pyx_L1_error)
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2218, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(__pyx_v_ts, __pyx_v_name); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2233, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_5); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2233, __pyx_L1_error)
- /* "libpetsc4py.pyx":2217
+ /* "libpetsc4py.pyx":2232
* getPrefix(ts),b"-ts_python_type",
* name,sizeof(name),&found) )
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -22592,7 +24419,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
}
- /* "libpetsc4py.pyx":2213
+ /* "libpetsc4py.pyx":2228
* cdef char name[2048]
* cdef PetscBool found = PETSC_FALSE
* if PyTS(ts).self is None: # <<<<<<<<<<<<<<
@@ -22601,21 +24428,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
}
- /* "libpetsc4py.pyx":2219
+ /* "libpetsc4py.pyx":2234
* if found and name[0]:
* CHKERR( TSPythonSetType_PYTHON(ts,name) )
* if PyTS(ts).self is None: # <<<<<<<<<<<<<<
* return PetscSETERR(PETSC_ERR_USER,
* "Python context not set, call one of \n"
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2219, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2234, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_4 = (((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_2)->__pyx_base.self == Py_None);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_3 = (__pyx_t_4 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":2220
+ /* "libpetsc4py.pyx":2235
* CHKERR( TSPythonSetType_PYTHON(ts,name) )
* if PyTS(ts).self is None:
* return PetscSETERR(PETSC_ERR_USER, # <<<<<<<<<<<<<<
@@ -22625,7 +24452,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
__pyx_r = __pyx_f_11libpetsc4py_PetscSETERR(PETSC_ERR_USER, ((char *)"Python context not set, call one of \n * TSPythonSetType(ts,\"[package.]module.class\")\n * TSSetFromOptions(ts) and pass option -ts_python_type [package.]module.class"));
goto __pyx_L0;
- /* "libpetsc4py.pyx":2219
+ /* "libpetsc4py.pyx":2234
* if found and name[0]:
* CHKERR( TSPythonSetType_PYTHON(ts,name) )
* if PyTS(ts).self is None: # <<<<<<<<<<<<<<
@@ -22634,22 +24461,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
}
- /* "libpetsc4py.pyx":2226
+ /* "libpetsc4py.pyx":2241
* "-ts_python_type [package.]module.class")
* #
* cdef setUp = PyTS(ts).setUp # <<<<<<<<<<<<<<
* if setUp is not None:
* setUp(TS_(ts))
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2226, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2241, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2226, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_setUp); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2241, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_setUp = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":2227
+ /* "libpetsc4py.pyx":2242
* #
* cdef setUp = PyTS(ts).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -22660,18 +24487,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2228
+ /* "libpetsc4py.pyx":2243
* cdef setUp = PyTS(ts).setUp
* if setUp is not None:
* setUp(TS_(ts)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2228, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_setUp);
__pyx_t_7 = __pyx_v_setUp; __pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -22681,24 +24508,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
}
}
if (!__pyx_t_8) {
- __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2228, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2243, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2228, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_2);
- __pyx_t_2 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2228, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_2};
+ __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2243, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_2};
+ __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2243, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2243, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_2);
+ __pyx_t_2 = 0;
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2243, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "libpetsc4py.pyx":2227
+ /* "libpetsc4py.pyx":2242
* #
* cdef setUp = PyTS(ts).setUp
* if setUp is not None: # <<<<<<<<<<<<<<
@@ -22707,7 +24554,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
*/
}
- /* "libpetsc4py.pyx":2229
+ /* "libpetsc4py.pyx":2244
* if setUp is not None:
* setUp(TS_(ts))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -22717,7 +24564,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2192
+ /* "libpetsc4py.pyx":2207
* return FunctionEnd()
*
* cdef PetscErrorCode TSSetUp_Python( # <<<<<<<<<<<<<<
@@ -22738,12 +24585,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetUp_Python(TS __pyx_v_ts) {
__Pyx_XDECREF(__pyx_v_setUp);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2231
+/* "libpetsc4py.pyx":2246
* return FunctionEnd()
*
* cdef PetscErrorCode TSReset_Python( # <<<<<<<<<<<<<<
@@ -22764,11 +24611,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSReset_Python", 0);
- /* "libpetsc4py.pyx":2235
+ /* "libpetsc4py.pyx":2250
* ) \
* except IERR with gil:
* if getRef(ts) == 0: return 0 # <<<<<<<<<<<<<<
@@ -22781,7 +24628,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2236
+ /* "libpetsc4py.pyx":2251
* except IERR with gil:
* if getRef(ts) == 0: return 0
* FunctionBegin(b"TSReset_Python") # <<<<<<<<<<<<<<
@@ -22790,40 +24637,40 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSReset_Python"));
- /* "libpetsc4py.pyx":2238
+ /* "libpetsc4py.pyx":2253
* FunctionBegin(b"TSReset_Python")
* #
* CHKERR( PetscObjectCompose(<PetscObject>ts, b"@ts.vec_update", NULL) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectCompose(<PetscObject>ts, b"@ts.vec_dot", NULL) )
* #
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_update"), NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 2238, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_update"), NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 2253, __pyx_L1_error)
- /* "libpetsc4py.pyx":2239
+ /* "libpetsc4py.pyx":2254
* #
* CHKERR( PetscObjectCompose(<PetscObject>ts, b"@ts.vec_update", NULL) )
* CHKERR( PetscObjectCompose(<PetscObject>ts, b"@ts.vec_dot", NULL) ) # <<<<<<<<<<<<<<
* #
* cdef reset = PyTS(ts).reset
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 2239, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectCompose(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 2254, __pyx_L1_error)
- /* "libpetsc4py.pyx":2241
+ /* "libpetsc4py.pyx":2256
* CHKERR( PetscObjectCompose(<PetscObject>ts, b"@ts.vec_dot", NULL) )
* #
* cdef reset = PyTS(ts).reset # <<<<<<<<<<<<<<
* if reset is not None:
* reset(TS_(ts))
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2241, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reset); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2241, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reset); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_reset = __pyx_t_4;
__pyx_t_4 = 0;
- /* "libpetsc4py.pyx":2242
+ /* "libpetsc4py.pyx":2257
* #
* cdef reset = PyTS(ts).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -22834,18 +24681,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
__pyx_t_5 = (__pyx_t_1 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":2243
+ /* "libpetsc4py.pyx":2258
* cdef reset = PyTS(ts).reset
* if reset is not None:
* reset(TS_(ts)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2243, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_reset);
__pyx_t_6 = __pyx_v_reset; __pyx_t_7 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -22855,24 +24702,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
}
}
if (!__pyx_t_7) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2243, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2258, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2243, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_3);
- __pyx_t_3 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2243, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_3};
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2258, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_3};
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2258, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2258, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_3);
+ __pyx_t_3 = 0;
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2258, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "libpetsc4py.pyx":2242
+ /* "libpetsc4py.pyx":2257
* #
* cdef reset = PyTS(ts).reset
* if reset is not None: # <<<<<<<<<<<<<<
@@ -22881,7 +24748,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
*/
}
- /* "libpetsc4py.pyx":2244
+ /* "libpetsc4py.pyx":2259
* if reset is not None:
* reset(TS_(ts))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -22891,7 +24758,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2231
+ /* "libpetsc4py.pyx":2246
* return FunctionEnd()
*
* cdef PetscErrorCode TSReset_Python( # <<<<<<<<<<<<<<
@@ -22912,12 +24779,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSReset_Python(TS __pyx_v_ts) {
__Pyx_XDECREF(__pyx_v_reset);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2246
+/* "libpetsc4py.pyx":2261
* return FunctionEnd()
*
* cdef PetscErrorCode TSSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -22944,11 +24811,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
PyObject *__pyx_t_9 = NULL;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSSetFromOptions_Python", 0);
- /* "libpetsc4py.pyx":2251
+ /* "libpetsc4py.pyx":2266
* ) \
* except IERR with gil:
* FunctionBegin(b"TSSetFromOptions_Python") # <<<<<<<<<<<<<<
@@ -22957,20 +24824,20 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSSetFromOptions_Python"));
- /* "libpetsc4py.pyx":2252
+ /* "libpetsc4py.pyx":2267
* except IERR with gil:
* FunctionBegin(b"TSSetFromOptions_Python")
* cdef char name[2048], *defval = PyTS(ts).getname() # <<<<<<<<<<<<<<
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2252, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2267, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == NULL && PyErr_Occurred())) __PYX_ERR(0, 2252, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_11libpetsc4py__PyTS *)((struct __pyx_obj_11libpetsc4py__PyTS *)__pyx_t_1)->__pyx_base.__pyx_vtab)->__pyx_base.getname(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1)); if (unlikely(__pyx_t_2 == ((char *)NULL) && PyErr_Occurred())) __PYX_ERR(0, 2267, __pyx_L1_error)
__pyx_v_defval = __pyx_t_2;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":2253
+ /* "libpetsc4py.pyx":2268
* FunctionBegin(b"TSSetFromOptions_Python")
* cdef char name[2048], *defval = PyTS(ts).getname()
* cdef PetscBool found = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -22979,7 +24846,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
*/
__pyx_v_found = PETSC_FALSE;
- /* "libpetsc4py.pyx":2254
+ /* "libpetsc4py.pyx":2269
* cdef char name[2048], *defval = PyTS(ts).getname()
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject # <<<<<<<<<<<<<<
@@ -22988,16 +24855,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
*/
PetscOptionsObject = __pyx_v_PetscOptionsObject;
- /* "libpetsc4py.pyx":2255
+ /* "libpetsc4py.pyx":2270
* cdef PetscBool found = PETSC_FALSE
* cdef PetscOptionItems *opts "PetscOptionsObject" = PetscOptionsObject
* CHKERR( PetscOptionsString( # <<<<<<<<<<<<<<
* b"-ts_python_type",b"Python [package.]module[.{class|function}]",
* b"TSPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-ts_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"TSPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 2255, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(PetscOptionsString(((char *)"-ts_python_type"), ((char *)"Python [package.]module[.{class|function}]"), ((char *)"TSPythonSetType"), __pyx_v_defval, __pyx_v_name, (sizeof(__pyx_v_name)), (&__pyx_v_found))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 2270, __pyx_L1_error)
- /* "libpetsc4py.pyx":2257
+ /* "libpetsc4py.pyx":2272
* CHKERR( PetscOptionsString(
* b"-ts_python_type",b"Python [package.]module[.{class|function}]",
* b"TSPythonSetType",defval,name,sizeof(name),&found) ); <void>opts; # <<<<<<<<<<<<<<
@@ -23006,7 +24873,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
*/
((void)PetscOptionsObject);
- /* "libpetsc4py.pyx":2258
+ /* "libpetsc4py.pyx":2273
* b"-ts_python_type",b"Python [package.]module[.{class|function}]",
* b"TSPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -23023,17 +24890,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
__pyx_L4_bool_binop_done:;
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2259
+ /* "libpetsc4py.pyx":2274
* b"TSPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]:
* CHKERR( TSPythonSetType_PYTHON(ts,name) ) # <<<<<<<<<<<<<<
* #
* cdef setFromOptions = PyTS(ts).setFromOptions
*/
- __pyx_t_6 = __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(__pyx_v_ts, __pyx_v_name); if (unlikely(__pyx_t_6 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2259, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 2259, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_11libpetsc4py_TSPythonSetType_PYTHON(__pyx_v_ts, __pyx_v_name); if (unlikely(__pyx_t_6 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2274, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(__pyx_t_6); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 2274, __pyx_L1_error)
- /* "libpetsc4py.pyx":2258
+ /* "libpetsc4py.pyx":2273
* b"-ts_python_type",b"Python [package.]module[.{class|function}]",
* b"TSPythonSetType",defval,name,sizeof(name),&found) ); <void>opts;
* if found and name[0]: # <<<<<<<<<<<<<<
@@ -23042,22 +24909,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
*/
}
- /* "libpetsc4py.pyx":2261
+ /* "libpetsc4py.pyx":2276
* CHKERR( TSPythonSetType_PYTHON(ts,name) )
* #
* cdef setFromOptions = PyTS(ts).setFromOptions # <<<<<<<<<<<<<<
* if setFromOptions is not None:
* setFromOptions(TS_(ts))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2261, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2276, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2261, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_setFromOptions); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2276, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_setFromOptions = __pyx_t_7;
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":2262
+ /* "libpetsc4py.pyx":2277
* #
* cdef setFromOptions = PyTS(ts).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -23068,18 +24935,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":2263
+ /* "libpetsc4py.pyx":2278
* cdef setFromOptions = PyTS(ts).setFromOptions
* if setFromOptions is not None:
* setFromOptions(TS_(ts)) # <<<<<<<<<<<<<<
* CHKERR( SNESSetFromOptions(ts.snes) )
* return FunctionEnd()
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2263, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_setFromOptions);
__pyx_t_8 = __pyx_v_setFromOptions; __pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -23089,24 +24956,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
}
}
if (!__pyx_t_9) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2263, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2278, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_7);
} else {
- __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2263, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2263, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2278, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_t_1};
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2278, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2278, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2278, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":2262
+ /* "libpetsc4py.pyx":2277
* #
* cdef setFromOptions = PyTS(ts).setFromOptions
* if setFromOptions is not None: # <<<<<<<<<<<<<<
@@ -23115,16 +25002,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
*/
}
- /* "libpetsc4py.pyx":2264
+ /* "libpetsc4py.pyx":2279
* if setFromOptions is not None:
* setFromOptions(TS_(ts))
* CHKERR( SNESSetFromOptions(ts.snes) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(SNESSetFromOptions(__pyx_v_ts->snes)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(0, 2264, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_11libpetsc4py_CHKERR(SNESSetFromOptions(__pyx_v_ts->snes)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 2279, __pyx_L1_error)
- /* "libpetsc4py.pyx":2265
+ /* "libpetsc4py.pyx":2280
* setFromOptions(TS_(ts))
* CHKERR( SNESSetFromOptions(ts.snes) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -23134,7 +25021,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2246
+ /* "libpetsc4py.pyx":2261
* return FunctionEnd()
*
* cdef PetscErrorCode TSSetFromOptions_Python( # <<<<<<<<<<<<<<
@@ -23155,12 +25042,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSetFromOptions_Python(PetscOptionI
__Pyx_XDECREF(__pyx_v_setFromOptions);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2267
+/* "libpetsc4py.pyx":2282
* return FunctionEnd()
*
* cdef PetscErrorCode TSView_Python( # <<<<<<<<<<<<<<
@@ -23180,14 +25067,13 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSView_Python(TS __pyx_v_ts, PetscVi
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
- PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_9 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSView_Python", 0);
- /* "libpetsc4py.pyx":2272
+ /* "libpetsc4py.pyx":2287
* ) \
* except IERR with gil:
* FunctionBegin(b"TSView_Python") # <<<<<<<<<<<<<<
@@ -23196,34 +25082,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSView_Python(TS __pyx_v_ts, PetscVi
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSView_Python"));
- /* "libpetsc4py.pyx":2273
+ /* "libpetsc4py.pyx":2288
* except IERR with gil:
* FunctionBegin(b"TSView_Python")
* viewcontext(PyTS(ts), vwr) # <<<<<<<<<<<<<<
* cdef view = PyTS(ts).view
* if view is not None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2273, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2288, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(0, 2273, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_viewcontext(((struct __pyx_obj_11libpetsc4py__PyObj *)__pyx_t_1), __pyx_v_vwr); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 2288, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "libpetsc4py.pyx":2274
+ /* "libpetsc4py.pyx":2289
* FunctionBegin(b"TSView_Python")
* viewcontext(PyTS(ts), vwr)
* cdef view = PyTS(ts).view # <<<<<<<<<<<<<<
* if view is not None:
* view(TS_(ts), Viewer_(vwr))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2274, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2289, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2274, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2289, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_view = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":2275
+ /* "libpetsc4py.pyx":2290
* viewcontext(PyTS(ts), vwr)
* cdef view = PyTS(ts).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -23234,48 +25120,70 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSView_Python(TS __pyx_v_ts, PetscVi
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":2276
+ /* "libpetsc4py.pyx":2291
* cdef view = PyTS(ts).view
* if view is not None:
* view(TS_(ts), Viewer_(vwr)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2276, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2276, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Viewer_(__pyx_v_vwr)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_view);
__pyx_t_7 = __pyx_v_view; __pyx_t_8 = NULL;
- __pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ __pyx_t_2 = 0;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
- __pyx_t_9 = 1;
+ __pyx_t_2 = 1;
}
}
- __pyx_t_10 = PyTuple_New(2+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2276, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2291, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_8, __pyx_t_1, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_2, 2+__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2291, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 2291, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_2, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_2, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2291, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_6 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2276, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":2275
+ /* "libpetsc4py.pyx":2290
* viewcontext(PyTS(ts), vwr)
* cdef view = PyTS(ts).view
* if view is not None: # <<<<<<<<<<<<<<
@@ -23284,7 +25192,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSView_Python(TS __pyx_v_ts, PetscVi
*/
}
- /* "libpetsc4py.pyx":2277
+ /* "libpetsc4py.pyx":2292
* if view is not None:
* view(TS_(ts), Viewer_(vwr))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -23294,7 +25202,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSView_Python(TS __pyx_v_ts, PetscVi
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2267
+ /* "libpetsc4py.pyx":2282
* return FunctionEnd()
*
* cdef PetscErrorCode TSView_Python( # <<<<<<<<<<<<<<
@@ -23309,19 +25217,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSView_Python(TS __pyx_v_ts, PetscVi
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
- __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_XDECREF(__pyx_t_9);
__Pyx_AddTraceback("libpetsc4py.TSView_Python", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = PETSC_ERR_PYTHON;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_view);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2279
+/* "libpetsc4py.pyx":2294
* return FunctionEnd()
*
* cdef PetscErrorCode TSStep_Python( # <<<<<<<<<<<<<<
@@ -23342,11 +25250,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
PyObject *__pyx_t_7 = NULL;
PetscErrorCode __pyx_t_8;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSStep_Python", 0);
- /* "libpetsc4py.pyx":2283
+ /* "libpetsc4py.pyx":2298
* ) \
* except IERR with gil:
* FunctionBegin(b"TSStep_Python") # <<<<<<<<<<<<<<
@@ -23355,22 +25263,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSStep_Python"));
- /* "libpetsc4py.pyx":2284
+ /* "libpetsc4py.pyx":2299
* except IERR with gil:
* FunctionBegin(b"TSStep_Python")
* cdef step = PyTS(ts).step # <<<<<<<<<<<<<<
* if step is not None:
* step(TS_(ts))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2284, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_step); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2284, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_step); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_step = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2285
+ /* "libpetsc4py.pyx":2300
* FunctionBegin(b"TSStep_Python")
* cdef step = PyTS(ts).step
* if step is not None: # <<<<<<<<<<<<<<
@@ -23381,18 +25289,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2286
+ /* "libpetsc4py.pyx":2301
* cdef step = PyTS(ts).step
* if step is not None:
* step(TS_(ts)) # <<<<<<<<<<<<<<
* else:
* TSStep_Python_default(ts)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2286, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2301, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_step);
__pyx_t_5 = __pyx_v_step; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -23402,24 +25310,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2286, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2301, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2286, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2286, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2301, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2301, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2301, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2301, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2285
+ /* "libpetsc4py.pyx":2300
* FunctionBegin(b"TSStep_Python")
* cdef step = PyTS(ts).step
* if step is not None: # <<<<<<<<<<<<<<
@@ -23429,7 +25357,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":2288
+ /* "libpetsc4py.pyx":2303
* step(TS_(ts))
* else:
* TSStep_Python_default(ts) # <<<<<<<<<<<<<<
@@ -23437,11 +25365,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
*
*/
/*else*/ {
- __pyx_t_8 = __pyx_f_11libpetsc4py_TSStep_Python_default(__pyx_v_ts); if (unlikely(__pyx_t_8 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2288, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_11libpetsc4py_TSStep_Python_default(__pyx_v_ts); if (unlikely(__pyx_t_8 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2303, __pyx_L1_error)
}
__pyx_L3:;
- /* "libpetsc4py.pyx":2289
+ /* "libpetsc4py.pyx":2304
* else:
* TSStep_Python_default(ts)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -23451,7 +25379,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2279
+ /* "libpetsc4py.pyx":2294
* return FunctionEnd()
*
* cdef PetscErrorCode TSStep_Python( # <<<<<<<<<<<<<<
@@ -23472,12 +25400,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python(TS __pyx_v_ts) {
__Pyx_XDECREF(__pyx_v_step);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2291
+/* "libpetsc4py.pyx":2306
* return FunctionEnd()
*
* cdef PetscErrorCode TSRollBack_Python( # <<<<<<<<<<<<<<
@@ -23497,11 +25425,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSRollBack_Python(TS __pyx_v_ts) {
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSRollBack_Python", 0);
- /* "libpetsc4py.pyx":2295
+ /* "libpetsc4py.pyx":2310
* ) \
* except IERR with gil:
* FunctionBegin(b"TSRollBack_Python") # <<<<<<<<<<<<<<
@@ -23510,22 +25438,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSRollBack_Python(TS __pyx_v_ts) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSRollBack_Python"));
- /* "libpetsc4py.pyx":2296
+ /* "libpetsc4py.pyx":2311
* except IERR with gil:
* FunctionBegin(b"TSRollBack_Python")
* cdef rollback = PyTS(ts).rollback # <<<<<<<<<<<<<<
* if rollback is None: return UNSUPPORTED(b"rollback")
* rollback(TS_(ts))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2296, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2311, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_rollback); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2296, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_rollback); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2311, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_rollback = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2297
+ /* "libpetsc4py.pyx":2312
* FunctionBegin(b"TSRollBack_Python")
* cdef rollback = PyTS(ts).rollback
* if rollback is None: return UNSUPPORTED(b"rollback") # <<<<<<<<<<<<<<
@@ -23539,18 +25467,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSRollBack_Python(TS __pyx_v_ts) {
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2298
+ /* "libpetsc4py.pyx":2313
* cdef rollback = PyTS(ts).rollback
* if rollback is None: return UNSUPPORTED(b"rollback")
* rollback(TS_(ts)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2298, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2313, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_rollback);
__pyx_t_5 = __pyx_v_rollback; __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -23560,24 +25488,44 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSRollBack_Python(TS __pyx_v_ts) {
}
}
if (!__pyx_t_6) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2298, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2313, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2298, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2298, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2313, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_6, __pyx_t_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2313, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2313, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2313, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2299
+ /* "libpetsc4py.pyx":2314
* if rollback is None: return UNSUPPORTED(b"rollback")
* rollback(TS_(ts))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -23587,7 +25535,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSRollBack_Python(TS __pyx_v_ts) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2291
+ /* "libpetsc4py.pyx":2306
* return FunctionEnd()
*
* cdef PetscErrorCode TSRollBack_Python( # <<<<<<<<<<<<<<
@@ -23608,12 +25556,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSRollBack_Python(TS __pyx_v_ts) {
__Pyx_XDECREF(__pyx_v_rollback);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2301
+/* "libpetsc4py.pyx":2316
* return FunctionEnd()
*
* cdef PetscErrorCode TSInterpolate_Python( # <<<<<<<<<<<<<<
@@ -23633,14 +25581,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSInterpolate_Python(TS __pyx_v_ts,
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSInterpolate_Python", 0);
- /* "libpetsc4py.pyx":2307
+ /* "libpetsc4py.pyx":2322
* ) \
* except IERR with gil:
* FunctionBegin(b"TSInterpolate _Python") # <<<<<<<<<<<<<<
@@ -23649,22 +25597,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSInterpolate_Python(TS __pyx_v_ts,
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSInterpolate _Python"));
- /* "libpetsc4py.pyx":2308
+ /* "libpetsc4py.pyx":2323
* except IERR with gil:
* FunctionBegin(b"TSInterpolate _Python")
* cdef interpolate = PyTS(ts).interpolate # <<<<<<<<<<<<<<
* if interpolate is None: return UNSUPPORTED(b"interpolate")
* interpolate(TS_(ts),toReal(t),Vec_(x))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2308, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_interpolate); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2308, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_interpolate); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_interpolate = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2309
+ /* "libpetsc4py.pyx":2324
* FunctionBegin(b"TSInterpolate _Python")
* cdef interpolate = PyTS(ts).interpolate
* if interpolate is None: return UNSUPPORTED(b"interpolate") # <<<<<<<<<<<<<<
@@ -23678,23 +25626,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSInterpolate_Python(TS __pyx_v_ts,
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2310
+ /* "libpetsc4py.pyx":2325
* cdef interpolate = PyTS(ts).interpolate
* if interpolate is None: return UNSUPPORTED(b"interpolate")
* interpolate(TS_(ts),toReal(t),Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2310, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2325, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __pyx_f_11libpetsc4py_toReal(__pyx_v_t); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2310, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_toReal(__pyx_v_t); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2325, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2310, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2325, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_interpolate);
__pyx_t_7 = __pyx_v_interpolate; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -23704,27 +25652,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSInterpolate_Python(TS __pyx_v_ts,
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2310, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2310, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2325, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2325, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2325, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2325, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2311
+ /* "libpetsc4py.pyx":2326
* if interpolate is None: return UNSUPPORTED(b"interpolate")
* interpolate(TS_(ts),toReal(t),Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -23734,7 +25706,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSInterpolate_Python(TS __pyx_v_ts,
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2301
+ /* "libpetsc4py.pyx":2316
* return FunctionEnd()
*
* cdef PetscErrorCode TSInterpolate_Python( # <<<<<<<<<<<<<<
@@ -23757,12 +25729,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSInterpolate_Python(TS __pyx_v_ts,
__Pyx_XDECREF(__pyx_v_interpolate);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2313
+/* "libpetsc4py.pyx":2328
* return FunctionEnd()
*
* cdef PetscErrorCode TSEvaluateStep_Python( # <<<<<<<<<<<<<<
@@ -23783,15 +25755,15 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
PetscBool __pyx_t_11;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSEvaluateStep_Python", 0);
- /* "libpetsc4py.pyx":2320
+ /* "libpetsc4py.pyx":2335
* ) \
* except IERR with gil:
* FunctionBegin(b"TSEvaluateStep _Python") # <<<<<<<<<<<<<<
@@ -23800,22 +25772,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSEvaluateStep _Python"));
- /* "libpetsc4py.pyx":2321
+ /* "libpetsc4py.pyx":2336
* except IERR with gil:
* FunctionBegin(b"TSEvaluateStep _Python")
* cdef evaluatestep = PyTS(ts).evaluatestep # <<<<<<<<<<<<<<
* if evaluatestep is None: return UNSUPPORTED(b"evaluatestep")
* cdef done = evaluatestep(TS_(ts),toInt(o),Vec_(x))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2321, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2336, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_evaluatestep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2321, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_evaluatestep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2336, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_evaluatestep = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2322
+ /* "libpetsc4py.pyx":2337
* FunctionBegin(b"TSEvaluateStep _Python")
* cdef evaluatestep = PyTS(ts).evaluatestep
* if evaluatestep is None: return UNSUPPORTED(b"evaluatestep") # <<<<<<<<<<<<<<
@@ -23829,23 +25801,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2323
+ /* "libpetsc4py.pyx":2338
* cdef evaluatestep = PyTS(ts).evaluatestep
* if evaluatestep is None: return UNSUPPORTED(b"evaluatestep")
* cdef done = evaluatestep(TS_(ts),toInt(o),Vec_(x)) # <<<<<<<<<<<<<<
* if flag != NULL:
* flag[0] = PETSC_TRUE if done else PETSC_FALSE
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2323, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __pyx_f_11libpetsc4py_toInt(__pyx_v_o); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2323, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_11libpetsc4py_toInt(__pyx_v_o); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2323, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_evaluatestep);
__pyx_t_7 = __pyx_v_evaluatestep; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -23855,28 +25827,52 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2323, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
- }
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2323, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2338, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2338, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2338, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2338, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_v_done = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2324
+ /* "libpetsc4py.pyx":2339
* if evaluatestep is None: return UNSUPPORTED(b"evaluatestep")
* cdef done = evaluatestep(TS_(ts),toInt(o),Vec_(x))
* if flag != NULL: # <<<<<<<<<<<<<<
@@ -23886,14 +25882,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
__pyx_t_4 = ((__pyx_v_flag != NULL) != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2325
+ /* "libpetsc4py.pyx":2340
* cdef done = evaluatestep(TS_(ts),toInt(o),Vec_(x))
* if flag != NULL:
* flag[0] = PETSC_TRUE if done else PETSC_FALSE # <<<<<<<<<<<<<<
* elif not done:
* return PetscSETERR(PETSC_ERR_USER, "Cannot evaluate step")
*/
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_done); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2325, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_done); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2340, __pyx_L1_error)
if (__pyx_t_4) {
__pyx_t_11 = PETSC_TRUE;
} else {
@@ -23901,7 +25897,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
}
(__pyx_v_flag[0]) = __pyx_t_11;
- /* "libpetsc4py.pyx":2324
+ /* "libpetsc4py.pyx":2339
* if evaluatestep is None: return UNSUPPORTED(b"evaluatestep")
* cdef done = evaluatestep(TS_(ts),toInt(o),Vec_(x))
* if flag != NULL: # <<<<<<<<<<<<<<
@@ -23911,18 +25907,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
goto __pyx_L4;
}
- /* "libpetsc4py.pyx":2326
+ /* "libpetsc4py.pyx":2341
* if flag != NULL:
* flag[0] = PETSC_TRUE if done else PETSC_FALSE
* elif not done: # <<<<<<<<<<<<<<
* return PetscSETERR(PETSC_ERR_USER, "Cannot evaluate step")
* return FunctionEnd()
*/
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_done); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2326, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_done); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2341, __pyx_L1_error)
__pyx_t_3 = ((!__pyx_t_4) != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":2327
+ /* "libpetsc4py.pyx":2342
* flag[0] = PETSC_TRUE if done else PETSC_FALSE
* elif not done:
* return PetscSETERR(PETSC_ERR_USER, "Cannot evaluate step") # <<<<<<<<<<<<<<
@@ -23932,7 +25928,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
__pyx_r = __pyx_f_11libpetsc4py_PetscSETERR(PETSC_ERR_USER, ((char *)"Cannot evaluate step"));
goto __pyx_L0;
- /* "libpetsc4py.pyx":2326
+ /* "libpetsc4py.pyx":2341
* if flag != NULL:
* flag[0] = PETSC_TRUE if done else PETSC_FALSE
* elif not done: # <<<<<<<<<<<<<<
@@ -23942,7 +25938,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
}
__pyx_L4:;
- /* "libpetsc4py.pyx":2328
+ /* "libpetsc4py.pyx":2343
* elif not done:
* return PetscSETERR(PETSC_ERR_USER, "Cannot evaluate step")
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -23952,7 +25948,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2313
+ /* "libpetsc4py.pyx":2328
* return FunctionEnd()
*
* cdef PetscErrorCode TSEvaluateStep_Python( # <<<<<<<<<<<<<<
@@ -23976,12 +25972,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSEvaluateStep_Python(TS __pyx_v_ts,
__Pyx_XDECREF(__pyx_v_done);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2330
+/* "libpetsc4py.pyx":2345
* return FunctionEnd()
*
* cdef PetscErrorCode SNESTSFormFunction_Python( # <<<<<<<<<<<<<<
@@ -24006,26 +26002,26 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
PyObject *__pyx_t_7 = NULL;
int __pyx_t_8;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESTSFormFunction_Python", 0);
- /* "libpetsc4py.pyx":2338
+ /* "libpetsc4py.pyx":2353
* except IERR with gil:
* #
* cdef formSNESFunction = PyTS(ts).formSNESFunction # <<<<<<<<<<<<<<
* if formSNESFunction is not None:
* args = (SNES_(snes),Vec_(x),Vec_(f),TS_(ts))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2338, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_formSNESFunction); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2338, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_formSNESFunction); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_formSNESFunction = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2339
+ /* "libpetsc4py.pyx":2354
* #
* cdef formSNESFunction = PyTS(ts).formSNESFunction
* if formSNESFunction is not None: # <<<<<<<<<<<<<<
@@ -24036,22 +26032,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2340
+ /* "libpetsc4py.pyx":2355
* cdef formSNESFunction = PyTS(ts).formSNESFunction
* if formSNESFunction is not None:
* args = (SNES_(snes),Vec_(x),Vec_(f),TS_(ts)) # <<<<<<<<<<<<<<
* formSNESFunction(args)
* return FunctionEnd()
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2340, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2340, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_f)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2340, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_f)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2340, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = PyTuple_New(4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2340, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_2);
@@ -24068,7 +26064,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
__pyx_v_args = ((PyObject*)__pyx_t_7);
__pyx_t_7 = 0;
- /* "libpetsc4py.pyx":2341
+ /* "libpetsc4py.pyx":2356
* if formSNESFunction is not None:
* args = (SNES_(snes),Vec_(x),Vec_(f),TS_(ts))
* formSNESFunction(args) # <<<<<<<<<<<<<<
@@ -24077,7 +26073,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
*/
__Pyx_INCREF(__pyx_v_formSNESFunction);
__pyx_t_6 = __pyx_v_formSNESFunction; __pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -24087,23 +26083,41 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
}
}
if (!__pyx_t_5) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_args); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2341, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_v_args); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
} else {
- __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2341, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL;
- __Pyx_INCREF(__pyx_v_args);
- __Pyx_GIVEREF(__pyx_v_args);
- PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_v_args);
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2341, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_args};
+ __pyx_t_7 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2356, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_args};
+ __pyx_t_7 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2356, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_7);
+ } else
+ #endif
+ {
+ __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2356, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_v_args);
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2356, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "libpetsc4py.pyx":2342
+ /* "libpetsc4py.pyx":2357
* args = (SNES_(snes),Vec_(x),Vec_(f),TS_(ts))
* formSNESFunction(args)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -24113,7 +26127,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2339
+ /* "libpetsc4py.pyx":2354
* #
* cdef formSNESFunction = PyTS(ts).formSNESFunction
* if formSNESFunction is not None: # <<<<<<<<<<<<<<
@@ -24122,7 +26136,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
*/
}
- /* "libpetsc4py.pyx":2344
+ /* "libpetsc4py.pyx":2359
* return FunctionEnd()
* #
* cdef PetscVec dx = NULL # <<<<<<<<<<<<<<
@@ -24131,16 +26145,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
*/
__pyx_v_dx = NULL;
- /* "libpetsc4py.pyx":2345
+ /* "libpetsc4py.pyx":2360
* #
* cdef PetscVec dx = NULL
* CHKERR( PetscObjectQuery( # <<<<<<<<<<<<<<
* <PetscObject>ts,
* b"@ts.vec_dot",
*/
- __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), ((PetscObject *)(&__pyx_v_dx)))); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 2345, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), ((PetscObject *)(&__pyx_v_dx)))); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 2360, __pyx_L1_error)
- /* "libpetsc4py.pyx":2350
+ /* "libpetsc4py.pyx":2365
* <PetscObject*>&dx) )
* #
* cdef PetscReal t = ts.ptime + ts.time_step # <<<<<<<<<<<<<<
@@ -24149,7 +26163,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
*/
__pyx_v_t = (__pyx_v_ts->ptime + __pyx_v_ts->time_step);
- /* "libpetsc4py.pyx":2351
+ /* "libpetsc4py.pyx":2366
* #
* cdef PetscReal t = ts.ptime + ts.time_step
* cdef PetscReal a = 1.0/ts.time_step # <<<<<<<<<<<<<<
@@ -24158,34 +26172,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
*/
__pyx_v_a = (1.0 / __pyx_v_ts->time_step);
- /* "libpetsc4py.pyx":2352
+ /* "libpetsc4py.pyx":2367
* cdef PetscReal t = ts.ptime + ts.time_step
* cdef PetscReal a = 1.0/ts.time_step
* CHKERR( VecCopy(ts.vec_sol,dx) ) # <<<<<<<<<<<<<<
* CHKERR( VecAXPBY(dx,+a,-a,x) )
* CHKERR( TSComputeIFunction(ts,t,x,dx,f,PETSC_FALSE) )
*/
- __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_ts->vec_sol, __pyx_v_dx)); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 2352, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_ts->vec_sol, __pyx_v_dx)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 2367, __pyx_L1_error)
- /* "libpetsc4py.pyx":2353
+ /* "libpetsc4py.pyx":2368
* cdef PetscReal a = 1.0/ts.time_step
* CHKERR( VecCopy(ts.vec_sol,dx) )
* CHKERR( VecAXPBY(dx,+a,-a,x) ) # <<<<<<<<<<<<<<
* CHKERR( TSComputeIFunction(ts,t,x,dx,f,PETSC_FALSE) )
* return FunctionEnd()
*/
- __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(VecAXPBY(__pyx_v_dx, __pyx_v_a, (-__pyx_v_a), __pyx_v_x)); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 2353, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(VecAXPBY(__pyx_v_dx, __pyx_v_a, (-__pyx_v_a), __pyx_v_x)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 2368, __pyx_L1_error)
- /* "libpetsc4py.pyx":2354
+ /* "libpetsc4py.pyx":2369
* CHKERR( VecCopy(ts.vec_sol,dx) )
* CHKERR( VecAXPBY(dx,+a,-a,x) )
* CHKERR( TSComputeIFunction(ts,t,x,dx,f,PETSC_FALSE) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(TSComputeIFunction(__pyx_v_ts, __pyx_v_t, __pyx_v_x, __pyx_v_dx, __pyx_v_f, PETSC_FALSE)); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(0, 2354, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_11libpetsc4py_CHKERR(TSComputeIFunction(__pyx_v_ts, __pyx_v_t, __pyx_v_x, __pyx_v_dx, __pyx_v_f, PETSC_FALSE)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 2369, __pyx_L1_error)
- /* "libpetsc4py.pyx":2355
+ /* "libpetsc4py.pyx":2370
* CHKERR( VecAXPBY(dx,+a,-a,x) )
* CHKERR( TSComputeIFunction(ts,t,x,dx,f,PETSC_FALSE) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -24195,7 +26209,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2330
+ /* "libpetsc4py.pyx":2345
* return FunctionEnd()
*
* cdef PetscErrorCode SNESTSFormFunction_Python( # <<<<<<<<<<<<<<
@@ -24217,12 +26231,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormFunction_Python(SNES __pyx
__Pyx_XDECREF(__pyx_v_args);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2357
+/* "libpetsc4py.pyx":2372
* return FunctionEnd()
*
* cdef PetscErrorCode SNESTSFormJacobian_Python( # <<<<<<<<<<<<<<
@@ -24248,26 +26262,26 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
PyObject *__pyx_t_8 = NULL;
int __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNESTSFormJacobian_Python", 0);
- /* "libpetsc4py.pyx":2366
+ /* "libpetsc4py.pyx":2381
* except IERR with gil:
* #
* cdef formSNESJacobian = PyTS(ts).formSNESJacobian # <<<<<<<<<<<<<<
* if formSNESJacobian is not None:
* args = (SNES_(snes),Vec_(x),Mat_(A),Mat_(B),TS_(ts))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2366, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2381, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_formSNESJacobian); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2366, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_formSNESJacobian); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2381, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_formSNESJacobian = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2367
+ /* "libpetsc4py.pyx":2382
* #
* cdef formSNESJacobian = PyTS(ts).formSNESJacobian
* if formSNESJacobian is not None: # <<<<<<<<<<<<<<
@@ -24278,24 +26292,24 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2368
+ /* "libpetsc4py.pyx":2383
* cdef formSNESJacobian = PyTS(ts).formSNESJacobian
* if formSNESJacobian is not None:
* args = (SNES_(snes),Vec_(x),Mat_(A),Mat_(B),TS_(ts)) # <<<<<<<<<<<<<<
* formSNESJacobian(*args)
* return FunctionEnd()
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2368, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_SNES_(__pyx_v_snes)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2383, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2368, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2383, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_A)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2368, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_A)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2383, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_B)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2368, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Mat_(__pyx_v_B)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2383, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2368, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2383, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PyTuple_New(5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2368, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2383, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_2);
@@ -24315,18 +26329,18 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
__pyx_v_args = ((PyObject*)__pyx_t_8);
__pyx_t_8 = 0;
- /* "libpetsc4py.pyx":2369
+ /* "libpetsc4py.pyx":2384
* if formSNESJacobian is not None:
* args = (SNES_(snes),Vec_(x),Mat_(A),Mat_(B),TS_(ts))
* formSNESJacobian(*args) # <<<<<<<<<<<<<<
* return FunctionEnd()
* #
*/
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_v_formSNESJacobian, __pyx_v_args, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2369, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_v_formSNESJacobian, __pyx_v_args, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2384, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "libpetsc4py.pyx":2370
+ /* "libpetsc4py.pyx":2385
* args = (SNES_(snes),Vec_(x),Mat_(A),Mat_(B),TS_(ts))
* formSNESJacobian(*args)
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -24336,7 +26350,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2367
+ /* "libpetsc4py.pyx":2382
* #
* cdef formSNESJacobian = PyTS(ts).formSNESJacobian
* if formSNESJacobian is not None: # <<<<<<<<<<<<<<
@@ -24345,7 +26359,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
*/
}
- /* "libpetsc4py.pyx":2372
+ /* "libpetsc4py.pyx":2387
* return FunctionEnd()
* #
* cdef PetscVec dx = NULL # <<<<<<<<<<<<<<
@@ -24354,16 +26368,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
*/
__pyx_v_dx = NULL;
- /* "libpetsc4py.pyx":2373
+ /* "libpetsc4py.pyx":2388
* #
* cdef PetscVec dx = NULL
* CHKERR( PetscObjectQuery( # <<<<<<<<<<<<<<
* <PetscObject>ts,
* b"@ts.vec_dot",
*/
- __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), ((PetscObject *)(&__pyx_v_dx)))); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 2373, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_dot"), ((PetscObject *)(&__pyx_v_dx)))); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 2388, __pyx_L1_error)
- /* "libpetsc4py.pyx":2378
+ /* "libpetsc4py.pyx":2393
* <PetscObject*>&dx) )
* #
* cdef PetscReal t = ts.ptime + ts.time_step # <<<<<<<<<<<<<<
@@ -24372,7 +26386,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
*/
__pyx_v_t = (__pyx_v_ts->ptime + __pyx_v_ts->time_step);
- /* "libpetsc4py.pyx":2379
+ /* "libpetsc4py.pyx":2394
* #
* cdef PetscReal t = ts.ptime + ts.time_step
* cdef PetscReal a = 1.0/ts.time_step # <<<<<<<<<<<<<<
@@ -24381,34 +26395,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
*/
__pyx_v_a = (1.0 / __pyx_v_ts->time_step);
- /* "libpetsc4py.pyx":2380
+ /* "libpetsc4py.pyx":2395
* cdef PetscReal t = ts.ptime + ts.time_step
* cdef PetscReal a = 1.0/ts.time_step
* CHKERR( VecCopy(ts.vec_sol,dx) ) # <<<<<<<<<<<<<<
* CHKERR( VecAXPBY(dx,+a,-a,x) )
* CHKERR( TSComputeIJacobian(ts,t,x,dx,a,A,B,PETSC_FALSE) )
*/
- __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_ts->vec_sol, __pyx_v_dx)); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 2380, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_ts->vec_sol, __pyx_v_dx)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 2395, __pyx_L1_error)
- /* "libpetsc4py.pyx":2381
+ /* "libpetsc4py.pyx":2396
* cdef PetscReal a = 1.0/ts.time_step
* CHKERR( VecCopy(ts.vec_sol,dx) )
* CHKERR( VecAXPBY(dx,+a,-a,x) ) # <<<<<<<<<<<<<<
* CHKERR( TSComputeIJacobian(ts,t,x,dx,a,A,B,PETSC_FALSE) )
* return FunctionEnd()
*/
- __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(VecAXPBY(__pyx_v_dx, __pyx_v_a, (-__pyx_v_a), __pyx_v_x)); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 2381, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(VecAXPBY(__pyx_v_dx, __pyx_v_a, (-__pyx_v_a), __pyx_v_x)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 2396, __pyx_L1_error)
- /* "libpetsc4py.pyx":2382
+ /* "libpetsc4py.pyx":2397
* CHKERR( VecCopy(ts.vec_sol,dx) )
* CHKERR( VecAXPBY(dx,+a,-a,x) )
* CHKERR( TSComputeIJacobian(ts,t,x,dx,a,A,B,PETSC_FALSE) ) # <<<<<<<<<<<<<<
* return FunctionEnd()
*
*/
- __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(TSComputeIJacobian(__pyx_v_ts, __pyx_v_t, __pyx_v_x, __pyx_v_dx, __pyx_v_a, __pyx_v_A, __pyx_v_B, PETSC_FALSE)); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(0, 2382, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(TSComputeIJacobian(__pyx_v_ts, __pyx_v_t, __pyx_v_x, __pyx_v_dx, __pyx_v_a, __pyx_v_A, __pyx_v_B, PETSC_FALSE)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 2397, __pyx_L1_error)
- /* "libpetsc4py.pyx":2383
+ /* "libpetsc4py.pyx":2398
* CHKERR( VecAXPBY(dx,+a,-a,x) )
* CHKERR( TSComputeIJacobian(ts,t,x,dx,a,A,B,PETSC_FALSE) )
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -24418,7 +26432,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2357
+ /* "libpetsc4py.pyx":2372
* return FunctionEnd()
*
* cdef PetscErrorCode SNESTSFormJacobian_Python( # <<<<<<<<<<<<<<
@@ -24441,12 +26455,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_SNESTSFormJacobian_Python(SNES __pyx
__Pyx_XDECREF(__pyx_v_args);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2385
+/* "libpetsc4py.pyx":2400
* return FunctionEnd()
*
* cdef PetscErrorCode TSSolveStep_Python( # <<<<<<<<<<<<<<
@@ -24468,15 +26482,14 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
- Py_ssize_t __pyx_t_9;
+ int __pyx_t_9;
PyObject *__pyx_t_10 = NULL;
- int __pyx_t_11;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSSolveStep_Python", 0);
- /* "libpetsc4py.pyx":2391
+ /* "libpetsc4py.pyx":2406
* ) \
* except IERR with gil:
* FunctionBegin(b"TSSolveStep_Python") # <<<<<<<<<<<<<<
@@ -24485,22 +26498,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSSolveStep_Python"));
- /* "libpetsc4py.pyx":2393
+ /* "libpetsc4py.pyx":2408
* FunctionBegin(b"TSSolveStep_Python")
* #
* cdef solveStep = PyTS(ts).solveStep # <<<<<<<<<<<<<<
* if solveStep is not None:
* solveStep(TS_(ts), <double>t, Vec_(x))
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2393, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2408, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2393, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_solveStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2408, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_solveStep = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2394
+ /* "libpetsc4py.pyx":2409
* #
* cdef solveStep = PyTS(ts).solveStep
* if solveStep is not None: # <<<<<<<<<<<<<<
@@ -24511,23 +26524,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2395
+ /* "libpetsc4py.pyx":2410
* cdef solveStep = PyTS(ts).solveStep
* if solveStep is not None:
* solveStep(TS_(ts), <double>t, Vec_(x)) # <<<<<<<<<<<<<<
* return FunctionEnd()
* #
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2395, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2410, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PyFloat_FromDouble(((double)__pyx_v_t)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2395, __pyx_L1_error)
+ __pyx_t_5 = PyFloat_FromDouble(((double)__pyx_v_t)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2410, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2395, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2410, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_solveStep);
__pyx_t_7 = __pyx_v_solveStep; __pyx_t_8 = NULL;
__pyx_t_9 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
@@ -24537,27 +26550,51 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
__pyx_t_9 = 1;
}
}
- __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2395, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_8) {
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2410, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_1, __pyx_t_5, __pyx_t_6};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2410, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(3+__pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2410, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_8) {
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
+ __pyx_t_1 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2410, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_9, __pyx_t_1);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_9, __pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_9, __pyx_t_6);
- __pyx_t_1 = 0;
- __pyx_t_5 = 0;
- __pyx_t_6 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2395, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2396
+ /* "libpetsc4py.pyx":2411
* if solveStep is not None:
* solveStep(TS_(ts), <double>t, Vec_(x))
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -24567,7 +26604,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2394
+ /* "libpetsc4py.pyx":2409
* #
* cdef solveStep = PyTS(ts).solveStep
* if solveStep is not None: # <<<<<<<<<<<<<<
@@ -24576,7 +26613,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
*/
}
- /* "libpetsc4py.pyx":2398
+ /* "libpetsc4py.pyx":2413
* return FunctionEnd()
* #
* cdef PetscInt nits = 0, lits = 0 # <<<<<<<<<<<<<<
@@ -24586,34 +26623,34 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
__pyx_v_nits = 0;
__pyx_v_lits = 0;
- /* "libpetsc4py.pyx":2399
+ /* "libpetsc4py.pyx":2414
* #
* cdef PetscInt nits = 0, lits = 0
* CHKERR( SNESSolve(ts.snes, NULL, x) ) # <<<<<<<<<<<<<<
* CHKERR( SNESGetIterationNumber(ts.snes,&nits) )
* CHKERR( SNESGetLinearSolveIterations(ts.snes,&lits) )
*/
- __pyx_t_11 = __pyx_f_11libpetsc4py_CHKERR(SNESSolve(__pyx_v_ts->snes, NULL, __pyx_v_x)); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(0, 2399, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(SNESSolve(__pyx_v_ts->snes, NULL, __pyx_v_x)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 2414, __pyx_L1_error)
- /* "libpetsc4py.pyx":2400
+ /* "libpetsc4py.pyx":2415
* cdef PetscInt nits = 0, lits = 0
* CHKERR( SNESSolve(ts.snes, NULL, x) )
* CHKERR( SNESGetIterationNumber(ts.snes,&nits) ) # <<<<<<<<<<<<<<
* CHKERR( SNESGetLinearSolveIterations(ts.snes,&lits) )
* ts.snes_its += nits
*/
- __pyx_t_11 = __pyx_f_11libpetsc4py_CHKERR(SNESGetIterationNumber(__pyx_v_ts->snes, (&__pyx_v_nits))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(0, 2400, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(SNESGetIterationNumber(__pyx_v_ts->snes, (&__pyx_v_nits))); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 2415, __pyx_L1_error)
- /* "libpetsc4py.pyx":2401
+ /* "libpetsc4py.pyx":2416
* CHKERR( SNESSolve(ts.snes, NULL, x) )
* CHKERR( SNESGetIterationNumber(ts.snes,&nits) )
* CHKERR( SNESGetLinearSolveIterations(ts.snes,&lits) ) # <<<<<<<<<<<<<<
* ts.snes_its += nits
* ts.ksp_its += lits
*/
- __pyx_t_11 = __pyx_f_11libpetsc4py_CHKERR(SNESGetLinearSolveIterations(__pyx_v_ts->snes, (&__pyx_v_lits))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(0, 2401, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_11libpetsc4py_CHKERR(SNESGetLinearSolveIterations(__pyx_v_ts->snes, (&__pyx_v_lits))); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(0, 2416, __pyx_L1_error)
- /* "libpetsc4py.pyx":2402
+ /* "libpetsc4py.pyx":2417
* CHKERR( SNESGetIterationNumber(ts.snes,&nits) )
* CHKERR( SNESGetLinearSolveIterations(ts.snes,&lits) )
* ts.snes_its += nits # <<<<<<<<<<<<<<
@@ -24622,7 +26659,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
*/
__pyx_v_ts->snes_its = (__pyx_v_ts->snes_its + __pyx_v_nits);
- /* "libpetsc4py.pyx":2403
+ /* "libpetsc4py.pyx":2418
* CHKERR( SNESGetLinearSolveIterations(ts.snes,&lits) )
* ts.snes_its += nits
* ts.ksp_its += lits # <<<<<<<<<<<<<<
@@ -24631,7 +26668,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
*/
__pyx_v_ts->ksp_its = (__pyx_v_ts->ksp_its + __pyx_v_lits);
- /* "libpetsc4py.pyx":2404
+ /* "libpetsc4py.pyx":2419
* ts.snes_its += nits
* ts.ksp_its += lits
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -24641,7 +26678,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2385
+ /* "libpetsc4py.pyx":2400
* return FunctionEnd()
*
* cdef PetscErrorCode TSSolveStep_Python( # <<<<<<<<<<<<<<
@@ -24664,12 +26701,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSSolveStep_Python(TS __pyx_v_ts, Pe
__Pyx_XDECREF(__pyx_v_solveStep);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2406
+/* "libpetsc4py.pyx":2421
* return FunctionEnd()
*
* cdef PetscErrorCode TSAdaptStep_Python( # <<<<<<<<<<<<<<
@@ -24693,17 +26730,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
PyObject *__pyx_t_7 = NULL;
PyObject *__pyx_t_8 = NULL;
PyObject *__pyx_t_9 = NULL;
- Py_ssize_t __pyx_t_10;
+ int __pyx_t_10;
PyObject *__pyx_t_11 = NULL;
double __pyx_t_12;
PetscBool __pyx_t_13;
PyObject *(*__pyx_t_14)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSAdaptStep_Python", 0);
- /* "libpetsc4py.pyx":2414
+ /* "libpetsc4py.pyx":2429
* ) \
* except IERR with gil:
* FunctionBegin(b"TSAdaptStep_Python") # <<<<<<<<<<<<<<
@@ -24712,7 +26749,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSAdaptStep_Python"));
- /* "libpetsc4py.pyx":2415
+ /* "libpetsc4py.pyx":2430
* except IERR with gil:
* FunctionBegin(b"TSAdaptStep_Python")
* nextdt[0] = ts.time_step # <<<<<<<<<<<<<<
@@ -24722,7 +26759,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__pyx_t_1 = __pyx_v_ts->time_step;
(__pyx_v_nextdt[0]) = __pyx_t_1;
- /* "libpetsc4py.pyx":2416
+ /* "libpetsc4py.pyx":2431
* FunctionBegin(b"TSAdaptStep_Python")
* nextdt[0] = ts.time_step
* stepok[0] = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -24731,22 +26768,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
*/
(__pyx_v_stepok[0]) = PETSC_TRUE;
- /* "libpetsc4py.pyx":2418
+ /* "libpetsc4py.pyx":2433
* stepok[0] = PETSC_TRUE
* #
* cdef adaptStep = PyTS(ts).adaptStep # <<<<<<<<<<<<<<
* if adaptStep is None: return FunctionEnd()
* cdef object retval
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2418, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_PyTS(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_adaptStep); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2418, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_adaptStep); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_adaptStep = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":2419
+ /* "libpetsc4py.pyx":2434
* #
* cdef adaptStep = PyTS(ts).adaptStep
* if adaptStep is None: return FunctionEnd() # <<<<<<<<<<<<<<
@@ -24760,23 +26797,23 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
goto __pyx_L0;
}
- /* "libpetsc4py.pyx":2423
+ /* "libpetsc4py.pyx":2438
* cdef double dt
* cdef bint ok
* retval = adaptStep(TS_(ts), <double>t, Vec_(x)) # <<<<<<<<<<<<<<
* if retval is None: pass
* elif isinstance(retval, float):
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2423, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_11libpetsc4py_TS_(__pyx_v_ts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2438, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_6 = PyFloat_FromDouble(((double)__pyx_v_t)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2423, __pyx_L1_error)
+ __pyx_t_6 = PyFloat_FromDouble(((double)__pyx_v_t)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2438, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2423, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_11libpetsc4py_Vec_(__pyx_v_x)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2438, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_adaptStep);
__pyx_t_8 = __pyx_v_adaptStep; __pyx_t_9 = NULL;
__pyx_t_10 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -24786,28 +26823,52 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__pyx_t_10 = 1;
}
}
- __pyx_t_11 = PyTuple_New(3+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2423, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- if (__pyx_t_9) {
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_2, __pyx_t_6, __pyx_t_7};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 3+__pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2438, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_9, __pyx_t_2, __pyx_t_6, __pyx_t_7};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_10, 3+__pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2438, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(3+__pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2438, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ if (__pyx_t_9) {
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_2);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_7);
+ __pyx_t_2 = 0;
+ __pyx_t_6 = 0;
+ __pyx_t_7 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2438, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
}
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_10, __pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_10, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_10, __pyx_t_7);
- __pyx_t_2 = 0;
- __pyx_t_6 = 0;
- __pyx_t_7 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_11, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2423, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_v_retval = __pyx_t_3;
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":2424
+ /* "libpetsc4py.pyx":2439
* cdef bint ok
* retval = adaptStep(TS_(ts), <double>t, Vec_(x))
* if retval is None: pass # <<<<<<<<<<<<<<
@@ -24820,7 +26881,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
goto __pyx_L4;
}
- /* "libpetsc4py.pyx":2425
+ /* "libpetsc4py.pyx":2440
* retval = adaptStep(TS_(ts), <double>t, Vec_(x))
* if retval is None: pass
* elif isinstance(retval, float): # <<<<<<<<<<<<<<
@@ -24831,17 +26892,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__pyx_t_5 = (__pyx_t_4 != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":2426
+ /* "libpetsc4py.pyx":2441
* if retval is None: pass
* elif isinstance(retval, float):
* dt = retval # <<<<<<<<<<<<<<
* nextdt[0] = <PetscReal>dt
* stepok[0] = PETSC_TRUE
*/
- __pyx_t_12 = __pyx_PyFloat_AsDouble(__pyx_v_retval); if (unlikely((__pyx_t_12 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2426, __pyx_L1_error)
+ __pyx_t_12 = __pyx_PyFloat_AsDouble(__pyx_v_retval); if (unlikely((__pyx_t_12 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2441, __pyx_L1_error)
__pyx_v_dt = __pyx_t_12;
- /* "libpetsc4py.pyx":2427
+ /* "libpetsc4py.pyx":2442
* elif isinstance(retval, float):
* dt = retval
* nextdt[0] = <PetscReal>dt # <<<<<<<<<<<<<<
@@ -24850,7 +26911,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
*/
(__pyx_v_nextdt[0]) = ((PetscReal)__pyx_v_dt);
- /* "libpetsc4py.pyx":2428
+ /* "libpetsc4py.pyx":2443
* dt = retval
* nextdt[0] = <PetscReal>dt
* stepok[0] = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -24859,7 +26920,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
*/
(__pyx_v_stepok[0]) = PETSC_TRUE;
- /* "libpetsc4py.pyx":2425
+ /* "libpetsc4py.pyx":2440
* retval = adaptStep(TS_(ts), <double>t, Vec_(x))
* if retval is None: pass
* elif isinstance(retval, float): # <<<<<<<<<<<<<<
@@ -24869,7 +26930,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
goto __pyx_L4;
}
- /* "libpetsc4py.pyx":2429
+ /* "libpetsc4py.pyx":2444
* nextdt[0] = <PetscReal>dt
* stepok[0] = PETSC_TRUE
* elif isinstance(retval, bool): # <<<<<<<<<<<<<<
@@ -24878,22 +26939,22 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
*/
__pyx_t_3 = ((PyObject*)&PyBool_Type);
__Pyx_INCREF(__pyx_t_3);
- __pyx_t_5 = PyObject_IsInstance(__pyx_v_retval, __pyx_t_3); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(0, 2429, __pyx_L1_error)
+ __pyx_t_5 = PyObject_IsInstance(__pyx_v_retval, __pyx_t_3); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 2444, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_4 = (__pyx_t_5 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2430
+ /* "libpetsc4py.pyx":2445
* stepok[0] = PETSC_TRUE
* elif isinstance(retval, bool):
* ok = retval # <<<<<<<<<<<<<<
* nextdt[0] = ts.time_step
* stepok[0] = PETSC_TRUE if ok else PETSC_FALSE
*/
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_retval); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2430, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_retval); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2445, __pyx_L1_error)
__pyx_v_ok = __pyx_t_4;
- /* "libpetsc4py.pyx":2431
+ /* "libpetsc4py.pyx":2446
* elif isinstance(retval, bool):
* ok = retval
* nextdt[0] = ts.time_step # <<<<<<<<<<<<<<
@@ -24903,7 +26964,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__pyx_t_1 = __pyx_v_ts->time_step;
(__pyx_v_nextdt[0]) = __pyx_t_1;
- /* "libpetsc4py.pyx":2432
+ /* "libpetsc4py.pyx":2447
* ok = retval
* nextdt[0] = ts.time_step
* stepok[0] = PETSC_TRUE if ok else PETSC_FALSE # <<<<<<<<<<<<<<
@@ -24917,7 +26978,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
}
(__pyx_v_stepok[0]) = __pyx_t_13;
- /* "libpetsc4py.pyx":2429
+ /* "libpetsc4py.pyx":2444
* nextdt[0] = <PetscReal>dt
* stepok[0] = PETSC_TRUE
* elif isinstance(retval, bool): # <<<<<<<<<<<<<<
@@ -24927,7 +26988,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
goto __pyx_L4;
}
- /* "libpetsc4py.pyx":2434
+ /* "libpetsc4py.pyx":2449
* stepok[0] = PETSC_TRUE if ok else PETSC_FALSE
* else:
* dt, ok = retval # <<<<<<<<<<<<<<
@@ -24937,7 +26998,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
/*else*/ {
if ((likely(PyTuple_CheckExact(__pyx_v_retval))) || (PyList_CheckExact(__pyx_v_retval))) {
PyObject* sequence = __pyx_v_retval;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -24945,9 +27006,9 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 2434, __pyx_L1_error)
+ __PYX_ERR(0, 2449, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -24958,21 +27019,21 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_8);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2434, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2449, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2434, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2449, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_11 = PyObject_GetIter(__pyx_v_retval); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2434, __pyx_L1_error)
+ __pyx_t_11 = PyObject_GetIter(__pyx_v_retval); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2449, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_11);
__pyx_t_14 = Py_TYPE(__pyx_t_11)->tp_iternext;
index = 0; __pyx_t_3 = __pyx_t_14(__pyx_t_11); if (unlikely(!__pyx_t_3)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
index = 1; __pyx_t_8 = __pyx_t_14(__pyx_t_11); if (unlikely(!__pyx_t_8)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_14(__pyx_t_11), 2) < 0) __PYX_ERR(0, 2434, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_14(__pyx_t_11), 2) < 0) __PYX_ERR(0, 2449, __pyx_L1_error)
__pyx_t_14 = NULL;
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
goto __pyx_L6_unpacking_done;
@@ -24980,17 +27041,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
__pyx_t_14 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 2434, __pyx_L1_error)
+ __PYX_ERR(0, 2449, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
- __pyx_t_12 = __pyx_PyFloat_AsDouble(__pyx_t_3); if (unlikely((__pyx_t_12 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2434, __pyx_L1_error)
+ __pyx_t_12 = __pyx_PyFloat_AsDouble(__pyx_t_3); if (unlikely((__pyx_t_12 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2449, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2434, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2449, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_v_dt = __pyx_t_12;
__pyx_v_ok = __pyx_t_4;
- /* "libpetsc4py.pyx":2435
+ /* "libpetsc4py.pyx":2450
* else:
* dt, ok = retval
* nextdt[0] = <PetscReal>dt # <<<<<<<<<<<<<<
@@ -24999,7 +27060,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
*/
(__pyx_v_nextdt[0]) = ((PetscReal)__pyx_v_dt);
- /* "libpetsc4py.pyx":2436
+ /* "libpetsc4py.pyx":2451
* dt, ok = retval
* nextdt[0] = <PetscReal>dt
* stepok[0] = PETSC_TRUE if ok else PETSC_FALSE # <<<<<<<<<<<<<<
@@ -25015,7 +27076,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
}
__pyx_L4:;
- /* "libpetsc4py.pyx":2437
+ /* "libpetsc4py.pyx":2452
* nextdt[0] = <PetscReal>dt
* stepok[0] = PETSC_TRUE if ok else PETSC_FALSE
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -25025,7 +27086,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2406
+ /* "libpetsc4py.pyx":2421
* return FunctionEnd()
*
* cdef PetscErrorCode TSAdaptStep_Python( # <<<<<<<<<<<<<<
@@ -25049,12 +27110,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSAdaptStep_Python(TS __pyx_v_ts, Pe
__Pyx_XDECREF(__pyx_v_retval);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2439
+/* "libpetsc4py.pyx":2454
* return FunctionEnd()
*
* cdef PetscErrorCode TSStep_Python_default( # <<<<<<<<<<<<<<
@@ -25078,11 +27139,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
int __pyx_t_5;
int __pyx_t_6;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TSStep_Python_default", 0);
- /* "libpetsc4py.pyx":2443
+ /* "libpetsc4py.pyx":2458
* ) \
* except IERR with gil:
* FunctionBegin(b"TSStep_Python_default") # <<<<<<<<<<<<<<
@@ -25091,7 +27152,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"TSStep_Python_default"));
- /* "libpetsc4py.pyx":2444
+ /* "libpetsc4py.pyx":2459
* except IERR with gil:
* FunctionBegin(b"TSStep_Python_default")
* cdef PetscVec vec_update = NULL # <<<<<<<<<<<<<<
@@ -25100,16 +27161,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_vec_update = NULL;
- /* "libpetsc4py.pyx":2445
+ /* "libpetsc4py.pyx":2460
* FunctionBegin(b"TSStep_Python_default")
* cdef PetscVec vec_update = NULL
* CHKERR( PetscObjectQuery( # <<<<<<<<<<<<<<
* <PetscObject>ts,
* b"@ts.vec_update",
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_update"), ((PetscObject *)(&__pyx_v_vec_update)))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2445, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectQuery(((PetscObject)__pyx_v_ts), ((char *)"@ts.vec_update"), ((PetscObject *)(&__pyx_v_vec_update)))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2460, __pyx_L1_error)
- /* "libpetsc4py.pyx":2450
+ /* "libpetsc4py.pyx":2465
* <PetscObject*>&vec_update) )
* #
* cdef PetscInt r = 0 # <<<<<<<<<<<<<<
@@ -25118,7 +27179,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_r = 0;
- /* "libpetsc4py.pyx":2451
+ /* "libpetsc4py.pyx":2466
* #
* cdef PetscInt r = 0
* cdef PetscReal tt = ts.ptime # <<<<<<<<<<<<<<
@@ -25128,7 +27189,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_t_2 = __pyx_v_ts->ptime;
__pyx_v_tt = __pyx_t_2;
- /* "libpetsc4py.pyx":2452
+ /* "libpetsc4py.pyx":2467
* cdef PetscInt r = 0
* cdef PetscReal tt = ts.ptime
* cdef PetscReal dt = ts.time_step # <<<<<<<<<<<<<<
@@ -25138,7 +27199,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_t_2 = __pyx_v_ts->time_step;
__pyx_v_dt = __pyx_t_2;
- /* "libpetsc4py.pyx":2453
+ /* "libpetsc4py.pyx":2468
* cdef PetscReal tt = ts.ptime
* cdef PetscReal dt = ts.time_step
* cdef PetscBool accept = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -25147,7 +27208,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_accept = PETSC_TRUE;
- /* "libpetsc4py.pyx":2454
+ /* "libpetsc4py.pyx":2469
* cdef PetscReal dt = ts.time_step
* cdef PetscBool accept = PETSC_TRUE
* cdef PetscBool stageok = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -25156,7 +27217,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_stageok = PETSC_TRUE;
- /* "libpetsc4py.pyx":2455
+ /* "libpetsc4py.pyx":2470
* cdef PetscBool accept = PETSC_TRUE
* cdef PetscBool stageok = PETSC_TRUE
* for r from 0 <= r < ts.max_reject: # <<<<<<<<<<<<<<
@@ -25166,7 +27227,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_t_3 = __pyx_v_ts->max_reject;
for (__pyx_v_r = 0; __pyx_v_r < __pyx_t_3; __pyx_v_r++) {
- /* "libpetsc4py.pyx":2456
+ /* "libpetsc4py.pyx":2471
* cdef PetscBool stageok = PETSC_TRUE
* for r from 0 <= r < ts.max_reject:
* tt = ts.ptime + ts.time_step # <<<<<<<<<<<<<<
@@ -25175,52 +27236,52 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_tt = (__pyx_v_ts->ptime + __pyx_v_ts->time_step);
- /* "libpetsc4py.pyx":2457
+ /* "libpetsc4py.pyx":2472
* for r from 0 <= r < ts.max_reject:
* tt = ts.ptime + ts.time_step
* CHKERR( VecCopy(ts.vec_sol,vec_update) ) # <<<<<<<<<<<<<<
* CHKERR( TSPreStage(ts,tt+dt) )
* TSSolveStep_Python(ts,tt,vec_update)
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_ts->vec_sol, __pyx_v_vec_update)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2457, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_ts->vec_sol, __pyx_v_vec_update)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2472, __pyx_L1_error)
- /* "libpetsc4py.pyx":2458
+ /* "libpetsc4py.pyx":2473
* tt = ts.ptime + ts.time_step
* CHKERR( VecCopy(ts.vec_sol,vec_update) )
* CHKERR( TSPreStage(ts,tt+dt) ) # <<<<<<<<<<<<<<
* TSSolveStep_Python(ts,tt,vec_update)
* CHKERR( TSPostStage(ts,tt+dt,0,&vec_update) );
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSPreStage(__pyx_v_ts, (__pyx_v_tt + __pyx_v_dt))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2458, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSPreStage(__pyx_v_ts, (__pyx_v_tt + __pyx_v_dt))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2473, __pyx_L1_error)
- /* "libpetsc4py.pyx":2459
+ /* "libpetsc4py.pyx":2474
* CHKERR( VecCopy(ts.vec_sol,vec_update) )
* CHKERR( TSPreStage(ts,tt+dt) )
* TSSolveStep_Python(ts,tt,vec_update) # <<<<<<<<<<<<<<
* CHKERR( TSPostStage(ts,tt+dt,0,&vec_update) );
* CHKERR( TSAdaptCheckStage(ts.adapt,ts,tt+dt,vec_update,&stageok) );
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_TSSolveStep_Python(__pyx_v_ts, __pyx_v_tt, __pyx_v_vec_update); if (unlikely(__pyx_t_4 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2459, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_TSSolveStep_Python(__pyx_v_ts, __pyx_v_tt, __pyx_v_vec_update); if (unlikely(__pyx_t_4 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2474, __pyx_L1_error)
- /* "libpetsc4py.pyx":2460
+ /* "libpetsc4py.pyx":2475
* CHKERR( TSPreStage(ts,tt+dt) )
* TSSolveStep_Python(ts,tt,vec_update)
* CHKERR( TSPostStage(ts,tt+dt,0,&vec_update) ); # <<<<<<<<<<<<<<
* CHKERR( TSAdaptCheckStage(ts.adapt,ts,tt+dt,vec_update,&stageok) );
* if not stageok:
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSPostStage(__pyx_v_ts, (__pyx_v_tt + __pyx_v_dt), 0, (&__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2460, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSPostStage(__pyx_v_ts, (__pyx_v_tt + __pyx_v_dt), 0, (&__pyx_v_vec_update))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2475, __pyx_L1_error)
- /* "libpetsc4py.pyx":2461
+ /* "libpetsc4py.pyx":2476
* TSSolveStep_Python(ts,tt,vec_update)
* CHKERR( TSPostStage(ts,tt+dt,0,&vec_update) );
* CHKERR( TSAdaptCheckStage(ts.adapt,ts,tt+dt,vec_update,&stageok) ); # <<<<<<<<<<<<<<
* if not stageok:
* ts.reject += 1
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSAdaptCheckStage(__pyx_v_ts->adapt, __pyx_v_ts, (__pyx_v_tt + __pyx_v_dt), __pyx_v_vec_update, (&__pyx_v_stageok))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2461, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSAdaptCheckStage(__pyx_v_ts->adapt, __pyx_v_ts, (__pyx_v_tt + __pyx_v_dt), __pyx_v_vec_update, (&__pyx_v_stageok))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2476, __pyx_L1_error)
- /* "libpetsc4py.pyx":2462
+ /* "libpetsc4py.pyx":2477
* CHKERR( TSPostStage(ts,tt+dt,0,&vec_update) );
* CHKERR( TSAdaptCheckStage(ts.adapt,ts,tt+dt,vec_update,&stageok) );
* if not stageok: # <<<<<<<<<<<<<<
@@ -25230,7 +27291,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_t_5 = ((!__pyx_v_stageok) != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":2463
+ /* "libpetsc4py.pyx":2478
* CHKERR( TSAdaptCheckStage(ts.adapt,ts,tt+dt,vec_update,&stageok) );
* if not stageok:
* ts.reject += 1 # <<<<<<<<<<<<<<
@@ -25239,7 +27300,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_ts->reject = (__pyx_v_ts->reject + 1);
- /* "libpetsc4py.pyx":2464
+ /* "libpetsc4py.pyx":2479
* if not stageok:
* ts.reject += 1
* continue # <<<<<<<<<<<<<<
@@ -25248,7 +27309,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
goto __pyx_L3_continue;
- /* "libpetsc4py.pyx":2462
+ /* "libpetsc4py.pyx":2477
* CHKERR( TSPostStage(ts,tt+dt,0,&vec_update) );
* CHKERR( TSAdaptCheckStage(ts.adapt,ts,tt+dt,vec_update,&stageok) );
* if not stageok: # <<<<<<<<<<<<<<
@@ -25257,16 +27318,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
}
- /* "libpetsc4py.pyx":2465
+ /* "libpetsc4py.pyx":2480
* ts.reject += 1
* continue
* TSAdaptStep_Python(ts,tt,vec_update,&dt,&accept) # <<<<<<<<<<<<<<
* if not accept:
* ts.time_step = dt
*/
- __pyx_t_4 = __pyx_f_11libpetsc4py_TSAdaptStep_Python(__pyx_v_ts, __pyx_v_tt, __pyx_v_vec_update, (&__pyx_v_dt), (&__pyx_v_accept)); if (unlikely(__pyx_t_4 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2465, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_11libpetsc4py_TSAdaptStep_Python(__pyx_v_ts, __pyx_v_tt, __pyx_v_vec_update, (&__pyx_v_dt), (&__pyx_v_accept)); if (unlikely(__pyx_t_4 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2480, __pyx_L1_error)
- /* "libpetsc4py.pyx":2466
+ /* "libpetsc4py.pyx":2481
* continue
* TSAdaptStep_Python(ts,tt,vec_update,&dt,&accept)
* if not accept: # <<<<<<<<<<<<<<
@@ -25276,7 +27337,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_t_5 = ((!__pyx_v_accept) != 0);
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":2467
+ /* "libpetsc4py.pyx":2482
* TSAdaptStep_Python(ts,tt,vec_update,&dt,&accept)
* if not accept:
* ts.time_step = dt # <<<<<<<<<<<<<<
@@ -25285,7 +27346,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_ts->time_step = __pyx_v_dt;
- /* "libpetsc4py.pyx":2468
+ /* "libpetsc4py.pyx":2483
* if not accept:
* ts.time_step = dt
* ts.reject += 1 # <<<<<<<<<<<<<<
@@ -25294,7 +27355,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_ts->reject = (__pyx_v_ts->reject + 1);
- /* "libpetsc4py.pyx":2469
+ /* "libpetsc4py.pyx":2484
* ts.time_step = dt
* ts.reject += 1
* continue # <<<<<<<<<<<<<<
@@ -25303,7 +27364,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
goto __pyx_L3_continue;
- /* "libpetsc4py.pyx":2466
+ /* "libpetsc4py.pyx":2481
* continue
* TSAdaptStep_Python(ts,tt,vec_update,&dt,&accept)
* if not accept: # <<<<<<<<<<<<<<
@@ -25312,16 +27373,16 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
}
- /* "libpetsc4py.pyx":2470
+ /* "libpetsc4py.pyx":2485
* ts.reject += 1
* continue
* CHKERR( VecCopy(vec_update,ts.vec_sol) ) # <<<<<<<<<<<<<<
* ts.ptime += ts.time_step
* ts.time_step = dt
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_vec_update, __pyx_v_ts->vec_sol)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2470, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(VecCopy(__pyx_v_vec_update, __pyx_v_ts->vec_sol)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2485, __pyx_L1_error)
- /* "libpetsc4py.pyx":2471
+ /* "libpetsc4py.pyx":2486
* continue
* CHKERR( VecCopy(vec_update,ts.vec_sol) )
* ts.ptime += ts.time_step # <<<<<<<<<<<<<<
@@ -25330,7 +27391,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_ts->ptime = (__pyx_v_ts->ptime + __pyx_v_ts->time_step);
- /* "libpetsc4py.pyx":2472
+ /* "libpetsc4py.pyx":2487
* CHKERR( VecCopy(vec_update,ts.vec_sol) )
* ts.ptime += ts.time_step
* ts.time_step = dt # <<<<<<<<<<<<<<
@@ -25339,7 +27400,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_ts->time_step = __pyx_v_dt;
- /* "libpetsc4py.pyx":2473
+ /* "libpetsc4py.pyx":2488
* ts.ptime += ts.time_step
* ts.time_step = dt
* break # <<<<<<<<<<<<<<
@@ -25351,7 +27412,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
}
__pyx_L4_break:;
- /* "libpetsc4py.pyx":2474
+ /* "libpetsc4py.pyx":2489
* ts.time_step = dt
* break
* if (not stageok or not accept) and ts.reason == 0: # <<<<<<<<<<<<<<
@@ -25375,7 +27436,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_L8_bool_binop_done:;
if (__pyx_t_5) {
- /* "libpetsc4py.pyx":2475
+ /* "libpetsc4py.pyx":2490
* break
* if (not stageok or not accept) and ts.reason == 0:
* ts.reason = TS_DIVERGED_STEP_REJECTED # <<<<<<<<<<<<<<
@@ -25384,7 +27445,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
__pyx_v_ts->reason = TS_DIVERGED_STEP_REJECTED;
- /* "libpetsc4py.pyx":2474
+ /* "libpetsc4py.pyx":2489
* ts.time_step = dt
* break
* if (not stageok or not accept) and ts.reason == 0: # <<<<<<<<<<<<<<
@@ -25393,7 +27454,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
}
- /* "libpetsc4py.pyx":2476
+ /* "libpetsc4py.pyx":2491
* if (not stageok or not accept) and ts.reason == 0:
* ts.reason = TS_DIVERGED_STEP_REJECTED
* <void>r # silent unused warning # <<<<<<<<<<<<<<
@@ -25402,7 +27463,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
*/
((void)__pyx_v_r);
- /* "libpetsc4py.pyx":2477
+ /* "libpetsc4py.pyx":2492
* ts.reason = TS_DIVERGED_STEP_REJECTED
* <void>r # silent unused warning
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -25412,7 +27473,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2439
+ /* "libpetsc4py.pyx":2454
* return FunctionEnd()
*
* cdef PetscErrorCode TSStep_Python_default( # <<<<<<<<<<<<<<
@@ -25427,12 +27488,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_TSStep_Python_default(TS __pyx_v_ts)
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2481
+/* "libpetsc4py.pyx":2496
* # --------------------------------------------------------------------
*
* cdef PetscErrorCode PetscPythonMonitorSet_Python( # <<<<<<<<<<<<<<
@@ -25464,11 +27525,11 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
PyObject *(*__pyx_t_10)(PyObject *);
PyObject *__pyx_t_11 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("PetscPythonMonitorSet_Python", 0);
- /* "libpetsc4py.pyx":2486
+ /* "libpetsc4py.pyx":2501
* ) \
* except IERR with gil:
* FunctionBegin(b"PetscPythonMonitorSet_Python") # <<<<<<<<<<<<<<
@@ -25477,7 +27538,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PetscPythonMonitorSet_Python"));
- /* "libpetsc4py.pyx":2487
+ /* "libpetsc4py.pyx":2502
* except IERR with gil:
* FunctionBegin(b"PetscPythonMonitorSet_Python")
* assert obj_p != NULL # <<<<<<<<<<<<<<
@@ -25488,12 +27549,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_obj_p != NULL) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(0, 2487, __pyx_L1_error)
+ __PYX_ERR(0, 2502, __pyx_L1_error)
}
}
#endif
- /* "libpetsc4py.pyx":2488
+ /* "libpetsc4py.pyx":2503
* FunctionBegin(b"PetscPythonMonitorSet_Python")
* assert obj_p != NULL
* assert url_p != NULL # <<<<<<<<<<<<<<
@@ -25504,12 +27565,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_url_p != NULL) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(0, 2488, __pyx_L1_error)
+ __PYX_ERR(0, 2503, __pyx_L1_error)
}
}
#endif
- /* "libpetsc4py.pyx":2489
+ /* "libpetsc4py.pyx":2504
* assert obj_p != NULL
* assert url_p != NULL
* assert url_p[0] != 0 # <<<<<<<<<<<<<<
@@ -25520,12 +27581,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!(((__pyx_v_url_p[0]) != 0) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(0, 2489, __pyx_L1_error)
+ __PYX_ERR(0, 2504, __pyx_L1_error)
}
}
#endif
- /* "libpetsc4py.pyx":2491
+ /* "libpetsc4py.pyx":2506
* assert url_p[0] != 0
* #
* cdef PetscClassId classid = 0 # <<<<<<<<<<<<<<
@@ -25534,41 +27595,41 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
*/
__pyx_v_classid = 0;
- /* "libpetsc4py.pyx":2492
+ /* "libpetsc4py.pyx":2507
* #
* cdef PetscClassId classid = 0
* CHKERR( PetscObjectGetClassId(obj_p,&classid) ) # <<<<<<<<<<<<<<
* cdef type klass = PyPetscType_Lookup(classid)
* cdef Object ob = klass()
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectGetClassId(__pyx_v_obj_p, (&__pyx_v_classid))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2492, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PetscObjectGetClassId(__pyx_v_obj_p, (&__pyx_v_classid))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2507, __pyx_L1_error)
- /* "libpetsc4py.pyx":2493
+ /* "libpetsc4py.pyx":2508
* cdef PetscClassId classid = 0
* CHKERR( PetscObjectGetClassId(obj_p,&classid) )
* cdef type klass = PyPetscType_Lookup(classid) # <<<<<<<<<<<<<<
* cdef Object ob = klass()
* ob.obj[0] = newRef(obj_p)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(__pyx_v_classid)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2493, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(__pyx_v_classid)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2508, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_klass = ((PyTypeObject*)__pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2494
+ /* "libpetsc4py.pyx":2509
* CHKERR( PetscObjectGetClassId(obj_p,&classid) )
* cdef type klass = PyPetscType_Lookup(classid)
* cdef Object ob = klass() # <<<<<<<<<<<<<<
* ob.obj[0] = newRef(obj_p)
* #
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_v_klass), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2494, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_v_klass), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2509, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Object))))) __PYX_ERR(0, 2494, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Object))))) __PYX_ERR(0, 2509, __pyx_L1_error)
__pyx_v_ob = ((struct PyPetscObjectObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2495
+ /* "libpetsc4py.pyx":2510
* cdef type klass = PyPetscType_Lookup(classid)
* cdef Object ob = klass()
* ob.obj[0] = newRef(obj_p) # <<<<<<<<<<<<<<
@@ -25577,41 +27638,41 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
*/
(__pyx_v_ob->obj[0]) = __pyx_f_11libpetsc4py_newRef(__pyx_v_obj_p);
- /* "libpetsc4py.pyx":2497
+ /* "libpetsc4py.pyx":2512
* ob.obj[0] = newRef(obj_p)
* #
* cdef url = bytes2str(url_p) # <<<<<<<<<<<<<<
* if ':' in url:
* path, names = parse_url(url)
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_bytes2str(__pyx_v_url_p); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2497, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_bytes2str(__pyx_v_url_p); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2512, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_url = __pyx_t_2;
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2498
+ /* "libpetsc4py.pyx":2513
* #
* cdef url = bytes2str(url_p)
* if ':' in url: # <<<<<<<<<<<<<<
* path, names = parse_url(url)
* else:
*/
- __pyx_t_3 = (__Pyx_PySequence_ContainsTF(__pyx_kp_s_, __pyx_v_url, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2498, __pyx_L1_error)
+ __pyx_t_3 = (__Pyx_PySequence_ContainsTF(__pyx_kp_s_, __pyx_v_url, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2513, __pyx_L1_error)
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "libpetsc4py.pyx":2499
+ /* "libpetsc4py.pyx":2514
* cdef url = bytes2str(url_p)
* if ':' in url:
* path, names = parse_url(url) # <<<<<<<<<<<<<<
* else:
* path, names = url, 'monitor'
*/
- __pyx_t_2 = __pyx_f_11libpetsc4py_parse_url(__pyx_v_url); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2499, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_11libpetsc4py_parse_url(__pyx_v_url); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2514, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -25619,9 +27680,9 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(0, 2499, __pyx_L1_error)
+ __PYX_ERR(0, 2514, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
@@ -25632,15 +27693,15 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2499, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2514, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2499, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2514, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2499, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2514, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
@@ -25648,7 +27709,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__Pyx_GOTREF(__pyx_t_5);
index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(0, 2499, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(0, 2514, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L5_unpacking_done;
@@ -25656,7 +27717,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(0, 2499, __pyx_L1_error)
+ __PYX_ERR(0, 2514, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
__pyx_v_path = __pyx_t_5;
@@ -25664,7 +27725,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__pyx_v_names = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":2498
+ /* "libpetsc4py.pyx":2513
* #
* cdef url = bytes2str(url_p)
* if ':' in url: # <<<<<<<<<<<<<<
@@ -25674,7 +27735,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
goto __pyx_L3;
}
- /* "libpetsc4py.pyx":2501
+ /* "libpetsc4py.pyx":2516
* path, names = parse_url(url)
* else:
* path, names = url, 'monitor' # <<<<<<<<<<<<<<
@@ -25693,55 +27754,55 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
}
__pyx_L3:;
- /* "libpetsc4py.pyx":2502
+ /* "libpetsc4py.pyx":2517
* else:
* path, names = url, 'monitor'
* module = load_module(path) # <<<<<<<<<<<<<<
* for attr in names.split(','):
* monitor = getattr(module, attr)
*/
- __pyx_t_6 = __pyx_f_11libpetsc4py_load_module(__pyx_v_path); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2502, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_11libpetsc4py_load_module(__pyx_v_path); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2517, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_v_module = __pyx_t_6;
__pyx_t_6 = 0;
- /* "libpetsc4py.pyx":2503
+ /* "libpetsc4py.pyx":2518
* path, names = url, 'monitor'
* module = load_module(path)
* for attr in names.split(','): # <<<<<<<<<<<<<<
* monitor = getattr(module, attr)
* if isinstance(monitor, type):
*/
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_names, __pyx_n_s_split); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_names, __pyx_n_s_split); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2518, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2518, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (likely(PyList_CheckExact(__pyx_t_2)) || PyTuple_CheckExact(__pyx_t_2)) {
__pyx_t_6 = __pyx_t_2; __Pyx_INCREF(__pyx_t_6); __pyx_t_9 = 0;
__pyx_t_10 = NULL;
} else {
- __pyx_t_9 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ __pyx_t_9 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2518, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_10 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ __pyx_t_10 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 2518, __pyx_L1_error)
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
for (;;) {
if (likely(!__pyx_t_10)) {
if (likely(PyList_CheckExact(__pyx_t_6))) {
if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_6)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_2 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_2); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_2 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_2); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(0, 2518, __pyx_L1_error)
#else
- __pyx_t_2 = PySequence_ITEM(__pyx_t_6, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(__pyx_t_6, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2518, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
#endif
} else {
if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_6)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_2); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_2); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(0, 2518, __pyx_L1_error)
#else
- __pyx_t_2 = PySequence_ITEM(__pyx_t_6, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(__pyx_t_6, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2518, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
#endif
}
@@ -25750,8 +27811,8 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
if (unlikely(!__pyx_t_2)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(0, 2503, __pyx_L1_error)
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ else __PYX_ERR(0, 2518, __pyx_L1_error)
}
break;
}
@@ -25760,19 +27821,19 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__Pyx_XDECREF_SET(__pyx_v_attr, __pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2504
+ /* "libpetsc4py.pyx":2519
* module = load_module(path)
* for attr in names.split(','):
* monitor = getattr(module, attr) # <<<<<<<<<<<<<<
* if isinstance(monitor, type):
* monitor = monitor(ob)
*/
- __pyx_t_2 = __Pyx_GetAttr(__pyx_v_module, __pyx_v_attr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2504, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetAttr(__pyx_v_module, __pyx_v_attr); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2519, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_XDECREF_SET(__pyx_v_monitor, __pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2505
+ /* "libpetsc4py.pyx":2520
* for attr in names.split(','):
* monitor = getattr(module, attr)
* if isinstance(monitor, type): # <<<<<<<<<<<<<<
@@ -25783,7 +27844,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__pyx_t_3 = (__pyx_t_4 != 0);
if (__pyx_t_3) {
- /* "libpetsc4py.pyx":2506
+ /* "libpetsc4py.pyx":2521
* monitor = getattr(module, attr)
* if isinstance(monitor, type):
* monitor = monitor(ob) # <<<<<<<<<<<<<<
@@ -25792,7 +27853,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
*/
__Pyx_INCREF(__pyx_v_monitor);
__pyx_t_5 = __pyx_v_monitor; __pyx_t_7 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -25802,24 +27863,42 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
}
}
if (!__pyx_t_7) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, ((PyObject *)__pyx_v_ob)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2506, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, ((PyObject *)__pyx_v_ob)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2521, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_11 = PyTuple_New(1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2506, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_11);
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_7); __pyx_t_7 = NULL;
- __Pyx_INCREF(((PyObject *)__pyx_v_ob));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_ob));
- PyTuple_SET_ITEM(__pyx_t_11, 0+1, ((PyObject *)__pyx_v_ob));
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2506, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, ((PyObject *)__pyx_v_ob)};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2521, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, ((PyObject *)__pyx_v_ob)};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2521, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ {
+ __pyx_t_11 = PyTuple_New(1+1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 2521, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ __Pyx_INCREF(((PyObject *)__pyx_v_ob));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_ob));
+ PyTuple_SET_ITEM(__pyx_t_11, 0+1, ((PyObject *)__pyx_v_ob));
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2521, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_monitor, __pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2505
+ /* "libpetsc4py.pyx":2520
* for attr in names.split(','):
* monitor = getattr(module, attr)
* if isinstance(monitor, type): # <<<<<<<<<<<<<<
@@ -25828,17 +27907,17 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
*/
}
- /* "libpetsc4py.pyx":2507
+ /* "libpetsc4py.pyx":2522
* if isinstance(monitor, type):
* monitor = monitor(ob)
* ob.setMonitor(monitor) # <<<<<<<<<<<<<<
* #
* return FunctionEnd()
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_ob), __pyx_n_s_setMonitor); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2507, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_ob), __pyx_n_s_setMonitor); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2522, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_11 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_11 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_11)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -25848,23 +27927,41 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
}
}
if (!__pyx_t_11) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_v_monitor); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2507, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_v_monitor); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2522, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2507, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_11); __pyx_t_11 = NULL;
- __Pyx_INCREF(__pyx_v_monitor);
- __Pyx_GIVEREF(__pyx_v_monitor);
- PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_v_monitor);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2507, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_v_monitor};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2522, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_11, __pyx_v_monitor};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2522, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2522, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_11); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_11); __pyx_t_11 = NULL;
+ __Pyx_INCREF(__pyx_v_monitor);
+ __Pyx_GIVEREF(__pyx_v_monitor);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_v_monitor);
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2522, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "libpetsc4py.pyx":2503
+ /* "libpetsc4py.pyx":2518
* path, names = url, 'monitor'
* module = load_module(path)
* for attr in names.split(','): # <<<<<<<<<<<<<<
@@ -25874,7 +27971,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "libpetsc4py.pyx":2509
+ /* "libpetsc4py.pyx":2524
* ob.setMonitor(monitor)
* #
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -25884,7 +27981,7 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2481
+ /* "libpetsc4py.pyx":2496
* # --------------------------------------------------------------------
*
* cdef PetscErrorCode PetscPythonMonitorSet_Python( # <<<<<<<<<<<<<<
@@ -25912,12 +28009,12 @@ static PetscErrorCode __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python(PetscOb
__Pyx_XDECREF(__pyx_v_monitor);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "libpetsc4py.pyx":2537
+/* "libpetsc4py.pyx":2552
*
*
* cdef public PetscErrorCode PetscPythonRegisterAll() except IERR: # <<<<<<<<<<<<<<
@@ -25931,7 +28028,7 @@ PetscErrorCode PetscPythonRegisterAll(void) {
int __pyx_t_1;
__Pyx_RefNannySetupContext("PetscPythonRegisterAll", 0);
- /* "libpetsc4py.pyx":2538
+ /* "libpetsc4py.pyx":2553
*
* cdef public PetscErrorCode PetscPythonRegisterAll() except IERR:
* FunctionBegin(b"PetscPythonRegisterAll") # <<<<<<<<<<<<<<
@@ -25940,52 +28037,52 @@ PetscErrorCode PetscPythonRegisterAll(void) {
*/
__pyx_f_11libpetsc4py_FunctionBegin(((char *)"PetscPythonRegisterAll"));
- /* "libpetsc4py.pyx":2541
+ /* "libpetsc4py.pyx":2556
*
* # Python subtypes
* CHKERR( MatRegister ( MATPYTHON, MatCreate_Python ) ) # <<<<<<<<<<<<<<
* CHKERR( PCRegister ( PCPYTHON, PCCreate_Python ) )
* CHKERR( KSPRegister ( KSPPYTHON, KSPCreate_Python ) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(MatRegister("python", __pyx_f_11libpetsc4py_MatCreate_Python)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2541, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(MatRegister("python", __pyx_f_11libpetsc4py_MatCreate_Python)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2556, __pyx_L1_error)
- /* "libpetsc4py.pyx":2542
+ /* "libpetsc4py.pyx":2557
* # Python subtypes
* CHKERR( MatRegister ( MATPYTHON, MatCreate_Python ) )
* CHKERR( PCRegister ( PCPYTHON, PCCreate_Python ) ) # <<<<<<<<<<<<<<
* CHKERR( KSPRegister ( KSPPYTHON, KSPCreate_Python ) )
* CHKERR( SNESRegister( SNESPYTHON, SNESCreate_Python ) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PCRegister("python", __pyx_f_11libpetsc4py_PCCreate_Python)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2542, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(PCRegister("python", __pyx_f_11libpetsc4py_PCCreate_Python)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2557, __pyx_L1_error)
- /* "libpetsc4py.pyx":2543
+ /* "libpetsc4py.pyx":2558
* CHKERR( MatRegister ( MATPYTHON, MatCreate_Python ) )
* CHKERR( PCRegister ( PCPYTHON, PCCreate_Python ) )
* CHKERR( KSPRegister ( KSPPYTHON, KSPCreate_Python ) ) # <<<<<<<<<<<<<<
* CHKERR( SNESRegister( SNESPYTHON, SNESCreate_Python ) )
* CHKERR( TSRegister ( TSPYTHON, TSCreate_Python ) )
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPRegister("python", __pyx_f_11libpetsc4py_KSPCreate_Python)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2543, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(KSPRegister("python", __pyx_f_11libpetsc4py_KSPCreate_Python)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2558, __pyx_L1_error)
- /* "libpetsc4py.pyx":2544
+ /* "libpetsc4py.pyx":2559
* CHKERR( PCRegister ( PCPYTHON, PCCreate_Python ) )
* CHKERR( KSPRegister ( KSPPYTHON, KSPCreate_Python ) )
* CHKERR( SNESRegister( SNESPYTHON, SNESCreate_Python ) ) # <<<<<<<<<<<<<<
* CHKERR( TSRegister ( TSPYTHON, TSCreate_Python ) )
*
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESRegister("python", __pyx_f_11libpetsc4py_SNESCreate_Python)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2544, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(SNESRegister("python", __pyx_f_11libpetsc4py_SNESCreate_Python)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2559, __pyx_L1_error)
- /* "libpetsc4py.pyx":2545
+ /* "libpetsc4py.pyx":2560
* CHKERR( KSPRegister ( KSPPYTHON, KSPCreate_Python ) )
* CHKERR( SNESRegister( SNESPYTHON, SNESCreate_Python ) )
* CHKERR( TSRegister ( TSPYTHON, TSCreate_Python ) ) # <<<<<<<<<<<<<<
*
* # Python monitors
*/
- __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSRegister("python", __pyx_f_11libpetsc4py_TSCreate_Python)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(0, 2545, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_11libpetsc4py_CHKERR(TSRegister("python", __pyx_f_11libpetsc4py_TSCreate_Python)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2560, __pyx_L1_error)
- /* "libpetsc4py.pyx":2549
+ /* "libpetsc4py.pyx":2564
* # Python monitors
* global PetscPythonMonitorSet_C
* PetscPythonMonitorSet_C = PetscPythonMonitorSet_Python # <<<<<<<<<<<<<<
@@ -25994,7 +28091,7 @@ PetscErrorCode PetscPythonRegisterAll(void) {
*/
PetscPythonMonitorSet_C = __pyx_f_11libpetsc4py_PetscPythonMonitorSet_Python;
- /* "libpetsc4py.pyx":2551
+ /* "libpetsc4py.pyx":2566
* PetscPythonMonitorSet_C = PetscPythonMonitorSet_Python
*
* return FunctionEnd() # <<<<<<<<<<<<<<
@@ -26004,7 +28101,7 @@ PetscErrorCode PetscPythonRegisterAll(void) {
__pyx_r = __pyx_f_11libpetsc4py_FunctionEnd();
goto __pyx_L0;
- /* "libpetsc4py.pyx":2537
+ /* "libpetsc4py.pyx":2552
*
*
* cdef public PetscErrorCode PetscPythonRegisterAll() except IERR: # <<<<<<<<<<<<<<
@@ -26040,8 +28137,8 @@ static PyObject *__pyx_tp_new_11libpetsc4py__PyObj(PyTypeObject *t, CYTHON_UNUSE
static void __pyx_tp_dealloc_11libpetsc4py__PyObj(PyObject *o) {
struct __pyx_obj_11libpetsc4py__PyObj *p = (struct __pyx_obj_11libpetsc4py__PyObj *)o;
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -26486,17 +28583,31 @@ static PyMethodDef __pyx_methods[] = {
};
#if PY_MAJOR_VERSION >= 3
+#if CYTHON_PEP489_MULTI_PHASE_INIT
+static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/
+static int __pyx_pymod_exec_libpetsc4py(PyObject* module); /*proto*/
+static PyModuleDef_Slot __pyx_moduledef_slots[] = {
+ {Py_mod_create, (void*)__pyx_pymod_create},
+ {Py_mod_exec, (void*)__pyx_pymod_exec_libpetsc4py},
+ {0, NULL}
+};
+#endif
+
static struct PyModuleDef __pyx_moduledef = {
- #if PY_VERSION_HEX < 0x03020000
- { PyObject_HEAD_INIT(NULL) NULL, 0, NULL },
- #else
PyModuleDef_HEAD_INIT,
- #endif
"libpetsc4py",
0, /* m_doc */
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ 0, /* m_size */
+ #else
-1, /* m_size */
+ #endif
__pyx_methods /* m_methods */,
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ __pyx_moduledef_slots, /* m_slots */
+ #else
NULL, /* m_reload */
+ #endif
NULL, /* m_traverse */
NULL, /* m_clear */
(freefunc)__pyx_module_cleanup /* m_free */
@@ -26521,11 +28632,13 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_buildSolution, __pyx_k_buildSolution, sizeof(__pyx_k_buildSolution), 0, 0, 1, 1},
{&__pyx_n_s_builtins, __pyx_k_builtins, sizeof(__pyx_k_builtins), 0, 0, 1, 1},
{&__pyx_n_s_class, __pyx_k_class, sizeof(__pyx_k_class), 0, 0, 1, 1},
+ {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1},
{&__pyx_n_s_close, __pyx_k_close, sizeof(__pyx_k_close), 0, 0, 1, 1},
{&__pyx_n_s_compile, __pyx_k_compile, sizeof(__pyx_k_compile), 0, 0, 1, 1},
{&__pyx_n_s_conjugate, __pyx_k_conjugate, sizeof(__pyx_k_conjugate), 0, 0, 1, 1},
{&__pyx_n_s_copy, __pyx_k_copy, sizeof(__pyx_k_copy), 0, 0, 1, 1},
{&__pyx_n_s_create, __pyx_k_create, sizeof(__pyx_k_create), 0, 0, 1, 1},
+ {&__pyx_n_s_createSubMatrix, __pyx_k_createSubMatrix, sizeof(__pyx_k_createSubMatrix), 0, 0, 1, 1},
{&__pyx_n_s_createVecs, __pyx_k_createVecs, sizeof(__pyx_k_createVecs), 0, 0, 1, 1},
{&__pyx_n_s_destroy, __pyx_k_destroy, sizeof(__pyx_k_destroy), 0, 0, 1, 1},
{&__pyx_n_s_diagonalScale, __pyx_k_diagonalScale, sizeof(__pyx_k_diagonalScale), 0, 0, 1, 1},
@@ -26539,7 +28652,6 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_formSNESJacobian, __pyx_k_formSNESJacobian, sizeof(__pyx_k_formSNESJacobian), 0, 0, 1, 1},
{&__pyx_n_s_getDiagonal, __pyx_k_getDiagonal, sizeof(__pyx_k_getDiagonal), 0, 0, 1, 1},
{&__pyx_n_s_getDiagonalBlock, __pyx_k_getDiagonalBlock, sizeof(__pyx_k_getDiagonalBlock), 0, 0, 1, 1},
- {&__pyx_n_s_getSubMatrix, __pyx_k_getSubMatrix, sizeof(__pyx_k_getSubMatrix), 0, 0, 1, 1},
{&__pyx_n_s_imagPart, __pyx_k_imagPart, sizeof(__pyx_k_imagPart), 0, 0, 1, 1},
{&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1},
{&__pyx_n_s_interpolate, __pyx_k_interpolate, sizeof(__pyx_k_interpolate), 0, 0, 1, 1},
@@ -26589,8 +28701,8 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{0, 0, 0, 0, 0, 0, 0}
};
static int __Pyx_InitCachedBuiltins(void) {
- __pyx_builtin_open = __Pyx_GetBuiltinName(__pyx_n_s_open); if (!__pyx_builtin_open) __PYX_ERR(0, 269, __pyx_L1_error)
- __pyx_builtin_compile = __Pyx_GetBuiltinName(__pyx_n_s_compile); if (!__pyx_builtin_compile) __PYX_ERR(0, 271, __pyx_L1_error)
+ __pyx_builtin_open = __Pyx_GetBuiltinName(__pyx_n_s_open); if (!__pyx_builtin_open) __PYX_ERR(0, 271, __pyx_L1_error)
+ __pyx_builtin_compile = __Pyx_GetBuiltinName(__pyx_n_s_compile); if (!__pyx_builtin_compile) __PYX_ERR(0, 273, __pyx_L1_error)
return 0;
__pyx_L1_error:;
return -1;
@@ -26600,36 +28712,36 @@ static int __Pyx_InitCachedConstants(void) {
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);
- /* "libpetsc4py.pyx":256
+ /* "libpetsc4py.pyx":258
*
* cdef object parse_url(object url):
* path, name = url.rsplit(":", 1) # <<<<<<<<<<<<<<
* return (path, name)
*
*/
- __pyx_tuple__2 = PyTuple_Pack(2, __pyx_kp_s_, __pyx_int_1); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 256, __pyx_L1_error)
+ __pyx_tuple__2 = PyTuple_Pack(2, __pyx_kp_s_, __pyx_int_1); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__2);
__Pyx_GIVEREF(__pyx_tuple__2);
- /* "libpetsc4py.pyx":375
+ /* "libpetsc4py.pyx":377
* # package.module[.{function|class}]
* if '.' in name:
* modname, clsname = name.rsplit('.', 1) # <<<<<<<<<<<<<<
* mod = PyImport_Import(modname)
* if hasattr(mod, clsname):
*/
- __pyx_tuple__4 = PyTuple_Pack(2, __pyx_kp_s__3, __pyx_int_1); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(0, 375, __pyx_L1_error)
+ __pyx_tuple__4 = PyTuple_Pack(2, __pyx_kp_s__3, __pyx_int_1); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(0, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__4);
__Pyx_GIVEREF(__pyx_tuple__4);
- /* "libpetsc4py.pyx":2503
+ /* "libpetsc4py.pyx":2518
* path, names = url, 'monitor'
* module = load_module(path)
* for attr in names.split(','): # <<<<<<<<<<<<<<
* monitor = getattr(module, attr)
* if isinstance(monitor, type):
*/
- __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_s__5); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 2503, __pyx_L1_error)
+ __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_s__5); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 2518, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__6);
__Pyx_GIVEREF(__pyx_tuple__6);
__Pyx_RefNannyFinishContext();
@@ -26653,6 +28765,47 @@ PyMODINIT_FUNC initlibpetsc4py(void)
#else
PyMODINIT_FUNC PyInit_libpetsc4py(void); /*proto*/
PyMODINIT_FUNC PyInit_libpetsc4py(void)
+#if CYTHON_PEP489_MULTI_PHASE_INIT
+{
+ return PyModuleDef_Init(&__pyx_moduledef);
+}
+static int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name) {
+ PyObject *value = PyObject_GetAttrString(spec, from_name);
+ int result = 0;
+ if (likely(value)) {
+ result = PyDict_SetItemString(moddict, to_name, value);
+ Py_DECREF(value);
+ } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
+ PyErr_Clear();
+ } else {
+ result = -1;
+ }
+ return result;
+}
+static PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) {
+ PyObject *module = NULL, *moddict, *modname;
+ if (__pyx_m)
+ return __Pyx_NewRef(__pyx_m);
+ modname = PyObject_GetAttrString(spec, "name");
+ if (unlikely(!modname)) goto bad;
+ module = PyModule_NewObject(modname);
+ Py_DECREF(modname);
+ if (unlikely(!module)) goto bad;
+ moddict = PyModule_GetDict(module);
+ if (unlikely(!moddict)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__") < 0)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__") < 0)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__") < 0)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__") < 0)) goto bad;
+ return module;
+bad:
+ Py_XDECREF(module);
+ return NULL;
+}
+
+
+static int __pyx_pymod_exec_libpetsc4py(PyObject *__pyx_pyinit_module)
+#endif
#endif
{
PyObject *__pyx_t_1 = NULL;
@@ -26661,6 +28814,9 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
int __pyx_t_4;
PetscErrorCode __pyx_t_5;
__Pyx_RefNannyDeclarations
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ if (__pyx_m && __pyx_m == __pyx_pyinit_module) return 0;
+ #endif
#if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
@@ -26687,6 +28843,9 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
#ifdef __Pyx_Generator_USED
if (__pyx_Generator_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
#endif
+ #ifdef __Pyx_AsyncGen_USED
+ if (__pyx_AsyncGen_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
+ #endif
#ifdef __Pyx_StopAsyncIteration_USED
if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
#endif
@@ -26698,15 +28857,21 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
#endif
#endif
/*--- Module creation code ---*/
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ __pyx_m = __pyx_pyinit_module;
+ Py_INCREF(__pyx_m);
+ #else
#if PY_MAJOR_VERSION < 3
__pyx_m = Py_InitModule4("libpetsc4py", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m);
#else
__pyx_m = PyModule_Create(&__pyx_moduledef);
#endif
if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error)
+ #endif
__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
Py_INCREF(__pyx_d);
__pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
+ __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
#if CYTHON_COMPILING_IN_PYPY
Py_INCREF(__pyx_b);
#endif
@@ -26742,85 +28907,85 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
__pyx_vtable_11libpetsc4py__PyObj.getcontext = (int (*)(struct __pyx_obj_11libpetsc4py__PyObj *, void **))__pyx_f_11libpetsc4py_6_PyObj_getcontext;
__pyx_vtable_11libpetsc4py__PyObj.setname = (int (*)(struct __pyx_obj_11libpetsc4py__PyObj *, char *))__pyx_f_11libpetsc4py_6_PyObj_setname;
__pyx_vtable_11libpetsc4py__PyObj.getname = (char *(*)(struct __pyx_obj_11libpetsc4py__PyObj *))__pyx_f_11libpetsc4py_6_PyObj_getname;
- if (PyType_Ready(&__pyx_type_11libpetsc4py__PyObj) < 0) __PYX_ERR(0, 284, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_11libpetsc4py__PyObj) < 0) __PYX_ERR(0, 286, __pyx_L1_error)
__pyx_type_11libpetsc4py__PyObj.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyObj.tp_dict, __pyx_vtabptr_11libpetsc4py__PyObj) < 0) __PYX_ERR(0, 284, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyObj.tp_dict, __pyx_vtabptr_11libpetsc4py__PyObj) < 0) __PYX_ERR(0, 286, __pyx_L1_error)
__pyx_ptype_11libpetsc4py__PyObj = &__pyx_type_11libpetsc4py__PyObj;
__pyx_vtabptr_11libpetsc4py__PyMat = &__pyx_vtable_11libpetsc4py__PyMat;
__pyx_vtable_11libpetsc4py__PyMat.__pyx_base = *__pyx_vtabptr_11libpetsc4py__PyObj;
__pyx_type_11libpetsc4py__PyMat.tp_base = __pyx_ptype_11libpetsc4py__PyObj;
- if (PyType_Ready(&__pyx_type_11libpetsc4py__PyMat) < 0) __PYX_ERR(0, 512, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_11libpetsc4py__PyMat) < 0) __PYX_ERR(0, 514, __pyx_L1_error)
__pyx_type_11libpetsc4py__PyMat.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyMat.tp_dict, __pyx_vtabptr_11libpetsc4py__PyMat) < 0) __PYX_ERR(0, 512, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyMat.tp_dict, __pyx_vtabptr_11libpetsc4py__PyMat) < 0) __PYX_ERR(0, 514, __pyx_L1_error)
__pyx_ptype_11libpetsc4py__PyMat = &__pyx_type_11libpetsc4py__PyMat;
__pyx_vtabptr_11libpetsc4py__PyPC = &__pyx_vtable_11libpetsc4py__PyPC;
__pyx_vtable_11libpetsc4py__PyPC.__pyx_base = *__pyx_vtabptr_11libpetsc4py__PyObj;
__pyx_type_11libpetsc4py__PyPC.tp_base = __pyx_ptype_11libpetsc4py__PyObj;
- if (PyType_Ready(&__pyx_type_11libpetsc4py__PyPC) < 0) __PYX_ERR(0, 1152, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_11libpetsc4py__PyPC) < 0) __PYX_ERR(0, 1154, __pyx_L1_error)
__pyx_type_11libpetsc4py__PyPC.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyPC.tp_dict, __pyx_vtabptr_11libpetsc4py__PyPC) < 0) __PYX_ERR(0, 1152, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyPC.tp_dict, __pyx_vtabptr_11libpetsc4py__PyPC) < 0) __PYX_ERR(0, 1154, __pyx_L1_error)
__pyx_ptype_11libpetsc4py__PyPC = &__pyx_type_11libpetsc4py__PyPC;
__pyx_vtabptr_11libpetsc4py__PyKSP = &__pyx_vtable_11libpetsc4py__PyKSP;
__pyx_vtable_11libpetsc4py__PyKSP.__pyx_base = *__pyx_vtabptr_11libpetsc4py__PyObj;
__pyx_type_11libpetsc4py__PyKSP.tp_base = __pyx_ptype_11libpetsc4py__PyObj;
- if (PyType_Ready(&__pyx_type_11libpetsc4py__PyKSP) < 0) __PYX_ERR(0, 1427, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_11libpetsc4py__PyKSP) < 0) __PYX_ERR(0, 1430, __pyx_L1_error)
__pyx_type_11libpetsc4py__PyKSP.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyKSP.tp_dict, __pyx_vtabptr_11libpetsc4py__PyKSP) < 0) __PYX_ERR(0, 1427, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyKSP.tp_dict, __pyx_vtabptr_11libpetsc4py__PyKSP) < 0) __PYX_ERR(0, 1430, __pyx_L1_error)
__pyx_ptype_11libpetsc4py__PyKSP = &__pyx_type_11libpetsc4py__PyKSP;
__pyx_vtabptr_11libpetsc4py__PySNES = &__pyx_vtable_11libpetsc4py__PySNES;
__pyx_vtable_11libpetsc4py__PySNES.__pyx_base = *__pyx_vtabptr_11libpetsc4py__PyObj;
__pyx_type_11libpetsc4py__PySNES.tp_base = __pyx_ptype_11libpetsc4py__PyObj;
- if (PyType_Ready(&__pyx_type_11libpetsc4py__PySNES) < 0) __PYX_ERR(0, 1782, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_11libpetsc4py__PySNES) < 0) __PYX_ERR(0, 1792, __pyx_L1_error)
__pyx_type_11libpetsc4py__PySNES.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PySNES.tp_dict, __pyx_vtabptr_11libpetsc4py__PySNES) < 0) __PYX_ERR(0, 1782, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PySNES.tp_dict, __pyx_vtabptr_11libpetsc4py__PySNES) < 0) __PYX_ERR(0, 1792, __pyx_L1_error)
__pyx_ptype_11libpetsc4py__PySNES = &__pyx_type_11libpetsc4py__PySNES;
__pyx_vtabptr_11libpetsc4py__PyTS = &__pyx_vtable_11libpetsc4py__PyTS;
__pyx_vtable_11libpetsc4py__PyTS.__pyx_base = *__pyx_vtabptr_11libpetsc4py__PyObj;
__pyx_type_11libpetsc4py__PyTS.tp_base = __pyx_ptype_11libpetsc4py__PyObj;
- if (PyType_Ready(&__pyx_type_11libpetsc4py__PyTS) < 0) __PYX_ERR(0, 2117, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_11libpetsc4py__PyTS) < 0) __PYX_ERR(0, 2132, __pyx_L1_error)
__pyx_type_11libpetsc4py__PyTS.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyTS.tp_dict, __pyx_vtabptr_11libpetsc4py__PyTS) < 0) __PYX_ERR(0, 2117, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_11libpetsc4py__PyTS.tp_dict, __pyx_vtabptr_11libpetsc4py__PyTS) < 0) __PYX_ERR(0, 2132, __pyx_L1_error)
__pyx_ptype_11libpetsc4py__PyTS = &__pyx_type_11libpetsc4py__PyTS;
/*--- Type import code ---*/
- __pyx_ptype_8petsc4py_5PETSc_Comm = __Pyx_ImportType("petsc4py.PETSc", "Comm", sizeof(struct PyPetscCommObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Comm)) __PYX_ERR(1, 70, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Object = __Pyx_ImportType("petsc4py.PETSc", "Object", sizeof(struct PyPetscObjectObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Object)) __PYX_ERR(1, 78, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Object = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Object->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Object)) __PYX_ERR(1, 78, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Viewer = __Pyx_ImportType("petsc4py.PETSc", "Viewer", sizeof(struct PyPetscViewerObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Viewer)) __PYX_ERR(1, 90, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Viewer = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Viewer*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Viewer)) __PYX_ERR(1, 90, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Random = __Pyx_ImportType("petsc4py.PETSc", "Random", sizeof(struct PyPetscRandomObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Random)) __PYX_ERR(1, 96, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Random = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Random*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Random->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Random)) __PYX_ERR(1, 96, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_IS = __Pyx_ImportType("petsc4py.PETSc", "IS", sizeof(struct PyPetscISObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_IS)) __PYX_ERR(1, 102, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_IS = (struct __pyx_vtabstruct_8petsc4py_5PETSc_IS*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_IS->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_IS)) __PYX_ERR(1, 102, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_LGMap = __Pyx_ImportType("petsc4py.PETSc", "LGMap", sizeof(struct PyPetscLGMapObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_LGMap)) __PYX_ERR(1, 108, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_LGMap = (struct __pyx_vtabstruct_8petsc4py_5PETSc_LGMap*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_LGMap->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_LGMap)) __PYX_ERR(1, 108, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_SF = __Pyx_ImportType("petsc4py.PETSc", "SF", sizeof(struct PyPetscSFObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_SF)) __PYX_ERR(1, 114, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_SF = (struct __pyx_vtabstruct_8petsc4py_5PETSc_SF*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_SF->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_SF)) __PYX_ERR(1, 114, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Vec = __Pyx_ImportType("petsc4py.PETSc", "Vec", sizeof(struct PyPetscVecObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Vec)) __PYX_ERR(1, 120, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Vec = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Vec*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Vec->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Vec)) __PYX_ERR(1, 120, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Scatter = __Pyx_ImportType("petsc4py.PETSc", "Scatter", sizeof(struct PyPetscScatterObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Scatter)) __PYX_ERR(1, 126, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Scatter = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Scatter*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Scatter->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Scatter)) __PYX_ERR(1, 126, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Section = __Pyx_ImportType("petsc4py.PETSc", "Section", sizeof(struct PyPetscSectionObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Section)) __PYX_ERR(1, 132, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Section = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Section*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Section->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Section)) __PYX_ERR(1, 132, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Mat = __Pyx_ImportType("petsc4py.PETSc", "Mat", sizeof(struct PyPetscMatObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Mat)) __PYX_ERR(1, 138, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Mat = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Mat->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Mat)) __PYX_ERR(1, 138, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_NullSpace = __Pyx_ImportType("petsc4py.PETSc", "NullSpace", sizeof(struct PyPetscNullSpaceObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_NullSpace)) __PYX_ERR(1, 144, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_NullSpace = (struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_NullSpace->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_NullSpace)) __PYX_ERR(1, 144, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_PC = __Pyx_ImportType("petsc4py.PETSc", "PC", sizeof(struct PyPetscPCObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_PC)) __PYX_ERR(1, 150, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_PC = (struct __pyx_vtabstruct_8petsc4py_5PETSc_PC*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_PC->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_PC)) __PYX_ERR(1, 150, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_KSP = __Pyx_ImportType("petsc4py.PETSc", "KSP", sizeof(struct PyPetscKSPObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_KSP)) __PYX_ERR(1, 156, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_KSP = (struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_KSP->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_KSP)) __PYX_ERR(1, 156, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_SNES = __Pyx_ImportType("petsc4py.PETSc", "SNES", sizeof(struct PyPetscSNESObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_SNES)) __PYX_ERR(1, 162, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_SNES = (struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_SNES->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_SNES)) __PYX_ERR(1, 162, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_TS = __Pyx_ImportType("petsc4py.PETSc", "TS", sizeof(struct PyPetscTSObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_TS)) __PYX_ERR(1, 168, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_TS = (struct __pyx_vtabstruct_8petsc4py_5PETSc_TS*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_TS->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_TS)) __PYX_ERR(1, 168, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_TAO = __Pyx_ImportType("petsc4py.PETSc", "TAO", sizeof(struct PyPetscTAOObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_TAO)) __PYX_ERR(1, 174, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_TAO = (struct __pyx_vtabstruct_8petsc4py_5PETSc_TAO*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_TAO->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_TAO)) __PYX_ERR(1, 174, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_AO = __Pyx_ImportType("petsc4py.PETSc", "AO", sizeof(struct PyPetscAOObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_AO)) __PYX_ERR(1, 180, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_AO = (struct __pyx_vtabstruct_8petsc4py_5PETSc_AO*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_AO->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_AO)) __PYX_ERR(1, 180, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_DM = __Pyx_ImportType("petsc4py.PETSc", "DM", sizeof(struct PyPetscDMObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_DM)) __PYX_ERR(1, 186, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_DM = (struct __pyx_vtabstruct_8petsc4py_5PETSc_DM*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_DM->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_DM)) __PYX_ERR(1, 186, __pyx_L1_error)
- __pyx_ptype_8petsc4py_5PETSc_Partitioner = __Pyx_ImportType("petsc4py.PETSc", "Partitioner", sizeof(struct PyPetscPartitionerObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Partitioner)) __PYX_ERR(1, 192, __pyx_L1_error)
- __pyx_vtabptr_8petsc4py_5PETSc_Partitioner = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Partitioner*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Partitioner->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Partitioner)) __PYX_ERR(1, 192, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Comm = __Pyx_ImportType("petsc4py.PETSc", "Comm", sizeof(struct PyPetscCommObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Comm)) __PYX_ERR(1, 73, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Object = __Pyx_ImportType("petsc4py.PETSc", "Object", sizeof(struct PyPetscObjectObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Object)) __PYX_ERR(1, 81, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Object = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Object->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Object)) __PYX_ERR(1, 81, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Viewer = __Pyx_ImportType("petsc4py.PETSc", "Viewer", sizeof(struct PyPetscViewerObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Viewer)) __PYX_ERR(1, 93, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Viewer = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Viewer*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Viewer)) __PYX_ERR(1, 93, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Random = __Pyx_ImportType("petsc4py.PETSc", "Random", sizeof(struct PyPetscRandomObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Random)) __PYX_ERR(1, 99, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Random = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Random*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Random->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Random)) __PYX_ERR(1, 99, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_IS = __Pyx_ImportType("petsc4py.PETSc", "IS", sizeof(struct PyPetscISObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_IS)) __PYX_ERR(1, 105, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_IS = (struct __pyx_vtabstruct_8petsc4py_5PETSc_IS*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_IS->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_IS)) __PYX_ERR(1, 105, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_LGMap = __Pyx_ImportType("petsc4py.PETSc", "LGMap", sizeof(struct PyPetscLGMapObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_LGMap)) __PYX_ERR(1, 111, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_LGMap = (struct __pyx_vtabstruct_8petsc4py_5PETSc_LGMap*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_LGMap->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_LGMap)) __PYX_ERR(1, 111, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_SF = __Pyx_ImportType("petsc4py.PETSc", "SF", sizeof(struct PyPetscSFObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_SF)) __PYX_ERR(1, 117, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_SF = (struct __pyx_vtabstruct_8petsc4py_5PETSc_SF*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_SF->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_SF)) __PYX_ERR(1, 117, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Vec = __Pyx_ImportType("petsc4py.PETSc", "Vec", sizeof(struct PyPetscVecObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Vec)) __PYX_ERR(1, 123, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Vec = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Vec*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Vec->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Vec)) __PYX_ERR(1, 123, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Scatter = __Pyx_ImportType("petsc4py.PETSc", "Scatter", sizeof(struct PyPetscScatterObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Scatter)) __PYX_ERR(1, 129, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Scatter = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Scatter*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Scatter->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Scatter)) __PYX_ERR(1, 129, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Section = __Pyx_ImportType("petsc4py.PETSc", "Section", sizeof(struct PyPetscSectionObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Section)) __PYX_ERR(1, 135, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Section = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Section*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Section->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Section)) __PYX_ERR(1, 135, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Mat = __Pyx_ImportType("petsc4py.PETSc", "Mat", sizeof(struct PyPetscMatObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Mat)) __PYX_ERR(1, 141, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Mat = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Mat->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Mat)) __PYX_ERR(1, 141, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_NullSpace = __Pyx_ImportType("petsc4py.PETSc", "NullSpace", sizeof(struct PyPetscNullSpaceObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_NullSpace)) __PYX_ERR(1, 147, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_NullSpace = (struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_NullSpace->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_NullSpace)) __PYX_ERR(1, 147, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_PC = __Pyx_ImportType("petsc4py.PETSc", "PC", sizeof(struct PyPetscPCObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_PC)) __PYX_ERR(1, 153, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_PC = (struct __pyx_vtabstruct_8petsc4py_5PETSc_PC*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_PC->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_PC)) __PYX_ERR(1, 153, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_KSP = __Pyx_ImportType("petsc4py.PETSc", "KSP", sizeof(struct PyPetscKSPObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_KSP)) __PYX_ERR(1, 159, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_KSP = (struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_KSP->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_KSP)) __PYX_ERR(1, 159, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_SNES = __Pyx_ImportType("petsc4py.PETSc", "SNES", sizeof(struct PyPetscSNESObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_SNES)) __PYX_ERR(1, 165, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_SNES = (struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_SNES->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_SNES)) __PYX_ERR(1, 165, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_TS = __Pyx_ImportType("petsc4py.PETSc", "TS", sizeof(struct PyPetscTSObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_TS)) __PYX_ERR(1, 171, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_TS = (struct __pyx_vtabstruct_8petsc4py_5PETSc_TS*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_TS->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_TS)) __PYX_ERR(1, 171, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_TAO = __Pyx_ImportType("petsc4py.PETSc", "TAO", sizeof(struct PyPetscTAOObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_TAO)) __PYX_ERR(1, 177, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_TAO = (struct __pyx_vtabstruct_8petsc4py_5PETSc_TAO*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_TAO->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_TAO)) __PYX_ERR(1, 177, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_AO = __Pyx_ImportType("petsc4py.PETSc", "AO", sizeof(struct PyPetscAOObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_AO)) __PYX_ERR(1, 183, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_AO = (struct __pyx_vtabstruct_8petsc4py_5PETSc_AO*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_AO->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_AO)) __PYX_ERR(1, 183, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_DM = __Pyx_ImportType("petsc4py.PETSc", "DM", sizeof(struct PyPetscDMObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_DM)) __PYX_ERR(1, 189, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_DM = (struct __pyx_vtabstruct_8petsc4py_5PETSc_DM*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_DM->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_DM)) __PYX_ERR(1, 189, __pyx_L1_error)
+ __pyx_ptype_8petsc4py_5PETSc_Partitioner = __Pyx_ImportType("petsc4py.PETSc", "Partitioner", sizeof(struct PyPetscPartitionerObject), 1); if (unlikely(!__pyx_ptype_8petsc4py_5PETSc_Partitioner)) __PYX_ERR(1, 195, __pyx_L1_error)
+ __pyx_vtabptr_8petsc4py_5PETSc_Partitioner = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Partitioner*)__Pyx_GetVtable(__pyx_ptype_8petsc4py_5PETSc_Partitioner->tp_dict); if (unlikely(!__pyx_vtabptr_8petsc4py_5PETSc_Partitioner)) __PYX_ERR(1, 195, __pyx_L1_error)
/*--- Variable import code ---*/
/*--- Function import code ---*/
__pyx_t_1 = __Pyx_ImportModule("petsc4py.PETSc"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error)
@@ -26831,7 +28996,7 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
#endif
- /* "libpetsc4py.pyx":99
+ /* "libpetsc4py.pyx":101
* enum: IERR "PETSC_ERR_PYTHON"
*
* cdef char *FUNCT = NULL # <<<<<<<<<<<<<<
@@ -26840,7 +29005,7 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
*/
__pyx_v_11libpetsc4py_FUNCT = NULL;
- /* "libpetsc4py.pyx":101
+ /* "libpetsc4py.pyx":103
* cdef char *FUNCT = NULL
* cdef char *fstack[1024]
* cdef int istack = 0 # <<<<<<<<<<<<<<
@@ -26849,7 +29014,7 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
*/
__pyx_v_11libpetsc4py_istack = 0;
- /* "libpetsc4py.pyx":142
+ /* "libpetsc4py.pyx":144
* PyObject *PyExc_RuntimeError
*
* cdef object PetscError = <object>PyExc_RuntimeError # <<<<<<<<<<<<<<
@@ -26863,22 +29028,22 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
__Pyx_GIVEREF(__pyx_t_2);
__pyx_t_2 = 0;
- /* "libpetsc4py.pyx":143
+ /* "libpetsc4py.pyx":145
*
* cdef object PetscError = <object>PyExc_RuntimeError
* from petsc4py.PETSc import Error as PetscError # <<<<<<<<<<<<<<
*
* cdef inline void PythonSETERR(PetscErrorCode ierr) with gil:
*/
- __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 143, __pyx_L1_error)
+ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_n_s_Error);
__Pyx_GIVEREF(__pyx_n_s_Error);
PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_Error);
- __pyx_t_3 = __Pyx_Import(__pyx_n_s_petsc4py_PETSc, __pyx_t_2, -1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 143, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Import(__pyx_n_s_petsc4py_PETSc, __pyx_t_2, -1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 145, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_Error); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 143, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_Error); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_2);
__Pyx_XGOTREF(__pyx_v_11libpetsc4py_PetscError);
@@ -26887,21 +29052,21 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "libpetsc4py.pyx":259
+ /* "libpetsc4py.pyx":261
* return (path, name)
*
* cdef dict module_cache = {} # <<<<<<<<<<<<<<
*
* cdef object load_module(object path):
*/
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 259, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 261, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_XGOTREF(__pyx_v_11libpetsc4py_module_cache);
__Pyx_DECREF_SET(__pyx_v_11libpetsc4py_module_cache, ((PyObject*)__pyx_t_3));
__Pyx_GIVEREF(__pyx_t_3);
__pyx_t_3 = 0;
- /* "libpetsc4py.pyx":2560
+ /* "libpetsc4py.pyx":2575
* # below trick Cython to treat all these entries as used.
*
* if PETSC_FALSE: # <<<<<<<<<<<<<<
@@ -26910,127 +29075,127 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
*/
if (PETSC_FALSE) {
- /* "libpetsc4py.pyx":2561
+ /* "libpetsc4py.pyx":2576
*
* if PETSC_FALSE:
* <void>import_libpetsc4py() # <<<<<<<<<<<<<<
* <void>MatPythonGetContext(NULL,NULL)
* <void>MatPythonSetContext(NULL,NULL)
*/
- __pyx_t_4 = import_libpetsc4py(); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(0, 2561, __pyx_L1_error)
+ __pyx_t_4 = import_libpetsc4py(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 2576, __pyx_L1_error)
((void)__pyx_t_4);
- /* "libpetsc4py.pyx":2562
+ /* "libpetsc4py.pyx":2577
* if PETSC_FALSE:
* <void>import_libpetsc4py()
* <void>MatPythonGetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>MatPythonSetContext(NULL,NULL)
* <void>PCPythonGetContext(NULL,NULL)
*/
- __pyx_t_5 = MatPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2562, __pyx_L1_error)
+ __pyx_t_5 = MatPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2577, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2563
+ /* "libpetsc4py.pyx":2578
* <void>import_libpetsc4py()
* <void>MatPythonGetContext(NULL,NULL)
* <void>MatPythonSetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>PCPythonGetContext(NULL,NULL)
* <void>PCPythonSetContext(NULL,NULL)
*/
- __pyx_t_5 = MatPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2563, __pyx_L1_error)
+ __pyx_t_5 = MatPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2578, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2564
+ /* "libpetsc4py.pyx":2579
* <void>MatPythonGetContext(NULL,NULL)
* <void>MatPythonSetContext(NULL,NULL)
* <void>PCPythonGetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>PCPythonSetContext(NULL,NULL)
* <void>KSPPythonGetContext(NULL,NULL)
*/
- __pyx_t_5 = PCPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2564, __pyx_L1_error)
+ __pyx_t_5 = PCPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2579, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2565
+ /* "libpetsc4py.pyx":2580
* <void>MatPythonSetContext(NULL,NULL)
* <void>PCPythonGetContext(NULL,NULL)
* <void>PCPythonSetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>KSPPythonGetContext(NULL,NULL)
* <void>KSPPythonSetContext(NULL,NULL)
*/
- __pyx_t_5 = PCPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2565, __pyx_L1_error)
+ __pyx_t_5 = PCPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2580, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2566
+ /* "libpetsc4py.pyx":2581
* <void>PCPythonGetContext(NULL,NULL)
* <void>PCPythonSetContext(NULL,NULL)
* <void>KSPPythonGetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>KSPPythonSetContext(NULL,NULL)
* <void>SNESPythonGetContext(NULL,NULL)
*/
- __pyx_t_5 = KSPPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2566, __pyx_L1_error)
+ __pyx_t_5 = KSPPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2581, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2567
+ /* "libpetsc4py.pyx":2582
* <void>PCPythonSetContext(NULL,NULL)
* <void>KSPPythonGetContext(NULL,NULL)
* <void>KSPPythonSetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>SNESPythonGetContext(NULL,NULL)
* <void>SNESPythonSetContext(NULL,NULL)
*/
- __pyx_t_5 = KSPPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2567, __pyx_L1_error)
+ __pyx_t_5 = KSPPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2582, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2568
+ /* "libpetsc4py.pyx":2583
* <void>KSPPythonGetContext(NULL,NULL)
* <void>KSPPythonSetContext(NULL,NULL)
* <void>SNESPythonGetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>SNESPythonSetContext(NULL,NULL)
* <void>TSPythonGetContext(NULL,NULL)
*/
- __pyx_t_5 = SNESPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2568, __pyx_L1_error)
+ __pyx_t_5 = SNESPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2583, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2569
+ /* "libpetsc4py.pyx":2584
* <void>KSPPythonSetContext(NULL,NULL)
* <void>SNESPythonGetContext(NULL,NULL)
* <void>SNESPythonSetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>TSPythonGetContext(NULL,NULL)
* <void>TSPythonSetContext(NULL,NULL)
*/
- __pyx_t_5 = SNESPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2569, __pyx_L1_error)
+ __pyx_t_5 = SNESPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2584, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2570
+ /* "libpetsc4py.pyx":2585
* <void>SNESPythonGetContext(NULL,NULL)
* <void>SNESPythonSetContext(NULL,NULL)
* <void>TSPythonGetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>TSPythonSetContext(NULL,NULL)
* <void>PetscPythonRegisterAll()
*/
- __pyx_t_5 = TSPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2570, __pyx_L1_error)
+ __pyx_t_5 = TSPythonGetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2585, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2571
+ /* "libpetsc4py.pyx":2586
* <void>SNESPythonSetContext(NULL,NULL)
* <void>TSPythonGetContext(NULL,NULL)
* <void>TSPythonSetContext(NULL,NULL) # <<<<<<<<<<<<<<
* <void>PetscPythonRegisterAll()
*
*/
- __pyx_t_5 = TSPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2571, __pyx_L1_error)
+ __pyx_t_5 = TSPythonSetContext(NULL, NULL); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2586, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2572
+ /* "libpetsc4py.pyx":2587
* <void>TSPythonGetContext(NULL,NULL)
* <void>TSPythonSetContext(NULL,NULL)
* <void>PetscPythonRegisterAll() # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_5 = PetscPythonRegisterAll(); if (unlikely(__pyx_t_5 == PETSC_ERR_PYTHON)) __PYX_ERR(0, 2572, __pyx_L1_error)
+ __pyx_t_5 = PetscPythonRegisterAll(); if (unlikely(__pyx_t_5 == ((PetscErrorCode)PETSC_ERR_PYTHON))) __PYX_ERR(0, 2587, __pyx_L1_error)
((void)__pyx_t_5);
- /* "libpetsc4py.pyx":2560
+ /* "libpetsc4py.pyx":2575
* # below trick Cython to treat all these entries as used.
*
* if PETSC_FALSE: # <<<<<<<<<<<<<<
@@ -27049,7 +29214,7 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
__Pyx_XDECREF(__pyx_t_3);
if (__pyx_m) {
if (__pyx_d) {
- __Pyx_AddTraceback("init libpetsc4py", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("init libpetsc4py", 0, __pyx_lineno, __pyx_filename);
}
Py_DECREF(__pyx_m); __pyx_m = 0;
} else if (!PyErr_Occurred()) {
@@ -27057,10 +29222,12 @@ PyMODINIT_FUNC PyInit_libpetsc4py(void)
}
__pyx_L0:;
__Pyx_RefNannyFinishContext();
- #if PY_MAJOR_VERSION < 3
- return;
- #else
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ return (__pyx_m != NULL) ? 0 : -1;
+ #elif PY_MAJOR_VERSION >= 3
return __pyx_m;
+ #else
+ return;
#endif
}
@@ -27152,7 +29319,7 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name) {
}
/* PyErrFetchRestore */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
PyObject *tmp_type, *tmp_value, *tmp_tb;
tmp_type = tstate->curexc_type;
@@ -27223,7 +29390,7 @@ static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
PyErr_SetString(PyExc_SystemError, "Missing type object");
return 0;
}
- if (likely(PyObject_TypeCheck(obj, type)))
+ if (likely(__Pyx_TypeCheck(obj, type)))
return 1;
PyErr_Format(PyExc_TypeError, "Cannot convert %.200s to %.200s",
Py_TYPE(obj)->tp_name, type->tp_name);
@@ -27292,11 +29459,11 @@ static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {
/* IterFinish */
static CYTHON_INLINE int __Pyx_IterFinish(void) {
-#if CYTHON_COMPILING_IN_CPYTHON
- PyThreadState *tstate = PyThreadState_GET();
+#if CYTHON_FAST_THREAD_STATE
+ PyThreadState *tstate = __Pyx_PyThreadState_Current;
PyObject* exc_type = tstate->curexc_type;
if (unlikely(exc_type)) {
- if (likely(exc_type == PyExc_StopIteration) || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)) {
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) {
PyObject *exc_value, *exc_tb;
exc_value = tstate->curexc_value;
exc_tb = tstate->curexc_traceback;
@@ -27337,6 +29504,149 @@ static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) {
return 0;
}
+/* PyCFunctionFastCall */
+#if CYTHON_FAST_PYCCALL
+static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {
+ PyCFunctionObject *func = (PyCFunctionObject*)func_obj;
+ PyCFunction meth = PyCFunction_GET_FUNCTION(func);
+ PyObject *self = PyCFunction_GET_SELF(func);
+ int flags = PyCFunction_GET_FLAGS(func);
+ assert(PyCFunction_Check(func));
+ assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)));
+ assert(nargs >= 0);
+ assert(nargs == 0 || args != NULL);
+ /* _PyCFunction_FastCallDict() must not be called with an exception set,
+ because it may clear it (directly or indirectly) and so the
+ caller loses its exception */
+ assert(!PyErr_Occurred());
+ if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) {
+ return (*((__Pyx_PyCFunctionFastWithKeywords)meth)) (self, args, nargs, NULL);
+ } else {
+ return (*((__Pyx_PyCFunctionFast)meth)) (self, args, nargs);
+ }
+}
+#endif
+
+/* PyFunctionFastCall */
+#if CYTHON_FAST_PYCALL
+#include "frameobject.h"
+static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,
+ PyObject *globals) {
+ PyFrameObject *f;
+ PyThreadState *tstate = __Pyx_PyThreadState_Current;
+ PyObject **fastlocals;
+ Py_ssize_t i;
+ PyObject *result;
+ assert(globals != NULL);
+ /* XXX Perhaps we should create a specialized
+ PyFrame_New() that doesn't take locals, but does
+ take builtins without sanity checking them.
+ */
+ assert(tstate != NULL);
+ f = PyFrame_New(tstate, co, globals, NULL);
+ if (f == NULL) {
+ return NULL;
+ }
+ fastlocals = f->f_localsplus;
+ for (i = 0; i < na; i++) {
+ Py_INCREF(*args);
+ fastlocals[i] = *args++;
+ }
+ result = PyEval_EvalFrameEx(f,0);
+ ++tstate->recursion_depth;
+ Py_DECREF(f);
+ --tstate->recursion_depth;
+ return result;
+}
+#if 1 || PY_VERSION_HEX < 0x030600B1
+static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {
+ PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func);
+ PyObject *globals = PyFunction_GET_GLOBALS(func);
+ PyObject *argdefs = PyFunction_GET_DEFAULTS(func);
+ PyObject *closure;
+#if PY_MAJOR_VERSION >= 3
+ PyObject *kwdefs;
+#endif
+ PyObject *kwtuple, **k;
+ PyObject **d;
+ Py_ssize_t nd;
+ Py_ssize_t nk;
+ PyObject *result;
+ assert(kwargs == NULL || PyDict_Check(kwargs));
+ nk = kwargs ? PyDict_Size(kwargs) : 0;
+ if (Py_EnterRecursiveCall((char*)" while calling a Python object")) {
+ return NULL;
+ }
+ if (
+#if PY_MAJOR_VERSION >= 3
+ co->co_kwonlyargcount == 0 &&
+#endif
+ likely(kwargs == NULL || nk == 0) &&
+ co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) {
+ if (argdefs == NULL && co->co_argcount == nargs) {
+ result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals);
+ goto done;
+ }
+ else if (nargs == 0 && argdefs != NULL
+ && co->co_argcount == Py_SIZE(argdefs)) {
+ /* function called with no arguments, but all parameters have
+ a default value: use default values as arguments .*/
+ args = &PyTuple_GET_ITEM(argdefs, 0);
+ result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals);
+ goto done;
+ }
+ }
+ if (kwargs != NULL) {
+ Py_ssize_t pos, i;
+ kwtuple = PyTuple_New(2 * nk);
+ if (kwtuple == NULL) {
+ result = NULL;
+ goto done;
+ }
+ k = &PyTuple_GET_ITEM(kwtuple, 0);
+ pos = i = 0;
+ while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) {
+ Py_INCREF(k[i]);
+ Py_INCREF(k[i+1]);
+ i += 2;
+ }
+ nk = i / 2;
+ }
+ else {
+ kwtuple = NULL;
+ k = NULL;
+ }
+ closure = PyFunction_GET_CLOSURE(func);
+#if PY_MAJOR_VERSION >= 3
+ kwdefs = PyFunction_GET_KW_DEFAULTS(func);
+#endif
+ if (argdefs != NULL) {
+ d = &PyTuple_GET_ITEM(argdefs, 0);
+ nd = Py_SIZE(argdefs);
+ }
+ else {
+ d = NULL;
+ nd = 0;
+ }
+#if PY_MAJOR_VERSION >= 3
+ result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL,
+ args, nargs,
+ k, (int)nk,
+ d, (int)nd, kwdefs, closure);
+#else
+ result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL,
+ args, nargs,
+ k, (int)nk,
+ d, (int)nd, closure);
+#endif
+ Py_XDECREF(kwtuple);
+done:
+ Py_LeaveRecursiveCall();
+ return result;
+}
+#endif
+#endif
+
/* PyObjectCallMethO */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
@@ -27370,13 +29680,18 @@ static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {
return result;
}
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
-#ifdef __Pyx_CyFunction_USED
- if (likely(PyCFunction_Check(func) || PyObject_TypeCheck(func, __pyx_CyFunctionType))) {
-#else
- if (likely(PyCFunction_Check(func))) {
+#if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(func)) {
+ return __Pyx_PyFunction_FastCall(func, &arg, 1);
+ }
#endif
+ if (likely(PyCFunction_Check(func))) {
if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) {
return __Pyx_PyObject_CallMethO(func, arg);
+#if CYTHON_FAST_PYCCALL
+ } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) {
+ return __Pyx_PyCFunction_FastCall(func, &arg, 1);
+#endif
}
}
return __Pyx__PyObject_CallOneArg(func, arg);
@@ -27393,10 +29708,15 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObjec
#endif
/* PyObjectCallNoArg */
- #if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
+#if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(func)) {
+ return __Pyx_PyFunction_FastCall(func, NULL, 0);
+ }
+#endif
#ifdef __Pyx_CyFunction_USED
- if (likely(PyCFunction_Check(func) || PyObject_TypeCheck(func, __pyx_CyFunctionType))) {
+ if (likely(PyCFunction_Check(func) || __Pyx_TypeCheck(func, __pyx_CyFunctionType))) {
#else
if (likely(PyCFunction_Check(func))) {
#endif
@@ -27409,13 +29729,13 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
#endif
/* GetException */
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_FAST_THREAD_STATE
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) {
#endif
PyObject *local_type, *local_value, *local_tb;
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
PyObject *tmp_type, *tmp_value, *tmp_tb;
local_type = tstate->curexc_type;
local_value = tstate->curexc_value;
@@ -27427,7 +29747,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb)
PyErr_Fetch(&local_type, &local_value, &local_tb);
#endif
PyErr_NormalizeException(&local_type, &local_value, &local_tb);
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
if (unlikely(tstate->curexc_type))
#else
if (unlikely(PyErr_Occurred()))
@@ -27445,7 +29765,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb)
*type = local_type;
*value = local_value;
*tb = local_tb;
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
tmp_type = tstate->exc_type;
tmp_value = tstate->exc_value;
tmp_tb = tstate->exc_traceback;
@@ -27470,7 +29790,7 @@ bad:
}
/* SwapException */
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
PyObject *tmp_type, *tmp_value, *tmp_tb;
tmp_type = tstate->exc_type;
@@ -27495,7 +29815,7 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value,
#endif
/* SaveResetException */
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
*type = tstate->exc_type;
*value = tstate->exc_value;
@@ -27518,9 +29838,34 @@ static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject
}
#endif
+/* PyErrExceptionMatches */
+ #if CYTHON_FAST_THREAD_STATE
+static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
+ Py_ssize_t i, n;
+ n = PyTuple_GET_SIZE(tuple);
+#if PY_MAJOR_VERSION >= 3
+ for (i=0; i<n; i++) {
+ if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1;
+ }
+#endif
+ for (i=0; i<n; i++) {
+ if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1;
+ }
+ return 0;
+}
+static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {
+ PyObject *exc_type = tstate->curexc_type;
+ if (exc_type == err) return 1;
+ if (unlikely(!exc_type)) return 0;
+ if (unlikely(PyTuple_Check(err)))
+ return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err);
+ return __Pyx_PyErr_GivenExceptionMatches(exc_type, err);
+}
+#endif
+
/* GetAttr */
- static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) {
-#if CYTHON_COMPILING_IN_CPYTHON
+ static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) {
+#if CYTHON_USE_TYPE_SLOTS
#if PY_MAJOR_VERSION >= 3
if (likely(PyUnicode_Check(n)))
#else
@@ -27532,22 +29877,40 @@ static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject
}
/* GetAttr3 */
- static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) {
+ static PyObject *__Pyx_GetAttr3Default(PyObject *d) {
+ __Pyx_PyThreadState_declare
+ __Pyx_PyThreadState_assign
+ if (unlikely(!__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError)))
+ return NULL;
+ __Pyx_PyErr_Clear();
+ Py_INCREF(d);
+ return d;
+}
+static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) {
PyObject *r = __Pyx_GetAttr(o, n);
+ return (likely(r)) ? r : __Pyx_GetAttr3Default(d);
+}
+
+/* HasAttr */
+ static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) {
+ PyObject *r;
+ if (unlikely(!__Pyx_PyBaseString_Check(n))) {
+ PyErr_SetString(PyExc_TypeError,
+ "hasattr(): attribute name must be string");
+ return -1;
+ }
+ r = __Pyx_GetAttr(o, n);
if (unlikely(!r)) {
- if (!PyErr_ExceptionMatches(PyExc_AttributeError))
- goto bad;
PyErr_Clear();
- r = d;
- Py_INCREF(d);
+ return 0;
+ } else {
+ Py_DECREF(r);
+ return 1;
}
- return r;
-bad:
- return NULL;
}
/* SetVTable */
- static int __Pyx_SetVtable(PyObject *dict, void *vtable) {
+ static int __Pyx_SetVtable(PyObject *dict, void *vtable) {
#if PY_VERSION_HEX >= 0x02070000
PyObject *ob = PyCapsule_New(vtable, 0, 0);
#else
@@ -27565,7 +29928,7 @@ bad:
}
/* GetVTable */
- static void* __Pyx_GetVtable(PyObject *dict) {
+ static void* __Pyx_GetVtable(PyObject *dict) {
void* ptr;
PyObject *ob = PyObject_GetItem(dict, __pyx_n_s_pyx_vtable);
if (!ob)
@@ -27585,13 +29948,13 @@ bad:
}
/* Import */
- static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
+ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
PyObject *empty_list = 0;
PyObject *module = 0;
PyObject *global_dict = 0;
PyObject *empty_dict = 0;
PyObject *list;
- #if PY_VERSION_HEX < 0x03030000
+ #if PY_MAJOR_VERSION < 3
PyObject *py_import;
py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import);
if (!py_import)
@@ -27615,17 +29978,8 @@ bad:
#if PY_MAJOR_VERSION >= 3
if (level == -1) {
if (strchr(__Pyx_MODULE_NAME, '.')) {
- #if PY_VERSION_HEX < 0x03030000
- PyObject *py_level = PyInt_FromLong(1);
- if (!py_level)
- goto bad;
- module = PyObject_CallFunctionObjArgs(py_import,
- name, global_dict, empty_dict, list, py_level, NULL);
- Py_DECREF(py_level);
- #else
module = PyImport_ImportModuleLevelObject(
name, global_dict, empty_dict, list, 1);
- #endif
if (!module) {
if (!PyErr_ExceptionMatches(PyExc_ImportError))
goto bad;
@@ -27636,7 +29990,7 @@ bad:
}
#endif
if (!module) {
- #if PY_VERSION_HEX < 0x03030000
+ #if PY_MAJOR_VERSION < 3
PyObject *py_level = PyInt_FromLong(level);
if (!py_level)
goto bad;
@@ -27650,7 +30004,7 @@ bad:
}
}
bad:
- #if PY_VERSION_HEX < 0x03030000
+ #if PY_MAJOR_VERSION < 3
Py_XDECREF(py_import);
#endif
Py_XDECREF(empty_list);
@@ -27659,7 +30013,7 @@ bad:
}
/* ImportFrom */
- static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) {
+ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) {
PyObject* value = __Pyx_PyObject_GetAttrStr(module, name);
if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) {
PyErr_Format(PyExc_ImportError,
@@ -27673,7 +30027,7 @@ bad:
}
/* ModuleImport */
- #ifndef __PYX_HAVE_RT_ImportModule
+ #ifndef __PYX_HAVE_RT_ImportModule
#define __PYX_HAVE_RT_ImportModule
static PyObject *__Pyx_ImportModule(const char *name) {
PyObject *py_name = 0;
@@ -27691,7 +30045,7 @@ bad:
#endif
/* RegisterModuleCleanup */
- #if PY_MAJOR_VERSION < 3
+ #if PY_MAJOR_VERSION < 3
static PyObject* __pyx_module_cleanup_atexit(PyObject *module, CYTHON_UNUSED PyObject *unused) {
__pyx_module_cleanup(module);
Py_INCREF(Py_None); return Py_None;
@@ -27752,13 +30106,49 @@ bad:
}
#else
static int __Pyx_RegisterCleanup(void) {
- if (0) __Pyx_ImportModule(NULL);
+ if ((0)) __Pyx_ImportModule(NULL);
return 0;
}
#endif
+/* CLineInTraceback */
+ static int __Pyx_CLineForTraceback(int c_line) {
+#ifdef CYTHON_CLINE_IN_TRACEBACK
+ return ((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0;
+#else
+ PyObject *use_cline;
+#if CYTHON_COMPILING_IN_CPYTHON
+ PyObject **cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime);
+ if (likely(cython_runtime_dict)) {
+ use_cline = PyDict_GetItem(*cython_runtime_dict, __pyx_n_s_cline_in_traceback);
+ } else
+#endif
+ {
+ PyObject *ptype, *pvalue, *ptraceback;
+ PyObject *use_cline_obj;
+ PyErr_Fetch(&ptype, &pvalue, &ptraceback);
+ use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback);
+ if (use_cline_obj) {
+ use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True;
+ Py_DECREF(use_cline_obj);
+ } else {
+ use_cline = NULL;
+ }
+ PyErr_Restore(ptype, pvalue, ptraceback);
+ }
+ if (!use_cline) {
+ c_line = 0;
+ PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False);
+ }
+ else if (PyObject_Not(use_cline) != 0) {
+ c_line = 0;
+ }
+ return c_line;
+#endif
+}
+
/* CodeObjectCache */
- static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
+ static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
int start = 0, mid = 0, end = count - 1;
if (end >= 0 && code_line > entries[end].code_line) {
return count;
@@ -27838,7 +30228,7 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
}
/* AddTraceback */
- #include "compile.h"
+ #include "compile.h"
#include "frameobject.h"
#include "traceback.h"
static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
@@ -27897,21 +30287,24 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line,
int py_line, const char *filename) {
PyCodeObject *py_code = 0;
PyFrameObject *py_frame = 0;
- py_code = __pyx_find_code_object(c_line ? c_line : py_line);
+ if (c_line) {
+ c_line = __Pyx_CLineForTraceback(c_line);
+ }
+ py_code = __pyx_find_code_object(c_line ? -c_line : py_line);
if (!py_code) {
py_code = __Pyx_CreateCodeObjectForTraceback(
funcname, c_line, py_line, filename);
if (!py_code) goto bad;
- __pyx_insert_code_object(c_line ? c_line : py_line, py_code);
+ __pyx_insert_code_object(c_line ? -c_line : py_line, py_code);
}
py_frame = PyFrame_New(
- PyThreadState_GET(), /*PyThreadState *tstate,*/
- py_code, /*PyCodeObject *code,*/
- __pyx_d, /*PyObject *globals,*/
- 0 /*PyObject *locals*/
+ __Pyx_PyThreadState_Current, /*PyThreadState *tstate,*/
+ py_code, /*PyCodeObject *code,*/
+ __pyx_d, /*PyObject *globals,*/
+ 0 /*PyObject *locals*/
);
if (!py_frame) goto bad;
- py_frame->f_lineno = py_line;
+ __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
PyTraceBack_Here(py_frame);
bad:
Py_XDECREF(py_code);
@@ -27919,7 +30312,7 @@ bad:
}
/* None */
- static CYTHON_INLINE int __Pyx_ErrOccurredWithGIL(void) {
+ static CYTHON_INLINE int __Pyx_ErrOccurredWithGIL(void) {
int err;
#ifdef WITH_THREAD
PyGILState_STATE _save = PyGILState_Ensure();
@@ -27932,7 +30325,7 @@ bad:
}
/* CIntToPy */
- static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscInt(PetscInt value) {
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscInt(PetscInt value) {
const PetscInt neg_one = (PetscInt) -1, const_zero = (PetscInt) 0;
const int is_unsigned = neg_one > const_zero;
if (is_unsigned) {
@@ -27940,14 +30333,18 @@ bad:
return PyInt_FromLong((long) value);
} else if (sizeof(PetscInt) <= sizeof(unsigned long)) {
return PyLong_FromUnsignedLong((unsigned long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(PetscInt) <= sizeof(unsigned PY_LONG_LONG)) {
return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+#endif
}
} else {
if (sizeof(PetscInt) <= sizeof(long)) {
return PyInt_FromLong((long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(PetscInt) <= sizeof(PY_LONG_LONG)) {
return PyLong_FromLongLong((PY_LONG_LONG) value);
+#endif
}
}
{
@@ -27959,7 +30356,7 @@ bad:
}
/* CIntFromPyVerify */
- #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
+ #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
__PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\
__PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1)
@@ -27981,7 +30378,7 @@ bad:
}
/* CIntToPy */
- static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
const long neg_one = (long) -1, const_zero = (long) 0;
const int is_unsigned = neg_one > const_zero;
if (is_unsigned) {
@@ -27989,14 +30386,18 @@ bad:
return PyInt_FromLong((long) value);
} else if (sizeof(long) <= sizeof(unsigned long)) {
return PyLong_FromUnsignedLong((unsigned long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+#endif
}
} else {
if (sizeof(long) <= sizeof(long)) {
return PyInt_FromLong((long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
return PyLong_FromLongLong((PY_LONG_LONG) value);
+#endif
}
}
{
@@ -28008,7 +30409,7 @@ bad:
}
/* PyExec */
- static CYTHON_INLINE PyObject* __Pyx_PyExec2(PyObject* o, PyObject* globals) {
+ static CYTHON_INLINE PyObject* __Pyx_PyExec2(PyObject* o, PyObject* globals) {
return __Pyx_PyExec3(o, globals, NULL);
}
static PyObject* __Pyx_PyExec3(PyObject* o, PyObject* globals, PyObject* locals) {
@@ -28030,7 +30431,7 @@ static PyObject* __Pyx_PyExec3(PyObject* o, PyObject* globals, PyObject* locals)
goto bad;
}
if (PyCode_Check(o)) {
- if (PyCode_GetNumFree((PyCodeObject *)o) > 0) {
+ if (__Pyx_PyCode_HasFreeVars((PyCodeObject *)o)) {
PyErr_SetString(PyExc_TypeError,
"code object passed to exec() may not contain free variables");
goto bad;
@@ -28077,34 +30478,7 @@ bad:
}
/* CIntToPy */
- static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscBool(PetscBool value) {
- const PetscBool neg_one = (PetscBool) -1, const_zero = (PetscBool) 0;
- const int is_unsigned = neg_one > const_zero;
- if (is_unsigned) {
- if (sizeof(PetscBool) < sizeof(long)) {
- return PyInt_FromLong((long) value);
- } else if (sizeof(PetscBool) <= sizeof(unsigned long)) {
- return PyLong_FromUnsignedLong((unsigned long) value);
- } else if (sizeof(PetscBool) <= sizeof(unsigned PY_LONG_LONG)) {
- return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
- }
- } else {
- if (sizeof(PetscBool) <= sizeof(long)) {
- return PyInt_FromLong((long) value);
- } else if (sizeof(PetscBool) <= sizeof(PY_LONG_LONG)) {
- return PyLong_FromLongLong((PY_LONG_LONG) value);
- }
- }
- {
- int one = 1; int little = (int)*(unsigned char *)&one;
- unsigned char *bytes = (unsigned char *)&value;
- return _PyLong_FromByteArray(bytes, sizeof(PetscBool),
- little, !is_unsigned);
- }
-}
-
-/* CIntToPy */
- static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {
const int neg_one = (int) -1, const_zero = (int) 0;
const int is_unsigned = neg_one > const_zero;
if (is_unsigned) {
@@ -28112,14 +30486,18 @@ bad:
return PyInt_FromLong((long) value);
} else if (sizeof(int) <= sizeof(unsigned long)) {
return PyLong_FromUnsignedLong((unsigned long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+#endif
}
} else {
if (sizeof(int) <= sizeof(long)) {
return PyInt_FromLong((long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
return PyLong_FromLongLong((PY_LONG_LONG) value);
+#endif
}
}
{
@@ -28131,7 +30509,7 @@ bad:
}
/* CIntToPy */
- static CYTHON_INLINE PyObject* __Pyx_PyInt_From_MatSORType(MatSORType value) {
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_MatSORType(MatSORType value) {
const MatSORType neg_one = (MatSORType) -1, const_zero = (MatSORType) 0;
const int is_unsigned = neg_one > const_zero;
if (is_unsigned) {
@@ -28139,14 +30517,18 @@ bad:
return PyInt_FromLong((long) value);
} else if (sizeof(MatSORType) <= sizeof(unsigned long)) {
return PyLong_FromUnsignedLong((unsigned long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(MatSORType) <= sizeof(unsigned PY_LONG_LONG)) {
return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+#endif
}
} else {
if (sizeof(MatSORType) <= sizeof(long)) {
return PyInt_FromLong((long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(MatSORType) <= sizeof(PY_LONG_LONG)) {
return PyLong_FromLongLong((PY_LONG_LONG) value);
+#endif
}
}
{
@@ -28158,7 +30540,7 @@ bad:
}
/* CIntToPy */
- static CYTHON_INLINE PyObject* __Pyx_PyInt_From_NormType(NormType value) {
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_NormType(NormType value) {
const NormType neg_one = (NormType) -1, const_zero = (NormType) 0;
const int is_unsigned = neg_one > const_zero;
if (is_unsigned) {
@@ -28166,14 +30548,18 @@ bad:
return PyInt_FromLong((long) value);
} else if (sizeof(NormType) <= sizeof(unsigned long)) {
return PyLong_FromUnsignedLong((unsigned long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(NormType) <= sizeof(unsigned PY_LONG_LONG)) {
return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+#endif
}
} else {
if (sizeof(NormType) <= sizeof(long)) {
return PyInt_FromLong((long) value);
+#ifdef HAVE_LONG_LONG
} else if (sizeof(NormType) <= sizeof(PY_LONG_LONG)) {
return PyLong_FromLongLong((PY_LONG_LONG) value);
+#endif
}
}
{
@@ -28185,7 +30571,7 @@ bad:
}
/* CIntFromPy */
- static CYTHON_INLINE PetscInt __Pyx_PyInt_As_PetscInt(PyObject *x) {
+ static CYTHON_INLINE PetscInt __Pyx_PyInt_As_PetscInt(PyObject *x) {
const PetscInt neg_one = (PetscInt) -1, const_zero = (PetscInt) 0;
const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
@@ -28252,8 +30638,10 @@ bad:
#endif
if (sizeof(PetscInt) <= sizeof(unsigned long)) {
__PYX_VERIFY_RETURN_INT_EXC(PetscInt, unsigned long, PyLong_AsUnsignedLong(x))
+#ifdef HAVE_LONG_LONG
} else if (sizeof(PetscInt) <= sizeof(unsigned PY_LONG_LONG)) {
__PYX_VERIFY_RETURN_INT_EXC(PetscInt, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
+#endif
}
} else {
#if CYTHON_USE_PYLONG_INTERNALS
@@ -28320,8 +30708,10 @@ bad:
#endif
if (sizeof(PetscInt) <= sizeof(long)) {
__PYX_VERIFY_RETURN_INT_EXC(PetscInt, long, PyLong_AsLong(x))
+#ifdef HAVE_LONG_LONG
} else if (sizeof(PetscInt) <= sizeof(PY_LONG_LONG)) {
__PYX_VERIFY_RETURN_INT_EXC(PetscInt, PY_LONG_LONG, PyLong_AsLongLong(x))
+#endif
}
}
{
@@ -28370,7 +30760,7 @@ raise_neg_overflow:
}
/* CIntFromPy */
- static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
+ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
const long neg_one = (long) -1, const_zero = (long) 0;
const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
@@ -28437,8 +30827,10 @@ raise_neg_overflow:
#endif
if (sizeof(long) <= sizeof(unsigned long)) {
__PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x))
+#ifdef HAVE_LONG_LONG
} else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
__PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
+#endif
}
} else {
#if CYTHON_USE_PYLONG_INTERNALS
@@ -28505,8 +30897,10 @@ raise_neg_overflow:
#endif
if (sizeof(long) <= sizeof(long)) {
__PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x))
+#ifdef HAVE_LONG_LONG
} else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
__PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x))
+#endif
}
}
{
@@ -28555,7 +30949,7 @@ raise_neg_overflow:
}
/* CIntFromPy */
- static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
+ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
const int neg_one = (int) -1, const_zero = (int) 0;
const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
@@ -28622,8 +31016,10 @@ raise_neg_overflow:
#endif
if (sizeof(int) <= sizeof(unsigned long)) {
__PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x))
+#ifdef HAVE_LONG_LONG
} else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
__PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
+#endif
}
} else {
#if CYTHON_USE_PYLONG_INTERNALS
@@ -28690,8 +31086,10 @@ raise_neg_overflow:
#endif
if (sizeof(int) <= sizeof(long)) {
__PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x))
+#ifdef HAVE_LONG_LONG
} else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
__PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x))
+#endif
}
}
{
@@ -28739,8 +31137,80 @@ raise_neg_overflow:
return (int) -1;
}
+/* FastTypeChecks */
+ #if CYTHON_COMPILING_IN_CPYTHON
+static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) {
+ while (a) {
+ a = a->tp_base;
+ if (a == b)
+ return 1;
+ }
+ return b == &PyBaseObject_Type;
+}
+static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) {
+ PyObject *mro;
+ if (a == b) return 1;
+ mro = a->tp_mro;
+ if (likely(mro)) {
+ Py_ssize_t i, n;
+ n = PyTuple_GET_SIZE(mro);
+ for (i = 0; i < n; i++) {
+ if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b)
+ return 1;
+ }
+ return 0;
+ }
+ return __Pyx_InBases(a, b);
+}
+#if PY_MAJOR_VERSION == 2
+static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) {
+ PyObject *exception, *value, *tb;
+ int res;
+ __Pyx_PyThreadState_declare
+ __Pyx_PyThreadState_assign
+ __Pyx_ErrFetch(&exception, &value, &tb);
+ res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0;
+ if (unlikely(res == -1)) {
+ PyErr_WriteUnraisable(err);
+ res = 0;
+ }
+ if (!res) {
+ res = PyObject_IsSubclass(err, exc_type2);
+ if (unlikely(res == -1)) {
+ PyErr_WriteUnraisable(err);
+ res = 0;
+ }
+ }
+ __Pyx_ErrRestore(exception, value, tb);
+ return res;
+}
+#else
+static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) {
+ int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0;
+ if (!res) {
+ res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2);
+ }
+ return res;
+}
+#endif
+static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) {
+ if (likely(err == exc_type)) return 1;
+ if (likely(PyExceptionClass_Check(err))) {
+ return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type);
+ }
+ return PyErr_GivenExceptionMatches(err, exc_type);
+}
+static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) {
+ if (likely(err == exc_type1 || err == exc_type2)) return 1;
+ if (likely(PyExceptionClass_Check(err))) {
+ return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2);
+ }
+ return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2));
+}
+#endif
+
/* CheckBinaryVersion */
- static int __Pyx_check_binary_version(void) {
+ static int __Pyx_check_binary_version(void) {
char ctversion[4], rtversion[4];
PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION);
PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion());
@@ -28756,7 +31226,7 @@ raise_neg_overflow:
}
/* TypeImport */
- #ifndef __PYX_HAVE_RT_ImportType
+ #ifndef __PYX_HAVE_RT_ImportType
#define __PYX_HAVE_RT_ImportType
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,
size_t size, int strict)
@@ -28821,7 +31291,7 @@ bad:
#endif
/* FunctionImport */
- #ifndef __PYX_HAVE_RT_ImportFunction
+ #ifndef __PYX_HAVE_RT_ImportFunction
#define __PYX_HAVE_RT_ImportFunction
static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {
PyObject *d = 0;
@@ -28875,7 +31345,7 @@ bad:
#endif
/* InitStrings */
- static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
+ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
while (t->p) {
#if PY_MAJOR_VERSION < 3
if (t->is_unicode) {
@@ -28900,6 +31370,8 @@ bad:
#endif
if (!*t->p)
return -1;
+ if (PyObject_Hash(*t->p) == -1)
+ PyErr_Clear();
++t;
}
return 0;
@@ -28908,50 +31380,57 @@ bad:
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str));
}
-static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {
+static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) {
Py_ssize_t ignore;
return __Pyx_PyObject_AsStringAndSize(o, &ignore);
}
-static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
-#if CYTHON_COMPILING_IN_CPYTHON && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT)
- if (
-#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
- __Pyx_sys_getdefaultencoding_not_ascii &&
-#endif
- PyUnicode_Check(o)) {
-#if PY_VERSION_HEX < 0x03030000
- char* defenc_c;
- PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL);
- if (!defenc) return NULL;
- defenc_c = PyBytes_AS_STRING(defenc);
+#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
+#if !CYTHON_PEP393_ENABLED
+static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
+ char* defenc_c;
+ PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL);
+ if (!defenc) return NULL;
+ defenc_c = PyBytes_AS_STRING(defenc);
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
- {
- char* end = defenc_c + PyBytes_GET_SIZE(defenc);
- char* c;
- for (c = defenc_c; c < end; c++) {
- if ((unsigned char) (*c) >= 128) {
- PyUnicode_AsASCIIString(o);
- return NULL;
- }
+ {
+ char* end = defenc_c + PyBytes_GET_SIZE(defenc);
+ char* c;
+ for (c = defenc_c; c < end; c++) {
+ if ((unsigned char) (*c) >= 128) {
+ PyUnicode_AsASCIIString(o);
+ return NULL;
}
}
+ }
#endif
- *length = PyBytes_GET_SIZE(defenc);
- return defenc_c;
+ *length = PyBytes_GET_SIZE(defenc);
+ return defenc_c;
+}
#else
- if (__Pyx_PyUnicode_READY(o) == -1) return NULL;
+static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
+ if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL;
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
- if (PyUnicode_IS_ASCII(o)) {
- *length = PyUnicode_GET_LENGTH(o);
- return PyUnicode_AsUTF8(o);
- } else {
- PyUnicode_AsASCIIString(o);
- return NULL;
- }
+ if (likely(PyUnicode_IS_ASCII(o))) {
+ *length = PyUnicode_GET_LENGTH(o);
+ return PyUnicode_AsUTF8(o);
+ } else {
+ PyUnicode_AsASCIIString(o);
+ return NULL;
+ }
#else
- return PyUnicode_AsUTF8AndSize(o, length);
+ return PyUnicode_AsUTF8AndSize(o, length);
+#endif
+}
+#endif
#endif
+static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
+#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
+ if (
+#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
+ __Pyx_sys_getdefaultencoding_not_ascii &&
#endif
+ PyUnicode_Check(o)) {
+ return __Pyx_PyUnicode_AsStringAndSize(o, length);
} else
#endif
#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))
@@ -28975,43 +31454,67 @@ static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
else return PyObject_IsTrue(x);
}
+static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) {
+#if PY_MAJOR_VERSION >= 3
+ if (PyLong_Check(result)) {
+ if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1,
+ "__int__ returned non-int (type %.200s). "
+ "The ability to return an instance of a strict subclass of int "
+ "is deprecated, and may be removed in a future version of Python.",
+ Py_TYPE(result)->tp_name)) {
+ Py_DECREF(result);
+ return NULL;
+ }
+ return result;
+ }
+#endif
+ PyErr_Format(PyExc_TypeError,
+ "__%.4s__ returned non-%.4s (type %.200s)",
+ type_name, type_name, Py_TYPE(result)->tp_name);
+ Py_DECREF(result);
+ return NULL;
+}
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {
+#if CYTHON_USE_TYPE_SLOTS
PyNumberMethods *m;
+#endif
const char *name = NULL;
PyObject *res = NULL;
#if PY_MAJOR_VERSION < 3
- if (PyInt_Check(x) || PyLong_Check(x))
+ if (likely(PyInt_Check(x) || PyLong_Check(x)))
#else
- if (PyLong_Check(x))
+ if (likely(PyLong_Check(x)))
#endif
return __Pyx_NewRef(x);
+#if CYTHON_USE_TYPE_SLOTS
m = Py_TYPE(x)->tp_as_number;
-#if PY_MAJOR_VERSION < 3
+ #if PY_MAJOR_VERSION < 3
if (m && m->nb_int) {
name = "int";
- res = PyNumber_Int(x);
+ res = m->nb_int(x);
}
else if (m && m->nb_long) {
name = "long";
- res = PyNumber_Long(x);
+ res = m->nb_long(x);
}
-#else
- if (m && m->nb_int) {
+ #else
+ if (likely(m && m->nb_int)) {
name = "int";
- res = PyNumber_Long(x);
+ res = m->nb_int(x);
+ }
+ #endif
+#else
+ if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) {
+ res = PyNumber_Int(x);
}
#endif
- if (res) {
+ if (likely(res)) {
#if PY_MAJOR_VERSION < 3
- if (!PyInt_Check(res) && !PyLong_Check(res)) {
+ if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) {
#else
- if (!PyLong_Check(res)) {
+ if (unlikely(!PyLong_CheckExact(res))) {
#endif
- PyErr_Format(PyExc_TypeError,
- "__%.4s__ returned non-%.4s (type %.200s)",
- name, name, Py_TYPE(res)->tp_name);
- Py_DECREF(res);
- return NULL;
+ return __Pyx_PyNumber_IntOrLongWrongResultType(res, name);
}
}
else if (!PyErr_Occurred()) {
diff --git a/src/libpetsc4py/libpetsc4py.h b/src/libpetsc4py/libpetsc4py.h
index 155f2ff..d26fbfd 100644
--- a/src/libpetsc4py/libpetsc4py.h
+++ b/src/libpetsc4py/libpetsc4py.h
@@ -1,4 +1,4 @@
-/* Generated by Cython 0.24 */
+/* Generated by Cython 0.27.1 */
#ifndef __PYX_HAVE__libpetsc4py
#define __PYX_HAVE__libpetsc4py
@@ -18,21 +18,24 @@
#define DL_IMPORT(_T) _T
#endif
-__PYX_EXTERN_C DL_IMPORT(int) import_libpetsc4py(void);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) MatPythonGetContext(Mat, void **);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) MatPythonSetContext(Mat, void *);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) PCPythonGetContext(PC, void **);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) PCPythonSetContext(PC, void *);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) KSPPythonGetContext(KSP, void **);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) KSPPythonSetContext(KSP, void *);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) SNESPythonGetContext(SNES, void **);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) SNESPythonSetContext(SNES, void *);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) TSPythonGetContext(TS, void **);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) TSPythonSetContext(TS, void *);
-__PYX_EXTERN_C DL_IMPORT(PetscErrorCode) PetscPythonRegisterAll(void);
+__PYX_EXTERN_C int import_libpetsc4py(void);
+__PYX_EXTERN_C PetscErrorCode MatPythonGetContext(Mat, void **);
+__PYX_EXTERN_C PetscErrorCode MatPythonSetContext(Mat, void *);
+__PYX_EXTERN_C PetscErrorCode PCPythonGetContext(PC, void **);
+__PYX_EXTERN_C PetscErrorCode PCPythonSetContext(PC, void *);
+__PYX_EXTERN_C PetscErrorCode KSPPythonGetContext(KSP, void **);
+__PYX_EXTERN_C PetscErrorCode KSPPythonSetContext(KSP, void *);
+__PYX_EXTERN_C PetscErrorCode SNESPythonGetContext(SNES, void **);
+__PYX_EXTERN_C PetscErrorCode SNESPythonSetContext(SNES, void *);
+__PYX_EXTERN_C PetscErrorCode TSPythonGetContext(TS, void **);
+__PYX_EXTERN_C PetscErrorCode TSPythonSetContext(TS, void *);
+__PYX_EXTERN_C PetscErrorCode PetscPythonRegisterAll(void);
#endif /* !__PYX_HAVE_API__libpetsc4py */
+/* WARNING: the interface of the module init function changed in CPython 3.5. */
+/* It now returns a PyModuleDef instance instead of a PyModule instance. */
+
#if PY_MAJOR_VERSION < 3
PyMODINIT_FUNC initlibpetsc4py(void);
#else
diff --git a/src/libpetsc4py/libpetsc4py.pyx b/src/libpetsc4py/libpetsc4py.pyx
index 7b6afc4..f254191 100644
--- a/src/libpetsc4py/libpetsc4py.pyx
+++ b/src/libpetsc4py/libpetsc4py.pyx
@@ -1,4 +1,6 @@
#cython: cdivision=True
+#cython: binding=False
+#cython: auto_pickle=False
#cython: autotestdict=False
#cython: warn.multiple_declarators=False
cimport cython
@@ -463,7 +465,7 @@ cdef extern from * nogil:
PetscErrorCode (*view)(PetscMat,PetscViewer) except IERR
PetscErrorCode (*duplicate)(PetscMat,MatDuplicateOption,PetscMat*) except IERR
PetscErrorCode (*copy)(PetscMat,PetscMat,MatStructure) except IERR
- PetscErrorCode (*getsubmatrix)(PetscMat,PetscIS,PetscIS,MatReuse,PetscMat*) except IERR
+ PetscErrorCode (*createsubmatrix)(PetscMat,PetscIS,PetscIS,MatReuse,PetscMat*) except IERR
PetscErrorCode (*setoption)(PetscMat,MatOption,PetscBool) except IERR
PetscErrorCode (*setup)(PetscMat) except IERR
PetscErrorCode (*assemblybegin)(PetscMat,MatAssemblyType) except IERR
@@ -549,7 +551,7 @@ cdef PetscErrorCode MatCreate_Python(
ops.view = MatView_Python
ops.duplicate = MatDuplicate_Python
ops.copy = MatCopy_Python
- ops.getsubmatrix = MatGetSubMatrix_Python
+ ops.createsubmatrix = MatCreateSubMatrix_Python
ops.setoption = MatSetOption_Python
ops.setup = MatSetUp_Python
ops.assemblybegin = MatAssemblyBegin_Python
@@ -693,7 +695,7 @@ cdef PetscErrorCode MatGetDiagonalBlock_Python(
if sub is not None: out[0] = sub.mat
return FunctionEnd()
-cdef PetscErrorCode MatGetSubMatrix_Python(
+cdef PetscErrorCode MatCreateSubMatrix_Python(
PetscMat mat,
PetscIS row,
PetscIS col,
@@ -702,15 +704,15 @@ cdef PetscErrorCode MatGetSubMatrix_Python(
) \
except IERR with gil:
FunctionBegin(b"MatCopy_Python")
- cdef getSubMatrix = PyMat(mat).getSubMatrix
- if getSubMatrix is None: return UNSUPPORTED(b"getSubMatrix")
+ cdef createSubMatrix = PyMat(mat).createSubMatrix
+ if createSubMatrix is None: return UNSUPPORTED(b"createSubMatrix")
cdef Mat sub = None
if op == MAT_IGNORE_MATRIX:
sub = None
elif op == MAT_INITIAL_MATRIX:
- sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
+ sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), None)
elif op == MAT_REUSE_MATRIX:
- sub = getSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
+ sub = createSubMatrix(Mat_(mat), IS_(row), IS_(col), Mat_(out[0]))
if sub is not None:
addRef(sub.mat)
out[0] = sub.mat
@@ -725,7 +727,7 @@ cdef PetscErrorCode MatSetOption_Python(
FunctionBegin(b"MatSetOption_Python")
cdef setOption = PyMat(mat).setOption
if setOption is not None:
- setOption(Mat_(mat), <long>op, <bint>flag)
+ setOption(Mat_(mat), <long>op, <bint>(<int>flag))
return FunctionEnd()
cdef PetscErrorCode MatSetUp_Python(
@@ -930,7 +932,7 @@ cdef PetscErrorCode MatMultTransposeAdd_Python(
except IERR with gil:
FunctionBegin(b"MatMultTransposeAdd_Python")
cdef multTransposeAdd = PyMat(mat).multTransposeAdd
- if multTransposeAdd is not None:
+ if multTransposeAdd is None:
CHKERR( MatMultTranspose(mat,x,y) )
CHKERR( VecAXPY(y,1.0,v) )
return FunctionEnd()
@@ -947,7 +949,7 @@ cdef PetscErrorCode MatMultHermitianAdd_Python(
except IERR with gil:
FunctionBegin(b"MatMultHermitianAdd_Python")
cdef multHermitianAdd = PyMat(mat).multHermitianAdd
- if multHermitianAdd is not None:
+ if multHermitianAdd is None:
CHKERR( MatMultHermitian(mat,x,y) )
CHKERR( VecAXPY(y,1.0,v) )
return FunctionEnd()
@@ -1024,7 +1026,7 @@ cdef PetscErrorCode MatSolveTransposeAdd_Python(
except IERR with gil:
FunctionBegin(b"MatSolveTransposeAdd_Python")
cdef solveTransposeAdd = PyMat(mat).solveTransposeAdd
- if solveTransposeAdd is not None:
+ if solveTransposeAdd is None:
CHKERR( MatSolveTranspose(mat,b,x) )
CHKERR( VecAXPY(x,1.0,y) )
return FunctionEnd()
@@ -1388,6 +1390,7 @@ cdef extern from * nogil:
PC_SYMMETRIC
ctypedef enum KSPConvergedReason:
KSP_CONVERGED_ITERATING
+ KSP_DIVERGED_ITS
cdef extern from * nogil:
struct _KSPOps:
PetscErrorCode (*destroy)(PetscKSP) except IERR
@@ -1691,6 +1694,9 @@ cdef PetscErrorCode KSPSolve_Python_default(
CHKERR( KSPLogHistory(ksp,ksp.norm) )
CHKERR( KSPMonitor(ksp,ksp.iter,ksp.norm) )
<void>its # silent unused warning
+ if ksp.iter == ksp.max_its:
+ if ksp.reason == KSP_CONVERGED_ITERATING:
+ ksp.reason = KSP_DIVERGED_ITS
#
return FunctionEnd()
@@ -1734,7 +1740,9 @@ cdef PetscErrorCode KSPStep_Python(
# --------------------------------------------------------------------
cdef extern from * nogil:
- ctypedef enum SNESConvergedReason: SNES_CONVERGED_ITERATING
+ ctypedef enum SNESConvergedReason:
+ SNES_CONVERGED_ITERATING
+ SNES_DIVERGED_MAX_IT
cdef extern from * nogil:
struct _SNESOps:
PetscErrorCode (*destroy)(PetscSNES) except IERR
@@ -1765,6 +1773,8 @@ cdef extern from * nogil:
int SNESComputeJacobian(PetscSNES,PetscVec,PetscMat,PetscMat)
SNESJacobian MatMFFDComputeJacobian
PetscErrorCode SNESGetKSP(PetscSNES,PetscKSP*)
+ PetscErrorCode SNESGetLineSearch(PetscSNES,PetscSNESLineSearch*)
+ PetscErrorCode SNESLineSearchApply(PetscSNESLineSearch,PetscVec,PetscVec,PetscReal*,PetscVec)
cdef extern from * nogil:
PetscErrorCode SNESGetRhs(PetscSNES,PetscVec*)
PetscErrorCode SNESGetSolution(PetscSNES,PetscVec*)
@@ -1945,9 +1955,11 @@ cdef PetscErrorCode SNESSolve_Python_default(
FunctionBegin(b"SNESSolve_Python_default")
#
cdef PetscVec X=NULL, F=NULL, Y=NULL
+ cdef PetscSNESLineSearch ls
CHKERR( SNESGetSolution(snes,&X) )
CHKERR( SNESGetFunction(snes,&F,NULL,NULL) )
CHKERR( SNESGetSolutionUpdate(snes,&Y) )
+ CHKERR( SNESGetLineSearch(snes, &ls) )
cdef PetscInt its=0, lits=0
cdef PetscReal xnorm = 0.0
cdef PetscReal fnorm = 0.0
@@ -1971,10 +1983,8 @@ cdef PetscErrorCode SNESSolve_Python_default(
SNESStep_Python(snes,X,F,Y)
lits += snes.linear_its
#
- CHKERR( VecAXPY(X,-1.0,Y) )
- CHKERR( SNESComputeFunction(snes,X,F) )
+ CHKERR( SNESLineSearchApply(ls,X,F,&fnorm,Y) )
CHKERR( VecNorm(X,NORM_2,&xnorm) )
- CHKERR( VecNorm(F,NORM_2,&fnorm) )
CHKERR( VecNorm(Y,NORM_2,&ynorm) )
snes.iter += 1
#
@@ -1983,6 +1993,9 @@ cdef PetscErrorCode SNESSolve_Python_default(
CHKERR( SNESLogHistory(snes,snes.norm,lits) )
CHKERR( SNESMonitor(snes,snes.iter,snes.norm) )
<void>its # silent unused warning
+ if snes.iter == snes.max_its:
+ if snes.reason == SNES_CONVERGED_ITERATING:
+ snes.reason = SNES_DIVERGED_MAX_IT
#
return FunctionEnd()
@@ -2110,6 +2123,8 @@ cdef extern from * nogil:
PetscErrorCode TSMonitor(PetscTS,PetscInt,PetscReal,PetscVec)
PetscErrorCode TSComputeIFunction(PetscTS,PetscReal,PetscVec,PetscVec,PetscVec,PetscBool)
PetscErrorCode TSComputeIJacobian(PetscTS,PetscReal,PetscVec,PetscVec,PetscReal,PetscMat,PetscMat,PetscBool)
+ PetscErrorCode TSComputeI2Function(PetscTS,PetscReal,PetscVec,PetscVec,PetscVec,PetscVec)
+ PetscErrorCode TSComputeI2Jacobian(PetscTS,PetscReal,PetscVec,PetscVec,PetscVec,PetscReal,PetscReal,PetscMat,PetscMat)
PetscErrorCode SNESTSFormFunction(PetscSNES,PetscVec,PetscVec,void*)
PetscErrorCode SNESTSFormJacobian(PetscSNES,PetscVec,PetscMat,PetscMat,void*)
diff --git a/src/petsc4py.PETSc.c b/src/petsc4py.PETSc.c
index 7f37d28..85effab 100644
--- a/src/petsc4py.PETSc.c
+++ b/src/petsc4py.PETSc.c
@@ -1,13 +1,14 @@
-/* Generated by Cython 0.24 */
+/* Generated by Cython 0.27.1 */
#define PY_SSIZE_T_CLEAN
#include "Python.h"
#ifndef Py_PYTHON_H
#error Python headers needed to compile C extensions, please install development version of Python.
-#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03020000)
- #error Cython requires Python 2.6+ or Python 3.2+.
+#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
+ #error Cython requires Python 2.6+ or Python 3.3+.
#else
-#define CYTHON_ABI "0_24"
+#define CYTHON_ABI "0_27_1"
+#define CYTHON_FUTURE_DIVISION 0
#include <stddef.h>
#ifndef offsetof
#define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
@@ -29,6 +30,12 @@
#ifndef DL_EXPORT
#define DL_EXPORT(t) t
#endif
+#define __PYX_COMMA ,
+#ifndef HAVE_LONG_LONG
+ #if PY_VERSION_HEX >= 0x02070000
+ #define HAVE_LONG_LONG
+ #endif
+#endif
#ifndef PY_LONG_LONG
#define PY_LONG_LONG LONG_LONG
#endif
@@ -37,13 +44,138 @@
#endif
#ifdef PYPY_VERSION
#define CYTHON_COMPILING_IN_PYPY 1
+ #define CYTHON_COMPILING_IN_PYSTON 0
+ #define CYTHON_COMPILING_IN_CPYTHON 0
+ #undef CYTHON_USE_TYPE_SLOTS
+ #define CYTHON_USE_TYPE_SLOTS 0
+ #undef CYTHON_USE_PYTYPE_LOOKUP
+ #define CYTHON_USE_PYTYPE_LOOKUP 0
+ #if PY_VERSION_HEX < 0x03050000
+ #undef CYTHON_USE_ASYNC_SLOTS
+ #define CYTHON_USE_ASYNC_SLOTS 0
+ #elif !defined(CYTHON_USE_ASYNC_SLOTS)
+ #define CYTHON_USE_ASYNC_SLOTS 1
+ #endif
+ #undef CYTHON_USE_PYLIST_INTERNALS
+ #define CYTHON_USE_PYLIST_INTERNALS 0
+ #undef CYTHON_USE_UNICODE_INTERNALS
+ #define CYTHON_USE_UNICODE_INTERNALS 0
+ #undef CYTHON_USE_UNICODE_WRITER
+ #define CYTHON_USE_UNICODE_WRITER 0
+ #undef CYTHON_USE_PYLONG_INTERNALS
+ #define CYTHON_USE_PYLONG_INTERNALS 0
+ #undef CYTHON_AVOID_BORROWED_REFS
+ #define CYTHON_AVOID_BORROWED_REFS 1
+ #undef CYTHON_ASSUME_SAFE_MACROS
+ #define CYTHON_ASSUME_SAFE_MACROS 0
+ #undef CYTHON_UNPACK_METHODS
+ #define CYTHON_UNPACK_METHODS 0
+ #undef CYTHON_FAST_THREAD_STATE
+ #define CYTHON_FAST_THREAD_STATE 0
+ #undef CYTHON_FAST_PYCALL
+ #define CYTHON_FAST_PYCALL 0
+ #undef CYTHON_PEP489_MULTI_PHASE_INIT
+ #define CYTHON_PEP489_MULTI_PHASE_INIT 0
+ #undef CYTHON_USE_TP_FINALIZE
+ #define CYTHON_USE_TP_FINALIZE 0
+#elif defined(PYSTON_VERSION)
+ #define CYTHON_COMPILING_IN_PYPY 0
+ #define CYTHON_COMPILING_IN_PYSTON 1
#define CYTHON_COMPILING_IN_CPYTHON 0
+ #ifndef CYTHON_USE_TYPE_SLOTS
+ #define CYTHON_USE_TYPE_SLOTS 1
+ #endif
+ #undef CYTHON_USE_PYTYPE_LOOKUP
+ #define CYTHON_USE_PYTYPE_LOOKUP 0
+ #undef CYTHON_USE_ASYNC_SLOTS
+ #define CYTHON_USE_ASYNC_SLOTS 0
+ #undef CYTHON_USE_PYLIST_INTERNALS
+ #define CYTHON_USE_PYLIST_INTERNALS 0
+ #ifndef CYTHON_USE_UNICODE_INTERNALS
+ #define CYTHON_USE_UNICODE_INTERNALS 1
+ #endif
+ #undef CYTHON_USE_UNICODE_WRITER
+ #define CYTHON_USE_UNICODE_WRITER 0
+ #undef CYTHON_USE_PYLONG_INTERNALS
+ #define CYTHON_USE_PYLONG_INTERNALS 0
+ #ifndef CYTHON_AVOID_BORROWED_REFS
+ #define CYTHON_AVOID_BORROWED_REFS 0
+ #endif
+ #ifndef CYTHON_ASSUME_SAFE_MACROS
+ #define CYTHON_ASSUME_SAFE_MACROS 1
+ #endif
+ #ifndef CYTHON_UNPACK_METHODS
+ #define CYTHON_UNPACK_METHODS 1
+ #endif
+ #undef CYTHON_FAST_THREAD_STATE
+ #define CYTHON_FAST_THREAD_STATE 0
+ #undef CYTHON_FAST_PYCALL
+ #define CYTHON_FAST_PYCALL 0
+ #undef CYTHON_PEP489_MULTI_PHASE_INIT
+ #define CYTHON_PEP489_MULTI_PHASE_INIT 0
+ #undef CYTHON_USE_TP_FINALIZE
+ #define CYTHON_USE_TP_FINALIZE 0
#else
#define CYTHON_COMPILING_IN_PYPY 0
+ #define CYTHON_COMPILING_IN_PYSTON 0
#define CYTHON_COMPILING_IN_CPYTHON 1
+ #ifndef CYTHON_USE_TYPE_SLOTS
+ #define CYTHON_USE_TYPE_SLOTS 1
+ #endif
+ #if PY_VERSION_HEX < 0x02070000
+ #undef CYTHON_USE_PYTYPE_LOOKUP
+ #define CYTHON_USE_PYTYPE_LOOKUP 0
+ #elif !defined(CYTHON_USE_PYTYPE_LOOKUP)
+ #define CYTHON_USE_PYTYPE_LOOKUP 1
+ #endif
+ #if PY_MAJOR_VERSION < 3
+ #undef CYTHON_USE_ASYNC_SLOTS
+ #define CYTHON_USE_ASYNC_SLOTS 0
+ #elif !defined(CYTHON_USE_ASYNC_SLOTS)
+ #define CYTHON_USE_ASYNC_SLOTS 1
+ #endif
+ #if PY_VERSION_HEX < 0x02070000
+ #undef CYTHON_USE_PYLONG_INTERNALS
+ #define CYTHON_USE_PYLONG_INTERNALS 0
+ #elif !defined(CYTHON_USE_PYLONG_INTERNALS)
+ #define CYTHON_USE_PYLONG_INTERNALS 1
+ #endif
+ #ifndef CYTHON_USE_PYLIST_INTERNALS
+ #define CYTHON_USE_PYLIST_INTERNALS 1
+ #endif
+ #ifndef CYTHON_USE_UNICODE_INTERNALS
+ #define CYTHON_USE_UNICODE_INTERNALS 1
+ #endif
+ #if PY_VERSION_HEX < 0x030300F0
+ #undef CYTHON_USE_UNICODE_WRITER
+ #define CYTHON_USE_UNICODE_WRITER 0
+ #elif !defined(CYTHON_USE_UNICODE_WRITER)
+ #define CYTHON_USE_UNICODE_WRITER 1
+ #endif
+ #ifndef CYTHON_AVOID_BORROWED_REFS
+ #define CYTHON_AVOID_BORROWED_REFS 0
+ #endif
+ #ifndef CYTHON_ASSUME_SAFE_MACROS
+ #define CYTHON_ASSUME_SAFE_MACROS 1
+ #endif
+ #ifndef CYTHON_UNPACK_METHODS
+ #define CYTHON_UNPACK_METHODS 1
+ #endif
+ #ifndef CYTHON_FAST_THREAD_STATE
+ #define CYTHON_FAST_THREAD_STATE 1
+ #endif
+ #ifndef CYTHON_FAST_PYCALL
+ #define CYTHON_FAST_PYCALL 1
+ #endif
+ #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
+ #define CYTHON_PEP489_MULTI_PHASE_INIT (0 && PY_VERSION_HEX >= 0x03050000)
+ #endif
+ #ifndef CYTHON_USE_TP_FINALIZE
+ #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1)
+ #endif
#endif
-#if !defined(CYTHON_USE_PYLONG_INTERNALS) && CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x02070000
- #define CYTHON_USE_PYLONG_INTERNALS 1
+#if !defined(CYTHON_FAST_PYCCALL)
+#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1)
#endif
#if CYTHON_USE_PYLONG_INTERNALS
#include "longintrepr.h"
@@ -79,24 +211,69 @@
#ifndef Py_TPFLAGS_HAVE_FINALIZE
#define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
+#if PY_VERSION_HEX < 0x030700A0 || !defined(METH_FASTCALL)
+ #ifndef METH_FASTCALL
+ #define METH_FASTCALL 0x80
+ #endif
+ typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args, Py_ssize_t nargs);
+ typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject **args,
+ Py_ssize_t nargs, PyObject *kwnames);
+#else
+ #define __Pyx_PyCFunctionFast _PyCFunctionFast
+ #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
+#endif
+#if CYTHON_FAST_PYCCALL
+#define __Pyx_PyFastCFunction_Check(func)\
+ ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)))))
+#else
+#define __Pyx_PyFastCFunction_Check(func) 0
+#endif
+#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000
+ #define __Pyx_PyThreadState_Current PyThreadState_GET()
+#elif PY_VERSION_HEX >= 0x03060000
+ #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
+#elif PY_VERSION_HEX >= 0x03000000
+ #define __Pyx_PyThreadState_Current PyThreadState_GET()
+#else
+ #define __Pyx_PyThreadState_Current _PyThreadState_Current
+#endif
+#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
+#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
+#else
+#define __Pyx_PyDict_NewPresized(n) PyDict_New()
+#endif
+#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION
+ #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
+ #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
+#else
+ #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
+ #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
+#endif
#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
#define CYTHON_PEP393_ENABLED 1
#define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\
0 : _PyUnicode_Ready((PyObject *)(op)))
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
+ #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u)
#define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u)
#define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u)
#define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i)
+ #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch)
#define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
#else
#define CYTHON_PEP393_ENABLED 0
+ #define PyUnicode_1BYTE_KIND 1
+ #define PyUnicode_2BYTE_KIND 2
+ #define PyUnicode_4BYTE_KIND 4
#define __Pyx_PyUnicode_READY(op) (0)
#define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u)
#define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
+ #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111)
#define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE))
#define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u))
#define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
+ #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch)
#define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u))
#endif
#if CYTHON_COMPILING_IN_PYPY
@@ -110,6 +287,9 @@
#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains)
#define PyUnicode_Contains(u, s) PySequence_Contains(u, s)
#endif
+#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check)
+ #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type)
+#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format)
#define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt)
#endif
@@ -118,6 +298,13 @@
#define PyObject_Free(p) PyMem_Free(p)
#define PyObject_Realloc(p) PyMem_Realloc(p)
#endif
+#if CYTHON_COMPILING_IN_PYSTON
+ #define __Pyx_PyCode_HasFreeVars(co) PyCode_HasFreeVars(co)
+ #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno)
+#else
+ #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0)
+ #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno)
+#endif
#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
@@ -145,7 +332,7 @@
#ifndef PySet_CheckExact
#define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type)
#endif
-#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
+#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)
#if PY_MAJOR_VERSION >= 3
#define PyIntObject PyLongObject
#define PyInt_Type PyLong_Type
@@ -184,18 +371,28 @@
#else
#define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
#endif
-#if PY_VERSION_HEX >= 0x030500B1
-#define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
-#define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
-#elif CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
-typedef struct {
- unaryfunc am_await;
- unaryfunc am_aiter;
- unaryfunc am_anext;
-} __Pyx_PyAsyncMethodsStruct;
-#define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
+#ifndef __has_attribute
+ #define __has_attribute(x) 0
+#endif
+#ifndef __has_cpp_attribute
+ #define __has_cpp_attribute(x) 0
+#endif
+#if CYTHON_USE_ASYNC_SLOTS
+ #if PY_VERSION_HEX >= 0x030500B1
+ #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
+ #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
+ #else
+ #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
+ #endif
#else
-#define __Pyx_PyType_AsAsync(obj) NULL
+ #define __Pyx_PyType_AsAsync(obj) NULL
+#endif
+#ifndef __Pyx_PyAsyncMethodsStruct
+ typedef struct {
+ unaryfunc am_await;
+ unaryfunc am_aiter;
+ unaryfunc am_anext;
+ } __Pyx_PyAsyncMethodsStruct;
#endif
#ifndef CYTHON_RESTRICT
#if defined(__GNUC__)
@@ -208,10 +405,68 @@ typedef struct {
#define CYTHON_RESTRICT
#endif
#endif
+#ifndef CYTHON_UNUSED
+# if defined(__GNUC__)
+# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
+# define CYTHON_UNUSED __attribute__ ((__unused__))
+# else
+# define CYTHON_UNUSED
+# endif
+# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
+# define CYTHON_UNUSED __attribute__ ((__unused__))
+# else
+# define CYTHON_UNUSED
+# endif
+#endif
+#ifndef CYTHON_MAYBE_UNUSED_VAR
+# if defined(__cplusplus)
+ template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }
+# else
+# define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x)
+# endif
+#endif
+#ifndef CYTHON_NCP_UNUSED
+# if CYTHON_COMPILING_IN_CPYTHON
+# define CYTHON_NCP_UNUSED
+# else
+# define CYTHON_NCP_UNUSED CYTHON_UNUSED
+# endif
+#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
+#ifdef _MSC_VER
+ #ifndef _MSC_STDINT_H_
+ #if _MSC_VER < 1300
+ typedef unsigned char uint8_t;
+ typedef unsigned int uint32_t;
+ #else
+ typedef unsigned __int8 uint8_t;
+ typedef unsigned __int32 uint32_t;
+ #endif
+ #endif
+#else
+ #include <stdint.h>
+#endif
+#ifndef CYTHON_FALLTHROUGH
+ #ifdef __cplusplus
+ #if __has_cpp_attribute(fallthrough)
+ #define CYTHON_FALLTHROUGH [[fallthrough]]
+ #elif __has_cpp_attribute(clang::fallthrough)
+ #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
+ #endif
+ #endif
+ #ifndef CYTHON_FALLTHROUGH
+ #if __has_attribute(fallthrough) || (defined(__GNUC__) && defined(__attribute__))
+ #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
+ #else
+ #define CYTHON_FALLTHROUGH
+ #endif
+ #endif
+#endif
#ifndef CYTHON_INLINE
- #if defined(__GNUC__)
+ #if defined(__clang__)
+ #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
+ #elif defined(__GNUC__)
#define CYTHON_INLINE __inline__
#elif defined(_MSC_VER)
#define CYTHON_INLINE __inline
@@ -235,6 +490,11 @@ static CYTHON_INLINE float __PYX_NAN() {
return value;
}
#endif
+#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
+#define __Pyx_truncl trunc
+#else
+#define __Pyx_truncl truncl
+#endif
#define __PYX_ERR(f_index, lineno, Ln_error) \
@@ -242,14 +502,6 @@ static CYTHON_INLINE float __PYX_NAN() {
__pyx_filename = __pyx_f[f_index]; __pyx_lineno = lineno; __pyx_clineno = __LINE__; goto Ln_error; \
}
-#if PY_MAJOR_VERSION >= 3
- #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
- #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
-#else
- #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
- #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
-#endif
-
#ifndef __PYX_EXTERN_C
#ifdef __cplusplus
#define __PYX_EXTERN_C extern "C"
@@ -276,30 +528,10 @@ static CYTHON_INLINE float __PYX_NAN() {
#include <omp.h>
#endif /* _OPENMP */
-#ifdef PYREX_WITHOUT_ASSERTIONS
+#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif
-#ifndef CYTHON_UNUSED
-# if defined(__GNUC__)
-# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
-# define CYTHON_UNUSED __attribute__ ((__unused__))
-# else
-# define CYTHON_UNUSED
-# endif
-# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
-# define CYTHON_UNUSED __attribute__ ((__unused__))
-# else
-# define CYTHON_UNUSED
-# endif
-#endif
-#ifndef CYTHON_NCP_UNUSED
-# if CYTHON_COMPILING_IN_CPYTHON
-# define CYTHON_NCP_UNUSED
-# else
-# define CYTHON_NCP_UNUSED CYTHON_UNUSED
-# endif
-#endif
typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;
const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;
@@ -327,8 +559,8 @@ typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* enc
#define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
#define __Pyx_sst_abs(value) labs(value)
-#elif defined (_MSC_VER) && defined (_M_X64)
- #define __Pyx_sst_abs(value) _abs64(value)
+#elif defined (_MSC_VER)
+ #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
@@ -336,8 +568,8 @@ typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* enc
#else
#define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
-static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject*);
-static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
+static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
+static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString PyBytes_FromString
@@ -350,23 +582,27 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString
#define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
-#define __Pyx_PyObject_AsSString(s) ((signed char*) __Pyx_PyObject_AsString(s))
-#define __Pyx_PyObject_AsUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s))
+#define __Pyx_PyObject_AsWritableString(s) ((char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsWritableSString(s) ((signed char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s))
+#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
-#if PY_MAJOR_VERSION < 3
-static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
-{
+static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) {
const Py_UNICODE *u_end = u;
while (*u_end++) ;
return (size_t)(u_end - u - 1);
}
-#else
-#define __Pyx_Py_UNICODE_strlen Py_UNICODE_strlen
-#endif
#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode
@@ -375,9 +611,11 @@ static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
#define __Pyx_PyBool_FromLong(b) ((b) ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False))
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
+#define __Pyx_PySequence_Tuple(obj)\
+ (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
@@ -473,10 +711,12 @@ bad:
#define likely(x) (x)
#define unlikely(x) (x)
#endif /* __GNUC__ */
+static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }
-static PyObject *__pyx_m;
+static PyObject *__pyx_m = NULL;
static PyObject *__pyx_d;
static PyObject *__pyx_b;
+static PyObject *__pyx_cython_runtime;
static PyObject *__pyx_empty_tuple;
static PyObject *__pyx_empty_bytes;
static PyObject *__pyx_empty_unicode;
@@ -537,6 +777,18 @@ static const char *__pyx_f[] = {
"PETSc/CAPI.pyx",
"petsc4py.PETSc.pyx",
};
+/* ForceInitThreads.proto */
+#ifndef __PYX_FORCE_INIT_THREADS
+ #define __PYX_FORCE_INIT_THREADS 0
+#endif
+
+/* NoFastGil.proto */
+#define __Pyx_PyGILState_Ensure PyGILState_Ensure
+#define __Pyx_PyGILState_Release PyGILState_Release
+#define __Pyx_FastGIL_Remember()
+#define __Pyx_FastGIL_Forget()
+#define __Pyx_FastGilFuncInit()
+
/*--- Type declarations ---*/
struct PyPetscCommObject;
@@ -623,7 +875,7 @@ typedef MPI_Comm *__pyx_t_8petsc4py_5PETSc_PyMPICommGet(PyObject *);
*/
typedef PyObject *__pyx_t_8petsc4py_5PETSc_PyMPICommNew(MPI_Comm);
-/* "PETSc/petscvec.pxi":288
+/* "PETSc/petscvec.pxi":289
* # --------------------------------------------------------------------
*
* ctypedef int VecSetValuesFcn(PetscVec,PetscInt,const_PetscInt[], # <<<<<<<<<<<<<<
@@ -632,7 +884,7 @@ typedef PyObject *__pyx_t_8petsc4py_5PETSc_PyMPICommNew(MPI_Comm);
*/
typedef int __pyx_t_8petsc4py_5PETSc_VecSetValuesFcn(Vec, PetscInt, const PetscInt *, const PetscScalar *, InsertMode);
-/* "PETSc/petscmat.pxi":737
+/* "PETSc/petscmat.pxi":743
* # -----------------------------------------------------------------------------
*
* ctypedef int MatSetValuesFcn(PetscMat,PetscInt,const_PetscInt[], # <<<<<<<<<<<<<<
@@ -648,7 +900,7 @@ typedef int __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn(Mat, PetscInt, const PetscI
*/
typedef int (*__pyx_t_8petsc4py_5PETSc_PetscDMShellXToYFunction)(DM, Vec, InsertMode, Vec);
-/* "petsc4py/PETSc.pxd":70
+/* "petsc4py/PETSc.pxd":73
* # --------------------------------------------------------------------
*
* ctypedef public api class Comm [ # <<<<<<<<<<<<<<
@@ -665,7 +917,7 @@ typedef struct PyPetscCommObject PyPetscCommObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscComm_Type;
-/* "petsc4py/PETSc.pxd":78
+/* "petsc4py/PETSc.pxd":81
* cdef object base
*
* ctypedef public api class Object [ # <<<<<<<<<<<<<<
@@ -684,7 +936,7 @@ typedef struct PyPetscObjectObject PyPetscObjectObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscObject_Type;
-/* "petsc4py/PETSc.pxd":90
+/* "petsc4py/PETSc.pxd":93
* cdef object get_dict(self)
*
* ctypedef public api class Viewer(Object) [ # <<<<<<<<<<<<<<
@@ -699,7 +951,7 @@ typedef struct PyPetscViewerObject PyPetscViewerObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscViewer_Type;
-/* "petsc4py/PETSc.pxd":96
+/* "petsc4py/PETSc.pxd":99
* cdef PetscViewer vwr
*
* ctypedef public api class Random(Object) [ # <<<<<<<<<<<<<<
@@ -714,7 +966,7 @@ typedef struct PyPetscRandomObject PyPetscRandomObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscRandom_Type;
-/* "petsc4py/PETSc.pxd":102
+/* "petsc4py/PETSc.pxd":105
* cdef PetscRandom rnd
*
* ctypedef public api class IS(Object) [ # <<<<<<<<<<<<<<
@@ -729,7 +981,7 @@ typedef struct PyPetscISObject PyPetscISObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscIS_Type;
-/* "petsc4py/PETSc.pxd":108
+/* "petsc4py/PETSc.pxd":111
* cdef PetscIS iset
*
* ctypedef public api class LGMap(Object) [ # <<<<<<<<<<<<<<
@@ -744,7 +996,7 @@ typedef struct PyPetscLGMapObject PyPetscLGMapObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscLGMap_Type;
-/* "petsc4py/PETSc.pxd":114
+/* "petsc4py/PETSc.pxd":117
* cdef PetscLGMap lgm
*
* ctypedef public api class SF(Object) [ # <<<<<<<<<<<<<<
@@ -759,7 +1011,7 @@ typedef struct PyPetscSFObject PyPetscSFObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSF_Type;
-/* "petsc4py/PETSc.pxd":120
+/* "petsc4py/PETSc.pxd":123
* cdef PetscSF sf
*
* ctypedef public api class Vec(Object) [ # <<<<<<<<<<<<<<
@@ -774,7 +1026,7 @@ typedef struct PyPetscVecObject PyPetscVecObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscVec_Type;
-/* "petsc4py/PETSc.pxd":126
+/* "petsc4py/PETSc.pxd":129
* cdef PetscVec vec
*
* ctypedef public api class Scatter(Object) [ # <<<<<<<<<<<<<<
@@ -789,7 +1041,7 @@ typedef struct PyPetscScatterObject PyPetscScatterObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscScatter_Type;
-/* "petsc4py/PETSc.pxd":132
+/* "petsc4py/PETSc.pxd":135
* cdef PetscScatter sct
*
* ctypedef public api class Section(Object) [ # <<<<<<<<<<<<<<
@@ -804,7 +1056,7 @@ typedef struct PyPetscSectionObject PyPetscSectionObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSection_Type;
-/* "petsc4py/PETSc.pxd":138
+/* "petsc4py/PETSc.pxd":141
* cdef PetscSection sec
*
* ctypedef public api class Mat(Object) [ # <<<<<<<<<<<<<<
@@ -819,7 +1071,7 @@ typedef struct PyPetscMatObject PyPetscMatObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscMat_Type;
-/* "petsc4py/PETSc.pxd":144
+/* "petsc4py/PETSc.pxd":147
* cdef PetscMat mat
*
* ctypedef public api class NullSpace(Object) [ # <<<<<<<<<<<<<<
@@ -834,7 +1086,7 @@ typedef struct PyPetscNullSpaceObject PyPetscNullSpaceObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscNullSpace_Type;
-/* "petsc4py/PETSc.pxd":150
+/* "petsc4py/PETSc.pxd":153
* cdef PetscNullSpace nsp
*
* ctypedef public api class PC(Object) [ # <<<<<<<<<<<<<<
@@ -849,7 +1101,7 @@ typedef struct PyPetscPCObject PyPetscPCObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscPC_Type;
-/* "petsc4py/PETSc.pxd":156
+/* "petsc4py/PETSc.pxd":159
* cdef PetscPC pc
*
* ctypedef public api class KSP(Object) [ # <<<<<<<<<<<<<<
@@ -864,7 +1116,7 @@ typedef struct PyPetscKSPObject PyPetscKSPObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscKSP_Type;
-/* "petsc4py/PETSc.pxd":162
+/* "petsc4py/PETSc.pxd":165
* cdef PetscKSP ksp
*
* ctypedef public api class SNES(Object) [ # <<<<<<<<<<<<<<
@@ -879,7 +1131,7 @@ typedef struct PyPetscSNESObject PyPetscSNESObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscSNES_Type;
-/* "petsc4py/PETSc.pxd":168
+/* "petsc4py/PETSc.pxd":171
* cdef PetscSNES snes
*
* ctypedef public api class TS(Object) [ # <<<<<<<<<<<<<<
@@ -894,7 +1146,7 @@ typedef struct PyPetscTSObject PyPetscTSObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscTS_Type;
-/* "petsc4py/PETSc.pxd":174
+/* "petsc4py/PETSc.pxd":177
* cdef PetscTS ts
*
* ctypedef public api class TAO(Object) [ # <<<<<<<<<<<<<<
@@ -909,7 +1161,7 @@ typedef struct PyPetscTAOObject PyPetscTAOObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscTAO_Type;
-/* "petsc4py/PETSc.pxd":180
+/* "petsc4py/PETSc.pxd":183
* cdef PetscTAO tao
*
* ctypedef public api class AO(Object) [ # <<<<<<<<<<<<<<
@@ -924,7 +1176,7 @@ typedef struct PyPetscAOObject PyPetscAOObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscAO_Type;
-/* "petsc4py/PETSc.pxd":186
+/* "petsc4py/PETSc.pxd":189
* cdef PetscAO ao
*
* ctypedef public api class DM(Object) [ # <<<<<<<<<<<<<<
@@ -939,7 +1191,7 @@ typedef struct PyPetscDMObject PyPetscDMObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscDM_Type;
-/* "petsc4py/PETSc.pxd":192
+/* "petsc4py/PETSc.pxd":195
* cdef PetscDM dm
*
* ctypedef public api class Partitioner(Object) [ # <<<<<<<<<<<<<<
@@ -954,7 +1206,7 @@ typedef struct PyPetscPartitionerObject PyPetscPartitionerObject;
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscPartitioner_Type;
-/* "PETSc/petscis.pxi":113
+/* "PETSc/petscis.pxi":119
* # --------------------------------------------------------------------
*
* cdef class _IS_buffer: # <<<<<<<<<<<<<<
@@ -971,7 +1223,7 @@ struct __pyx_obj_8petsc4py_5PETSc__IS_buffer {
};
-/* "PETSc/petscvec.pxi":413
+/* "PETSc/petscvec.pxi":414
* return 0
*
* cdef class _Vec_buffer: # <<<<<<<<<<<<<<
@@ -989,7 +1241,7 @@ struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer {
};
-/* "PETSc/petscvec.pxi":533
+/* "PETSc/petscvec.pxi":534
* # --------------------------------------------------------------------
*
* cdef class _Vec_LocalForm: # <<<<<<<<<<<<<<
@@ -1003,7 +1255,7 @@ struct __pyx_obj_8petsc4py_5PETSc__Vec_LocalForm {
};
-/* "PETSc/petscmat.pxi":1017
+/* "PETSc/petscmat.pxi":1023
*
* #@cython.internal
* cdef class _Mat_Stencil: # <<<<<<<<<<<<<<
@@ -1132,7 +1384,7 @@ struct __pyx_obj_8petsc4py_5PETSc_LogEvent {
};
-/* "PETSc/Viewer.pyx":322
+/* "PETSc/Viewer.pyx":353
* # --------------------------------------------------------------------
*
* cdef class ViewerHDF5(Viewer): # <<<<<<<<<<<<<<
@@ -1209,7 +1461,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *__pyx_vtabptr_8petsc4py_
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscViewer_Type;
-/* "PETSc/Viewer.pyx":74
+/* "PETSc/Viewer.pyx":73
* # --------------------------------------------------------------------
*
* cdef class Viewer(Object): # <<<<<<<<<<<<<<
@@ -1254,12 +1506,12 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_IS *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscLGMap_Type;
-/* "PETSc/IS.pyx":350
+/* "PETSc/IS.pyx":355
* # --------------------------------------------------------------------
*
* cdef class LGMap(Object): # <<<<<<<<<<<<<<
*
- * MapType = GLMapType
+ * MapMode = GLMapMode
*/
struct __pyx_vtabstruct_8petsc4py_5PETSc_LGMap {
@@ -1329,7 +1581,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Section *__pyx_vtabptr_8petsc4py
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscMat_Type;
-/* "PETSc/Mat.pyx":148
+/* "PETSc/Mat.pyx":142
* # --------------------------------------------------------------------
*
* cdef class Mat(Object): # <<<<<<<<<<<<<<
@@ -1344,7 +1596,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *__pyx_vtabptr_8petsc4py_5PE
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscNullSpace_Type;
-/* "PETSc/Mat.pyx":1461
+/* "PETSc/Mat.pyx":1504
* # --------------------------------------------------------------------
*
* cdef class NullSpace(Object): # <<<<<<<<<<<<<<
@@ -1359,7 +1611,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *__pyx_vtabptr_8petsc4
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscPC_Type;
-/* "PETSc/PC.pyx":104
+/* "PETSc/PC.pyx":108
* # --------------------------------------------------------------------
*
* cdef class PC(Object): # <<<<<<<<<<<<<<
@@ -1374,7 +1626,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_PC *__pyx_vtabptr_8petsc4py_5PET
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscKSP_Type;
-/* "PETSc/KSP.pyx":86
+/* "PETSc/KSP.pyx":87
* # --------------------------------------------------------------------
*
* cdef class KSP(Object): # <<<<<<<<<<<<<<
@@ -1404,7 +1656,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *__pyx_vtabptr_8petsc4py_5P
__PYX_EXTERN_C DL_EXPORT(PyTypeObject) PyPetscTS_Type;
-/* "PETSc/TS.pyx":69
+/* "PETSc/TS.pyx":79
* # -----------------------------------------------------------------------------
*
* cdef class TS(Object): # <<<<<<<<<<<<<<
@@ -1478,7 +1730,7 @@ struct __pyx_vtabstruct_8petsc4py_5PETSc_Partitioner {
static struct __pyx_vtabstruct_8petsc4py_5PETSc_Partitioner *__pyx_vtabptr_8petsc4py_5PETSc_Partitioner;
-/* "PETSc/petscis.pxi":113
+/* "PETSc/petscis.pxi":119
* # --------------------------------------------------------------------
*
* cdef class _IS_buffer: # <<<<<<<<<<<<<<
@@ -1498,7 +1750,7 @@ struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer {
static struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *__pyx_vtabptr_8petsc4py_5PETSc__IS_buffer;
-/* "PETSc/petscvec.pxi":413
+/* "PETSc/petscvec.pxi":414
* return 0
*
* cdef class _Vec_buffer: # <<<<<<<<<<<<<<
@@ -1533,7 +1785,7 @@ struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array {
static struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *__pyx_vtabptr_8petsc4py_5PETSc__DMDA_Vec_array;
-/* "PETSc/Viewer.pyx":322
+/* "PETSc/Viewer.pyx":353
* # --------------------------------------------------------------------
*
* cdef class ViewerHDF5(Viewer): # <<<<<<<<<<<<<<
@@ -1665,7 +1917,7 @@ static struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *__pyx_vtabptr_8petsc4py
#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)
/* PyObjectGetAttrStr.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
PyTypeObject* tp = Py_TYPE(obj);
if (likely(tp->tp_getattro))
@@ -1683,6 +1935,20 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject
/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);
+/* decode_c_string_utf16.proto */
+static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16(const char *s, Py_ssize_t size, const char *errors) {
+ int byteorder = 0;
+ return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
+}
+static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16LE(const char *s, Py_ssize_t size, const char *errors) {
+ int byteorder = -1;
+ return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
+}
+static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16BE(const char *s, Py_ssize_t size, const char *errors) {
+ int byteorder = 1;
+ return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
+}
+
/* decode_c_bytes.proto */
static CYTHON_INLINE PyObject* __Pyx_decode_c_bytes(
const char* cstring, Py_ssize_t length, Py_ssize_t start, Py_ssize_t stop,
@@ -1699,6 +1965,24 @@ static CYTHON_INLINE PyObject* __Pyx_decode_bytes(
start, stop, encoding, errors, decode_func);
}
+/* PyCFunctionFastCall.proto */
+#if CYTHON_FAST_PYCCALL
+static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs);
+#else
+#define __Pyx_PyCFunction_FastCall(func, args, nargs) (assert(0), NULL)
+#endif
+
+/* PyFunctionFastCall.proto */
+#if CYTHON_FAST_PYCALL
+#define __Pyx_PyFunction_FastCall(func, args, nargs)\
+ __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
+#if 1 || PY_VERSION_HEX < 0x030600B1
+static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs);
+#else
+#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs)
+#endif
+#endif
+
/* PyObjectCall.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
@@ -1721,29 +2005,34 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);
#define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL)
#endif
-/* ForceInitThreads.proto */
-#ifndef __PYX_FORCE_INIT_THREADS
- #define __PYX_FORCE_INIT_THREADS 0
-#endif
-
/* PyThreadStateGet.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate;
-#define __Pyx_PyThreadState_assign __pyx_tstate = PyThreadState_GET();
+#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current;
+#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
+#define __Pyx_PyErr_Occurred() PyErr_Occurred()
#endif
/* PyErrFetchRestore.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
+#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
+#if CYTHON_COMPILING_IN_CPYTHON
+#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
#else
+#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
+#endif
+#else
+#define __Pyx_PyErr_Clear() PyErr_Clear()
+#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb)
@@ -1775,7 +2064,7 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause);
/* ListAppend.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {
PyListObject* L = (PyListObject*) list;
Py_ssize_t len = Py_SIZE(list);
@@ -1792,7 +2081,7 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {
#endif
/* GetException.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_GetException(type, value, tb) __Pyx__GetException(__pyx_tstate, type, value, tb)
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
@@ -1800,7 +2089,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
#endif
/* SwapException.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSwap(type, value, tb) __Pyx__ExceptionSwap(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
@@ -1808,7 +2097,7 @@ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value,
#endif
/* SaveResetException.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSave(type, value, tb) __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#define __Pyx_ExceptionReset(type, value, tb) __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
@@ -1820,11 +2109,12 @@ static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject
/* PyObjectCallMethod1.proto */
static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg);
+static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg);
/* pop_index.proto */
static PyObject* __Pyx__PyObject_PopNewIndex(PyObject* L, PyObject* py_ix);
static PyObject* __Pyx__PyObject_PopIndex(PyObject* L, PyObject* py_ix);
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static PyObject* __Pyx__PyList_PopIndex(PyObject* L, PyObject* py_ix, Py_ssize_t ix);
#define __Pyx_PyObject_PopIndex(L, py_ix, ix, is_signed, type, to_py_func) (\
(likely(PyList_CheckExact(L) && __Pyx_fits_Py_ssize_t(ix, type, is_signed))) ?\
@@ -1868,7 +2158,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_
(PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
int wraparound, int boundscheck);
-static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
+static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
int is_list, int wraparound, int boundscheck);
@@ -1894,7 +2184,7 @@ static CYTHON_INLINE int __Pyx_IterFinish(void);
static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected);
/* PyErrExceptionMatches.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
#else
@@ -1914,14 +2204,16 @@ static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found);
/* ArgTypeTest.proto */
-static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,
- const char *name, int exact);
+#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\
+ ((likely((Py_TYPE(obj) == type) | (none_allowed && (obj == Py_None)))) ? 1 :\
+ __Pyx__ArgTypeTest(obj, type, name, exact))
+static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact);
/* KeywordStringCheck.proto */
-static CYTHON_INLINE int __Pyx_CheckKeywordStrings(PyObject *kwdict, const char* function_name, int kw_allowed);
+static int __Pyx_CheckKeywordStrings(PyObject *kwdict, const char* function_name, int kw_allowed);
/* PyObjectSetAttrStr.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_USE_TYPE_SLOTS
#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o,n,NULL)
static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) {
PyTypeObject* tp = Py_TYPE(obj);
@@ -1957,14 +2249,38 @@ static PyObject* __Pyx__CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObje
((likely((cfunc)->func)) ?\
(likely((cfunc)->flag == METH_NOARGS) ? (*((cfunc)->func))(self, NULL) :\
(likely((cfunc)->flag == (METH_VARARGS | METH_KEYWORDS)) ? ((*(PyCFunctionWithKeywords)(cfunc)->func)(self, __pyx_empty_tuple, NULL)) :\
- ((cfunc)->flag == METH_VARARGS ? (*((cfunc)->func))(self, __pyx_empty_tuple) : __Pyx__CallUnboundCMethod0(cfunc, self)))) :\
+ ((cfunc)->flag == METH_VARARGS ? (*((cfunc)->func))(self, __pyx_empty_tuple) :\
+ (PY_VERSION_HEX >= 0x030600B1 && (cfunc)->flag == METH_FASTCALL ?\
+ (PY_VERSION_HEX >= 0x030700A0 ?\
+ (*(__Pyx_PyCFunctionFast)(cfunc)->func)(self, &PyTuple_GET_ITEM(__pyx_empty_tuple, 0), 0) :\
+ (*(__Pyx_PyCFunctionFastWithKeywords)(cfunc)->func)(self, &PyTuple_GET_ITEM(__pyx_empty_tuple, 0), 0, NULL)) :\
+ (PY_VERSION_HEX >= 0x030700A0 && (cfunc)->flag == (METH_FASTCALL | METH_KEYWORDS) ?\
+ (*(__Pyx_PyCFunctionFastWithKeywords)(cfunc)->func)(self, &PyTuple_GET_ITEM(__pyx_empty_tuple, 0), 0, NULL) :\
+ __Pyx__CallUnboundCMethod0(cfunc, self)))))) :\
__Pyx__CallUnboundCMethod0(cfunc, self))
#else
#define __Pyx_CallUnboundCMethod0(cfunc, self) __Pyx__CallUnboundCMethod0(cfunc, self)
#endif
+/* ListCompAppend.proto */
+#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
+static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {
+ PyListObject* L = (PyListObject*) list;
+ Py_ssize_t len = Py_SIZE(list);
+ if (likely(L->allocated > len)) {
+ Py_INCREF(x);
+ PyList_SET_ITEM(list, len, x);
+ Py_SIZE(list) = len+1;
+ return 0;
+ }
+ return PyList_Append(list, x);
+}
+#else
+#define __Pyx_ListComp_Append(L,x) PyList_Append(L,x)
+#endif
+
/* PyIntBinop.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, long intval, int inplace);
#else
#define __Pyx_PyInt_EqObjC(op1, op2, intval, inplace)\
@@ -1977,35 +2293,18 @@ static PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, long intval, i
__Pyx_SetItemInt_Fast(o, (Py_ssize_t)i, v, is_list, wraparound, boundscheck) :\
(is_list ? (PyErr_SetString(PyExc_IndexError, "list assignment index out of range"), -1) :\
__Pyx_SetItemInt_Generic(o, to_py_func(i), v)))
-static CYTHON_INLINE int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v);
+static int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v);
static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObject *v,
int is_list, int wraparound, int boundscheck);
/* PyIntBinop.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
+#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace);
#else
#define __Pyx_PyInt_AddObjC(op1, op2, intval, inplace)\
(inplace ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2))
#endif
-/* ListCompAppend.proto */
-#if CYTHON_COMPILING_IN_CPYTHON
-static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {
- PyListObject* L = (PyListObject*) list;
- Py_ssize_t len = Py_SIZE(list);
- if (likely(L->allocated > len)) {
- Py_INCREF(x);
- PyList_SET_ITEM(list, len, x);
- Py_SIZE(list) = len+1;
- return 0;
- }
- return PyList_Append(list, x);
-}
-#else
-#define __Pyx_ListComp_Append(L,x) PyList_Append(L,x)
-#endif
-
/* StringJoin.proto */
#if PY_MAJOR_VERSION < 3
#define __Pyx_PyString_Join __Pyx_PyBytes_Join
@@ -2035,7 +2334,7 @@ static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name
/* pop.proto */
static CYTHON_INLINE PyObject* __Pyx__PyObject_Pop(PyObject* L);
-#if CYTHON_COMPILING_IN_CPYTHON
+#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE PyObject* __Pyx_PyList_Pop(PyObject* L);
#define __Pyx_PyObject_Pop(L) (likely(PyList_CheckExact(L)) ?\
__Pyx_PyList_Pop(L) : __Pyx__PyObject_Pop(L))
@@ -2072,7 +2371,7 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {
#endif
/* PyObjectLookupSpecial.proto */
-#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x02070000
+#if CYTHON_USE_PYTYPE_LOOKUP && CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_LookupSpecial(PyObject* obj, PyObject* attr_name) {
PyObject *res;
PyTypeObject *tp = Py_TYPE(obj);
@@ -2192,6 +2491,10 @@ static int __pyx_CyFunction_init(void);
/* GetNameInClass.proto */
static PyObject *__Pyx_GetNameInClass(PyObject *nmspace, PyObject *name);
+/* ClassMethod.proto */
+#include "descrobject.h"
+static PyObject* __Pyx_Method_ClassMethod(PyObject *method);
+
/* PyIdentifierFromString.proto */
#if !defined(__Pyx_PyIdentifier_FromString)
#if PY_MAJOR_VERSION < 3
@@ -2208,6 +2511,9 @@ static PyObject *__Pyx_ImportModule(const char *name);
static void __pyx_module_cleanup(PyObject *self);
static int __Pyx_RegisterCleanup(void);
+/* CLineInTraceback.proto */
+static int __Pyx_CLineForTraceback(int c_line);
+
/* CodeObjectCache.proto */
typedef struct {
PyCodeObject* code_object;
@@ -2246,7 +2552,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscViewerFormat(PetscViewerFor
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscFileMode(PetscFileMode value);
/* CIntToPy.proto */
-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_ISGlobalToLocalMappingType(ISGlobalToLocalMappingType value);
+static CYTHON_INLINE PyObject* __Pyx_PyInt_From_ISGlobalToLocalMappingMode(ISGlobalToLocalMappingMode value);
/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_VecOption(VecOption value);
@@ -2282,6 +2588,9 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PCGASMType(PCGASMType value);
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PCMGType(PCMGType value);
/* CIntToPy.proto */
+static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PCMGCycleType(PCMGCycleType value);
+
+/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PCCompositeType(PCCompositeType value);
/* CIntToPy.proto */
@@ -2336,9 +2645,6 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscInt(PetscInt value);
/* CIntToPy.proto */
-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscBool(PetscBool value);
-
-/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscLogStage(PetscLogStage value);
/* CIntToPy.proto */
@@ -2355,9 +2661,11 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_MPI_Fint(MPI_Fint value);
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_long(unsigned long value);
static PyObject* __pyx_convert__to_py_MatInfo(MatInfo s);
-/* ClassMethod.proto */
-#include "descrobject.h"
-static PyObject* __Pyx_Method_ClassMethod(PyObject *method);
+/* CIntToPy.proto */
+static CYTHON_INLINE PyObject* __Pyx_PyInt_From_MatDuplicateOption(MatDuplicateOption value);
+
+/* CIntToPy.proto */
+static CYTHON_INLINE PyObject* __Pyx_PyInt_From_PetscBool(PetscBool value);
/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);
@@ -2414,13 +2722,13 @@ static CYTHON_INLINE PetscClassId __Pyx_PyInt_As_PetscClassId(PyObject *);
static CYTHON_INLINE PetscViewerFormat __Pyx_PyInt_As_PetscViewerFormat(PyObject *);
/* CIntFromPy.proto */
-static CYTHON_INLINE unsigned long __Pyx_PyInt_As_unsigned_long(PyObject *);
+static CYTHON_INLINE PetscBool __Pyx_PyInt_As_PetscBool(PyObject *);
/* CIntFromPy.proto */
-static CYTHON_INLINE PetscBool __Pyx_PyInt_As_PetscBool(PyObject *);
+static CYTHON_INLINE unsigned long __Pyx_PyInt_As_unsigned_long(PyObject *);
/* CIntFromPy.proto */
-static CYTHON_INLINE ISGlobalToLocalMappingType __Pyx_PyInt_As_ISGlobalToLocalMappingType(PyObject *);
+static CYTHON_INLINE ISGlobalToLocalMappingMode __Pyx_PyInt_As_ISGlobalToLocalMappingMode(PyObject *);
/* CIntFromPy.proto */
static CYTHON_INLINE VecOption __Pyx_PyInt_As_VecOption(PyObject *);
@@ -2453,6 +2761,9 @@ static CYTHON_INLINE PCFieldSplitSchurPreType __Pyx_PyInt_As_PCFieldSplitSchurPr
static CYTHON_INLINE PCMGType __Pyx_PyInt_As_PCMGType(PyObject *);
/* CIntFromPy.proto */
+static CYTHON_INLINE PCMGCycleType __Pyx_PyInt_As_PCMGCycleType(PyObject *);
+
+/* CIntFromPy.proto */
static CYTHON_INLINE PCSide __Pyx_PyInt_As_PCSide(PyObject *);
/* CIntFromPy.proto */
@@ -2476,6 +2787,18 @@ static CYTHON_INLINE TSConvergedReason __Pyx_PyInt_As_TSConvergedReason(PyObject
/* CIntFromPy.proto */
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);
+/* FastTypeChecks.proto */
+#if CYTHON_COMPILING_IN_CPYTHON
+#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
+static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
+static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
+static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
+#else
+#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
+#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
+#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2))
+#endif
+
/* CheckBinaryVersion.proto */
static int __Pyx_check_binary_version(void);
@@ -2508,6 +2831,8 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_6Object_get_attr(struct PyPetscObjectO
static PyObject *__pyx_f_8petsc4py_5PETSc_6Object_set_attr(struct PyPetscObjectObject *__pyx_v_self, char *__pyx_v_name, PyObject *__pyx_v_attr); /* proto*/
static PyObject *__pyx_f_8petsc4py_5PETSc_6Object_get_dict(struct PyPetscObjectObject *__pyx_v_self); /* proto*/
+/* Module declarations from 'cython' */
+
/* Module declarations from 'numpy' */
/* Module declarations from 'petsc4py.PETSc' */
@@ -2572,6 +2897,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_str2bytes(PyObject *, co
static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_S_(const char *); /*proto*/
static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_SETERR(int); /*proto*/
static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_CHKERR(int); /*proto*/
+static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toBool(PetscBool); /*proto*/
static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toInt(PetscInt); /*proto*/
static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asInt(PyObject *); /*proto*/
static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toReal(PetscReal); /*proto*/
@@ -2633,7 +2959,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscDelPyDict(void *); /*proto*/
static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject, int); /*proto*/
static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject, char *); /*proto*/
static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject, char *, PyObject *); /*proto*/
-static CYTHON_INLINE long __pyx_f_8petsc4py_5PETSc_Object_toFortran(PetscObject); /*proto*/
+static CYTHON_INLINE Py_intptr_t __pyx_f_8petsc4py_5PETSc_Object_toFortran(PetscObject); /*proto*/
static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM); /*proto*/
static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(PetscObject); /*proto*/
static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *); /*proto*/
@@ -2716,6 +3042,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Function(SNES, Vec, Vec, void *); /*pro
static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES, PetscInt); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES, Vec, Mat, Mat, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES, Vec, PetscReal *, void *); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_SNES_NGS(SNES, Vec, Vec, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES, PetscInt, PetscReal, PetscReal, PetscReal, SNESConvergedReason *, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES, PetscInt, PetscReal, void *); /*proto*/
static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_8petsc4py_5PETSc_ref_TS(TS); /*proto*/
@@ -2723,9 +3050,15 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS, PetscReal, Vec, Vec, void
static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS, PetscReal, Vec, Mat, Mat, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS, PetscReal, Vec, Vec, Vec, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS, PetscReal, Vec, Vec, PetscReal, Mat, Mat, void *); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_TS_I2Function(TS, PetscReal, Vec, Vec, Vec, Vec, void *); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_TS_I2Jacobian(TS, PetscReal, Vec, Vec, Vec, PetscReal, PetscReal, Mat, Mat, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS, PetscInt, PetscReal, Vec, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand(TS, PetscReal, Vec, Vec, void *); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand_DY(TS, PetscReal, Vec, Vec *, void *); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand_DP(TS, PetscReal, Vec, Vec *, void *); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_RHSJacobian(TS, PetscReal, Vec, Mat, void *); /*proto*/
static CYTHON_INLINE struct PyPetscTAOObject *__pyx_f_8petsc4py_5PETSc_ref_TAO(Tao); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_TAO_Objective(Tao, Vec, PetscReal *, void *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective(Tao, Vec, Vec, void *); /*proto*/
@@ -2765,7 +3098,10 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM, MPI_Comm, DM *); /*proto
static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM, MPI_Comm, DM *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM, DM, Mat *, Vec *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM, DM, Mat *); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateRestriction(DM, DM, Mat *); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM, PetscInt *, char ***, IS **, DM **); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateDomainDecomposition(DM, PetscInt *, char ***, IS **, IS **, DM **); /*proto*/
+static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateDomainDecompositionScatters(DM, PetscInt, DM *, VecScatter **, VecScatter **, VecScatter **); /*proto*/
static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM, PetscInt, PetscInt *, IS *, DM *); /*proto*/
static PetscBool __pyx_f_8petsc4py_5PETSc_get_citation(PyObject *); /*proto*/
static PyObject *__pyx_f_8petsc4py_5PETSc_set_citation(PyObject *, int); /*proto*/
@@ -2883,7 +3219,6 @@ static const char __pyx_k_CP[] = "CP";
static const char __pyx_k_CR[] = "CR";
static const char __pyx_k_DA[] = "DA";
static const char __pyx_k_FE[] = "FE";
-static const char __pyx_k_GL[] = "GL";
static const char __pyx_k_IS[] = "IS";
static const char __pyx_k_LU[] = "LU";
static const char __pyx_k_MG[] = "MG";
@@ -2926,6 +3261,7 @@ static const char __pyx_k_sx[] = "sx";
static const char __pyx_k_ua[] = "ua";
static const char __pyx_k_vg[] = "vg";
static const char __pyx_k_vl[] = "vl";
+static const char __pyx_k_vm[] = "vm";
static const char __pyx_k_vn[] = "vn";
static const char __pyx_k_xl[] = "xl";
static const char __pyx_k_xu[] = "xu";
@@ -2968,6 +3304,8 @@ static const char __pyx_k_OWD[] = "OWD";
static const char __pyx_k_QCG[] = "QCG";
static const char __pyx_k_QMD[] = "QMD";
static const char __pyx_k_RCM[] = "RCM";
+static const char __pyx_k_RK3[] = "RK3";
+static const char __pyx_k_RK4[] = "RK4";
static const char __pyx_k_SEQ[] = "SEQ";
static const char __pyx_k_SOR[] = "SOR";
static const char __pyx_k_SPD[] = "SPD";
@@ -2978,6 +3316,7 @@ static const char __pyx_k_VTK[] = "VTK";
static const char __pyx_k_WBM[] = "WBM";
static const char __pyx_k__10[] = "";
static const char __pyx_k__32[] = "\n";
+static const char __pyx_k__33[] = ",";
static const char __pyx_k_a_2[] = "a+";
static const char __pyx_k_all[] = "all";
static const char __pyx_k_app[] = "app";
@@ -2995,6 +3334,8 @@ static const char __pyx_k_idx[] = "idx";
static const char __pyx_k_its[] = "its";
static const char __pyx_k_ksp[] = "ksp";
static const char __pyx_k_mat[] = "mat";
+static const char __pyx_k_msg[] = "msg";
+static const char __pyx_k_ngs[] = "ngs";
static const char __pyx_k_nnz[] = "nnz";
static const char __pyx_k_nsd[] = "nsd";
static const char __pyx_k_nsp[] = "nsp";
@@ -3036,9 +3377,10 @@ static const char __pyx_k_FULL[] = "FULL";
static const char __pyx_k_Free[] = "Free";
static const char __pyx_k_GAMG[] = "GAMG";
static const char __pyx_k_GASM[] = "GASM";
-static const char __pyx_k_GLTR[] = "GLTR";
+static const char __pyx_k_GLLE[] = "GLLE";
static const char __pyx_k_GPCG[] = "GPCG";
static const char __pyx_k_HALF[] = "HALF";
+static const char __pyx_k_HASH[] = "HASH";
static const char __pyx_k_HDF5[] = "HDF5";
static const char __pyx_k_LEFT[] = "LEFT";
static const char __pyx_k_LMVM[] = "LMVM";
@@ -3049,7 +3391,6 @@ static const char __pyx_k_MASK[] = "MASK";
static const char __pyx_k_MFFD[] = "MFFD";
static const char __pyx_k_MOAB[] = "MOAB";
static const char __pyx_k_Mode[] = "Mode";
-static const char __pyx_k_NASH[] = "NASH";
static const char __pyx_k_NASM[] = "NASM";
static const char __pyx_k_NEST[] = "NEST";
static const char __pyx_k_NONE[] = "NONE";
@@ -3057,13 +3398,14 @@ static const char __pyx_k_PFMG[] = "PFMG";
static const char __pyx_k_PLEX[] = "PLEX";
static const char __pyx_k_RAND[] = "RAND";
static const char __pyx_k_READ[] = "READ";
+static const char __pyx_k_RK2A[] = "RK2A";
+static const char __pyx_k_RK5F[] = "RK5F";
static const char __pyx_k_ROSW[] = "ROSW";
static const char __pyx_k_SAME[] = "SAME";
static const char __pyx_k_SAWS[] = "SAWS";
static const char __pyx_k_SELF[] = "SELF";
static const char __pyx_k_SPAI[] = "SPAI";
static const char __pyx_k_STAR[] = "STAR";
-static const char __pyx_k_STCG[] = "STCG";
static const char __pyx_k_Side[] = "Side";
static const char __pyx_k_Size[] = "Size";
static const char __pyx_k_TEST[] = "TEST";
@@ -3083,6 +3425,7 @@ static const char __pyx_k_cols[] = "cols";
static const char __pyx_k_comm[] = "comm";
static const char __pyx_k_cone[] = "cone";
static const char __pyx_k_copy[] = "copy";
+static const char __pyx_k_cost[] = "cost";
static const char __pyx_k_data[] = "data";
static const char __pyx_k_date[] = "date";
static const char __pyx_k_diag[] = "diag";
@@ -3091,6 +3434,7 @@ static const char __pyx_k_drop[] = "drop";
static const char __pyx_k_exit[] = "__exit__";
static const char __pyx_k_fill[] = "fill";
static const char __pyx_k_flag[] = "flag";
+static const char __pyx_k_gsec[] = "gsec";
static const char __pyx_k_gtol[] = "gtol";
static const char __pyx_k_gvec[] = "gvec";
static const char __pyx_k_idxm[] = "idxm";
@@ -3121,6 +3465,7 @@ static const char __pyx_k_none[] = "none";
static const char __pyx_k_norm[] = "norm";
static const char __pyx_k_opts[] = "opts";
static const char __pyx_k_pEnd[] = "pEnd";
+static const char __pyx_k_part[] = "part";
static const char __pyx_k_perm[] = "perm";
static const char __pyx_k_push[] = "push";
static const char __pyx_k_rank[] = "rank";
@@ -3139,6 +3484,7 @@ static const char __pyx_k_step[] = "step";
static const char __pyx_k_stol[] = "stol";
static const char __pyx_k_stop[] = "stop";
static const char __pyx_k_supp[] = "supp";
+static const char __pyx_k_tabs[] = "tabs";
static const char __pyx_k_time[] = "time";
static const char __pyx_k_vecs[] = "vecs";
static const char __pyx_k_view[] = "view";
@@ -3159,7 +3505,6 @@ static const char __pyx_k_BCGSL[] = "BCGSL";
static const char __pyx_k_BLMVM[] = "BLMVM";
static const char __pyx_k_BLOCK[] = "BLOCK";
static const char __pyx_k_BQPIP[] = "BQPIP";
-static const char __pyx_k_BSTRM[] = "BSTRM";
static const char __pyx_k_CHACO[] = "CHACO";
static const char __pyx_k_Class[] = "Class";
static const char __pyx_k_Clone[] = "Clone";
@@ -3182,6 +3527,10 @@ static const char __pyx_k_PARMS[] = "PARMS";
static const char __pyx_k_PATCH[] = "PATCH";
static const char __pyx_k_Print[] = "Print";
static const char __pyx_k_RIGHT[] = "RIGHT";
+static const char __pyx_k_RK1FE[] = "RK1FE";
+static const char __pyx_k_RK3BS[] = "RK3BS";
+static const char __pyx_k_RK5BS[] = "RK5BS";
+static const char __pyx_k_RK5DP[] = "RK5DP";
static const char __pyx_k_Right[] = "Right";
static const char __pyx_k_SBAIJ[] = "SBAIJ";
static const char __pyx_k_SCHUR[] = "SCHUR";
@@ -3255,7 +3604,6 @@ static const char __pyx_k_model[] = "model";
static const char __pyx_k_omega[] = "omega";
static const char __pyx_k_order[] = "order";
static const char __pyx_k_otype[] = "otype";
-static const char __pyx_k_patch[] = "patch";
static const char __pyx_k_petsc[] = "petsc";
static const char __pyx_k_point[] = "point";
static const char __pyx_k_ptype[] = "ptype";
@@ -3295,11 +3643,15 @@ static const char __pyx_k_AOType[] = "AOType";
static const char __pyx_k_APPEND[] = "APPEND";
static const char __pyx_k_BEULER[] = "BEULER";
static const char __pyx_k_BINARY[] = "BINARY";
+static const char __pyx_k_CGGLTR[] = "CGGLTR";
+static const char __pyx_k_CGNASH[] = "CGNASH";
+static const char __pyx_k_CGSTCG[] = "CGSTCG";
static const char __pyx_k_DECIDE[] = "DECIDE";
static const char __pyx_k_DGMRES[] = "DGMRES";
static const char __pyx_k_DMType[] = "DMType";
static const char __pyx_k_EXOTIC[] = "EXOTIC";
static const char __pyx_k_FBCGSR[] = "FBCGSR";
+static const char __pyx_k_FETIDP[] = "FETIDP";
static const char __pyx_k_FGMRES[] = "FGMRES";
static const char __pyx_k_Format[] = "Format";
static const char __pyx_k_INSERT[] = "INSERT";
@@ -3314,7 +3666,6 @@ static const char __pyx_k_MIRROR[] = "MIRROR";
static const char __pyx_k_MPIADJ[] = "MPIADJ";
static const char __pyx_k_MPIAIJ[] = "MPIAIJ";
static const char __pyx_k_NATIVE[] = "NATIVE";
-static const char __pyx_k_NETCDF[] = "NETCDF";
static const char __pyx_k_NGMRES[] = "NGMRES";
static const char __pyx_k_NORMAL[] = "NORMAL";
static const char __pyx_k_NORM_1[] = "NORM_1";
@@ -3328,9 +3679,9 @@ static const char __pyx_k_PIPECR[] = "PIPECR";
static const char __pyx_k_PSEUDO[] = "PSEUDO";
static const char __pyx_k_PYTHON[] = "PYTHON";
static const char __pyx_k_RAND48[] = "RAND48";
+static const char __pyx_k_RKType[] = "RKType";
static const char __pyx_k_Reason[] = "Reason";
static const char __pyx_k_SACUSP[] = "SACUSP";
-static const char __pyx_k_SBSTRM[] = "SBSTRM";
static const char __pyx_k_SEQAIJ[] = "SEQAIJ";
static const char __pyx_k_SFType[] = "SFType";
static const char __pyx_k_SHARED[] = "SHARED";
@@ -3378,12 +3729,12 @@ static const char __pyx_k_length[] = "length";
static const char __pyx_k_levels[] = "levels";
static const char __pyx_k_max_it[] = "max_it";
static const char __pyx_k_memory[] = "memory";
+static const char __pyx_k_metric[] = "metric";
static const char __pyx_k_mgtype[] = "mgtype";
static const char __pyx_k_mirror[] = "mirror";
static const char __pyx_k_module[] = "__module__";
static const char __pyx_k_mpi4py[] = "mpi4py";
static const char __pyx_k_name_2[] = "__name__";
-static const char __pyx_k_ncycle[] = "ncycle";
static const char __pyx_k_newsec[] = "newsec";
static const char __pyx_k_newvec[] = "newvec";
static const char __pyx_k_nlocal[] = "nlocal";
@@ -3444,7 +3795,7 @@ static const char __pyx_k_MAPPING[] = "MAPPING";
static const char __pyx_k_MPIBAIJ[] = "MPIBAIJ";
static const char __pyx_k_MPICUSP[] = "MPICUSP";
static const char __pyx_k_MPIMAIJ[] = "MPIMAIJ";
-static const char __pyx_k_MapType[] = "MapType";
+static const char __pyx_k_MapMode[] = "MapMode";
static const char __pyx_k_MatType[] = "MatType";
static const char __pyx_k_NATURAL[] = "NATURAL";
static const char __pyx_k_NETWORK[] = "NETWORK";
@@ -3536,6 +3887,7 @@ static const char __pyx_k_typestr[] = "typestr";
static const char __pyx_k_useCone[] = "useCone";
static const char __pyx_k_vectors[] = "vectors";
static const char __pyx_k_version[] = "version";
+static const char __pyx_k_xdotdot[] = "xdotdot";
static const char __pyx_k_ADDITIVE[] = "ADDITIVE";
static const char __pyx_k_ADVANCED[] = "ADVANCED";
static const char __pyx_k_AINVCUSP[] = "AINVCUSP";
@@ -3549,6 +3901,7 @@ static const char __pyx_k_FileMode[] = "FileMode";
static const char __pyx_k_GALERKIN[] = "GALERKIN";
static const char __pyx_k_GAMGType[] = "GAMGType";
static const char __pyx_k_GASMType[] = "GASMType";
+static const char __pyx_k_GIT_Date[] = "GIT Date:";
static const char __pyx_k_Get_rank[] = "Get_rank";
static const char __pyx_k_Get_size[] = "Get_size";
static const char __pyx_k_HDF5_VIZ[] = "HDF5_VIZ";
@@ -3559,7 +3912,6 @@ static const char __pyx_k_InfoType[] = "InfoType";
static const char __pyx_k_KACZMARZ[] = "KACZMARZ";
static const char __pyx_k_KeyError[] = "KeyError";
static const char __pyx_k_LOCALREF[] = "LOCALREF";
-static const char __pyx_k_MPIBSTRM[] = "MPIBSTRM";
static const char __pyx_k_MPIDENSE[] = "MPIDENSE";
static const char __pyx_k_MPISBAIJ[] = "MPISBAIJ";
static const char __pyx_k_NEWTONLS[] = "NEWTONLS";
@@ -3576,7 +3928,6 @@ static const char __pyx_k_POUNDERS[] = "POUNDERS";
static const char __pyx_k_RANDER48[] = "RANDER48";
static const char __pyx_k_RESTRICT[] = "RESTRICT";
static const char __pyx_k_RealType[] = "RealType";
-static const char __pyx_k_SEQBSTRM[] = "SEQBSTRM";
static const char __pyx_k_SEQCUFFT[] = "SEQCUFFT";
static const char __pyx_k_SEQDENSE[] = "SEQDENSE";
static const char __pyx_k_SEQSBAIJ[] = "SEQSBAIJ";
@@ -3585,6 +3936,7 @@ static const char __pyx_k_SPECTRAL[] = "SPECTRAL";
static const char __pyx_k_STANDARD[] = "STANDARD";
static const char __pyx_k_STEPOVER[] = "STEPOVER";
static const char __pyx_k_SUNDIALS[] = "SUNDIALS";
+static const char __pyx_k_TSRKType[] = "TSRKType";
static const char __pyx_k_VIENNACL[] = "VIENNACL";
static const char __pyx_k_addFlops[] = "addFlops";
static const char __pyx_k_assembly[] = "assembly";
@@ -3618,12 +3970,12 @@ static const char __pyx_k_jacobian[] = "jacobian";
static const char __pyx_k_ksp_type[] = "ksp_type";
static const char __pyx_k_localsec[] = "localsec";
static const char __pyx_k_logFlops[] = "logFlops";
-static const char __pyx_k_map_type[] = "map_type";
static const char __pyx_k_mat_type[] = "mat_type";
static const char __pyx_k_max_time[] = "max_time";
static const char __pyx_k_mpiabort[] = "mpiabort";
static const char __pyx_k_normtype[] = "normtype";
static const char __pyx_k_nsubcomm[] = "nsubcomm";
+static const char __pyx_k_numFaces[] = "numFaces";
static const char __pyx_k_numProcs[] = "numProcs";
static const char __pyx_k_numcells[] = "numcells";
static const char __pyx_k_only_and[] = "only '==' and '!='";
@@ -3663,14 +4015,14 @@ static const char __pyx_k_EISENSTAT[] = "EISENSTAT";
static const char __pyx_k_ELEMENTAL[] = "ELEMENTAL";
static const char __pyx_k_FROBENIUS[] = "FROBENIUS";
static const char __pyx_k_FULL_SIZE[] = "FULL_SIZE";
-static const char __pyx_k_GLMapType[] = "GLMapType";
+static const char __pyx_k_GLMapMode[] = "GLMapMode";
static const char __pyx_k_HALF_SIZE[] = "HALF_SIZE";
static const char __pyx_k_HERMITIAN[] = "HERMITIAN";
static const char __pyx_k_INSERT_BC[] = "INSERT_BC";
static const char __pyx_k_ITERATING[] = "ITERATING";
+static const char __pyx_k_LGMapType[] = "LGMapType";
static const char __pyx_k_MATCHSTEP[] = "MATCHSTEP";
static const char __pyx_k_MPIAIJCRL[] = "MPIAIJCRL";
-static const char __pyx_k_MPISBSTRM[] = "MPISBSTRM";
static const char __pyx_k_MatOption[] = "MatOption";
static const char __pyx_k_NINFINITY[] = "NINFINITY";
static const char __pyx_k_NONLINEAR[] = "NONLINEAR";
@@ -3680,7 +4032,6 @@ static const char __pyx_k_PINFINITY[] = "PINFINITY";
static const char __pyx_k_REDUNDANT[] = "REDUNDANT";
static const char __pyx_k_ROWLENGTH[] = "ROWLENGTH";
static const char __pyx_k_SEQAIJCRL[] = "SEQAIJCRL";
-static const char __pyx_k_SEQSBSTRM[] = "SEQSBSTRM";
static const char __pyx_k_SUBMATRIX[] = "SUBMATRIX";
static const char __pyx_k_SUBSET_NZ[] = "SUBSET_NZ";
static const char __pyx_k_SYMMETRIC[] = "SYMMETRIC";
@@ -3708,6 +4059,7 @@ static const char __pyx_k_getString[] = "getString";
static const char __pyx_k_globalsec[] = "globalsec";
static const char __pyx_k_hypretype[] = "hypretype";
static const char __pyx_k_infoAllow[] = "infoAllow";
+static const char __pyx_k_labelName[] = "labelName";
static const char __pyx_k_max_fails[] = "max_fails";
static const char __pyx_k_max_funcs[] = "max_funcs";
static const char __pyx_k_max_steps[] = "max_steps";
@@ -3719,6 +4071,7 @@ static const char __pyx_k_numFields[] = "numFields";
static const char __pyx_k_objective[] = "objective";
static const char __pyx_k_operators[] = "operators";
static const char __pyx_k_part_type[] = "part_type";
+static const char __pyx_k_rfunction[] = "rfunction";
static const char __pyx_k_row_bsize[] = "row_bsize";
static const char __pyx_k_separable[] = "separable";
static const char __pyx_k_setActive[] = "setActive";
@@ -3771,6 +4124,7 @@ static const char __pyx_k_begin_args[] = "begin_args";
static const char __pyx_k_block_size[] = "block_size";
static const char __pyx_k_compressed[] = "compressed";
static const char __pyx_k_createVecs[] = "createVecs";
+static const char __pyx_k_cycle_type[] = "cycle_type";
static const char __pyx_k_empty_name[] = "empty name";
static const char __pyx_k_errhandler[] = "errhandler";
static const char __pyx_k_getCPUTime[] = "getCPUTime";
@@ -3784,6 +4138,7 @@ static const char __pyx_k_getVersion[] = "getVersion";
static const char __pyx_k_getVisible[] = "getVisible";
static const char __pyx_k_initialize[] = "_initialize";
static const char __pyx_k_isIdentity[] = "isIdentity";
+static const char __pyx_k_lgmap_type[] = "lgmap_type";
static const char __pyx_k_linear_its[] = "linear_its";
static const char __pyx_k_mpi4py_MPI[] = "mpi4py.MPI";
static const char __pyx_k_proc_sizes[] = "proc_sizes";
@@ -3793,6 +4148,7 @@ static const char __pyx_k_setMaxTime[] = "setMaxTime";
static const char __pyx_k_setVisible[] = "setVisible";
static const char __pyx_k_shift_type[] = "shift_type";
static const char __pyx_k_startswith[] = "startswith";
+static const char __pyx_k_useAnchors[] = "useAnchors";
static const char __pyx_k_useClosure[] = "useClosure";
static const char __pyx_k_AIJCUSPARSE[] = "AIJCUSPARSE";
static const char __pyx_k_AIJVIENNACL[] = "AIJVIENNACL";
@@ -3809,6 +4165,7 @@ static const char __pyx_k_HYPRESTRUCT[] = "HYPRESTRUCT";
static const char __pyx_k_INTERPOLATE[] = "INTERPOLATE";
static const char __pyx_k_KSPNormType[] = "KSPNormType";
static const char __pyx_k_MATHEMATICA[] = "MATHEMATICA";
+static const char __pyx_k_MGCycleType[] = "MGCycleType";
static const char __pyx_k_MPIVIENNACL[] = "MPIVIENNACL";
static const char __pyx_k_MatInfoType[] = "MatInfoType";
static const char __pyx_k_MemoryError[] = "MemoryError";
@@ -3889,6 +4246,8 @@ static const char __pyx_k_VINEWTONSSLS[] = "VINEWTONSSLS";
static const char __pyx_k_ViewerFormat[] = "ViewerFormat";
static const char __pyx_k_createMatrix[] = "createMatrix";
static const char __pyx_k_create_subdm[] = "create_subdm";
+static const char __pyx_k_drdpfunction[] = "drdpfunction";
+static const char __pyx_k_drdyfunction[] = "drdyfunction";
static const char __pyx_k_error_code_d[] = "error code %d";
static const char __pyx_k_getActiveAll[] = "getActiveAll";
static const char __pyx_k_getBlockInfo[] = "getBlockInfo";
@@ -3898,7 +4257,6 @@ static const char __pyx_k_getDimension[] = "getDimension";
static const char __pyx_k_getLocalSize[] = "getLocalSize";
static const char __pyx_k_getOperators[] = "getOperators";
static const char __pyx_k_getProcSizes[] = "getProcSizes";
-static const char __pyx_k_initial_time[] = "initial_time";
static const char __pyx_k_initialguess[] = "initialguess";
static const char __pyx_k_nz_allocated[] = "nz_allocated";
static const char __pyx_k_setActiveAll[] = "setActiveAll";
@@ -3918,11 +4276,13 @@ static const char __pyx_k_FORWARD_SWEEP[] = "FORWARD_SWEEP";
static const char __pyx_k_INSERT_VALUES[] = "INSERT_VALUES";
static const char __pyx_k_NEW_DIAGONALS[] = "NEW_DIAGONALS";
static const char __pyx_k_NORM_INFINITY[] = "NORM_INFINITY";
+static const char __pyx_k_PCMGCycleType[] = "PCMGCycleType";
static const char __pyx_k_PETSc_Error_d[] = "PETSc.Error(%d)";
static const char __pyx_k_REVERSE_LOCAL[] = "REVERSE_LOCAL";
static const char __pyx_k_SCATTER_LOCAL[] = "SCATTER_LOCAL";
static const char __pyx_k_SchurFactType[] = "SchurFactType";
static const char __pyx_k_TSProblemType[] = "TSProblemType";
+static const char __pyx_k_adjoint_steps[] = "adjoint_steps";
static const char __pyx_k_boundary_type[] = "boundary_type";
static const char __pyx_k_createVecLeft[] = "createVecLeft";
static const char __pyx_k_create_matrix[] = "create_matrix";
@@ -4000,16 +4360,20 @@ static const char __pyx_k_MatOrderingType[] = "MatOrderingType";
static const char __pyx_k_NORMALHERMITIAN[] = "NORMALHERMITIAN";
static const char __pyx_k_NORM_FINAL_ONLY[] = "NORM_FINAL_ONLY";
static const char __pyx_k_PCCompositeType[] = "PCCompositeType";
+static const char __pyx_k_PETSc_Error_pyx[] = "PETSc/Error.pyx";
+static const char __pyx_k_PETSc_PETSc_pyx[] = "PETSc/PETSc.pyx";
static const char __pyx_k_PartitionerType[] = "PartitionerType";
static const char __pyx_k_SCATTER_FORWARD[] = "SCATTER_FORWARD";
static const char __pyx_k_SCATTER_REVERSE[] = "SCATTER_REVERSE";
static const char __pyx_k_SCHURCOMPLEMENT[] = "SCHURCOMPLEMENT";
+static const char __pyx_k_adjointjacobian[] = "adjointjacobian";
static const char __pyx_k_array_interface[] = "__array_interface__";
static const char __pyx_k_coneOrientation[] = "coneOrientation";
static const char __pyx_k_createGlobalVec[] = "createGlobalVec";
static const char __pyx_k_getBlockIndices[] = "getBlockIndices";
static const char __pyx_k_getBoundaryType[] = "getBoundaryType";
static const char __pyx_k_getEquationType[] = "getEquationType";
+static const char __pyx_k_getFunctionNorm[] = "getFunctionNorm";
static const char __pyx_k_getGhostCorners[] = "getGhostCorners";
static const char __pyx_k_getResidualNorm[] = "getResidualNorm";
static const char __pyx_k_getSolutionNorm[] = "getSolutionNorm";
@@ -4020,6 +4384,7 @@ static const char __pyx_k_popErrorHandler[] = "popErrorHandler";
static const char __pyx_k_prefix_s_name_s[] = "(prefix:%s, name:%s)";
static const char __pyx_k_refinementLimit[] = "refinementLimit";
static const char __pyx_k_setEquationType[] = "setEquationType";
+static const char __pyx_k_setFunctionNorm[] = "setFunctionNorm";
static const char __pyx_k_setResidualNorm[] = "setResidualNorm";
static const char __pyx_k_ASCII_VTK_COORDS[] = "ASCII_VTK_COORDS";
static const char __pyx_k_INSERT_BC_VALUES[] = "INSERT_BC_VALUES";
@@ -4034,6 +4399,7 @@ static const char __pyx_k_fill_ratio_given[] = "fill_ratio_given";
static const char __pyx_k_getFunctionValue[] = "getFunctionValue";
static const char __pyx_k_getOptionsPrefix[] = "getOptionsPrefix";
static const char __pyx_k_ownership_ranges[] = "ownership_ranges";
+static const char __pyx_k_popSignalHandler[] = "popSignalHandler";
static const char __pyx_k_pushErrorHandler[] = "pushErrorHandler";
static const char __pyx_k_registerCitation[] = "registerCitation";
static const char __pyx_k_setOptionsPrefix[] = "setOptionsPrefix";
@@ -4053,7 +4419,6 @@ static const char __pyx_k_getMaxKSPFailures[] = "getMaxKSPFailures";
static const char __pyx_k_getObjectiveValue[] = "getObjectiveValue";
static const char __pyx_k_getOwnershipRange[] = "getOwnershipRange";
static const char __pyx_k_getSolutionUpdate[] = "getSolutionUpdate";
-static const char __pyx_k_initial_time_step[] = "initial_time_step";
static const char __pyx_k_null_communicator[] = "null communicator";
static const char __pyx_k_positive_definite[] = "positive_definite";
static const char __pyx_k_refinementUniform[] = "refinementUniform";
@@ -4071,7 +4436,9 @@ static const char __pyx_k_MatFactorShiftType[] = "MatFactorShiftType";
static const char __pyx_k_TAOConvergedReason[] = "TAOConvergedReason";
static const char __pyx_k_ZERO_INITIAL_GUESS[] = "ZERO_INITIAL_GUESS";
static const char __pyx_k_block_size_not_set[] = "block size not set";
+static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_createGlobalVector[] = "createGlobalVector";
+static const char __pyx_k_create_restriction[] = "create_restriction";
static const char __pyx_k_getConvergedReason[] = "getConvergedReason";
static const char __pyx_k_getIterationNumber[] = "getIterationNumber";
static const char __pyx_k_getMaxStepFailures[] = "getMaxStepFailures";
@@ -4190,7 +4557,6 @@ static const char __pyx_k_Invalid_mode_expected_rw_r_or_w[] = "Invalid mode: exp
static const char __pyx_k_Portable_Extensible_Toolkit_for[] = "\nPortable, Extensible Toolkit for Scientific Computation\n";
static const char __pyx_k_bcPoints_is_a_required_argument[] = "bcPoints is a required argument";
static const char __pyx_k_cannot_place_input_array_size_d[] = "cannot place input array size %d, vector size %d";
-static const char __pyx_k_home_devel_petsc4py_3_7_0_src_P[] = "/home/devel/petsc4py-3.7.0/src/PETSc/Error.pyx";
static const char __pyx_k_key_d_cannot_register_s_already[] = "key: %d, cannot register: %s, already registered: %s";
static const char __pyx_k_size_array_is_d_expected_dx_d_d[] = "size(array) is %d, expected %dx%d=%d";
static const char __pyx_k_Given_d_column_indices_but_d_non[] = "Given %d column indices but %d non-zero values";
@@ -4219,7 +4585,6 @@ static const char __pyx_k_ownership_range_size_d_and_numbe[] = "ownership range
static const char __pyx_k_row_indices_must_have_two_dimens[] = "row indices must have two dimensions: rows.ndim=%d";
static const char __pyx_k_sizes_array_should_have_d_entrie[] = "sizes array should have %d entries (has %d)";
static const char __pyx_k_values_must_have_two_or_more_dim[] = "values must have two or more dimensions: vals.ndim=%d";
-static const char __pyx_k_home_devel_petsc4py_3_7_0_src_P_2[] = "/home/devel/petsc4py-3.7.0/src/PETSc/PETSc.pyx";
static const char __pyx_k_incompatible_array_sizes_ni_d_nv_2[] = "incompatible array sizes: ni=%d, nv=%d";
static PyObject *__pyx_n_s_A;
static PyObject *__pyx_n_s_A11;
@@ -4300,15 +4665,17 @@ static PyObject *__pyx_n_s_BLOCKMAT;
static PyObject *__pyx_n_s_BMRM;
static PyObject *__pyx_n_s_BOX;
static PyObject *__pyx_n_s_BQPIP;
-static PyObject *__pyx_n_s_BSTRM;
static PyObject *__pyx_n_s_Barrier;
static PyObject *__pyx_n_s_BoundaryType;
static PyObject *__pyx_n_s_C;
static PyObject *__pyx_n_s_CARTESIAN;
static PyObject *__pyx_n_s_CG;
+static PyObject *__pyx_n_s_CGGLTR;
static PyObject *__pyx_n_s_CGLS;
+static PyObject *__pyx_n_s_CGNASH;
static PyObject *__pyx_n_s_CGNE;
static PyObject *__pyx_n_s_CGS;
+static PyObject *__pyx_n_s_CGSTCG;
static PyObject *__pyx_n_s_CHACO;
static PyObject *__pyx_n_s_CHEBYSHEV;
static PyObject *__pyx_n_s_CHOLESKY;
@@ -4429,6 +4796,7 @@ static PyObject *__pyx_n_s_FBCGS;
static PyObject *__pyx_n_s_FBCGSR;
static PyObject *__pyx_n_s_FCG;
static PyObject *__pyx_n_s_FE;
+static PyObject *__pyx_n_s_FETIDP;
static PyObject *__pyx_n_s_FFT;
static PyObject *__pyx_n_s_FFTW;
static PyObject *__pyx_n_s_FGMRES;
@@ -4459,11 +4827,11 @@ static PyObject *__pyx_n_s_GENERAL;
static PyObject *__pyx_n_s_GEO;
static PyObject *__pyx_n_s_GETROW_UPPERTRIANGULAR;
static PyObject *__pyx_n_s_GHOSTED;
-static PyObject *__pyx_n_s_GL;
-static PyObject *__pyx_n_s_GLMapType;
+static PyObject *__pyx_kp_s_GIT_Date;
+static PyObject *__pyx_n_s_GLLE;
+static PyObject *__pyx_n_s_GLMapMode;
static PyObject *__pyx_n_s_GLOBAL_MAX;
static PyObject *__pyx_n_s_GLOBAL_SUM;
-static PyObject *__pyx_n_s_GLTR;
static PyObject *__pyx_n_s_GMRES;
static PyObject *__pyx_n_s_GPCG;
static PyObject *__pyx_n_s_GROPPCG;
@@ -4473,6 +4841,7 @@ static PyObject *__pyx_kp_s_Given_d_column_indices_but_d_non;
static PyObject *__pyx_n_s_H;
static PyObject *__pyx_n_s_HALF;
static PyObject *__pyx_n_s_HALF_SIZE;
+static PyObject *__pyx_n_s_HASH;
static PyObject *__pyx_n_s_HDF5;
static PyObject *__pyx_n_s_HDF5_VIZ;
static PyObject *__pyx_n_s_HERMITIAN;
@@ -4526,6 +4895,7 @@ static PyObject *__pyx_n_s_LCD;
static PyObject *__pyx_n_s_LCL;
static PyObject *__pyx_n_s_LEFT;
static PyObject *__pyx_n_s_LGMRES;
+static PyObject *__pyx_n_s_LGMapType;
static PyObject *__pyx_n_s_LINEAR;
static PyObject *__pyx_n_s_LMVM;
static PyObject *__pyx_n_s_LOCAL;
@@ -4551,6 +4921,7 @@ static PyObject *__pyx_n_s_MAX_VALUES;
static PyObject *__pyx_n_s_MEMORYSCALABLE;
static PyObject *__pyx_n_s_MFFD;
static PyObject *__pyx_n_s_MG;
+static PyObject *__pyx_n_s_MGCycleType;
static PyObject *__pyx_n_s_MGType;
static PyObject *__pyx_n_s_MIMEX;
static PyObject *__pyx_n_s_MINRES;
@@ -4566,16 +4937,14 @@ static PyObject *__pyx_n_s_MPIAIJCUSPARSE;
static PyObject *__pyx_n_s_MPIAIJPERM;
static PyObject *__pyx_n_s_MPIAIJVIENNACL;
static PyObject *__pyx_n_s_MPIBAIJ;
-static PyObject *__pyx_n_s_MPIBSTRM;
static PyObject *__pyx_n_s_MPICUSP;
static PyObject *__pyx_n_s_MPIDENSE;
static PyObject *__pyx_n_s_MPIMAIJ;
static PyObject *__pyx_n_s_MPISBAIJ;
-static PyObject *__pyx_n_s_MPISBSTRM;
static PyObject *__pyx_n_s_MPIVIENNACL;
static PyObject *__pyx_n_s_MS;
static PyObject *__pyx_n_s_MULTIPLICATIVE;
-static PyObject *__pyx_n_s_MapType;
+static PyObject *__pyx_n_s_MapMode;
static PyObject *__pyx_n_s_MatAssemblyType;
static PyObject *__pyx_n_s_MatFactorShiftType;
static PyObject *__pyx_n_s_MatInfoType;
@@ -4591,14 +4960,12 @@ static PyObject *__pyx_kp_s_Must_provide_both_sizes_and_poin;
static PyObject *__pyx_n_s_N1;
static PyObject *__pyx_n_s_N12;
static PyObject *__pyx_n_s_N2;
-static PyObject *__pyx_n_s_NASH;
static PyObject *__pyx_n_s_NASM;
static PyObject *__pyx_n_s_NATIVE;
static PyObject *__pyx_n_s_NATURAL;
static PyObject *__pyx_n_s_NCG;
static PyObject *__pyx_n_s_ND;
static PyObject *__pyx_n_s_NEST;
-static PyObject *__pyx_n_s_NETCDF;
static PyObject *__pyx_n_s_NETWORK;
static PyObject *__pyx_n_s_NEWTONLS;
static PyObject *__pyx_n_s_NEWTONTR;
@@ -4666,12 +5033,15 @@ static PyObject *__pyx_n_s_PCFieldSplitSchurFactType;
static PyObject *__pyx_n_s_PCFieldSplitSchurPreType;
static PyObject *__pyx_n_s_PCGAMGType;
static PyObject *__pyx_n_s_PCGASMType;
+static PyObject *__pyx_n_s_PCMGCycleType;
static PyObject *__pyx_n_s_PCMGType;
static PyObject *__pyx_n_s_PCSide;
static PyObject *__pyx_n_s_PCType;
static PyObject *__pyx_n_s_PD;
static PyObject *__pyx_n_s_PERIODIC;
static PyObject *__pyx_kp_s_PETSc_Error_d;
+static PyObject *__pyx_kp_s_PETSc_Error_pyx;
+static PyObject *__pyx_kp_s_PETSc_PETSc_pyx;
static PyObject *__pyx_n_s_PFMG;
static PyObject *__pyx_n_s_PGMRES;
static PyObject *__pyx_n_s_PINFINITY;
@@ -4714,6 +5084,15 @@ static PyObject *__pyx_n_s_REVERSE_LOCAL;
static PyObject *__pyx_n_s_RICHARDSON;
static PyObject *__pyx_n_s_RIGHT;
static PyObject *__pyx_n_s_RK;
+static PyObject *__pyx_n_s_RK1FE;
+static PyObject *__pyx_n_s_RK2A;
+static PyObject *__pyx_n_s_RK3;
+static PyObject *__pyx_n_s_RK3BS;
+static PyObject *__pyx_n_s_RK4;
+static PyObject *__pyx_n_s_RK5BS;
+static PyObject *__pyx_n_s_RK5DP;
+static PyObject *__pyx_n_s_RK5F;
+static PyObject *__pyx_n_s_RKType;
static PyObject *__pyx_n_s_ROSW;
static PyObject *__pyx_n_s_ROWLENGTH;
static PyObject *__pyx_n_s_ROW_ORIENTED;
@@ -4731,7 +5110,6 @@ static PyObject *__pyx_n_s_SAME_NONZERO_PATTERN;
static PyObject *__pyx_n_s_SAME_NZ;
static PyObject *__pyx_n_s_SAWS;
static PyObject *__pyx_n_s_SBAIJ;
-static PyObject *__pyx_n_s_SBSTRM;
static PyObject *__pyx_n_s_SCATTER;
static PyObject *__pyx_n_s_SCATTER_FORWARD;
static PyObject *__pyx_n_s_SCATTER_FORWARD_LOCAL;
@@ -4750,13 +5128,11 @@ static PyObject *__pyx_n_s_SEQAIJCUSPARSE;
static PyObject *__pyx_n_s_SEQAIJPERM;
static PyObject *__pyx_n_s_SEQAIJVIENNACL;
static PyObject *__pyx_n_s_SEQBAIJ;
-static PyObject *__pyx_n_s_SEQBSTRM;
static PyObject *__pyx_n_s_SEQCUFFT;
static PyObject *__pyx_n_s_SEQCUSP;
static PyObject *__pyx_n_s_SEQDENSE;
static PyObject *__pyx_n_s_SEQMAIJ;
static PyObject *__pyx_n_s_SEQSBAIJ;
-static PyObject *__pyx_n_s_SEQSBSTRM;
static PyObject *__pyx_n_s_SEQVIENNACL;
static PyObject *__pyx_n_s_SFType;
static PyObject *__pyx_n_s_SHARED;
@@ -4778,7 +5154,6 @@ static PyObject *__pyx_n_s_SSILS;
static PyObject *__pyx_n_s_SSP;
static PyObject *__pyx_n_s_STANDARD;
static PyObject *__pyx_n_s_STAR;
-static PyObject *__pyx_n_s_STCG;
static PyObject *__pyx_n_s_STDERR;
static PyObject *__pyx_n_s_STDOUT;
static PyObject *__pyx_n_s_STEPOVER;
@@ -4829,6 +5204,7 @@ static PyObject *__pyx_n_s_TSEquationType;
static PyObject *__pyx_n_s_TSExactFinalTime;
static PyObject *__pyx_n_s_TSIRM;
static PyObject *__pyx_n_s_TSProblemType;
+static PyObject *__pyx_n_s_TSRKType;
static PyObject *__pyx_n_s_TSType;
static PyObject *__pyx_n_s_TWIST;
static PyObject *__pyx_n_s_Type;
@@ -4867,6 +5243,7 @@ static PyObject *__pyx_n_s_ZERO_INITIAL_GUESS;
static PyObject *__pyx_kp_s__10;
static PyObject *__pyx_kp_s__2;
static PyObject *__pyx_kp_s__32;
+static PyObject *__pyx_kp_s__33;
static PyObject *__pyx_kp_b__5;
static PyObject *__pyx_kp_s__5;
static PyObject *__pyx_n_s_a;
@@ -4875,6 +5252,8 @@ static PyObject *__pyx_n_s_abort;
static PyObject *__pyx_kp_s_accessing_non_existent_buffer_se;
static PyObject *__pyx_n_s_addFlops;
static PyObject *__pyx_n_s_addv;
+static PyObject *__pyx_n_s_adjoint_steps;
+static PyObject *__pyx_n_s_adjointjacobian;
static PyObject *__pyx_n_s_all;
static PyObject *__pyx_n_s_alpha;
static PyObject *__pyx_n_s_alpha2;
@@ -4929,6 +5308,7 @@ static PyObject *__pyx_kp_s_cell_indices_must_have_two_dimen;
static PyObject *__pyx_n_s_cells;
static PyObject *__pyx_n_s_cgid;
static PyObject *__pyx_n_s_citation;
+static PyObject *__pyx_n_s_cline_in_traceback;
static PyObject *__pyx_n_s_cmap;
static PyObject *__pyx_n_s_coarsen;
static PyObject *__pyx_n_s_col;
@@ -4953,6 +5333,7 @@ static PyObject *__pyx_kp_s_coordinates_must_have_two_dimens;
static PyObject *__pyx_n_s_coords;
static PyObject *__pyx_kp_s_coords_vertices_must_have_two_di;
static PyObject *__pyx_n_s_copy;
+static PyObject *__pyx_n_s_cost;
static PyObject *__pyx_n_s_count;
static PyObject *__pyx_n_s_crank;
static PyObject *__pyx_n_s_createGlobalVec;
@@ -4972,11 +5353,13 @@ static PyObject *__pyx_n_s_create_injection;
static PyObject *__pyx_n_s_create_interpolation;
static PyObject *__pyx_n_s_create_lvec;
static PyObject *__pyx_n_s_create_matrix;
+static PyObject *__pyx_n_s_create_restriction;
static PyObject *__pyx_n_s_create_subdm;
static PyObject *__pyx_n_s_crtol;
static PyObject *__pyx_n_s_csize;
static PyObject *__pyx_n_s_csr;
static PyObject *__pyx_n_s_ctype;
+static PyObject *__pyx_n_s_cycle_type;
static PyObject *__pyx_kp_s_d_s;
static PyObject *__pyx_n_s_da;
static PyObject *__pyx_n_s_data;
@@ -5000,6 +5383,8 @@ static PyObject *__pyx_n_s_dm;
static PyObject *__pyx_n_s_dm_type;
static PyObject *__pyx_n_s_doc;
static PyObject *__pyx_n_s_dof;
+static PyObject *__pyx_n_s_drdpfunction;
+static PyObject *__pyx_n_s_drdyfunction;
static PyObject *__pyx_n_s_drop;
static PyObject *__pyx_n_s_dt;
static PyObject *__pyx_n_s_dtcol;
@@ -5074,6 +5459,7 @@ static PyObject *__pyx_n_s_getDimension;
static PyObject *__pyx_n_s_getDof;
static PyObject *__pyx_n_s_getEquationType;
static PyObject *__pyx_n_s_getFlops;
+static PyObject *__pyx_n_s_getFunctionNorm;
static PyObject *__pyx_n_s_getFunctionTolerances;
static PyObject *__pyx_n_s_getFunctionValue;
static PyObject *__pyx_n_s_getGhostCorners;
@@ -5153,6 +5539,7 @@ static PyObject *__pyx_n_s_globalsec;
static PyObject *__pyx_n_s_gradient;
static PyObject *__pyx_n_s_group;
static PyObject *__pyx_n_s_grtol;
+static PyObject *__pyx_n_s_gsec;
static PyObject *__pyx_n_s_gtol;
static PyObject *__pyx_n_s_gttol;
static PyObject *__pyx_n_s_gv;
@@ -5162,8 +5549,6 @@ static PyObject *__pyx_n_s_hasLabel;
static PyObject *__pyx_n_s_hasLagrange;
static PyObject *__pyx_n_s_hasName;
static PyObject *__pyx_n_s_hessian;
-static PyObject *__pyx_kp_s_home_devel_petsc4py_3_7_0_src_P;
-static PyObject *__pyx_kp_s_home_devel_petsc4py_3_7_0_src_P_2;
static PyObject *__pyx_n_s_hypretype;
static PyObject *__pyx_n_s_icntl;
static PyObject *__pyx_n_s_idx;
@@ -5185,8 +5570,6 @@ static PyObject *__pyx_n_s_indices;
static PyObject *__pyx_n_s_info;
static PyObject *__pyx_n_s_infoAllow;
static PyObject *__pyx_n_s_init;
-static PyObject *__pyx_n_s_initial_time;
-static PyObject *__pyx_n_s_initial_time_step;
static PyObject *__pyx_n_s_initialguess;
static PyObject *__pyx_n_s_initialize;
static PyObject *__pyx_kp_s_input_arrays_have_incompatible_s;
@@ -5230,11 +5613,13 @@ static PyObject *__pyx_n_s_ksp;
static PyObject *__pyx_n_s_ksp_type;
static PyObject *__pyx_n_s_l;
static PyObject *__pyx_n_s_label;
+static PyObject *__pyx_n_s_labelName;
static PyObject *__pyx_n_s_left;
static PyObject *__pyx_n_s_length;
static PyObject *__pyx_n_s_level;
static PyObject *__pyx_n_s_levels;
static PyObject *__pyx_n_s_lgmap;
+static PyObject *__pyx_n_s_lgmap_type;
static PyObject *__pyx_n_s_linear_its;
static PyObject *__pyx_n_s_lits;
static PyObject *__pyx_n_s_local;
@@ -5251,7 +5636,6 @@ static PyObject *__pyx_n_s_lvecs;
static PyObject *__pyx_n_s_main;
static PyObject *__pyx_n_s_major;
static PyObject *__pyx_n_s_mallocs;
-static PyObject *__pyx_n_s_map_type;
static PyObject *__pyx_n_s_mat;
static PyObject *__pyx_n_s_matMult;
static PyObject *__pyx_n_s_mat_type;
@@ -5265,6 +5649,7 @@ static PyObject *__pyx_n_s_memo;
static PyObject *__pyx_n_s_memory;
static PyObject *__pyx_n_s_messageLength;
static PyObject *__pyx_n_s_metaclass;
+static PyObject *__pyx_n_s_metric;
static PyObject *__pyx_n_s_mgtype;
static PyObject *__pyx_n_s_minor;
static PyObject *__pyx_n_s_mirror;
@@ -5275,14 +5660,15 @@ static PyObject *__pyx_n_s_monitor;
static PyObject *__pyx_n_s_mpi4py;
static PyObject *__pyx_kp_s_mpi4py_MPI;
static PyObject *__pyx_n_s_mpiabort;
+static PyObject *__pyx_n_s_msg;
static PyObject *__pyx_n_s_mult;
static PyObject *__pyx_n_s_n;
static PyObject *__pyx_n_s_na;
static PyObject *__pyx_n_s_name;
static PyObject *__pyx_n_s_name_2;
-static PyObject *__pyx_n_s_ncycle;
static PyObject *__pyx_n_s_newsec;
static PyObject *__pyx_n_s_newvec;
+static PyObject *__pyx_n_s_ngs;
static PyObject *__pyx_n_s_nleaves;
static PyObject *__pyx_n_s_nlevels;
static PyObject *__pyx_n_s_nlocal;
@@ -5303,6 +5689,7 @@ static PyObject *__pyx_n_s_nsubcomm;
static PyObject *__pyx_kp_s_null_communicator;
static PyObject *__pyx_n_s_numComp;
static PyObject *__pyx_n_s_numDof;
+static PyObject *__pyx_n_s_numFaces;
static PyObject *__pyx_n_s_numFields;
static PyObject *__pyx_n_s_numMessages;
static PyObject *__pyx_n_s_numProcs;
@@ -5342,8 +5729,8 @@ static PyObject *__pyx_n_s_p1;
static PyObject *__pyx_n_s_pEnd;
static PyObject *__pyx_n_s_pStart;
static PyObject *__pyx_n_s_parent;
+static PyObject *__pyx_n_s_part;
static PyObject *__pyx_n_s_part_type;
-static PyObject *__pyx_n_s_patch;
static PyObject *__pyx_n_s_pc;
static PyObject *__pyx_n_s_pc_type;
static PyObject *__pyx_n_s_pd;
@@ -5355,6 +5742,7 @@ static PyObject *__pyx_n_s_point;
static PyObject *__pyx_n_s_points;
static PyObject *__pyx_n_s_pop;
static PyObject *__pyx_n_s_popErrorHandler;
+static PyObject *__pyx_n_s_popSignalHandler;
static PyObject *__pyx_n_s_position;
static PyObject *__pyx_n_s_positive_definite;
static PyObject *__pyx_n_s_poststep;
@@ -5402,6 +5790,7 @@ static PyObject *__pyx_n_s_restart;
static PyObject *__pyx_n_s_result;
static PyObject *__pyx_n_s_reuse;
static PyObject *__pyx_n_s_reverse;
+static PyObject *__pyx_n_s_rfunction;
static PyObject *__pyx_n_s_rhs;
static PyObject *__pyx_n_s_right;
static PyObject *__pyx_n_s_rmap;
@@ -5437,6 +5826,7 @@ static PyObject *__pyx_n_s_setDefaultComm;
static PyObject *__pyx_n_s_setDiagonal;
static PyObject *__pyx_n_s_setDimension;
static PyObject *__pyx_n_s_setEquationType;
+static PyObject *__pyx_n_s_setFunctionNorm;
static PyObject *__pyx_n_s_setFunctionTolerances;
static PyObject *__pyx_n_s_setInitialGuessKnoll;
static PyObject *__pyx_n_s_setInitialGuessNonzero;
@@ -5527,6 +5917,7 @@ static PyObject *__pyx_n_s_syncFlush;
static PyObject *__pyx_n_s_syncPrint;
static PyObject *__pyx_n_s_t;
static PyObject *__pyx_n_s_tab;
+static PyObject *__pyx_n_s_tabs;
static PyObject *__pyx_n_s_tao_type;
static PyObject *__pyx_n_s_tbline;
static PyObject *__pyx_n_s_tblist;
@@ -5558,6 +5949,7 @@ static PyObject *__pyx_kp_s_unknown_shift_type_s;
static PyObject *__pyx_kp_s_unknown_stencil_type_s;
static PyObject *__pyx_n_s_update;
static PyObject *__pyx_n_s_upper;
+static PyObject *__pyx_n_s_useAnchors;
static PyObject *__pyx_n_s_useClosure;
static PyObject *__pyx_n_s_useCone;
static PyObject *__pyx_n_s_v;
@@ -5578,6 +5970,7 @@ static PyObject *__pyx_n_s_view;
static PyObject *__pyx_n_s_viewer;
static PyObject *__pyx_n_s_vl;
static PyObject *__pyx_n_s_vlg;
+static PyObject *__pyx_n_s_vm;
static PyObject *__pyx_n_s_vn;
static PyObject *__pyx_n_s_vwr_type;
static PyObject *__pyx_n_s_w;
@@ -5585,6 +5978,7 @@ static PyObject *__pyx_kp_s_w_2;
static PyObject *__pyx_n_s_width;
static PyObject *__pyx_n_s_x;
static PyObject *__pyx_n_s_xdot;
+static PyObject *__pyx_n_s_xdotdot;
static PyObject *__pyx_n_s_xl;
static PyObject *__pyx_n_s_xmax;
static PyObject *__pyx_n_s_xmin;
@@ -5680,8 +6074,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_36getReal(struct __pyx_obj_8
static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_38getScalar(struct __pyx_obj_8petsc4py_5PETSc_Options *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_default); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_40getString(struct __pyx_obj_8petsc4py_5PETSc_Options *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_default); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_42getAll(struct __pyx_obj_8petsc4py_5PETSc_Options *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_patch, PyObject *__pyx_v_devel, PyObject *__pyx_v_date, PyObject *__pyx_v_author); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_2getVersionInfo(CYTHON_UNUSED PyTypeObject *__pyx_v_cls); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_devel, PyObject *__pyx_v_date, PyObject *__pyx_v_author); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_2getVersionInfo(PyTypeObject *__pyx_v_cls); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_4isInitialized(CYTHON_UNUSED PyTypeObject *__pyx_v_cls); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_6isFinalized(CYTHON_UNUSED PyTypeObject *__pyx_v_cls); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_8getDefaultComm(CYTHON_UNUSED PyTypeObject *__pyx_v_cls); /* proto */
@@ -5693,8 +6087,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_20sleep(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_seconds); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_errhandler); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_24popErrorHandler(CYTHON_UNUSED PyTypeObject *__pyx_v_cls); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26infoAllow(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_flag); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_28registerCitation(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_citation); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26popSignalHandler(CYTHON_UNUSED PyTypeObject *__pyx_v_cls); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_28infoAllow(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_flag); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_30registerCitation(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_citation); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_Stage(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_2Class(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_name); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_4Event(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_name, PyObject *__pyx_v_klass); /* proto */
@@ -5786,23 +6181,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_16getType(struct PyPetscObjec
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_18setOptionsPrefix(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_prefix); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_20getOptionsPrefix(struct PyPetscObjectObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_22setFromOptions(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24getComm(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getName(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28setName(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36compose(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, struct PyPetscObjectObject *__pyx_v_obj); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46setAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_attr); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_48getDict(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_50stateIncrease(struct PyPetscObjectObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52incrementTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_tab, struct PyPetscObjectObject *__pyx_v_parent); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_54setTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_level); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56getTabLevel(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24viewFromOptions(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, struct PyPetscObjectObject *__pyx_v_prefix); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getComm(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28getName(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30setName(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassId(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getClassName(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36getRefCount(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38compose(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, struct PyPetscObjectObject *__pyx_v_obj); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40query(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42incRef(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44decRef(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46getAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_48setAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_attr); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_50getDict(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52stateIncrease(struct PyPetscObjectObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_54incrementTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_tab, struct PyPetscObjectObject *__pyx_v_parent); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56setTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_level); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_58getTabLevel(struct PyPetscObjectObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4type___get__(struct PyPetscObjectObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_6Object_4type_2__set__(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6prefix___get__(struct PyPetscObjectObject *__pyx_v_self); /* proto */
@@ -5825,25 +6221,35 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_12createBinary(struct PyPetsc
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_14createMPIIO(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_mode, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_16createVTK(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_mode, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_18createHDF5(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_mode, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_20createNetCDF(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_mode, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24setType(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_vwr_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(struct PyPetscViewerObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(struct PyPetscViewerObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_30pushFormat(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_format); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_32popFormat(struct PyPetscViewerObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_name, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42DRAW(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_44flush(struct PyPetscViewerObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_46setFileMode(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_mode); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(struct PyPetscViewerObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50setFileName(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(struct PyPetscViewerObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_56clearDraw(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_20createDraw(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22setType(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_vwr_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24getType(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getFormat(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28pushFormat(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_format); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_30popFormat(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_32STDOUT(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDERR(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36ASCII(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_name, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38BINARY(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40DRAW(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42setASCIITab(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_tabs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_44getASCIITab(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_46addASCIITab(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_tabs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48subtractASCIITab(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_tabs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50pushASCIISynchronized(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52popASCIISynchronized(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54pushASCIITab(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_56popASCIITab(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_58useASCIITabs(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_60printfASCII(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_msg); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_62printfASCIISynchronized(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_msg); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_64flush(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_66setFileMode(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_mode); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_68getFileMode(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_70setFileName(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_72getFileName(struct PyPetscViewerObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_74setDrawInfo(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_76clearDraw(struct PyPetscViewerObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_create(struct __pyx_obj_8petsc4py_5PETSc_ViewerHDF5 *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_mode, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_2getTimestep(struct __pyx_obj_8petsc4py_5PETSc_ViewerHDF5 *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_4setTimestep(struct __pyx_obj_8petsc4py_5PETSc_ViewerHDF5 *__pyx_v_self, PyObject *__pyx_v_timestep); /* proto */
@@ -5925,22 +6331,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_5array___get__(struct PyPetscISOb
static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_19__array_interface_____get__(struct PyPetscISObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_5LGMap___cinit__(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_2__call__(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4view(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_6destroy(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_bsize, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10createIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, PyObject *__pyx_v_start); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_30applyIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_32applyInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_map_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyBlockInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_map_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4setType(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_lgmap_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_6setFromOptions(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8view(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10destroy(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12create(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_bsize, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14createIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16createSF(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, PyObject *__pyx_v_start); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getSize(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockSize(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getIndices(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockIndices(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26getInfo(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28getBlockInfo(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_30apply(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_32applyBlock(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_36applyInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_mode); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_38applyBlockInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_mode); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4size___get__(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_size___get__(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_7indices___get__(struct PyPetscLGMapObject *__pyx_v_self); /* proto */
@@ -5954,14 +6362,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_6__abs__(struct PyPetscVecObject
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8__iadd__(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10__isub__(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_12__imul__(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_14__idiv__(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
#endif
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_16__itruediv__(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_18__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_20__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_22__mul__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_24__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
#endif
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_26__truediv__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
@@ -6060,28 +6468,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_210setValue(struct PyPetscVecObj
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_212setValues(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_214setValuesBlocked(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_216setLGMap(struct PyPetscVecObject *__pyx_v_self, struct PyPetscLGMapObject *__pyx_v_lgmap); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_218setValueLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_220setValuesLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesBlockedLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_224assemblyBegin(struct PyPetscVecObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyEnd(struct PyPetscVecObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_228assemble(struct PyPetscVecObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_230strideScale(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_alpha); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_norm_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_240strideScatter(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_242strideGather(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_244localForm(struct PyPetscVecObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdate(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_252setMPIGhost(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_ghosts); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_254getSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_256restoreSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetscVecObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_sx, PyObject *__pyx_v_idxm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_218getLGMap(struct PyPetscVecObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_220setValueLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_224setValuesBlockedLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyBegin(struct PyPetscVecObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_228assemblyEnd(struct PyPetscVecObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_230assemble(struct PyPetscVecObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideScale(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_alpha); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideSum(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideMax(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_240strideNorm(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_norm_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_242strideScatter(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_244strideGather(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_246localForm(struct PyPetscVecObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateBegin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdateEnd(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_252ghostUpdate(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_254setMPIGhost(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_ghosts); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_256getSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258restoreSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260getNestSubVecs(struct PyPetscVecObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_262setNestSubVecs(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_sx, PyObject *__pyx_v_idxm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5sizes___get__(struct PyPetscVecObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_3Vec_5sizes_2__set__(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_4size___get__(struct PyPetscVecObject *__pyx_v_self); /* proto */
@@ -6156,14 +6565,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4__neg__(struct PyPetscMatObject
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_6__iadd__(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_8__isub__(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10__imul__(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12__idiv__(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
#endif
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_14__itruediv__(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_16__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_18__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
#endif
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_24__truediv__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */
@@ -6189,8 +6598,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_62setPreallocationDense(struct P
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMatObject *__pyx_v_self, struct PyPetscScatterObject *__pyx_v_scatter, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_66createNormal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_68createTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscMatObject *__pyx_v_U, struct PyPetscMatObject *__pyx_v_V); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscMatObject *__pyx_v_U, struct PyPetscVecObject *__pyx_v_c, struct PyPetscMatObject *__pyx_v_V); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrixVirtual(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_mats, PyObject *__pyx_v_isrows, PyObject *__pyx_v_iscols, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_size, PyObject *__pyx_v_context, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_78setPythonContext(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_context); /* proto */
@@ -6246,96 +6655,101 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_176setValuesBlockedRCV(struct Py
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_178setValuesBlockedIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_180setValuesBlockedCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_182setLGMap(struct PyPetscMatObject *__pyx_v_self, struct PyPetscLGMapObject *__pyx_v_rmap, struct PyPetscLGMapObject *__pyx_v_cmap); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_184setValueLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_186setValuesLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesBlockedLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_dims, PyObject *__pyx_v_starts, PyObject *__pyx_v_dof); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_204setValueStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_214storeValues(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_216retrieveValues(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_218assemblyBegin(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyEnd(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_222assemble(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_224isAssembled(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_side); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecRight(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecLeft(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_column, struct PyPetscVecObject *__pyx_v_result); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_nsubcomm, PyObject *__pyx_v_subcomm, struct PyPetscMatObject *__pyx_v_out); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_240setDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_diag, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_L, struct PyPetscVecObject *__pyx_v_R); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_246setNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_248getNullSpace(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_250setNearNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252getNearNullSpace(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_254mult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_256multAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_258multTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_260multTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_262multHermitian(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_264multHermitianAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x, PyObject *__pyx_v_omega, PyObject *__pyx_v_sortype, PyObject *__pyx_v_shift, PyObject *__pyx_v_its, PyObject *__pyx_v_lits); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_268getDiagonalBlock(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_270increaseOverlap(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, PyObject *__pyx_v_overlap); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_isrows, PyObject *__pyx_v_iscols, PyObject *__pyx_v_submats); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_278restoreLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_norm_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_282scale(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_284shift(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_286chop(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_tol); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_288axpy(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_290aypx(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292matMultSymbolic(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_fill); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302getOrdering(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_ord_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_atol); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_306factorLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_308factorSymbolicLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_310factorNumericLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_312factorILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_314factorSymbolicILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_316factorCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_318factorSymbolicCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_320factorNumericCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_322factorICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_324factorSymbolicICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_328setUnfactored(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_330setMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_ival); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_334setMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_val); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344getMumpsRinfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_346solveForward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_348solveBackward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_350solve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_352solveTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_354solveAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_356solveTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_358matSolve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_B, struct PyPetscMatObject *__pyx_v_X); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscMatObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_184getLGMap(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_186setValueLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setValuesBlockedLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_204setStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_dims, PyObject *__pyx_v_starts, PyObject *__pyx_v_dof); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_206setValueStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208setValueBlockedStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRows(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_214zeroRowsColumns(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_216storeValues(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_218retrieveValues(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyBegin(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_222assemblyEnd(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_224assemble(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226isAssembled(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecs(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_side); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecRight(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232createVecLeft(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getColumnVector(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_column, struct PyPetscVecObject *__pyx_v_result); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getRedundantMatrix(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_nsubcomm, PyObject *__pyx_v_subcomm, struct PyPetscMatObject *__pyx_v_out); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_240getRowSum(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242setDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_diag, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244diagonalScale(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_L, struct PyPetscVecObject *__pyx_v_R); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_246invertBlockDiagonal(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_248setNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_250getNullSpace(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252setTransposeNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_254getTransposeNullSpace(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_256setNearNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_258getNearNullSpace(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_260mult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_262multAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_264multTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266multTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_268multHermitian(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_270multHermitianAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272SOR(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x, PyObject *__pyx_v_omega, PyObject *__pyx_v_sortype, PyObject *__pyx_v_shift, PyObject *__pyx_v_its, PyObject *__pyx_v_lits); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getDiagonalBlock(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_276increaseOverlap(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, PyObject *__pyx_v_overlap); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_278createSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280createSubMatrices(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_isrows, PyObject *__pyx_v_iscols, PyObject *__pyx_v_submats); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_282getLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_284restoreLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_286norm(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_norm_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_288scale(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_290shift(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292chop(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_tol); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294axpy(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296aypx(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matMultSymbolic(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_fill); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300matMultNumeric(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302matMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_304matTransposeMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_306transposeMatMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_308PtAP(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_P, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_310getOrdering(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_ord_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_312reorderForNonzeroDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_atol); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_314factorLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_316factorSymbolicLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_318factorNumericLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_320factorILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_322factorSymbolicILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_324factorCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326factorSymbolicCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_328factorNumericCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_330factorICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332factorSymbolicICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_334getInertia(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336setUnfactored(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getLRCMats(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340setMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_ival); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344setMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_val); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_346getMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_348getMumpsInfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_350getMumpsInfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_352getMumpsRinfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_354getMumpsRinfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_356solveForward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_358solveBackward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360solve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362solveTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_364solveAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_366solveTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_368matSolve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_B, struct PyPetscMatObject *__pyx_v_X); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_370getDenseArray(struct PyPetscMatObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_372getDenseLocalMatrix(struct PyPetscMatObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_5sizes___get__(struct PyPetscMatObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_3Mat_5sizes_2__set__(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4size___get__(struct PyPetscMatObject *__pyx_v_self); /* proto */
@@ -6359,6 +6773,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_14hasConstant(struct PyPet
static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNullSpaceObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_18getFunction(struct PyPetscNullSpaceObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_20remove(struct PyPetscNullSpaceObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_22test(struct PyPetscNullSpaceObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_2PC___cinit__(struct PyPetscPCObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_x, PyObject *__pyx_v_y); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_4view(struct PyPetscPCObject *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer); /* proto */
@@ -6434,10 +6849,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_142getMGRScale(struct PyPetscPCOb
static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_144getMGSmoother(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_146getMGSmootherDown(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_148getMGSmootherUp(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_150setMGCyclesOnLevel(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, PyObject *__pyx_v_ncycle); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_152setMGRhs(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_rhs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_154setMGX(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_156setMGR(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_r); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_150setMGCycleType(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_cycle_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_152setMGCycleTypeOnLevel(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, PyObject *__pyx_v_cycle_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_154setMGRhs(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_rhs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_156setMGX(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_158setMGR(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_r); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_3KSP___cinit__(struct PyPetscKSPObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObject *__pyx_v_self, PyObject *__pyx_v_b, PyObject *__pyx_v_x); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4view(struct PyPetscKSPObject *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer); /* proto */
@@ -6585,60 +7001,67 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_78getObjective(struct PyPetscSN
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_80computeFunction(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_82computeJacobian(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_84computeObjective(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol, PyObject *__pyx_v_stol, PyObject *__pyx_v_max_it); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_90setNormSchedule(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_normsched); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_converged, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_96getConvergenceTest(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_xnorm, PyObject *__pyx_v_ynorm, PyObject *__pyx_v_fnorm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_length, PyObject *__pyx_v_reset); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_104logConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_norm, PyObject *__pyx_v_linear_its); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_106setResetCounters(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reset); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_110getMonitor(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_112cancelMonitor(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_114monitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_rnorm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_funcs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_134setUp(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_136reset(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138solve(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_140setConvergedReason(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reason); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_144setIterationNumber(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_146getIterationNumber(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_152getSolution(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_154setSolution(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vec); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getSolutionUpdate(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_158setKSP(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscKSPObject *__pyx_v_ksp); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162setUseEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag, PyObject *__pyx_v_targs, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_164getUseEW(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_version, PyObject *__pyx_v_rtol_0, PyObject *__pyx_v_rtol_max, PyObject *__pyx_v_gamma, PyObject *__pyx_v_alpha, PyObject *__pyx_v_alpha2, PyObject *__pyx_v_threshold); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_170setUseMF(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_172getUseMF(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_174setUseFD(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_176getUseFD(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_178setVariableBounds(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_xl, struct PyPetscVecObject *__pyx_v_xu); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_184setPythonContext(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPetscSNESObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setPythonType(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_py_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_n); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_192getCompositeNumber(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setNGS(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_ngs, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getNGS(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_90computeNGS(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92setTolerances(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol, PyObject *__pyx_v_stol, PyObject *__pyx_v_max_it); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94getTolerances(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_96setNormSchedule(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_normsched); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98getNormSchedule(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_converged, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceTest(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_104callConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_xnorm, PyObject *__pyx_v_ynorm, PyObject *__pyx_v_fnorm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_106setConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_length, PyObject *__pyx_v_reset); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108getConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_110logConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_norm, PyObject *__pyx_v_linear_its); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_112setResetCounters(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reset); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_114setMonitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116getMonitor(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118cancelMonitor(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120monitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_rnorm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_funcs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getStepFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_134setMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_136getMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138getKSPFailures(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_140setUp(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142reset(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_144solve(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_146setConvergedReason(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reason); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getConvergedReason(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150setIterationNumber(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_152getIterationNumber(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_154setFunctionNorm(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_norm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getFunctionNorm(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_158getLinearSolveIterations(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getRhs(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162getSolution(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_164setSolution(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166getSolutionUpdate(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168setKSP(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscKSPObject *__pyx_v_ksp); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_170getKSP(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_172setUseEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag, PyObject *__pyx_v_targs, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_174getUseEW(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_176setParamsEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_version, PyObject *__pyx_v_rtol_0, PyObject *__pyx_v_rtol_max, PyObject *__pyx_v_gamma, PyObject *__pyx_v_alpha, PyObject *__pyx_v_alpha2, PyObject *__pyx_v_threshold); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_178getParamsEW(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180setUseMF(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182getUseMF(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_184setUseFD(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getUseFD(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setVariableBounds(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_xl, struct PyPetscVecObject *__pyx_v_xu); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getVIInactiveSet(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_192createPython(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_194setPythonContext(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_196getPythonContext(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_198setPythonType(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_py_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_200getCompositeSNES(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_n); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_202getCompositeNumber(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_204getNASMSNES(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_n); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_206getNASMNumber(struct PyPetscSNESObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6appctx___get__(struct PyPetscSNESObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_4SNES_6appctx_2__set__(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_2dm___get__(struct PyPetscSNESObject *__pyx_v_self); /* proto */
@@ -6664,6 +7087,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs___get__(struct PyPet
static int __pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs_2__set__(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3its___get__(struct PyPetscSNESObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_4SNES_3its_2__set__(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4norm___get__(struct PyPetscSNESObject *__pyx_v_self); /* proto */
+static int __pyx_pf_8petsc4py_5PETSc_4SNES_4norm_2__set__(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7history___get__(struct PyPetscSNESObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6reason___get__(struct PyPetscSNESObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_4SNES_6reason_2__set__(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
@@ -6681,89 +7106,106 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6destroy(struct PyPetscTSObject *
static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8create(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_10clone(struct PyPetscTSObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12setType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_ts_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14getType(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_16setProblemType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_ptype); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_20setEquationType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_eqtype); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setOptionsPrefix(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prefix); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_28setFromOptions(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_30setAppCtx(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_appctx); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_32getAppCtx(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_38computeRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_40computeRHSFunctionLinear(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_54computeIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_imex); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, PyObject *__pyx_v_a, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_imex); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60getIJacobian(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_62setSolution(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_64getSolution(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_66getSNES(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_68getKSP(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_70getDM(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_72setDM(struct PyPetscTSObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_74setTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_76getTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_78getPrevTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_80getSolveTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_82setInitialTimeStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_initial_time, PyObject *__pyx_v_initial_time_step); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_84setTimeStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_time_step); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_86getTimeStep(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_88setStepNumber(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step_number); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_90getStepNumber(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_92setMaxTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_time); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_94getMaxTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_96setMaxSteps(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_steps); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_98getMaxSteps(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_100setDuration(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_time, PyObject *__pyx_v_max_steps); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_102getDuration(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_104getTotalSteps(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_110setMaxStepRejections(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSNESFailures(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_118setErrorIfStepFails(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_124setExactFinalTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_option); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_126setConvergedReason(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_reason); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_132getMonitor(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_134cancelMonitor(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_136monitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step, PyObject *__pyx_v_time, struct PyPetscVecObject *__pyx_v_u); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_138setPreStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prestep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_140getPreStep(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_142setPostStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_poststep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_144getPostStep(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_146setUp(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_148reset(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_150step(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_152rollBack(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_154solve(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_156interpolate(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_u); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_160setPythonContext(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164setPythonType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_py_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_166setTheta(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_theta); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_170setThetaEndpoint(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_172getThetaEndpoint(struct PyPetscTSObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_174setAlphaRadius(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_radius); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_alpha_m, PyObject *__pyx_v_alpha_f, PyObject *__pyx_v_gamma); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14setRKType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_ts_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_16getType(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getRKType(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_20setProblemType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_ptype); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getProblemType(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setEquationType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_eqtype); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getEquationType(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_28setOptionsPrefix(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prefix); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_30getOptionsPrefix(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_32setFromOptions(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setAppCtx(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_appctx); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36getAppCtx(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_38setRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_40setRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSFunctionLinear(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46computeRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48computeRHSJacobianConstant(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50getRHSFunction(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52getRHSJacobian(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_54setIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56setIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58computeIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_imex); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60computeIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, PyObject *__pyx_v_a, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_imex); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_62getIFunction(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_64getIJacobian(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_66setI2Function(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_68setI2Jacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_70computeI2Function(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_xdotdot, struct PyPetscVecObject *__pyx_v_f); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_72computeI2Jacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_xdotdot, PyObject *__pyx_v_v, PyObject *__pyx_v_a, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_74getI2Function(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_76getI2Jacobian(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_78setSolution(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_80getSolution(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_82setSolution2(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u, struct PyPetscVecObject *__pyx_v_v); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_84getSolution2(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_86getSNES(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_88getKSP(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_90getDM(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_92setDM(struct PyPetscTSObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_94setTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_96getTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_98getPrevTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_100getSolveTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_102setTimeStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_time_step); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_104getTimeStep(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106setStepNumber(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step_number); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getStepNumber(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_110setMaxTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_time); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getMaxTime(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSteps(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_steps); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getMaxSteps(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_118getSNESIterations(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120getKSPIterations(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122setMaxStepRejections(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_124getStepRejections(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_126setMaxSNESFailures(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getSNESFailures(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setErrorIfStepFails(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_132setTolerances(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_134getTolerances(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_136setExactFinalTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_option); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_138setConvergedReason(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_reason); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_140getConvergedReason(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_142setMonitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_144getMonitor(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_146cancelMonitor(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_148monitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step, PyObject *__pyx_v_time, struct PyPetscVecObject *__pyx_v_u); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_150setPreStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prestep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_152getPreStep(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_154setPostStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_poststep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_156getPostStep(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158setUp(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_160reset(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162step(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164rollBack(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_166solve(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168interpolate(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_u); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_170setSaveTrajectory(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_172getCostIntegral(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_174setCostGradients(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_vl, PyObject *__pyx_v_vm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176getCostGradients(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178setCostIntegrand(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_cost, PyObject *__pyx_v_rfunction, PyObject *__pyx_v_n, PyObject *__pyx_v_drdyfunction, PyObject *__pyx_v_drdpfunction, PyObject *__pyx_v_forward, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_180adjointSetRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_adjointjacobian, struct PyPetscMatObject *__pyx_v_A, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_182adjointComputeRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_184adjointSetSteps(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_adjoint_steps); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_186adjointSetUp(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_188adjointSolve(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_190adjointStep(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_192createPython(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_194setPythonContext(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_196getPythonContext(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_198setPythonType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_py_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_200setTheta(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_theta); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_202getTheta(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_204setThetaEndpoint(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_206getThetaEndpoint(struct PyPetscTSObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_208setAlphaRadius(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_radius); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_210setAlphaParams(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_alpha_m, PyObject *__pyx_v_alpha_f, PyObject *__pyx_v_gamma); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_212getAlphaParams(struct PyPetscTSObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6appctx___get__(struct PyPetscTSObject *__pyx_v_self); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_2TS_6appctx_2__set__(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_value); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2dm___get__(struct PyPetscTSObject *__pyx_v_self); /* proto */
@@ -6901,49 +7343,62 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_28getBlockSize(struct PyPetscDMOb
static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_30setVecType(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_vec_type); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_32createGlobalVec(struct PyPetscDMObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_34createLocalVec(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_36globalToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vg, struct PyPetscVecObject *__pyx_v_vl, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_38localToGlobal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vg, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_40localToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vlg, PyObject *__pyx_v_addv); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_46getCoordinateSection(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_48setCoordinates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_50getCoordinates(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_52setCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setMatType(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_mat_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_58createMat(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_60createInterpolation(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_62createInjection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64createAggregates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_dm_type); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_76setDefaultSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_78getDefaultSection(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_80setDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_84createDefaultSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_localsec, struct PyPetscSectionObject *__pyx_v_globalsec); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_88getPointSF(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_90setPointSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(struct PyPetscDMObject *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_index); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98createLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104setLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106clearLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116clearLabelStratum(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118setLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_output); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_36getGlobalVec(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_38restoreGlobalVec(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vg); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_40getLocalVec(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42restoreLocalVec(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44globalToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vg, struct PyPetscVecObject *__pyx_v_vl, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_46localToGlobal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vg, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_48localToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vlg, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_50getLGMap(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_52getCoordinateDM(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinateSection(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setCoordinates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_58getCoordinates(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_60setCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_62getCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64setMatType(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_mat_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66createMat(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68createInterpolation(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70createInjection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72createAggregates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74convert(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_dm_type); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_76refine(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_78coarsen(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_80refineHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_82coarsenHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_84getRefineLevel(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86setRefineLevel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_level); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_88getCoarsenLevel(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_90adaptLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_label); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92adaptMetric(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_metric, PyObject *__pyx_v_label); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94setDefaultSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96getDefaultSection(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98setDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100getDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102createDefaultSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_localsec, struct PyPetscSectionObject *__pyx_v_globalsec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104getDefaultSF(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106getPointSF(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108setPointSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getNumLabels(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getLabelName(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_index); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114hasLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116createLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118removeLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_122setLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_124clearLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_126getLabelSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_128getLabelIdIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_130getStratumSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_132getStratumIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_134clearLabelStratum(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_136setLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_output); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_138getLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_140setKSPComputeOperators(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_operators, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_142createFieldDecomposition(struct PyPetscDMObject *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_144setSNESFunction(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_function, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_146setSNESJacobian(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_jacobian, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4py_5PETSc_DMDA *__pyx_v_self, PyObject *__pyx_v_dim, PyObject *__pyx_v_dof, PyObject *__pyx_v_sizes, PyObject *__pyx_v_proc_sizes, PyObject *__pyx_v_boundary_type, PyObject *__pyx_v_stencil_type, PyObject *__pyx_v_stencil_width, int __pyx_v_setup, PyObject *__pyx_v_ownership_ranges, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8petsc4py_5PETSc_DMDA *__pyx_v_self, PyObject *__pyx_v_dof, PyObject *__pyx_v_boundary_type, PyObject *__pyx_v_stencil_type, PyObject *__pyx_v_stencil_width); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_4setDim(struct __pyx_obj_8petsc4py_5PETSc_DMDA *__pyx_v_self, PyObject *__pyx_v_dim); /* proto */
@@ -7001,63 +7456,80 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_7corners___get__(struct __pyx_o
static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_13ghost_corners___get__(struct __pyx_obj_8petsc4py_5PETSc_DMDA *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_create(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_2createFromCellList(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_dim, PyObject *__pyx_v_cells, PyObject *__pyx_v_coords, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_dim, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_dim, PyObject *__pyx_v_numFaces, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_numcells, PyObject *__pyx_v_boundary_type, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cgid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_exoid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_hasLagrange, PyObject *__pyx_v_value); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_22setChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_pStart, PyObject *__pyx_v_pEnd); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_cone, PyObject *__pyx_v_orientation); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_32insertCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_conePoint); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_coneOrientation); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_orientation); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_supp); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_50symmetrize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_52stratify(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_54orient(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60createPointNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_useCone); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_74vecGetClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_p); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_boundary, PyObject *__pyx_v_name, PyObject *__pyx_v_interpolate); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_edges); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_faces); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_label); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_88setAdjacencyUseCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useCone); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_90setAdjacencyUseClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useClosure); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_94distribute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_96distributeOverlap(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, struct PyPetscSectionObject *__pyx_v_newsec, struct PyPetscVecObject *__pyx_v_newvec); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_numComp, PyObject *__pyx_v_numDof, PyObject *__pyx_v_bcField, PyObject *__pyx_v_bcComps, PyObject *__pyx_v_bcPoints, struct PyPetscISObject *__pyx_v_perm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementUniform); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementLimit); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getOrdering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_otype); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscISObject *__pyx_v_perm); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cell); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cgid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createCGNSFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodusFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createExodus(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_exoid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createGmsh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20createCohesiveSubmesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_hasLagrange, PyObject *__pyx_v_value); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_22getChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24setChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_pStart, PyObject *__pyx_v_pEnd); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26getConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28setConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30getCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_32setCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_cone, PyObject *__pyx_v_orientation); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_conePoint); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36insertConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_coneOrientation); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38getConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40setConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_orientation); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42getSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44setSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46getSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48setSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_supp); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_50getMaxSizes(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_52symmetrize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_54stratify(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56orient(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getCellNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60getVertexNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62createPointNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepth(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getDepthStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getHeightStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getMeet(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getJoin(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_74getTransitiveClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_useCone); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76vecGetClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_p); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78getVecClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_point); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setVecClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_point, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82setMatClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscSectionObject *__pyx_v_gsec, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_point, PyObject *__pyx_v_values, PyObject *__pyx_v_addv); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84generate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_boundary, PyObject *__pyx_v_name, PyObject *__pyx_v_interpolate); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86setTriangleOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_88setTetGenOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_90createSquareBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_edges); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92createCubeBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_faces); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_94markBoundaryFaces(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_label); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_96setAdjacencyUseCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useCone); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98getAdjacencyUseCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100setAdjacencyUseClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useClosure); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102getAdjacencyUseClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_104setAdjacencyUseAnchors(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useAnchors); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_106getAdjacencyUseAnchors(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_108getAdjacency(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110setPartitioner(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscPartitionerObject *__pyx_v_part); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getPartitioner(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114distribute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116distributeOverlap(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_118interpolate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_120uninterpolate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_122distributeField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, struct PyPetscSectionObject *__pyx_v_newsec, struct PyPetscVecObject *__pyx_v_newvec); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_124createCoarsePointIS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_126createSection(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_numComp, PyObject *__pyx_v_numDof, PyObject *__pyx_v_bcField, PyObject *__pyx_v_bcComps, PyObject *__pyx_v_bcPoints, struct PyPetscISObject *__pyx_v_perm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_128getPointLocal(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_130getPointLocalField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point, PyObject *__pyx_v_field); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_132getPointGlobal(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_134getPointGlobalField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point, PyObject *__pyx_v_field); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_136setRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementUniform); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_138getRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_140setRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementLimit); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_142getRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_144getOrdering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_otype); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_146permute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscISObject *__pyx_v_perm); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_148computeCellGeometryFVM(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cell); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_150constructGhostCells(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_labelName); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_create(struct __pyx_obj_8petsc4py_5PETSc_DMComposite *__pyx_v_self, PyObject *__pyx_v_comm); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_2addDM(struct __pyx_obj_8petsc4py_5PETSc_DMComposite *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm, PyObject *__pyx_v_args); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_4getNumber(struct __pyx_obj_8petsc4py_5PETSc_DMComposite *__pyx_v_self); /* proto */
@@ -7085,8 +7557,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_26setCoarsen(struct __pyx_ob
static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_28setRefine(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_refine, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_30setCreateInterpolation(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_interpolation, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_32setCreateInjection(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_injection, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecomposition(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_decomp, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
-static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_subdm, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateRestriction(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_restriction, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateFieldDecomposition(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_decomp, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_38setCreateDomainDecomposition(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_decomp, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_40setCreateDomainDecompositionScatters(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_scatter, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_42setCreateSubDM(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_subdm, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs); /* proto */
static int __pyx_pf_8petsc4py_5PETSc_2SF___cinit__(struct PyPetscSFObject *__pyx_v_self); /* proto */
static void __pyx_pf_8petsc4py_5PETSc_2SF_2__dealloc__(struct PyPetscSFObject *__pyx_v_self); /* proto */
static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_4view(struct PyPetscSFObject *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer); /* proto */
@@ -7166,10 +7641,10 @@ static PyObject *__pyx_tuple__3;
static PyObject *__pyx_tuple__4;
static PyObject *__pyx_tuple__6;
static PyObject *__pyx_tuple__7;
-static PyObject *__pyx_slice__55;
-static PyObject *__pyx_slice__63;
-static PyObject *__pyx_slice__64;
+static PyObject *__pyx_slice__58;
+static PyObject *__pyx_slice__66;
static PyObject *__pyx_slice__67;
+static PyObject *__pyx_slice__70;
static PyObject *__pyx_tuple__11;
static PyObject *__pyx_tuple__12;
static PyObject *__pyx_tuple__13;
@@ -7191,7 +7666,6 @@ static PyObject *__pyx_tuple__28;
static PyObject *__pyx_tuple__29;
static PyObject *__pyx_tuple__30;
static PyObject *__pyx_tuple__31;
-static PyObject *__pyx_tuple__33;
static PyObject *__pyx_tuple__34;
static PyObject *__pyx_tuple__35;
static PyObject *__pyx_tuple__36;
@@ -7213,26 +7687,81 @@ static PyObject *__pyx_tuple__51;
static PyObject *__pyx_tuple__52;
static PyObject *__pyx_tuple__53;
static PyObject *__pyx_tuple__54;
+static PyObject *__pyx_tuple__55;
static PyObject *__pyx_tuple__56;
static PyObject *__pyx_tuple__57;
-static PyObject *__pyx_tuple__58;
static PyObject *__pyx_tuple__59;
static PyObject *__pyx_tuple__60;
static PyObject *__pyx_tuple__61;
static PyObject *__pyx_tuple__62;
+static PyObject *__pyx_tuple__63;
+static PyObject *__pyx_tuple__64;
static PyObject *__pyx_tuple__65;
-static PyObject *__pyx_tuple__66;
static PyObject *__pyx_tuple__68;
-static PyObject *__pyx_tuple__70;
+static PyObject *__pyx_tuple__69;
+static PyObject *__pyx_tuple__71;
static PyObject *__pyx_tuple__72;
+static PyObject *__pyx_tuple__73;
static PyObject *__pyx_tuple__74;
-static PyObject *__pyx_tuple__76;
-static PyObject *__pyx_codeobj__69;
-static PyObject *__pyx_codeobj__71;
-static PyObject *__pyx_codeobj__73;
-static PyObject *__pyx_codeobj__75;
-static PyObject *__pyx_codeobj__77;
+static PyObject *__pyx_tuple__75;
+static PyObject *__pyx_tuple__77;
+static PyObject *__pyx_tuple__79;
+static PyObject *__pyx_tuple__81;
+static PyObject *__pyx_tuple__83;
+static PyObject *__pyx_tuple__84;
+static PyObject *__pyx_tuple__85;
+static PyObject *__pyx_tuple__86;
+static PyObject *__pyx_tuple__87;
+static PyObject *__pyx_tuple__88;
+static PyObject *__pyx_tuple__89;
+static PyObject *__pyx_tuple__90;
+static PyObject *__pyx_tuple__91;
+static PyObject *__pyx_tuple__92;
+static PyObject *__pyx_tuple__93;
+static PyObject *__pyx_tuple__94;
+static PyObject *__pyx_tuple__95;
+static PyObject *__pyx_tuple__96;
+static PyObject *__pyx_tuple__97;
+static PyObject *__pyx_tuple__98;
+static PyObject *__pyx_tuple__99;
+static PyObject *__pyx_tuple__100;
+static PyObject *__pyx_tuple__101;
+static PyObject *__pyx_tuple__102;
+static PyObject *__pyx_tuple__103;
+static PyObject *__pyx_tuple__104;
+static PyObject *__pyx_tuple__105;
+static PyObject *__pyx_tuple__106;
+static PyObject *__pyx_tuple__107;
+static PyObject *__pyx_tuple__108;
+static PyObject *__pyx_tuple__109;
+static PyObject *__pyx_tuple__110;
+static PyObject *__pyx_tuple__111;
+static PyObject *__pyx_tuple__112;
+static PyObject *__pyx_tuple__113;
+static PyObject *__pyx_tuple__114;
+static PyObject *__pyx_tuple__115;
+static PyObject *__pyx_tuple__116;
+static PyObject *__pyx_tuple__117;
+static PyObject *__pyx_tuple__118;
+static PyObject *__pyx_tuple__119;
+static PyObject *__pyx_tuple__120;
+static PyObject *__pyx_tuple__121;
+static PyObject *__pyx_tuple__122;
+static PyObject *__pyx_tuple__123;
+static PyObject *__pyx_tuple__124;
+static PyObject *__pyx_tuple__125;
+static PyObject *__pyx_tuple__126;
+static PyObject *__pyx_tuple__127;
+static PyObject *__pyx_tuple__128;
+static PyObject *__pyx_tuple__129;
+static PyObject *__pyx_tuple__130;
+static PyObject *__pyx_tuple__131;
+static PyObject *__pyx_codeobj__76;
static PyObject *__pyx_codeobj__78;
+static PyObject *__pyx_codeobj__80;
+static PyObject *__pyx_codeobj__82;
+static PyObject *__pyx_codeobj__132;
+static PyObject *__pyx_codeobj__133;
/* "PETSc/PETSc.pyx":12
* ctypedef char const_char "const char"
@@ -7444,7 +7973,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_str2bytes(PyObject *__py
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_s, __pyx_n_s_encode); if (unlikely(!__pyx_t_4)) __PYX_ERR(11, 26, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -7480,7 +8009,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_str2bytes(PyObject *__py
* return s
*
*/
- __pyx_t_6 = __Pyx_PyObject_AsString(__pyx_v_s); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(11, 27, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_AsWritableString(__pyx_v_s); if (unlikely((!__pyx_t_6) && PyErr_Occurred())) __PYX_ERR(11, 27, __pyx_L1_error)
(__pyx_v_p[0]) = ((const char *)((char *)__pyx_t_6));
/* "PETSc/PETSc.pyx":28
@@ -7579,7 +8108,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_S_(const char *__pyx_v_p
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_s, __pyx_n_s_decode); if (unlikely(!__pyx_t_4)) __PYX_ERR(11, 33, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -7641,7 +8170,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_SETERR(int __pyx_v_ierr) {
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SETERR", 0);
@@ -7720,12 +8249,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_SETERR(int __pyx_v_ierr) {
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
- __Pyx_WriteUnraisable("petsc4py.PETSc.SETERR", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.SETERR", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_r = 0;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -7833,7 +8362,55 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_CHKERR(int __pyx_v_ierr) {
}
/* "PETSc/PETSc.pyx":84
- * PetscScalar PyPetscScalar_AsPetscScalar(object) except*
+ * PetscScalar PyPetscScalar_AsPetscScalar(object) except? <PetscScalar>-1.0
+ *
+ * cdef inline object toBool(PetscBool value): # <<<<<<<<<<<<<<
+ * return True if value else False
+ *
+ */
+
+static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toBool(PetscBool __pyx_v_value) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ __Pyx_RefNannySetupContext("toBool", 0);
+
+ /* "PETSc/PETSc.pyx":85
+ *
+ * cdef inline object toBool(PetscBool value):
+ * return True if value else False # <<<<<<<<<<<<<<
+ *
+ * cdef inline object toInt(PetscInt value):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ if (__pyx_v_value) {
+ __Pyx_INCREF(Py_True);
+ __pyx_t_1 = Py_True;
+ } else {
+ __Pyx_INCREF(Py_False);
+ __pyx_t_1 = Py_False;
+ }
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/PETSc.pyx":84
+ * PetscScalar PyPetscScalar_AsPetscScalar(object) except? <PetscScalar>-1.0
+ *
+ * cdef inline object toBool(PetscBool value): # <<<<<<<<<<<<<<
+ * return True if value else False
+ *
+ */
+
+ /* function exit code */
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/PETSc.pyx":87
+ * return True if value else False
*
* cdef inline object toInt(PetscInt value): # <<<<<<<<<<<<<<
* return value
@@ -7846,7 +8423,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toInt(PetscInt __pyx_v_v
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("toInt", 0);
- /* "PETSc/PETSc.pyx":85
+ /* "PETSc/PETSc.pyx":88
*
* cdef inline object toInt(PetscInt value):
* return value # <<<<<<<<<<<<<<
@@ -7854,14 +8431,14 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toInt(PetscInt __pyx_v_v
* return value
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_PetscInt(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 85, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_PetscInt(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 88, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":84
- * PetscScalar PyPetscScalar_AsPetscScalar(object) except*
+ /* "PETSc/PETSc.pyx":87
+ * return True if value else False
*
* cdef inline object toInt(PetscInt value): # <<<<<<<<<<<<<<
* return value
@@ -7879,7 +8456,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toInt(PetscInt __pyx_v_v
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":86
+/* "PETSc/PETSc.pyx":89
* cdef inline object toInt(PetscInt value):
* return value
* cdef inline PetscInt asInt(object value) except? -1: # <<<<<<<<<<<<<<
@@ -7893,18 +8470,18 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asInt(PyObject *__pyx_v_v
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("asInt", 0);
- /* "PETSc/PETSc.pyx":87
+ /* "PETSc/PETSc.pyx":90
* return value
* cdef inline PetscInt asInt(object value) except? -1:
* return value # <<<<<<<<<<<<<<
*
* cdef inline object toReal(PetscReal value):
*/
- __pyx_t_1 = __Pyx_PyInt_As_PetscInt(__pyx_v_value); if (unlikely((__pyx_t_1 == (PetscInt)-1) && PyErr_Occurred())) __PYX_ERR(11, 87, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_As_PetscInt(__pyx_v_value); if (unlikely((__pyx_t_1 == ((PetscInt)-1)) && PyErr_Occurred())) __PYX_ERR(11, 90, __pyx_L1_error)
__pyx_r = __pyx_t_1;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":86
+ /* "PETSc/PETSc.pyx":89
* cdef inline object toInt(PetscInt value):
* return value
* cdef inline PetscInt asInt(object value) except? -1: # <<<<<<<<<<<<<<
@@ -7921,7 +8498,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asInt(PyObject *__pyx_v_v
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":89
+/* "PETSc/PETSc.pyx":92
* return value
*
* cdef inline object toReal(PetscReal value): # <<<<<<<<<<<<<<
@@ -7935,7 +8512,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toReal(PetscReal __pyx_v
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("toReal", 0);
- /* "PETSc/PETSc.pyx":90
+ /* "PETSc/PETSc.pyx":93
*
* cdef inline object toReal(PetscReal value):
* return value # <<<<<<<<<<<<<<
@@ -7943,13 +8520,13 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toReal(PetscReal __pyx_v
* return value
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyFloat_FromDouble(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 90, __pyx_L1_error)
+ __pyx_t_1 = PyFloat_FromDouble(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 93, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":89
+ /* "PETSc/PETSc.pyx":92
* return value
*
* cdef inline object toReal(PetscReal value): # <<<<<<<<<<<<<<
@@ -7968,7 +8545,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toReal(PetscReal __pyx_v
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":91
+/* "PETSc/PETSc.pyx":94
* cdef inline object toReal(PetscReal value):
* return value
* cdef inline PetscReal asReal(object value) except? -1: # <<<<<<<<<<<<<<
@@ -7982,18 +8559,18 @@ static CYTHON_INLINE PetscReal __pyx_f_8petsc4py_5PETSc_asReal(PyObject *__pyx_v
PetscReal __pyx_t_1;
__Pyx_RefNannySetupContext("asReal", 0);
- /* "PETSc/PETSc.pyx":92
+ /* "PETSc/PETSc.pyx":95
* return value
* cdef inline PetscReal asReal(object value) except? -1:
* return value # <<<<<<<<<<<<<<
*
* cdef inline object toScalar(PetscScalar value):
*/
- __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (PetscReal)-1) && PyErr_Occurred())) __PYX_ERR(11, 92, __pyx_L1_error)
+ __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == ((PetscReal)-1)) && PyErr_Occurred())) __PYX_ERR(11, 95, __pyx_L1_error)
__pyx_r = __pyx_t_1;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":91
+ /* "PETSc/PETSc.pyx":94
* cdef inline object toReal(PetscReal value):
* return value
* cdef inline PetscReal asReal(object value) except? -1: # <<<<<<<<<<<<<<
@@ -8010,12 +8587,12 @@ static CYTHON_INLINE PetscReal __pyx_f_8petsc4py_5PETSc_asReal(PyObject *__pyx_v
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":94
+/* "PETSc/PETSc.pyx":97
* return value
*
* cdef inline object toScalar(PetscScalar value): # <<<<<<<<<<<<<<
* return PyPetscScalar_FromPetscScalar(value)
- * cdef inline PetscScalar asScalar(object value) except*:
+ * cdef inline PetscScalar asScalar(object value) except? <PetscScalar>-1.0:
*/
static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toScalar(PetscScalar __pyx_v_value) {
@@ -8024,26 +8601,26 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toScalar(PetscScalar __p
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("toScalar", 0);
- /* "PETSc/PETSc.pyx":95
+ /* "PETSc/PETSc.pyx":98
*
* cdef inline object toScalar(PetscScalar value):
* return PyPetscScalar_FromPetscScalar(value) # <<<<<<<<<<<<<<
- * cdef inline PetscScalar asScalar(object value) except*:
+ * cdef inline PetscScalar asScalar(object value) except? <PetscScalar>-1.0:
* return PyPetscScalar_AsPetscScalar(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyPetscScalar_FromPetscScalar(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 95, __pyx_L1_error)
+ __pyx_t_1 = PyPetscScalar_FromPetscScalar(__pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 98, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":94
+ /* "PETSc/PETSc.pyx":97
* return value
*
* cdef inline object toScalar(PetscScalar value): # <<<<<<<<<<<<<<
* return PyPetscScalar_FromPetscScalar(value)
- * cdef inline PetscScalar asScalar(object value) except*:
+ * cdef inline PetscScalar asScalar(object value) except? <PetscScalar>-1.0:
*/
/* function exit code */
@@ -8057,10 +8634,10 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toScalar(PetscScalar __p
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":96
+/* "PETSc/PETSc.pyx":99
* cdef inline object toScalar(PetscScalar value):
* return PyPetscScalar_FromPetscScalar(value)
- * cdef inline PetscScalar asScalar(object value) except*: # <<<<<<<<<<<<<<
+ * cdef inline PetscScalar asScalar(object value) except? <PetscScalar>-1.0: # <<<<<<<<<<<<<<
* return PyPetscScalar_AsPetscScalar(value)
*
*/
@@ -8071,21 +8648,21 @@ static CYTHON_INLINE PetscScalar __pyx_f_8petsc4py_5PETSc_asScalar(PyObject *__p
PetscScalar __pyx_t_1;
__Pyx_RefNannySetupContext("asScalar", 0);
- /* "PETSc/PETSc.pyx":97
+ /* "PETSc/PETSc.pyx":100
* return PyPetscScalar_FromPetscScalar(value)
- * cdef inline PetscScalar asScalar(object value) except*:
+ * cdef inline PetscScalar asScalar(object value) except? <PetscScalar>-1.0:
* return PyPetscScalar_AsPetscScalar(value) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_1 = PyPetscScalar_AsPetscScalar(__pyx_v_value); if (unlikely(PyErr_Occurred())) __PYX_ERR(11, 97, __pyx_L1_error)
+ __pyx_t_1 = PyPetscScalar_AsPetscScalar(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(11, 100, __pyx_L1_error)
__pyx_r = __pyx_t_1;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":96
+ /* "PETSc/PETSc.pyx":99
* cdef inline object toScalar(PetscScalar value):
* return PyPetscScalar_FromPetscScalar(value)
- * cdef inline PetscScalar asScalar(object value) except*: # <<<<<<<<<<<<<<
+ * cdef inline PetscScalar asScalar(object value) except? <PetscScalar>-1.0: # <<<<<<<<<<<<<<
* return PyPetscScalar_AsPetscScalar(value)
*
*/
@@ -8093,7 +8670,7 @@ static CYTHON_INLINE PetscScalar __pyx_f_8petsc4py_5PETSc_asScalar(PyObject *__p
/* function exit code */
__pyx_L1_error:;
__Pyx_AddTraceback("petsc4py.PETSc.asScalar", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = 0;
+ __pyx_r = ((PetscScalar)(-1.0));
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
@@ -10087,7 +10664,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getprefix(PyObject *__pyx_v_prefix, st
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_prefix, __pyx_n_s_getOptionsPrefix); if (unlikely(!__pyx_t_4)) __PYX_ERR(3, 45, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -10429,7 +11006,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_Bool(PetscOptions __pyx_v_opt,
* cdef PetscBool value = PETSC_FALSE
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( PetscOptionsGetBool(opt, pre, name, &value, &flag) )
- * if flag==PETSC_TRUE: return <bint>value
+ * if flag==PETSC_TRUE: return toBool(value)
*/
__pyx_v_flag = PETSC_FALSE;
@@ -10437,22 +11014,22 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_Bool(PetscOptions __pyx_v_opt,
* cdef PetscBool value = PETSC_FALSE
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( PetscOptionsGetBool(opt, pre, name, &value, &flag) ) # <<<<<<<<<<<<<<
- * if flag==PETSC_TRUE: return <bint>value
+ * if flag==PETSC_TRUE: return toBool(value)
* if deft is not None: return deft
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetBool(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(3, 66, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetBool(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(3, 66, __pyx_L1_error)
/* "PETSc/petscopt.pxi":67
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( PetscOptionsGetBool(opt, pre, name, &value, &flag) )
- * if flag==PETSC_TRUE: return <bint>value # <<<<<<<<<<<<<<
+ * if flag==PETSC_TRUE: return toBool(value) # <<<<<<<<<<<<<<
* if deft is not None: return deft
* raise KeyError(opt2str(pre, name))
*/
__pyx_t_2 = ((__pyx_v_flag == PETSC_TRUE) != 0);
if (__pyx_t_2) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyInt_From_PetscBool(__pyx_v_value); if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 67, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_value); if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 67, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
@@ -10461,7 +11038,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_Bool(PetscOptions __pyx_v_opt,
/* "PETSc/petscopt.pxi":68
* CHKERR( PetscOptionsGetBool(opt, pre, name, &value, &flag) )
- * if flag==PETSC_TRUE: return <bint>value
+ * if flag==PETSC_TRUE: return toBool(value)
* if deft is not None: return deft # <<<<<<<<<<<<<<
* raise KeyError(opt2str(pre, name))
*
@@ -10476,7 +11053,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_Bool(PetscOptions __pyx_v_opt,
}
/* "PETSc/petscopt.pxi":69
- * if flag==PETSC_TRUE: return <bint>value
+ * if flag==PETSC_TRUE: return toBool(value)
* if deft is not None: return deft
* raise KeyError(opt2str(pre, name)) # <<<<<<<<<<<<<<
*
@@ -10561,7 +11138,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_Int(PetscOptions __pyx_v_opt, c
* if flag==PETSC_TRUE: return toInt(value)
* if deft is not None: return deft
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetInt(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(3, 74, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetInt(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(3, 74, __pyx_L1_error)
/* "PETSc/petscopt.pxi":75
* cdef PetscBool flag = PETSC_FALSE
@@ -10682,7 +11259,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_Real(PetscOptions __pyx_v_opt,
* if flag==PETSC_TRUE: return toReal(value)
* if deft is not None: return deft
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetReal(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(3, 82, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetReal(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(3, 82, __pyx_L1_error)
/* "PETSc/petscopt.pxi":83
* cdef PetscBool flag = PETSC_FALSE
@@ -10803,7 +11380,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_Scalar(PetscOptions __pyx_v_opt
* if flag==PETSC_TRUE: return toScalar(value)
* if deft is not None: return deft
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetScalar(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(3, 90, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetScalar(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, (&__pyx_v_value), (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(3, 90, __pyx_L1_error)
/* "PETSc/petscopt.pxi":91
* cdef PetscBool flag = PETSC_FALSE
@@ -10915,7 +11492,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getopt_String(PetscOptions __pyx_v_opt
* if flag==PETSC_TRUE: return bytes2str(value)
* if deft is not None: return deft
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetString(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, __pyx_v_value, 0x400, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(3, 98, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetString(__pyx_v_opt, __pyx_v_pre, __pyx_v_name, __pyx_v_value, 0x400, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(3, 98, __pyx_L1_error)
/* "PETSc/petscopt.pxi":99
* cdef PetscBool flag = PETSC_FALSE
@@ -11443,7 +12020,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_tokenize(PyObject *__pyx_v_options) {
* try:
* CHKERR( PetscTokenFind(t, <char**>&p) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenCreate(__pyx_v_s, ' ', (&__pyx_v_t))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(3, 147, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenCreate(__pyx_v_s, ' ', (&__pyx_v_t))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(3, 147, __pyx_L1_error)
/* "PETSc/petscopt.pxi":148
* cdef list tokens = []
@@ -11461,7 +12038,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_tokenize(PyObject *__pyx_v_options) {
* while p != NULL:
* tokens.append(bytes2str(p))
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenFind(__pyx_v_t, ((char **)(&__pyx_v_p)))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(3, 149, __pyx_L4_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenFind(__pyx_v_t, ((char **)(&__pyx_v_p)))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(3, 149, __pyx_L4_error)
/* "PETSc/petscopt.pxi":150
* try:
@@ -11483,7 +12060,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_tokenize(PyObject *__pyx_v_options) {
*/
__pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 151, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_tokens, __pyx_t_1); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(3, 151, __pyx_L4_error)
+ __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_tokens, __pyx_t_1); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(3, 151, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "PETSc/petscopt.pxi":152
@@ -11493,7 +12070,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_tokenize(PyObject *__pyx_v_options) {
* finally:
* CHKERR( PetscTokenDestroy(&t) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenFind(__pyx_v_t, ((char **)(&__pyx_v_p)))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(3, 152, __pyx_L4_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenFind(__pyx_v_t, ((char **)(&__pyx_v_p)))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(3, 152, __pyx_L4_error)
}
}
@@ -11506,7 +12083,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_tokenize(PyObject *__pyx_v_options) {
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenDestroy((&__pyx_v_t))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(3, 154, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenDestroy((&__pyx_v_t))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(3, 154, __pyx_L1_error)
goto __pyx_L5;
}
/*exception exit:*/{
@@ -11525,9 +12102,8 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_tokenize(PyObject *__pyx_v_options) {
__Pyx_XGOTREF(__pyx_t_12);
__pyx_t_2 = __pyx_lineno; __pyx_t_5 = __pyx_clineno; __pyx_t_6 = __pyx_filename;
{
- __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenDestroy((&__pyx_v_t))); if (unlikely(__pyx_t_13 == -1)) __PYX_ERR(3, 154, __pyx_L9_error)
+ __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTokenDestroy((&__pyx_v_t))); if (unlikely(__pyx_t_13 == ((int)-1))) __PYX_ERR(3, 154, __pyx_L9_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
@@ -11542,7 +12118,6 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_tokenize(PyObject *__pyx_v_options) {
__pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_5; __pyx_filename = __pyx_t_6;
goto __pyx_L1_error;
__pyx_L9_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
@@ -11657,7 +12232,7 @@ static int __pyx_f_8petsc4py_5PETSc_iskey(PyObject *__pyx_v_key) {
* if b == PETSC_TRUE:
* return True
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsValidKey(__pyx_v_k, (&__pyx_v_b))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(3, 162, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsValidKey(__pyx_v_k, (&__pyx_v_b))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(3, 162, __pyx_L1_error)
/* "PETSc/petscopt.pxi":163
* key = str2bytes(key, &k)
@@ -11718,7 +12293,7 @@ static int __pyx_f_8petsc4py_5PETSc_iskey(PyObject *__pyx_v_key) {
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
- __Pyx_WriteUnraisable("petsc4py.PETSc.iskey", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.iskey", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_key);
@@ -11824,7 +12399,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getkey(PyObject *__pyx_v_key, PyObject
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
int __pyx_t_6;
- Py_ssize_t __pyx_t_7;
+ int __pyx_t_7;
__Pyx_RefNannySetupContext("getkey", 0);
__Pyx_INCREF(__pyx_v_key);
@@ -11915,7 +12490,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getkey(PyObject *__pyx_v_key, PyObject
__pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_key, __pyx_n_s_startswith); if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 179, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -11928,15 +12503,33 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getkey(PyObject *__pyx_v_key, PyObject
__pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_prefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 179, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(3, 179, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = NULL;
- __Pyx_INCREF(__pyx_v_prefix);
- __Pyx_GIVEREF(__pyx_v_prefix);
- PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_prefix);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 179, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_prefix};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 179, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_prefix};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 179, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(3, 179, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = NULL;
+ __Pyx_INCREF(__pyx_v_prefix);
+ __Pyx_GIVEREF(__pyx_v_prefix);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_prefix);
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 179, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(3, 179, __pyx_L1_error)
@@ -11977,7 +12570,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getkey(PyObject *__pyx_v_key, PyObject
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_5 = NULL;
__pyx_t_7 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -11987,23 +12580,41 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_getkey(PyObject *__pyx_v_key, PyObject
__pyx_t_7 = 1;
}
}
- __pyx_t_4 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(3, 181, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- if (__pyx_t_5) {
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_prefix, __pyx_kp_s__10, __pyx_int_1};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 181, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_v_prefix, __pyx_kp_s__10, __pyx_int_1};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_7, 3+__pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 181, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(3+__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(3, 181, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (__pyx_t_5) {
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_prefix);
+ __Pyx_GIVEREF(__pyx_v_prefix);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_7, __pyx_v_prefix);
+ __Pyx_INCREF(__pyx_kp_s__10);
+ __Pyx_GIVEREF(__pyx_kp_s__10);
+ PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_7, __pyx_kp_s__10);
+ __Pyx_INCREF(__pyx_int_1);
+ __Pyx_GIVEREF(__pyx_int_1);
+ PyTuple_SET_ITEM(__pyx_t_4, 2+__pyx_t_7, __pyx_int_1);
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 181, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
- __Pyx_INCREF(__pyx_v_prefix);
- __Pyx_GIVEREF(__pyx_v_prefix);
- PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_7, __pyx_v_prefix);
- __Pyx_INCREF(__pyx_kp_s__10);
- __Pyx_GIVEREF(__pyx_kp_s__10);
- PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_7, __pyx_kp_s__10);
- __Pyx_INCREF(__pyx_int_1);
- __Pyx_GIVEREF(__pyx_int_1);
- PyTuple_SET_ITEM(__pyx_t_4, 2+__pyx_t_7, __pyx_int_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 181, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -12130,7 +12741,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_parseopt(PyObject *__pyx_v_options, Py
* first = gettok(tokens)
* while first:
*/
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 190, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_opts = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
@@ -12367,7 +12978,7 @@ static CYTHON_INLINE MPI_Comm __pyx_f_8petsc4py_5PETSc_mpi4py_Comm_Get(PyObject
__Pyx_INCREF(__pyx_n_s_MPI);
__Pyx_GIVEREF(__pyx_n_s_MPI);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_MPI);
- __pyx_t_2 = __Pyx_Import(__pyx_n_s_mpi4py, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) __PYX_ERR(13, 40, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_Import(__pyx_n_s_mpi4py, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(13, 40, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_MPI); if (unlikely(!__pyx_t_1)) __PYX_ERR(13, 40, __pyx_L1_error)
@@ -12384,7 +12995,7 @@ static CYTHON_INLINE MPI_Comm __pyx_f_8petsc4py_5PETSc_mpi4py_Comm_Get(PyObject
* MPI, b"PyMPIComm_Get", b"MPI_Comm *(PyObject *)")
* if commget == NULL: return MPI_COMM_NULL
*/
- __pyx_t_3 = Cython_ImportFunction(__pyx_v_MPI, ((char *)"PyMPIComm_Get"), ((char *)"MPI_Comm *(PyObject *)")); if (unlikely(__pyx_t_3 == NULL && PyErr_Occurred())) __PYX_ERR(13, 42, __pyx_L1_error)
+ __pyx_t_3 = Cython_ImportFunction(__pyx_v_MPI, ((char *)"PyMPIComm_Get"), ((char *)"MPI_Comm *(PyObject *)")); if (unlikely(__pyx_t_3 == ((void *)NULL) && PyErr_Occurred())) __PYX_ERR(13, 42, __pyx_L1_error)
__pyx_v_commget = ((__pyx_t_8petsc4py_5PETSc_PyMPICommGet *)__pyx_t_3);
/* "PETSc/petscmpi.pxi":44
@@ -12407,7 +13018,7 @@ static CYTHON_INLINE MPI_Comm __pyx_f_8petsc4py_5PETSc_mpi4py_Comm_Get(PyObject
* if ptr == NULL: return MPI_COMM_NULL
* return ptr[0]
*/
- __pyx_t_5 = __pyx_v_commget(__pyx_v_comm); if (unlikely(__pyx_t_5 == NULL)) __PYX_ERR(13, 45, __pyx_L1_error)
+ __pyx_t_5 = __pyx_v_commget(__pyx_v_comm); if (unlikely(__pyx_t_5 == ((MPI_Comm *)NULL))) __PYX_ERR(13, 45, __pyx_L1_error)
__pyx_v_ptr = __pyx_t_5;
/* "PETSc/petscmpi.pxi":46
@@ -12484,7 +13095,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_mpi4py_Comm_New(MPI_Comm
__Pyx_INCREF(__pyx_n_s_MPI);
__Pyx_GIVEREF(__pyx_n_s_MPI);
PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_MPI);
- __pyx_t_2 = __Pyx_Import(__pyx_n_s_mpi4py, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) __PYX_ERR(13, 50, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_Import(__pyx_n_s_mpi4py, __pyx_t_1, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(13, 50, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_MPI); if (unlikely(!__pyx_t_1)) __PYX_ERR(13, 50, __pyx_L1_error)
@@ -12501,7 +13112,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_mpi4py_Comm_New(MPI_Comm
* MPI, b"PyMPIComm_New", b"PyObject *(MPI_Comm)")
* if commnew == NULL: return None
*/
- __pyx_t_3 = Cython_ImportFunction(__pyx_v_MPI, ((char *)"PyMPIComm_New"), ((char *)"PyObject *(MPI_Comm)")); if (unlikely(__pyx_t_3 == NULL && PyErr_Occurred())) __PYX_ERR(13, 52, __pyx_L1_error)
+ __pyx_t_3 = Cython_ImportFunction(__pyx_v_MPI, ((char *)"PyMPIComm_New"), ((char *)"PyObject *(MPI_Comm)")); if (unlikely(__pyx_t_3 == ((void *)NULL) && PyErr_Occurred())) __PYX_ERR(13, 52, __pyx_L1_error)
__pyx_v_commnew = ((__pyx_t_8petsc4py_5PETSc_PyMPICommNew *)__pyx_t_3);
/* "PETSc/petscmpi.pxi":54
@@ -12948,7 +13559,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_comm_size(MPI_Comm __pyx_v_com
* return size
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(13, 90, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(13, 90, __pyx_L1_error)
/* "PETSc/petscmpi.pxi":91
* cdef int size = 0
@@ -13027,7 +13638,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_comm_rank(MPI_Comm __pyx_v_com
* return rank
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_rank(__pyx_v_comm, (&__pyx_v_rank))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(13, 96, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_rank(__pyx_v_comm, (&__pyx_v_rank))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(13, 96, __pyx_L1_error)
/* "PETSc/petscmpi.pxi":97
* cdef int rank = 0
@@ -13057,7 +13668,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_comm_rank(MPI_Comm __pyx_v_com
return __pyx_r;
}
-/* "PETSc/petscsys.pxi":57
+/* "PETSc/petscsys.pxi":48
*
*
* cdef inline int Sys_Sizes( # <<<<<<<<<<<<<<
@@ -13087,7 +13698,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
int __pyx_t_11;
__Pyx_RefNannySetupContext("Sys_Sizes", 0);
- /* "PETSc/petscsys.pxi":64
+ /* "PETSc/petscsys.pxi":55
* ) except -1:
* # get block size
* cdef PetscInt bs=PETSC_DECIDE, b=PETSC_DECIDE # <<<<<<<<<<<<<<
@@ -13097,7 +13708,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_v_bs = PETSC_DECIDE;
__pyx_v_b = PETSC_DECIDE;
- /* "PETSc/petscsys.pxi":65
+ /* "PETSc/petscsys.pxi":56
* # get block size
* cdef PetscInt bs=PETSC_DECIDE, b=PETSC_DECIDE
* if bsize is not None: bs = b = asInt(bsize) # <<<<<<<<<<<<<<
@@ -13107,12 +13718,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_t_1 = (__pyx_v_bsize != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(14, 65, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(14, 56, __pyx_L1_error)
__pyx_v_bs = __pyx_t_3;
__pyx_v_b = __pyx_t_3;
}
- /* "PETSc/petscsys.pxi":66
+ /* "PETSc/petscsys.pxi":57
* cdef PetscInt bs=PETSC_DECIDE, b=PETSC_DECIDE
* if bsize is not None: bs = b = asInt(bsize)
* if bs == PETSC_DECIDE: bs = 1 # <<<<<<<<<<<<<<
@@ -13124,7 +13735,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_v_bs = 1;
}
- /* "PETSc/petscsys.pxi":68
+ /* "PETSc/petscsys.pxi":59
* if bs == PETSC_DECIDE: bs = 1
* # unpack and get local and global sizes
* cdef PetscInt n=PETSC_DECIDE, N=PETSC_DECIDE # <<<<<<<<<<<<<<
@@ -13134,7 +13745,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_v_n = PETSC_DECIDE;
__pyx_v_N = PETSC_DECIDE;
- /* "PETSc/petscsys.pxi":70
+ /* "PETSc/petscsys.pxi":61
* cdef PetscInt n=PETSC_DECIDE, N=PETSC_DECIDE
* cdef object on, oN
* try: # <<<<<<<<<<<<<<
@@ -13150,7 +13761,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__Pyx_XGOTREF(__pyx_t_6);
/*try:*/ {
- /* "PETSc/petscsys.pxi":71
+ /* "PETSc/petscsys.pxi":62
* cdef object on, oN
* try:
* on, oN = size # <<<<<<<<<<<<<<
@@ -13159,7 +13770,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
*/
if ((likely(PyTuple_CheckExact(__pyx_v_size))) || (PyList_CheckExact(__pyx_v_size))) {
PyObject* sequence = __pyx_v_size;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -13167,9 +13778,9 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(14, 71, __pyx_L5_error)
+ __PYX_ERR(14, 62, __pyx_L5_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -13180,37 +13791,37 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 71, __pyx_L5_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 62, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 71, __pyx_L5_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 62, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_9 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 71, __pyx_L5_error)
+ __pyx_t_9 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 62, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext;
- index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L13_unpacking_failed;
+ index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L13_unpacking_failed;
+ index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L11_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) __PYX_ERR(14, 71, __pyx_L5_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) __PYX_ERR(14, 62, __pyx_L5_error)
__pyx_t_10 = NULL;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- goto __pyx_L14_unpacking_done;
- __pyx_L13_unpacking_failed:;
+ goto __pyx_L12_unpacking_done;
+ __pyx_L11_unpacking_failed:;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_10 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(14, 71, __pyx_L5_error)
- __pyx_L14_unpacking_done:;
+ __PYX_ERR(14, 62, __pyx_L5_error)
+ __pyx_L12_unpacking_done:;
}
__pyx_v_on = __pyx_t_7;
__pyx_t_7 = 0;
__pyx_v_oN = __pyx_t_8;
__pyx_t_8 = 0;
- /* "PETSc/petscsys.pxi":70
+ /* "PETSc/petscsys.pxi":61
* cdef PetscInt n=PETSC_DECIDE, N=PETSC_DECIDE
* cdef object on, oN
* try: # <<<<<<<<<<<<<<
@@ -13221,14 +13832,13 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- goto __pyx_L12_try_end;
+ goto __pyx_L10_try_end;
__pyx_L5_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/petscsys.pxi":72
+ /* "PETSc/petscsys.pxi":63
* try:
* on, oN = size
* except (TypeError, ValueError): # <<<<<<<<<<<<<<
@@ -13238,12 +13848,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_t_11 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError) || __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError);
if (__pyx_t_11) {
__Pyx_AddTraceback("petsc4py.PETSc.Sys_Sizes", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_9) < 0) __PYX_ERR(14, 72, __pyx_L7_except_error)
+ if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_9) < 0) __PYX_ERR(14, 63, __pyx_L7_except_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_9);
- /* "PETSc/petscsys.pxi":73
+ /* "PETSc/petscsys.pxi":64
* on, oN = size
* except (TypeError, ValueError):
* on = None; oN = size # <<<<<<<<<<<<<<
@@ -13262,29 +13872,27 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
goto __pyx_L7_except_error;
__pyx_L7_except_error:;
- /* "PETSc/petscsys.pxi":70
+ /* "PETSc/petscsys.pxi":61
* cdef PetscInt n=PETSC_DECIDE, N=PETSC_DECIDE
* cdef object on, oN
* try: # <<<<<<<<<<<<<<
* on, oN = size
* except (TypeError, ValueError):
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
goto __pyx_L1_error;
__pyx_L6_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
- __pyx_L12_try_end:;
+ __pyx_L10_try_end:;
}
- /* "PETSc/petscsys.pxi":74
+ /* "PETSc/petscsys.pxi":65
* except (TypeError, ValueError):
* on = None; oN = size
* if on is not None: n = asInt(on) # <<<<<<<<<<<<<<
@@ -13294,11 +13902,11 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_t_2 = (__pyx_v_on != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_on); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(14, 74, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_on); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(14, 65, __pyx_L1_error)
__pyx_v_n = __pyx_t_3;
}
- /* "PETSc/petscsys.pxi":75
+ /* "PETSc/petscsys.pxi":66
* on = None; oN = size
* if on is not None: n = asInt(on)
* if oN is not None: N = asInt(oN) # <<<<<<<<<<<<<<
@@ -13308,11 +13916,11 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_t_1 = (__pyx_v_oN != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_oN); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(14, 75, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_oN); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(14, 66, __pyx_L1_error)
__pyx_v_N = __pyx_t_3;
}
- /* "PETSc/petscsys.pxi":77
+ /* "PETSc/petscsys.pxi":68
* if oN is not None: N = asInt(oN)
* # check block, local, and and global sizes
* if (bs < 1): raise ValueError( # <<<<<<<<<<<<<<
@@ -13322,40 +13930,40 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_t_2 = ((__pyx_v_bs < 1) != 0);
if (__pyx_t_2) {
- /* "PETSc/petscsys.pxi":78
+ /* "PETSc/petscsys.pxi":69
* # check block, local, and and global sizes
* if (bs < 1): raise ValueError(
* "block size %d must be positive" % toInt(bs)) # <<<<<<<<<<<<<<
* if n==PETSC_DECIDE and N==PETSC_DECIDE: raise ValueError(
* "local and global sizes cannot be both 'DECIDE'")
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 78, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 69, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_block_size_d_must_be_positive, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 78, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_block_size_d_must_be_positive, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 69, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "PETSc/petscsys.pxi":77
+ /* "PETSc/petscsys.pxi":68
* if oN is not None: N = asInt(oN)
* # check block, local, and and global sizes
* if (bs < 1): raise ValueError( # <<<<<<<<<<<<<<
* "block size %d must be positive" % toInt(bs))
* if n==PETSC_DECIDE and N==PETSC_DECIDE: raise ValueError(
*/
- __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 77, __pyx_L1_error)
+ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 68, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7);
__pyx_t_7 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 77, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 68, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_Raise(__pyx_t_7, 0, 0, 0);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __PYX_ERR(14, 77, __pyx_L1_error)
+ __PYX_ERR(14, 68, __pyx_L1_error)
}
- /* "PETSc/petscsys.pxi":79
+ /* "PETSc/petscsys.pxi":70
* if (bs < 1): raise ValueError(
* "block size %d must be positive" % toInt(bs))
* if n==PETSC_DECIDE and N==PETSC_DECIDE: raise ValueError( # <<<<<<<<<<<<<<
@@ -13366,20 +13974,20 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
if (__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
- goto __pyx_L21_bool_binop_done;
+ goto __pyx_L19_bool_binop_done;
}
__pyx_t_1 = ((__pyx_v_N == PETSC_DECIDE) != 0);
__pyx_t_2 = __pyx_t_1;
- __pyx_L21_bool_binop_done:;
+ __pyx_L19_bool_binop_done:;
if (__pyx_t_2) {
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 79, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 70, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_Raise(__pyx_t_7, 0, 0, 0);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __PYX_ERR(14, 79, __pyx_L1_error)
+ __PYX_ERR(14, 70, __pyx_L1_error)
}
- /* "PETSc/petscsys.pxi":81
+ /* "PETSc/petscsys.pxi":72
* if n==PETSC_DECIDE and N==PETSC_DECIDE: raise ValueError(
* "local and global sizes cannot be both 'DECIDE'")
* if (n > 0) and (n % bs): raise ValueError( # <<<<<<<<<<<<<<
@@ -13390,25 +13998,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
if (__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
- goto __pyx_L24_bool_binop_done;
+ goto __pyx_L22_bool_binop_done;
}
__pyx_t_1 = ((__pyx_v_n % __pyx_v_bs) != 0);
__pyx_t_2 = __pyx_t_1;
- __pyx_L24_bool_binop_done:;
+ __pyx_L22_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscsys.pxi":83
+ /* "PETSc/petscsys.pxi":74
* if (n > 0) and (n % bs): raise ValueError(
* "local size %d not divisible by block size %d" %
* (toInt(n), toInt(bs)) ) # <<<<<<<<<<<<<<
* if (N > 0) and (N % bs): raise ValueError(
* "global size %d not divisible by block size %d" %
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 83, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 74, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 83, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 74, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 83, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 74, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7);
@@ -13417,38 +14025,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_t_7 = 0;
__pyx_t_9 = 0;
- /* "PETSc/petscsys.pxi":82
+ /* "PETSc/petscsys.pxi":73
* "local and global sizes cannot be both 'DECIDE'")
* if (n > 0) and (n % bs): raise ValueError(
* "local size %d not divisible by block size %d" % # <<<<<<<<<<<<<<
* (toInt(n), toInt(bs)) )
* if (N > 0) and (N % bs): raise ValueError(
*/
- __pyx_t_9 = __Pyx_PyString_Format(__pyx_kp_s_local_size_d_not_divisible_by_bl, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 82, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyString_Format(__pyx_kp_s_local_size_d_not_divisible_by_bl, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 73, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/petscsys.pxi":81
+ /* "PETSc/petscsys.pxi":72
* if n==PETSC_DECIDE and N==PETSC_DECIDE: raise ValueError(
* "local and global sizes cannot be both 'DECIDE'")
* if (n > 0) and (n % bs): raise ValueError( # <<<<<<<<<<<<<<
* "local size %d not divisible by block size %d" %
* (toInt(n), toInt(bs)) )
*/
- __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 81, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 72, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_9);
__pyx_t_9 = 0;
- __pyx_t_9 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 81, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 72, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_Raise(__pyx_t_9, 0, 0, 0);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __PYX_ERR(14, 81, __pyx_L1_error)
+ __PYX_ERR(14, 72, __pyx_L1_error)
}
- /* "PETSc/petscsys.pxi":84
+ /* "PETSc/petscsys.pxi":75
* "local size %d not divisible by block size %d" %
* (toInt(n), toInt(bs)) )
* if (N > 0) and (N % bs): raise ValueError( # <<<<<<<<<<<<<<
@@ -13459,25 +14067,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
if (__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
- goto __pyx_L27_bool_binop_done;
+ goto __pyx_L25_bool_binop_done;
}
__pyx_t_1 = ((__pyx_v_N % __pyx_v_bs) != 0);
__pyx_t_2 = __pyx_t_1;
- __pyx_L27_bool_binop_done:;
+ __pyx_L25_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscsys.pxi":86
+ /* "PETSc/petscsys.pxi":77
* if (N > 0) and (N % bs): raise ValueError(
* "global size %d not divisible by block size %d" %
* (toInt(N), toInt(bs)) ) # <<<<<<<<<<<<<<
* # return result to the caller
* if _b != NULL: _b[0] = b
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 86, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_9)) __PYX_ERR(14, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 86, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 86, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_9);
@@ -13486,38 +14094,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_t_9 = 0;
__pyx_t_8 = 0;
- /* "PETSc/petscsys.pxi":85
+ /* "PETSc/petscsys.pxi":76
* (toInt(n), toInt(bs)) )
* if (N > 0) and (N % bs): raise ValueError(
* "global size %d not divisible by block size %d" % # <<<<<<<<<<<<<<
* (toInt(N), toInt(bs)) )
* # return result to the caller
*/
- __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_global_size_d_not_divisible_by_b, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 85, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_global_size_d_not_divisible_by_b, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 76, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/petscsys.pxi":84
+ /* "PETSc/petscsys.pxi":75
* "local size %d not divisible by block size %d" %
* (toInt(n), toInt(bs)) )
* if (N > 0) and (N % bs): raise ValueError( # <<<<<<<<<<<<<<
* "global size %d not divisible by block size %d" %
* (toInt(N), toInt(bs)) )
*/
- __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 84, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(14, 75, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 84, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(14, 75, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_Raise(__pyx_t_8, 0, 0, 0);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __PYX_ERR(14, 84, __pyx_L1_error)
+ __PYX_ERR(14, 75, __pyx_L1_error)
}
- /* "PETSc/petscsys.pxi":88
+ /* "PETSc/petscsys.pxi":79
* (toInt(N), toInt(bs)) )
* # return result to the caller
* if _b != NULL: _b[0] = b # <<<<<<<<<<<<<<
@@ -13529,7 +14137,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
(__pyx_v__b[0]) = __pyx_v_b;
}
- /* "PETSc/petscsys.pxi":89
+ /* "PETSc/petscsys.pxi":80
* # return result to the caller
* if _b != NULL: _b[0] = b
* if _n != NULL: _n[0] = n # <<<<<<<<<<<<<<
@@ -13541,7 +14149,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
(__pyx_v__n[0]) = __pyx_v_n;
}
- /* "PETSc/petscsys.pxi":90
+ /* "PETSc/petscsys.pxi":81
* if _b != NULL: _b[0] = b
* if _n != NULL: _n[0] = n
* if _N != NULL: _N[0] = N # <<<<<<<<<<<<<<
@@ -13553,7 +14161,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
(__pyx_v__N[0]) = __pyx_v_N;
}
- /* "PETSc/petscsys.pxi":91
+ /* "PETSc/petscsys.pxi":82
* if _n != NULL: _n[0] = n
* if _N != NULL: _N[0] = N
* return 0 # <<<<<<<<<<<<<<
@@ -13563,7 +14171,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsys.pxi":57
+ /* "PETSc/petscsys.pxi":48
*
*
* cdef inline int Sys_Sizes( # <<<<<<<<<<<<<<
@@ -13585,7 +14193,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Sizes(PyObject *__pyx_v_si
return __pyx_r;
}
-/* "PETSc/petscsys.pxi":93
+/* "PETSc/petscsys.pxi":84
* return 0
*
* cdef inline int Sys_Layout( # <<<<<<<<<<<<<<
@@ -13602,7 +14210,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
int __pyx_t_2;
__Pyx_RefNannySetupContext("Sys_Layout", 0);
- /* "PETSc/petscsys.pxi":99
+ /* "PETSc/petscsys.pxi":90
* PetscInt *_N,
* ) except -1:
* cdef PetscInt n = _n[0] # <<<<<<<<<<<<<<
@@ -13611,7 +14219,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
*/
__pyx_v_n = (__pyx_v__n[0]);
- /* "PETSc/petscsys.pxi":100
+ /* "PETSc/petscsys.pxi":91
* ) except -1:
* cdef PetscInt n = _n[0]
* cdef PetscInt N = _N[0] # <<<<<<<<<<<<<<
@@ -13620,7 +14228,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
*/
__pyx_v_N = (__pyx_v__N[0]);
- /* "PETSc/petscsys.pxi":101
+ /* "PETSc/petscsys.pxi":92
* cdef PetscInt n = _n[0]
* cdef PetscInt N = _N[0]
* if bs < 0: bs = 1 # <<<<<<<<<<<<<<
@@ -13632,7 +14240,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
__pyx_v_bs = 1;
}
- /* "PETSc/petscsys.pxi":102
+ /* "PETSc/petscsys.pxi":93
* cdef PetscInt N = _N[0]
* if bs < 0: bs = 1
* if n > 0: n = n // bs # <<<<<<<<<<<<<<
@@ -13644,7 +14252,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
__pyx_v_n = (__pyx_v_n / __pyx_v_bs);
}
- /* "PETSc/petscsys.pxi":103
+ /* "PETSc/petscsys.pxi":94
* if bs < 0: bs = 1
* if n > 0: n = n // bs
* if N > 0: N = N // bs # <<<<<<<<<<<<<<
@@ -13656,16 +14264,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
__pyx_v_N = (__pyx_v_N / __pyx_v_bs);
}
- /* "PETSc/petscsys.pxi":104
+ /* "PETSc/petscsys.pxi":95
* if n > 0: n = n // bs
* if N > 0: N = N // bs
* CHKERR( PetscSplitOwnership(comm, &n, &N) ) # <<<<<<<<<<<<<<
* _n[0] = n * bs
* _N[0] = N * bs
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSplitOwnership(__pyx_v_comm, (&__pyx_v_n), (&__pyx_v_N))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(14, 104, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSplitOwnership(__pyx_v_comm, (&__pyx_v_n), (&__pyx_v_N))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(14, 95, __pyx_L1_error)
- /* "PETSc/petscsys.pxi":105
+ /* "PETSc/petscsys.pxi":96
* if N > 0: N = N // bs
* CHKERR( PetscSplitOwnership(comm, &n, &N) )
* _n[0] = n * bs # <<<<<<<<<<<<<<
@@ -13674,7 +14282,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
*/
(__pyx_v__n[0]) = (__pyx_v_n * __pyx_v_bs);
- /* "PETSc/petscsys.pxi":106
+ /* "PETSc/petscsys.pxi":97
* CHKERR( PetscSplitOwnership(comm, &n, &N) )
* _n[0] = n * bs
* _N[0] = N * bs # <<<<<<<<<<<<<<
@@ -13682,7 +14290,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
*/
(__pyx_v__N[0]) = (__pyx_v_N * __pyx_v_bs);
- /* "PETSc/petscsys.pxi":107
+ /* "PETSc/petscsys.pxi":98
* _n[0] = n * bs
* _N[0] = N * bs
* return 0 # <<<<<<<<<<<<<<
@@ -13690,7 +14298,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Sys_Layout(MPI_Comm __pyx_v_co
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsys.pxi":93
+ /* "PETSc/petscsys.pxi":84
* return 0
*
* cdef inline int Sys_Layout( # <<<<<<<<<<<<<<
@@ -13747,7 +14355,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_event_args2objs(PyObject *__py
* if n > 4: n = 4
*/
__pyx_v_i = 0;
- __pyx_t_1 = PyObject_Length(__pyx_v_args); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(15, 64, __pyx_L1_error)
+ __pyx_t_1 = PyObject_Length(__pyx_v_args); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(15, 64, __pyx_L1_error)
__pyx_v_n = __pyx_t_1;
/* "PETSc/petsclog.pxi":65
@@ -13851,7 +14459,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_event_args2objs(PyObject *__py
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":37
+/* "PETSc/petscobj.pxi":38
* # --------------------------------------------------------------------
*
* cdef inline int PetscINCREF(PetscObject *obj) nogil: # <<<<<<<<<<<<<<
@@ -13863,7 +14471,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCREF(PetscObject *__pyx
int __pyx_r;
int __pyx_t_1;
- /* "PETSc/petscobj.pxi":38
+ /* "PETSc/petscobj.pxi":39
*
* cdef inline int PetscINCREF(PetscObject *obj) nogil:
* if obj == NULL: return 0 # <<<<<<<<<<<<<<
@@ -13876,7 +14484,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCREF(PetscObject *__pyx
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":39
+ /* "PETSc/petscobj.pxi":40
* cdef inline int PetscINCREF(PetscObject *obj) nogil:
* if obj == NULL: return 0
* if obj[0] == NULL: return 0 # <<<<<<<<<<<<<<
@@ -13889,7 +14497,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCREF(PetscObject *__pyx
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":40
+ /* "PETSc/petscobj.pxi":41
* if obj == NULL: return 0
* if obj[0] == NULL: return 0
* return PetscObjectReference(obj[0]) # <<<<<<<<<<<<<<
@@ -13899,7 +14507,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCREF(PetscObject *__pyx
__pyx_r = PetscObjectReference((__pyx_v_obj[0]));
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":37
+ /* "PETSc/petscobj.pxi":38
* # --------------------------------------------------------------------
*
* cdef inline int PetscINCREF(PetscObject *obj) nogil: # <<<<<<<<<<<<<<
@@ -13912,7 +14520,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCREF(PetscObject *__pyx
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":42
+/* "PETSc/petscobj.pxi":43
* return PetscObjectReference(obj[0])
*
* cdef inline int PetscCLEAR(PetscObject* obj) nogil: # <<<<<<<<<<<<<<
@@ -13925,7 +14533,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscCLEAR(PetscObject *__pyx_
int __pyx_r;
int __pyx_t_1;
- /* "PETSc/petscobj.pxi":43
+ /* "PETSc/petscobj.pxi":44
*
* cdef inline int PetscCLEAR(PetscObject* obj) nogil:
* if obj == NULL: return 0 # <<<<<<<<<<<<<<
@@ -13938,7 +14546,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscCLEAR(PetscObject *__pyx_
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":44
+ /* "PETSc/petscobj.pxi":45
* cdef inline int PetscCLEAR(PetscObject* obj) nogil:
* if obj == NULL: return 0
* if obj[0] == NULL: return 0 # <<<<<<<<<<<<<<
@@ -13951,7 +14559,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscCLEAR(PetscObject *__pyx_
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":46
+ /* "PETSc/petscobj.pxi":47
* if obj[0] == NULL: return 0
* cdef PetscObject tmp
* tmp = obj[0]; obj[0] = NULL # <<<<<<<<<<<<<<
@@ -13961,7 +14569,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscCLEAR(PetscObject *__pyx_
__pyx_v_tmp = (__pyx_v_obj[0]);
(__pyx_v_obj[0]) = NULL;
- /* "PETSc/petscobj.pxi":47
+ /* "PETSc/petscobj.pxi":48
* cdef PetscObject tmp
* tmp = obj[0]; obj[0] = NULL
* return PetscObjectDestroy(&tmp) # <<<<<<<<<<<<<<
@@ -13971,7 +14579,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscCLEAR(PetscObject *__pyx_
__pyx_r = PetscObjectDestroy((&__pyx_v_tmp));
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":42
+ /* "PETSc/petscobj.pxi":43
* return PetscObjectReference(obj[0])
*
* cdef inline int PetscCLEAR(PetscObject* obj) nogil: # <<<<<<<<<<<<<<
@@ -13984,7 +14592,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscCLEAR(PetscObject *__pyx_
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":49
+/* "PETSc/petscobj.pxi":50
* return PetscObjectDestroy(&tmp)
*
* cdef inline int PetscDEALLOC(PetscObject* obj) nogil: # <<<<<<<<<<<<<<
@@ -13997,7 +14605,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
int __pyx_r;
int __pyx_t_1;
- /* "PETSc/petscobj.pxi":50
+ /* "PETSc/petscobj.pxi":51
*
* cdef inline int PetscDEALLOC(PetscObject* obj) nogil:
* if obj == NULL: return 0 # <<<<<<<<<<<<<<
@@ -14010,7 +14618,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":51
+ /* "PETSc/petscobj.pxi":52
* cdef inline int PetscDEALLOC(PetscObject* obj) nogil:
* if obj == NULL: return 0
* if obj[0] == NULL: return 0 # <<<<<<<<<<<<<<
@@ -14023,7 +14631,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":53
+ /* "PETSc/petscobj.pxi":54
* if obj[0] == NULL: return 0
* cdef PetscObject tmp
* tmp = obj[0]; obj[0] = NULL # <<<<<<<<<<<<<<
@@ -14033,7 +14641,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
__pyx_v_tmp = (__pyx_v_obj[0]);
(__pyx_v_obj[0]) = NULL;
- /* "PETSc/petscobj.pxi":54
+ /* "PETSc/petscobj.pxi":55
* cdef PetscObject tmp
* tmp = obj[0]; obj[0] = NULL
* if not (<int>PetscInitializeCalled): return 0 # <<<<<<<<<<<<<<
@@ -14046,7 +14654,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":55
+ /* "PETSc/petscobj.pxi":56
* tmp = obj[0]; obj[0] = NULL
* if not (<int>PetscInitializeCalled): return 0
* if (<int>PetscFinalizeCalled): return 0 # <<<<<<<<<<<<<<
@@ -14059,7 +14667,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":56
+ /* "PETSc/petscobj.pxi":57
* if not (<int>PetscInitializeCalled): return 0
* if (<int>PetscFinalizeCalled): return 0
* return PetscObjectDestroy(&tmp) # <<<<<<<<<<<<<<
@@ -14069,7 +14677,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
__pyx_r = PetscObjectDestroy((&__pyx_v_tmp));
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":49
+ /* "PETSc/petscobj.pxi":50
* return PetscObjectDestroy(&tmp)
*
* cdef inline int PetscDEALLOC(PetscObject* obj) nogil: # <<<<<<<<<<<<<<
@@ -14082,7 +14690,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscDEALLOC(PetscObject *__py
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":58
+/* "PETSc/petscobj.pxi":59
* return PetscObjectDestroy(&tmp)
*
* cdef inline int PetscINCSTATE(PetscObject *obj) nogil: # <<<<<<<<<<<<<<
@@ -14094,7 +14702,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCSTATE(PetscObject *__p
int __pyx_r;
int __pyx_t_1;
- /* "PETSc/petscobj.pxi":59
+ /* "PETSc/petscobj.pxi":60
*
* cdef inline int PetscINCSTATE(PetscObject *obj) nogil:
* if obj == NULL: return 0 # <<<<<<<<<<<<<<
@@ -14107,7 +14715,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCSTATE(PetscObject *__p
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":60
+ /* "PETSc/petscobj.pxi":61
* cdef inline int PetscINCSTATE(PetscObject *obj) nogil:
* if obj == NULL: return 0
* if obj[0] == NULL: return 0 # <<<<<<<<<<<<<<
@@ -14120,7 +14728,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCSTATE(PetscObject *__p
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":61
+ /* "PETSc/petscobj.pxi":62
* if obj == NULL: return 0
* if obj[0] == NULL: return 0
* return PetscObjectStateIncrease(obj[0]) # <<<<<<<<<<<<<<
@@ -14130,7 +14738,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCSTATE(PetscObject *__p
__pyx_r = PetscObjectStateIncrease((__pyx_v_obj[0]));
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":58
+ /* "PETSc/petscobj.pxi":59
* return PetscObjectDestroy(&tmp)
*
* cdef inline int PetscINCSTATE(PetscObject *obj) nogil: # <<<<<<<<<<<<<<
@@ -14143,7 +14751,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCSTATE(PetscObject *__p
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":78
+/* "PETSc/petscobj.pxi":79
* int (*python_destroy)(void*)
*
* cdef inline void Py_DecRef(PyObject *ob) with gil: # <<<<<<<<<<<<<<
@@ -14154,11 +14762,11 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_PetscINCSTATE(PetscObject *__p
static CYTHON_INLINE void __pyx_f_8petsc4py_5PETSc_Py_DecRef(PyObject *__pyx_v_ob) {
__Pyx_RefNannyDeclarations
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("Py_DecRef", 0);
- /* "PETSc/petscobj.pxi":79
+ /* "PETSc/petscobj.pxi":80
*
* cdef inline void Py_DecRef(PyObject *ob) with gil:
* _Py_DecRef(ob) # <<<<<<<<<<<<<<
@@ -14167,7 +14775,7 @@ static CYTHON_INLINE void __pyx_f_8petsc4py_5PETSc_Py_DecRef(PyObject *__pyx_v_o
*/
Py_DECREF(__pyx_v_ob);
- /* "PETSc/petscobj.pxi":78
+ /* "PETSc/petscobj.pxi":79
* int (*python_destroy)(void*)
*
* cdef inline void Py_DecRef(PyObject *ob) with gil: # <<<<<<<<<<<<<<
@@ -14178,11 +14786,11 @@ static CYTHON_INLINE void __pyx_f_8petsc4py_5PETSc_Py_DecRef(PyObject *__pyx_v_o
/* function exit code */
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
}
-/* "PETSc/petscobj.pxi":81
+/* "PETSc/petscobj.pxi":82
* _Py_DecRef(ob)
*
* cdef int PetscDelPyDict(void* ptr) nogil: # <<<<<<<<<<<<<<
@@ -14195,7 +14803,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscDelPyDict(void *__pyx_v_ptr) {
int __pyx_t_1;
int __pyx_t_2;
- /* "PETSc/petscobj.pxi":82
+ /* "PETSc/petscobj.pxi":83
*
* cdef int PetscDelPyDict(void* ptr) nogil:
* if ptr != NULL and Py_IsInitialized(): # <<<<<<<<<<<<<<
@@ -14213,7 +14821,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscDelPyDict(void *__pyx_v_ptr) {
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/petscobj.pxi":83
+ /* "PETSc/petscobj.pxi":84
* cdef int PetscDelPyDict(void* ptr) nogil:
* if ptr != NULL and Py_IsInitialized():
* Py_DecRef(<PyObject*>ptr) # <<<<<<<<<<<<<<
@@ -14222,7 +14830,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscDelPyDict(void *__pyx_v_ptr) {
*/
__pyx_f_8petsc4py_5PETSc_Py_DecRef(((PyObject *)__pyx_v_ptr));
- /* "PETSc/petscobj.pxi":82
+ /* "PETSc/petscobj.pxi":83
*
* cdef int PetscDelPyDict(void* ptr) nogil:
* if ptr != NULL and Py_IsInitialized(): # <<<<<<<<<<<<<<
@@ -14231,7 +14839,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscDelPyDict(void *__pyx_v_ptr) {
*/
}
- /* "PETSc/petscobj.pxi":84
+ /* "PETSc/petscobj.pxi":85
* if ptr != NULL and Py_IsInitialized():
* Py_DecRef(<PyObject*>ptr)
* return 0 # <<<<<<<<<<<<<<
@@ -14241,7 +14849,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscDelPyDict(void *__pyx_v_ptr) {
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":81
+ /* "PETSc/petscobj.pxi":82
* _Py_DecRef(ob)
*
* cdef int PetscDelPyDict(void* ptr) nogil: # <<<<<<<<<<<<<<
@@ -14254,7 +14862,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscDelPyDict(void *__pyx_v_ptr) {
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":86
+/* "PETSc/petscobj.pxi":87
* return 0
*
* cdef object PetscGetPyDict(PetscObject obj, bint create): # <<<<<<<<<<<<<<
@@ -14269,7 +14877,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
PyObject *__pyx_t_2;
__Pyx_RefNannySetupContext("PetscGetPyDict", 0);
- /* "PETSc/petscobj.pxi":87
+ /* "PETSc/petscobj.pxi":88
*
* cdef object PetscGetPyDict(PetscObject obj, bint create):
* if obj.python_context != NULL: # <<<<<<<<<<<<<<
@@ -14279,7 +14887,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
__pyx_t_1 = ((__pyx_v_obj->python_context != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscobj.pxi":88
+ /* "PETSc/petscobj.pxi":89
* cdef object PetscGetPyDict(PetscObject obj, bint create):
* if obj.python_context != NULL:
* return <object>obj.python_context # <<<<<<<<<<<<<<
@@ -14291,7 +14899,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
__pyx_r = ((PyObject *)__pyx_v_obj->python_context);
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":87
+ /* "PETSc/petscobj.pxi":88
*
* cdef object PetscGetPyDict(PetscObject obj, bint create):
* if obj.python_context != NULL: # <<<<<<<<<<<<<<
@@ -14300,7 +14908,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
*/
}
- /* "PETSc/petscobj.pxi":89
+ /* "PETSc/petscobj.pxi":90
* if obj.python_context != NULL:
* return <object>obj.python_context
* if create: # <<<<<<<<<<<<<<
@@ -14310,7 +14918,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
__pyx_t_1 = (__pyx_v_create != 0);
if (__pyx_t_1) {
- /* "PETSc/petscobj.pxi":90
+ /* "PETSc/petscobj.pxi":91
* return <object>obj.python_context
* if create:
* obj.python_destroy = PetscDelPyDict # <<<<<<<<<<<<<<
@@ -14319,17 +14927,17 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
*/
__pyx_v_obj->python_destroy = __pyx_f_8petsc4py_5PETSc_PetscDelPyDict;
- /* "PETSc/petscobj.pxi":91
+ /* "PETSc/petscobj.pxi":92
* if create:
* obj.python_destroy = PetscDelPyDict
* obj.python_context = <void*>PyDict_New() # <<<<<<<<<<<<<<
* return <object>obj.python_context
* return None
*/
- __pyx_t_2 = PyDict_New(); if (unlikely(__pyx_t_2 == NULL)) __PYX_ERR(16, 91, __pyx_L1_error)
+ __pyx_t_2 = PyDict_New(); if (unlikely(__pyx_t_2 == ((PyObject *)NULL))) __PYX_ERR(16, 92, __pyx_L1_error)
__pyx_v_obj->python_context = ((void *)__pyx_t_2);
- /* "PETSc/petscobj.pxi":92
+ /* "PETSc/petscobj.pxi":93
* obj.python_destroy = PetscDelPyDict
* obj.python_context = <void*>PyDict_New()
* return <object>obj.python_context # <<<<<<<<<<<<<<
@@ -14341,7 +14949,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
__pyx_r = ((PyObject *)__pyx_v_obj->python_context);
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":89
+ /* "PETSc/petscobj.pxi":90
* if obj.python_context != NULL:
* return <object>obj.python_context
* if create: # <<<<<<<<<<<<<<
@@ -14350,7 +14958,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
*/
}
- /* "PETSc/petscobj.pxi":93
+ /* "PETSc/petscobj.pxi":94
* obj.python_context = <void*>PyDict_New()
* return <object>obj.python_context
* return None # <<<<<<<<<<<<<<
@@ -14362,7 +14970,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
__pyx_r = Py_None;
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":86
+ /* "PETSc/petscobj.pxi":87
* return 0
*
* cdef object PetscGetPyDict(PetscObject obj, bint create): # <<<<<<<<<<<<<<
@@ -14380,7 +14988,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyDict(PetscObject __pyx_v_obj
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":95
+/* "PETSc/petscobj.pxi":96
* return None
*
* cdef object PetscGetPyObj(PetscObject o, char name[]): # <<<<<<<<<<<<<<
@@ -14402,19 +15010,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
PyObject *__pyx_t_4;
__Pyx_RefNannySetupContext("PetscGetPyObj", 0);
- /* "PETSc/petscobj.pxi":96
+ /* "PETSc/petscobj.pxi":97
*
* cdef object PetscGetPyObj(PetscObject o, char name[]):
* cdef object dct = PetscGetPyDict(o, False) # <<<<<<<<<<<<<<
* if dct is None: return None
* cdef object key = bytes2str(name)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_PetscGetPyDict(__pyx_v_o, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(16, 96, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_PetscGetPyDict(__pyx_v_o, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(16, 97, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_dct = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscobj.pxi":97
+ /* "PETSc/petscobj.pxi":98
* cdef object PetscGetPyObj(PetscObject o, char name[]):
* cdef object dct = PetscGetPyDict(o, False)
* if dct is None: return None # <<<<<<<<<<<<<<
@@ -14430,19 +15038,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":98
+ /* "PETSc/petscobj.pxi":99
* cdef object dct = PetscGetPyDict(o, False)
* if dct is None: return None
* cdef object key = bytes2str(name) # <<<<<<<<<<<<<<
* cdef PyObject *d = <PyObject*>dct
* cdef PyObject *k = <PyObject*>key
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(16, 98, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_name); if (unlikely(!__pyx_t_1)) __PYX_ERR(16, 99, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_key = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscobj.pxi":99
+ /* "PETSc/petscobj.pxi":100
* if dct is None: return None
* cdef object key = bytes2str(name)
* cdef PyObject *d = <PyObject*>dct # <<<<<<<<<<<<<<
@@ -14451,7 +15059,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
*/
__pyx_v_d = ((PyObject *)__pyx_v_dct);
- /* "PETSc/petscobj.pxi":100
+ /* "PETSc/petscobj.pxi":101
* cdef object key = bytes2str(name)
* cdef PyObject *d = <PyObject*>dct
* cdef PyObject *k = <PyObject*>key # <<<<<<<<<<<<<<
@@ -14460,7 +15068,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
*/
__pyx_v_k = ((PyObject *)__pyx_v_key);
- /* "PETSc/petscobj.pxi":101
+ /* "PETSc/petscobj.pxi":102
* cdef PyObject *d = <PyObject*>dct
* cdef PyObject *k = <PyObject*>key
* cdef PyObject *v = NULL # <<<<<<<<<<<<<<
@@ -14469,17 +15077,17 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
*/
__pyx_v_v = NULL;
- /* "PETSc/petscobj.pxi":102
+ /* "PETSc/petscobj.pxi":103
* cdef PyObject *k = <PyObject*>key
* cdef PyObject *v = NULL
* v = PyDict_GetItem(d, k) # <<<<<<<<<<<<<<
* if v != NULL: return <object>v
* return None
*/
- __pyx_t_4 = PyDict_GetItem(__pyx_v_d, __pyx_v_k); if (unlikely(PyErr_Occurred())) __PYX_ERR(16, 102, __pyx_L1_error)
+ __pyx_t_4 = PyDict_GetItem(__pyx_v_d, __pyx_v_k); if (unlikely(PyErr_Occurred())) __PYX_ERR(16, 103, __pyx_L1_error)
__pyx_v_v = __pyx_t_4;
- /* "PETSc/petscobj.pxi":103
+ /* "PETSc/petscobj.pxi":104
* cdef PyObject *v = NULL
* v = PyDict_GetItem(d, k)
* if v != NULL: return <object>v # <<<<<<<<<<<<<<
@@ -14494,7 +15102,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":104
+ /* "PETSc/petscobj.pxi":105
* v = PyDict_GetItem(d, k)
* if v != NULL: return <object>v
* return None # <<<<<<<<<<<<<<
@@ -14506,7 +15114,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
__pyx_r = Py_None;
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":95
+ /* "PETSc/petscobj.pxi":96
* return None
*
* cdef object PetscGetPyObj(PetscObject o, char name[]): # <<<<<<<<<<<<<<
@@ -14527,7 +15135,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscGetPyObj(PetscObject __pyx_v_o, c
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":106
+/* "PETSc/petscobj.pxi":107
* return None
*
* cdef object PetscSetPyObj(PetscObject o, char name[], object p): # <<<<<<<<<<<<<<
@@ -14549,7 +15157,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
int __pyx_t_4;
__Pyx_RefNannySetupContext("PetscSetPyObj", 0);
- /* "PETSc/petscobj.pxi":108
+ /* "PETSc/petscobj.pxi":109
* cdef object PetscSetPyObj(PetscObject o, char name[], object p):
* cdef object dct
* if p is not None: # <<<<<<<<<<<<<<
@@ -14560,19 +15168,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscobj.pxi":109
+ /* "PETSc/petscobj.pxi":110
* cdef object dct
* if p is not None:
* dct = PetscGetPyDict(o, True) # <<<<<<<<<<<<<<
* else:
* dct = PetscGetPyDict(o, False)
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_PetscGetPyDict(__pyx_v_o, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 109, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_PetscGetPyDict(__pyx_v_o, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 110, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_dct = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscobj.pxi":108
+ /* "PETSc/petscobj.pxi":109
* cdef object PetscSetPyObj(PetscObject o, char name[], object p):
* cdef object dct
* if p is not None: # <<<<<<<<<<<<<<
@@ -14582,7 +15190,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
goto __pyx_L3;
}
- /* "PETSc/petscobj.pxi":111
+ /* "PETSc/petscobj.pxi":112
* dct = PetscGetPyDict(o, True)
* else:
* dct = PetscGetPyDict(o, False) # <<<<<<<<<<<<<<
@@ -14590,12 +15198,12 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
* cdef str key = bytes2str(name)
*/
/*else*/ {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_PetscGetPyDict(__pyx_v_o, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 111, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_PetscGetPyDict(__pyx_v_o, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 112, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_dct = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscobj.pxi":112
+ /* "PETSc/petscobj.pxi":113
* else:
* dct = PetscGetPyDict(o, False)
* if dct is None: return None # <<<<<<<<<<<<<<
@@ -14613,20 +15221,20 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
}
__pyx_L3:;
- /* "PETSc/petscobj.pxi":113
+ /* "PETSc/petscobj.pxi":114
* dct = PetscGetPyDict(o, False)
* if dct is None: return None
* cdef str key = bytes2str(name) # <<<<<<<<<<<<<<
* cdef PyObject *d = <PyObject*>dct
* cdef PyObject *k = <PyObject*>key
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 113, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_name); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 114, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(PyString_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(16, 113, __pyx_L1_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(16, 114, __pyx_L1_error)
__pyx_v_key = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscobj.pxi":114
+ /* "PETSc/petscobj.pxi":115
* if dct is None: return None
* cdef str key = bytes2str(name)
* cdef PyObject *d = <PyObject*>dct # <<<<<<<<<<<<<<
@@ -14635,7 +15243,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
*/
__pyx_v_d = ((PyObject *)__pyx_v_dct);
- /* "PETSc/petscobj.pxi":115
+ /* "PETSc/petscobj.pxi":116
* cdef str key = bytes2str(name)
* cdef PyObject *d = <PyObject*>dct
* cdef PyObject *k = <PyObject*>key # <<<<<<<<<<<<<<
@@ -14644,7 +15252,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
*/
__pyx_v_k = ((PyObject *)__pyx_v_key);
- /* "PETSc/petscobj.pxi":116
+ /* "PETSc/petscobj.pxi":117
* cdef PyObject *d = <PyObject*>dct
* cdef PyObject *k = <PyObject*>key
* cdef PyObject *v = <PyObject*>p # <<<<<<<<<<<<<<
@@ -14653,16 +15261,16 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
*/
__pyx_v_v = ((PyObject *)__pyx_v_p);
- /* "PETSc/petscobj.pxi":117
+ /* "PETSc/petscobj.pxi":118
* cdef PyObject *k = <PyObject*>key
* cdef PyObject *v = <PyObject*>p
* PyDict_SetItem(d, k, v) # <<<<<<<<<<<<<<
* if v == <PyObject*>None:
* PyDict_DelItem(d, k)
*/
- __pyx_t_4 = PyDict_SetItem(__pyx_v_d, __pyx_v_k, __pyx_v_v); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(16, 117, __pyx_L1_error)
+ __pyx_t_4 = PyDict_SetItem(__pyx_v_d, __pyx_v_k, __pyx_v_v); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(16, 118, __pyx_L1_error)
- /* "PETSc/petscobj.pxi":118
+ /* "PETSc/petscobj.pxi":119
* cdef PyObject *v = <PyObject*>p
* PyDict_SetItem(d, k, v)
* if v == <PyObject*>None: # <<<<<<<<<<<<<<
@@ -14672,16 +15280,16 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
__pyx_t_1 = ((__pyx_v_v == ((PyObject *)Py_None)) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscobj.pxi":119
+ /* "PETSc/petscobj.pxi":120
* PyDict_SetItem(d, k, v)
* if v == <PyObject*>None:
* PyDict_DelItem(d, k) # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_4 = PyDict_DelItem(__pyx_v_d, __pyx_v_k); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(16, 119, __pyx_L1_error)
+ __pyx_t_4 = PyDict_DelItem(__pyx_v_d, __pyx_v_k); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(16, 120, __pyx_L1_error)
- /* "PETSc/petscobj.pxi":118
+ /* "PETSc/petscobj.pxi":119
* cdef PyObject *v = <PyObject*>p
* PyDict_SetItem(d, k, v)
* if v == <PyObject*>None: # <<<<<<<<<<<<<<
@@ -14690,7 +15298,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
*/
}
- /* "PETSc/petscobj.pxi":120
+ /* "PETSc/petscobj.pxi":121
* if v == <PyObject*>None:
* PyDict_DelItem(d, k)
* return None # <<<<<<<<<<<<<<
@@ -14702,7 +15310,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
__pyx_r = Py_None;
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":106
+ /* "PETSc/petscobj.pxi":107
* return None
*
* cdef object PetscSetPyObj(PetscObject o, char name[], object p): # <<<<<<<<<<<<<<
@@ -14723,32 +15331,32 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PetscSetPyObj(PetscObject __pyx_v_o, c
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":127
+/* "PETSc/petscobj.pxi":129
* object PyLong_FromVoidPtr(void*)
*
- * cdef inline long Object_toFortran(PetscObject o) nogil: # <<<<<<<<<<<<<<
- * return <long> o
+ * cdef inline Py_intptr_t Object_toFortran(PetscObject o) nogil: # <<<<<<<<<<<<<<
+ * return <Py_intptr_t> o
*
*/
-static CYTHON_INLINE long __pyx_f_8petsc4py_5PETSc_Object_toFortran(PetscObject __pyx_v_o) {
- long __pyx_r;
+static CYTHON_INLINE Py_intptr_t __pyx_f_8petsc4py_5PETSc_Object_toFortran(PetscObject __pyx_v_o) {
+ Py_intptr_t __pyx_r;
- /* "PETSc/petscobj.pxi":128
+ /* "PETSc/petscobj.pxi":130
*
- * cdef inline long Object_toFortran(PetscObject o) nogil:
- * return <long> o # <<<<<<<<<<<<<<
+ * cdef inline Py_intptr_t Object_toFortran(PetscObject o) nogil:
+ * return <Py_intptr_t> o # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_r = ((long)__pyx_v_o);
+ __pyx_r = ((Py_intptr_t)__pyx_v_o);
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":127
+ /* "PETSc/petscobj.pxi":129
* object PyLong_FromVoidPtr(void*)
*
- * cdef inline long Object_toFortran(PetscObject o) nogil: # <<<<<<<<<<<<<<
- * return <long> o
+ * cdef inline Py_intptr_t Object_toFortran(PetscObject o) nogil: # <<<<<<<<<<<<<<
+ * return <Py_intptr_t> o
*
*/
@@ -14757,7 +15365,7 @@ static CYTHON_INLINE long __pyx_f_8petsc4py_5PETSc_Object_toFortran(PetscObject
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":132
+/* "PETSc/petscobj.pxi":134
* # --------------------------------------------------------------------
*
* cdef inline type subtype_DM(PetscDM dm): # <<<<<<<<<<<<<<
@@ -14774,7 +15382,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
int __pyx_t_2;
__Pyx_RefNannySetupContext("subtype_DM", 0);
- /* "PETSc/petscobj.pxi":133
+ /* "PETSc/petscobj.pxi":135
*
* cdef inline type subtype_DM(PetscDM dm):
* cdef PetscObject obj = <PetscObject> dm # <<<<<<<<<<<<<<
@@ -14783,7 +15391,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
*/
__pyx_v_obj = ((PetscObject)__pyx_v_dm);
- /* "PETSc/petscobj.pxi":134
+ /* "PETSc/petscobj.pxi":136
* cdef inline type subtype_DM(PetscDM dm):
* cdef PetscObject obj = <PetscObject> dm
* if obj == NULL: return DM # <<<<<<<<<<<<<<
@@ -14798,7 +15406,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":136
+ /* "PETSc/petscobj.pxi":138
* if obj == NULL: return DM
* # ---
* cdef PetscBool match = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -14807,16 +15415,16 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
*/
__pyx_v_match = PETSC_FALSE;
- /* "PETSc/petscobj.pxi":137
+ /* "PETSc/petscobj.pxi":139
* # ---
* cdef PetscBool match = PETSC_FALSE
* CHKERR( PetscObjectTypeCompare(obj, b"da", &match) ) # <<<<<<<<<<<<<<
* if match == PETSC_TRUE: return DMDA
* CHKERR( PetscObjectTypeCompare(obj, b"plex", &match) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"da"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(16, 137, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"da"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(16, 139, __pyx_L1_error)
- /* "PETSc/petscobj.pxi":138
+ /* "PETSc/petscobj.pxi":140
* cdef PetscBool match = PETSC_FALSE
* CHKERR( PetscObjectTypeCompare(obj, b"da", &match) )
* if match == PETSC_TRUE: return DMDA # <<<<<<<<<<<<<<
@@ -14831,16 +15439,16 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":139
+ /* "PETSc/petscobj.pxi":141
* CHKERR( PetscObjectTypeCompare(obj, b"da", &match) )
* if match == PETSC_TRUE: return DMDA
* CHKERR( PetscObjectTypeCompare(obj, b"plex", &match) ) # <<<<<<<<<<<<<<
* if match == PETSC_TRUE: return DMPlex
* CHKERR( PetscObjectTypeCompare(obj, b"composite", &match) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"plex"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(16, 139, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"plex"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(16, 141, __pyx_L1_error)
- /* "PETSc/petscobj.pxi":140
+ /* "PETSc/petscobj.pxi":142
* if match == PETSC_TRUE: return DMDA
* CHKERR( PetscObjectTypeCompare(obj, b"plex", &match) )
* if match == PETSC_TRUE: return DMPlex # <<<<<<<<<<<<<<
@@ -14855,16 +15463,16 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":141
+ /* "PETSc/petscobj.pxi":143
* CHKERR( PetscObjectTypeCompare(obj, b"plex", &match) )
* if match == PETSC_TRUE: return DMPlex
* CHKERR( PetscObjectTypeCompare(obj, b"composite", &match) ) # <<<<<<<<<<<<<<
* if match == PETSC_TRUE: return DMComposite
* CHKERR( PetscObjectTypeCompare(obj, b"shell", &match) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"composite"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(16, 141, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"composite"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(16, 143, __pyx_L1_error)
- /* "PETSc/petscobj.pxi":142
+ /* "PETSc/petscobj.pxi":144
* if match == PETSC_TRUE: return DMPlex
* CHKERR( PetscObjectTypeCompare(obj, b"composite", &match) )
* if match == PETSC_TRUE: return DMComposite # <<<<<<<<<<<<<<
@@ -14879,16 +15487,16 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":143
+ /* "PETSc/petscobj.pxi":145
* CHKERR( PetscObjectTypeCompare(obj, b"composite", &match) )
* if match == PETSC_TRUE: return DMComposite
* CHKERR( PetscObjectTypeCompare(obj, b"shell", &match) ) # <<<<<<<<<<<<<<
* if match == PETSC_TRUE: return DMShell
* # ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"shell"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(16, 143, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectTypeCompare(__pyx_v_obj, ((char *)"shell"), (&__pyx_v_match))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(16, 145, __pyx_L1_error)
- /* "PETSc/petscobj.pxi":144
+ /* "PETSc/petscobj.pxi":146
* if match == PETSC_TRUE: return DMComposite
* CHKERR( PetscObjectTypeCompare(obj, b"shell", &match) )
* if match == PETSC_TRUE: return DMShell # <<<<<<<<<<<<<<
@@ -14903,7 +15511,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":146
+ /* "PETSc/petscobj.pxi":148
* if match == PETSC_TRUE: return DMShell
* # ---
* return DM # <<<<<<<<<<<<<<
@@ -14915,7 +15523,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
__pyx_r = __pyx_ptype_8petsc4py_5PETSc_DM;
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":132
+ /* "PETSc/petscobj.pxi":134
* # --------------------------------------------------------------------
*
* cdef inline type subtype_DM(PetscDM dm): # <<<<<<<<<<<<<<
@@ -14933,7 +15541,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_DM(DM __pyx_
return __pyx_r;
}
-/* "PETSc/petscobj.pxi":148
+/* "PETSc/petscobj.pxi":150
* return DM
*
* cdef inline type subtype_Object(PetscObject obj): # <<<<<<<<<<<<<<
@@ -14951,7 +15559,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("subtype_Object", 0);
- /* "PETSc/petscobj.pxi":149
+ /* "PETSc/petscobj.pxi":151
*
* cdef inline type subtype_Object(PetscObject obj):
* cdef type klass = Object # <<<<<<<<<<<<<<
@@ -14961,7 +15569,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
__Pyx_INCREF(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Object));
__pyx_v_klass = __pyx_ptype_8petsc4py_5PETSc_Object;
- /* "PETSc/petscobj.pxi":150
+ /* "PETSc/petscobj.pxi":152
* cdef inline type subtype_Object(PetscObject obj):
* cdef type klass = Object
* if obj == NULL: return klass # <<<<<<<<<<<<<<
@@ -14976,7 +15584,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
goto __pyx_L0;
}
- /* "PETSc/petscobj.pxi":151
+ /* "PETSc/petscobj.pxi":153
* cdef type klass = Object
* if obj == NULL: return klass
* cdef PetscClassId classid = 0 # <<<<<<<<<<<<<<
@@ -14985,16 +15593,16 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
*/
__pyx_v_classid = 0;
- /* "PETSc/petscobj.pxi":152
+ /* "PETSc/petscobj.pxi":154
* if obj == NULL: return klass
* cdef PetscClassId classid = 0
* CHKERR( PetscObjectGetClassId(obj,&classid) ) # <<<<<<<<<<<<<<
* if classid == PETSC_DM_CLASSID:
* klass = subtype_DM(<PetscDM>obj)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetClassId(__pyx_v_obj, (&__pyx_v_classid))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(16, 152, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetClassId(__pyx_v_obj, (&__pyx_v_classid))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(16, 154, __pyx_L1_error)
- /* "PETSc/petscobj.pxi":153
+ /* "PETSc/petscobj.pxi":155
* cdef PetscClassId classid = 0
* CHKERR( PetscObjectGetClassId(obj,&classid) )
* if classid == PETSC_DM_CLASSID: # <<<<<<<<<<<<<<
@@ -15004,19 +15612,19 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
__pyx_t_1 = ((__pyx_v_classid == DM_CLASSID) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscobj.pxi":154
+ /* "PETSc/petscobj.pxi":156
* CHKERR( PetscObjectGetClassId(obj,&classid) )
* if classid == PETSC_DM_CLASSID:
* klass = subtype_DM(<PetscDM>obj) # <<<<<<<<<<<<<<
* else:
* klass = PyPetscType_Lookup(classid)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(((DM)__pyx_v_obj))); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 154, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(((DM)__pyx_v_obj))); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 156, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_klass, ((PyTypeObject*)__pyx_t_3));
__pyx_t_3 = 0;
- /* "PETSc/petscobj.pxi":153
+ /* "PETSc/petscobj.pxi":155
* cdef PetscClassId classid = 0
* CHKERR( PetscObjectGetClassId(obj,&classid) )
* if classid == PETSC_DM_CLASSID: # <<<<<<<<<<<<<<
@@ -15026,7 +15634,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
goto __pyx_L4;
}
- /* "PETSc/petscobj.pxi":156
+ /* "PETSc/petscobj.pxi":158
* klass = subtype_DM(<PetscDM>obj)
* else:
* klass = PyPetscType_Lookup(classid) # <<<<<<<<<<<<<<
@@ -15034,14 +15642,14 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
*
*/
/*else*/ {
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(__pyx_v_classid)); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 156, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(__pyx_v_classid)); if (unlikely(!__pyx_t_3)) __PYX_ERR(16, 158, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_klass, ((PyTypeObject*)__pyx_t_3));
__pyx_t_3 = 0;
}
__pyx_L4:;
- /* "PETSc/petscobj.pxi":157
+ /* "PETSc/petscobj.pxi":159
* else:
* klass = PyPetscType_Lookup(classid)
* return klass # <<<<<<<<<<<<<<
@@ -15053,7 +15661,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
__pyx_r = __pyx_v_klass;
goto __pyx_L0;
- /* "PETSc/petscobj.pxi":148
+ /* "PETSc/petscobj.pxi":150
* return DM
*
* cdef inline type subtype_Object(PetscObject obj): # <<<<<<<<<<<<<<
@@ -15073,7 +15681,7 @@ static CYTHON_INLINE PyTypeObject *__pyx_f_8petsc4py_5PETSc_subtype_Object(Petsc
return __pyx_r;
}
-/* "PETSc/petscvwr.pxi":119
+/* "PETSc/petscvwr.pxi":130
* # ---
*
* cdef inline PetscFileMode filemode(object mode) except <PetscFileMode>(-1): # <<<<<<<<<<<<<<
@@ -15089,7 +15697,7 @@ static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *_
PetscFileMode __pyx_t_3;
__Pyx_RefNannySetupContext("filemode", 0);
- /* "PETSc/petscvwr.pxi":120
+ /* "PETSc/petscvwr.pxi":131
*
* cdef inline PetscFileMode filemode(object mode) except <PetscFileMode>(-1):
* if mode is None: # <<<<<<<<<<<<<<
@@ -15100,7 +15708,7 @@ static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *_
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscvwr.pxi":121
+ /* "PETSc/petscvwr.pxi":132
* cdef inline PetscFileMode filemode(object mode) except <PetscFileMode>(-1):
* if mode is None:
* return PETSC_FILE_MODE_READ # <<<<<<<<<<<<<<
@@ -15110,7 +15718,7 @@ static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *_
__pyx_r = FILE_MODE_READ;
goto __pyx_L0;
- /* "PETSc/petscvwr.pxi":120
+ /* "PETSc/petscvwr.pxi":131
*
* cdef inline PetscFileMode filemode(object mode) except <PetscFileMode>(-1):
* if mode is None: # <<<<<<<<<<<<<<
@@ -15119,7 +15727,7 @@ static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *_
*/
}
- /* "PETSc/petscvwr.pxi":122
+ /* "PETSc/petscvwr.pxi":133
* if mode is None:
* return PETSC_FILE_MODE_READ
* if isinstance(mode, str): # <<<<<<<<<<<<<<
@@ -15130,123 +15738,123 @@ static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *_
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvwr.pxi":123
+ /* "PETSc/petscvwr.pxi":134
* return PETSC_FILE_MODE_READ
* if isinstance(mode, str):
* if mode == 'r' : return PETSC_FILE_MODE_READ # <<<<<<<<<<<<<<
* elif mode == 'w' : return PETSC_FILE_MODE_WRITE
* elif mode == 'a' : return PETSC_FILE_MODE_APPEND
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_r, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 123, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_r, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 134, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_READ;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":124
+ /* "PETSc/petscvwr.pxi":135
* if isinstance(mode, str):
* if mode == 'r' : return PETSC_FILE_MODE_READ
* elif mode == 'w' : return PETSC_FILE_MODE_WRITE # <<<<<<<<<<<<<<
* elif mode == 'a' : return PETSC_FILE_MODE_APPEND
* elif mode == 'r+' : return PETSC_FILE_MODE_UPDATE
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_w, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 124, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_w, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 135, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_WRITE;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":125
+ /* "PETSc/petscvwr.pxi":136
* if mode == 'r' : return PETSC_FILE_MODE_READ
* elif mode == 'w' : return PETSC_FILE_MODE_WRITE
* elif mode == 'a' : return PETSC_FILE_MODE_APPEND # <<<<<<<<<<<<<<
* elif mode == 'r+' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'w+' : return PETSC_FILE_MODE_UPDATE
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_a, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 125, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_a, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 136, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_APPEND;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":126
+ /* "PETSc/petscvwr.pxi":137
* elif mode == 'w' : return PETSC_FILE_MODE_WRITE
* elif mode == 'a' : return PETSC_FILE_MODE_APPEND
* elif mode == 'r+' : return PETSC_FILE_MODE_UPDATE # <<<<<<<<<<<<<<
* elif mode == 'w+' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'a+' : return PETSC_FILE_MODE_APPEND_UPDATE
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_kp_s_r_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 126, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_kp_s_r_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 137, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_UPDATE;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":127
+ /* "PETSc/petscvwr.pxi":138
* elif mode == 'a' : return PETSC_FILE_MODE_APPEND
* elif mode == 'r+' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'w+' : return PETSC_FILE_MODE_UPDATE # <<<<<<<<<<<<<<
* elif mode == 'a+' : return PETSC_FILE_MODE_APPEND_UPDATE
* elif mode == 'u' : return PETSC_FILE_MODE_UPDATE
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_kp_s_w_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 127, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_kp_s_w_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 138, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_UPDATE;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":128
+ /* "PETSc/petscvwr.pxi":139
* elif mode == 'r+' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'w+' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'a+' : return PETSC_FILE_MODE_APPEND_UPDATE # <<<<<<<<<<<<<<
* elif mode == 'u' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'au' : return PETSC_FILE_MODE_APPEND_UPDATE
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_kp_s_a_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 128, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_kp_s_a_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 139, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_APPEND_UPDATE;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":129
+ /* "PETSc/petscvwr.pxi":140
* elif mode == 'w+' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'a+' : return PETSC_FILE_MODE_APPEND_UPDATE
* elif mode == 'u' : return PETSC_FILE_MODE_UPDATE # <<<<<<<<<<<<<<
* elif mode == 'au' : return PETSC_FILE_MODE_APPEND_UPDATE
* elif mode == 'ua' : return PETSC_FILE_MODE_APPEND_UPDATE
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_u, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 129, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_u, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 140, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_UPDATE;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":130
+ /* "PETSc/petscvwr.pxi":141
* elif mode == 'a+' : return PETSC_FILE_MODE_APPEND_UPDATE
* elif mode == 'u' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'au' : return PETSC_FILE_MODE_APPEND_UPDATE # <<<<<<<<<<<<<<
* elif mode == 'ua' : return PETSC_FILE_MODE_APPEND_UPDATE
* return mode
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_au, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 130, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_au, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 141, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_APPEND_UPDATE;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":131
+ /* "PETSc/petscvwr.pxi":142
* elif mode == 'u' : return PETSC_FILE_MODE_UPDATE
* elif mode == 'au' : return PETSC_FILE_MODE_APPEND_UPDATE
* elif mode == 'ua' : return PETSC_FILE_MODE_APPEND_UPDATE # <<<<<<<<<<<<<<
* return mode
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_ua, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 131, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_ua, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(17, 142, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_r = FILE_MODE_APPEND_UPDATE;
goto __pyx_L0;
}
- /* "PETSc/petscvwr.pxi":122
+ /* "PETSc/petscvwr.pxi":133
* if mode is None:
* return PETSC_FILE_MODE_READ
* if isinstance(mode, str): # <<<<<<<<<<<<<<
@@ -15255,16 +15863,16 @@ static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *_
*/
}
- /* "PETSc/petscvwr.pxi":132
+ /* "PETSc/petscvwr.pxi":143
* elif mode == 'au' : return PETSC_FILE_MODE_APPEND_UPDATE
* elif mode == 'ua' : return PETSC_FILE_MODE_APPEND_UPDATE
* return mode # <<<<<<<<<<<<<<
*/
- __pyx_t_3 = ((PetscFileMode)__Pyx_PyInt_As_PetscFileMode(__pyx_v_mode)); if (unlikely(PyErr_Occurred())) __PYX_ERR(17, 132, __pyx_L1_error)
+ __pyx_t_3 = ((PetscFileMode)__Pyx_PyInt_As_PetscFileMode(__pyx_v_mode)); if (unlikely(PyErr_Occurred())) __PYX_ERR(17, 143, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/petscvwr.pxi":119
+ /* "PETSc/petscvwr.pxi":130
* # ---
*
* cdef inline PetscFileMode filemode(object mode) except <PetscFileMode>(-1): # <<<<<<<<<<<<<<
@@ -15281,7 +15889,7 @@ static CYTHON_INLINE PetscFileMode __pyx_f_8petsc4py_5PETSc_filemode(PyObject *_
return __pyx_r;
}
-/* "PETSc/petscis.pxi":91
+/* "PETSc/petscis.pxi":97
* # --------------------------------------------------------------------
*
* cdef inline IS ref_IS(PetscIS iset): # <<<<<<<<<<<<<<
@@ -15297,14 +15905,14 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_8petsc4py_5PETSc_ref_IS(IS
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_IS", 0);
- /* "PETSc/petscis.pxi":92
+ /* "PETSc/petscis.pxi":98
*
* cdef inline IS ref_IS(PetscIS iset):
* cdef IS ob = <IS> IS() # <<<<<<<<<<<<<<
* ob.iset = iset
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 92, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 98, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -15312,7 +15920,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_8petsc4py_5PETSc_ref_IS(IS
__pyx_v_ob = ((struct PyPetscISObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscis.pxi":93
+ /* "PETSc/petscis.pxi":99
* cdef inline IS ref_IS(PetscIS iset):
* cdef IS ob = <IS> IS()
* ob.iset = iset # <<<<<<<<<<<<<<
@@ -15321,7 +15929,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_8petsc4py_5PETSc_ref_IS(IS
*/
__pyx_v_ob->iset = __pyx_v_iset;
- /* "PETSc/petscis.pxi":94
+ /* "PETSc/petscis.pxi":100
* cdef IS ob = <IS> IS()
* ob.iset = iset
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -15330,7 +15938,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_8petsc4py_5PETSc_ref_IS(IS
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscis.pxi":95
+ /* "PETSc/petscis.pxi":101
* ob.iset = iset
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -15342,7 +15950,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_8petsc4py_5PETSc_ref_IS(IS
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":91
+ /* "PETSc/petscis.pxi":97
* # --------------------------------------------------------------------
*
* cdef inline IS ref_IS(PetscIS iset): # <<<<<<<<<<<<<<
@@ -15363,7 +15971,7 @@ static CYTHON_INLINE struct PyPetscISObject *__pyx_f_8petsc4py_5PETSc_ref_IS(IS
return __pyx_r;
}
-/* "PETSc/petscis.pxi":97
+/* "PETSc/petscis.pxi":103
* return ob
*
* cdef inline LGMap ref_LGMap(PetscLGMap lgm): # <<<<<<<<<<<<<<
@@ -15379,14 +15987,14 @@ static CYTHON_INLINE struct PyPetscLGMapObject *__pyx_f_8petsc4py_5PETSc_ref_LGM
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_LGMap", 0);
- /* "PETSc/petscis.pxi":98
+ /* "PETSc/petscis.pxi":104
*
* cdef inline LGMap ref_LGMap(PetscLGMap lgm):
* cdef LGMap ob = <LGMap> LGMap() # <<<<<<<<<<<<<<
* ob.lgm = lgm
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 98, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 104, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -15394,7 +16002,7 @@ static CYTHON_INLINE struct PyPetscLGMapObject *__pyx_f_8petsc4py_5PETSc_ref_LGM
__pyx_v_ob = ((struct PyPetscLGMapObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscis.pxi":99
+ /* "PETSc/petscis.pxi":105
* cdef inline LGMap ref_LGMap(PetscLGMap lgm):
* cdef LGMap ob = <LGMap> LGMap()
* ob.lgm = lgm # <<<<<<<<<<<<<<
@@ -15403,7 +16011,7 @@ static CYTHON_INLINE struct PyPetscLGMapObject *__pyx_f_8petsc4py_5PETSc_ref_LGM
*/
__pyx_v_ob->lgm = __pyx_v_lgm;
- /* "PETSc/petscis.pxi":100
+ /* "PETSc/petscis.pxi":106
* cdef LGMap ob = <LGMap> LGMap()
* ob.lgm = lgm
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -15412,7 +16020,7 @@ static CYTHON_INLINE struct PyPetscLGMapObject *__pyx_f_8petsc4py_5PETSc_ref_LGM
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscis.pxi":101
+ /* "PETSc/petscis.pxi":107
* ob.lgm = lgm
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -15424,7 +16032,7 @@ static CYTHON_INLINE struct PyPetscLGMapObject *__pyx_f_8petsc4py_5PETSc_ref_LGM
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":97
+ /* "PETSc/petscis.pxi":103
* return ob
*
* cdef inline LGMap ref_LGMap(PetscLGMap lgm): # <<<<<<<<<<<<<<
@@ -15445,10 +16053,10 @@ static CYTHON_INLINE struct PyPetscLGMapObject *__pyx_f_8petsc4py_5PETSc_ref_LGM
return __pyx_r;
}
-/* "PETSc/petscis.pxi":120
+/* "PETSc/petscis.pxi":126
* cdef bint hasarray
*
- * def __cinit__(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def __cinit__(self, IS iset): # <<<<<<<<<<<<<<
* cdef PetscIS i = iset.iset
* CHKERR( PetscINCREF(<PetscObject*>&i) )
*/
@@ -15468,6 +16076,7 @@ static int __pyx_pw_8petsc4py_5PETSc_10_IS_buffer_1__cinit__(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -15478,7 +16087,7 @@ static int __pyx_pw_8petsc4py_5PETSc_10_IS_buffer_1__cinit__(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__cinit__") < 0)) __PYX_ERR(4, 120, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__cinit__") < 0)) __PYX_ERR(4, 126, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -15489,13 +16098,13 @@ static int __pyx_pw_8petsc4py_5PETSc_10_IS_buffer_1__cinit__(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(4, 120, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(4, 126, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc._IS_buffer.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(4, 120, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(4, 126, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(((struct __pyx_obj_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self), __pyx_v_iset);
/* function exit code */
@@ -15515,9 +16124,9 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(struct __pyx_obj_8pe
int __pyx_t_2;
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/petscis.pxi":121
+ /* "PETSc/petscis.pxi":127
*
- * def __cinit__(self, IS iset not None):
+ * def __cinit__(self, IS iset):
* cdef PetscIS i = iset.iset # <<<<<<<<<<<<<<
* CHKERR( PetscINCREF(<PetscObject*>&i) )
* self.iset = i
@@ -15525,16 +16134,16 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(struct __pyx_obj_8pe
__pyx_t_1 = __pyx_v_iset->iset;
__pyx_v_i = __pyx_t_1;
- /* "PETSc/petscis.pxi":122
- * def __cinit__(self, IS iset not None):
+ /* "PETSc/petscis.pxi":128
+ * def __cinit__(self, IS iset):
* cdef PetscIS i = iset.iset
* CHKERR( PetscINCREF(<PetscObject*>&i) ) # <<<<<<<<<<<<<<
* self.iset = i
* self.size = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_i)))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(4, 122, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_i)))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(4, 128, __pyx_L1_error)
- /* "PETSc/petscis.pxi":123
+ /* "PETSc/petscis.pxi":129
* cdef PetscIS i = iset.iset
* CHKERR( PetscINCREF(<PetscObject*>&i) )
* self.iset = i # <<<<<<<<<<<<<<
@@ -15543,7 +16152,7 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(struct __pyx_obj_8pe
*/
__pyx_v_self->iset = __pyx_v_i;
- /* "PETSc/petscis.pxi":124
+ /* "PETSc/petscis.pxi":130
* CHKERR( PetscINCREF(<PetscObject*>&i) )
* self.iset = i
* self.size = 0 # <<<<<<<<<<<<<<
@@ -15552,7 +16161,7 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(struct __pyx_obj_8pe
*/
__pyx_v_self->size = 0;
- /* "PETSc/petscis.pxi":125
+ /* "PETSc/petscis.pxi":131
* self.iset = i
* self.size = 0
* self.data = NULL # <<<<<<<<<<<<<<
@@ -15561,7 +16170,7 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(struct __pyx_obj_8pe
*/
__pyx_v_self->data = NULL;
- /* "PETSc/petscis.pxi":126
+ /* "PETSc/petscis.pxi":132
* self.size = 0
* self.data = NULL
* self.hasarray = 0 # <<<<<<<<<<<<<<
@@ -15570,10 +16179,10 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(struct __pyx_obj_8pe
*/
__pyx_v_self->hasarray = 0;
- /* "PETSc/petscis.pxi":120
+ /* "PETSc/petscis.pxi":126
* cdef bint hasarray
*
- * def __cinit__(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def __cinit__(self, IS iset): # <<<<<<<<<<<<<<
* cdef PetscIS i = iset.iset
* CHKERR( PetscINCREF(<PetscObject*>&i) )
*/
@@ -15589,7 +16198,7 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer___cinit__(struct __pyx_obj_8pe
return __pyx_r;
}
-/* "PETSc/petscis.pxi":128
+/* "PETSc/petscis.pxi":134
* self.hasarray = 0
*
* def __dealloc__(self): # <<<<<<<<<<<<<<
@@ -15615,7 +16224,7 @@ static void __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_2__dealloc__(struct __pyx_obj
int __pyx_t_3;
__Pyx_RefNannySetupContext("__dealloc__", 0);
- /* "PETSc/petscis.pxi":129
+ /* "PETSc/petscis.pxi":135
*
* def __dealloc__(self):
* if self.hasarray and self.iset != NULL: # <<<<<<<<<<<<<<
@@ -15633,16 +16242,16 @@ static void __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_2__dealloc__(struct __pyx_obj
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/petscis.pxi":130
+ /* "PETSc/petscis.pxi":136
* def __dealloc__(self):
* if self.hasarray and self.iset != NULL:
* CHKERR( ISRestoreIndices(self.iset, &self.data) ) # <<<<<<<<<<<<<<
* CHKERR( ISDestroy(&self.iset) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_self->data))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(4, 130, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_self->data))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(4, 136, __pyx_L1_error)
- /* "PETSc/petscis.pxi":129
+ /* "PETSc/petscis.pxi":135
*
* def __dealloc__(self):
* if self.hasarray and self.iset != NULL: # <<<<<<<<<<<<<<
@@ -15651,16 +16260,16 @@ static void __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_2__dealloc__(struct __pyx_obj
*/
}
- /* "PETSc/petscis.pxi":131
+ /* "PETSc/petscis.pxi":137
* if self.hasarray and self.iset != NULL:
* CHKERR( ISRestoreIndices(self.iset, &self.data) )
* CHKERR( ISDestroy(&self.iset) ) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&__pyx_v_self->iset))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(4, 131, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&__pyx_v_self->iset))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(4, 137, __pyx_L1_error)
- /* "PETSc/petscis.pxi":128
+ /* "PETSc/petscis.pxi":134
* self.hasarray = 0
*
* def __dealloc__(self): # <<<<<<<<<<<<<<
@@ -15671,12 +16280,12 @@ static void __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_2__dealloc__(struct __pyx_obj
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc._IS_buffer.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc._IS_buffer.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
-/* "PETSc/petscis.pxi":135
+/* "PETSc/petscis.pxi":141
* #
*
* cdef int acquire(self) except -1: # <<<<<<<<<<<<<<
@@ -15692,7 +16301,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquire(struct __pyx_obj_8petsc
int __pyx_t_3;
__Pyx_RefNannySetupContext("acquire", 0);
- /* "PETSc/petscis.pxi":136
+ /* "PETSc/petscis.pxi":142
*
* cdef int acquire(self) except -1:
* if not self.hasarray and self.iset != NULL: # <<<<<<<<<<<<<<
@@ -15710,25 +16319,25 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquire(struct __pyx_obj_8petsc
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/petscis.pxi":137
+ /* "PETSc/petscis.pxi":143
* cdef int acquire(self) except -1:
* if not self.hasarray and self.iset != NULL:
* CHKERR( ISGetLocalSize(self.iset, &self.size) ) # <<<<<<<<<<<<<<
* CHKERR( ISGetIndices(self.iset, &self.data) )
* self.hasarray = 1
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_self->size))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(4, 137, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_self->size))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(4, 143, __pyx_L1_error)
- /* "PETSc/petscis.pxi":138
+ /* "PETSc/petscis.pxi":144
* if not self.hasarray and self.iset != NULL:
* CHKERR( ISGetLocalSize(self.iset, &self.size) )
* CHKERR( ISGetIndices(self.iset, &self.data) ) # <<<<<<<<<<<<<<
* self.hasarray = 1
* return 0
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetIndices(__pyx_v_self->iset, (&__pyx_v_self->data))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(4, 138, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetIndices(__pyx_v_self->iset, (&__pyx_v_self->data))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(4, 144, __pyx_L1_error)
- /* "PETSc/petscis.pxi":139
+ /* "PETSc/petscis.pxi":145
* CHKERR( ISGetLocalSize(self.iset, &self.size) )
* CHKERR( ISGetIndices(self.iset, &self.data) )
* self.hasarray = 1 # <<<<<<<<<<<<<<
@@ -15737,7 +16346,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquire(struct __pyx_obj_8petsc
*/
__pyx_v_self->hasarray = 1;
- /* "PETSc/petscis.pxi":136
+ /* "PETSc/petscis.pxi":142
*
* cdef int acquire(self) except -1:
* if not self.hasarray and self.iset != NULL: # <<<<<<<<<<<<<<
@@ -15746,7 +16355,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquire(struct __pyx_obj_8petsc
*/
}
- /* "PETSc/petscis.pxi":140
+ /* "PETSc/petscis.pxi":146
* CHKERR( ISGetIndices(self.iset, &self.data) )
* self.hasarray = 1
* return 0 # <<<<<<<<<<<<<<
@@ -15756,7 +16365,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquire(struct __pyx_obj_8petsc
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":135
+ /* "PETSc/petscis.pxi":141
* #
*
* cdef int acquire(self) except -1: # <<<<<<<<<<<<<<
@@ -15773,7 +16382,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquire(struct __pyx_obj_8petsc
return __pyx_r;
}
-/* "PETSc/petscis.pxi":142
+/* "PETSc/petscis.pxi":148
* return 0
*
* cdef int release(self) except -1: # <<<<<<<<<<<<<<
@@ -15789,7 +16398,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
int __pyx_t_3;
__Pyx_RefNannySetupContext("release", 0);
- /* "PETSc/petscis.pxi":143
+ /* "PETSc/petscis.pxi":149
*
* cdef int release(self) except -1:
* if self.hasarray and self.iset != NULL: # <<<<<<<<<<<<<<
@@ -15807,7 +16416,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/petscis.pxi":144
+ /* "PETSc/petscis.pxi":150
* cdef int release(self) except -1:
* if self.hasarray and self.iset != NULL:
* self.size = 0 # <<<<<<<<<<<<<<
@@ -15816,16 +16425,16 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
*/
__pyx_v_self->size = 0;
- /* "PETSc/petscis.pxi":145
+ /* "PETSc/petscis.pxi":151
* if self.hasarray and self.iset != NULL:
* self.size = 0
* CHKERR( ISRestoreIndices(self.iset, &self.data) ) # <<<<<<<<<<<<<<
* self.hasarray = 0
* self.data = NULL
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_self->data))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(4, 145, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_self->data))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(4, 151, __pyx_L1_error)
- /* "PETSc/petscis.pxi":146
+ /* "PETSc/petscis.pxi":152
* self.size = 0
* CHKERR( ISRestoreIndices(self.iset, &self.data) )
* self.hasarray = 0 # <<<<<<<<<<<<<<
@@ -15834,7 +16443,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
*/
__pyx_v_self->hasarray = 0;
- /* "PETSc/petscis.pxi":147
+ /* "PETSc/petscis.pxi":153
* CHKERR( ISRestoreIndices(self.iset, &self.data) )
* self.hasarray = 0
* self.data = NULL # <<<<<<<<<<<<<<
@@ -15843,7 +16452,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
*/
__pyx_v_self->data = NULL;
- /* "PETSc/petscis.pxi":143
+ /* "PETSc/petscis.pxi":149
*
* cdef int release(self) except -1:
* if self.hasarray and self.iset != NULL: # <<<<<<<<<<<<<<
@@ -15852,7 +16461,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
*/
}
- /* "PETSc/petscis.pxi":148
+ /* "PETSc/petscis.pxi":154
* self.hasarray = 0
* self.data = NULL
* return 0 # <<<<<<<<<<<<<<
@@ -15862,7 +16471,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":142
+ /* "PETSc/petscis.pxi":148
* return 0
*
* cdef int release(self) except -1: # <<<<<<<<<<<<<<
@@ -15879,7 +16488,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_release(struct __pyx_obj_8petsc
return __pyx_r;
}
-/* "PETSc/petscis.pxi":152
+/* "PETSc/petscis.pxi":158
* # buffer interface (PEP 3118)
*
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1: # <<<<<<<<<<<<<<
@@ -15893,25 +16502,25 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquirebuffer(struct __pyx_obj_
int __pyx_t_1;
__Pyx_RefNannySetupContext("acquirebuffer", 0);
- /* "PETSc/petscis.pxi":153
+ /* "PETSc/petscis.pxi":159
*
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1:
* self.acquire() # <<<<<<<<<<<<<<
* PyPetscBuffer_FillInfo(view, <void*>self.data, self.size,
* c'i', 1, flags)
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(4, 153, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(4, 159, __pyx_L1_error)
- /* "PETSc/petscis.pxi":154
+ /* "PETSc/petscis.pxi":160
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1:
* self.acquire()
* PyPetscBuffer_FillInfo(view, <void*>self.data, self.size, # <<<<<<<<<<<<<<
* c'i', 1, flags)
* view.obj = self
*/
- __pyx_t_1 = PyPetscBuffer_FillInfo(__pyx_v_view, ((void *)__pyx_v_self->data), __pyx_v_self->size, 'i', 1, __pyx_v_flags); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(4, 154, __pyx_L1_error)
+ __pyx_t_1 = PyPetscBuffer_FillInfo(__pyx_v_view, ((void *)__pyx_v_self->data), __pyx_v_self->size, 'i', 1, __pyx_v_flags); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(4, 160, __pyx_L1_error)
- /* "PETSc/petscis.pxi":156
+ /* "PETSc/petscis.pxi":162
* PyPetscBuffer_FillInfo(view, <void*>self.data, self.size,
* c'i', 1, flags)
* view.obj = self # <<<<<<<<<<<<<<
@@ -15924,7 +16533,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquirebuffer(struct __pyx_obj_
__Pyx_DECREF(__pyx_v_view->obj);
__pyx_v_view->obj = ((PyObject *)__pyx_v_self);
- /* "PETSc/petscis.pxi":157
+ /* "PETSc/petscis.pxi":163
* c'i', 1, flags)
* view.obj = self
* return 0 # <<<<<<<<<<<<<<
@@ -15934,7 +16543,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquirebuffer(struct __pyx_obj_
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":152
+ /* "PETSc/petscis.pxi":158
* # buffer interface (PEP 3118)
*
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1: # <<<<<<<<<<<<<<
@@ -15951,7 +16560,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_acquirebuffer(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/petscis.pxi":159
+/* "PETSc/petscis.pxi":165
* return 0
*
* cdef int releasebuffer(self, Py_buffer *view) except -1: # <<<<<<<<<<<<<<
@@ -15965,7 +16574,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_releasebuffer(struct __pyx_obj_
int __pyx_t_1;
__Pyx_RefNannySetupContext("releasebuffer", 0);
- /* "PETSc/petscis.pxi":160
+ /* "PETSc/petscis.pxi":166
*
* cdef int releasebuffer(self, Py_buffer *view) except -1:
* PyPetscBuffer_Release(view) # <<<<<<<<<<<<<<
@@ -15974,16 +16583,16 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_releasebuffer(struct __pyx_obj_
*/
PyPetscBuffer_Release(__pyx_v_view);
- /* "PETSc/petscis.pxi":161
+ /* "PETSc/petscis.pxi":167
* cdef int releasebuffer(self, Py_buffer *view) except -1:
* PyPetscBuffer_Release(view)
* self.release() # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(4, 161, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(4, 167, __pyx_L1_error)
- /* "PETSc/petscis.pxi":162
+ /* "PETSc/petscis.pxi":168
* PyPetscBuffer_Release(view)
* self.release()
* return 0 # <<<<<<<<<<<<<<
@@ -15993,7 +16602,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_releasebuffer(struct __pyx_obj_
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":159
+ /* "PETSc/petscis.pxi":165
* return 0
*
* cdef int releasebuffer(self, Py_buffer *view) except -1: # <<<<<<<<<<<<<<
@@ -16010,7 +16619,7 @@ static int __pyx_f_8petsc4py_5PETSc_10_IS_buffer_releasebuffer(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/petscis.pxi":164
+/* "PETSc/petscis.pxi":170
* return 0
*
* def __getbuffer__(self, Py_buffer *view, int flags): # <<<<<<<<<<<<<<
@@ -16041,16 +16650,16 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_4__getbuffer__(struct __pyx_ob
__Pyx_GIVEREF(__pyx_v_view->obj);
}
- /* "PETSc/petscis.pxi":165
+ /* "PETSc/petscis.pxi":171
*
* def __getbuffer__(self, Py_buffer *view, int flags):
* self.acquirebuffer(view, flags) # <<<<<<<<<<<<<<
*
* def __releasebuffer__(self, Py_buffer *view):
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquirebuffer(__pyx_v_self, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(4, 165, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquirebuffer(__pyx_v_self, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(4, 171, __pyx_L1_error)
- /* "PETSc/petscis.pxi":164
+ /* "PETSc/petscis.pxi":170
* return 0
*
* def __getbuffer__(self, Py_buffer *view, int flags): # <<<<<<<<<<<<<<
@@ -16079,7 +16688,7 @@ static int __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_4__getbuffer__(struct __pyx_ob
return __pyx_r;
}
-/* "PETSc/petscis.pxi":167
+/* "PETSc/petscis.pxi":173
* self.acquirebuffer(view, flags)
*
* def __releasebuffer__(self, Py_buffer *view): # <<<<<<<<<<<<<<
@@ -16103,16 +16712,16 @@ static void __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_6__releasebuffer__(struct __p
int __pyx_t_1;
__Pyx_RefNannySetupContext("__releasebuffer__", 0);
- /* "PETSc/petscis.pxi":168
+ /* "PETSc/petscis.pxi":174
*
* def __releasebuffer__(self, Py_buffer *view):
* self.releasebuffer(view) # <<<<<<<<<<<<<<
*
* # 'with' statement (PEP 343)
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->releasebuffer(__pyx_v_self, __pyx_v_view); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(4, 168, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->releasebuffer(__pyx_v_self, __pyx_v_view); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(4, 174, __pyx_L1_error)
- /* "PETSc/petscis.pxi":167
+ /* "PETSc/petscis.pxi":173
* self.acquirebuffer(view, flags)
*
* def __releasebuffer__(self, Py_buffer *view): # <<<<<<<<<<<<<<
@@ -16123,12 +16732,12 @@ static void __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_6__releasebuffer__(struct __p
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc._IS_buffer.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc._IS_buffer.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
-/* "PETSc/petscis.pxi":172
+/* "PETSc/petscis.pxi":178
* # 'with' statement (PEP 343)
*
* cdef object enter(self): # <<<<<<<<<<<<<<
@@ -16143,16 +16752,16 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_10_IS_buffer_enter(struct __pyx_obj_8p
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("enter", 0);
- /* "PETSc/petscis.pxi":173
+ /* "PETSc/petscis.pxi":179
*
* cdef object enter(self):
* self.acquire() # <<<<<<<<<<<<<<
* return asarray(self)
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(4, 173, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(4, 179, __pyx_L1_error)
- /* "PETSc/petscis.pxi":174
+ /* "PETSc/petscis.pxi":180
* cdef object enter(self):
* self.acquire()
* return asarray(self) # <<<<<<<<<<<<<<
@@ -16160,13 +16769,13 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_10_IS_buffer_enter(struct __pyx_obj_8p
* cdef object exit(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(((PyObject *)__pyx_v_self))); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 174, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(((PyObject *)__pyx_v_self))); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 180, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":172
+ /* "PETSc/petscis.pxi":178
* # 'with' statement (PEP 343)
*
* cdef object enter(self): # <<<<<<<<<<<<<<
@@ -16185,7 +16794,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_10_IS_buffer_enter(struct __pyx_obj_8p
return __pyx_r;
}
-/* "PETSc/petscis.pxi":176
+/* "PETSc/petscis.pxi":182
* return asarray(self)
*
* cdef object exit(self): # <<<<<<<<<<<<<<
@@ -16199,16 +16808,16 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_10_IS_buffer_exit(struct __pyx_obj_8pe
int __pyx_t_1;
__Pyx_RefNannySetupContext("exit", 0);
- /* "PETSc/petscis.pxi":177
+ /* "PETSc/petscis.pxi":183
*
* cdef object exit(self):
* self.release() # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(4, 177, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(4, 183, __pyx_L1_error)
- /* "PETSc/petscis.pxi":178
+ /* "PETSc/petscis.pxi":184
* cdef object exit(self):
* self.release()
* return None # <<<<<<<<<<<<<<
@@ -16220,7 +16829,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_10_IS_buffer_exit(struct __pyx_obj_8pe
__pyx_r = Py_None;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":176
+ /* "PETSc/petscis.pxi":182
* return asarray(self)
*
* cdef object exit(self): # <<<<<<<<<<<<<<
@@ -16238,7 +16847,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_10_IS_buffer_exit(struct __pyx_obj_8pe
return __pyx_r;
}
-/* "PETSc/petscis.pxi":180
+/* "PETSc/petscis.pxi":186
* return None
*
* def __enter__(self): # <<<<<<<<<<<<<<
@@ -16269,7 +16878,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_8__enter__(struct __pyx_
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__enter__", 0);
- /* "PETSc/petscis.pxi":181
+ /* "PETSc/petscis.pxi":187
*
* def __enter__(self):
* return self.enter() # <<<<<<<<<<<<<<
@@ -16277,13 +16886,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_8__enter__(struct __pyx_
* def __exit__(self, *exc):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->enter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 181, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->enter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 187, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":180
+ /* "PETSc/petscis.pxi":186
* return None
*
* def __enter__(self): # <<<<<<<<<<<<<<
@@ -16302,7 +16911,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_8__enter__(struct __pyx_
return __pyx_r;
}
-/* "PETSc/petscis.pxi":183
+/* "PETSc/petscis.pxi":189
* return self.enter()
*
* def __exit__(self, *exc): # <<<<<<<<<<<<<<
@@ -16335,7 +16944,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_10__exit__(struct __pyx_
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__exit__", 0);
- /* "PETSc/petscis.pxi":184
+ /* "PETSc/petscis.pxi":190
*
* def __exit__(self, *exc):
* return self.exit() # <<<<<<<<<<<<<<
@@ -16343,13 +16952,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_10__exit__(struct __pyx_
* # buffer interface (legacy)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->exit(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 184, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->exit(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":183
+ /* "PETSc/petscis.pxi":189
* return self.enter()
*
* def __exit__(self, *exc): # <<<<<<<<<<<<<<
@@ -16368,7 +16977,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_10__exit__(struct __pyx_
return __pyx_r;
}
-/* "PETSc/petscis.pxi":188
+/* "PETSc/petscis.pxi":194
* # buffer interface (legacy)
*
* cdef Py_ssize_t getbuffer(self, void **p) except -1: # <<<<<<<<<<<<<<
@@ -16385,7 +16994,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
PetscInt __pyx_t_3;
__Pyx_RefNannySetupContext("getbuffer", 0);
- /* "PETSc/petscis.pxi":189
+ /* "PETSc/petscis.pxi":195
*
* cdef Py_ssize_t getbuffer(self, void **p) except -1:
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -16394,7 +17003,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
*/
__pyx_v_n = 0;
- /* "PETSc/petscis.pxi":190
+ /* "PETSc/petscis.pxi":196
* cdef Py_ssize_t getbuffer(self, void **p) except -1:
* cdef PetscInt n = 0
* if p != NULL: # <<<<<<<<<<<<<<
@@ -16404,16 +17013,16 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
__pyx_t_1 = ((__pyx_v_p != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscis.pxi":191
+ /* "PETSc/petscis.pxi":197
* cdef PetscInt n = 0
* if p != NULL:
* self.acquire() # <<<<<<<<<<<<<<
* p[0] = <void*>self.data
* n = self.size
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(4, 191, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(4, 197, __pyx_L1_error)
- /* "PETSc/petscis.pxi":192
+ /* "PETSc/petscis.pxi":198
* if p != NULL:
* self.acquire()
* p[0] = <void*>self.data # <<<<<<<<<<<<<<
@@ -16422,7 +17031,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
*/
(__pyx_v_p[0]) = ((void *)__pyx_v_self->data);
- /* "PETSc/petscis.pxi":193
+ /* "PETSc/petscis.pxi":199
* self.acquire()
* p[0] = <void*>self.data
* n = self.size # <<<<<<<<<<<<<<
@@ -16432,7 +17041,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
__pyx_t_3 = __pyx_v_self->size;
__pyx_v_n = __pyx_t_3;
- /* "PETSc/petscis.pxi":190
+ /* "PETSc/petscis.pxi":196
* cdef Py_ssize_t getbuffer(self, void **p) except -1:
* cdef PetscInt n = 0
* if p != NULL: # <<<<<<<<<<<<<<
@@ -16442,7 +17051,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
goto __pyx_L3;
}
- /* "PETSc/petscis.pxi":194
+ /* "PETSc/petscis.pxi":200
* p[0] = <void*>self.data
* n = self.size
* elif self.iset != NULL: # <<<<<<<<<<<<<<
@@ -16452,16 +17061,16 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
__pyx_t_1 = ((__pyx_v_self->iset != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscis.pxi":195
+ /* "PETSc/petscis.pxi":201
* n = self.size
* elif self.iset != NULL:
* CHKERR( ISGetLocalSize(self.iset, &n) ) # <<<<<<<<<<<<<<
* return <Py_ssize_t>(<size_t>n*sizeof(PetscInt))
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(4, 195, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(4, 201, __pyx_L1_error)
- /* "PETSc/petscis.pxi":194
+ /* "PETSc/petscis.pxi":200
* p[0] = <void*>self.data
* n = self.size
* elif self.iset != NULL: # <<<<<<<<<<<<<<
@@ -16471,7 +17080,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
}
__pyx_L3:;
- /* "PETSc/petscis.pxi":196
+ /* "PETSc/petscis.pxi":202
* elif self.iset != NULL:
* CHKERR( ISGetLocalSize(self.iset, &n) )
* return <Py_ssize_t>(<size_t>n*sizeof(PetscInt)) # <<<<<<<<<<<<<<
@@ -16481,7 +17090,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
__pyx_r = ((Py_ssize_t)(((size_t)__pyx_v_n) * (sizeof(PetscInt))));
goto __pyx_L0;
- /* "PETSc/petscis.pxi":188
+ /* "PETSc/petscis.pxi":194
* # buffer interface (legacy)
*
* cdef Py_ssize_t getbuffer(self, void **p) except -1: # <<<<<<<<<<<<<<
@@ -16498,7 +17107,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer(struct __pyx_o
return __pyx_r;
}
-/* "PETSc/petscis.pxi":198
+/* "PETSc/petscis.pxi":204
* return <Py_ssize_t>(<size_t>n*sizeof(PetscInt))
*
* def __getsegcount__(self, Py_ssize_t *lenp): # <<<<<<<<<<<<<<
@@ -16529,7 +17138,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_12__getsegcount__(struc
Py_ssize_t __pyx_t_2;
__Pyx_RefNannySetupContext("__getsegcount__", 0);
- /* "PETSc/petscis.pxi":199
+ /* "PETSc/petscis.pxi":205
*
* def __getsegcount__(self, Py_ssize_t *lenp):
* if lenp != NULL: # <<<<<<<<<<<<<<
@@ -16539,17 +17148,17 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_12__getsegcount__(struc
__pyx_t_1 = ((__pyx_v_lenp != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscis.pxi":200
+ /* "PETSc/petscis.pxi":206
* def __getsegcount__(self, Py_ssize_t *lenp):
* if lenp != NULL:
* lenp[0] = self.getbuffer(NULL) # <<<<<<<<<<<<<<
* return 1
*
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, NULL); if (unlikely(__pyx_t_2 == -1L)) __PYX_ERR(4, 200, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, NULL); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1L))) __PYX_ERR(4, 206, __pyx_L1_error)
(__pyx_v_lenp[0]) = __pyx_t_2;
- /* "PETSc/petscis.pxi":199
+ /* "PETSc/petscis.pxi":205
*
* def __getsegcount__(self, Py_ssize_t *lenp):
* if lenp != NULL: # <<<<<<<<<<<<<<
@@ -16558,7 +17167,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_12__getsegcount__(struc
*/
}
- /* "PETSc/petscis.pxi":201
+ /* "PETSc/petscis.pxi":207
* if lenp != NULL:
* lenp[0] = self.getbuffer(NULL)
* return 1 # <<<<<<<<<<<<<<
@@ -16568,7 +17177,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_12__getsegcount__(struc
__pyx_r = 1;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":198
+ /* "PETSc/petscis.pxi":204
* return <Py_ssize_t>(<size_t>n*sizeof(PetscInt))
*
* def __getsegcount__(self, Py_ssize_t *lenp): # <<<<<<<<<<<<<<
@@ -16586,7 +17195,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_12__getsegcount__(struc
}
#endif /*!(#if PY_MAJOR_VERSION < 3)*/
-/* "PETSc/petscis.pxi":203
+/* "PETSc/petscis.pxi":209
* return 1
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p): # <<<<<<<<<<<<<<
@@ -16618,7 +17227,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_14__getreadbuffer__(str
Py_ssize_t __pyx_t_3;
__Pyx_RefNannySetupContext("__getreadbuffer__", 0);
- /* "PETSc/petscis.pxi":204
+ /* "PETSc/petscis.pxi":210
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p):
* if idx != 0: raise SystemError( # <<<<<<<<<<<<<<
@@ -16627,25 +17236,25 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_14__getreadbuffer__(str
*/
__pyx_t_1 = ((__pyx_v_idx != 0) != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_SystemError, __pyx_tuple__14, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 204, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_SystemError, __pyx_tuple__14, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __PYX_ERR(4, 204, __pyx_L1_error)
+ __PYX_ERR(4, 210, __pyx_L1_error)
}
- /* "PETSc/petscis.pxi":206
+ /* "PETSc/petscis.pxi":212
* if idx != 0: raise SystemError(
* "accessing non-existent buffer segment")
* return self.getbuffer(p) # <<<<<<<<<<<<<<
*
* # NumPy array interface (legacy)
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, __pyx_v_p); if (unlikely(__pyx_t_3 == -1L)) __PYX_ERR(4, 206, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, __pyx_v_p); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1L))) __PYX_ERR(4, 212, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":203
+ /* "PETSc/petscis.pxi":209
* return 1
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p): # <<<<<<<<<<<<<<
@@ -16664,7 +17273,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_10_IS_buffer_14__getreadbuffer__(str
}
#endif /*!(#if PY_MAJOR_VERSION < 3)*/
-/* "PETSc/petscis.pxi":211
+/* "PETSc/petscis.pxi":217
*
* property __array_interface__:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -16699,7 +17308,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_19__array_interface_____
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/petscis.pxi":212
+ /* "PETSc/petscis.pxi":218
* property __array_interface__:
* def __get__(self):
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -16708,7 +17317,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_19__array_interface_____
*/
__pyx_v_n = 0;
- /* "PETSc/petscis.pxi":213
+ /* "PETSc/petscis.pxi":219
* def __get__(self):
* cdef PetscInt n = 0
* if self.iset != NULL: # <<<<<<<<<<<<<<
@@ -16718,16 +17327,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_19__array_interface_____
__pyx_t_1 = ((__pyx_v_self->iset != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscis.pxi":214
+ /* "PETSc/petscis.pxi":220
* cdef PetscInt n = 0
* if self.iset != NULL:
* CHKERR( ISGetLocalSize(self.iset, &n) ) # <<<<<<<<<<<<<<
* cdef object size = toInt(n)
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_INT)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(4, 214, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(4, 220, __pyx_L1_error)
- /* "PETSc/petscis.pxi":213
+ /* "PETSc/petscis.pxi":219
* def __get__(self):
* cdef PetscInt n = 0
* if self.iset != NULL: # <<<<<<<<<<<<<<
@@ -16736,42 +17345,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_19__array_interface_____
*/
}
- /* "PETSc/petscis.pxi":215
+ /* "PETSc/petscis.pxi":221
* if self.iset != NULL:
* CHKERR( ISGetLocalSize(self.iset, &n) )
* cdef object size = toInt(n) # <<<<<<<<<<<<<<
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_INT)
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 215, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_size = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscis.pxi":216
+ /* "PETSc/petscis.pxi":222
* CHKERR( ISGetLocalSize(self.iset, &n) )
* cdef object size = toInt(n)
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_INT) # <<<<<<<<<<<<<<
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
* return dict(version=3,
*/
- __pyx_t_3 = ((PyObject *)PyArray_DescrFromType(NPY_PETSC_INT)); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 216, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)PyArray_DescrFromType(NPY_PETSC_INT)); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_descr = ((PyArray_Descr *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscis.pxi":217
+ /* "PETSc/petscis.pxi":223
* cdef object size = toInt(n)
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_INT)
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize) # <<<<<<<<<<<<<<
* return dict(version=3,
* data=self,
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_kind); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 217, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_kind); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 223, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_itemsize); if (unlikely(!__pyx_t_4)) __PYX_ERR(4, 217, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_itemsize); if (unlikely(!__pyx_t_4)) __PYX_ERR(4, 223, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(4, 217, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(4, 223, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -16779,14 +17388,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_19__array_interface_____
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
__pyx_t_3 = 0;
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_c_d, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(4, 217, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_c_d, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(4, 223, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_4))||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(4, 217, __pyx_L1_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_4))||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(4, 223, __pyx_L1_error)
__pyx_v_typestr = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/petscis.pxi":218
+ /* "PETSc/petscis.pxi":224
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_INT)
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
* return dict(version=3, # <<<<<<<<<<<<<<
@@ -16794,47 +17403,47 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_19__array_interface_____
* shape=(size,),
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(4, 218, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(4); if (unlikely(!__pyx_t_4)) __PYX_ERR(4, 224, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_version, __pyx_int_3) < 0) __PYX_ERR(4, 218, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_version, __pyx_int_3) < 0) __PYX_ERR(4, 224, __pyx_L1_error)
- /* "PETSc/petscis.pxi":219
+ /* "PETSc/petscis.pxi":225
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
* return dict(version=3,
* data=self, # <<<<<<<<<<<<<<
* shape=(size,),
* typestr=typestr)
*/
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_data, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(4, 218, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_data, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(4, 224, __pyx_L1_error)
- /* "PETSc/petscis.pxi":220
+ /* "PETSc/petscis.pxi":226
* return dict(version=3,
* data=self,
* shape=(size,), # <<<<<<<<<<<<<<
* typestr=typestr)
*
*/
- __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(4, 220, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(4, 226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_size);
__Pyx_GIVEREF(__pyx_v_size);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_size);
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(4, 218, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(4, 224, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscis.pxi":221
+ /* "PETSc/petscis.pxi":227
* data=self,
* shape=(size,),
* typestr=typestr) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_typestr, __pyx_v_typestr) < 0) __PYX_ERR(4, 218, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_typestr, __pyx_v_typestr) < 0) __PYX_ERR(4, 224, __pyx_L1_error)
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/petscis.pxi":211
+ /* "PETSc/petscis.pxi":217
*
* property __array_interface__:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -16858,7 +17467,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10_IS_buffer_19__array_interface_____
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":166
+/* "PETSc/petscvec.pxi":167
* # --------------------------------------------------------------------
*
* cdef inline Vec ref_Vec(PetscVec vec): # <<<<<<<<<<<<<<
@@ -16874,14 +17483,14 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_ref_Vec(V
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_Vec", 0);
- /* "PETSc/petscvec.pxi":167
+ /* "PETSc/petscvec.pxi":168
*
* cdef inline Vec ref_Vec(PetscVec vec):
* cdef Vec ob = <Vec> Vec() # <<<<<<<<<<<<<<
* ob.vec = vec
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 167, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 168, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -16889,7 +17498,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_ref_Vec(V
__pyx_v_ob = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscvec.pxi":168
+ /* "PETSc/petscvec.pxi":169
* cdef inline Vec ref_Vec(PetscVec vec):
* cdef Vec ob = <Vec> Vec()
* ob.vec = vec # <<<<<<<<<<<<<<
@@ -16898,7 +17507,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_ref_Vec(V
*/
__pyx_v_ob->vec = __pyx_v_vec;
- /* "PETSc/petscvec.pxi":169
+ /* "PETSc/petscvec.pxi":170
* cdef Vec ob = <Vec> Vec()
* ob.vec = vec
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -16907,7 +17516,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_ref_Vec(V
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscvec.pxi":170
+ /* "PETSc/petscvec.pxi":171
* ob.vec = vec
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -16919,7 +17528,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_ref_Vec(V
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":166
+ /* "PETSc/petscvec.pxi":167
* # --------------------------------------------------------------------
*
* cdef inline Vec ref_Vec(PetscVec vec): # <<<<<<<<<<<<<<
@@ -16940,7 +17549,7 @@ static CYTHON_INLINE struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_ref_Vec(V
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":176
+/* "PETSc/petscvec.pxi":177
* # unary operations
*
* cdef Vec vec_pos(Vec self): # <<<<<<<<<<<<<<
@@ -16958,7 +17567,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_pos(struct PyPetscV
int __pyx_t_4;
__Pyx_RefNannySetupContext("vec_pos", 0);
- /* "PETSc/petscvec.pxi":177
+ /* "PETSc/petscvec.pxi":178
*
* cdef Vec vec_pos(Vec self):
* cdef Vec vec = type(self)() # <<<<<<<<<<<<<<
@@ -16967,7 +17576,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_pos(struct PyPetscV
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -16977,36 +17586,36 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_pos(struct PyPetscV
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 177, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 178, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 177, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 178, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 177, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 178, __pyx_L1_error)
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscvec.pxi":178
+ /* "PETSc/petscvec.pxi":179
* cdef Vec vec_pos(Vec self):
* cdef Vec vec = type(self)()
* CHKERR( VecDuplicate(self.vec, &vec.vec) ) # <<<<<<<<<<<<<<
* CHKERR( VecCopy(self.vec, vec.vec) )
* return vec
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_self->vec, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 178, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_self->vec, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 179, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":179
+ /* "PETSc/petscvec.pxi":180
* cdef Vec vec = type(self)()
* CHKERR( VecDuplicate(self.vec, &vec.vec) )
* CHKERR( VecCopy(self.vec, vec.vec) ) # <<<<<<<<<<<<<<
* return vec
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 179, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 180, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":180
+ /* "PETSc/petscvec.pxi":181
* CHKERR( VecDuplicate(self.vec, &vec.vec) )
* CHKERR( VecCopy(self.vec, vec.vec) )
* return vec # <<<<<<<<<<<<<<
@@ -17018,7 +17627,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_pos(struct PyPetscV
__pyx_r = __pyx_v_vec;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":176
+ /* "PETSc/petscvec.pxi":177
* # unary operations
*
* cdef Vec vec_pos(Vec self): # <<<<<<<<<<<<<<
@@ -17040,7 +17649,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_pos(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":182
+/* "PETSc/petscvec.pxi":183
* return vec
*
* cdef Vec vec_neg(Vec self): # <<<<<<<<<<<<<<
@@ -17057,14 +17666,14 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_neg(struct PyPetscV
int __pyx_t_3;
__Pyx_RefNannySetupContext("vec_neg", 0);
- /* "PETSc/petscvec.pxi":183
+ /* "PETSc/petscvec.pxi":184
*
* cdef Vec vec_neg(Vec self):
* cdef Vec vec = <Vec> vec_pos(self) # <<<<<<<<<<<<<<
* CHKERR( VecScale(vec.vec, -1) )
* return vec
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 183, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -17072,16 +17681,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_neg(struct PyPetscV
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscvec.pxi":184
+ /* "PETSc/petscvec.pxi":185
* cdef Vec vec_neg(Vec self):
* cdef Vec vec = <Vec> vec_pos(self)
* CHKERR( VecScale(vec.vec, -1) ) # <<<<<<<<<<<<<<
* return vec
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_vec->vec, -1.0)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 184, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_vec->vec, -1.0)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 185, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":185
+ /* "PETSc/petscvec.pxi":186
* cdef Vec vec = <Vec> vec_pos(self)
* CHKERR( VecScale(vec.vec, -1) )
* return vec # <<<<<<<<<<<<<<
@@ -17093,7 +17702,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_neg(struct PyPetscV
__pyx_r = __pyx_v_vec;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":182
+ /* "PETSc/petscvec.pxi":183
* return vec
*
* cdef Vec vec_neg(Vec self): # <<<<<<<<<<<<<<
@@ -17114,7 +17723,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_neg(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":187
+/* "PETSc/petscvec.pxi":188
* return vec
*
* cdef Vec vec_abs(Vec self): # <<<<<<<<<<<<<<
@@ -17131,14 +17740,14 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_abs(struct PyPetscV
int __pyx_t_3;
__Pyx_RefNannySetupContext("vec_abs", 0);
- /* "PETSc/petscvec.pxi":188
+ /* "PETSc/petscvec.pxi":189
*
* cdef Vec vec_abs(Vec self):
* cdef Vec vec = <Vec> vec_pos(self) # <<<<<<<<<<<<<<
* CHKERR( VecAbs(vec.vec) )
* return vec
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 188, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 189, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -17146,16 +17755,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_abs(struct PyPetscV
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscvec.pxi":189
+ /* "PETSc/petscvec.pxi":190
* cdef Vec vec_abs(Vec self):
* cdef Vec vec = <Vec> vec_pos(self)
* CHKERR( VecAbs(vec.vec) ) # <<<<<<<<<<<<<<
* return vec
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAbs(__pyx_v_vec->vec)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 189, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAbs(__pyx_v_vec->vec)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 190, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":190
+ /* "PETSc/petscvec.pxi":191
* cdef Vec vec = <Vec> vec_pos(self)
* CHKERR( VecAbs(vec.vec) )
* return vec # <<<<<<<<<<<<<<
@@ -17167,7 +17776,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_abs(struct PyPetscV
__pyx_r = __pyx_v_vec;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":187
+ /* "PETSc/petscvec.pxi":188
* return vec
*
* cdef Vec vec_abs(Vec self): # <<<<<<<<<<<<<<
@@ -17188,7 +17797,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_abs(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":194
+/* "PETSc/petscvec.pxi":195
* # inplace binary operations
*
* cdef Vec vec_iadd(Vec self, other): # <<<<<<<<<<<<<<
@@ -17213,7 +17822,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
__Pyx_RefNannySetupContext("vec_iadd", 0);
__Pyx_INCREF(__pyx_v_other);
- /* "PETSc/petscvec.pxi":195
+ /* "PETSc/petscvec.pxi":196
*
* cdef Vec vec_iadd(Vec self, other):
* cdef PetscScalar alpha = 1 # <<<<<<<<<<<<<<
@@ -17222,7 +17831,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
*/
__pyx_v_alpha = 1.0;
- /* "PETSc/petscvec.pxi":197
+ /* "PETSc/petscvec.pxi":198
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17233,7 +17842,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":198
+ /* "PETSc/petscvec.pxi":199
* cdef Vec vec
* if isinstance(other, Vec):
* alpha = 1; vec = other # <<<<<<<<<<<<<<
@@ -17241,22 +17850,22 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
* elif isinstance(other, tuple) or isinstance(other, list):
*/
__pyx_v_alpha = 1.0;
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 198, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 199, __pyx_L1_error)
__pyx_t_3 = __pyx_v_other;
__Pyx_INCREF(__pyx_t_3);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":199
+ /* "PETSc/petscvec.pxi":200
* if isinstance(other, Vec):
* alpha = 1; vec = other
* CHKERR( VecAXPY(self.vec, alpha, vec.vec) ) # <<<<<<<<<<<<<<
* elif isinstance(other, tuple) or isinstance(other, list):
* other, vec = other
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, __pyx_v_alpha, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 199, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, __pyx_v_alpha, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 200, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":197
+ /* "PETSc/petscvec.pxi":198
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17266,7 +17875,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":200
+ /* "PETSc/petscvec.pxi":201
* alpha = 1; vec = other
* CHKERR( VecAXPY(self.vec, alpha, vec.vec) )
* elif isinstance(other, tuple) or isinstance(other, list): # <<<<<<<<<<<<<<
@@ -17286,7 +17895,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
__pyx_L4_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":201
+ /* "PETSc/petscvec.pxi":202
* CHKERR( VecAXPY(self.vec, alpha, vec.vec) )
* elif isinstance(other, tuple) or isinstance(other, list):
* other, vec = other # <<<<<<<<<<<<<<
@@ -17295,7 +17904,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
*/
if ((likely(PyTuple_CheckExact(__pyx_v_other))) || (PyList_CheckExact(__pyx_v_other))) {
PyObject* sequence = __pyx_v_other;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -17303,9 +17912,9 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(5, 201, __pyx_L1_error)
+ __PYX_ERR(5, 202, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
@@ -17316,21 +17925,21 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 201, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 201, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 201, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(5, 201, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(5, 202, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L7_unpacking_done;
@@ -17338,35 +17947,35 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(5, 201, __pyx_L1_error)
+ __PYX_ERR(5, 202, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 201, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 202, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_other, __pyx_t_3);
__pyx_t_3 = 0;
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscvec.pxi":202
+ /* "PETSc/petscvec.pxi":203
* elif isinstance(other, tuple) or isinstance(other, list):
* other, vec = other
* alpha = asScalar(other) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(self.vec, alpha, vec.vec) )
* else:
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(PyErr_Occurred())) __PYX_ERR(5, 202, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(__pyx_t_9 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(5, 203, __pyx_L1_error)
__pyx_v_alpha = __pyx_t_9;
- /* "PETSc/petscvec.pxi":203
+ /* "PETSc/petscvec.pxi":204
* other, vec = other
* alpha = asScalar(other)
* CHKERR( VecAXPY(self.vec, alpha, vec.vec) ) # <<<<<<<<<<<<<<
* else:
* alpha = asScalar(other)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, __pyx_v_alpha, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 203, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, __pyx_v_alpha, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 204, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":200
+ /* "PETSc/petscvec.pxi":201
* alpha = 1; vec = other
* CHKERR( VecAXPY(self.vec, alpha, vec.vec) )
* elif isinstance(other, tuple) or isinstance(other, list): # <<<<<<<<<<<<<<
@@ -17376,7 +17985,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":205
+ /* "PETSc/petscvec.pxi":206
* CHKERR( VecAXPY(self.vec, alpha, vec.vec) )
* else:
* alpha = asScalar(other) # <<<<<<<<<<<<<<
@@ -17384,21 +17993,21 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
* return self
*/
/*else*/ {
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(PyErr_Occurred())) __PYX_ERR(5, 205, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(__pyx_t_9 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(5, 206, __pyx_L1_error)
__pyx_v_alpha = __pyx_t_9;
- /* "PETSc/petscvec.pxi":206
+ /* "PETSc/petscvec.pxi":207
* else:
* alpha = asScalar(other)
* CHKERR( VecShift(self.vec, alpha) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecShift(__pyx_v_self->vec, __pyx_v_alpha)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 206, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecShift(__pyx_v_self->vec, __pyx_v_alpha)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 207, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/petscvec.pxi":207
+ /* "PETSc/petscvec.pxi":208
* alpha = asScalar(other)
* CHKERR( VecShift(self.vec, alpha) )
* return self # <<<<<<<<<<<<<<
@@ -17410,7 +18019,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":194
+ /* "PETSc/petscvec.pxi":195
* # inplace binary operations
*
* cdef Vec vec_iadd(Vec self, other): # <<<<<<<<<<<<<<
@@ -17433,7 +18042,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_iadd(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":209
+/* "PETSc/petscvec.pxi":210
* return self
*
* cdef Vec vec_isub(Vec self, other): # <<<<<<<<<<<<<<
@@ -17458,7 +18067,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
__Pyx_RefNannySetupContext("vec_isub", 0);
__Pyx_INCREF(__pyx_v_other);
- /* "PETSc/petscvec.pxi":210
+ /* "PETSc/petscvec.pxi":211
*
* cdef Vec vec_isub(Vec self, other):
* cdef PetscScalar alpha = 1 # <<<<<<<<<<<<<<
@@ -17467,7 +18076,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
*/
__pyx_v_alpha = 1.0;
- /* "PETSc/petscvec.pxi":212
+ /* "PETSc/petscvec.pxi":213
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17478,7 +18087,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":213
+ /* "PETSc/petscvec.pxi":214
* cdef Vec vec
* if isinstance(other, Vec):
* alpha = 1; vec = other # <<<<<<<<<<<<<<
@@ -17486,22 +18095,22 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
* elif isinstance(other, tuple) or isinstance(other, list):
*/
__pyx_v_alpha = 1.0;
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 213, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 214, __pyx_L1_error)
__pyx_t_3 = __pyx_v_other;
__Pyx_INCREF(__pyx_t_3);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":214
+ /* "PETSc/petscvec.pxi":215
* if isinstance(other, Vec):
* alpha = 1; vec = other
* CHKERR( VecAXPY(self.vec, -alpha, vec.vec) ) # <<<<<<<<<<<<<<
* elif isinstance(other, tuple) or isinstance(other, list):
* other, vec = other
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, (-__pyx_v_alpha), __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 214, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, (-__pyx_v_alpha), __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 215, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":212
+ /* "PETSc/petscvec.pxi":213
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17511,7 +18120,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":215
+ /* "PETSc/petscvec.pxi":216
* alpha = 1; vec = other
* CHKERR( VecAXPY(self.vec, -alpha, vec.vec) )
* elif isinstance(other, tuple) or isinstance(other, list): # <<<<<<<<<<<<<<
@@ -17531,7 +18140,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
__pyx_L4_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":216
+ /* "PETSc/petscvec.pxi":217
* CHKERR( VecAXPY(self.vec, -alpha, vec.vec) )
* elif isinstance(other, tuple) or isinstance(other, list):
* other, vec = other # <<<<<<<<<<<<<<
@@ -17540,7 +18149,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
*/
if ((likely(PyTuple_CheckExact(__pyx_v_other))) || (PyList_CheckExact(__pyx_v_other))) {
PyObject* sequence = __pyx_v_other;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -17548,9 +18157,9 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(5, 216, __pyx_L1_error)
+ __PYX_ERR(5, 217, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
@@ -17561,21 +18170,21 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 216, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 216, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 216, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(5, 216, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(5, 217, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L7_unpacking_done;
@@ -17583,35 +18192,35 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(5, 216, __pyx_L1_error)
+ __PYX_ERR(5, 217, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 216, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 217, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_other, __pyx_t_3);
__pyx_t_3 = 0;
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscvec.pxi":217
+ /* "PETSc/petscvec.pxi":218
* elif isinstance(other, tuple) or isinstance(other, list):
* other, vec = other
* alpha = asScalar(other) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(self.vec, -alpha, vec.vec) )
* else:
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(PyErr_Occurred())) __PYX_ERR(5, 217, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(__pyx_t_9 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(5, 218, __pyx_L1_error)
__pyx_v_alpha = __pyx_t_9;
- /* "PETSc/petscvec.pxi":218
+ /* "PETSc/petscvec.pxi":219
* other, vec = other
* alpha = asScalar(other)
* CHKERR( VecAXPY(self.vec, -alpha, vec.vec) ) # <<<<<<<<<<<<<<
* else:
* alpha = asScalar(other)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, (-__pyx_v_alpha), __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 218, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, (-__pyx_v_alpha), __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 219, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":215
+ /* "PETSc/petscvec.pxi":216
* alpha = 1; vec = other
* CHKERR( VecAXPY(self.vec, -alpha, vec.vec) )
* elif isinstance(other, tuple) or isinstance(other, list): # <<<<<<<<<<<<<<
@@ -17621,7 +18230,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":220
+ /* "PETSc/petscvec.pxi":221
* CHKERR( VecAXPY(self.vec, -alpha, vec.vec) )
* else:
* alpha = asScalar(other) # <<<<<<<<<<<<<<
@@ -17629,21 +18238,21 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
* return self
*/
/*else*/ {
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(PyErr_Occurred())) __PYX_ERR(5, 220, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(__pyx_t_9 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(5, 221, __pyx_L1_error)
__pyx_v_alpha = __pyx_t_9;
- /* "PETSc/petscvec.pxi":221
+ /* "PETSc/petscvec.pxi":222
* else:
* alpha = asScalar(other)
* CHKERR( VecShift(self.vec, -alpha) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecShift(__pyx_v_self->vec, (-__pyx_v_alpha))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 221, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecShift(__pyx_v_self->vec, (-__pyx_v_alpha))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 222, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/petscvec.pxi":222
+ /* "PETSc/petscvec.pxi":223
* alpha = asScalar(other)
* CHKERR( VecShift(self.vec, -alpha) )
* return self # <<<<<<<<<<<<<<
@@ -17655,7 +18264,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":209
+ /* "PETSc/petscvec.pxi":210
* return self
*
* cdef Vec vec_isub(Vec self, other): # <<<<<<<<<<<<<<
@@ -17678,7 +18287,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_isub(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":224
+/* "PETSc/petscvec.pxi":225
* return self
*
* cdef Vec vec_imul(Vec self, other): # <<<<<<<<<<<<<<
@@ -17698,7 +18307,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_imul(struct PyPetsc
PetscScalar __pyx_t_5;
__Pyx_RefNannySetupContext("vec_imul", 0);
- /* "PETSc/petscvec.pxi":225
+ /* "PETSc/petscvec.pxi":226
*
* cdef Vec vec_imul(Vec self, other):
* cdef PetscScalar alpha = 1 # <<<<<<<<<<<<<<
@@ -17707,7 +18316,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_imul(struct PyPetsc
*/
__pyx_v_alpha = 1.0;
- /* "PETSc/petscvec.pxi":227
+ /* "PETSc/petscvec.pxi":228
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17718,29 +18327,29 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_imul(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":228
+ /* "PETSc/petscvec.pxi":229
* cdef Vec vec
* if isinstance(other, Vec):
* vec = other # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMult(self.vec, self.vec, vec.vec) )
* else:
*/
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 228, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 229, __pyx_L1_error)
__pyx_t_3 = __pyx_v_other;
__Pyx_INCREF(__pyx_t_3);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":229
+ /* "PETSc/petscvec.pxi":230
* if isinstance(other, Vec):
* vec = other
* CHKERR( VecPointwiseMult(self.vec, self.vec, vec.vec) ) # <<<<<<<<<<<<<<
* else:
* alpha = asScalar(other)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMult(__pyx_v_self->vec, __pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 229, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMult(__pyx_v_self->vec, __pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 230, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":227
+ /* "PETSc/petscvec.pxi":228
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17750,7 +18359,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_imul(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":231
+ /* "PETSc/petscvec.pxi":232
* CHKERR( VecPointwiseMult(self.vec, self.vec, vec.vec) )
* else:
* alpha = asScalar(other) # <<<<<<<<<<<<<<
@@ -17758,21 +18367,21 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_imul(struct PyPetsc
* return self
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(PyErr_Occurred())) __PYX_ERR(5, 231, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(__pyx_t_5 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(5, 232, __pyx_L1_error)
__pyx_v_alpha = __pyx_t_5;
- /* "PETSc/petscvec.pxi":232
+ /* "PETSc/petscvec.pxi":233
* else:
* alpha = asScalar(other)
* CHKERR( VecScale(self.vec, alpha) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_self->vec, __pyx_v_alpha)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 232, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_self->vec, __pyx_v_alpha)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 233, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/petscvec.pxi":233
+ /* "PETSc/petscvec.pxi":234
* alpha = asScalar(other)
* CHKERR( VecScale(self.vec, alpha) )
* return self # <<<<<<<<<<<<<<
@@ -17784,7 +18393,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_imul(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":224
+ /* "PETSc/petscvec.pxi":225
* return self
*
* cdef Vec vec_imul(Vec self, other): # <<<<<<<<<<<<<<
@@ -17804,7 +18413,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_imul(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":235
+/* "PETSc/petscvec.pxi":236
* return self
*
* cdef Vec vec_idiv(Vec self, other): # <<<<<<<<<<<<<<
@@ -17825,7 +18434,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
PetscScalar __pyx_t_5;
__Pyx_RefNannySetupContext("vec_idiv", 0);
- /* "PETSc/petscvec.pxi":236
+ /* "PETSc/petscvec.pxi":237
*
* cdef Vec vec_idiv(Vec self, other):
* cdef PetscScalar one = 1 # <<<<<<<<<<<<<<
@@ -17834,7 +18443,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
*/
__pyx_v_one = 1.0;
- /* "PETSc/petscvec.pxi":237
+ /* "PETSc/petscvec.pxi":238
* cdef Vec vec_idiv(Vec self, other):
* cdef PetscScalar one = 1
* cdef PetscScalar alpha = 1 # <<<<<<<<<<<<<<
@@ -17843,7 +18452,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
*/
__pyx_v_alpha = 1.0;
- /* "PETSc/petscvec.pxi":239
+ /* "PETSc/petscvec.pxi":240
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17854,29 +18463,29 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":240
+ /* "PETSc/petscvec.pxi":241
* cdef Vec vec
* if isinstance(other, Vec):
* vec = other # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseDivide(self.vec, self.vec, vec.vec) )
* else:
*/
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 240, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(5, 241, __pyx_L1_error)
__pyx_t_3 = __pyx_v_other;
__Pyx_INCREF(__pyx_t_3);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":241
+ /* "PETSc/petscvec.pxi":242
* if isinstance(other, Vec):
* vec = other
* CHKERR( VecPointwiseDivide(self.vec, self.vec, vec.vec) ) # <<<<<<<<<<<<<<
* else:
* alpha = asScalar(other)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseDivide(__pyx_v_self->vec, __pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 241, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseDivide(__pyx_v_self->vec, __pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 242, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":239
+ /* "PETSc/petscvec.pxi":240
* cdef PetscScalar alpha = 1
* cdef Vec vec
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -17886,7 +18495,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":243
+ /* "PETSc/petscvec.pxi":244
* CHKERR( VecPointwiseDivide(self.vec, self.vec, vec.vec) )
* else:
* alpha = asScalar(other) # <<<<<<<<<<<<<<
@@ -17894,21 +18503,21 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
* return self
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(PyErr_Occurred())) __PYX_ERR(5, 243, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_other); if (unlikely(__pyx_t_5 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(5, 244, __pyx_L1_error)
__pyx_v_alpha = __pyx_t_5;
- /* "PETSc/petscvec.pxi":244
+ /* "PETSc/petscvec.pxi":245
* else:
* alpha = asScalar(other)
* CHKERR( VecScale(self.vec, one/alpha) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_self->vec, (__pyx_v_one / __pyx_v_alpha))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 244, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_self->vec, (__pyx_v_one / __pyx_v_alpha))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 245, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/petscvec.pxi":245
+ /* "PETSc/petscvec.pxi":246
* alpha = asScalar(other)
* CHKERR( VecScale(self.vec, one/alpha) )
* return self # <<<<<<<<<<<<<<
@@ -17920,7 +18529,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":235
+ /* "PETSc/petscvec.pxi":236
* return self
*
* cdef Vec vec_idiv(Vec self, other): # <<<<<<<<<<<<<<
@@ -17940,7 +18549,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_idiv(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":249
+/* "PETSc/petscvec.pxi":250
* # binary operations
*
* cdef Vec vec_add(Vec self, other): # <<<<<<<<<<<<<<
@@ -17955,7 +18564,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_add(struct PyPetscV
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_add", 0);
- /* "PETSc/petscvec.pxi":250
+ /* "PETSc/petscvec.pxi":251
*
* cdef Vec vec_add(Vec self, other):
* return vec_iadd(vec_pos(self), other) # <<<<<<<<<<<<<<
@@ -17963,16 +18572,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_add(struct PyPetscV
* cdef Vec vec_sub(Vec self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 250, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 251, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_iadd(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 250, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_iadd(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 251, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":249
+ /* "PETSc/petscvec.pxi":250
* # binary operations
*
* cdef Vec vec_add(Vec self, other): # <<<<<<<<<<<<<<
@@ -17992,7 +18601,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_add(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":252
+/* "PETSc/petscvec.pxi":253
* return vec_iadd(vec_pos(self), other)
*
* cdef Vec vec_sub(Vec self, other): # <<<<<<<<<<<<<<
@@ -18007,7 +18616,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_sub(struct PyPetscV
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_sub", 0);
- /* "PETSc/petscvec.pxi":253
+ /* "PETSc/petscvec.pxi":254
*
* cdef Vec vec_sub(Vec self, other):
* return vec_isub(vec_pos(self), other) # <<<<<<<<<<<<<<
@@ -18015,16 +18624,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_sub(struct PyPetscV
* cdef Vec vec_mul(Vec self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 253, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_isub(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 253, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_isub(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":252
+ /* "PETSc/petscvec.pxi":253
* return vec_iadd(vec_pos(self), other)
*
* cdef Vec vec_sub(Vec self, other): # <<<<<<<<<<<<<<
@@ -18044,7 +18653,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_sub(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":255
+/* "PETSc/petscvec.pxi":256
* return vec_isub(vec_pos(self), other)
*
* cdef Vec vec_mul(Vec self, other): # <<<<<<<<<<<<<<
@@ -18059,7 +18668,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_mul(struct PyPetscV
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_mul", 0);
- /* "PETSc/petscvec.pxi":256
+ /* "PETSc/petscvec.pxi":257
*
* cdef Vec vec_mul(Vec self, other):
* return vec_imul(vec_pos(self), other) # <<<<<<<<<<<<<<
@@ -18067,16 +18676,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_mul(struct PyPetscV
* cdef Vec vec_div(Vec self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 256, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 257, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_imul(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 256, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_imul(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 257, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":255
+ /* "PETSc/petscvec.pxi":256
* return vec_isub(vec_pos(self), other)
*
* cdef Vec vec_mul(Vec self, other): # <<<<<<<<<<<<<<
@@ -18096,7 +18705,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_mul(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":258
+/* "PETSc/petscvec.pxi":259
* return vec_imul(vec_pos(self), other)
*
* cdef Vec vec_div(Vec self, other): # <<<<<<<<<<<<<<
@@ -18111,7 +18720,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_div(struct PyPetscV
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_div", 0);
- /* "PETSc/petscvec.pxi":259
+ /* "PETSc/petscvec.pxi":260
*
* cdef Vec vec_div(Vec self, other):
* return vec_idiv(vec_pos(self), other) # <<<<<<<<<<<<<<
@@ -18119,16 +18728,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_div(struct PyPetscV
* # reflected binary operations
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 259, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_idiv(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 259, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_idiv(((struct PyPetscVecObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":258
+ /* "PETSc/petscvec.pxi":259
* return vec_imul(vec_pos(self), other)
*
* cdef Vec vec_div(Vec self, other): # <<<<<<<<<<<<<<
@@ -18148,7 +18757,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_div(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":263
+/* "PETSc/petscvec.pxi":264
* # reflected binary operations
*
* cdef Vec vec_radd(Vec self, other): # <<<<<<<<<<<<<<
@@ -18162,7 +18771,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_radd(struct PyPetsc
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("vec_radd", 0);
- /* "PETSc/petscvec.pxi":264
+ /* "PETSc/petscvec.pxi":265
*
* cdef Vec vec_radd(Vec self, other):
* return vec_add(self, other) # <<<<<<<<<<<<<<
@@ -18170,13 +18779,13 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_radd(struct PyPetsc
* cdef Vec vec_rsub(Vec self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_add(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 264, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_add(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":263
+ /* "PETSc/petscvec.pxi":264
* # reflected binary operations
*
* cdef Vec vec_radd(Vec self, other): # <<<<<<<<<<<<<<
@@ -18195,7 +18804,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_radd(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":266
+/* "PETSc/petscvec.pxi":267
* return vec_add(self, other)
*
* cdef Vec vec_rsub(Vec self, other): # <<<<<<<<<<<<<<
@@ -18212,14 +18821,14 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rsub(struct PyPetsc
int __pyx_t_3;
__Pyx_RefNannySetupContext("vec_rsub", 0);
- /* "PETSc/petscvec.pxi":267
+ /* "PETSc/petscvec.pxi":268
*
* cdef Vec vec_rsub(Vec self, other):
* cdef Vec vec = <Vec> vec_sub(self, other) # <<<<<<<<<<<<<<
* CHKERR( VecScale(vec.vec, -1) )
* return vec
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_sub(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 267, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_sub(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 268, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -18227,16 +18836,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rsub(struct PyPetsc
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscvec.pxi":268
+ /* "PETSc/petscvec.pxi":269
* cdef Vec vec_rsub(Vec self, other):
* cdef Vec vec = <Vec> vec_sub(self, other)
* CHKERR( VecScale(vec.vec, -1) ) # <<<<<<<<<<<<<<
* return vec
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_vec->vec, -1.0)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 268, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_vec->vec, -1.0)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 269, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":269
+ /* "PETSc/petscvec.pxi":270
* cdef Vec vec = <Vec> vec_sub(self, other)
* CHKERR( VecScale(vec.vec, -1) )
* return vec # <<<<<<<<<<<<<<
@@ -18248,7 +18857,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rsub(struct PyPetsc
__pyx_r = __pyx_v_vec;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":266
+ /* "PETSc/petscvec.pxi":267
* return vec_add(self, other)
*
* cdef Vec vec_rsub(Vec self, other): # <<<<<<<<<<<<<<
@@ -18269,7 +18878,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rsub(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":271
+/* "PETSc/petscvec.pxi":272
* return vec
*
* cdef Vec vec_rmul(Vec self, other): # <<<<<<<<<<<<<<
@@ -18283,7 +18892,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rmul(struct PyPetsc
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("vec_rmul", 0);
- /* "PETSc/petscvec.pxi":272
+ /* "PETSc/petscvec.pxi":273
*
* cdef Vec vec_rmul(Vec self, other):
* return vec_mul(self, other) # <<<<<<<<<<<<<<
@@ -18291,13 +18900,13 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rmul(struct PyPetsc
* cdef Vec vec_rdiv(Vec self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_mul(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 272, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_mul(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 273, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":271
+ /* "PETSc/petscvec.pxi":272
* return vec
*
* cdef Vec vec_rmul(Vec self, other): # <<<<<<<<<<<<<<
@@ -18316,7 +18925,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rmul(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":274
+/* "PETSc/petscvec.pxi":275
* return vec_mul(self, other)
*
* cdef Vec vec_rdiv(Vec self, other): # <<<<<<<<<<<<<<
@@ -18333,14 +18942,14 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rdiv(struct PyPetsc
int __pyx_t_3;
__Pyx_RefNannySetupContext("vec_rdiv", 0);
- /* "PETSc/petscvec.pxi":275
+ /* "PETSc/petscvec.pxi":276
*
* cdef Vec vec_rdiv(Vec self, other):
* cdef Vec vec = <Vec> vec_div(self, other) # <<<<<<<<<<<<<<
* CHKERR( VecReciprocal(vec.vec) )
* return vec
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_div(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 275, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_div(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 276, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -18348,16 +18957,16 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rdiv(struct PyPetsc
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscvec.pxi":276
+ /* "PETSc/petscvec.pxi":277
* cdef Vec vec_rdiv(Vec self, other):
* cdef Vec vec = <Vec> vec_div(self, other)
* CHKERR( VecReciprocal(vec.vec) ) # <<<<<<<<<<<<<<
* return vec
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecReciprocal(__pyx_v_vec->vec)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 276, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecReciprocal(__pyx_v_vec->vec)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 277, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":277
+ /* "PETSc/petscvec.pxi":278
* cdef Vec vec = <Vec> vec_div(self, other)
* CHKERR( VecReciprocal(vec.vec) )
* return vec # <<<<<<<<<<<<<<
@@ -18369,7 +18978,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rdiv(struct PyPetsc
__pyx_r = __pyx_v_vec;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":274
+ /* "PETSc/petscvec.pxi":275
* return vec_mul(self, other)
*
* cdef Vec vec_rdiv(Vec self, other): # <<<<<<<<<<<<<<
@@ -18390,7 +18999,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_vec_rdiv(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":281
+/* "PETSc/petscvec.pxi":282
* # --------------------------------------------------------------------
*
* cdef inline int Vec_Sizes(object size, object bsize, # <<<<<<<<<<<<<<
@@ -18404,16 +19013,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Vec_Sizes(PyObject *__pyx_v_si
int __pyx_t_1;
__Pyx_RefNannySetupContext("Vec_Sizes", 0);
- /* "PETSc/petscvec.pxi":283
+ /* "PETSc/petscvec.pxi":284
* cdef inline int Vec_Sizes(object size, object bsize,
* PetscInt *b, PetscInt *n, PetscInt *N) except -1:
* Sys_Sizes(size, bsize, b, n, N) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_size, __pyx_v_bsize, __pyx_v_b, __pyx_v_n, __pyx_v_N); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 283, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_size, __pyx_v_bsize, __pyx_v_b, __pyx_v_n, __pyx_v_N); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 284, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":284
+ /* "PETSc/petscvec.pxi":285
* PetscInt *b, PetscInt *n, PetscInt *N) except -1:
* Sys_Sizes(size, bsize, b, n, N)
* return 0 # <<<<<<<<<<<<<<
@@ -18423,7 +19032,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Vec_Sizes(PyObject *__pyx_v_si
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":281
+ /* "PETSc/petscvec.pxi":282
* # --------------------------------------------------------------------
*
* cdef inline int Vec_Sizes(object size, object bsize, # <<<<<<<<<<<<<<
@@ -18440,7 +19049,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Vec_Sizes(PyObject *__pyx_v_si
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":291
+/* "PETSc/petscvec.pxi":292
* const_PetscScalar[],PetscInsertMode)
*
* cdef inline int vecsetvalues(PetscVec V, # <<<<<<<<<<<<<<
@@ -18470,7 +19079,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
int __pyx_t_8;
__Pyx_RefNannySetupContext("vecsetvalues", 0);
- /* "PETSc/petscvec.pxi":295
+ /* "PETSc/petscvec.pxi":296
* int blocked, int local) except -1:
* # block size
* cdef PetscInt bs=1 # <<<<<<<<<<<<<<
@@ -18479,7 +19088,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
*/
__pyx_v_bs = 1;
- /* "PETSc/petscvec.pxi":296
+ /* "PETSc/petscvec.pxi":297
* # block size
* cdef PetscInt bs=1
* if blocked: # <<<<<<<<<<<<<<
@@ -18489,16 +19098,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
__pyx_t_1 = (__pyx_v_blocked != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":297
+ /* "PETSc/petscvec.pxi":298
* cdef PetscInt bs=1
* if blocked:
* CHKERR( VecGetBlockSize(V, &bs) ) # <<<<<<<<<<<<<<
* if bs < 1: bs = 1
* # indices and values
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetBlockSize(__pyx_v_V, (&__pyx_v_bs))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 297, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetBlockSize(__pyx_v_V, (&__pyx_v_bs))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 298, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":298
+ /* "PETSc/petscvec.pxi":299
* if blocked:
* CHKERR( VecGetBlockSize(V, &bs) )
* if bs < 1: bs = 1 # <<<<<<<<<<<<<<
@@ -18510,7 +19119,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
__pyx_v_bs = 1;
}
- /* "PETSc/petscvec.pxi":296
+ /* "PETSc/petscvec.pxi":297
* # block size
* cdef PetscInt bs=1
* if blocked: # <<<<<<<<<<<<<<
@@ -18519,7 +19128,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
*/
}
- /* "PETSc/petscvec.pxi":300
+ /* "PETSc/petscvec.pxi":301
* if bs < 1: bs = 1
* # indices and values
* cdef PetscInt ni=0, nv=0 # <<<<<<<<<<<<<<
@@ -18529,7 +19138,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
__pyx_v_ni = 0;
__pyx_v_nv = 0;
- /* "PETSc/petscvec.pxi":301
+ /* "PETSc/petscvec.pxi":302
* # indices and values
* cdef PetscInt ni=0, nv=0
* cdef PetscInt *i=NULL # <<<<<<<<<<<<<<
@@ -18538,7 +19147,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
*/
__pyx_v_i = NULL;
- /* "PETSc/petscvec.pxi":302
+ /* "PETSc/petscvec.pxi":303
* cdef PetscInt ni=0, nv=0
* cdef PetscInt *i=NULL
* cdef PetscScalar *v=NULL # <<<<<<<<<<<<<<
@@ -18547,31 +19156,31 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
*/
__pyx_v_v = NULL;
- /* "PETSc/petscvec.pxi":303
+ /* "PETSc/petscvec.pxi":304
* cdef PetscInt *i=NULL
* cdef PetscScalar *v=NULL
* cdef object tmp1 = iarray_i(oi, &ni, &i) # <<<<<<<<<<<<<<
* cdef object tmp2 = iarray_s(ov, &nv, &v)
* if ni*bs != nv: raise ValueError(
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 303, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 304, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_tmp1 = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":304
+ /* "PETSc/petscvec.pxi":305
* cdef PetscScalar *v=NULL
* cdef object tmp1 = iarray_i(oi, &ni, &i)
* cdef object tmp2 = iarray_s(ov, &nv, &v) # <<<<<<<<<<<<<<
* if ni*bs != nv: raise ValueError(
* "incompatible array sizes: ni=%d, nv=%d, bs=%d" %
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 304, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 305, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_tmp2 = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":305
+ /* "PETSc/petscvec.pxi":306
* cdef object tmp1 = iarray_i(oi, &ni, &i)
* cdef object tmp2 = iarray_s(ov, &nv, &v)
* if ni*bs != nv: raise ValueError( # <<<<<<<<<<<<<<
@@ -18581,20 +19190,20 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
__pyx_t_1 = (((__pyx_v_ni * __pyx_v_bs) != __pyx_v_nv) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":307
+ /* "PETSc/petscvec.pxi":308
* if ni*bs != nv: raise ValueError(
* "incompatible array sizes: ni=%d, nv=%d, bs=%d" %
* (toInt(ni), toInt(nv), toInt(bs)) ) # <<<<<<<<<<<<<<
* # insert mode
* cdef PetscInsertMode addv = insertmode(oim)
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 307, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 308, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 307, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 308, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 307, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 308, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 307, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 308, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
@@ -18606,48 +19215,48 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
__pyx_t_4 = 0;
__pyx_t_5 = 0;
- /* "PETSc/petscvec.pxi":306
+ /* "PETSc/petscvec.pxi":307
* cdef object tmp2 = iarray_s(ov, &nv, &v)
* if ni*bs != nv: raise ValueError(
* "incompatible array sizes: ni=%d, nv=%d, bs=%d" % # <<<<<<<<<<<<<<
* (toInt(ni), toInt(nv), toInt(bs)) )
* # insert mode
*/
- __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nv, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 306, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nv, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 307, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscvec.pxi":305
+ /* "PETSc/petscvec.pxi":306
* cdef object tmp1 = iarray_i(oi, &ni, &i)
* cdef object tmp2 = iarray_s(ov, &nv, &v)
* if ni*bs != nv: raise ValueError( # <<<<<<<<<<<<<<
* "incompatible array sizes: ni=%d, nv=%d, bs=%d" %
* (toInt(ni), toInt(nv), toInt(bs)) )
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 305, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 306, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
__pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 305, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 306, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_Raise(__pyx_t_5, 0, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __PYX_ERR(5, 305, __pyx_L1_error)
+ __PYX_ERR(5, 306, __pyx_L1_error)
}
- /* "PETSc/petscvec.pxi":309
+ /* "PETSc/petscvec.pxi":310
* (toInt(ni), toInt(nv), toInt(bs)) )
* # insert mode
* cdef PetscInsertMode addv = insertmode(oim) # <<<<<<<<<<<<<<
* # VecSetValuesXXX function
* cdef VecSetValuesFcn *setvalues = NULL
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oim); if (unlikely(__pyx_t_7 == ((InsertMode)-1L))) __PYX_ERR(5, 309, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oim); if (unlikely(__pyx_t_7 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(5, 310, __pyx_L1_error)
__pyx_v_addv = __pyx_t_7;
- /* "PETSc/petscvec.pxi":311
+ /* "PETSc/petscvec.pxi":312
* cdef PetscInsertMode addv = insertmode(oim)
* # VecSetValuesXXX function
* cdef VecSetValuesFcn *setvalues = NULL # <<<<<<<<<<<<<<
@@ -18656,7 +19265,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
*/
__pyx_v_setvalues = NULL;
- /* "PETSc/petscvec.pxi":312
+ /* "PETSc/petscvec.pxi":313
* # VecSetValuesXXX function
* cdef VecSetValuesFcn *setvalues = NULL
* if blocked and local: setvalues = VecSetValuesBlockedLocal # <<<<<<<<<<<<<<
@@ -18677,7 +19286,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
goto __pyx_L6;
}
- /* "PETSc/petscvec.pxi":313
+ /* "PETSc/petscvec.pxi":314
* cdef VecSetValuesFcn *setvalues = NULL
* if blocked and local: setvalues = VecSetValuesBlockedLocal
* elif blocked: setvalues = VecSetValuesBlocked # <<<<<<<<<<<<<<
@@ -18690,7 +19299,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
goto __pyx_L6;
}
- /* "PETSc/petscvec.pxi":314
+ /* "PETSc/petscvec.pxi":315
* if blocked and local: setvalues = VecSetValuesBlockedLocal
* elif blocked: setvalues = VecSetValuesBlocked
* elif local: setvalues = VecSetValuesLocal # <<<<<<<<<<<<<<
@@ -18703,7 +19312,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
goto __pyx_L6;
}
- /* "PETSc/petscvec.pxi":315
+ /* "PETSc/petscvec.pxi":316
* elif blocked: setvalues = VecSetValuesBlocked
* elif local: setvalues = VecSetValuesLocal
* else: setvalues = VecSetValues # <<<<<<<<<<<<<<
@@ -18715,16 +19324,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
}
__pyx_L6:;
- /* "PETSc/petscvec.pxi":317
+ /* "PETSc/petscvec.pxi":318
* else: setvalues = VecSetValues
* # actual call
* CHKERR( setvalues(V, ni, i, v, addv) ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_V, __pyx_v_ni, __pyx_v_i, __pyx_v_v, __pyx_v_addv)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 317, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_V, __pyx_v_ni, __pyx_v_i, __pyx_v_v, __pyx_v_addv)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 318, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":318
+ /* "PETSc/petscvec.pxi":319
* # actual call
* CHKERR( setvalues(V, ni, i, v, addv) )
* return 0 # <<<<<<<<<<<<<<
@@ -18734,7 +19343,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":291
+ /* "PETSc/petscvec.pxi":292
* const_PetscScalar[],PetscInsertMode)
*
* cdef inline int vecsetvalues(PetscVec V, # <<<<<<<<<<<<<<
@@ -18757,7 +19366,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vecsetvalues(Vec __pyx_v_V, Py
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":320
+/* "PETSc/petscvec.pxi":321
* return 0
*
* cdef object vecgetvalues(PetscVec vec, object oindices, object values): # <<<<<<<<<<<<<<
@@ -18782,7 +19391,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
__Pyx_RefNannySetupContext("vecgetvalues", 0);
__Pyx_INCREF(__pyx_v_values);
- /* "PETSc/petscvec.pxi":321
+ /* "PETSc/petscvec.pxi":322
*
* cdef object vecgetvalues(PetscVec vec, object oindices, object values):
* cdef PetscInt ni=0, nv=0 # <<<<<<<<<<<<<<
@@ -18792,7 +19401,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
__pyx_v_ni = 0;
__pyx_v_nv = 0;
- /* "PETSc/petscvec.pxi":322
+ /* "PETSc/petscvec.pxi":323
* cdef object vecgetvalues(PetscVec vec, object oindices, object values):
* cdef PetscInt ni=0, nv=0
* cdef PetscInt *i=NULL # <<<<<<<<<<<<<<
@@ -18801,7 +19410,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
*/
__pyx_v_i = NULL;
- /* "PETSc/petscvec.pxi":323
+ /* "PETSc/petscvec.pxi":324
* cdef PetscInt ni=0, nv=0
* cdef PetscInt *i=NULL
* cdef PetscScalar *v=NULL # <<<<<<<<<<<<<<
@@ -18810,19 +19419,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
*/
__pyx_v_v = NULL;
- /* "PETSc/petscvec.pxi":324
+ /* "PETSc/petscvec.pxi":325
* cdef PetscInt *i=NULL
* cdef PetscScalar *v=NULL
* cdef object indices = iarray_i(oindices, &ni, &i) # <<<<<<<<<<<<<<
* if values is None:
* values = empty_s(ni)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oindices, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 324, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oindices, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 325, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_indices = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscvec.pxi":325
+ /* "PETSc/petscvec.pxi":326
* cdef PetscScalar *v=NULL
* cdef object indices = iarray_i(oindices, &ni, &i)
* if values is None: # <<<<<<<<<<<<<<
@@ -18833,31 +19442,31 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscvec.pxi":326
+ /* "PETSc/petscvec.pxi":327
* cdef object indices = iarray_i(oindices, &ni, &i)
* if values is None:
* values = empty_s(ni) # <<<<<<<<<<<<<<
* values.shape = indices.shape
* values = oarray_s(values, &nv, &v)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_s(__pyx_v_ni)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 326, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_s(__pyx_v_ni)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 327, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscvec.pxi":327
+ /* "PETSc/petscvec.pxi":328
* if values is None:
* values = empty_s(ni)
* values.shape = indices.shape # <<<<<<<<<<<<<<
* values = oarray_s(values, &nv, &v)
* if (ni != nv): raise ValueError(
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_indices, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 327, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_indices, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 328, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_values, __pyx_n_s_shape, __pyx_t_1) < 0) __PYX_ERR(5, 327, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_values, __pyx_n_s_shape, __pyx_t_1) < 0) __PYX_ERR(5, 328, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscvec.pxi":325
+ /* "PETSc/petscvec.pxi":326
* cdef PetscScalar *v=NULL
* cdef object indices = iarray_i(oindices, &ni, &i)
* if values is None: # <<<<<<<<<<<<<<
@@ -18866,19 +19475,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
*/
}
- /* "PETSc/petscvec.pxi":328
+ /* "PETSc/petscvec.pxi":329
* values = empty_s(ni)
* values.shape = indices.shape
* values = oarray_s(values, &nv, &v) # <<<<<<<<<<<<<<
* if (ni != nv): raise ValueError(
* ("incompatible array sizes: "
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_s(__pyx_v_values, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 328, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_s(__pyx_v_values, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 329, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscvec.pxi":329
+ /* "PETSc/petscvec.pxi":330
* values.shape = indices.shape
* values = oarray_s(values, &nv, &v)
* if (ni != nv): raise ValueError( # <<<<<<<<<<<<<<
@@ -18888,18 +19497,18 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
__pyx_t_3 = ((__pyx_v_ni != __pyx_v_nv) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscvec.pxi":331
+ /* "PETSc/petscvec.pxi":332
* if (ni != nv): raise ValueError(
* ("incompatible array sizes: "
* "ni=%d, nv=%d") % (toInt(ni), toInt(nv))) # <<<<<<<<<<<<<<
* CHKERR( VecGetValues(vec, ni, i, v) )
* return values
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 331, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 331, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 331, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
@@ -18907,40 +19516,40 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
__pyx_t_1 = 0;
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nv_2, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 331, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nv_2, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscvec.pxi":329
+ /* "PETSc/petscvec.pxi":330
* values.shape = indices.shape
* values = oarray_s(values, &nv, &v)
* if (ni != nv): raise ValueError( # <<<<<<<<<<<<<<
* ("incompatible array sizes: "
* "ni=%d, nv=%d") % (toInt(ni), toInt(nv)))
*/
- __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 329, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 329, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(5, 329, __pyx_L1_error)
+ __PYX_ERR(5, 330, __pyx_L1_error)
}
- /* "PETSc/petscvec.pxi":332
+ /* "PETSc/petscvec.pxi":333
* ("incompatible array sizes: "
* "ni=%d, nv=%d") % (toInt(ni), toInt(nv)))
* CHKERR( VecGetValues(vec, ni, i, v) ) # <<<<<<<<<<<<<<
* return values
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetValues(__pyx_v_vec, __pyx_v_ni, __pyx_v_i, __pyx_v_v)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(5, 332, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetValues(__pyx_v_vec, __pyx_v_ni, __pyx_v_i, __pyx_v_v)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(5, 333, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":333
+ /* "PETSc/petscvec.pxi":334
* "ni=%d, nv=%d") % (toInt(ni), toInt(nv)))
* CHKERR( VecGetValues(vec, ni, i, v) )
* return values # <<<<<<<<<<<<<<
@@ -18952,7 +19561,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
__pyx_r = __pyx_v_values;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":320
+ /* "PETSc/petscvec.pxi":321
* return 0
*
* cdef object vecgetvalues(PetscVec vec, object oindices, object values): # <<<<<<<<<<<<<<
@@ -18975,7 +19584,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vecgetvalues(Vec __pyx_v_vec, PyObject
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":337
+/* "PETSc/petscvec.pxi":338
* # --------------------------------------------------------------------
*
* cdef inline _Vec_buffer vec_getbuffer_r(Vec self): # <<<<<<<<<<<<<<
@@ -18991,25 +19600,25 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_getbuffer_r", 0);
- /* "PETSc/petscvec.pxi":338
+ /* "PETSc/petscvec.pxi":339
*
* cdef inline _Vec_buffer vec_getbuffer_r(Vec self):
* cdef _Vec_buffer buf = _Vec_buffer(self) # <<<<<<<<<<<<<<
* buf.readonly = 1
* return buf
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 338, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self));
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_self));
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc__Vec_buffer), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 338, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc__Vec_buffer), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_buf = ((struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscvec.pxi":339
+ /* "PETSc/petscvec.pxi":340
* cdef inline _Vec_buffer vec_getbuffer_r(Vec self):
* cdef _Vec_buffer buf = _Vec_buffer(self)
* buf.readonly = 1 # <<<<<<<<<<<<<<
@@ -19018,7 +19627,7 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
*/
__pyx_v_buf->readonly = 1;
- /* "PETSc/petscvec.pxi":340
+ /* "PETSc/petscvec.pxi":341
* cdef _Vec_buffer buf = _Vec_buffer(self)
* buf.readonly = 1
* return buf # <<<<<<<<<<<<<<
@@ -19030,7 +19639,7 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
__pyx_r = __pyx_v_buf;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":337
+ /* "PETSc/petscvec.pxi":338
* # --------------------------------------------------------------------
*
* cdef inline _Vec_buffer vec_getbuffer_r(Vec self): # <<<<<<<<<<<<<<
@@ -19051,7 +19660,7 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":342
+/* "PETSc/petscvec.pxi":343
* return buf
*
* cdef inline _Vec_buffer vec_getbuffer_w(Vec self): # <<<<<<<<<<<<<<
@@ -19067,25 +19676,25 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_getbuffer_w", 0);
- /* "PETSc/petscvec.pxi":343
+ /* "PETSc/petscvec.pxi":344
*
* cdef inline _Vec_buffer vec_getbuffer_w(Vec self):
* cdef _Vec_buffer buf = _Vec_buffer(self) # <<<<<<<<<<<<<<
* buf.readonly = 0
* return buf
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 343, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 344, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self));
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_self));
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc__Vec_buffer), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 343, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc__Vec_buffer), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 344, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_buf = ((struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscvec.pxi":344
+ /* "PETSc/petscvec.pxi":345
* cdef inline _Vec_buffer vec_getbuffer_w(Vec self):
* cdef _Vec_buffer buf = _Vec_buffer(self)
* buf.readonly = 0 # <<<<<<<<<<<<<<
@@ -19094,7 +19703,7 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
*/
__pyx_v_buf->readonly = 0;
- /* "PETSc/petscvec.pxi":345
+ /* "PETSc/petscvec.pxi":346
* cdef _Vec_buffer buf = _Vec_buffer(self)
* buf.readonly = 0
* return buf # <<<<<<<<<<<<<<
@@ -19106,7 +19715,7 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
__pyx_r = __pyx_v_buf;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":342
+ /* "PETSc/petscvec.pxi":343
* return buf
*
* cdef inline _Vec_buffer vec_getbuffer_w(Vec self): # <<<<<<<<<<<<<<
@@ -19127,7 +19736,7 @@ static CYTHON_INLINE struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *__pyx_f_8pet
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":347
+/* "PETSc/petscvec.pxi":348
* return buf
*
* cdef inline ndarray vec_getarray_r(Vec self): # <<<<<<<<<<<<<<
@@ -19142,7 +19751,7 @@ static CYTHON_INLINE PyArrayObject *__pyx_f_8petsc4py_5PETSc_vec_getarray_r(stru
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_getarray_r", 0);
- /* "PETSc/petscvec.pxi":348
+ /* "PETSc/petscvec.pxi":349
*
* cdef inline ndarray vec_getarray_r(Vec self):
* return asarray(vec_getbuffer_r(self)) # <<<<<<<<<<<<<<
@@ -19150,16 +19759,16 @@ static CYTHON_INLINE PyArrayObject *__pyx_f_8petsc4py_5PETSc_vec_getarray_r(stru
* cdef inline ndarray vec_getarray_w(Vec self):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_getbuffer_r(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 348, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_getbuffer_r(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 349, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 348, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 349, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((PyArrayObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":347
+ /* "PETSc/petscvec.pxi":348
* return buf
*
* cdef inline ndarray vec_getarray_r(Vec self): # <<<<<<<<<<<<<<
@@ -19179,7 +19788,7 @@ static CYTHON_INLINE PyArrayObject *__pyx_f_8petsc4py_5PETSc_vec_getarray_r(stru
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":350
+/* "PETSc/petscvec.pxi":351
* return asarray(vec_getbuffer_r(self))
*
* cdef inline ndarray vec_getarray_w(Vec self): # <<<<<<<<<<<<<<
@@ -19194,7 +19803,7 @@ static CYTHON_INLINE PyArrayObject *__pyx_f_8petsc4py_5PETSc_vec_getarray_w(stru
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("vec_getarray_w", 0);
- /* "PETSc/petscvec.pxi":351
+ /* "PETSc/petscvec.pxi":352
*
* cdef inline ndarray vec_getarray_w(Vec self):
* return asarray(vec_getbuffer_w(self)) # <<<<<<<<<<<<<<
@@ -19202,16 +19811,16 @@ static CYTHON_INLINE PyArrayObject *__pyx_f_8petsc4py_5PETSc_vec_getarray_w(stru
* cdef inline int vec_setarray(Vec self, object o) except -1:
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_getbuffer_w(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 351, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_vec_getbuffer_w(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 351, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((PyArrayObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":350
+ /* "PETSc/petscvec.pxi":351
* return asarray(vec_getbuffer_r(self))
*
* cdef inline ndarray vec_getarray_w(Vec self): # <<<<<<<<<<<<<<
@@ -19231,7 +19840,7 @@ static CYTHON_INLINE PyArrayObject *__pyx_f_8petsc4py_5PETSc_vec_getarray_w(stru
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":353
+/* "PETSc/petscvec.pxi":354
* return asarray(vec_getbuffer_w(self))
*
* cdef inline int vec_setarray(Vec self, object o) except -1: # <<<<<<<<<<<<<<
@@ -19266,7 +19875,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
int __pyx_t_16;
__Pyx_RefNannySetupContext("vec_setarray", 0);
- /* "PETSc/petscvec.pxi":354
+ /* "PETSc/petscvec.pxi":355
*
* cdef inline int vec_setarray(Vec self, object o) except -1:
* cdef PetscInt na=0, nv=0, i=0 # <<<<<<<<<<<<<<
@@ -19277,7 +19886,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_v_nv = 0;
__pyx_v_i = 0;
- /* "PETSc/petscvec.pxi":355
+ /* "PETSc/petscvec.pxi":356
* cdef inline int vec_setarray(Vec self, object o) except -1:
* cdef PetscInt na=0, nv=0, i=0
* cdef PetscScalar *va=NULL, *vv=NULL # <<<<<<<<<<<<<<
@@ -19287,28 +19896,28 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_v_va = NULL;
__pyx_v_vv = NULL;
- /* "PETSc/petscvec.pxi":356
+ /* "PETSc/petscvec.pxi":357
* cdef PetscInt na=0, nv=0, i=0
* cdef PetscScalar *va=NULL, *vv=NULL
* cdef ndarray ary = iarray_s(o, &na, &va) # <<<<<<<<<<<<<<
* CHKERR( VecGetLocalSize(self.vec, &nv) )
* if (na != nv) and PyArray_NDIM(ary) > 0: raise ValueError(
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_o, (&__pyx_v_na), (&__pyx_v_va))); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 356, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_o, (&__pyx_v_na), (&__pyx_v_va))); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_ary = ((PyArrayObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscvec.pxi":357
+ /* "PETSc/petscvec.pxi":358
* cdef PetscScalar *va=NULL, *vv=NULL
* cdef ndarray ary = iarray_s(o, &na, &va)
* CHKERR( VecGetLocalSize(self.vec, &nv) ) # <<<<<<<<<<<<<<
* if (na != nv) and PyArray_NDIM(ary) > 0: raise ValueError(
* "array size %d incompatible with vector local size %d" %
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_nv))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 357, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_nv))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 358, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":358
+ /* "PETSc/petscvec.pxi":359
* cdef ndarray ary = iarray_s(o, &na, &va)
* CHKERR( VecGetLocalSize(self.vec, &nv) )
* if (na != nv) and PyArray_NDIM(ary) > 0: raise ValueError( # <<<<<<<<<<<<<<
@@ -19326,18 +19935,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_L4_bool_binop_done:;
if (__pyx_t_3) {
- /* "PETSc/petscvec.pxi":360
+ /* "PETSc/petscvec.pxi":361
* if (na != nv) and PyArray_NDIM(ary) > 0: raise ValueError(
* "array size %d incompatible with vector local size %d" %
* (toInt(na), toInt(nv)) ) # <<<<<<<<<<<<<<
* CHKERR( VecGetArray(self.vec, &vv) )
* try:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_na); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 360, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_na); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 360, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 360, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
@@ -19346,47 +19955,47 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_t_1 = 0;
__pyx_t_5 = 0;
- /* "PETSc/petscvec.pxi":359
+ /* "PETSc/petscvec.pxi":360
* CHKERR( VecGetLocalSize(self.vec, &nv) )
* if (na != nv) and PyArray_NDIM(ary) > 0: raise ValueError(
* "array size %d incompatible with vector local size %d" % # <<<<<<<<<<<<<<
* (toInt(na), toInt(nv)) )
* CHKERR( VecGetArray(self.vec, &vv) )
*/
- __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_array_size_d_incompatible_with_v, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 359, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_array_size_d_incompatible_with_v, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscvec.pxi":358
+ /* "PETSc/petscvec.pxi":359
* cdef ndarray ary = iarray_s(o, &na, &va)
* CHKERR( VecGetLocalSize(self.vec, &nv) )
* if (na != nv) and PyArray_NDIM(ary) > 0: raise ValueError( # <<<<<<<<<<<<<<
* "array size %d incompatible with vector local size %d" %
* (toInt(na), toInt(nv)) )
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 358, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 359, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
__pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 358, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 359, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_Raise(__pyx_t_5, 0, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __PYX_ERR(5, 358, __pyx_L1_error)
+ __PYX_ERR(5, 359, __pyx_L1_error)
}
- /* "PETSc/petscvec.pxi":361
+ /* "PETSc/petscvec.pxi":362
* "array size %d incompatible with vector local size %d" %
* (toInt(na), toInt(nv)) )
* CHKERR( VecGetArray(self.vec, &vv) ) # <<<<<<<<<<<<<<
* try:
* if PyArray_NDIM(ary) == 0:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetArray(__pyx_v_self->vec, (&__pyx_v_vv))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 361, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetArray(__pyx_v_self->vec, (&__pyx_v_vv))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 362, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":362
+ /* "PETSc/petscvec.pxi":363
* (toInt(na), toInt(nv)) )
* CHKERR( VecGetArray(self.vec, &vv) )
* try: # <<<<<<<<<<<<<<
@@ -19395,7 +20004,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
*/
/*try:*/ {
- /* "PETSc/petscvec.pxi":363
+ /* "PETSc/petscvec.pxi":364
* CHKERR( VecGetArray(self.vec, &vv) )
* try:
* if PyArray_NDIM(ary) == 0: # <<<<<<<<<<<<<<
@@ -19405,7 +20014,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_t_3 = ((PyArray_NDIM(__pyx_v_ary) == 0) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscvec.pxi":364
+ /* "PETSc/petscvec.pxi":365
* try:
* if PyArray_NDIM(ary) == 0:
* for i from 0 <= i < nv: # <<<<<<<<<<<<<<
@@ -19415,7 +20024,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_t_7 = __pyx_v_nv;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_7; __pyx_v_i++) {
- /* "PETSc/petscvec.pxi":365
+ /* "PETSc/petscvec.pxi":366
* if PyArray_NDIM(ary) == 0:
* for i from 0 <= i < nv:
* vv[i] = va[0] # <<<<<<<<<<<<<<
@@ -19425,7 +20034,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
(__pyx_v_vv[__pyx_v_i]) = (__pyx_v_va[0]);
}
- /* "PETSc/petscvec.pxi":363
+ /* "PETSc/petscvec.pxi":364
* CHKERR( VecGetArray(self.vec, &vv) )
* try:
* if PyArray_NDIM(ary) == 0: # <<<<<<<<<<<<<<
@@ -19435,7 +20044,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
goto __pyx_L9;
}
- /* "PETSc/petscvec.pxi":367
+ /* "PETSc/petscvec.pxi":368
* vv[i] = va[0]
* else:
* CHKERR( PetscMemcpy(vv, va, <size_t>nv*sizeof(PetscScalar)) ) # <<<<<<<<<<<<<<
@@ -19443,12 +20052,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
* CHKERR( VecRestoreArray(self.vec, &vv) )
*/
/*else*/ {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMemcpy(__pyx_v_vv, __pyx_v_va, (((size_t)__pyx_v_nv) * (sizeof(PetscScalar))))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 367, __pyx_L7_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMemcpy(__pyx_v_vv, __pyx_v_va, (((size_t)__pyx_v_nv) * (sizeof(PetscScalar))))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 368, __pyx_L7_error)
}
__pyx_L9:;
}
- /* "PETSc/petscvec.pxi":369
+ /* "PETSc/petscvec.pxi":370
* CHKERR( PetscMemcpy(vv, va, <size_t>nv*sizeof(PetscScalar)) )
* finally:
* CHKERR( VecRestoreArray(self.vec, &vv) ) # <<<<<<<<<<<<<<
@@ -19457,7 +20066,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArray(__pyx_v_self->vec, (&__pyx_v_vv))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 369, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArray(__pyx_v_self->vec, (&__pyx_v_vv))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 370, __pyx_L1_error)
goto __pyx_L8;
}
/*exception exit:*/{
@@ -19478,9 +20087,8 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__Pyx_XGOTREF(__pyx_t_15);
__pyx_t_2 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
{
- __pyx_t_16 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArray(__pyx_v_self->vec, (&__pyx_v_vv))); if (unlikely(__pyx_t_16 == -1)) __PYX_ERR(5, 369, __pyx_L13_error)
+ __pyx_t_16 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArray(__pyx_v_self->vec, (&__pyx_v_vv))); if (unlikely(__pyx_t_16 == ((int)-1))) __PYX_ERR(5, 370, __pyx_L13_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_13);
__Pyx_XGIVEREF(__pyx_t_14);
@@ -19495,7 +20103,6 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
goto __pyx_L1_error;
__pyx_L13_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_13);
__Pyx_XGIVEREF(__pyx_t_14);
@@ -19511,7 +20118,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_L8:;
}
- /* "PETSc/petscvec.pxi":370
+ /* "PETSc/petscvec.pxi":371
* finally:
* CHKERR( VecRestoreArray(self.vec, &vv) )
* return 0 # <<<<<<<<<<<<<<
@@ -19521,7 +20128,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":353
+ /* "PETSc/petscvec.pxi":354
* return asarray(vec_getbuffer_w(self))
*
* cdef inline int vec_setarray(Vec self, object o) except -1: # <<<<<<<<<<<<<<
@@ -19542,7 +20149,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_vec_setarray(struct PyPetscVec
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":372
+/* "PETSc/petscvec.pxi":373
* return 0
*
* cdef object vec_getitem(Vec self, object i): # <<<<<<<<<<<<<<
@@ -19569,7 +20176,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
__Pyx_RefNannySetupContext("vec_getitem", 0);
__Pyx_INCREF(__pyx_v_i);
- /* "PETSc/petscvec.pxi":373
+ /* "PETSc/petscvec.pxi":374
*
* cdef object vec_getitem(Vec self, object i):
* cdef PetscInt N=0 # <<<<<<<<<<<<<<
@@ -19578,7 +20185,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
*/
__pyx_v_N = 0;
- /* "PETSc/petscvec.pxi":374
+ /* "PETSc/petscvec.pxi":375
* cdef object vec_getitem(Vec self, object i):
* cdef PetscInt N=0
* if i is Ellipsis: # <<<<<<<<<<<<<<
@@ -19589,7 +20196,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":375
+ /* "PETSc/petscvec.pxi":376
* cdef PetscInt N=0
* if i is Ellipsis:
* return asarray(self) # <<<<<<<<<<<<<<
@@ -19597,13 +20204,13 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
* CHKERR( VecGetSize(self.vec, &N) )
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(((PyObject *)__pyx_v_self))); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 375, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(((PyObject *)__pyx_v_self))); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":374
+ /* "PETSc/petscvec.pxi":375
* cdef object vec_getitem(Vec self, object i):
* cdef PetscInt N=0
* if i is Ellipsis: # <<<<<<<<<<<<<<
@@ -19612,7 +20219,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
*/
}
- /* "PETSc/petscvec.pxi":376
+ /* "PETSc/petscvec.pxi":377
* if i is Ellipsis:
* return asarray(self)
* if isinstance(i, slice): # <<<<<<<<<<<<<<
@@ -19623,28 +20230,28 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":377
+ /* "PETSc/petscvec.pxi":378
* return asarray(self)
* if isinstance(i, slice):
* CHKERR( VecGetSize(self.vec, &N) ) # <<<<<<<<<<<<<<
* start, stop, stride = i.indices(toInt(N))
* i = arange(start, stop, stride)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(5, 377, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(5, 378, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":378
+ /* "PETSc/petscvec.pxi":379
* if isinstance(i, slice):
* CHKERR( VecGetSize(self.vec, &N) )
* start, stop, stride = i.indices(toInt(N)) # <<<<<<<<<<<<<<
* i = arange(start, stop, stride)
* return vecgetvalues(self.vec, i, None)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_i, __pyx_n_s_indices); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 378, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_i, __pyx_n_s_indices); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 378, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -19654,24 +20261,44 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
}
}
if (!__pyx_t_7) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 378, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 379, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_3);
} else {
- __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 378, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6);
- __pyx_t_6 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 378, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 379, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 379, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 379, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6);
+ __pyx_t_6 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 379, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
PyObject* sequence = __pyx_t_3;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -19679,9 +20306,9 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(5, 378, __pyx_L1_error)
+ __PYX_ERR(5, 379, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -19695,17 +20322,17 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 378, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 378, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 378, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 378, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_9 = Py_TYPE(__pyx_t_7)->tp_iternext;
@@ -19715,7 +20342,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_6 = __pyx_t_9(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 3) < 0) __PYX_ERR(5, 378, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 3) < 0) __PYX_ERR(5, 379, __pyx_L1_error)
__pyx_t_9 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -19723,7 +20350,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_9 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(5, 378, __pyx_L1_error)
+ __PYX_ERR(5, 379, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_start = __pyx_t_5;
@@ -19733,19 +20360,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
__pyx_v_stride = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscvec.pxi":379
+ /* "PETSc/petscvec.pxi":380
* CHKERR( VecGetSize(self.vec, &N) )
* start, stop, stride = i.indices(toInt(N))
* i = arange(start, stop, stride) # <<<<<<<<<<<<<<
* return vecgetvalues(self.vec, i, None)
*
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 379, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 380, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_i, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":376
+ /* "PETSc/petscvec.pxi":377
* if i is Ellipsis:
* return asarray(self)
* if isinstance(i, slice): # <<<<<<<<<<<<<<
@@ -19754,7 +20381,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
*/
}
- /* "PETSc/petscvec.pxi":380
+ /* "PETSc/petscvec.pxi":381
* start, stop, stride = i.indices(toInt(N))
* i = arange(start, stop, stride)
* return vecgetvalues(self.vec, i, None) # <<<<<<<<<<<<<<
@@ -19762,13 +20389,13 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
* cdef int vec_setitem(Vec self, object i, object v) except -1:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_vecgetvalues(__pyx_v_self->vec, __pyx_v_i, Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 380, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_vecgetvalues(__pyx_v_self->vec, __pyx_v_i, Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 381, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":372
+ /* "PETSc/petscvec.pxi":373
* return 0
*
* cdef object vec_getitem(Vec self, object i): # <<<<<<<<<<<<<<
@@ -19795,7 +20422,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_vec_getitem(struct PyPetscVecObject *_
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":382
+/* "PETSc/petscvec.pxi":383
* return vecgetvalues(self.vec, i, None)
*
* cdef int vec_setitem(Vec self, object i, object v) except -1: # <<<<<<<<<<<<<<
@@ -19822,7 +20449,7 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__Pyx_RefNannySetupContext("vec_setitem", 0);
__Pyx_INCREF(__pyx_v_i);
- /* "PETSc/petscvec.pxi":383
+ /* "PETSc/petscvec.pxi":384
*
* cdef int vec_setitem(Vec self, object i, object v) except -1:
* cdef PetscInt N=0 # <<<<<<<<<<<<<<
@@ -19831,7 +20458,7 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
*/
__pyx_v_N = 0;
- /* "PETSc/petscvec.pxi":384
+ /* "PETSc/petscvec.pxi":385
* cdef int vec_setitem(Vec self, object i, object v) except -1:
* cdef PetscInt N=0
* if i is Ellipsis: # <<<<<<<<<<<<<<
@@ -19842,18 +20469,18 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscvec.pxi":385
+ /* "PETSc/petscvec.pxi":386
* cdef PetscInt N=0
* if i is Ellipsis:
* return vec_setarray(self, v) # <<<<<<<<<<<<<<
* if isinstance(i, slice):
* CHKERR( VecGetSize(self.vec, &N) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_vec_setarray(__pyx_v_self, __pyx_v_v); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 385, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_vec_setarray(__pyx_v_self, __pyx_v_v); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 386, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":384
+ /* "PETSc/petscvec.pxi":385
* cdef int vec_setitem(Vec self, object i, object v) except -1:
* cdef PetscInt N=0
* if i is Ellipsis: # <<<<<<<<<<<<<<
@@ -19862,7 +20489,7 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
*/
}
- /* "PETSc/petscvec.pxi":386
+ /* "PETSc/petscvec.pxi":387
* if i is Ellipsis:
* return vec_setarray(self, v)
* if isinstance(i, slice): # <<<<<<<<<<<<<<
@@ -19873,28 +20500,28 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":387
+ /* "PETSc/petscvec.pxi":388
* return vec_setarray(self, v)
* if isinstance(i, slice):
* CHKERR( VecGetSize(self.vec, &N) ) # <<<<<<<<<<<<<<
* start, stop, stride = i.indices(toInt(N))
* i = arange(start, stop, stride)
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 387, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 388, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":388
+ /* "PETSc/petscvec.pxi":389
* if isinstance(i, slice):
* CHKERR( VecGetSize(self.vec, &N) )
* start, stop, stride = i.indices(toInt(N)) # <<<<<<<<<<<<<<
* i = arange(start, stop, stride)
* vecsetvalues(self.vec, i, v, None, 0, 0)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_i, __pyx_n_s_indices); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 388, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_i, __pyx_n_s_indices); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 388, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -19904,24 +20531,44 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
}
}
if (!__pyx_t_7) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 388, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 389, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 388, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6);
- __pyx_t_6 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 388, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 389, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_7, __pyx_t_6};
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 389, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 389, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6);
+ __pyx_t_6 = 0;
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 389, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -19929,9 +20576,9 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(5, 388, __pyx_L1_error)
+ __PYX_ERR(5, 389, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -19945,17 +20592,17 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 388, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 388, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(5, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 388, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(5, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 388, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(5, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_9 = Py_TYPE(__pyx_t_7)->tp_iternext;
@@ -19965,7 +20612,7 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_6 = __pyx_t_9(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 3) < 0) __PYX_ERR(5, 388, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 3) < 0) __PYX_ERR(5, 389, __pyx_L1_error)
__pyx_t_9 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -19973,7 +20620,7 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_9 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(5, 388, __pyx_L1_error)
+ __PYX_ERR(5, 389, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_start = __pyx_t_5;
@@ -19983,19 +20630,19 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__pyx_v_stride = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscvec.pxi":389
+ /* "PETSc/petscvec.pxi":390
* CHKERR( VecGetSize(self.vec, &N) )
* start, stop, stride = i.indices(toInt(N))
* i = arange(start, stop, stride) # <<<<<<<<<<<<<<
* vecsetvalues(self.vec, i, v, None, 0, 0)
* return 0
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 389, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 390, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_i, __pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/petscvec.pxi":386
+ /* "PETSc/petscvec.pxi":387
* if i is Ellipsis:
* return vec_setarray(self, v)
* if isinstance(i, slice): # <<<<<<<<<<<<<<
@@ -20004,16 +20651,16 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
*/
}
- /* "PETSc/petscvec.pxi":390
+ /* "PETSc/petscvec.pxi":391
* start, stop, stride = i.indices(toInt(N))
* i = arange(start, stop, stride)
* vecsetvalues(self.vec, i, v, None, 0, 0) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_i, __pyx_v_v, Py_None, 0, 0); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 390, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_i, __pyx_v_v, Py_None, 0, 0); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 391, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":391
+ /* "PETSc/petscvec.pxi":392
* i = arange(start, stop, stride)
* vecsetvalues(self.vec, i, v, None, 0, 0)
* return 0 # <<<<<<<<<<<<<<
@@ -20023,7 +20670,7 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":382
+ /* "PETSc/petscvec.pxi":383
* return vecgetvalues(self.vec, i, None)
*
* cdef int vec_setitem(Vec self, object i, object v) except -1: # <<<<<<<<<<<<<<
@@ -20049,7 +20696,7 @@ static int __pyx_f_8petsc4py_5PETSc_vec_setitem(struct PyPetscVecObject *__pyx_v
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":403
+/* "PETSc/petscvec.pxi":404
* # --------------------------------------------------------------------
*
* cdef int Vec_AcquireArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1: # <<<<<<<<<<<<<<
@@ -20062,7 +20709,7 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(Vec __pyx_v_v, PetscScalar
int __pyx_t_1;
int __pyx_t_2;
- /* "PETSc/petscvec.pxi":404
+ /* "PETSc/petscvec.pxi":405
*
* cdef int Vec_AcquireArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1:
* if ro: CHKERR( VecGetArrayRead(v, <const_PetscScalar**>a) ) # <<<<<<<<<<<<<<
@@ -20071,11 +20718,11 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(Vec __pyx_v_v, PetscScalar
*/
__pyx_t_1 = (__pyx_v_ro != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetArrayRead(__pyx_v_v, ((const PetscScalar **)__pyx_v_a))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 404, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetArrayRead(__pyx_v_v, ((const PetscScalar **)__pyx_v_a))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 405, __pyx_L1_error)
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":405
+ /* "PETSc/petscvec.pxi":406
* cdef int Vec_AcquireArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1:
* if ro: CHKERR( VecGetArrayRead(v, <const_PetscScalar**>a) )
* else: CHKERR( VecGetArray(v, a) ) # <<<<<<<<<<<<<<
@@ -20083,11 +20730,11 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(Vec __pyx_v_v, PetscScalar
*
*/
/*else*/ {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetArray(__pyx_v_v, __pyx_v_a)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 405, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetArray(__pyx_v_v, __pyx_v_a)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 406, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/petscvec.pxi":406
+ /* "PETSc/petscvec.pxi":407
* if ro: CHKERR( VecGetArrayRead(v, <const_PetscScalar**>a) )
* else: CHKERR( VecGetArray(v, a) )
* return 0 # <<<<<<<<<<<<<<
@@ -20097,7 +20744,7 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(Vec __pyx_v_v, PetscScalar
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":403
+ /* "PETSc/petscvec.pxi":404
* # --------------------------------------------------------------------
*
* cdef int Vec_AcquireArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1: # <<<<<<<<<<<<<<
@@ -20109,11 +20756,11 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(Vec __pyx_v_v, PetscScalar
__pyx_L1_error:;
{
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_AddTraceback("petsc4py.PETSc.Vec_AcquireArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
}
__pyx_r = -1;
@@ -20121,7 +20768,7 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(Vec __pyx_v_v, PetscScalar
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":408
+/* "PETSc/petscvec.pxi":409
* return 0
*
* cdef int Vec_ReleaseArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1: # <<<<<<<<<<<<<<
@@ -20134,7 +20781,7 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(Vec __pyx_v_v, PetscScalar
int __pyx_t_1;
int __pyx_t_2;
- /* "PETSc/petscvec.pxi":409
+ /* "PETSc/petscvec.pxi":410
*
* cdef int Vec_ReleaseArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1:
* if ro: CHKERR( VecRestoreArrayRead(v, <const_PetscScalar**>a) ) # <<<<<<<<<<<<<<
@@ -20143,11 +20790,11 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(Vec __pyx_v_v, PetscScalar
*/
__pyx_t_1 = (__pyx_v_ro != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArrayRead(__pyx_v_v, ((const PetscScalar **)__pyx_v_a))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 409, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArrayRead(__pyx_v_v, ((const PetscScalar **)__pyx_v_a))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 410, __pyx_L1_error)
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":410
+ /* "PETSc/petscvec.pxi":411
* cdef int Vec_ReleaseArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1:
* if ro: CHKERR( VecRestoreArrayRead(v, <const_PetscScalar**>a) )
* else: CHKERR( VecRestoreArray(v, a) ) # <<<<<<<<<<<<<<
@@ -20155,11 +20802,11 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(Vec __pyx_v_v, PetscScalar
*
*/
/*else*/ {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArray(__pyx_v_v, __pyx_v_a)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 410, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreArray(__pyx_v_v, __pyx_v_a)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 411, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/petscvec.pxi":411
+ /* "PETSc/petscvec.pxi":412
* if ro: CHKERR( VecRestoreArrayRead(v, <const_PetscScalar**>a) )
* else: CHKERR( VecRestoreArray(v, a) )
* return 0 # <<<<<<<<<<<<<<
@@ -20169,7 +20816,7 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(Vec __pyx_v_v, PetscScalar
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":408
+ /* "PETSc/petscvec.pxi":409
* return 0
*
* cdef int Vec_ReleaseArray(PetscVec v, PetscScalar *a[], int ro) nogil except -1: # <<<<<<<<<<<<<<
@@ -20181,11 +20828,11 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(Vec __pyx_v_v, PetscScalar
__pyx_L1_error:;
{
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_AddTraceback("petsc4py.PETSc.Vec_ReleaseArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
}
__pyx_r = -1;
@@ -20193,10 +20840,10 @@ static int __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(Vec __pyx_v_v, PetscScalar
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":421
+/* "PETSc/petscvec.pxi":422
* cdef bint hasarray
*
- * def __cinit__(self, Vec vec not None, bint readonly=0): # <<<<<<<<<<<<<<
+ * def __cinit__(self, Vec vec, bint readonly=0): # <<<<<<<<<<<<<<
* cdef PetscVec v = vec.vec
* CHKERR( PetscINCREF(<PetscObject*>&v) )
*/
@@ -20217,7 +20864,9 @@ static int __pyx_pw_8petsc4py_5PETSc_11_Vec_buffer_1__cinit__(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -20226,6 +20875,7 @@ static int __pyx_pw_8petsc4py_5PETSc_11_Vec_buffer_1__cinit__(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_readonly);
@@ -20233,11 +20883,12 @@ static int __pyx_pw_8petsc4py_5PETSc_11_Vec_buffer_1__cinit__(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__cinit__") < 0)) __PYX_ERR(5, 421, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__cinit__") < 0)) __PYX_ERR(5, 422, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -20245,20 +20896,20 @@ static int __pyx_pw_8petsc4py_5PETSc_11_Vec_buffer_1__cinit__(PyObject *__pyx_v_
}
__pyx_v_vec = ((struct PyPetscVecObject *)values[0]);
if (values[1]) {
- __pyx_v_readonly = __Pyx_PyObject_IsTrue(values[1]); if (unlikely((__pyx_v_readonly == (int)-1) && PyErr_Occurred())) __PYX_ERR(5, 421, __pyx_L3_error)
+ __pyx_v_readonly = __Pyx_PyObject_IsTrue(values[1]); if (unlikely((__pyx_v_readonly == (int)-1) && PyErr_Occurred())) __PYX_ERR(5, 422, __pyx_L3_error)
} else {
__pyx_v_readonly = ((int)0);
}
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(5, 421, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(5, 422, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc._Vec_buffer.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(5, 421, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(5, 422, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(((struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self), __pyx_v_vec, __pyx_v_readonly);
/* function exit code */
@@ -20279,9 +20930,9 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
int __pyx_t_3;
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/petscvec.pxi":422
+ /* "PETSc/petscvec.pxi":423
*
- * def __cinit__(self, Vec vec not None, bint readonly=0):
+ * def __cinit__(self, Vec vec, bint readonly=0):
* cdef PetscVec v = vec.vec # <<<<<<<<<<<<<<
* CHKERR( PetscINCREF(<PetscObject*>&v) )
* self.vec = v
@@ -20289,16 +20940,16 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
__pyx_t_1 = __pyx_v_vec->vec;
__pyx_v_v = __pyx_t_1;
- /* "PETSc/petscvec.pxi":423
- * def __cinit__(self, Vec vec not None, bint readonly=0):
+ /* "PETSc/petscvec.pxi":424
+ * def __cinit__(self, Vec vec, bint readonly=0):
* cdef PetscVec v = vec.vec
* CHKERR( PetscINCREF(<PetscObject*>&v) ) # <<<<<<<<<<<<<<
* self.vec = v
* self.size = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_v)))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 423, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_v)))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 424, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":424
+ /* "PETSc/petscvec.pxi":425
* cdef PetscVec v = vec.vec
* CHKERR( PetscINCREF(<PetscObject*>&v) )
* self.vec = v # <<<<<<<<<<<<<<
@@ -20307,7 +20958,7 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
*/
__pyx_v_self->vec = __pyx_v_v;
- /* "PETSc/petscvec.pxi":425
+ /* "PETSc/petscvec.pxi":426
* CHKERR( PetscINCREF(<PetscObject*>&v) )
* self.vec = v
* self.size = 0 # <<<<<<<<<<<<<<
@@ -20316,7 +20967,7 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
*/
__pyx_v_self->size = 0;
- /* "PETSc/petscvec.pxi":426
+ /* "PETSc/petscvec.pxi":427
* self.vec = v
* self.size = 0
* self.data = NULL # <<<<<<<<<<<<<<
@@ -20325,7 +20976,7 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
*/
__pyx_v_self->data = NULL;
- /* "PETSc/petscvec.pxi":427
+ /* "PETSc/petscvec.pxi":428
* self.size = 0
* self.data = NULL
* self.readonly = 1 if readonly else 0 # <<<<<<<<<<<<<<
@@ -20339,7 +20990,7 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
}
__pyx_v_self->readonly = __pyx_t_3;
- /* "PETSc/petscvec.pxi":428
+ /* "PETSc/petscvec.pxi":429
* self.data = NULL
* self.readonly = 1 if readonly else 0
* self.hasarray = 0 # <<<<<<<<<<<<<<
@@ -20348,10 +20999,10 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
*/
__pyx_v_self->hasarray = 0;
- /* "PETSc/petscvec.pxi":421
+ /* "PETSc/petscvec.pxi":422
* cdef bint hasarray
*
- * def __cinit__(self, Vec vec not None, bint readonly=0): # <<<<<<<<<<<<<<
+ * def __cinit__(self, Vec vec, bint readonly=0): # <<<<<<<<<<<<<<
* cdef PetscVec v = vec.vec
* CHKERR( PetscINCREF(<PetscObject*>&v) )
*/
@@ -20367,7 +21018,7 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer___cinit__(struct __pyx_obj_8p
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":430
+/* "PETSc/petscvec.pxi":431
* self.hasarray = 0
*
* def __dealloc__(self): # <<<<<<<<<<<<<<
@@ -20393,7 +21044,7 @@ static void __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_2__dealloc__(struct __pyx_ob
int __pyx_t_3;
__Pyx_RefNannySetupContext("__dealloc__", 0);
- /* "PETSc/petscvec.pxi":431
+ /* "PETSc/petscvec.pxi":432
*
* def __dealloc__(self):
* if self.hasarray and self.vec != NULL: # <<<<<<<<<<<<<<
@@ -20411,16 +21062,16 @@ static void __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_2__dealloc__(struct __pyx_ob
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":432
+ /* "PETSc/petscvec.pxi":433
* def __dealloc__(self):
* if self.hasarray and self.vec != NULL:
* Vec_ReleaseArray(self.vec, &self.data, self.readonly) # <<<<<<<<<<<<<<
* CHKERR( VecDestroy(&self.vec) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(__pyx_v_self->vec, (&__pyx_v_self->data), __pyx_v_self->readonly); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 432, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(__pyx_v_self->vec, (&__pyx_v_self->data), __pyx_v_self->readonly); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 433, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":431
+ /* "PETSc/petscvec.pxi":432
*
* def __dealloc__(self):
* if self.hasarray and self.vec != NULL: # <<<<<<<<<<<<<<
@@ -20429,16 +21080,16 @@ static void __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_2__dealloc__(struct __pyx_ob
*/
}
- /* "PETSc/petscvec.pxi":433
+ /* "PETSc/petscvec.pxi":434
* if self.hasarray and self.vec != NULL:
* Vec_ReleaseArray(self.vec, &self.data, self.readonly)
* CHKERR( VecDestroy(&self.vec) ) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_self->vec))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 433, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_self->vec))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 434, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":430
+ /* "PETSc/petscvec.pxi":431
* self.hasarray = 0
*
* def __dealloc__(self): # <<<<<<<<<<<<<<
@@ -20449,12 +21100,12 @@ static void __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_2__dealloc__(struct __pyx_ob
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc._Vec_buffer.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc._Vec_buffer.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
-/* "PETSc/petscvec.pxi":437
+/* "PETSc/petscvec.pxi":438
* #
*
* cdef int acquire(self) nogil except -1: # <<<<<<<<<<<<<<
@@ -20468,7 +21119,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire(struct __pyx_obj_8pets
int __pyx_t_2;
int __pyx_t_3;
- /* "PETSc/petscvec.pxi":438
+ /* "PETSc/petscvec.pxi":439
*
* cdef int acquire(self) nogil except -1:
* if not self.hasarray and self.vec != NULL: # <<<<<<<<<<<<<<
@@ -20486,25 +21137,25 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire(struct __pyx_obj_8pets
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":439
+ /* "PETSc/petscvec.pxi":440
* cdef int acquire(self) nogil except -1:
* if not self.hasarray and self.vec != NULL:
* CHKERR( VecGetLocalSize(self.vec, &self.size) ) # <<<<<<<<<<<<<<
* Vec_AcquireArray(self.vec, &self.data, self.readonly)
* self.hasarray = 1
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_self->size))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 439, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_self->size))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 440, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":440
+ /* "PETSc/petscvec.pxi":441
* if not self.hasarray and self.vec != NULL:
* CHKERR( VecGetLocalSize(self.vec, &self.size) )
* Vec_AcquireArray(self.vec, &self.data, self.readonly) # <<<<<<<<<<<<<<
* self.hasarray = 1
* return 0
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(__pyx_v_self->vec, (&__pyx_v_self->data), __pyx_v_self->readonly); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 440, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_AcquireArray(__pyx_v_self->vec, (&__pyx_v_self->data), __pyx_v_self->readonly); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 441, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":441
+ /* "PETSc/petscvec.pxi":442
* CHKERR( VecGetLocalSize(self.vec, &self.size) )
* Vec_AcquireArray(self.vec, &self.data, self.readonly)
* self.hasarray = 1 # <<<<<<<<<<<<<<
@@ -20513,7 +21164,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire(struct __pyx_obj_8pets
*/
__pyx_v_self->hasarray = 1;
- /* "PETSc/petscvec.pxi":438
+ /* "PETSc/petscvec.pxi":439
*
* cdef int acquire(self) nogil except -1:
* if not self.hasarray and self.vec != NULL: # <<<<<<<<<<<<<<
@@ -20522,7 +21173,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire(struct __pyx_obj_8pets
*/
}
- /* "PETSc/petscvec.pxi":442
+ /* "PETSc/petscvec.pxi":443
* Vec_AcquireArray(self.vec, &self.data, self.readonly)
* self.hasarray = 1
* return 0 # <<<<<<<<<<<<<<
@@ -20532,7 +21183,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire(struct __pyx_obj_8pets
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":437
+ /* "PETSc/petscvec.pxi":438
* #
*
* cdef int acquire(self) nogil except -1: # <<<<<<<<<<<<<<
@@ -20544,11 +21195,11 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire(struct __pyx_obj_8pets
__pyx_L1_error:;
{
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_AddTraceback("petsc4py.PETSc._Vec_buffer.acquire", __pyx_clineno, __pyx_lineno, __pyx_filename);
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
}
__pyx_r = -1;
@@ -20556,7 +21207,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire(struct __pyx_obj_8pets
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":444
+/* "PETSc/petscvec.pxi":445
* return 0
*
* cdef int release(self) nogil except -1: # <<<<<<<<<<<<<<
@@ -20570,7 +21221,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
int __pyx_t_2;
int __pyx_t_3;
- /* "PETSc/petscvec.pxi":445
+ /* "PETSc/petscvec.pxi":446
*
* cdef int release(self) nogil except -1:
* if self.hasarray and self.vec != NULL: # <<<<<<<<<<<<<<
@@ -20588,7 +21239,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":446
+ /* "PETSc/petscvec.pxi":447
* cdef int release(self) nogil except -1:
* if self.hasarray and self.vec != NULL:
* self.size = 0 # <<<<<<<<<<<<<<
@@ -20597,16 +21248,16 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
*/
__pyx_v_self->size = 0;
- /* "PETSc/petscvec.pxi":447
+ /* "PETSc/petscvec.pxi":448
* if self.hasarray and self.vec != NULL:
* self.size = 0
* Vec_ReleaseArray(self.vec, &self.data, self.readonly) # <<<<<<<<<<<<<<
* self.hasarray = 0
* return 0
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(__pyx_v_self->vec, (&__pyx_v_self->data), __pyx_v_self->readonly); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(5, 447, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_ReleaseArray(__pyx_v_self->vec, (&__pyx_v_self->data), __pyx_v_self->readonly); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(5, 448, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":448
+ /* "PETSc/petscvec.pxi":449
* self.size = 0
* Vec_ReleaseArray(self.vec, &self.data, self.readonly)
* self.hasarray = 0 # <<<<<<<<<<<<<<
@@ -20615,7 +21266,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
*/
__pyx_v_self->hasarray = 0;
- /* "PETSc/petscvec.pxi":445
+ /* "PETSc/petscvec.pxi":446
*
* cdef int release(self) nogil except -1:
* if self.hasarray and self.vec != NULL: # <<<<<<<<<<<<<<
@@ -20624,7 +21275,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
*/
}
- /* "PETSc/petscvec.pxi":449
+ /* "PETSc/petscvec.pxi":450
* Vec_ReleaseArray(self.vec, &self.data, self.readonly)
* self.hasarray = 0
* return 0 # <<<<<<<<<<<<<<
@@ -20634,7 +21285,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":444
+ /* "PETSc/petscvec.pxi":445
* return 0
*
* cdef int release(self) nogil except -1: # <<<<<<<<<<<<<<
@@ -20646,11 +21297,11 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
__pyx_L1_error:;
{
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_AddTraceback("petsc4py.PETSc._Vec_buffer.release", __pyx_clineno, __pyx_lineno, __pyx_filename);
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
}
__pyx_r = -1;
@@ -20658,7 +21309,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_release(struct __pyx_obj_8pets
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":453
+/* "PETSc/petscvec.pxi":454
* # buffer interface (PEP 3118)
*
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1: # <<<<<<<<<<<<<<
@@ -20672,25 +21323,25 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquirebuffer(struct __pyx_obj
int __pyx_t_1;
__Pyx_RefNannySetupContext("acquirebuffer", 0);
- /* "PETSc/petscvec.pxi":454
+ /* "PETSc/petscvec.pxi":455
*
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1:
* self.acquire() # <<<<<<<<<<<<<<
* PyPetscBuffer_FillInfo(view, <void*>self.data, self.size,
* c's', self.readonly, flags)
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 454, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 455, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":455
+ /* "PETSc/petscvec.pxi":456
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1:
* self.acquire()
* PyPetscBuffer_FillInfo(view, <void*>self.data, self.size, # <<<<<<<<<<<<<<
* c's', self.readonly, flags)
* view.obj = self
*/
- __pyx_t_1 = PyPetscBuffer_FillInfo(__pyx_v_view, ((void *)__pyx_v_self->data), __pyx_v_self->size, 's', __pyx_v_self->readonly, __pyx_v_flags); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 455, __pyx_L1_error)
+ __pyx_t_1 = PyPetscBuffer_FillInfo(__pyx_v_view, ((void *)__pyx_v_self->data), __pyx_v_self->size, 's', __pyx_v_self->readonly, __pyx_v_flags); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 456, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":457
+ /* "PETSc/petscvec.pxi":458
* PyPetscBuffer_FillInfo(view, <void*>self.data, self.size,
* c's', self.readonly, flags)
* view.obj = self # <<<<<<<<<<<<<<
@@ -20703,7 +21354,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquirebuffer(struct __pyx_obj
__Pyx_DECREF(__pyx_v_view->obj);
__pyx_v_view->obj = ((PyObject *)__pyx_v_self);
- /* "PETSc/petscvec.pxi":458
+ /* "PETSc/petscvec.pxi":459
* c's', self.readonly, flags)
* view.obj = self
* return 0 # <<<<<<<<<<<<<<
@@ -20713,7 +21364,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquirebuffer(struct __pyx_obj
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":453
+ /* "PETSc/petscvec.pxi":454
* # buffer interface (PEP 3118)
*
* cdef int acquirebuffer(self, Py_buffer *view, int flags) except -1: # <<<<<<<<<<<<<<
@@ -20730,7 +21381,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquirebuffer(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":460
+/* "PETSc/petscvec.pxi":461
* return 0
*
* cdef int releasebuffer(self, Py_buffer *view) except -1: # <<<<<<<<<<<<<<
@@ -20744,7 +21395,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_releasebuffer(struct __pyx_obj
int __pyx_t_1;
__Pyx_RefNannySetupContext("releasebuffer", 0);
- /* "PETSc/petscvec.pxi":461
+ /* "PETSc/petscvec.pxi":462
*
* cdef int releasebuffer(self, Py_buffer *view) except -1:
* PyPetscBuffer_Release(view) # <<<<<<<<<<<<<<
@@ -20753,16 +21404,16 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_releasebuffer(struct __pyx_obj
*/
PyPetscBuffer_Release(__pyx_v_view);
- /* "PETSc/petscvec.pxi":462
+ /* "PETSc/petscvec.pxi":463
* cdef int releasebuffer(self, Py_buffer *view) except -1:
* PyPetscBuffer_Release(view)
* self.release() # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 462, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 463, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":463
+ /* "PETSc/petscvec.pxi":464
* PyPetscBuffer_Release(view)
* self.release()
* return 0 # <<<<<<<<<<<<<<
@@ -20772,7 +21423,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_releasebuffer(struct __pyx_obj
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":460
+ /* "PETSc/petscvec.pxi":461
* return 0
*
* cdef int releasebuffer(self, Py_buffer *view) except -1: # <<<<<<<<<<<<<<
@@ -20789,7 +21440,7 @@ static int __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_releasebuffer(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":465
+/* "PETSc/petscvec.pxi":466
* return 0
*
* def __getbuffer__(self, Py_buffer *view, int flags): # <<<<<<<<<<<<<<
@@ -20820,16 +21471,16 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_4__getbuffer__(struct __pyx_o
__Pyx_GIVEREF(__pyx_v_view->obj);
}
- /* "PETSc/petscvec.pxi":466
+ /* "PETSc/petscvec.pxi":467
*
* def __getbuffer__(self, Py_buffer *view, int flags):
* self.acquirebuffer(view, flags) # <<<<<<<<<<<<<<
*
* def __releasebuffer__(self, Py_buffer *view):
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquirebuffer(__pyx_v_self, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 466, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquirebuffer(__pyx_v_self, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 467, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":465
+ /* "PETSc/petscvec.pxi":466
* return 0
*
* def __getbuffer__(self, Py_buffer *view, int flags): # <<<<<<<<<<<<<<
@@ -20858,7 +21509,7 @@ static int __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_4__getbuffer__(struct __pyx_o
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":468
+/* "PETSc/petscvec.pxi":469
* self.acquirebuffer(view, flags)
*
* def __releasebuffer__(self, Py_buffer *view): # <<<<<<<<<<<<<<
@@ -20882,16 +21533,16 @@ static void __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_6__releasebuffer__(struct __
int __pyx_t_1;
__Pyx_RefNannySetupContext("__releasebuffer__", 0);
- /* "PETSc/petscvec.pxi":469
+ /* "PETSc/petscvec.pxi":470
*
* def __releasebuffer__(self, Py_buffer *view):
* self.releasebuffer(view) # <<<<<<<<<<<<<<
*
* # 'with' statement (PEP 343)
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->releasebuffer(__pyx_v_self, __pyx_v_view); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 469, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->releasebuffer(__pyx_v_self, __pyx_v_view); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 470, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":468
+ /* "PETSc/petscvec.pxi":469
* self.acquirebuffer(view, flags)
*
* def __releasebuffer__(self, Py_buffer *view): # <<<<<<<<<<<<<<
@@ -20902,12 +21553,12 @@ static void __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_6__releasebuffer__(struct __
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc._Vec_buffer.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc._Vec_buffer.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
-/* "PETSc/petscvec.pxi":473
+/* "PETSc/petscvec.pxi":474
* # 'with' statement (PEP 343)
*
* cdef object enter(self): # <<<<<<<<<<<<<<
@@ -20922,16 +21573,16 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_enter(struct __pyx_obj_8
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("enter", 0);
- /* "PETSc/petscvec.pxi":474
+ /* "PETSc/petscvec.pxi":475
*
* cdef object enter(self):
* self.acquire() # <<<<<<<<<<<<<<
* return asarray(self)
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 474, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 475, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":475
+ /* "PETSc/petscvec.pxi":476
* cdef object enter(self):
* self.acquire()
* return asarray(self) # <<<<<<<<<<<<<<
@@ -20939,13 +21590,13 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_enter(struct __pyx_obj_8
* cdef object exit(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(((PyObject *)__pyx_v_self))); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 475, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_asarray(((PyObject *)__pyx_v_self))); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 476, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":473
+ /* "PETSc/petscvec.pxi":474
* # 'with' statement (PEP 343)
*
* cdef object enter(self): # <<<<<<<<<<<<<<
@@ -20964,7 +21615,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_enter(struct __pyx_obj_8
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":477
+/* "PETSc/petscvec.pxi":478
* return asarray(self)
*
* cdef object exit(self): # <<<<<<<<<<<<<<
@@ -20978,16 +21629,16 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_exit(struct __pyx_obj_8p
int __pyx_t_1;
__Pyx_RefNannySetupContext("exit", 0);
- /* "PETSc/petscvec.pxi":478
+ /* "PETSc/petscvec.pxi":479
*
* cdef object exit(self):
* self.release() # <<<<<<<<<<<<<<
* return None
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(5, 478, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(5, 479, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":479
+ /* "PETSc/petscvec.pxi":480
* cdef object exit(self):
* self.release()
* return None # <<<<<<<<<<<<<<
@@ -20999,7 +21650,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_exit(struct __pyx_obj_8p
__pyx_r = Py_None;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":477
+ /* "PETSc/petscvec.pxi":478
* return asarray(self)
*
* cdef object exit(self): # <<<<<<<<<<<<<<
@@ -21017,7 +21668,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_exit(struct __pyx_obj_8p
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":481
+/* "PETSc/petscvec.pxi":482
* return None
*
* def __enter__(self): # <<<<<<<<<<<<<<
@@ -21048,7 +21699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_8__enter__(struct __pyx
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__enter__", 0);
- /* "PETSc/petscvec.pxi":482
+ /* "PETSc/petscvec.pxi":483
*
* def __enter__(self):
* return self.enter() # <<<<<<<<<<<<<<
@@ -21056,13 +21707,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_8__enter__(struct __pyx
* def __exit__(self, *exc):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->enter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 482, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->enter(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 483, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":481
+ /* "PETSc/petscvec.pxi":482
* return None
*
* def __enter__(self): # <<<<<<<<<<<<<<
@@ -21081,7 +21732,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_8__enter__(struct __pyx
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":484
+/* "PETSc/petscvec.pxi":485
* return self.enter()
*
* def __exit__(self, *exc): # <<<<<<<<<<<<<<
@@ -21114,7 +21765,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_10__exit__(struct __pyx
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__exit__", 0);
- /* "PETSc/petscvec.pxi":485
+ /* "PETSc/petscvec.pxi":486
*
* def __exit__(self, *exc):
* return self.exit() # <<<<<<<<<<<<<<
@@ -21122,13 +21773,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_10__exit__(struct __pyx
* # buffer interface (legacy)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->exit(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 485, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->exit(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 486, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":484
+ /* "PETSc/petscvec.pxi":485
* return self.enter()
*
* def __exit__(self, *exc): # <<<<<<<<<<<<<<
@@ -21147,7 +21798,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_10__exit__(struct __pyx
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":489
+/* "PETSc/petscvec.pxi":490
* # buffer interface (legacy)
*
* cdef Py_ssize_t getbuffer(self, void **p) except -1: # <<<<<<<<<<<<<<
@@ -21164,7 +21815,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
PetscInt __pyx_t_3;
__Pyx_RefNannySetupContext("getbuffer", 0);
- /* "PETSc/petscvec.pxi":490
+ /* "PETSc/petscvec.pxi":491
*
* cdef Py_ssize_t getbuffer(self, void **p) except -1:
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -21173,7 +21824,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
*/
__pyx_v_n = 0;
- /* "PETSc/petscvec.pxi":491
+ /* "PETSc/petscvec.pxi":492
* cdef Py_ssize_t getbuffer(self, void **p) except -1:
* cdef PetscInt n = 0
* if p != NULL: # <<<<<<<<<<<<<<
@@ -21183,16 +21834,16 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
__pyx_t_1 = ((__pyx_v_p != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":492
+ /* "PETSc/petscvec.pxi":493
* cdef PetscInt n = 0
* if p != NULL:
* self.acquire() # <<<<<<<<<<<<<<
* p[0] = <void*>self.data
* n = self.size
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 492, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 493, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":493
+ /* "PETSc/petscvec.pxi":494
* if p != NULL:
* self.acquire()
* p[0] = <void*>self.data # <<<<<<<<<<<<<<
@@ -21201,7 +21852,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
*/
(__pyx_v_p[0]) = ((void *)__pyx_v_self->data);
- /* "PETSc/petscvec.pxi":494
+ /* "PETSc/petscvec.pxi":495
* self.acquire()
* p[0] = <void*>self.data
* n = self.size # <<<<<<<<<<<<<<
@@ -21211,7 +21862,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
__pyx_t_3 = __pyx_v_self->size;
__pyx_v_n = __pyx_t_3;
- /* "PETSc/petscvec.pxi":491
+ /* "PETSc/petscvec.pxi":492
* cdef Py_ssize_t getbuffer(self, void **p) except -1:
* cdef PetscInt n = 0
* if p != NULL: # <<<<<<<<<<<<<<
@@ -21221,7 +21872,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
goto __pyx_L3;
}
- /* "PETSc/petscvec.pxi":495
+ /* "PETSc/petscvec.pxi":496
* p[0] = <void*>self.data
* n = self.size
* elif self.vec != NULL: # <<<<<<<<<<<<<<
@@ -21231,16 +21882,16 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
__pyx_t_1 = ((__pyx_v_self->vec != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":496
+ /* "PETSc/petscvec.pxi":497
* n = self.size
* elif self.vec != NULL:
* CHKERR( VecGetLocalSize(self.vec, &n) ) # <<<<<<<<<<<<<<
* return <Py_ssize_t>(<size_t>n*sizeof(PetscScalar))
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 496, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 497, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":495
+ /* "PETSc/petscvec.pxi":496
* p[0] = <void*>self.data
* n = self.size
* elif self.vec != NULL: # <<<<<<<<<<<<<<
@@ -21250,7 +21901,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
}
__pyx_L3:;
- /* "PETSc/petscvec.pxi":497
+ /* "PETSc/petscvec.pxi":498
* elif self.vec != NULL:
* CHKERR( VecGetLocalSize(self.vec, &n) )
* return <Py_ssize_t>(<size_t>n*sizeof(PetscScalar)) # <<<<<<<<<<<<<<
@@ -21260,7 +21911,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
__pyx_r = ((Py_ssize_t)(((size_t)__pyx_v_n) * (sizeof(PetscScalar))));
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":489
+ /* "PETSc/petscvec.pxi":490
* # buffer interface (legacy)
*
* cdef Py_ssize_t getbuffer(self, void **p) except -1: # <<<<<<<<<<<<<<
@@ -21277,7 +21928,7 @@ static Py_ssize_t __pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer(struct __pyx_
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":499
+/* "PETSc/petscvec.pxi":500
* return <Py_ssize_t>(<size_t>n*sizeof(PetscScalar))
*
* def __getsegcount__(self, Py_ssize_t *lenp): # <<<<<<<<<<<<<<
@@ -21308,7 +21959,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_12__getsegcount__(stru
Py_ssize_t __pyx_t_2;
__Pyx_RefNannySetupContext("__getsegcount__", 0);
- /* "PETSc/petscvec.pxi":500
+ /* "PETSc/petscvec.pxi":501
*
* def __getsegcount__(self, Py_ssize_t *lenp):
* if lenp != NULL: # <<<<<<<<<<<<<<
@@ -21318,17 +21969,17 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_12__getsegcount__(stru
__pyx_t_1 = ((__pyx_v_lenp != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":501
+ /* "PETSc/petscvec.pxi":502
* def __getsegcount__(self, Py_ssize_t *lenp):
* if lenp != NULL:
* lenp[0] = self.getbuffer(NULL) # <<<<<<<<<<<<<<
* return 1
*
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, NULL); if (unlikely(__pyx_t_2 == -1L)) __PYX_ERR(5, 501, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, NULL); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1L))) __PYX_ERR(5, 502, __pyx_L1_error)
(__pyx_v_lenp[0]) = __pyx_t_2;
- /* "PETSc/petscvec.pxi":500
+ /* "PETSc/petscvec.pxi":501
*
* def __getsegcount__(self, Py_ssize_t *lenp):
* if lenp != NULL: # <<<<<<<<<<<<<<
@@ -21337,7 +21988,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_12__getsegcount__(stru
*/
}
- /* "PETSc/petscvec.pxi":502
+ /* "PETSc/petscvec.pxi":503
* if lenp != NULL:
* lenp[0] = self.getbuffer(NULL)
* return 1 # <<<<<<<<<<<<<<
@@ -21347,7 +21998,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_12__getsegcount__(stru
__pyx_r = 1;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":499
+ /* "PETSc/petscvec.pxi":500
* return <Py_ssize_t>(<size_t>n*sizeof(PetscScalar))
*
* def __getsegcount__(self, Py_ssize_t *lenp): # <<<<<<<<<<<<<<
@@ -21365,7 +22016,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_12__getsegcount__(stru
}
#endif /*!(#if PY_MAJOR_VERSION < 3)*/
-/* "PETSc/petscvec.pxi":504
+/* "PETSc/petscvec.pxi":505
* return 1
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p): # <<<<<<<<<<<<<<
@@ -21397,7 +22048,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_14__getreadbuffer__(st
Py_ssize_t __pyx_t_3;
__Pyx_RefNannySetupContext("__getreadbuffer__", 0);
- /* "PETSc/petscvec.pxi":505
+ /* "PETSc/petscvec.pxi":506
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p):
* if idx != 0: raise SystemError( # <<<<<<<<<<<<<<
@@ -21406,25 +22057,25 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_14__getreadbuffer__(st
*/
__pyx_t_1 = ((__pyx_v_idx != 0) != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_SystemError, __pyx_tuple__15, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 505, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_SystemError, __pyx_tuple__15, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 506, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __PYX_ERR(5, 505, __pyx_L1_error)
+ __PYX_ERR(5, 506, __pyx_L1_error)
}
- /* "PETSc/petscvec.pxi":507
+ /* "PETSc/petscvec.pxi":508
* if idx != 0: raise SystemError(
* "accessing non-existent buffer segment")
* return self.getbuffer(p) # <<<<<<<<<<<<<<
*
* def __getwritebuffer__(self, Py_ssize_t idx, void **p):
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, __pyx_v_p); if (unlikely(__pyx_t_3 == -1L)) __PYX_ERR(5, 507, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, __pyx_v_p); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1L))) __PYX_ERR(5, 508, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":504
+ /* "PETSc/petscvec.pxi":505
* return 1
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p): # <<<<<<<<<<<<<<
@@ -21443,7 +22094,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_14__getreadbuffer__(st
}
#endif /*!(#if PY_MAJOR_VERSION < 3)*/
-/* "PETSc/petscvec.pxi":509
+/* "PETSc/petscvec.pxi":510
* return self.getbuffer(p)
*
* def __getwritebuffer__(self, Py_ssize_t idx, void **p): # <<<<<<<<<<<<<<
@@ -21475,7 +22126,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_16__getwritebuffer__(s
Py_ssize_t __pyx_t_3;
__Pyx_RefNannySetupContext("__getwritebuffer__", 0);
- /* "PETSc/petscvec.pxi":510
+ /* "PETSc/petscvec.pxi":511
*
* def __getwritebuffer__(self, Py_ssize_t idx, void **p):
* if idx != 0: raise SystemError( # <<<<<<<<<<<<<<
@@ -21484,14 +22135,14 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_16__getwritebuffer__(s
*/
__pyx_t_1 = ((__pyx_v_idx != 0) != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_SystemError, __pyx_tuple__16, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 510, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_SystemError, __pyx_tuple__16, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 511, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __PYX_ERR(5, 510, __pyx_L1_error)
+ __PYX_ERR(5, 511, __pyx_L1_error)
}
- /* "PETSc/petscvec.pxi":512
+ /* "PETSc/petscvec.pxi":513
* if idx != 0: raise SystemError(
* "accessing non-existent buffer segment")
* if self.readonly: raise TypeError( # <<<<<<<<<<<<<<
@@ -21500,25 +22151,25 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_16__getwritebuffer__(s
*/
__pyx_t_1 = (__pyx_v_self->readonly != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__17, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 512, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__17, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 513, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __PYX_ERR(5, 512, __pyx_L1_error)
+ __PYX_ERR(5, 513, __pyx_L1_error)
}
- /* "PETSc/petscvec.pxi":514
+ /* "PETSc/petscvec.pxi":515
* if self.readonly: raise TypeError(
* "Object is not writable.")
* return self.getbuffer(p) # <<<<<<<<<<<<<<
*
* # NumPy array interface (legacy)
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, __pyx_v_p); if (unlikely(__pyx_t_3 == -1L)) __PYX_ERR(5, 514, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->__pyx_vtab)->getbuffer(__pyx_v_self, __pyx_v_p); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1L))) __PYX_ERR(5, 515, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":509
+ /* "PETSc/petscvec.pxi":510
* return self.getbuffer(p)
*
* def __getwritebuffer__(self, Py_ssize_t idx, void **p): # <<<<<<<<<<<<<<
@@ -21537,7 +22188,7 @@ static Py_ssize_t __pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_16__getwritebuffer__(s
}
#endif /*!(#if PY_MAJOR_VERSION < 3)*/
-/* "PETSc/petscvec.pxi":519
+/* "PETSc/petscvec.pxi":520
*
* property __array_interface__:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -21572,7 +22223,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_19__array_interface____
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/petscvec.pxi":520
+ /* "PETSc/petscvec.pxi":521
* property __array_interface__:
* def __get__(self):
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -21581,7 +22232,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_19__array_interface____
*/
__pyx_v_n = 0;
- /* "PETSc/petscvec.pxi":521
+ /* "PETSc/petscvec.pxi":522
* def __get__(self):
* cdef PetscInt n = 0
* if self.vec != NULL: # <<<<<<<<<<<<<<
@@ -21591,16 +22242,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_19__array_interface____
__pyx_t_1 = ((__pyx_v_self->vec != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscvec.pxi":522
+ /* "PETSc/petscvec.pxi":523
* cdef PetscInt n = 0
* if self.vec != NULL:
* CHKERR( VecGetLocalSize(self.vec, &n) ) # <<<<<<<<<<<<<<
* cdef object size = toInt(n)
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_SCALAR)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 522, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 523, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":521
+ /* "PETSc/petscvec.pxi":522
* def __get__(self):
* cdef PetscInt n = 0
* if self.vec != NULL: # <<<<<<<<<<<<<<
@@ -21609,42 +22260,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_19__array_interface____
*/
}
- /* "PETSc/petscvec.pxi":523
+ /* "PETSc/petscvec.pxi":524
* if self.vec != NULL:
* CHKERR( VecGetLocalSize(self.vec, &n) )
* cdef object size = toInt(n) # <<<<<<<<<<<<<<
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_SCALAR)
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 523, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_size = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":524
+ /* "PETSc/petscvec.pxi":525
* CHKERR( VecGetLocalSize(self.vec, &n) )
* cdef object size = toInt(n)
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_SCALAR) # <<<<<<<<<<<<<<
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
* return dict(version=3,
*/
- __pyx_t_3 = ((PyObject *)PyArray_DescrFromType(NPY_PETSC_SCALAR)); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 524, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)PyArray_DescrFromType(NPY_PETSC_SCALAR)); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 525, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_descr = ((PyArray_Descr *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscvec.pxi":525
+ /* "PETSc/petscvec.pxi":526
* cdef object size = toInt(n)
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_SCALAR)
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize) # <<<<<<<<<<<<<<
* return dict(version=3,
* data=self,
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_kind); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 525, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_kind); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_itemsize); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 525, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_descr), __pyx_n_s_itemsize); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 525, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -21652,14 +22303,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_19__array_interface____
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
__pyx_t_3 = 0;
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_c_d, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 525, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_c_d, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (!(likely(PyString_CheckExact(__pyx_t_4))||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(5, 525, __pyx_L1_error)
+ if (!(likely(PyString_CheckExact(__pyx_t_4))||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "str", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(5, 526, __pyx_L1_error)
__pyx_v_typestr = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/petscvec.pxi":526
+ /* "PETSc/petscvec.pxi":527
* cdef dtype descr = PyArray_DescrFromType(NPY_PETSC_SCALAR)
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
* return dict(version=3, # <<<<<<<<<<<<<<
@@ -21667,47 +22318,47 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_19__array_interface____
* shape=(size,),
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 526, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(4); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 527, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_version, __pyx_int_3) < 0) __PYX_ERR(5, 526, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_version, __pyx_int_3) < 0) __PYX_ERR(5, 527, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":527
+ /* "PETSc/petscvec.pxi":528
* cdef str typestr = "=%c%d" % (descr.kind, descr.itemsize)
* return dict(version=3,
* data=self, # <<<<<<<<<<<<<<
* shape=(size,),
* typestr=typestr)
*/
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_data, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(5, 526, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_data, ((PyObject *)__pyx_v_self)) < 0) __PYX_ERR(5, 527, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":528
+ /* "PETSc/petscvec.pxi":529
* return dict(version=3,
* data=self,
* shape=(size,), # <<<<<<<<<<<<<<
* typestr=typestr)
*
*/
- __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 528, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(5, 529, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_size);
__Pyx_GIVEREF(__pyx_v_size);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_size);
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(5, 526, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(5, 527, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscvec.pxi":529
+ /* "PETSc/petscvec.pxi":530
* data=self,
* shape=(size,),
* typestr=typestr) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_typestr, __pyx_v_typestr) < 0) __PYX_ERR(5, 526, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_typestr, __pyx_v_typestr) < 0) __PYX_ERR(5, 527, __pyx_L1_error)
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":519
+ /* "PETSc/petscvec.pxi":520
*
* property __array_interface__:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -21731,10 +22382,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11_Vec_buffer_19__array_interface____
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":540
+/* "PETSc/petscvec.pxi":541
* cdef Vec lvec
*
- * def __init__(self, Vec gvec not None): # <<<<<<<<<<<<<<
+ * def __init__(self, Vec gvec): # <<<<<<<<<<<<<<
* self.gvec = gvec
* self.lvec = Vec()
*/
@@ -21754,6 +22405,7 @@ static int __pyx_pw_8petsc4py_5PETSc_14_Vec_LocalForm_1__init__(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -21764,7 +22416,7 @@ static int __pyx_pw_8petsc4py_5PETSc_14_Vec_LocalForm_1__init__(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(5, 540, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(5, 541, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -21775,13 +22427,13 @@ static int __pyx_pw_8petsc4py_5PETSc_14_Vec_LocalForm_1__init__(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(5, 540, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(5, 541, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc._Vec_LocalForm.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "gvec", 0))) __PYX_ERR(5, 540, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "gvec", 0))) __PYX_ERR(5, 541, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm___init__(((struct __pyx_obj_8petsc4py_5PETSc__Vec_LocalForm *)__pyx_v_self), __pyx_v_gvec);
/* function exit code */
@@ -21799,9 +22451,9 @@ static int __pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm___init__(struct __pyx_obj_
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__init__", 0);
- /* "PETSc/petscvec.pxi":541
+ /* "PETSc/petscvec.pxi":542
*
- * def __init__(self, Vec gvec not None):
+ * def __init__(self, Vec gvec):
* self.gvec = gvec # <<<<<<<<<<<<<<
* self.lvec = Vec()
*
@@ -21812,14 +22464,14 @@ static int __pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm___init__(struct __pyx_obj_
__Pyx_DECREF(((PyObject *)__pyx_v_self->gvec));
__pyx_v_self->gvec = __pyx_v_gvec;
- /* "PETSc/petscvec.pxi":542
- * def __init__(self, Vec gvec not None):
+ /* "PETSc/petscvec.pxi":543
+ * def __init__(self, Vec gvec):
* self.gvec = gvec
* self.lvec = Vec() # <<<<<<<<<<<<<<
*
* def __enter__(self):
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 542, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 543, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_v_self->lvec);
@@ -21827,10 +22479,10 @@ static int __pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm___init__(struct __pyx_obj_
__pyx_v_self->lvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscvec.pxi":540
+ /* "PETSc/petscvec.pxi":541
* cdef Vec lvec
*
- * def __init__(self, Vec gvec not None): # <<<<<<<<<<<<<<
+ * def __init__(self, Vec gvec): # <<<<<<<<<<<<<<
* self.gvec = gvec
* self.lvec = Vec()
*/
@@ -21847,7 +22499,7 @@ static int __pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm___init__(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":544
+/* "PETSc/petscvec.pxi":545
* self.lvec = Vec()
*
* def __enter__(self): # <<<<<<<<<<<<<<
@@ -21880,7 +22532,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_2__enter__(struct __
int __pyx_t_2;
__Pyx_RefNannySetupContext("__enter__", 0);
- /* "PETSc/petscvec.pxi":545
+ /* "PETSc/petscvec.pxi":546
*
* def __enter__(self):
* cdef PetscVec gvec = self.gvec.vec # <<<<<<<<<<<<<<
@@ -21890,16 +22542,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_2__enter__(struct __
__pyx_t_1 = __pyx_v_self->gvec->vec;
__pyx_v_gvec = __pyx_t_1;
- /* "PETSc/petscvec.pxi":546
+ /* "PETSc/petscvec.pxi":547
* def __enter__(self):
* cdef PetscVec gvec = self.gvec.vec
* CHKERR( VecGhostGetLocalForm(gvec, &self.lvec.vec) ) # <<<<<<<<<<<<<<
* return self.lvec
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostGetLocalForm(__pyx_v_gvec, (&__pyx_v_self->lvec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 546, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostGetLocalForm(__pyx_v_gvec, (&__pyx_v_self->lvec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 547, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":547
+ /* "PETSc/petscvec.pxi":548
* cdef PetscVec gvec = self.gvec.vec
* CHKERR( VecGhostGetLocalForm(gvec, &self.lvec.vec) )
* return self.lvec # <<<<<<<<<<<<<<
@@ -21911,7 +22563,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_2__enter__(struct __
__pyx_r = ((PyObject *)__pyx_v_self->lvec);
goto __pyx_L0;
- /* "PETSc/petscvec.pxi":544
+ /* "PETSc/petscvec.pxi":545
* self.lvec = Vec()
*
* def __enter__(self): # <<<<<<<<<<<<<<
@@ -21929,7 +22581,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_2__enter__(struct __
return __pyx_r;
}
-/* "PETSc/petscvec.pxi":549
+/* "PETSc/petscvec.pxi":550
* return self.lvec
*
* def __exit__(self, *exc): # <<<<<<<<<<<<<<
@@ -21964,7 +22616,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_4__exit__(struct __p
int __pyx_t_2;
__Pyx_RefNannySetupContext("__exit__", 0);
- /* "PETSc/petscvec.pxi":550
+ /* "PETSc/petscvec.pxi":551
*
* def __exit__(self, *exc):
* cdef PetscVec gvec = self.gvec.vec # <<<<<<<<<<<<<<
@@ -21974,16 +22626,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_4__exit__(struct __p
__pyx_t_1 = __pyx_v_self->gvec->vec;
__pyx_v_gvec = __pyx_t_1;
- /* "PETSc/petscvec.pxi":551
+ /* "PETSc/petscvec.pxi":552
* def __exit__(self, *exc):
* cdef PetscVec gvec = self.gvec.vec
* CHKERR( VecGhostRestoreLocalForm(gvec, &self.lvec.vec) ) # <<<<<<<<<<<<<<
* self.lvec.vec = NULL
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostRestoreLocalForm(__pyx_v_gvec, (&__pyx_v_self->lvec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(5, 551, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostRestoreLocalForm(__pyx_v_gvec, (&__pyx_v_self->lvec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(5, 552, __pyx_L1_error)
- /* "PETSc/petscvec.pxi":552
+ /* "PETSc/petscvec.pxi":553
* cdef PetscVec gvec = self.gvec.vec
* CHKERR( VecGhostRestoreLocalForm(gvec, &self.lvec.vec) )
* self.lvec.vec = NULL # <<<<<<<<<<<<<<
@@ -21992,7 +22644,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_4__exit__(struct __p
*/
__pyx_v_self->lvec->vec = NULL;
- /* "PETSc/petscvec.pxi":549
+ /* "PETSc/petscvec.pxi":550
* return self.lvec
*
* def __exit__(self, *exc): # <<<<<<<<<<<<<<
@@ -22012,7 +22664,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_14_Vec_LocalForm_4__exit__(struct __p
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":412
+/* "PETSc/petscmat.pxi":418
* int MatGetNearNullSpace(PetscMat,PetscNullSpace*)
*
* cdef inline NullSpace ref_NullSpace(PetscNullSpace nsp): # <<<<<<<<<<<<<<
@@ -22028,14 +22680,14 @@ static CYTHON_INLINE struct PyPetscNullSpaceObject *__pyx_f_8petsc4py_5PETSc_ref
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_NullSpace", 0);
- /* "PETSc/petscmat.pxi":413
+ /* "PETSc/petscmat.pxi":419
*
* cdef inline NullSpace ref_NullSpace(PetscNullSpace nsp):
* cdef NullSpace ob = <NullSpace> NullSpace() # <<<<<<<<<<<<<<
* ob.nsp = nsp
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_NullSpace), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 413, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_NullSpace), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 419, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -22043,7 +22695,7 @@ static CYTHON_INLINE struct PyPetscNullSpaceObject *__pyx_f_8petsc4py_5PETSc_ref
__pyx_v_ob = ((struct PyPetscNullSpaceObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":414
+ /* "PETSc/petscmat.pxi":420
* cdef inline NullSpace ref_NullSpace(PetscNullSpace nsp):
* cdef NullSpace ob = <NullSpace> NullSpace()
* ob.nsp = nsp # <<<<<<<<<<<<<<
@@ -22052,7 +22704,7 @@ static CYTHON_INLINE struct PyPetscNullSpaceObject *__pyx_f_8petsc4py_5PETSc_ref
*/
__pyx_v_ob->nsp = __pyx_v_nsp;
- /* "PETSc/petscmat.pxi":415
+ /* "PETSc/petscmat.pxi":421
* cdef NullSpace ob = <NullSpace> NullSpace()
* ob.nsp = nsp
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -22061,7 +22713,7 @@ static CYTHON_INLINE struct PyPetscNullSpaceObject *__pyx_f_8petsc4py_5PETSc_ref
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscmat.pxi":416
+ /* "PETSc/petscmat.pxi":422
* ob.nsp = nsp
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -22073,7 +22725,7 @@ static CYTHON_INLINE struct PyPetscNullSpaceObject *__pyx_f_8petsc4py_5PETSc_ref
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":412
+ /* "PETSc/petscmat.pxi":418
* int MatGetNearNullSpace(PetscMat,PetscNullSpace*)
*
* cdef inline NullSpace ref_NullSpace(PetscNullSpace nsp): # <<<<<<<<<<<<<<
@@ -22094,7 +22746,7 @@ static CYTHON_INLINE struct PyPetscNullSpaceObject *__pyx_f_8petsc4py_5PETSc_ref
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":418
+/* "PETSc/petscmat.pxi":424
* return ob
*
* cdef int NullSpace_Function( # <<<<<<<<<<<<<<
@@ -22117,46 +22769,46 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("NullSpace_Function", 0);
- /* "PETSc/petscmat.pxi":423
+ /* "PETSc/petscmat.pxi":429
* void * ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef NullSpace nsp = ref_NullSpace(n) # <<<<<<<<<<<<<<
* cdef Vec vec = ref_Vec(v)
* (function, args, kargs) = nsp.get_attr('__function__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_NullSpace(__pyx_v_n)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 423, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_NullSpace(__pyx_v_n)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 429, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_nsp = ((struct PyPetscNullSpaceObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":424
+ /* "PETSc/petscmat.pxi":430
* ) except PETSC_ERR_PYTHON with gil:
* cdef NullSpace nsp = ref_NullSpace(n)
* cdef Vec vec = ref_Vec(v) # <<<<<<<<<<<<<<
* (function, args, kargs) = nsp.get_attr('__function__')
* function(nsp, vec, *args, **kargs)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_v)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 424, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_v)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 430, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":425
+ /* "PETSc/petscmat.pxi":431
* cdef NullSpace nsp = ref_NullSpace(n)
* cdef Vec vec = ref_Vec(v)
* (function, args, kargs) = nsp.get_attr('__function__') # <<<<<<<<<<<<<<
* function(nsp, vec, *args, **kargs)
* return 0
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_nsp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_nsp), ((char *)"__function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 425, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_nsp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_nsp), ((char *)"__function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 431, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -22164,9 +22816,9 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 425, __pyx_L1_error)
+ __PYX_ERR(6, 431, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -22180,17 +22832,17 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 425, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 431, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 425, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 431, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 425, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 431, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 425, __pyx_L1_error)
+ __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 431, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
@@ -22200,7 +22852,7 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
__Pyx_GOTREF(__pyx_t_3);
index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(6, 425, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(6, 431, __pyx_L1_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L4_unpacking_done;
@@ -22208,7 +22860,7 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 425, __pyx_L1_error)
+ __PYX_ERR(6, 431, __pyx_L1_error)
__pyx_L4_unpacking_done:;
}
__pyx_v_function = __pyx_t_2;
@@ -22218,14 +22870,14 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
__pyx_v_kargs = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":426
+ /* "PETSc/petscmat.pxi":432
* cdef Vec vec = ref_Vec(v)
* (function, args, kargs) = nsp.get_attr('__function__')
* function(nsp, vec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 426, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_nsp));
__Pyx_GIVEREF(((PyObject *)__pyx_v_nsp));
@@ -22233,30 +22885,30 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
__Pyx_INCREF(((PyObject *)__pyx_v_vec));
__Pyx_GIVEREF(((PyObject *)__pyx_v_vec));
PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_vec));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 426, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 426, __pyx_L1_error)
+ __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(6, 426, __pyx_L1_error)
+ __PYX_ERR(6, 432, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 426, __pyx_L1_error)
+ __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 426, __pyx_L1_error)
+ __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 426, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":427
+ /* "PETSc/petscmat.pxi":433
* (function, args, kargs) = nsp.get_attr('__function__')
* function(nsp, vec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -22266,7 +22918,7 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":418
+ /* "PETSc/petscmat.pxi":424
* return ob
*
* cdef int NullSpace_Function( # <<<<<<<<<<<<<<
@@ -22291,12 +22943,12 @@ static int __pyx_f_8petsc4py_5PETSc_NullSpace_Function(MatNullSpace __pyx_v_n, V
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":431
+/* "PETSc/petscmat.pxi":437
* # -----------------------------------------------------------------------------
*
* cdef inline Mat ref_Mat(PetscMat mat): # <<<<<<<<<<<<<<
@@ -22312,14 +22964,14 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_ref_Mat(M
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_Mat", 0);
- /* "PETSc/petscmat.pxi":432
+ /* "PETSc/petscmat.pxi":438
*
* cdef inline Mat ref_Mat(PetscMat mat):
* cdef Mat ob = <Mat> Mat() # <<<<<<<<<<<<<<
* ob.mat = mat
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 432, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 438, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -22327,7 +22979,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_ref_Mat(M
__pyx_v_ob = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":433
+ /* "PETSc/petscmat.pxi":439
* cdef inline Mat ref_Mat(PetscMat mat):
* cdef Mat ob = <Mat> Mat()
* ob.mat = mat # <<<<<<<<<<<<<<
@@ -22336,7 +22988,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_ref_Mat(M
*/
__pyx_v_ob->mat = __pyx_v_mat;
- /* "PETSc/petscmat.pxi":434
+ /* "PETSc/petscmat.pxi":440
* cdef Mat ob = <Mat> Mat()
* ob.mat = mat
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -22345,7 +22997,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_ref_Mat(M
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscmat.pxi":435
+ /* "PETSc/petscmat.pxi":441
* ob.mat = mat
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -22357,7 +23009,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_ref_Mat(M
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":431
+ /* "PETSc/petscmat.pxi":437
* # -----------------------------------------------------------------------------
*
* cdef inline Mat ref_Mat(PetscMat mat): # <<<<<<<<<<<<<<
@@ -22378,7 +23030,7 @@ static CYTHON_INLINE struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_ref_Mat(M
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":441
+/* "PETSc/petscmat.pxi":447
* # unary operations
*
* cdef Mat mat_pos(Mat self): # <<<<<<<<<<<<<<
@@ -22396,7 +23048,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_pos(struct PyPetscM
int __pyx_t_4;
__Pyx_RefNannySetupContext("mat_pos", 0);
- /* "PETSc/petscmat.pxi":442
+ /* "PETSc/petscmat.pxi":448
*
* cdef Mat mat_pos(Mat self):
* cdef Mat mat = type(self)() # <<<<<<<<<<<<<<
@@ -22405,7 +23057,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_pos(struct PyPetscM
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -22415,27 +23067,27 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_pos(struct PyPetscM
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 442, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 448, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 442, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 448, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(6, 442, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(6, 448, __pyx_L1_error)
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":443
+ /* "PETSc/petscmat.pxi":449
* cdef Mat mat_pos(Mat self):
* cdef Mat mat = type(self)()
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &mat.mat) ) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(6, 443, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(6, 449, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":444
+ /* "PETSc/petscmat.pxi":450
* cdef Mat mat = type(self)()
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &mat.mat) )
* return mat # <<<<<<<<<<<<<<
@@ -22447,7 +23099,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_pos(struct PyPetscM
__pyx_r = __pyx_v_mat;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":441
+ /* "PETSc/petscmat.pxi":447
* # unary operations
*
* cdef Mat mat_pos(Mat self): # <<<<<<<<<<<<<<
@@ -22469,7 +23121,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_pos(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":446
+/* "PETSc/petscmat.pxi":452
* return mat
*
* cdef Mat mat_neg(Mat self): # <<<<<<<<<<<<<<
@@ -22486,14 +23138,14 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_neg(struct PyPetscM
int __pyx_t_3;
__Pyx_RefNannySetupContext("mat_neg", 0);
- /* "PETSc/petscmat.pxi":447
+ /* "PETSc/petscmat.pxi":453
*
* cdef Mat mat_neg(Mat self):
* cdef Mat mat = <Mat> mat_pos(self) # <<<<<<<<<<<<<<
* CHKERR( MatScale(mat.mat, -1) )
* return mat
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 447, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 453, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -22501,16 +23153,16 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_neg(struct PyPetscM
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":448
+ /* "PETSc/petscmat.pxi":454
* cdef Mat mat_neg(Mat self):
* cdef Mat mat = <Mat> mat_pos(self)
* CHKERR( MatScale(mat.mat, -1) ) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatScale(__pyx_v_mat->mat, -1.0)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(6, 448, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatScale(__pyx_v_mat->mat, -1.0)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(6, 454, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":449
+ /* "PETSc/petscmat.pxi":455
* cdef Mat mat = <Mat> mat_pos(self)
* CHKERR( MatScale(mat.mat, -1) )
* return mat # <<<<<<<<<<<<<<
@@ -22522,7 +23174,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_neg(struct PyPetscM
__pyx_r = __pyx_v_mat;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":446
+ /* "PETSc/petscmat.pxi":452
* return mat
*
* cdef Mat mat_neg(Mat self): # <<<<<<<<<<<<<<
@@ -22543,7 +23195,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_neg(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":453
+/* "PETSc/petscmat.pxi":459
* # inplace binary operations
*
* cdef Mat mat_iadd(Mat self, other): # <<<<<<<<<<<<<<
@@ -22561,14 +23213,14 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
- Py_ssize_t __pyx_t_6;
+ int __pyx_t_6;
PyObject *__pyx_t_7 = NULL;
int __pyx_t_8;
PyObject *(*__pyx_t_9)(PyObject *);
PyObject *__pyx_t_10 = NULL;
__Pyx_RefNannySetupContext("mat_iadd", 0);
- /* "PETSc/petscmat.pxi":454
+ /* "PETSc/petscmat.pxi":460
*
* cdef Mat mat_iadd(Mat self, other):
* if isinstance(other, Mat): # <<<<<<<<<<<<<<
@@ -22579,18 +23231,18 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":455
+ /* "PETSc/petscmat.pxi":461
* cdef Mat mat_iadd(Mat self, other):
* if isinstance(other, Mat):
* self.axpy(1, other) # <<<<<<<<<<<<<<
* elif isinstance(other, (tuple, list)):
* alpha, mat = other
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 455, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 461, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
__pyx_t_6 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -22600,24 +23252,42 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_t_6 = 1;
}
}
- __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 455, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- if (__pyx_t_5) {
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_int_1, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 461, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_int_1, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 461, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 461, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (__pyx_t_5) {
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ }
+ __Pyx_INCREF(__pyx_int_1);
+ __Pyx_GIVEREF(__pyx_int_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_int_1);
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_v_other);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 461, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- __Pyx_INCREF(__pyx_int_1);
- __Pyx_GIVEREF(__pyx_int_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_int_1);
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_v_other);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 455, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":454
+ /* "PETSc/petscmat.pxi":460
*
* cdef Mat mat_iadd(Mat self, other):
* if isinstance(other, Mat): # <<<<<<<<<<<<<<
@@ -22627,7 +23297,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":456
+ /* "PETSc/petscmat.pxi":462
* if isinstance(other, Mat):
* self.axpy(1, other)
* elif isinstance(other, (tuple, list)): # <<<<<<<<<<<<<<
@@ -22648,7 +23318,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":457
+ /* "PETSc/petscmat.pxi":463
* self.axpy(1, other)
* elif isinstance(other, (tuple, list)):
* alpha, mat = other # <<<<<<<<<<<<<<
@@ -22657,7 +23327,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
*/
if ((likely(PyTuple_CheckExact(__pyx_v_other))) || (PyList_CheckExact(__pyx_v_other))) {
PyObject* sequence = __pyx_v_other;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -22665,9 +23335,9 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 457, __pyx_L1_error)
+ __PYX_ERR(6, 463, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
@@ -22678,21 +23348,21 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 457, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 463, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 457, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 463, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 457, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 463, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_9 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_3 = __pyx_t_9(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
index = 1; __pyx_t_4 = __pyx_t_9(__pyx_t_7); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 2) < 0) __PYX_ERR(6, 457, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 2) < 0) __PYX_ERR(6, 463, __pyx_L1_error)
__pyx_t_9 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L7_unpacking_done;
@@ -22700,7 +23370,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_9 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 457, __pyx_L1_error)
+ __PYX_ERR(6, 463, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__pyx_v_alpha = __pyx_t_3;
@@ -22708,18 +23378,18 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_v_mat = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":458
+ /* "PETSc/petscmat.pxi":464
* elif isinstance(other, (tuple, list)):
* alpha, mat = other
* self.axpy(alpha, mat) # <<<<<<<<<<<<<<
* elif isinstance(other, Vec):
* self.setDiagonal(other, PETSC_ADD_VALUES)
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 458, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 464, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_7 = NULL;
__pyx_t_6 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -22729,24 +23399,42 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_t_6 = 1;
}
}
- __pyx_t_5 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 458, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL;
- }
- __Pyx_INCREF(__pyx_v_alpha);
- __Pyx_GIVEREF(__pyx_v_alpha);
- PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_6, __pyx_v_alpha);
- __Pyx_INCREF(__pyx_v_mat);
- __Pyx_GIVEREF(__pyx_v_mat);
- PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_6, __pyx_v_mat);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 458, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_alpha, __pyx_v_mat};
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 464, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_alpha, __pyx_v_mat};
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 464, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 464, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_alpha);
+ __Pyx_GIVEREF(__pyx_v_alpha);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_6, __pyx_v_alpha);
+ __Pyx_INCREF(__pyx_v_mat);
+ __Pyx_GIVEREF(__pyx_v_mat);
+ PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_6, __pyx_v_mat);
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 464, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ }
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":456
+ /* "PETSc/petscmat.pxi":462
* if isinstance(other, Mat):
* self.axpy(1, other)
* elif isinstance(other, (tuple, list)): # <<<<<<<<<<<<<<
@@ -22756,7 +23444,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":459
+ /* "PETSc/petscmat.pxi":465
* alpha, mat = other
* self.axpy(alpha, mat)
* elif isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -22767,20 +23455,20 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":460
+ /* "PETSc/petscmat.pxi":466
* self.axpy(alpha, mat)
* elif isinstance(other, Vec):
* self.setDiagonal(other, PETSC_ADD_VALUES) # <<<<<<<<<<<<<<
* else:
* self.shift(other)
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDiagonal); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 460, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDiagonal); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 466, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(ADD_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 460, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyInt_From_InsertMode(ADD_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 466, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = NULL;
__pyx_t_6 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -22790,24 +23478,44 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_t_6 = 1;
}
}
- __pyx_t_10 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 460, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_other, __pyx_t_5};
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 466, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_other, __pyx_t_5};
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 466, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 466, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_6, __pyx_v_other);
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_6, __pyx_t_5);
+ __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 466, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_6, __pyx_v_other);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_6, __pyx_t_5);
- __pyx_t_5 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 460, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":459
+ /* "PETSc/petscmat.pxi":465
* alpha, mat = other
* self.axpy(alpha, mat)
* elif isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -22817,7 +23525,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":462
+ /* "PETSc/petscmat.pxi":468
* self.setDiagonal(other, PETSC_ADD_VALUES)
* else:
* self.shift(other) # <<<<<<<<<<<<<<
@@ -22825,10 +23533,10 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
*
*/
/*else*/ {
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_shift); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 462, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_shift); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 468, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_10 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_10 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_10)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -22838,25 +23546,43 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
}
}
if (!__pyx_t_10) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_other); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 462, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_other); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 468, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 462, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_10); __pyx_t_10 = NULL;
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_other);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 462, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_v_other};
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 468, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_10, __pyx_v_other};
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 468, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 468, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_10); __pyx_t_10 = NULL;
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_v_other);
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 468, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__pyx_L3:;
- /* "PETSc/petscmat.pxi":463
+ /* "PETSc/petscmat.pxi":469
* else:
* self.shift(other)
* return self # <<<<<<<<<<<<<<
@@ -22868,7 +23594,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":453
+ /* "PETSc/petscmat.pxi":459
* # inplace binary operations
*
* cdef Mat mat_iadd(Mat self, other): # <<<<<<<<<<<<<<
@@ -22893,7 +23619,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_iadd(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":465
+/* "PETSc/petscmat.pxi":471
* return self
*
* cdef Mat mat_isub(Mat self, other): # <<<<<<<<<<<<<<
@@ -22912,14 +23638,14 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
- Py_ssize_t __pyx_t_6;
+ int __pyx_t_6;
PyObject *__pyx_t_7 = NULL;
int __pyx_t_8;
PyObject *(*__pyx_t_9)(PyObject *);
PyObject *__pyx_t_10 = NULL;
__Pyx_RefNannySetupContext("mat_isub", 0);
- /* "PETSc/petscmat.pxi":466
+ /* "PETSc/petscmat.pxi":472
*
* cdef Mat mat_isub(Mat self, other):
* if isinstance(other, Mat): # <<<<<<<<<<<<<<
@@ -22930,18 +23656,18 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":467
+ /* "PETSc/petscmat.pxi":473
* cdef Mat mat_isub(Mat self, other):
* if isinstance(other, Mat):
* self.axpy(-1, other) # <<<<<<<<<<<<<<
* elif isinstance(other, (tuple, list)):
* alpha, mat = other
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 467, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 473, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
__pyx_t_6 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -22951,24 +23677,42 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_t_6 = 1;
}
}
- __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 467, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- if (__pyx_t_5) {
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_int_neg_1, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 473, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_int_neg_1, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 473, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 473, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (__pyx_t_5) {
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ }
+ __Pyx_INCREF(__pyx_int_neg_1);
+ __Pyx_GIVEREF(__pyx_int_neg_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_int_neg_1);
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_v_other);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 473, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- __Pyx_INCREF(__pyx_int_neg_1);
- __Pyx_GIVEREF(__pyx_int_neg_1);
- PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_int_neg_1);
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_v_other);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 467, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":466
+ /* "PETSc/petscmat.pxi":472
*
* cdef Mat mat_isub(Mat self, other):
* if isinstance(other, Mat): # <<<<<<<<<<<<<<
@@ -22978,7 +23722,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":468
+ /* "PETSc/petscmat.pxi":474
* if isinstance(other, Mat):
* self.axpy(-1, other)
* elif isinstance(other, (tuple, list)): # <<<<<<<<<<<<<<
@@ -22999,7 +23743,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":469
+ /* "PETSc/petscmat.pxi":475
* self.axpy(-1, other)
* elif isinstance(other, (tuple, list)):
* alpha, mat = other # <<<<<<<<<<<<<<
@@ -23008,7 +23752,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
*/
if ((likely(PyTuple_CheckExact(__pyx_v_other))) || (PyList_CheckExact(__pyx_v_other))) {
PyObject* sequence = __pyx_v_other;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -23016,9 +23760,9 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 469, __pyx_L1_error)
+ __PYX_ERR(6, 475, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
@@ -23029,21 +23773,21 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 469, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 475, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 469, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 475, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 469, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 475, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_9 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_3 = __pyx_t_9(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
index = 1; __pyx_t_4 = __pyx_t_9(__pyx_t_7); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 2) < 0) __PYX_ERR(6, 469, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_7), 2) < 0) __PYX_ERR(6, 475, __pyx_L1_error)
__pyx_t_9 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L7_unpacking_done;
@@ -23051,7 +23795,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_9 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 469, __pyx_L1_error)
+ __PYX_ERR(6, 475, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__pyx_v_alpha = __pyx_t_3;
@@ -23059,20 +23803,20 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_v_mat = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":470
+ /* "PETSc/petscmat.pxi":476
* elif isinstance(other, (tuple, list)):
* alpha, mat = other
* self.axpy(-alpha, mat) # <<<<<<<<<<<<<<
* elif isinstance(other, Vec):
* diag = other.copy()
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 470, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_axpy); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 476, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_7 = PyNumber_Negative(__pyx_v_alpha); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 470, __pyx_L1_error)
+ __pyx_t_7 = PyNumber_Negative(__pyx_v_alpha); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 476, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_5 = NULL;
__pyx_t_6 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -23082,24 +23826,44 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_t_6 = 1;
}
}
- __pyx_t_10 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 470, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- if (__pyx_t_5) {
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_7, __pyx_v_mat};
+ __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 476, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_7, __pyx_v_mat};
+ __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 476, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 476, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__pyx_t_5) {
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ }
+ __Pyx_GIVEREF(__pyx_t_7);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_6, __pyx_t_7);
+ __Pyx_INCREF(__pyx_v_mat);
+ __Pyx_GIVEREF(__pyx_v_mat);
+ PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_6, __pyx_v_mat);
+ __pyx_t_7 = 0;
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 476, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
}
- __Pyx_GIVEREF(__pyx_t_7);
- PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_6, __pyx_t_7);
- __Pyx_INCREF(__pyx_v_mat);
- __Pyx_GIVEREF(__pyx_v_mat);
- PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_6, __pyx_v_mat);
- __pyx_t_7 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 470, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":468
+ /* "PETSc/petscmat.pxi":474
* if isinstance(other, Mat):
* self.axpy(-1, other)
* elif isinstance(other, (tuple, list)): # <<<<<<<<<<<<<<
@@ -23109,7 +23873,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":471
+ /* "PETSc/petscmat.pxi":477
* alpha, mat = other
* self.axpy(-alpha, mat)
* elif isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -23120,17 +23884,17 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":472
+ /* "PETSc/petscmat.pxi":478
* self.axpy(-alpha, mat)
* elif isinstance(other, Vec):
* diag = other.copy() # <<<<<<<<<<<<<<
* diag.scale(-1)
* self.setDiagonal(diag, PETSC_ADD_VALUES)
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_copy); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 472, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_copy); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 478, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_10 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_10 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_10)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -23140,44 +23904,44 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
}
}
if (__pyx_t_10) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_10); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 472, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_10); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 478, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
} else {
- __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 472, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 478, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_diag = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":473
+ /* "PETSc/petscmat.pxi":479
* elif isinstance(other, Vec):
* diag = other.copy()
* diag.scale(-1) # <<<<<<<<<<<<<<
* self.setDiagonal(diag, PETSC_ADD_VALUES)
* diag.destroy()
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_diag, __pyx_n_s_scale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 473, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_diag, __pyx_n_s_scale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 479, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__18, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 473, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__18, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 479, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":474
+ /* "PETSc/petscmat.pxi":480
* diag = other.copy()
* diag.scale(-1)
* self.setDiagonal(diag, PETSC_ADD_VALUES) # <<<<<<<<<<<<<<
* diag.destroy()
* else:
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDiagonal); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 474, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDiagonal); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 480, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_10 = __Pyx_PyInt_From_InsertMode(ADD_VALUES); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 474, __pyx_L1_error)
+ __pyx_t_10 = __Pyx_PyInt_From_InsertMode(ADD_VALUES); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 480, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_7 = NULL;
__pyx_t_6 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23187,34 +23951,54 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_t_6 = 1;
}
}
- __pyx_t_5 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 474, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (__pyx_t_7) {
- __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_diag, __pyx_t_10};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 480, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_v_diag, __pyx_t_10};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 480, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 480, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (__pyx_t_7) {
+ __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_diag);
+ __Pyx_GIVEREF(__pyx_v_diag);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_6, __pyx_v_diag);
+ __Pyx_GIVEREF(__pyx_t_10);
+ PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_6, __pyx_t_10);
+ __pyx_t_10 = 0;
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 480, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- __Pyx_INCREF(__pyx_v_diag);
- __Pyx_GIVEREF(__pyx_v_diag);
- PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_6, __pyx_v_diag);
- __Pyx_GIVEREF(__pyx_t_10);
- PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_6, __pyx_t_10);
- __pyx_t_10 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 474, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":475
+ /* "PETSc/petscmat.pxi":481
* diag.scale(-1)
* self.setDiagonal(diag, PETSC_ADD_VALUES)
* diag.destroy() # <<<<<<<<<<<<<<
* else:
* self.shift(other)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_diag, __pyx_n_s_destroy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 475, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_diag, __pyx_n_s_destroy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 481, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23224,16 +24008,16 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
}
}
if (__pyx_t_5) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 475, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 481, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
- __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 475, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 481, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":471
+ /* "PETSc/petscmat.pxi":477
* alpha, mat = other
* self.axpy(-alpha, mat)
* elif isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -23243,7 +24027,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":477
+ /* "PETSc/petscmat.pxi":483
* diag.destroy()
* else:
* self.shift(other) # <<<<<<<<<<<<<<
@@ -23251,10 +24035,10 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
*
*/
/*else*/ {
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_shift); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 477, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_shift); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 483, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23264,25 +24048,43 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
}
}
if (!__pyx_t_5) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 477, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 483, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
} else {
- __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 477, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_10);
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __pyx_t_5 = NULL;
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_v_other);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 477, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 483, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 483, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ {
+ __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 483, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_v_other);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 483, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
__pyx_L3:;
- /* "PETSc/petscmat.pxi":478
+ /* "PETSc/petscmat.pxi":484
* else:
* self.shift(other)
* return self # <<<<<<<<<<<<<<
@@ -23294,7 +24096,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":465
+ /* "PETSc/petscmat.pxi":471
* return self
*
* cdef Mat mat_isub(Mat self, other): # <<<<<<<<<<<<<<
@@ -23320,7 +24122,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_isub(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":480
+/* "PETSc/petscmat.pxi":486
* return self
*
* cdef Mat mat_imul(Mat self, other): # <<<<<<<<<<<<<<
@@ -23340,11 +24142,11 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *(*__pyx_t_7)(PyObject *);
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
__Pyx_RefNannySetupContext("mat_imul", 0);
- /* "PETSc/petscmat.pxi":481
+ /* "PETSc/petscmat.pxi":487
*
* cdef Mat mat_imul(Mat self, other):
* if (isinstance(other, tuple) or # <<<<<<<<<<<<<<
@@ -23359,7 +24161,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
goto __pyx_L4_bool_binop_done;
}
- /* "PETSc/petscmat.pxi":482
+ /* "PETSc/petscmat.pxi":488
* cdef Mat mat_imul(Mat self, other):
* if (isinstance(other, tuple) or
* isinstance(other, list)): # <<<<<<<<<<<<<<
@@ -23371,7 +24173,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
__pyx_t_1 = __pyx_t_2;
__pyx_L4_bool_binop_done:;
- /* "PETSc/petscmat.pxi":481
+ /* "PETSc/petscmat.pxi":487
*
* cdef Mat mat_imul(Mat self, other):
* if (isinstance(other, tuple) or # <<<<<<<<<<<<<<
@@ -23380,7 +24182,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
*/
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":483
+ /* "PETSc/petscmat.pxi":489
* if (isinstance(other, tuple) or
* isinstance(other, list)):
* L, R = other # <<<<<<<<<<<<<<
@@ -23389,7 +24191,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
*/
if ((likely(PyTuple_CheckExact(__pyx_v_other))) || (PyList_CheckExact(__pyx_v_other))) {
PyObject* sequence = __pyx_v_other;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -23397,9 +24199,9 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 483, __pyx_L1_error)
+ __PYX_ERR(6, 489, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -23410,21 +24212,21 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 483, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 489, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 483, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 489, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 483, __pyx_L1_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 489, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(6, 483, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(6, 489, __pyx_L1_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7_unpacking_done;
@@ -23432,7 +24234,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 483, __pyx_L1_error)
+ __PYX_ERR(6, 489, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__pyx_v_L = __pyx_t_4;
@@ -23440,18 +24242,18 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
__pyx_v_R = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":484
+ /* "PETSc/petscmat.pxi":490
* isinstance(other, list)):
* L, R = other
* self.diagonalScale(L, R) # <<<<<<<<<<<<<<
* else:
* self.scale(other)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_diagonalScale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 484, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_diagonalScale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 490, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23461,24 +24263,42 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 484, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_6) {
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_6); __pyx_t_6 = NULL;
- }
- __Pyx_INCREF(__pyx_v_L);
- __Pyx_GIVEREF(__pyx_v_L);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_v_L);
- __Pyx_INCREF(__pyx_v_R);
- __Pyx_GIVEREF(__pyx_v_R);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_v_R);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_9, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 484, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_L, __pyx_v_R};
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 490, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_L, __pyx_v_R};
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 490, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 490, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_6) {
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_L);
+ __Pyx_GIVEREF(__pyx_v_L);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_v_L);
+ __Pyx_INCREF(__pyx_v_R);
+ __Pyx_GIVEREF(__pyx_v_R);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_v_R);
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_9, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 490, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":481
+ /* "PETSc/petscmat.pxi":487
*
* cdef Mat mat_imul(Mat self, other):
* if (isinstance(other, tuple) or # <<<<<<<<<<<<<<
@@ -23488,7 +24308,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":486
+ /* "PETSc/petscmat.pxi":492
* self.diagonalScale(L, R)
* else:
* self.scale(other) # <<<<<<<<<<<<<<
@@ -23496,10 +24316,10 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
*
*/
/*else*/ {
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_scale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 486, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_scale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 492, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23509,25 +24329,43 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
}
}
if (!__pyx_t_9) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 486, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 492, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 486, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = NULL;
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_other);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 486, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_other};
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 492, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_other};
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 492, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ {
+ __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 492, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_other);
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 492, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__pyx_L3:;
- /* "PETSc/petscmat.pxi":487
+ /* "PETSc/petscmat.pxi":493
* else:
* self.scale(other)
* return self # <<<<<<<<<<<<<<
@@ -23539,7 +24377,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":480
+ /* "PETSc/petscmat.pxi":486
* return self
*
* cdef Mat mat_imul(Mat self, other): # <<<<<<<<<<<<<<
@@ -23563,7 +24401,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_imul(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":489
+/* "PETSc/petscmat.pxi":495
* return self
*
* cdef Mat mat_idiv(Mat self, other): # <<<<<<<<<<<<<<
@@ -23583,11 +24421,11 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *(*__pyx_t_7)(PyObject *);
- Py_ssize_t __pyx_t_8;
+ int __pyx_t_8;
PyObject *__pyx_t_9 = NULL;
__Pyx_RefNannySetupContext("mat_idiv", 0);
- /* "PETSc/petscmat.pxi":490
+ /* "PETSc/petscmat.pxi":496
*
* cdef Mat mat_idiv(Mat self, other):
* if isinstance(other, (tuple, list)): # <<<<<<<<<<<<<<
@@ -23608,7 +24446,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":491
+ /* "PETSc/petscmat.pxi":497
* cdef Mat mat_idiv(Mat self, other):
* if isinstance(other, (tuple, list)):
* L, R = other # <<<<<<<<<<<<<<
@@ -23617,7 +24455,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
*/
if ((likely(PyTuple_CheckExact(__pyx_v_other))) || (PyList_CheckExact(__pyx_v_other))) {
PyObject* sequence = __pyx_v_other;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -23625,9 +24463,9 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 491, __pyx_L1_error)
+ __PYX_ERR(6, 497, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -23638,21 +24476,21 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 491, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 497, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 491, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 497, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 491, __pyx_L1_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_v_other); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 497, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(6, 491, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(6, 497, __pyx_L1_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7_unpacking_done;
@@ -23660,7 +24498,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 491, __pyx_L1_error)
+ __PYX_ERR(6, 497, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__pyx_v_L = __pyx_t_4;
@@ -23668,7 +24506,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__pyx_v_R = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":492
+ /* "PETSc/petscmat.pxi":498
* if isinstance(other, (tuple, list)):
* L, R = other
* if isinstance(L, Vec): # <<<<<<<<<<<<<<
@@ -23679,17 +24517,17 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":493
+ /* "PETSc/petscmat.pxi":499
* L, R = other
* if isinstance(L, Vec):
* L = L.copy() # <<<<<<<<<<<<<<
* L.reciprocal()
* if isinstance(R, Vec):
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_L, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 493, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_L, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 499, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23699,27 +24537,27 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
}
}
if (__pyx_t_6) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 493, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 499, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 493, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 499, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_L, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":494
+ /* "PETSc/petscmat.pxi":500
* if isinstance(L, Vec):
* L = L.copy()
* L.reciprocal() # <<<<<<<<<<<<<<
* if isinstance(R, Vec):
* R = R.copy()
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_L, __pyx_n_s_reciprocal); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 494, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_L, __pyx_n_s_reciprocal); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 500, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23729,16 +24567,16 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
}
}
if (__pyx_t_6) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 494, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 500, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 494, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 500, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":492
+ /* "PETSc/petscmat.pxi":498
* if isinstance(other, (tuple, list)):
* L, R = other
* if isinstance(L, Vec): # <<<<<<<<<<<<<<
@@ -23747,7 +24585,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
*/
}
- /* "PETSc/petscmat.pxi":495
+ /* "PETSc/petscmat.pxi":501
* L = L.copy()
* L.reciprocal()
* if isinstance(R, Vec): # <<<<<<<<<<<<<<
@@ -23758,17 +24596,17 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":496
+ /* "PETSc/petscmat.pxi":502
* L.reciprocal()
* if isinstance(R, Vec):
* R = R.copy() # <<<<<<<<<<<<<<
* R.reciprocal()
* self.diagonalScale(L, R)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_R, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 496, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_R, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 502, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23778,27 +24616,27 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
}
}
if (__pyx_t_6) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 496, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 502, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 496, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 502, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_R, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":497
+ /* "PETSc/petscmat.pxi":503
* if isinstance(R, Vec):
* R = R.copy()
* R.reciprocal() # <<<<<<<<<<<<<<
* self.diagonalScale(L, R)
* else:
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_R, __pyx_n_s_reciprocal); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 497, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_R, __pyx_n_s_reciprocal); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 503, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23808,16 +24646,16 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
}
}
if (__pyx_t_6) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 497, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 503, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 497, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 503, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":495
+ /* "PETSc/petscmat.pxi":501
* L = L.copy()
* L.reciprocal()
* if isinstance(R, Vec): # <<<<<<<<<<<<<<
@@ -23826,18 +24664,18 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
*/
}
- /* "PETSc/petscmat.pxi":498
+ /* "PETSc/petscmat.pxi":504
* R = R.copy()
* R.reciprocal()
* self.diagonalScale(L, R) # <<<<<<<<<<<<<<
* else:
* self.scale(other)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_diagonalScale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 498, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_diagonalScale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 504, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = NULL;
__pyx_t_8 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23847,24 +24685,42 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__pyx_t_8 = 1;
}
}
- __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 498, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- if (__pyx_t_6) {
- __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_6); __pyx_t_6 = NULL;
- }
- __Pyx_INCREF(__pyx_v_L);
- __Pyx_GIVEREF(__pyx_v_L);
- PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_v_L);
- __Pyx_INCREF(__pyx_v_R);
- __Pyx_GIVEREF(__pyx_v_R);
- PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_v_R);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_9, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 498, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_L, __pyx_v_R};
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 504, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_6, __pyx_v_L, __pyx_v_R};
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 504, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 504, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__pyx_t_6) {
+ __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_6); __pyx_t_6 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_L);
+ __Pyx_GIVEREF(__pyx_v_L);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_v_L);
+ __Pyx_INCREF(__pyx_v_R);
+ __Pyx_GIVEREF(__pyx_v_R);
+ PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_v_R);
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_9, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 504, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":490
+ /* "PETSc/petscmat.pxi":496
*
* cdef Mat mat_idiv(Mat self, other):
* if isinstance(other, (tuple, list)): # <<<<<<<<<<<<<<
@@ -23874,7 +24730,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":500
+ /* "PETSc/petscmat.pxi":506
* self.diagonalScale(L, R)
* else:
* self.scale(other) # <<<<<<<<<<<<<<
@@ -23882,10 +24738,10 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
*
*/
/*else*/ {
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_scale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 500, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_scale); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 506, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -23895,25 +24751,43 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
}
}
if (!__pyx_t_9) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 500, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 506, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 500, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = NULL;
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_other);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 500, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_other};
+ __pyx_t_5 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 506, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_9, __pyx_v_other};
+ __pyx_t_5 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 506, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_GOTREF(__pyx_t_5);
+ } else
+ #endif
+ {
+ __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 506, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = NULL;
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_other);
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 506, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__pyx_L3:;
- /* "PETSc/petscmat.pxi":501
+ /* "PETSc/petscmat.pxi":507
* else:
* self.scale(other)
* return self # <<<<<<<<<<<<<<
@@ -23925,7 +24799,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
__pyx_r = __pyx_v_self;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":489
+ /* "PETSc/petscmat.pxi":495
* return self
*
* cdef Mat mat_idiv(Mat self, other): # <<<<<<<<<<<<<<
@@ -23949,7 +24823,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_idiv(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":505
+/* "PETSc/petscmat.pxi":511
* # binary operations
*
* cdef Mat mat_add(Mat self, other): # <<<<<<<<<<<<<<
@@ -23964,7 +24838,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_add(struct PyPetscM
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("mat_add", 0);
- /* "PETSc/petscmat.pxi":506
+ /* "PETSc/petscmat.pxi":512
*
* cdef Mat mat_add(Mat self, other):
* return mat_iadd(mat_pos(self), other) # <<<<<<<<<<<<<<
@@ -23972,16 +24846,16 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_add(struct PyPetscM
* cdef Mat mat_sub(Mat self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 506, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 512, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_iadd(((struct PyPetscMatObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 506, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_iadd(((struct PyPetscMatObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 512, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":505
+ /* "PETSc/petscmat.pxi":511
* # binary operations
*
* cdef Mat mat_add(Mat self, other): # <<<<<<<<<<<<<<
@@ -24001,7 +24875,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_add(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":508
+/* "PETSc/petscmat.pxi":514
* return mat_iadd(mat_pos(self), other)
*
* cdef Mat mat_sub(Mat self, other): # <<<<<<<<<<<<<<
@@ -24016,7 +24890,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_sub(struct PyPetscM
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("mat_sub", 0);
- /* "PETSc/petscmat.pxi":509
+ /* "PETSc/petscmat.pxi":515
*
* cdef Mat mat_sub(Mat self, other):
* return mat_isub(mat_pos(self), other) # <<<<<<<<<<<<<<
@@ -24024,16 +24898,16 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_sub(struct PyPetscM
* cdef Mat mat_mul(Mat self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 509, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 515, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_isub(((struct PyPetscMatObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 509, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_isub(((struct PyPetscMatObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 515, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":508
+ /* "PETSc/petscmat.pxi":514
* return mat_iadd(mat_pos(self), other)
*
* cdef Mat mat_sub(Mat self, other): # <<<<<<<<<<<<<<
@@ -24053,7 +24927,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_sub(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":511
+/* "PETSc/petscmat.pxi":517
* return mat_isub(mat_pos(self), other)
*
* cdef Mat mat_mul(Mat self, other): # <<<<<<<<<<<<<<
@@ -24072,7 +24946,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("mat_mul", 0);
- /* "PETSc/petscmat.pxi":512
+ /* "PETSc/petscmat.pxi":518
*
* cdef Mat mat_mul(Mat self, other):
* if isinstance(other, Mat): # <<<<<<<<<<<<<<
@@ -24083,7 +24957,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":513
+ /* "PETSc/petscmat.pxi":519
* cdef Mat mat_mul(Mat self, other):
* if isinstance(other, Mat):
* return self.matMult(other) # <<<<<<<<<<<<<<
@@ -24091,10 +24965,10 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
* return mat_imul(mat_pos(self), other)
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_matMult); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 513, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_matMult); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 519, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -24104,26 +24978,44 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
}
}
if (!__pyx_t_5) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 513, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_other); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 519, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
} else {
- __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 513, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
- __Pyx_INCREF(__pyx_v_other);
- __Pyx_GIVEREF(__pyx_v_other);
- PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_other);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 513, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 519, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_5, __pyx_v_other};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 519, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ {
+ __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 519, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ __Pyx_INCREF(__pyx_v_other);
+ __Pyx_GIVEREF(__pyx_v_other);
+ PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_v_other);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 519, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(6, 513, __pyx_L1_error)
+ if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(6, 519, __pyx_L1_error)
__pyx_r = ((struct PyPetscMatObject *)__pyx_t_3);
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":512
+ /* "PETSc/petscmat.pxi":518
*
* cdef Mat mat_mul(Mat self, other):
* if isinstance(other, Mat): # <<<<<<<<<<<<<<
@@ -24132,7 +25024,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
*/
}
- /* "PETSc/petscmat.pxi":515
+ /* "PETSc/petscmat.pxi":521
* return self.matMult(other)
* else:
* return mat_imul(mat_pos(self), other) # <<<<<<<<<<<<<<
@@ -24141,9 +25033,9 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
*/
/*else*/ {
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 515, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 521, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_imul(((struct PyPetscMatObject *)__pyx_t_3), __pyx_v_other)); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 515, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_imul(((struct PyPetscMatObject *)__pyx_t_3), __pyx_v_other)); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 521, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_r = ((struct PyPetscMatObject *)__pyx_t_4);
@@ -24151,7 +25043,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":511
+ /* "PETSc/petscmat.pxi":517
* return mat_isub(mat_pos(self), other)
*
* cdef Mat mat_mul(Mat self, other): # <<<<<<<<<<<<<<
@@ -24173,7 +25065,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_mul(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":517
+/* "PETSc/petscmat.pxi":523
* return mat_imul(mat_pos(self), other)
*
* cdef Vec mat_mul_vec(Mat self, Vec other): # <<<<<<<<<<<<<<
@@ -24188,21 +25080,21 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_mat_mul_vec(struct PyPe
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
- Py_ssize_t __pyx_t_4;
+ int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("mat_mul_vec", 0);
- /* "PETSc/petscmat.pxi":518
+ /* "PETSc/petscmat.pxi":524
*
* cdef Vec mat_mul_vec(Mat self, Vec other):
* cdef Vec result = self.createVecLeft() # <<<<<<<<<<<<<<
* self.mult(other, result)
* return result
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 518, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -24212,29 +25104,29 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_mat_mul_vec(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 518, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 524, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 518, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 524, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(6, 518, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(6, 524, __pyx_L1_error)
__pyx_v_result = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":519
+ /* "PETSc/petscmat.pxi":525
* cdef Vec mat_mul_vec(Mat self, Vec other):
* cdef Vec result = self.createVecLeft()
* self.mult(other, result) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mult); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 519, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mult); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 525, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
__pyx_t_4 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -24244,24 +25136,42 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_mat_mul_vec(struct PyPe
__pyx_t_4 = 1;
}
}
- __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 519, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (__pyx_t_3) {
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, ((PyObject *)__pyx_v_other), ((PyObject *)__pyx_v_result)};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 525, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, ((PyObject *)__pyx_v_other), ((PyObject *)__pyx_v_result)};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 525, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 525, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (__pyx_t_3) {
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ }
+ __Pyx_INCREF(((PyObject *)__pyx_v_other));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_other));
+ PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, ((PyObject *)__pyx_v_other));
+ __Pyx_INCREF(((PyObject *)__pyx_v_result));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_result));
+ PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, ((PyObject *)__pyx_v_result));
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 525, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- __Pyx_INCREF(((PyObject *)__pyx_v_other));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_other));
- PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, ((PyObject *)__pyx_v_other));
- __Pyx_INCREF(((PyObject *)__pyx_v_result));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_result));
- PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, ((PyObject *)__pyx_v_result));
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 519, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":520
+ /* "PETSc/petscmat.pxi":526
* cdef Vec result = self.createVecLeft()
* self.mult(other, result)
* return result # <<<<<<<<<<<<<<
@@ -24273,7 +25183,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_mat_mul_vec(struct PyPe
__pyx_r = __pyx_v_result;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":517
+ /* "PETSc/petscmat.pxi":523
* return mat_imul(mat_pos(self), other)
*
* cdef Vec mat_mul_vec(Mat self, Vec other): # <<<<<<<<<<<<<<
@@ -24296,7 +25206,7 @@ static struct PyPetscVecObject *__pyx_f_8petsc4py_5PETSc_mat_mul_vec(struct PyPe
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":522
+/* "PETSc/petscmat.pxi":528
* return result
*
* cdef Mat mat_div(Mat self, other): # <<<<<<<<<<<<<<
@@ -24311,7 +25221,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_div(struct PyPetscM
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("mat_div", 0);
- /* "PETSc/petscmat.pxi":523
+ /* "PETSc/petscmat.pxi":529
*
* cdef Mat mat_div(Mat self, other):
* return mat_idiv(mat_pos(self), other) # <<<<<<<<<<<<<<
@@ -24319,16 +25229,16 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_div(struct PyPetscM
* # reflected binary operations
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 523, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 529, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_idiv(((struct PyPetscMatObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 523, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_idiv(((struct PyPetscMatObject *)__pyx_t_1), __pyx_v_other)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 529, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":522
+ /* "PETSc/petscmat.pxi":528
* return result
*
* cdef Mat mat_div(Mat self, other): # <<<<<<<<<<<<<<
@@ -24348,7 +25258,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_div(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":527
+/* "PETSc/petscmat.pxi":533
* # reflected binary operations
*
* cdef Mat mat_radd(Mat self, other): # <<<<<<<<<<<<<<
@@ -24362,7 +25272,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_radd(struct PyPetsc
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("mat_radd", 0);
- /* "PETSc/petscmat.pxi":528
+ /* "PETSc/petscmat.pxi":534
*
* cdef Mat mat_radd(Mat self, other):
* return mat_add(self, other) # <<<<<<<<<<<<<<
@@ -24370,13 +25280,13 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_radd(struct PyPetsc
* cdef Mat mat_rsub(Mat self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_add(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 528, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_add(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 534, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":527
+ /* "PETSc/petscmat.pxi":533
* # reflected binary operations
*
* cdef Mat mat_radd(Mat self, other): # <<<<<<<<<<<<<<
@@ -24395,7 +25305,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_radd(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":530
+/* "PETSc/petscmat.pxi":536
* return mat_add(self, other)
*
* cdef Mat mat_rsub(Mat self, other): # <<<<<<<<<<<<<<
@@ -24411,14 +25321,14 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rsub(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("mat_rsub", 0);
- /* "PETSc/petscmat.pxi":531
+ /* "PETSc/petscmat.pxi":537
*
* cdef Mat mat_rsub(Mat self, other):
* cdef Mat mat = <Mat> mat_sub(self, other) # <<<<<<<<<<<<<<
* mat.scale(-1)
* return mat
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_sub(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 531, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_sub(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -24426,21 +25336,21 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rsub(struct PyPetsc
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":532
+ /* "PETSc/petscmat.pxi":538
* cdef Mat mat_rsub(Mat self, other):
* cdef Mat mat = <Mat> mat_sub(self, other)
* mat.scale(-1) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_mat), __pyx_n_s_scale); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 532, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_mat), __pyx_n_s_scale); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 538, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__19, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 532, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__19, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 538, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":533
+ /* "PETSc/petscmat.pxi":539
* cdef Mat mat = <Mat> mat_sub(self, other)
* mat.scale(-1)
* return mat # <<<<<<<<<<<<<<
@@ -24452,7 +25362,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rsub(struct PyPetsc
__pyx_r = __pyx_v_mat;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":530
+ /* "PETSc/petscmat.pxi":536
* return mat_add(self, other)
*
* cdef Mat mat_rsub(Mat self, other): # <<<<<<<<<<<<<<
@@ -24473,7 +25383,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rsub(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":535
+/* "PETSc/petscmat.pxi":541
* return mat
*
* cdef Mat mat_rmul(Mat self, other): # <<<<<<<<<<<<<<
@@ -24487,7 +25397,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rmul(struct PyPetsc
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("mat_rmul", 0);
- /* "PETSc/petscmat.pxi":536
+ /* "PETSc/petscmat.pxi":542
*
* cdef Mat mat_rmul(Mat self, other):
* return mat_mul(self, other) # <<<<<<<<<<<<<<
@@ -24495,13 +25405,13 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rmul(struct PyPetsc
* cdef Mat mat_rdiv(Mat self, other):
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_mul(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 536, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_mul(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 542, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":535
+ /* "PETSc/petscmat.pxi":541
* return mat
*
* cdef Mat mat_rmul(Mat self, other): # <<<<<<<<<<<<<<
@@ -24520,7 +25430,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rmul(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":538
+/* "PETSc/petscmat.pxi":544
* return mat_mul(self, other)
*
* cdef Mat mat_rdiv(Mat self, other): # <<<<<<<<<<<<<<
@@ -24533,7 +25443,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rdiv(struct PyPetsc
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("mat_rdiv", 0);
- /* "PETSc/petscmat.pxi":539
+ /* "PETSc/petscmat.pxi":545
*
* cdef Mat mat_rdiv(Mat self, other):
* <void>self; <void>other; # unused # <<<<<<<<<<<<<<
@@ -24543,7 +25453,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rdiv(struct PyPetsc
((void)__pyx_v_self);
((void)__pyx_v_other);
- /* "PETSc/petscmat.pxi":540
+ /* "PETSc/petscmat.pxi":546
* cdef Mat mat_rdiv(Mat self, other):
* <void>self; <void>other; # unused
* raise NotImplementedError # <<<<<<<<<<<<<<
@@ -24551,9 +25461,9 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rdiv(struct PyPetsc
* # -----------------------------------------------------------------------------
*/
__Pyx_Raise(__pyx_builtin_NotImplementedError, 0, 0, 0);
- __PYX_ERR(6, 540, __pyx_L1_error)
+ __PYX_ERR(6, 546, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":538
+ /* "PETSc/petscmat.pxi":544
* return mat_mul(self, other)
*
* cdef Mat mat_rdiv(Mat self, other): # <<<<<<<<<<<<<<
@@ -24570,7 +25480,7 @@ static struct PyPetscMatObject *__pyx_f_8petsc4py_5PETSc_mat_rdiv(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":544
+/* "PETSc/petscmat.pxi":550
* # -----------------------------------------------------------------------------
*
* cdef inline PetscMatStructure matstructure(object structure) \ # <<<<<<<<<<<<<<
@@ -24586,7 +25496,7 @@ static CYTHON_INLINE MatStructure __pyx_f_8petsc4py_5PETSc_matstructure(PyObject
MatStructure __pyx_t_3;
__Pyx_RefNannySetupContext("matstructure", 0);
- /* "PETSc/petscmat.pxi":546
+ /* "PETSc/petscmat.pxi":552
* cdef inline PetscMatStructure matstructure(object structure) \
* except <PetscMatStructure>(-1):
* if structure is None: return MAT_DIFFERENT_NONZERO_PATTERN # <<<<<<<<<<<<<<
@@ -24600,7 +25510,7 @@ static CYTHON_INLINE MatStructure __pyx_f_8petsc4py_5PETSc_matstructure(PyObject
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":547
+ /* "PETSc/petscmat.pxi":553
* except <PetscMatStructure>(-1):
* if structure is None: return MAT_DIFFERENT_NONZERO_PATTERN
* elif structure is False: return MAT_DIFFERENT_NONZERO_PATTERN # <<<<<<<<<<<<<<
@@ -24614,7 +25524,7 @@ static CYTHON_INLINE MatStructure __pyx_f_8petsc4py_5PETSc_matstructure(PyObject
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":548
+ /* "PETSc/petscmat.pxi":554
* if structure is None: return MAT_DIFFERENT_NONZERO_PATTERN
* elif structure is False: return MAT_DIFFERENT_NONZERO_PATTERN
* elif structure is True: return MAT_SAME_NONZERO_PATTERN # <<<<<<<<<<<<<<
@@ -24628,7 +25538,7 @@ static CYTHON_INLINE MatStructure __pyx_f_8petsc4py_5PETSc_matstructure(PyObject
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":549
+ /* "PETSc/petscmat.pxi":555
* elif structure is False: return MAT_DIFFERENT_NONZERO_PATTERN
* elif structure is True: return MAT_SAME_NONZERO_PATTERN
* else: return structure # <<<<<<<<<<<<<<
@@ -24636,12 +25546,12 @@ static CYTHON_INLINE MatStructure __pyx_f_8petsc4py_5PETSc_matstructure(PyObject
* cdef inline PetscMatAssemblyType assemblytype(object assembly) \
*/
/*else*/ {
- __pyx_t_3 = ((MatStructure)__Pyx_PyInt_As_MatStructure(__pyx_v_structure)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 549, __pyx_L1_error)
+ __pyx_t_3 = ((MatStructure)__Pyx_PyInt_As_MatStructure(__pyx_v_structure)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 555, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":544
+ /* "PETSc/petscmat.pxi":550
* # -----------------------------------------------------------------------------
*
* cdef inline PetscMatStructure matstructure(object structure) \ # <<<<<<<<<<<<<<
@@ -24658,7 +25568,7 @@ static CYTHON_INLINE MatStructure __pyx_f_8petsc4py_5PETSc_matstructure(PyObject
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":551
+/* "PETSc/petscmat.pxi":557
* else: return structure
*
* cdef inline PetscMatAssemblyType assemblytype(object assembly) \ # <<<<<<<<<<<<<<
@@ -24674,7 +25584,7 @@ static CYTHON_INLINE MatAssemblyType __pyx_f_8petsc4py_5PETSc_assemblytype(PyObj
MatAssemblyType __pyx_t_3;
__Pyx_RefNannySetupContext("assemblytype", 0);
- /* "PETSc/petscmat.pxi":553
+ /* "PETSc/petscmat.pxi":559
* cdef inline PetscMatAssemblyType assemblytype(object assembly) \
* except <PetscMatAssemblyType>(-1):
* if assembly is None: return MAT_FINAL_ASSEMBLY # <<<<<<<<<<<<<<
@@ -24688,7 +25598,7 @@ static CYTHON_INLINE MatAssemblyType __pyx_f_8petsc4py_5PETSc_assemblytype(PyObj
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":554
+ /* "PETSc/petscmat.pxi":560
* except <PetscMatAssemblyType>(-1):
* if assembly is None: return MAT_FINAL_ASSEMBLY
* elif assembly is False: return MAT_FINAL_ASSEMBLY # <<<<<<<<<<<<<<
@@ -24702,7 +25612,7 @@ static CYTHON_INLINE MatAssemblyType __pyx_f_8petsc4py_5PETSc_assemblytype(PyObj
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":555
+ /* "PETSc/petscmat.pxi":561
* if assembly is None: return MAT_FINAL_ASSEMBLY
* elif assembly is False: return MAT_FINAL_ASSEMBLY
* elif assembly is True: return MAT_FLUSH_ASSEMBLY # <<<<<<<<<<<<<<
@@ -24716,7 +25626,7 @@ static CYTHON_INLINE MatAssemblyType __pyx_f_8petsc4py_5PETSc_assemblytype(PyObj
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":556
+ /* "PETSc/petscmat.pxi":562
* elif assembly is False: return MAT_FINAL_ASSEMBLY
* elif assembly is True: return MAT_FLUSH_ASSEMBLY
* else: return assembly # <<<<<<<<<<<<<<
@@ -24724,12 +25634,12 @@ static CYTHON_INLINE MatAssemblyType __pyx_f_8petsc4py_5PETSc_assemblytype(PyObj
* cdef inline PetscMatInfoType infotype(object info) \
*/
/*else*/ {
- __pyx_t_3 = ((MatAssemblyType)__Pyx_PyInt_As_MatAssemblyType(__pyx_v_assembly)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 556, __pyx_L1_error)
+ __pyx_t_3 = ((MatAssemblyType)__Pyx_PyInt_As_MatAssemblyType(__pyx_v_assembly)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 562, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":551
+ /* "PETSc/petscmat.pxi":557
* else: return structure
*
* cdef inline PetscMatAssemblyType assemblytype(object assembly) \ # <<<<<<<<<<<<<<
@@ -24746,7 +25656,7 @@ static CYTHON_INLINE MatAssemblyType __pyx_f_8petsc4py_5PETSc_assemblytype(PyObj
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":558
+/* "PETSc/petscmat.pxi":564
* else: return assembly
*
* cdef inline PetscMatInfoType infotype(object info) \ # <<<<<<<<<<<<<<
@@ -24762,7 +25672,7 @@ static CYTHON_INLINE MatInfoType __pyx_f_8petsc4py_5PETSc_infotype(PyObject *__p
MatInfoType __pyx_t_3;
__Pyx_RefNannySetupContext("infotype", 0);
- /* "PETSc/petscmat.pxi":560
+ /* "PETSc/petscmat.pxi":566
* cdef inline PetscMatInfoType infotype(object info) \
* except <PetscMatInfoType>(-1):
* if info is None: return MAT_GLOBAL_SUM # <<<<<<<<<<<<<<
@@ -24776,7 +25686,7 @@ static CYTHON_INLINE MatInfoType __pyx_f_8petsc4py_5PETSc_infotype(PyObject *__p
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":561
+ /* "PETSc/petscmat.pxi":567
* except <PetscMatInfoType>(-1):
* if info is None: return MAT_GLOBAL_SUM
* else: return info # <<<<<<<<<<<<<<
@@ -24784,12 +25694,12 @@ static CYTHON_INLINE MatInfoType __pyx_f_8petsc4py_5PETSc_infotype(PyObject *__p
* # -----------------------------------------------------------------------------
*/
/*else*/ {
- __pyx_t_3 = ((MatInfoType)__Pyx_PyInt_As_MatInfoType(__pyx_v_info)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 561, __pyx_L1_error)
+ __pyx_t_3 = ((MatInfoType)__Pyx_PyInt_As_MatInfoType(__pyx_v_info)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 567, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":558
+ /* "PETSc/petscmat.pxi":564
* else: return assembly
*
* cdef inline PetscMatInfoType infotype(object info) \ # <<<<<<<<<<<<<<
@@ -24806,7 +25716,7 @@ static CYTHON_INLINE MatInfoType __pyx_f_8petsc4py_5PETSc_infotype(PyObject *__p
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":565
+/* "PETSc/petscmat.pxi":571
* # -----------------------------------------------------------------------------
*
* cdef inline int Mat_Sizes( # <<<<<<<<<<<<<<
@@ -24831,7 +25741,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
int __pyx_t_8;
__Pyx_RefNannySetupContext("Mat_Sizes", 0);
- /* "PETSc/petscmat.pxi":573
+ /* "PETSc/petscmat.pxi":579
* # unpack row and column sizes
* cdef object rsize, csize
* try: # <<<<<<<<<<<<<<
@@ -24847,7 +25757,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__Pyx_XGOTREF(__pyx_t_3);
/*try:*/ {
- /* "PETSc/petscmat.pxi":574
+ /* "PETSc/petscmat.pxi":580
* cdef object rsize, csize
* try:
* rsize , csize = size # <<<<<<<<<<<<<<
@@ -24856,7 +25766,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
*/
if ((likely(PyTuple_CheckExact(__pyx_v_size))) || (PyList_CheckExact(__pyx_v_size))) {
PyObject* sequence = __pyx_v_size;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -24864,9 +25774,9 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 574, __pyx_L3_error)
+ __PYX_ERR(6, 580, __pyx_L3_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -24877,37 +25787,37 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 574, __pyx_L3_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 580, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 574, __pyx_L3_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 580, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 574, __pyx_L3_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 580, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
- index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L11_unpacking_failed;
+ index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L9_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed;
+ index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L9_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(6, 574, __pyx_L3_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(6, 580, __pyx_L3_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- goto __pyx_L12_unpacking_done;
- __pyx_L11_unpacking_failed:;
+ goto __pyx_L10_unpacking_done;
+ __pyx_L9_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 574, __pyx_L3_error)
- __pyx_L12_unpacking_done:;
+ __PYX_ERR(6, 580, __pyx_L3_error)
+ __pyx_L10_unpacking_done:;
}
__pyx_v_rsize = __pyx_t_4;
__pyx_t_4 = 0;
__pyx_v_csize = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":573
+ /* "PETSc/petscmat.pxi":579
* # unpack row and column sizes
* cdef object rsize, csize
* try: # <<<<<<<<<<<<<<
@@ -24918,14 +25828,13 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- goto __pyx_L10_try_end;
+ goto __pyx_L8_try_end;
__pyx_L3_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":575
+ /* "PETSc/petscmat.pxi":581
* try:
* rsize , csize = size
* except (TypeError, ValueError): # <<<<<<<<<<<<<<
@@ -24935,12 +25844,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError) || __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError);
if (__pyx_t_8) {
__Pyx_AddTraceback("petsc4py.PETSc.Mat_Sizes", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_6) < 0) __PYX_ERR(6, 575, __pyx_L5_except_error)
+ if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_6) < 0) __PYX_ERR(6, 581, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_6);
- /* "PETSc/petscmat.pxi":576
+ /* "PETSc/petscmat.pxi":582
* rsize , csize = size
* except (TypeError, ValueError):
* rsize = csize = size # <<<<<<<<<<<<<<
@@ -24959,29 +25868,27 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
goto __pyx_L5_except_error;
__pyx_L5_except_error:;
- /* "PETSc/petscmat.pxi":573
+ /* "PETSc/petscmat.pxi":579
* # unpack row and column sizes
* cdef object rsize, csize
* try: # <<<<<<<<<<<<<<
* rsize , csize = size
* except (TypeError, ValueError):
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
goto __pyx_L1_error;
__pyx_L4_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
- __pyx_L10_try_end:;
+ __pyx_L8_try_end:;
}
- /* "PETSc/petscmat.pxi":579
+ /* "PETSc/petscmat.pxi":585
* # unpack row and column block sizes
* cdef object rbsize, cbsize
* try: # <<<<<<<<<<<<<<
@@ -24997,7 +25904,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__Pyx_XGOTREF(__pyx_t_1);
/*try:*/ {
- /* "PETSc/petscmat.pxi":580
+ /* "PETSc/petscmat.pxi":586
* cdef object rbsize, cbsize
* try:
* rbsize , cbsize = bsize # <<<<<<<<<<<<<<
@@ -25006,7 +25913,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
*/
if ((likely(PyTuple_CheckExact(__pyx_v_bsize))) || (PyList_CheckExact(__pyx_v_bsize))) {
PyObject* sequence = __pyx_v_bsize;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -25014,9 +25921,9 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 580, __pyx_L15_error)
+ __PYX_ERR(6, 586, __pyx_L13_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
@@ -25027,37 +25934,37 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 580, __pyx_L15_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 586, __pyx_L13_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 580, __pyx_L15_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 586, __pyx_L13_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_v_bsize); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 580, __pyx_L15_error)
+ __pyx_t_5 = PyObject_GetIter(__pyx_v_bsize); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 586, __pyx_L13_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
- index = 0; __pyx_t_6 = __pyx_t_7(__pyx_t_5); if (unlikely(!__pyx_t_6)) goto __pyx_L23_unpacking_failed;
+ index = 0; __pyx_t_6 = __pyx_t_7(__pyx_t_5); if (unlikely(!__pyx_t_6)) goto __pyx_L19_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L23_unpacking_failed;
+ index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L19_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_5), 2) < 0) __PYX_ERR(6, 580, __pyx_L15_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_5), 2) < 0) __PYX_ERR(6, 586, __pyx_L13_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- goto __pyx_L24_unpacking_done;
- __pyx_L23_unpacking_failed:;
+ goto __pyx_L20_unpacking_done;
+ __pyx_L19_unpacking_failed:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 580, __pyx_L15_error)
- __pyx_L24_unpacking_done:;
+ __PYX_ERR(6, 586, __pyx_L13_error)
+ __pyx_L20_unpacking_done:;
}
__pyx_v_rbsize = __pyx_t_6;
__pyx_t_6 = 0;
__pyx_v_cbsize = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":579
+ /* "PETSc/petscmat.pxi":585
* # unpack row and column block sizes
* cdef object rbsize, cbsize
* try: # <<<<<<<<<<<<<<
@@ -25068,14 +25975,13 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- goto __pyx_L22_try_end;
- __pyx_L15_error:;
- __Pyx_PyThreadState_assign
+ goto __pyx_L18_try_end;
+ __pyx_L13_error:;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":581
+ /* "PETSc/petscmat.pxi":587
* try:
* rbsize , cbsize = bsize
* except (TypeError, ValueError): # <<<<<<<<<<<<<<
@@ -25085,12 +25991,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError) || __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError);
if (__pyx_t_8) {
__Pyx_AddTraceback("petsc4py.PETSc.Mat_Sizes", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(6, 581, __pyx_L17_except_error)
+ if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(6, 587, __pyx_L15_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_5);
- /* "PETSc/petscmat.pxi":582
+ /* "PETSc/petscmat.pxi":588
* rbsize , cbsize = bsize
* except (TypeError, ValueError):
* rbsize = cbsize = bsize # <<<<<<<<<<<<<<
@@ -25104,52 +26010,50 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- goto __pyx_L16_exception_handled;
+ goto __pyx_L14_exception_handled;
}
- goto __pyx_L17_except_error;
- __pyx_L17_except_error:;
+ goto __pyx_L15_except_error;
+ __pyx_L15_except_error:;
- /* "PETSc/petscmat.pxi":579
+ /* "PETSc/petscmat.pxi":585
* # unpack row and column block sizes
* cdef object rbsize, cbsize
* try: # <<<<<<<<<<<<<<
* rbsize , cbsize = bsize
* except (TypeError, ValueError):
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_ExceptionReset(__pyx_t_3, __pyx_t_2, __pyx_t_1);
goto __pyx_L1_error;
- __pyx_L16_exception_handled:;
- __Pyx_PyThreadState_assign
+ __pyx_L14_exception_handled:;
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_ExceptionReset(__pyx_t_3, __pyx_t_2, __pyx_t_1);
- __pyx_L22_try_end:;
+ __pyx_L18_try_end:;
}
- /* "PETSc/petscmat.pxi":584
+ /* "PETSc/petscmat.pxi":590
* rbsize = cbsize = bsize
* # split row and column sizes
* Sys_Sizes(rsize, rbsize, r, m, M) # <<<<<<<<<<<<<<
* Sys_Sizes(csize, cbsize, c, n, N)
* return 0
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_rsize, __pyx_v_rbsize, __pyx_v_r, __pyx_v_m, __pyx_v_M); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(6, 584, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_rsize, __pyx_v_rbsize, __pyx_v_r, __pyx_v_m, __pyx_v_M); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(6, 590, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":585
+ /* "PETSc/petscmat.pxi":591
* # split row and column sizes
* Sys_Sizes(rsize, rbsize, r, m, M)
* Sys_Sizes(csize, cbsize, c, n, N) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_csize, __pyx_v_cbsize, __pyx_v_c, __pyx_v_n, __pyx_v_N); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(6, 585, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_csize, __pyx_v_cbsize, __pyx_v_c, __pyx_v_n, __pyx_v_N); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(6, 591, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":586
+ /* "PETSc/petscmat.pxi":592
* Sys_Sizes(rsize, rbsize, r, m, M)
* Sys_Sizes(csize, cbsize, c, n, N)
* return 0 # <<<<<<<<<<<<<<
@@ -25159,7 +26063,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":565
+ /* "PETSc/petscmat.pxi":571
* # -----------------------------------------------------------------------------
*
* cdef inline int Mat_Sizes( # <<<<<<<<<<<<<<
@@ -25183,7 +26087,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Sizes(PyObject *__pyx_v_si
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":588
+/* "PETSc/petscmat.pxi":594
* return 0
*
* cdef inline int Mat_Create( # <<<<<<<<<<<<<<
@@ -25207,17 +26111,17 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
int __pyx_t_3;
__Pyx_RefNannySetupContext("Mat_Create", 0);
- /* "PETSc/petscmat.pxi":596
+ /* "PETSc/petscmat.pxi":602
* ) except -1:
* # communicator
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* # sizes and block sizes
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 596, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 602, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/petscmat.pxi":598
+ /* "PETSc/petscmat.pxi":604
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* # sizes and block sizes
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0 # <<<<<<<<<<<<<<
@@ -25231,16 +26135,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
__pyx_v_M = 0;
__pyx_v_N = 0;
- /* "PETSc/petscmat.pxi":599
+ /* "PETSc/petscmat.pxi":605
* # sizes and block sizes
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N) # <<<<<<<<<<<<<<
* if rbs == PETSC_DECIDE: rbs = 1
* if cbs == PETSC_DECIDE: cbs = rbs
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 599, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 605, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":600
+ /* "PETSc/petscmat.pxi":606
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N)
* if rbs == PETSC_DECIDE: rbs = 1 # <<<<<<<<<<<<<<
@@ -25252,7 +26156,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
__pyx_v_rbs = 1;
}
- /* "PETSc/petscmat.pxi":601
+ /* "PETSc/petscmat.pxi":607
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N)
* if rbs == PETSC_DECIDE: rbs = 1
* if cbs == PETSC_DECIDE: cbs = rbs # <<<<<<<<<<<<<<
@@ -25264,25 +26168,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
__pyx_v_cbs = __pyx_v_rbs;
}
- /* "PETSc/petscmat.pxi":602
+ /* "PETSc/petscmat.pxi":608
* if rbs == PETSC_DECIDE: rbs = 1
* if cbs == PETSC_DECIDE: cbs = rbs
* Sys_Layout(ccomm, rbs, &m, &M) # <<<<<<<<<<<<<<
* Sys_Layout(ccomm, cbs, &n, &N)
* # create matrix and set sizes
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_rbs, (&__pyx_v_m), (&__pyx_v_M)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 602, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_rbs, (&__pyx_v_m), (&__pyx_v_M)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 608, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":603
+ /* "PETSc/petscmat.pxi":609
* if cbs == PETSC_DECIDE: cbs = rbs
* Sys_Layout(ccomm, rbs, &m, &M)
* Sys_Layout(ccomm, cbs, &n, &N) # <<<<<<<<<<<<<<
* # create matrix and set sizes
* cdef PetscMat mat = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_cbs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 603, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_cbs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 609, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":605
+ /* "PETSc/petscmat.pxi":611
* Sys_Layout(ccomm, cbs, &n, &N)
* # create matrix and set sizes
* cdef PetscMat mat = NULL # <<<<<<<<<<<<<<
@@ -25291,43 +26195,43 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
*/
__pyx_v_mat = NULL;
- /* "PETSc/petscmat.pxi":606
+ /* "PETSc/petscmat.pxi":612
* # create matrix and set sizes
* cdef PetscMat mat = NULL
* CHKERR( MatCreate(ccomm, &mat) ) # <<<<<<<<<<<<<<
* CHKERR( MatSetSizes(mat, m, n, M, N) )
* CHKERR( MatSetBlockSizes(mat, rbs, cbs) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_ccomm, (&__pyx_v_mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 606, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_ccomm, (&__pyx_v_mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 612, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":607
+ /* "PETSc/petscmat.pxi":613
* cdef PetscMat mat = NULL
* CHKERR( MatCreate(ccomm, &mat) )
* CHKERR( MatSetSizes(mat, m, n, M, N) ) # <<<<<<<<<<<<<<
* CHKERR( MatSetBlockSizes(mat, rbs, cbs) )
* CHKERR( MatSetType(mat, mtype) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetSizes(__pyx_v_mat, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 607, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetSizes(__pyx_v_mat, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 613, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":608
+ /* "PETSc/petscmat.pxi":614
* CHKERR( MatCreate(ccomm, &mat) )
* CHKERR( MatSetSizes(mat, m, n, M, N) )
* CHKERR( MatSetBlockSizes(mat, rbs, cbs) ) # <<<<<<<<<<<<<<
* CHKERR( MatSetType(mat, mtype) )
* A[0] = mat
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSizes(__pyx_v_mat, __pyx_v_rbs, __pyx_v_cbs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 608, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSizes(__pyx_v_mat, __pyx_v_rbs, __pyx_v_cbs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 614, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":609
+ /* "PETSc/petscmat.pxi":615
* CHKERR( MatSetSizes(mat, m, n, M, N) )
* CHKERR( MatSetBlockSizes(mat, rbs, cbs) )
* CHKERR( MatSetType(mat, mtype) ) # <<<<<<<<<<<<<<
* A[0] = mat
* return 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetType(__pyx_v_mat, __pyx_v_mtype)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 609, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetType(__pyx_v_mat, __pyx_v_mtype)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 615, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":610
+ /* "PETSc/petscmat.pxi":616
* CHKERR( MatSetBlockSizes(mat, rbs, cbs) )
* CHKERR( MatSetType(mat, mtype) )
* A[0] = mat # <<<<<<<<<<<<<<
@@ -25336,7 +26240,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
*/
(__pyx_v_A[0]) = __pyx_v_mat;
- /* "PETSc/petscmat.pxi":611
+ /* "PETSc/petscmat.pxi":617
* CHKERR( MatSetType(mat, mtype) )
* A[0] = mat
* return 0 # <<<<<<<<<<<<<<
@@ -25346,7 +26250,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":588
+ /* "PETSc/petscmat.pxi":594
* return 0
*
* cdef inline int Mat_Create( # <<<<<<<<<<<<<<
@@ -25363,7 +26267,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_Create(const char* __pyx_v
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":613
+/* "PETSc/petscmat.pxi":619
* return 0
*
* cdef inline int Mat_AllocAIJ_NNZ( PetscMat A, object NNZ) except -1: # <<<<<<<<<<<<<<
@@ -25401,7 +26305,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
PyObject *__pyx_t_12 = NULL;
__Pyx_RefNannySetupContext("Mat_AllocAIJ_NNZ", 0);
- /* "PETSc/petscmat.pxi":615
+ /* "PETSc/petscmat.pxi":621
* cdef inline int Mat_AllocAIJ_NNZ( PetscMat A, object NNZ) except -1:
* #
* cdef PetscBool aij=PETSC_FALSE, baij=PETSC_FALSE, sbaij=PETSC_FALSE # <<<<<<<<<<<<<<
@@ -25412,16 +26316,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_v_baij = PETSC_FALSE;
__pyx_v_sbaij = PETSC_FALSE;
- /* "PETSc/petscmat.pxi":616
+ /* "PETSc/petscmat.pxi":622
* #
* cdef PetscBool aij=PETSC_FALSE, baij=PETSC_FALSE, sbaij=PETSC_FALSE
* CHKERR( MatHasPreallocationAIJ(A, &aij, &baij, &sbaij)) # <<<<<<<<<<<<<<
* # local row size and block size
* cdef PetscInt m=0, bs=1
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatHasPreallocationAIJ(__pyx_v_A, (&__pyx_v_aij), (&__pyx_v_baij), (&__pyx_v_sbaij))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 616, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatHasPreallocationAIJ(__pyx_v_A, (&__pyx_v_aij), (&__pyx_v_baij), (&__pyx_v_sbaij))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 622, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":618
+ /* "PETSc/petscmat.pxi":624
* CHKERR( MatHasPreallocationAIJ(A, &aij, &baij, &sbaij))
* # local row size and block size
* cdef PetscInt m=0, bs=1 # <<<<<<<<<<<<<<
@@ -25431,16 +26335,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_v_m = 0;
__pyx_v_bs = 1;
- /* "PETSc/petscmat.pxi":619
+ /* "PETSc/petscmat.pxi":625
* # local row size and block size
* cdef PetscInt m=0, bs=1
* CHKERR( MatGetLocalSize(A, &m, NULL) ) # <<<<<<<<<<<<<<
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE:
* CHKERR( MatGetBlockSize(A, &bs) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_A, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 619, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_A, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 625, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":620
+ /* "PETSc/petscmat.pxi":626
* cdef PetscInt m=0, bs=1
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -25458,16 +26362,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_L4_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":621
+ /* "PETSc/petscmat.pxi":627
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE:
* CHKERR( MatGetBlockSize(A, &bs) ) # <<<<<<<<<<<<<<
* assert bs > 0, "block size not set"
* # unpack NNZ argument
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_A, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 621, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_A, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 627, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":622
+ /* "PETSc/petscmat.pxi":628
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE:
* CHKERR( MatGetBlockSize(A, &bs) )
* assert bs > 0, "block size not set" # <<<<<<<<<<<<<<
@@ -25478,12 +26382,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_bs > 0) != 0))) {
PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_block_size_not_set);
- __PYX_ERR(6, 622, __pyx_L1_error)
+ __PYX_ERR(6, 628, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscmat.pxi":620
+ /* "PETSc/petscmat.pxi":626
* cdef PetscInt m=0, bs=1
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -25492,7 +26396,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":625
+ /* "PETSc/petscmat.pxi":631
* # unpack NNZ argument
* cdef object od_nnz, oo_nnz
* try: # <<<<<<<<<<<<<<
@@ -25508,7 +26412,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__Pyx_XGOTREF(__pyx_t_6);
/*try:*/ {
- /* "PETSc/petscmat.pxi":626
+ /* "PETSc/petscmat.pxi":632
* cdef object od_nnz, oo_nnz
* try:
* od_nnz, oo_nnz = NNZ # <<<<<<<<<<<<<<
@@ -25517,7 +26421,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
if ((likely(PyTuple_CheckExact(__pyx_v_NNZ))) || (PyList_CheckExact(__pyx_v_NNZ))) {
PyObject* sequence = __pyx_v_NNZ;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -25525,9 +26429,9 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 626, __pyx_L6_error)
+ __PYX_ERR(6, 632, __pyx_L6_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -25538,37 +26442,37 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 626, __pyx_L6_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 632, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 626, __pyx_L6_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 632, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_9 = PyObject_GetIter(__pyx_v_NNZ); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 626, __pyx_L6_error)
+ __pyx_t_9 = PyObject_GetIter(__pyx_v_NNZ); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 632, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext;
- index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L14_unpacking_failed;
+ index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L14_unpacking_failed;
+ index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) __PYX_ERR(6, 626, __pyx_L6_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) __PYX_ERR(6, 632, __pyx_L6_error)
__pyx_t_10 = NULL;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- goto __pyx_L15_unpacking_done;
- __pyx_L14_unpacking_failed:;
+ goto __pyx_L13_unpacking_done;
+ __pyx_L12_unpacking_failed:;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_10 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 626, __pyx_L6_error)
- __pyx_L15_unpacking_done:;
+ __PYX_ERR(6, 632, __pyx_L6_error)
+ __pyx_L13_unpacking_done:;
}
__pyx_v_od_nnz = __pyx_t_7;
__pyx_t_7 = 0;
__pyx_v_oo_nnz = __pyx_t_8;
__pyx_t_8 = 0;
- /* "PETSc/petscmat.pxi":625
+ /* "PETSc/petscmat.pxi":631
* # unpack NNZ argument
* cdef object od_nnz, oo_nnz
* try: # <<<<<<<<<<<<<<
@@ -25579,14 +26483,13 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- goto __pyx_L13_try_end;
+ goto __pyx_L11_try_end;
__pyx_L6_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/petscmat.pxi":627
+ /* "PETSc/petscmat.pxi":633
* try:
* od_nnz, oo_nnz = NNZ
* except (TypeError, ValueError): # <<<<<<<<<<<<<<
@@ -25596,12 +26499,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_1 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError) || __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError);
if (__pyx_t_1) {
__Pyx_AddTraceback("petsc4py.PETSc.Mat_AllocAIJ_NNZ", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_9) < 0) __PYX_ERR(6, 627, __pyx_L8_except_error)
+ if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_9) < 0) __PYX_ERR(6, 633, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_9);
- /* "PETSc/petscmat.pxi":628
+ /* "PETSc/petscmat.pxi":634
* od_nnz, oo_nnz = NNZ
* except (TypeError, ValueError):
* od_nnz, oo_nnz = NNZ, None # <<<<<<<<<<<<<<
@@ -25624,29 +26527,27 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
goto __pyx_L8_except_error;
__pyx_L8_except_error:;
- /* "PETSc/petscmat.pxi":625
+ /* "PETSc/petscmat.pxi":631
* # unpack NNZ argument
* cdef object od_nnz, oo_nnz
* try: # <<<<<<<<<<<<<<
* od_nnz, oo_nnz = NNZ
* except (TypeError, ValueError):
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
goto __pyx_L1_error;
__pyx_L7_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
- __pyx_L13_try_end:;
+ __pyx_L11_try_end:;
}
- /* "PETSc/petscmat.pxi":630
+ /* "PETSc/petscmat.pxi":636
* od_nnz, oo_nnz = NNZ, None
* # diagonal and off-diagonal number of nonzeros
* cdef PetscInt d_nz=PETSC_DECIDE, d_n=0, *d_nnz=NULL # <<<<<<<<<<<<<<
@@ -25657,7 +26558,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_v_d_n = 0;
__pyx_v_d_nnz = NULL;
- /* "PETSc/petscmat.pxi":631
+ /* "PETSc/petscmat.pxi":637
* # diagonal and off-diagonal number of nonzeros
* cdef PetscInt d_nz=PETSC_DECIDE, d_n=0, *d_nnz=NULL
* if od_nnz is not None: # <<<<<<<<<<<<<<
@@ -25668,46 +26569,47 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":632
+ /* "PETSc/petscmat.pxi":638
* cdef PetscInt d_nz=PETSC_DECIDE, d_n=0, *d_nnz=NULL
* if od_nnz is not None:
* od_nnz = iarray_i(od_nnz, &d_n, &d_nnz) # <<<<<<<<<<<<<<
* if d_n == 0: d_nnz = NULL # just in case
* elif d_n == 1: d_nz = d_nnz[0]; d_n=0; d_nnz = NULL
*/
- __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_od_nnz, (&__pyx_v_d_n), (&__pyx_v_d_nnz))); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 632, __pyx_L1_error)
+ __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_od_nnz, (&__pyx_v_d_n), (&__pyx_v_d_nnz))); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 638, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF_SET(__pyx_v_od_nnz, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":633
+ /* "PETSc/petscmat.pxi":639
* if od_nnz is not None:
* od_nnz = iarray_i(od_nnz, &d_n, &d_nnz)
* if d_n == 0: d_nnz = NULL # just in case # <<<<<<<<<<<<<<
* elif d_n == 1: d_nz = d_nnz[0]; d_n=0; d_nnz = NULL
* cdef PetscInt o_nz=PETSC_DECIDE, o_n=0, *o_nnz=NULL
*/
- switch (__pyx_v_d_n) {
- case 0:
+ __pyx_t_3 = ((__pyx_v_d_n == 0) != 0);
+ if (__pyx_t_3) {
__pyx_v_d_nnz = NULL;
- break;
+ goto __pyx_L17;
+ }
- /* "PETSc/petscmat.pxi":634
+ /* "PETSc/petscmat.pxi":640
* od_nnz = iarray_i(od_nnz, &d_n, &d_nnz)
* if d_n == 0: d_nnz = NULL # just in case
* elif d_n == 1: d_nz = d_nnz[0]; d_n=0; d_nnz = NULL # <<<<<<<<<<<<<<
* cdef PetscInt o_nz=PETSC_DECIDE, o_n=0, *o_nnz=NULL
* if oo_nnz is not None:
*/
- case 1:
+ __pyx_t_3 = ((__pyx_v_d_n == 1) != 0);
+ if (__pyx_t_3) {
__pyx_v_d_nz = (__pyx_v_d_nnz[0]);
__pyx_v_d_n = 0;
__pyx_v_d_nnz = NULL;
- break;
- default: break;
}
+ __pyx_L17:;
- /* "PETSc/petscmat.pxi":631
+ /* "PETSc/petscmat.pxi":637
* # diagonal and off-diagonal number of nonzeros
* cdef PetscInt d_nz=PETSC_DECIDE, d_n=0, *d_nnz=NULL
* if od_nnz is not None: # <<<<<<<<<<<<<<
@@ -25716,7 +26618,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":635
+ /* "PETSc/petscmat.pxi":641
* if d_n == 0: d_nnz = NULL # just in case
* elif d_n == 1: d_nz = d_nnz[0]; d_n=0; d_nnz = NULL
* cdef PetscInt o_nz=PETSC_DECIDE, o_n=0, *o_nnz=NULL # <<<<<<<<<<<<<<
@@ -25727,7 +26629,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_v_o_n = 0;
__pyx_v_o_nnz = NULL;
- /* "PETSc/petscmat.pxi":636
+ /* "PETSc/petscmat.pxi":642
* elif d_n == 1: d_nz = d_nnz[0]; d_n=0; d_nnz = NULL
* cdef PetscInt o_nz=PETSC_DECIDE, o_n=0, *o_nnz=NULL
* if oo_nnz is not None: # <<<<<<<<<<<<<<
@@ -25738,46 +26640,47 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":637
+ /* "PETSc/petscmat.pxi":643
* cdef PetscInt o_nz=PETSC_DECIDE, o_n=0, *o_nnz=NULL
* if oo_nnz is not None:
* oo_nnz = iarray_i(oo_nnz, &o_n, &o_nnz) # <<<<<<<<<<<<<<
* if o_n == 0: o_nnz = NULL # just in case
* elif o_n == 1: o_nz = o_nnz[0]; o_n=0; o_nnz = NULL
*/
- __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oo_nnz, (&__pyx_v_o_n), (&__pyx_v_o_nnz))); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 637, __pyx_L1_error)
+ __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oo_nnz, (&__pyx_v_o_n), (&__pyx_v_o_nnz))); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF_SET(__pyx_v_oo_nnz, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":638
+ /* "PETSc/petscmat.pxi":644
* if oo_nnz is not None:
* oo_nnz = iarray_i(oo_nnz, &o_n, &o_nnz)
* if o_n == 0: o_nnz = NULL # just in case # <<<<<<<<<<<<<<
* elif o_n == 1: o_nz = o_nnz[0]; o_n=0; o_nnz = NULL
* if m == PETSC_DECIDE:
*/
- switch (__pyx_v_o_n) {
- case 0:
+ __pyx_t_2 = ((__pyx_v_o_n == 0) != 0);
+ if (__pyx_t_2) {
__pyx_v_o_nnz = NULL;
- break;
+ goto __pyx_L19;
+ }
- /* "PETSc/petscmat.pxi":639
+ /* "PETSc/petscmat.pxi":645
* oo_nnz = iarray_i(oo_nnz, &o_n, &o_nnz)
* if o_n == 0: o_nnz = NULL # just in case
* elif o_n == 1: o_nz = o_nnz[0]; o_n=0; o_nnz = NULL # <<<<<<<<<<<<<<
* if m == PETSC_DECIDE:
* if d_n > 1 and d_n*bs > m: m = d_n*bs
*/
- case 1:
+ __pyx_t_2 = ((__pyx_v_o_n == 1) != 0);
+ if (__pyx_t_2) {
__pyx_v_o_nz = (__pyx_v_o_nnz[0]);
__pyx_v_o_n = 0;
__pyx_v_o_nnz = NULL;
- break;
- default: break;
}
+ __pyx_L19:;
- /* "PETSc/petscmat.pxi":636
+ /* "PETSc/petscmat.pxi":642
* elif d_n == 1: d_nz = d_nnz[0]; d_n=0; d_nnz = NULL
* cdef PetscInt o_nz=PETSC_DECIDE, o_n=0, *o_nnz=NULL
* if oo_nnz is not None: # <<<<<<<<<<<<<<
@@ -25786,7 +26689,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":640
+ /* "PETSc/petscmat.pxi":646
* if o_n == 0: o_nnz = NULL # just in case
* elif o_n == 1: o_nz = o_nnz[0]; o_n=0; o_nnz = NULL
* if m == PETSC_DECIDE: # <<<<<<<<<<<<<<
@@ -25796,7 +26699,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_2 = ((__pyx_v_m == PETSC_DECIDE) != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":641
+ /* "PETSc/petscmat.pxi":647
* elif o_n == 1: o_nz = o_nnz[0]; o_n=0; o_nnz = NULL
* if m == PETSC_DECIDE:
* if d_n > 1 and d_n*bs > m: m = d_n*bs # <<<<<<<<<<<<<<
@@ -25816,7 +26719,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_v_m = (__pyx_v_d_n * __pyx_v_bs);
}
- /* "PETSc/petscmat.pxi":642
+ /* "PETSc/petscmat.pxi":648
* if m == PETSC_DECIDE:
* if d_n > 1 and d_n*bs > m: m = d_n*bs
* if o_n > 1 and o_n*bs > m: m = o_n*bs # <<<<<<<<<<<<<<
@@ -25836,7 +26739,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_v_m = (__pyx_v_o_n * __pyx_v_bs);
}
- /* "PETSc/petscmat.pxi":640
+ /* "PETSc/petscmat.pxi":646
* if o_n == 0: o_nnz = NULL # just in case
* elif o_n == 1: o_nz = o_nnz[0]; o_n=0; o_nnz = NULL
* if m == PETSC_DECIDE: # <<<<<<<<<<<<<<
@@ -25845,7 +26748,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":644
+ /* "PETSc/petscmat.pxi":650
* if o_n > 1 and o_n*bs > m: m = o_n*bs
* # check array sizes
* if d_n > 1 and d_n*bs != m: raise ValueError( # <<<<<<<<<<<<<<
@@ -25863,18 +26766,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_L28_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":646
+ /* "PETSc/petscmat.pxi":652
* if d_n > 1 and d_n*bs != m: raise ValueError(
* "size(d_nnz) is %d, expected %d" %
* (toInt(d_n), toInt(m//bs)) ) # <<<<<<<<<<<<<<
* if o_n > 1 and o_n*bs != m: raise ValueError(
* "size(o_nnz) is %d, expected %d" %
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_d_n); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 646, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_d_n); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 652, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m / __pyx_v_bs)); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 646, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m / __pyx_v_bs)); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 652, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 646, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 652, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_9);
@@ -25883,38 +26786,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_9 = 0;
__pyx_t_7 = 0;
- /* "PETSc/petscmat.pxi":645
+ /* "PETSc/petscmat.pxi":651
* # check array sizes
* if d_n > 1 and d_n*bs != m: raise ValueError(
* "size(d_nnz) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(d_n), toInt(m//bs)) )
* if o_n > 1 and o_n*bs != m: raise ValueError(
*/
- __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_size_d_nnz_is_d_expected_d, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 645, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_size_d_nnz_is_d_expected_d, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/petscmat.pxi":644
+ /* "PETSc/petscmat.pxi":650
* if o_n > 1 and o_n*bs > m: m = o_n*bs
* # check array sizes
* if d_n > 1 and d_n*bs != m: raise ValueError( # <<<<<<<<<<<<<<
* "size(d_nnz) is %d, expected %d" %
* (toInt(d_n), toInt(m//bs)) )
*/
- __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 644, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 650, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7);
__pyx_t_7 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 644, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 650, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_Raise(__pyx_t_7, 0, 0, 0);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __PYX_ERR(6, 644, __pyx_L1_error)
+ __PYX_ERR(6, 650, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":647
+ /* "PETSc/petscmat.pxi":653
* "size(d_nnz) is %d, expected %d" %
* (toInt(d_n), toInt(m//bs)) )
* if o_n > 1 and o_n*bs != m: raise ValueError( # <<<<<<<<<<<<<<
@@ -25932,18 +26835,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_L31_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":649
+ /* "PETSc/petscmat.pxi":655
* if o_n > 1 and o_n*bs != m: raise ValueError(
* "size(o_nnz) is %d, expected %d" %
* (toInt(o_n), toInt(m//bs)) ) # <<<<<<<<<<<<<<
* # preallocate
* if aij == PETSC_TRUE:
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_o_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 649, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_o_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 655, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m / __pyx_v_bs)); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 649, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m / __pyx_v_bs)); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 655, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 649, __pyx_L1_error)
+ __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 655, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7);
@@ -25952,38 +26855,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_7 = 0;
__pyx_t_8 = 0;
- /* "PETSc/petscmat.pxi":648
+ /* "PETSc/petscmat.pxi":654
* (toInt(d_n), toInt(m//bs)) )
* if o_n > 1 and o_n*bs != m: raise ValueError(
* "size(o_nnz) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(o_n), toInt(m//bs)) )
* # preallocate
*/
- __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_size_o_nnz_is_d_expected_d, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 648, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_size_o_nnz_is_d_expected_d, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 654, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":647
+ /* "PETSc/petscmat.pxi":653
* "size(d_nnz) is %d, expected %d" %
* (toInt(d_n), toInt(m//bs)) )
* if o_n > 1 and o_n*bs != m: raise ValueError( # <<<<<<<<<<<<<<
* "size(o_nnz) is %d, expected %d" %
* (toInt(o_n), toInt(m//bs)) )
*/
- __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 647, __pyx_L1_error)
+ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 653, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 647, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 653, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_Raise(__pyx_t_8, 0, 0, 0);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __PYX_ERR(6, 647, __pyx_L1_error)
+ __PYX_ERR(6, 653, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":651
+ /* "PETSc/petscmat.pxi":657
* (toInt(o_n), toInt(m//bs)) )
* # preallocate
* if aij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -25993,25 +26896,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_2 = ((__pyx_v_aij == PETSC_TRUE) != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":652
+ /* "PETSc/petscmat.pxi":658
* # preallocate
* if aij == PETSC_TRUE:
* CHKERR( MatSeqAIJSetPreallocation(A, d_nz, d_nnz) ) # <<<<<<<<<<<<<<
* CHKERR( MatMPIAIJSetPreallocation(A, d_nz, d_nnz, o_nz, o_nnz) )
* if baij == PETSC_TRUE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqAIJSetPreallocation(__pyx_v_A, __pyx_v_d_nz, __pyx_v_d_nnz)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 652, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqAIJSetPreallocation(__pyx_v_A, __pyx_v_d_nz, __pyx_v_d_nnz)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 658, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":653
+ /* "PETSc/petscmat.pxi":659
* if aij == PETSC_TRUE:
* CHKERR( MatSeqAIJSetPreallocation(A, d_nz, d_nnz) )
* CHKERR( MatMPIAIJSetPreallocation(A, d_nz, d_nnz, o_nz, o_nnz) ) # <<<<<<<<<<<<<<
* if baij == PETSC_TRUE:
* CHKERR( MatSeqBAIJSetPreallocation(A, bs, d_nz, d_nnz) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIAIJSetPreallocation(__pyx_v_A, __pyx_v_d_nz, __pyx_v_d_nnz, __pyx_v_o_nz, __pyx_v_o_nnz)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 653, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIAIJSetPreallocation(__pyx_v_A, __pyx_v_d_nz, __pyx_v_d_nnz, __pyx_v_o_nz, __pyx_v_o_nnz)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 659, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":651
+ /* "PETSc/petscmat.pxi":657
* (toInt(o_n), toInt(m//bs)) )
* # preallocate
* if aij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26020,7 +26923,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":654
+ /* "PETSc/petscmat.pxi":660
* CHKERR( MatSeqAIJSetPreallocation(A, d_nz, d_nnz) )
* CHKERR( MatMPIAIJSetPreallocation(A, d_nz, d_nnz, o_nz, o_nnz) )
* if baij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26030,25 +26933,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_2 = ((__pyx_v_baij == PETSC_TRUE) != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":655
+ /* "PETSc/petscmat.pxi":661
* CHKERR( MatMPIAIJSetPreallocation(A, d_nz, d_nnz, o_nz, o_nnz) )
* if baij == PETSC_TRUE:
* CHKERR( MatSeqBAIJSetPreallocation(A, bs, d_nz, d_nnz) ) # <<<<<<<<<<<<<<
* CHKERR( MatMPIBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) )
* if sbaij == PETSC_TRUE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 655, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 661, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":656
+ /* "PETSc/petscmat.pxi":662
* if baij == PETSC_TRUE:
* CHKERR( MatSeqBAIJSetPreallocation(A, bs, d_nz, d_nnz) )
* CHKERR( MatMPIBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) ) # <<<<<<<<<<<<<<
* if sbaij == PETSC_TRUE:
* CHKERR( MatSeqSBAIJSetPreallocation(A, bs, d_nz, d_nnz) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz, __pyx_v_o_nz, __pyx_v_o_nnz)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 656, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz, __pyx_v_o_nz, __pyx_v_o_nnz)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 662, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":654
+ /* "PETSc/petscmat.pxi":660
* CHKERR( MatSeqAIJSetPreallocation(A, d_nz, d_nnz) )
* CHKERR( MatMPIAIJSetPreallocation(A, d_nz, d_nnz, o_nz, o_nnz) )
* if baij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26057,7 +26960,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":657
+ /* "PETSc/petscmat.pxi":663
* CHKERR( MatSeqBAIJSetPreallocation(A, bs, d_nz, d_nnz) )
* CHKERR( MatMPIBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) )
* if sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26067,25 +26970,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_t_2 = ((__pyx_v_sbaij == PETSC_TRUE) != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":658
+ /* "PETSc/petscmat.pxi":664
* CHKERR( MatMPIBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) )
* if sbaij == PETSC_TRUE:
* CHKERR( MatSeqSBAIJSetPreallocation(A, bs, d_nz, d_nnz) ) # <<<<<<<<<<<<<<
* CHKERR( MatMPISBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) )
* return 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqSBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 658, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqSBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 664, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":659
+ /* "PETSc/petscmat.pxi":665
* if sbaij == PETSC_TRUE:
* CHKERR( MatSeqSBAIJSetPreallocation(A, bs, d_nz, d_nnz) )
* CHKERR( MatMPISBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPISBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz, __pyx_v_o_nz, __pyx_v_o_nnz)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 659, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPISBAIJSetPreallocation(__pyx_v_A, __pyx_v_bs, __pyx_v_d_nz, __pyx_v_d_nnz, __pyx_v_o_nz, __pyx_v_o_nnz)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 665, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":657
+ /* "PETSc/petscmat.pxi":663
* CHKERR( MatSeqBAIJSetPreallocation(A, bs, d_nz, d_nnz) )
* CHKERR( MatMPIBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) )
* if sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26094,7 +26997,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":660
+ /* "PETSc/petscmat.pxi":666
* CHKERR( MatSeqSBAIJSetPreallocation(A, bs, d_nz, d_nnz) )
* CHKERR( MatMPISBAIJSetPreallocation(A, bs, d_nz, d_nnz, o_nz, o_nnz) )
* return 0 # <<<<<<<<<<<<<<
@@ -26104,7 +27007,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":613
+ /* "PETSc/petscmat.pxi":619
* return 0
*
* cdef inline int Mat_AllocAIJ_NNZ( PetscMat A, object NNZ) except -1: # <<<<<<<<<<<<<<
@@ -26128,7 +27031,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(Mat __pyx_v_A
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":662
+/* "PETSc/petscmat.pxi":668
* return 0
*
* cdef inline int Mat_AllocAIJ_CSR(PetscMat A, object CSR) except -1: # <<<<<<<<<<<<<<
@@ -26168,7 +27071,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
PyObject *__pyx_t_13 = NULL;
__Pyx_RefNannySetupContext("Mat_AllocAIJ_CSR", 0);
- /* "PETSc/petscmat.pxi":664
+ /* "PETSc/petscmat.pxi":670
* cdef inline int Mat_AllocAIJ_CSR(PetscMat A, object CSR) except -1:
* #
* cdef PetscBool aij=PETSC_FALSE, baij=PETSC_FALSE, sbaij=PETSC_FALSE # <<<<<<<<<<<<<<
@@ -26179,16 +27082,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_v_baij = PETSC_FALSE;
__pyx_v_sbaij = PETSC_FALSE;
- /* "PETSc/petscmat.pxi":665
+ /* "PETSc/petscmat.pxi":671
* #
* cdef PetscBool aij=PETSC_FALSE, baij=PETSC_FALSE, sbaij=PETSC_FALSE
* CHKERR( MatHasPreallocationAIJ(A, &aij, &baij, &sbaij)) # <<<<<<<<<<<<<<
* # local row size and block size
* cdef PetscInt m=0, bs = 1
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatHasPreallocationAIJ(__pyx_v_A, (&__pyx_v_aij), (&__pyx_v_baij), (&__pyx_v_sbaij))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 665, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatHasPreallocationAIJ(__pyx_v_A, (&__pyx_v_aij), (&__pyx_v_baij), (&__pyx_v_sbaij))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 671, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":667
+ /* "PETSc/petscmat.pxi":673
* CHKERR( MatHasPreallocationAIJ(A, &aij, &baij, &sbaij))
* # local row size and block size
* cdef PetscInt m=0, bs = 1 # <<<<<<<<<<<<<<
@@ -26198,16 +27101,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_v_m = 0;
__pyx_v_bs = 1;
- /* "PETSc/petscmat.pxi":668
+ /* "PETSc/petscmat.pxi":674
* # local row size and block size
* cdef PetscInt m=0, bs = 1
* CHKERR( MatGetLocalSize(A, &m, NULL) ) # <<<<<<<<<<<<<<
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE:
* CHKERR( MatGetBlockSize(A, &bs) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_A, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 668, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_A, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 674, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":669
+ /* "PETSc/petscmat.pxi":675
* cdef PetscInt m=0, bs = 1
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26225,16 +27128,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_L4_bool_binop_done:;
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":670
+ /* "PETSc/petscmat.pxi":676
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE:
* CHKERR( MatGetBlockSize(A, &bs) ) # <<<<<<<<<<<<<<
* assert bs > 0, "block size not set"
* # unpack CSR argument
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_A, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 670, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_A, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 676, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":671
+ /* "PETSc/petscmat.pxi":677
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE:
* CHKERR( MatGetBlockSize(A, &bs) )
* assert bs > 0, "block size not set" # <<<<<<<<<<<<<<
@@ -26245,12 +27148,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_bs > 0) != 0))) {
PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_block_size_not_set);
- __PYX_ERR(6, 671, __pyx_L1_error)
+ __PYX_ERR(6, 677, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscmat.pxi":669
+ /* "PETSc/petscmat.pxi":675
* cdef PetscInt m=0, bs = 1
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* if baij == PETSC_TRUE or sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26259,7 +27162,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":674
+ /* "PETSc/petscmat.pxi":680
* # unpack CSR argument
* cdef object oi, oj, ov
* try: # <<<<<<<<<<<<<<
@@ -26275,7 +27178,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__Pyx_XGOTREF(__pyx_t_6);
/*try:*/ {
- /* "PETSc/petscmat.pxi":675
+ /* "PETSc/petscmat.pxi":681
* cdef object oi, oj, ov
* try:
* oi, oj, ov = CSR # <<<<<<<<<<<<<<
@@ -26284,7 +27187,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
if ((likely(PyTuple_CheckExact(__pyx_v_CSR))) || (PyList_CheckExact(__pyx_v_CSR))) {
PyObject* sequence = __pyx_v_CSR;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -26292,9 +27195,9 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 675, __pyx_L6_error)
+ __PYX_ERR(6, 681, __pyx_L6_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -26308,34 +27211,34 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 675, __pyx_L6_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 681, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 675, __pyx_L6_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 681, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 675, __pyx_L6_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 681, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_10 = PyObject_GetIter(__pyx_v_CSR); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 675, __pyx_L6_error)
+ __pyx_t_10 = PyObject_GetIter(__pyx_v_CSR); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 681, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
- index = 0; __pyx_t_7 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_7)) goto __pyx_L14_unpacking_failed;
+ index = 0; __pyx_t_7 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_7)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- index = 1; __pyx_t_8 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_8)) goto __pyx_L14_unpacking_failed;
+ index = 1; __pyx_t_8 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_8)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
- index = 2; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L14_unpacking_failed;
+ index = 2; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(6, 675, __pyx_L6_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(6, 681, __pyx_L6_error)
__pyx_t_11 = NULL;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- goto __pyx_L15_unpacking_done;
- __pyx_L14_unpacking_failed:;
+ goto __pyx_L13_unpacking_done;
+ __pyx_L12_unpacking_failed:;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_11 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 675, __pyx_L6_error)
- __pyx_L15_unpacking_done:;
+ __PYX_ERR(6, 681, __pyx_L6_error)
+ __pyx_L13_unpacking_done:;
}
__pyx_v_oi = __pyx_t_7;
__pyx_t_7 = 0;
@@ -26344,7 +27247,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_v_ov = __pyx_t_9;
__pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":674
+ /* "PETSc/petscmat.pxi":680
* # unpack CSR argument
* cdef object oi, oj, ov
* try: # <<<<<<<<<<<<<<
@@ -26355,15 +27258,14 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- goto __pyx_L13_try_end;
+ goto __pyx_L11_try_end;
__pyx_L6_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":676
+ /* "PETSc/petscmat.pxi":682
* try:
* oi, oj, ov = CSR
* except (TypeError, ValueError): # <<<<<<<<<<<<<<
@@ -26373,12 +27275,12 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_1 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError) || __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError);
if (__pyx_t_1) {
__Pyx_AddTraceback("petsc4py.PETSc.Mat_AllocAIJ_CSR", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(6, 676, __pyx_L8_except_error)
+ if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7) < 0) __PYX_ERR(6, 682, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_7);
- /* "PETSc/petscmat.pxi":677
+ /* "PETSc/petscmat.pxi":683
* oi, oj, ov = CSR
* except (TypeError, ValueError):
* oi, oj = CSR; ov = None # <<<<<<<<<<<<<<
@@ -26387,7 +27289,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
if ((likely(PyTuple_CheckExact(__pyx_v_CSR))) || (PyList_CheckExact(__pyx_v_CSR))) {
PyObject* sequence = __pyx_v_CSR;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -26395,9 +27297,9 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 677, __pyx_L8_except_error)
+ __PYX_ERR(6, 683, __pyx_L8_except_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_10 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_12 = PyTuple_GET_ITEM(sequence, 1);
@@ -26408,30 +27310,30 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__Pyx_INCREF(__pyx_t_10);
__Pyx_INCREF(__pyx_t_12);
#else
- __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 677, __pyx_L8_except_error)
+ __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) __PYX_ERR(6, 683, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_10);
- __pyx_t_12 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_12)) __PYX_ERR(6, 677, __pyx_L8_except_error)
+ __pyx_t_12 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_12)) __PYX_ERR(6, 683, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_12);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_13 = PyObject_GetIter(__pyx_v_CSR); if (unlikely(!__pyx_t_13)) __PYX_ERR(6, 677, __pyx_L8_except_error)
+ __pyx_t_13 = PyObject_GetIter(__pyx_v_CSR); if (unlikely(!__pyx_t_13)) __PYX_ERR(6, 683, __pyx_L8_except_error)
__Pyx_GOTREF(__pyx_t_13);
__pyx_t_11 = Py_TYPE(__pyx_t_13)->tp_iternext;
- index = 0; __pyx_t_10 = __pyx_t_11(__pyx_t_13); if (unlikely(!__pyx_t_10)) goto __pyx_L18_unpacking_failed;
+ index = 0; __pyx_t_10 = __pyx_t_11(__pyx_t_13); if (unlikely(!__pyx_t_10)) goto __pyx_L16_unpacking_failed;
__Pyx_GOTREF(__pyx_t_10);
- index = 1; __pyx_t_12 = __pyx_t_11(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L18_unpacking_failed;
+ index = 1; __pyx_t_12 = __pyx_t_11(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L16_unpacking_failed;
__Pyx_GOTREF(__pyx_t_12);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_13), 2) < 0) __PYX_ERR(6, 677, __pyx_L8_except_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_13), 2) < 0) __PYX_ERR(6, 683, __pyx_L8_except_error)
__pyx_t_11 = NULL;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
- goto __pyx_L19_unpacking_done;
- __pyx_L18_unpacking_failed:;
+ goto __pyx_L17_unpacking_done;
+ __pyx_L16_unpacking_failed:;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__pyx_t_11 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 677, __pyx_L8_except_error)
- __pyx_L19_unpacking_done:;
+ __PYX_ERR(6, 683, __pyx_L8_except_error)
+ __pyx_L17_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_oi, __pyx_t_10);
__pyx_t_10 = 0;
@@ -26447,29 +27349,27 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
goto __pyx_L8_except_error;
__pyx_L8_except_error:;
- /* "PETSc/petscmat.pxi":674
+ /* "PETSc/petscmat.pxi":680
* # unpack CSR argument
* cdef object oi, oj, ov
* try: # <<<<<<<<<<<<<<
* oi, oj, ov = CSR
* except (TypeError, ValueError):
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
goto __pyx_L1_error;
__pyx_L7_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
- __pyx_L13_try_end:;
+ __pyx_L11_try_end:;
}
- /* "PETSc/petscmat.pxi":679
+ /* "PETSc/petscmat.pxi":685
* oi, oj = CSR; ov = None
* # rows, cols, and values
* cdef PetscInt ni=0, *i=NULL # <<<<<<<<<<<<<<
@@ -26479,7 +27379,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_v_ni = 0;
__pyx_v_i = NULL;
- /* "PETSc/petscmat.pxi":680
+ /* "PETSc/petscmat.pxi":686
* # rows, cols, and values
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL # <<<<<<<<<<<<<<
@@ -26489,7 +27389,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_v_nj = 0;
__pyx_v_j = NULL;
- /* "PETSc/petscmat.pxi":681
+ /* "PETSc/petscmat.pxi":687
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0 # <<<<<<<<<<<<<<
@@ -26498,7 +27398,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
__pyx_v_nv = 0;
- /* "PETSc/petscmat.pxi":682
+ /* "PETSc/petscmat.pxi":688
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL # <<<<<<<<<<<<<<
@@ -26507,31 +27407,31 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
__pyx_v_v = NULL;
- /* "PETSc/petscmat.pxi":683
+ /* "PETSc/petscmat.pxi":689
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL
* oi = iarray_i(oi, &ni, &i) # <<<<<<<<<<<<<<
* oj = iarray_i(oj, &nj, &j)
* if ov is not None:
*/
- __pyx_t_7 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 683, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 689, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF_SET(__pyx_v_oi, __pyx_t_7);
__pyx_t_7 = 0;
- /* "PETSc/petscmat.pxi":684
+ /* "PETSc/petscmat.pxi":690
* cdef PetscScalar *v=NULL
* oi = iarray_i(oi, &ni, &i)
* oj = iarray_i(oj, &nj, &j) # <<<<<<<<<<<<<<
* if ov is not None:
* ov = iarray_s(ov, &nv, &v)
*/
- __pyx_t_7 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 684, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 690, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF_SET(__pyx_v_oj, __pyx_t_7);
__pyx_t_7 = 0;
- /* "PETSc/petscmat.pxi":685
+ /* "PETSc/petscmat.pxi":691
* oi = iarray_i(oi, &ni, &i)
* oj = iarray_i(oj, &nj, &j)
* if ov is not None: # <<<<<<<<<<<<<<
@@ -26542,19 +27442,19 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":686
+ /* "PETSc/petscmat.pxi":692
* oj = iarray_i(oj, &nj, &j)
* if ov is not None:
* ov = iarray_s(ov, &nv, &v) # <<<<<<<<<<<<<<
* if m == PETSC_DECIDE: m = (ni-1)*bs
* # check array sizes
*/
- __pyx_t_7 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 686, __pyx_L1_error)
+ __pyx_t_7 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 692, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF_SET(__pyx_v_ov, __pyx_t_7);
__pyx_t_7 = 0;
- /* "PETSc/petscmat.pxi":685
+ /* "PETSc/petscmat.pxi":691
* oi = iarray_i(oi, &ni, &i)
* oj = iarray_i(oj, &nj, &j)
* if ov is not None: # <<<<<<<<<<<<<<
@@ -26563,7 +27463,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":687
+ /* "PETSc/petscmat.pxi":693
* if ov is not None:
* ov = iarray_s(ov, &nv, &v)
* if m == PETSC_DECIDE: m = (ni-1)*bs # <<<<<<<<<<<<<<
@@ -26575,7 +27475,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_v_m = ((__pyx_v_ni - 1) * __pyx_v_bs);
}
- /* "PETSc/petscmat.pxi":689
+ /* "PETSc/petscmat.pxi":695
* if m == PETSC_DECIDE: m = (ni-1)*bs
* # check array sizes
* if ((ni-1)*bs != m): # <<<<<<<<<<<<<<
@@ -26585,18 +27485,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_3 = ((((__pyx_v_ni - 1) * __pyx_v_bs) != __pyx_v_m) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":691
+ /* "PETSc/petscmat.pxi":697
* if ((ni-1)*bs != m):
* raise ValueError("size(I) is %d, expected %d" %
* (toInt(ni), toInt(m//bs+1)) ) # <<<<<<<<<<<<<<
* if (i[0] != 0):
* raise ValueError("I[0] is %d, expected %d" %
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 691, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 697, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(((__pyx_v_m / __pyx_v_bs) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 691, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(((__pyx_v_m / __pyx_v_bs) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 697, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 691, __pyx_L1_error)
+ __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 697, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7);
@@ -26605,29 +27505,29 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_7 = 0;
__pyx_t_8 = 0;
- /* "PETSc/petscmat.pxi":690
+ /* "PETSc/petscmat.pxi":696
* # check array sizes
* if ((ni-1)*bs != m):
* raise ValueError("size(I) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(ni), toInt(m//bs+1)) )
* if (i[0] != 0):
*/
- __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_size_I_is_d_expected_d, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 690, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_size_I_is_d_expected_d, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 696, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 690, __pyx_L1_error)
+ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 696, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 690, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 696, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_Raise(__pyx_t_8, 0, 0, 0);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __PYX_ERR(6, 690, __pyx_L1_error)
+ __PYX_ERR(6, 696, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":689
+ /* "PETSc/petscmat.pxi":695
* if m == PETSC_DECIDE: m = (ni-1)*bs
* # check array sizes
* if ((ni-1)*bs != m): # <<<<<<<<<<<<<<
@@ -26636,7 +27536,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":692
+ /* "PETSc/petscmat.pxi":698
* raise ValueError("size(I) is %d, expected %d" %
* (toInt(ni), toInt(m//bs+1)) )
* if (i[0] != 0): # <<<<<<<<<<<<<<
@@ -26646,18 +27546,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_3 = (((__pyx_v_i[0]) != 0) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":694
+ /* "PETSc/petscmat.pxi":700
* if (i[0] != 0):
* raise ValueError("I[0] is %d, expected %d" %
* (toInt(i[0]), toInt(0)) ) # <<<<<<<<<<<<<<
* if (i[ni-1] != nj):
* raise ValueError("size(J) is %d, expected %d" %
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[0])); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 694, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[0])); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 700, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(0); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 694, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(0); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 700, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 694, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 700, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8);
@@ -26666,29 +27566,29 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_8 = 0;
__pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":693
+ /* "PETSc/petscmat.pxi":699
* (toInt(ni), toInt(m//bs+1)) )
* if (i[0] != 0):
* raise ValueError("I[0] is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(i[0]), toInt(0)) )
* if (i[ni-1] != nj):
*/
- __pyx_t_9 = __Pyx_PyString_Format(__pyx_kp_s_I_0_is_d_expected_d, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 693, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyString_Format(__pyx_kp_s_I_0_is_d_expected_d, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 699, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 693, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 699, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_9);
__pyx_t_9 = 0;
- __pyx_t_9 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 693, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 699, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_Raise(__pyx_t_9, 0, 0, 0);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __PYX_ERR(6, 693, __pyx_L1_error)
+ __PYX_ERR(6, 699, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":692
+ /* "PETSc/petscmat.pxi":698
* raise ValueError("size(I) is %d, expected %d" %
* (toInt(ni), toInt(m//bs+1)) )
* if (i[0] != 0): # <<<<<<<<<<<<<<
@@ -26697,7 +27597,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":695
+ /* "PETSc/petscmat.pxi":701
* raise ValueError("I[0] is %d, expected %d" %
* (toInt(i[0]), toInt(0)) )
* if (i[ni-1] != nj): # <<<<<<<<<<<<<<
@@ -26707,18 +27607,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_3 = (((__pyx_v_i[(__pyx_v_ni - 1)]) != __pyx_v_nj) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":697
+ /* "PETSc/petscmat.pxi":703
* if (i[ni-1] != nj):
* raise ValueError("size(J) is %d, expected %d" %
* (toInt(nj), toInt(i[ni-1])) ) # <<<<<<<<<<<<<<
* if v != NULL and (nj*bs*bs != nv):
* raise ValueError("size(V) is %d, expected %d" %
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 697, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 703, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[(__pyx_v_ni - 1)])); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 697, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[(__pyx_v_ni - 1)])); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 703, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 697, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 703, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_9);
@@ -26727,29 +27627,29 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_9 = 0;
__pyx_t_7 = 0;
- /* "PETSc/petscmat.pxi":696
+ /* "PETSc/petscmat.pxi":702
* (toInt(i[0]), toInt(0)) )
* if (i[ni-1] != nj):
* raise ValueError("size(J) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(nj), toInt(i[ni-1])) )
* if v != NULL and (nj*bs*bs != nv):
*/
- __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_size_J_is_d_expected_d, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 696, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_size_J_is_d_expected_d, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 702, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 696, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 702, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7);
__pyx_t_7 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 696, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 702, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_Raise(__pyx_t_7, 0, 0, 0);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __PYX_ERR(6, 696, __pyx_L1_error)
+ __PYX_ERR(6, 702, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":695
+ /* "PETSc/petscmat.pxi":701
* raise ValueError("I[0] is %d, expected %d" %
* (toInt(i[0]), toInt(0)) )
* if (i[ni-1] != nj): # <<<<<<<<<<<<<<
@@ -26758,7 +27658,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":698
+ /* "PETSc/petscmat.pxi":704
* raise ValueError("size(J) is %d, expected %d" %
* (toInt(nj), toInt(i[ni-1])) )
* if v != NULL and (nj*bs*bs != nv): # <<<<<<<<<<<<<<
@@ -26769,25 +27669,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
if (__pyx_t_2) {
} else {
__pyx_t_3 = __pyx_t_2;
- goto __pyx_L26_bool_binop_done;
+ goto __pyx_L24_bool_binop_done;
}
__pyx_t_2 = ((((__pyx_v_nj * __pyx_v_bs) * __pyx_v_bs) != __pyx_v_nv) != 0);
__pyx_t_3 = __pyx_t_2;
- __pyx_L26_bool_binop_done:;
+ __pyx_L24_bool_binop_done:;
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":700
+ /* "PETSc/petscmat.pxi":706
* if v != NULL and (nj*bs*bs != nv):
* raise ValueError("size(V) is %d, expected %d" %
* (toInt(nv), toInt(nj*bs*bs)) ) # <<<<<<<<<<<<<<
* # preallocate
* if aij == PETSC_TRUE:
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 700, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 706, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(((__pyx_v_nj * __pyx_v_bs) * __pyx_v_bs)); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 700, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(((__pyx_v_nj * __pyx_v_bs) * __pyx_v_bs)); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 706, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 700, __pyx_L1_error)
+ __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 706, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7);
@@ -26796,29 +27696,29 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_7 = 0;
__pyx_t_8 = 0;
- /* "PETSc/petscmat.pxi":699
+ /* "PETSc/petscmat.pxi":705
* (toInt(nj), toInt(i[ni-1])) )
* if v != NULL and (nj*bs*bs != nv):
* raise ValueError("size(V) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(nv), toInt(nj*bs*bs)) )
* # preallocate
*/
- __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_size_V_is_d_expected_d, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 699, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_size_V_is_d_expected_d, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 705, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 699, __pyx_L1_error)
+ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 705, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 699, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 705, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_Raise(__pyx_t_8, 0, 0, 0);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __PYX_ERR(6, 699, __pyx_L1_error)
+ __PYX_ERR(6, 705, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":698
+ /* "PETSc/petscmat.pxi":704
* raise ValueError("size(J) is %d, expected %d" %
* (toInt(nj), toInt(i[ni-1])) )
* if v != NULL and (nj*bs*bs != nv): # <<<<<<<<<<<<<<
@@ -26827,7 +27727,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":702
+ /* "PETSc/petscmat.pxi":708
* (toInt(nv), toInt(nj*bs*bs)) )
* # preallocate
* if aij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26837,25 +27737,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_3 = ((__pyx_v_aij == PETSC_TRUE) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":703
+ /* "PETSc/petscmat.pxi":709
* # preallocate
* if aij == PETSC_TRUE:
* CHKERR( MatSeqAIJSetPreallocationCSR(A, i, j, v) ) # <<<<<<<<<<<<<<
* CHKERR( MatMPIAIJSetPreallocationCSR(A, i, j, v) )
* if baij == PETSC_TRUE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 703, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 709, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":704
+ /* "PETSc/petscmat.pxi":710
* if aij == PETSC_TRUE:
* CHKERR( MatSeqAIJSetPreallocationCSR(A, i, j, v) )
* CHKERR( MatMPIAIJSetPreallocationCSR(A, i, j, v) ) # <<<<<<<<<<<<<<
* if baij == PETSC_TRUE:
* CHKERR( MatSeqBAIJSetPreallocationCSR(A, bs, i, j, v) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 704, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 710, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":702
+ /* "PETSc/petscmat.pxi":708
* (toInt(nv), toInt(nj*bs*bs)) )
* # preallocate
* if aij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26864,7 +27764,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":705
+ /* "PETSc/petscmat.pxi":711
* CHKERR( MatSeqAIJSetPreallocationCSR(A, i, j, v) )
* CHKERR( MatMPIAIJSetPreallocationCSR(A, i, j, v) )
* if baij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26874,25 +27774,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_3 = ((__pyx_v_baij == PETSC_TRUE) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":706
+ /* "PETSc/petscmat.pxi":712
* CHKERR( MatMPIAIJSetPreallocationCSR(A, i, j, v) )
* if baij == PETSC_TRUE:
* CHKERR( MatSeqBAIJSetPreallocationCSR(A, bs, i, j, v) ) # <<<<<<<<<<<<<<
* CHKERR( MatMPIBAIJSetPreallocationCSR(A, bs, i, j, v) )
* if sbaij == PETSC_TRUE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 706, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 712, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":707
+ /* "PETSc/petscmat.pxi":713
* if baij == PETSC_TRUE:
* CHKERR( MatSeqBAIJSetPreallocationCSR(A, bs, i, j, v) )
* CHKERR( MatMPIBAIJSetPreallocationCSR(A, bs, i, j, v) ) # <<<<<<<<<<<<<<
* if sbaij == PETSC_TRUE:
* CHKERR( MatSeqSBAIJSetPreallocationCSR(A, bs, i, j, v) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 707, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 713, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":705
+ /* "PETSc/petscmat.pxi":711
* CHKERR( MatSeqAIJSetPreallocationCSR(A, i, j, v) )
* CHKERR( MatMPIAIJSetPreallocationCSR(A, i, j, v) )
* if baij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26901,7 +27801,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":708
+ /* "PETSc/petscmat.pxi":714
* CHKERR( MatSeqBAIJSetPreallocationCSR(A, bs, i, j, v) )
* CHKERR( MatMPIBAIJSetPreallocationCSR(A, bs, i, j, v) )
* if sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26911,25 +27811,25 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_t_3 = ((__pyx_v_sbaij == PETSC_TRUE) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":709
+ /* "PETSc/petscmat.pxi":715
* CHKERR( MatMPIBAIJSetPreallocationCSR(A, bs, i, j, v) )
* if sbaij == PETSC_TRUE:
* CHKERR( MatSeqSBAIJSetPreallocationCSR(A, bs, i, j, v) ) # <<<<<<<<<<<<<<
* CHKERR( MatMPISBAIJSetPreallocationCSR(A, bs, i, j, v) )
* return 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqSBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 709, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqSBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 715, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":710
+ /* "PETSc/petscmat.pxi":716
* if sbaij == PETSC_TRUE:
* CHKERR( MatSeqSBAIJSetPreallocationCSR(A, bs, i, j, v) )
* CHKERR( MatMPISBAIJSetPreallocationCSR(A, bs, i, j, v) ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPISBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 710, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPISBAIJSetPreallocationCSR(__pyx_v_A, __pyx_v_bs, __pyx_v_i, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 716, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":708
+ /* "PETSc/petscmat.pxi":714
* CHKERR( MatSeqBAIJSetPreallocationCSR(A, bs, i, j, v) )
* CHKERR( MatMPIBAIJSetPreallocationCSR(A, bs, i, j, v) )
* if sbaij == PETSC_TRUE: # <<<<<<<<<<<<<<
@@ -26938,7 +27838,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":711
+ /* "PETSc/petscmat.pxi":717
* CHKERR( MatSeqSBAIJSetPreallocationCSR(A, bs, i, j, v) )
* CHKERR( MatMPISBAIJSetPreallocationCSR(A, bs, i, j, v) )
* return 0 # <<<<<<<<<<<<<<
@@ -26948,7 +27848,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":662
+ /* "PETSc/petscmat.pxi":668
* return 0
*
* cdef inline int Mat_AllocAIJ_CSR(PetscMat A, object CSR) except -1: # <<<<<<<<<<<<<<
@@ -26974,7 +27874,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(Mat __pyx_v_A
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":713
+/* "PETSc/petscmat.pxi":719
* return 0
*
* cdef inline int Mat_AllocAIJ(PetscMat A,object NNZ, object CSR) except -1: # <<<<<<<<<<<<<<
@@ -26990,7 +27890,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(Mat __pyx_v_A, Py
int __pyx_t_3;
__Pyx_RefNannySetupContext("Mat_AllocAIJ", 0);
- /* "PETSc/petscmat.pxi":714
+ /* "PETSc/petscmat.pxi":720
*
* cdef inline int Mat_AllocAIJ(PetscMat A,object NNZ, object CSR) except -1:
* if CSR is not None: # <<<<<<<<<<<<<<
@@ -27001,18 +27901,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(Mat __pyx_v_A, Py
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":715
+ /* "PETSc/petscmat.pxi":721
* cdef inline int Mat_AllocAIJ(PetscMat A,object NNZ, object CSR) except -1:
* if CSR is not None:
* return Mat_AllocAIJ_CSR(A, CSR) # <<<<<<<<<<<<<<
* if NNZ is not None:
* return Mat_AllocAIJ_NNZ(A, NNZ)
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(__pyx_v_A, __pyx_v_CSR); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(6, 715, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(__pyx_v_A, __pyx_v_CSR); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(6, 721, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":714
+ /* "PETSc/petscmat.pxi":720
*
* cdef inline int Mat_AllocAIJ(PetscMat A,object NNZ, object CSR) except -1:
* if CSR is not None: # <<<<<<<<<<<<<<
@@ -27021,7 +27921,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(Mat __pyx_v_A, Py
*/
}
- /* "PETSc/petscmat.pxi":716
+ /* "PETSc/petscmat.pxi":722
* if CSR is not None:
* return Mat_AllocAIJ_CSR(A, CSR)
* if NNZ is not None: # <<<<<<<<<<<<<<
@@ -27032,18 +27932,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(Mat __pyx_v_A, Py
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":717
+ /* "PETSc/petscmat.pxi":723
* return Mat_AllocAIJ_CSR(A, CSR)
* if NNZ is not None:
* return Mat_AllocAIJ_NNZ(A, NNZ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(__pyx_v_A, __pyx_v_NNZ); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(6, 717, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(__pyx_v_A, __pyx_v_NNZ); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(6, 723, __pyx_L1_error)
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":716
+ /* "PETSc/petscmat.pxi":722
* if CSR is not None:
* return Mat_AllocAIJ_CSR(A, CSR)
* if NNZ is not None: # <<<<<<<<<<<<<<
@@ -27052,7 +27952,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(Mat __pyx_v_A, Py
*/
}
- /* "PETSc/petscmat.pxi":718
+ /* "PETSc/petscmat.pxi":724
* if NNZ is not None:
* return Mat_AllocAIJ_NNZ(A, NNZ)
* return 0 # <<<<<<<<<<<<<<
@@ -27062,7 +27962,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(Mat __pyx_v_A, Py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":713
+ /* "PETSc/petscmat.pxi":719
* return 0
*
* cdef inline int Mat_AllocAIJ(PetscMat A,object NNZ, object CSR) except -1: # <<<<<<<<<<<<<<
@@ -27079,7 +27979,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(Mat __pyx_v_A, Py
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":720
+/* "PETSc/petscmat.pxi":726
* return 0
*
* cdef inline object Mat_AllocDense(PetscMat A, object array): # <<<<<<<<<<<<<<
@@ -27105,7 +28005,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
__Pyx_RefNannySetupContext("Mat_AllocDense", 0);
__Pyx_INCREF(__pyx_v_array);
- /* "PETSc/petscmat.pxi":721
+ /* "PETSc/petscmat.pxi":727
*
* cdef inline object Mat_AllocDense(PetscMat A, object array):
* cdef PetscInt m=0, N=0 # <<<<<<<<<<<<<<
@@ -27115,25 +28015,25 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
__pyx_v_m = 0;
__pyx_v_N = 0;
- /* "PETSc/petscmat.pxi":722
+ /* "PETSc/petscmat.pxi":728
* cdef inline object Mat_AllocDense(PetscMat A, object array):
* cdef PetscInt m=0, N=0
* CHKERR( MatGetLocalSize(A, &m, NULL) ) # <<<<<<<<<<<<<<
* CHKERR( MatGetSize(A, NULL, &N) )
* cdef PetscInt size=0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_A, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 722, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_A, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 728, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":723
+ /* "PETSc/petscmat.pxi":729
* cdef PetscInt m=0, N=0
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* CHKERR( MatGetSize(A, NULL, &N) ) # <<<<<<<<<<<<<<
* cdef PetscInt size=0
* cdef PetscScalar *data=NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_A, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 723, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_A, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 729, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":724
+ /* "PETSc/petscmat.pxi":730
* CHKERR( MatGetLocalSize(A, &m, NULL) )
* CHKERR( MatGetSize(A, NULL, &N) )
* cdef PetscInt size=0 # <<<<<<<<<<<<<<
@@ -27142,7 +28042,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
*/
__pyx_v_size = 0;
- /* "PETSc/petscmat.pxi":725
+ /* "PETSc/petscmat.pxi":731
* CHKERR( MatGetSize(A, NULL, &N) )
* cdef PetscInt size=0
* cdef PetscScalar *data=NULL # <<<<<<<<<<<<<<
@@ -27151,7 +28051,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
*/
__pyx_v_data = NULL;
- /* "PETSc/petscmat.pxi":726
+ /* "PETSc/petscmat.pxi":732
* cdef PetscInt size=0
* cdef PetscScalar *data=NULL
* if array is not None: # <<<<<<<<<<<<<<
@@ -27162,19 +28062,19 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":727
+ /* "PETSc/petscmat.pxi":733
* cdef PetscScalar *data=NULL
* if array is not None:
* array = ofarray_s(array, &size, &data) # <<<<<<<<<<<<<<
* if m*N != size: raise ValueError(
* "size(array) is %d, expected %dx%d=%d" %
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ofarray_s(__pyx_v_array, (&__pyx_v_size), (&__pyx_v_data))); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 727, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ofarray_s(__pyx_v_array, (&__pyx_v_size), (&__pyx_v_data))); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 733, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_array, __pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":728
+ /* "PETSc/petscmat.pxi":734
* if array is not None:
* array = ofarray_s(array, &size, &data)
* if m*N != size: raise ValueError( # <<<<<<<<<<<<<<
@@ -27184,22 +28084,22 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
__pyx_t_3 = (((__pyx_v_m * __pyx_v_N) != __pyx_v_size) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":730
+ /* "PETSc/petscmat.pxi":736
* if m*N != size: raise ValueError(
* "size(array) is %d, expected %dx%d=%d" %
* (toInt(size), toInt(m), toInt(N), toInt(m*N)) ) # <<<<<<<<<<<<<<
* CHKERR( MatSeqDenseSetPreallocation(A, data) )
* CHKERR( MatMPIDenseSetPreallocation(A, data) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_size); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 730, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_size); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 736, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 730, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 736, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 730, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 736, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m * __pyx_v_N)); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 730, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m * __pyx_v_N)); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 736, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PyTuple_New(4); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 730, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(4); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 736, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_4);
@@ -27214,38 +28114,38 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
__pyx_t_6 = 0;
__pyx_t_7 = 0;
- /* "PETSc/petscmat.pxi":729
+ /* "PETSc/petscmat.pxi":735
* array = ofarray_s(array, &size, &data)
* if m*N != size: raise ValueError(
* "size(array) is %d, expected %dx%d=%d" % # <<<<<<<<<<<<<<
* (toInt(size), toInt(m), toInt(N), toInt(m*N)) )
* CHKERR( MatSeqDenseSetPreallocation(A, data) )
*/
- __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_size_array_is_d_expected_dx_d_d, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 729, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_size_array_is_d_expected_dx_d_d, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 735, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/petscmat.pxi":728
+ /* "PETSc/petscmat.pxi":734
* if array is not None:
* array = ofarray_s(array, &size, &data)
* if m*N != size: raise ValueError( # <<<<<<<<<<<<<<
* "size(array) is %d, expected %dx%d=%d" %
* (toInt(size), toInt(m), toInt(N), toInt(m*N)) )
*/
- __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 728, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 734, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7);
__pyx_t_7 = 0;
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 728, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 734, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_Raise(__pyx_t_7, 0, 0, 0);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __PYX_ERR(6, 728, __pyx_L1_error)
+ __PYX_ERR(6, 734, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":726
+ /* "PETSc/petscmat.pxi":732
* cdef PetscInt size=0
* cdef PetscScalar *data=NULL
* if array is not None: # <<<<<<<<<<<<<<
@@ -27254,25 +28154,25 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
*/
}
- /* "PETSc/petscmat.pxi":731
+ /* "PETSc/petscmat.pxi":737
* "size(array) is %d, expected %dx%d=%d" %
* (toInt(size), toInt(m), toInt(N), toInt(m*N)) )
* CHKERR( MatSeqDenseSetPreallocation(A, data) ) # <<<<<<<<<<<<<<
* CHKERR( MatMPIDenseSetPreallocation(A, data) )
* return array
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqDenseSetPreallocation(__pyx_v_A, __pyx_v_data)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 731, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSeqDenseSetPreallocation(__pyx_v_A, __pyx_v_data)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 737, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":732
+ /* "PETSc/petscmat.pxi":738
* (toInt(size), toInt(m), toInt(N), toInt(m*N)) )
* CHKERR( MatSeqDenseSetPreallocation(A, data) )
* CHKERR( MatMPIDenseSetPreallocation(A, data) ) # <<<<<<<<<<<<<<
* return array
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIDenseSetPreallocation(__pyx_v_A, __pyx_v_data)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 732, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMPIDenseSetPreallocation(__pyx_v_A, __pyx_v_data)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 738, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":733
+ /* "PETSc/petscmat.pxi":739
* CHKERR( MatSeqDenseSetPreallocation(A, data) )
* CHKERR( MatMPIDenseSetPreallocation(A, data) )
* return array # <<<<<<<<<<<<<<
@@ -27284,7 +28184,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
__pyx_r = __pyx_v_array;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":720
+ /* "PETSc/petscmat.pxi":726
* return 0
*
* cdef inline object Mat_AllocDense(PetscMat A, object array): # <<<<<<<<<<<<<<
@@ -27308,7 +28208,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_Mat_AllocDense(Mat __pyx
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":741
+/* "PETSc/petscmat.pxi":747
* const_PetscScalar[],PetscInsertMode)
*
* cdef inline MatSetValuesFcn* matsetvalues_fcn(int blocked, int local): # <<<<<<<<<<<<<<
@@ -27324,7 +28224,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
int __pyx_t_2;
__Pyx_RefNannySetupContext("matsetvalues_fcn", 0);
- /* "PETSc/petscmat.pxi":742
+ /* "PETSc/petscmat.pxi":748
*
* cdef inline MatSetValuesFcn* matsetvalues_fcn(int blocked, int local):
* cdef MatSetValuesFcn *setvalues = NULL # <<<<<<<<<<<<<<
@@ -27333,7 +28233,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
*/
__pyx_v_setvalues = NULL;
- /* "PETSc/petscmat.pxi":743
+ /* "PETSc/petscmat.pxi":749
* cdef inline MatSetValuesFcn* matsetvalues_fcn(int blocked, int local):
* cdef MatSetValuesFcn *setvalues = NULL
* if blocked and local: setvalues = MatSetValuesBlockedLocal # <<<<<<<<<<<<<<
@@ -27354,7 +28254,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":744
+ /* "PETSc/petscmat.pxi":750
* cdef MatSetValuesFcn *setvalues = NULL
* if blocked and local: setvalues = MatSetValuesBlockedLocal
* elif blocked: setvalues = MatSetValuesBlocked # <<<<<<<<<<<<<<
@@ -27367,7 +28267,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":745
+ /* "PETSc/petscmat.pxi":751
* if blocked and local: setvalues = MatSetValuesBlockedLocal
* elif blocked: setvalues = MatSetValuesBlocked
* elif local: setvalues = MatSetValuesLocal # <<<<<<<<<<<<<<
@@ -27380,7 +28280,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
goto __pyx_L3;
}
- /* "PETSc/petscmat.pxi":746
+ /* "PETSc/petscmat.pxi":752
* elif blocked: setvalues = MatSetValuesBlocked
* elif local: setvalues = MatSetValuesLocal
* else: setvalues = MatSetValues # <<<<<<<<<<<<<<
@@ -27392,7 +28292,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
}
__pyx_L3:;
- /* "PETSc/petscmat.pxi":747
+ /* "PETSc/petscmat.pxi":753
* elif local: setvalues = MatSetValuesLocal
* else: setvalues = MatSetValues
* return setvalues # <<<<<<<<<<<<<<
@@ -27402,7 +28302,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
__pyx_r = __pyx_v_setvalues;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":741
+ /* "PETSc/petscmat.pxi":747
* const_PetscScalar[],PetscInsertMode)
*
* cdef inline MatSetValuesFcn* matsetvalues_fcn(int blocked, int local): # <<<<<<<<<<<<<<
@@ -27416,7 +28316,7 @@ static CYTHON_INLINE __pyx_t_8petsc4py_5PETSc_MatSetValuesFcn *__pyx_f_8petsc4py
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":749
+/* "PETSc/petscmat.pxi":755
* return setvalues
*
* cdef inline int matsetvalues(PetscMat A, # <<<<<<<<<<<<<<
@@ -27449,7 +28349,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__Pyx_INCREF(__pyx_v_oj);
__Pyx_INCREF(__pyx_v_ov);
- /* "PETSc/petscmat.pxi":753
+ /* "PETSc/petscmat.pxi":759
* object oaddv, int blocked, int local) except -1:
* # block size
* cdef PetscInt rbs=1, cbs=1 # <<<<<<<<<<<<<<
@@ -27459,7 +28359,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_v_rbs = 1;
__pyx_v_cbs = 1;
- /* "PETSc/petscmat.pxi":754
+ /* "PETSc/petscmat.pxi":760
* # block size
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) ) # <<<<<<<<<<<<<<
@@ -27468,10 +28368,10 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
*/
__pyx_t_1 = (__pyx_v_blocked != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 754, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 760, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":755
+ /* "PETSc/petscmat.pxi":761
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1 # <<<<<<<<<<<<<<
@@ -27483,7 +28383,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_v_rbs = 1;
}
- /* "PETSc/petscmat.pxi":756
+ /* "PETSc/petscmat.pxi":762
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1
* if cbs < 1: cbs = 1 # <<<<<<<<<<<<<<
@@ -27495,7 +28395,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_v_cbs = 1;
}
- /* "PETSc/petscmat.pxi":758
+ /* "PETSc/petscmat.pxi":764
* if cbs < 1: cbs = 1
* # rows, cols, and values
* cdef PetscInt ni=0, *i=NULL # <<<<<<<<<<<<<<
@@ -27505,7 +28405,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_v_ni = 0;
__pyx_v_i = NULL;
- /* "PETSc/petscmat.pxi":759
+ /* "PETSc/petscmat.pxi":765
* # rows, cols, and values
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL # <<<<<<<<<<<<<<
@@ -27515,7 +28415,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_v_nj = 0;
__pyx_v_j = NULL;
- /* "PETSc/petscmat.pxi":760
+ /* "PETSc/petscmat.pxi":766
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0 # <<<<<<<<<<<<<<
@@ -27524,7 +28424,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
*/
__pyx_v_nv = 0;
- /* "PETSc/petscmat.pxi":761
+ /* "PETSc/petscmat.pxi":767
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL # <<<<<<<<<<<<<<
@@ -27533,43 +28433,43 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
*/
__pyx_v_v = NULL;
- /* "PETSc/petscmat.pxi":762
+ /* "PETSc/petscmat.pxi":768
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL
* oi = iarray_i(oi, &ni, &i) # <<<<<<<<<<<<<<
* oj = iarray_i(oj, &nj, &j)
* ov = iarray_s(ov, &nv, &v)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 762, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 768, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_oi, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":763
+ /* "PETSc/petscmat.pxi":769
* cdef PetscScalar *v=NULL
* oi = iarray_i(oi, &ni, &i)
* oj = iarray_i(oj, &nj, &j) # <<<<<<<<<<<<<<
* ov = iarray_s(ov, &nv, &v)
* if ni*nj*rbs*cbs != nv: raise ValueError(
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 763, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_oj, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":764
+ /* "PETSc/petscmat.pxi":770
* oi = iarray_i(oi, &ni, &i)
* oj = iarray_i(oj, &nj, &j)
* ov = iarray_s(ov, &nv, &v) # <<<<<<<<<<<<<<
* if ni*nj*rbs*cbs != nv: raise ValueError(
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" %
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 764, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 770, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_ov, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":765
+ /* "PETSc/petscmat.pxi":771
* oj = iarray_i(oj, &nj, &j)
* ov = iarray_s(ov, &nv, &v)
* if ni*nj*rbs*cbs != nv: raise ValueError( # <<<<<<<<<<<<<<
@@ -27579,20 +28479,20 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_t_1 = (((((__pyx_v_ni * __pyx_v_nj) * __pyx_v_rbs) * __pyx_v_cbs) != __pyx_v_nv) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":767
+ /* "PETSc/petscmat.pxi":773
* if ni*nj*rbs*cbs != nv: raise ValueError(
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" %
* (toInt(ni), toInt(nj), toInt(nv)) ) # <<<<<<<<<<<<<<
* # MatSetValuesXXX function and insert mode
* cdef MatSetValuesFcn *setvalues = \
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 767, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 773, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 767, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 773, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 767, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 773, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 767, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 773, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
@@ -27604,38 +28504,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_t_4 = 0;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":766
+ /* "PETSc/petscmat.pxi":772
* ov = iarray_s(ov, &nv, &v)
* if ni*nj*rbs*cbs != nv: raise ValueError(
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" % # <<<<<<<<<<<<<<
* (toInt(ni), toInt(nj), toInt(nv)) )
* # MatSetValuesXXX function and insert mode
*/
- __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nj, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 766, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nj, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 772, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscmat.pxi":765
+ /* "PETSc/petscmat.pxi":771
* oj = iarray_i(oj, &nj, &j)
* ov = iarray_s(ov, &nv, &v)
* if ni*nj*rbs*cbs != nv: raise ValueError( # <<<<<<<<<<<<<<
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" %
* (toInt(ni), toInt(nj), toInt(nv)) )
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 765, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 771, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
__pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 765, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 771, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_Raise(__pyx_t_5, 0, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __PYX_ERR(6, 765, __pyx_L1_error)
+ __PYX_ERR(6, 771, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":770
+ /* "PETSc/petscmat.pxi":776
* # MatSetValuesXXX function and insert mode
* cdef MatSetValuesFcn *setvalues = \
* matsetvalues_fcn(blocked, local) # <<<<<<<<<<<<<<
@@ -27644,26 +28544,26 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
*/
__pyx_v_setvalues = __pyx_f_8petsc4py_5PETSc_matsetvalues_fcn(__pyx_v_blocked, __pyx_v_local);
- /* "PETSc/petscmat.pxi":771
+ /* "PETSc/petscmat.pxi":777
* cdef MatSetValuesFcn *setvalues = \
* matsetvalues_fcn(blocked, local)
* cdef PetscInsertMode addv = insertmode(oaddv) # <<<<<<<<<<<<<<
* # actual call
* CHKERR( setvalues(A, ni, i, nj, j, v, addv) )
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oaddv); if (unlikely(__pyx_t_7 == ((InsertMode)-1L))) __PYX_ERR(6, 771, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oaddv); if (unlikely(__pyx_t_7 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(6, 777, __pyx_L1_error)
__pyx_v_addv = __pyx_t_7;
- /* "PETSc/petscmat.pxi":773
+ /* "PETSc/petscmat.pxi":779
* cdef PetscInsertMode addv = insertmode(oaddv)
* # actual call
* CHKERR( setvalues(A, ni, i, nj, j, v, addv) ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, __pyx_v_ni, __pyx_v_i, __pyx_v_nj, __pyx_v_j, __pyx_v_v, __pyx_v_addv)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 773, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, __pyx_v_ni, __pyx_v_i, __pyx_v_nj, __pyx_v_j, __pyx_v_v, __pyx_v_addv)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 779, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":774
+ /* "PETSc/petscmat.pxi":780
* # actual call
* CHKERR( setvalues(A, ni, i, nj, j, v, addv) )
* return 0 # <<<<<<<<<<<<<<
@@ -27673,7 +28573,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":749
+ /* "PETSc/petscmat.pxi":755
* return setvalues
*
* cdef inline int matsetvalues(PetscMat A, # <<<<<<<<<<<<<<
@@ -27697,7 +28597,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues(Mat __pyx_v_A, Py
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":776
+/* "PETSc/petscmat.pxi":782
* return 0
*
* cdef inline int matsetvalues_rcv(PetscMat A, # <<<<<<<<<<<<<<
@@ -27737,7 +28637,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
Py_ssize_t __pyx_t_9;
__Pyx_RefNannySetupContext("matsetvalues_rcv", 0);
- /* "PETSc/petscmat.pxi":781
+ /* "PETSc/petscmat.pxi":787
* int blocked, int local) except -1:
* # block size
* cdef PetscInt rbs=1, cbs=1 # <<<<<<<<<<<<<<
@@ -27747,7 +28647,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_v_rbs = 1;
__pyx_v_cbs = 1;
- /* "PETSc/petscmat.pxi":782
+ /* "PETSc/petscmat.pxi":788
* # block size
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) ) # <<<<<<<<<<<<<<
@@ -27756,10 +28656,10 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_t_1 = (__pyx_v_blocked != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 782, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 788, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":783
+ /* "PETSc/petscmat.pxi":789
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1 # <<<<<<<<<<<<<<
@@ -27771,7 +28671,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_v_rbs = 1;
}
- /* "PETSc/petscmat.pxi":784
+ /* "PETSc/petscmat.pxi":790
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1
* if cbs < 1: cbs = 1 # <<<<<<<<<<<<<<
@@ -27783,7 +28683,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_v_cbs = 1;
}
- /* "PETSc/petscmat.pxi":786
+ /* "PETSc/petscmat.pxi":792
* if cbs < 1: cbs = 1
* # rows, cols, and values
* cdef PetscInt ni=0, *i=NULL # <<<<<<<<<<<<<<
@@ -27793,7 +28693,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_v_ni = 0;
__pyx_v_i = NULL;
- /* "PETSc/petscmat.pxi":787
+ /* "PETSc/petscmat.pxi":793
* # rows, cols, and values
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL # <<<<<<<<<<<<<<
@@ -27803,7 +28703,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_v_nj = 0;
__pyx_v_j = NULL;
- /* "PETSc/petscmat.pxi":788
+ /* "PETSc/petscmat.pxi":794
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0 # <<<<<<<<<<<<<<
@@ -27812,7 +28712,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_nv = 0;
- /* "PETSc/petscmat.pxi":789
+ /* "PETSc/petscmat.pxi":795
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL # <<<<<<<<<<<<<<
@@ -27821,43 +28721,43 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_v = NULL;
- /* "PETSc/petscmat.pxi":790
+ /* "PETSc/petscmat.pxi":796
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL
* cdef ndarray ai = iarray_i(oi, &ni, &i) # <<<<<<<<<<<<<<
* cdef ndarray aj = iarray_i(oj, &nj, &j)
* cdef ndarray av = iarray_s(ov, &nv, &v)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 790, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 796, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_ai = ((PyArrayObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":791
+ /* "PETSc/petscmat.pxi":797
* cdef PetscScalar *v=NULL
* cdef ndarray ai = iarray_i(oi, &ni, &i)
* cdef ndarray aj = iarray_i(oj, &nj, &j) # <<<<<<<<<<<<<<
* cdef ndarray av = iarray_s(ov, &nv, &v)
* # check various dimensions
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 791, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 797, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_aj = ((PyArrayObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":792
+ /* "PETSc/petscmat.pxi":798
* cdef ndarray ai = iarray_i(oi, &ni, &i)
* cdef ndarray aj = iarray_i(oj, &nj, &j)
* cdef ndarray av = iarray_s(ov, &nv, &v) # <<<<<<<<<<<<<<
* # check various dimensions
* if PyArray_NDIM(ai) != 2: raise ValueError(
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 792, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 798, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_av = ((PyArrayObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":794
+ /* "PETSc/petscmat.pxi":800
* cdef ndarray av = iarray_s(ov, &nv, &v)
* # check various dimensions
* if PyArray_NDIM(ai) != 2: raise ValueError( # <<<<<<<<<<<<<<
@@ -27867,40 +28767,40 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_t_1 = ((PyArray_NDIM(__pyx_v_ai) != 2) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":796
+ /* "PETSc/petscmat.pxi":802
* if PyArray_NDIM(ai) != 2: raise ValueError(
* ("row indices must have two dimensions: "
* "rows.ndim=%d") % (PyArray_NDIM(ai)) ) # <<<<<<<<<<<<<<
* elif not PyArray_ISCONTIGUOUS(ai): raise ValueError(
* "expecting a C-contiguous array")
*/
- __pyx_t_3 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_ai)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 796, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_ai)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_row_indices_must_have_two_dimens, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 796, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_row_indices_must_have_two_dimens, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":794
+ /* "PETSc/petscmat.pxi":800
* cdef ndarray av = iarray_s(ov, &nv, &v)
* # check various dimensions
* if PyArray_NDIM(ai) != 2: raise ValueError( # <<<<<<<<<<<<<<
* ("row indices must have two dimensions: "
* "rows.ndim=%d") % (PyArray_NDIM(ai)) )
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 794, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 794, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(6, 794, __pyx_L1_error)
+ __PYX_ERR(6, 800, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":797
+ /* "PETSc/petscmat.pxi":803
* ("row indices must have two dimensions: "
* "rows.ndim=%d") % (PyArray_NDIM(ai)) )
* elif not PyArray_ISCONTIGUOUS(ai): raise ValueError( # <<<<<<<<<<<<<<
@@ -27909,14 +28809,14 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_t_1 = ((!(PyArray_ISCONTIGUOUS(__pyx_v_ai) != 0)) != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__20, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 797, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__20, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 803, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(6, 797, __pyx_L1_error)
+ __PYX_ERR(6, 803, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":799
+ /* "PETSc/petscmat.pxi":805
* elif not PyArray_ISCONTIGUOUS(ai): raise ValueError(
* "expecting a C-contiguous array")
* if PyArray_NDIM(aj) != 2: raise ValueError( # <<<<<<<<<<<<<<
@@ -27926,40 +28826,40 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_t_1 = ((PyArray_NDIM(__pyx_v_aj) != 2) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":801
+ /* "PETSc/petscmat.pxi":807
* if PyArray_NDIM(aj) != 2: raise ValueError(
* ("column indices must have two dimensions: "
* "cols.ndim=%d") % (PyArray_NDIM(aj)) ) # <<<<<<<<<<<<<<
* elif not PyArray_ISCONTIGUOUS(aj): raise ValueError(
* "expecting a C-contiguous array")
*/
- __pyx_t_4 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_aj)); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 801, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_aj)); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 807, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_column_indices_must_have_two_dim, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 801, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_column_indices_must_have_two_dim, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 807, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":799
+ /* "PETSc/petscmat.pxi":805
* elif not PyArray_ISCONTIGUOUS(ai): raise ValueError(
* "expecting a C-contiguous array")
* if PyArray_NDIM(aj) != 2: raise ValueError( # <<<<<<<<<<<<<<
* ("column indices must have two dimensions: "
* "cols.ndim=%d") % (PyArray_NDIM(aj)) )
*/
- __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 799, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 805, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 799, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 805, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(6, 799, __pyx_L1_error)
+ __PYX_ERR(6, 805, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":802
+ /* "PETSc/petscmat.pxi":808
* ("column indices must have two dimensions: "
* "cols.ndim=%d") % (PyArray_NDIM(aj)) )
* elif not PyArray_ISCONTIGUOUS(aj): raise ValueError( # <<<<<<<<<<<<<<
@@ -27968,14 +28868,14 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_t_1 = ((!(PyArray_ISCONTIGUOUS(__pyx_v_aj) != 0)) != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__21, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 802, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__21, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 808, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(6, 802, __pyx_L1_error)
+ __PYX_ERR(6, 808, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":804
+ /* "PETSc/petscmat.pxi":810
* elif not PyArray_ISCONTIGUOUS(aj): raise ValueError(
* "expecting a C-contiguous array")
* if PyArray_NDIM(av) < 2: raise ValueError( # <<<<<<<<<<<<<<
@@ -27985,40 +28885,40 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_t_1 = ((PyArray_NDIM(__pyx_v_av) < 2) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":806
+ /* "PETSc/petscmat.pxi":812
* if PyArray_NDIM(av) < 2: raise ValueError(
* ("values must have two or more dimensions: "
* "vals.ndim=%d") % (PyArray_NDIM(av)) ) # <<<<<<<<<<<<<<
* elif not PyArray_ISCONTIGUOUS(av): raise ValueError(
* "expecting a C-contiguous array")
*/
- __pyx_t_3 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_av)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 806, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_av)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 812, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_values_must_have_two_or_more_dim, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 806, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_values_must_have_two_or_more_dim, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 812, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":804
+ /* "PETSc/petscmat.pxi":810
* elif not PyArray_ISCONTIGUOUS(aj): raise ValueError(
* "expecting a C-contiguous array")
* if PyArray_NDIM(av) < 2: raise ValueError( # <<<<<<<<<<<<<<
* ("values must have two or more dimensions: "
* "vals.ndim=%d") % (PyArray_NDIM(av)) )
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 804, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 810, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 804, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 810, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(6, 804, __pyx_L1_error)
+ __PYX_ERR(6, 810, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":807
+ /* "PETSc/petscmat.pxi":813
* ("values must have two or more dimensions: "
* "vals.ndim=%d") % (PyArray_NDIM(av)) )
* elif not PyArray_ISCONTIGUOUS(av): raise ValueError( # <<<<<<<<<<<<<<
@@ -28027,14 +28927,14 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_t_1 = ((!(PyArray_ISCONTIGUOUS(__pyx_v_av) != 0)) != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__22, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 807, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__22, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 813, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(6, 807, __pyx_L1_error)
+ __PYX_ERR(6, 813, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":810
+ /* "PETSc/petscmat.pxi":816
* "expecting a C-contiguous array")
* # check various shapes
* cdef Py_ssize_t nm = PyArray_DIM(ai, 0) # <<<<<<<<<<<<<<
@@ -28043,7 +28943,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_nm = PyArray_DIM(__pyx_v_ai, 0);
- /* "PETSc/petscmat.pxi":811
+ /* "PETSc/petscmat.pxi":817
* # check various shapes
* cdef Py_ssize_t nm = PyArray_DIM(ai, 0)
* cdef Py_ssize_t si = PyArray_DIM(ai, 1) # <<<<<<<<<<<<<<
@@ -28052,7 +28952,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_si = PyArray_DIM(__pyx_v_ai, 1);
- /* "PETSc/petscmat.pxi":812
+ /* "PETSc/petscmat.pxi":818
* cdef Py_ssize_t nm = PyArray_DIM(ai, 0)
* cdef Py_ssize_t si = PyArray_DIM(ai, 1)
* cdef Py_ssize_t sj = PyArray_DIM(aj, 1) # <<<<<<<<<<<<<<
@@ -28061,7 +28961,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_sj = PyArray_DIM(__pyx_v_aj, 1);
- /* "PETSc/petscmat.pxi":813
+ /* "PETSc/petscmat.pxi":819
* cdef Py_ssize_t si = PyArray_DIM(ai, 1)
* cdef Py_ssize_t sj = PyArray_DIM(aj, 1)
* cdef Py_ssize_t sv = PyArray_SIZE(av) // PyArray_DIM(av, 0) # <<<<<<<<<<<<<<
@@ -28070,7 +28970,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_sv = (PyArray_SIZE(__pyx_v_av) / PyArray_DIM(__pyx_v_av, 0));
- /* "PETSc/petscmat.pxi":814
+ /* "PETSc/petscmat.pxi":820
* cdef Py_ssize_t sj = PyArray_DIM(aj, 1)
* cdef Py_ssize_t sv = PyArray_SIZE(av) // PyArray_DIM(av, 0)
* if ((nm != PyArray_DIM(aj, 0)) or # <<<<<<<<<<<<<<
@@ -28084,7 +28984,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
goto __pyx_L10_bool_binop_done;
}
- /* "PETSc/petscmat.pxi":815
+ /* "PETSc/petscmat.pxi":821
* cdef Py_ssize_t sv = PyArray_SIZE(av) // PyArray_DIM(av, 0)
* if ((nm != PyArray_DIM(aj, 0)) or
* (nm != PyArray_DIM(av, 0)) or # <<<<<<<<<<<<<<
@@ -28098,7 +28998,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
goto __pyx_L10_bool_binop_done;
}
- /* "PETSc/petscmat.pxi":816
+ /* "PETSc/petscmat.pxi":822
* if ((nm != PyArray_DIM(aj, 0)) or
* (nm != PyArray_DIM(av, 0)) or
* (si*rbs * sj*cbs != sv)): raise ValueError( # <<<<<<<<<<<<<<
@@ -28109,7 +29009,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_t_1 = __pyx_t_5;
__pyx_L10_bool_binop_done:;
- /* "PETSc/petscmat.pxi":814
+ /* "PETSc/petscmat.pxi":820
* cdef Py_ssize_t sj = PyArray_DIM(aj, 1)
* cdef Py_ssize_t sv = PyArray_SIZE(av) // PyArray_DIM(av, 0)
* if ((nm != PyArray_DIM(aj, 0)) or # <<<<<<<<<<<<<<
@@ -28118,20 +29018,20 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":819
+ /* "PETSc/petscmat.pxi":825
* ("input arrays have incompatible shapes: "
* "rows.shape=%s, cols.shape=%s, vals.shape=%s") %
* (ai.shape, aj.shape, av.shape)) # <<<<<<<<<<<<<<
* # MatSetValuesXXX function and insert mode
* cdef MatSetValuesFcn *setvalues = \
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_ai), __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 819, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_ai), __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 825, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_aj), __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 819, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_aj), __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 825, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_av), __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 819, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_av), __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 825, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 819, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 825, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4);
@@ -28143,37 +29043,37 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_t_3 = 0;
__pyx_t_6 = 0;
- /* "PETSc/petscmat.pxi":818
+ /* "PETSc/petscmat.pxi":824
* (si*rbs * sj*cbs != sv)): raise ValueError(
* ("input arrays have incompatible shapes: "
* "rows.shape=%s, cols.shape=%s, vals.shape=%s") % # <<<<<<<<<<<<<<
* (ai.shape, aj.shape, av.shape))
* # MatSetValuesXXX function and insert mode
*/
- __pyx_t_6 = __Pyx_PyString_Format(__pyx_kp_s_input_arrays_have_incompatible_s, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 818, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyString_Format(__pyx_kp_s_input_arrays_have_incompatible_s, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 824, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/petscmat.pxi":816
+ /* "PETSc/petscmat.pxi":822
* if ((nm != PyArray_DIM(aj, 0)) or
* (nm != PyArray_DIM(av, 0)) or
* (si*rbs * sj*cbs != sv)): raise ValueError( # <<<<<<<<<<<<<<
* ("input arrays have incompatible shapes: "
* "rows.shape=%s, cols.shape=%s, vals.shape=%s") %
*/
- __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 816, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(6, 822, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6);
__pyx_t_6 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 816, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 822, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_Raise(__pyx_t_6, 0, 0, 0);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __PYX_ERR(6, 816, __pyx_L1_error)
+ __PYX_ERR(6, 822, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":814
+ /* "PETSc/petscmat.pxi":820
* cdef Py_ssize_t sj = PyArray_DIM(aj, 1)
* cdef Py_ssize_t sv = PyArray_SIZE(av) // PyArray_DIM(av, 0)
* if ((nm != PyArray_DIM(aj, 0)) or # <<<<<<<<<<<<<<
@@ -28182,7 +29082,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":822
+ /* "PETSc/petscmat.pxi":828
* # MatSetValuesXXX function and insert mode
* cdef MatSetValuesFcn *setvalues = \
* matsetvalues_fcn(blocked, local) # <<<<<<<<<<<<<<
@@ -28191,17 +29091,17 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_setvalues = __pyx_f_8petsc4py_5PETSc_matsetvalues_fcn(__pyx_v_blocked, __pyx_v_local);
- /* "PETSc/petscmat.pxi":823
+ /* "PETSc/petscmat.pxi":829
* cdef MatSetValuesFcn *setvalues = \
* matsetvalues_fcn(blocked, local)
* cdef PetscInsertMode addv = insertmode(oaddv) # <<<<<<<<<<<<<<
* # actual calls
* cdef Py_ssize_t k=0
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oaddv); if (unlikely(__pyx_t_8 == ((InsertMode)-1L))) __PYX_ERR(6, 823, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oaddv); if (unlikely(__pyx_t_8 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(6, 829, __pyx_L1_error)
__pyx_v_addv = __pyx_t_8;
- /* "PETSc/petscmat.pxi":825
+ /* "PETSc/petscmat.pxi":831
* cdef PetscInsertMode addv = insertmode(oaddv)
* # actual calls
* cdef Py_ssize_t k=0 # <<<<<<<<<<<<<<
@@ -28210,7 +29110,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
*/
__pyx_v_k = 0;
- /* "PETSc/petscmat.pxi":826
+ /* "PETSc/petscmat.pxi":832
* # actual calls
* cdef Py_ssize_t k=0
* for k from 0 <= k < nm: # <<<<<<<<<<<<<<
@@ -28220,17 +29120,17 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_t_9 = __pyx_v_nm;
for (__pyx_v_k = 0; __pyx_v_k < __pyx_t_9; __pyx_v_k++) {
- /* "PETSc/petscmat.pxi":827
+ /* "PETSc/petscmat.pxi":833
* cdef Py_ssize_t k=0
* for k from 0 <= k < nm:
* CHKERR( setvalues(A, # <<<<<<<<<<<<<<
* <PetscInt>si, &i[k*si],
* <PetscInt>sj, &j[k*sj],
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, ((PetscInt)__pyx_v_si), (&(__pyx_v_i[(__pyx_v_k * __pyx_v_si)])), ((PetscInt)__pyx_v_sj), (&(__pyx_v_j[(__pyx_v_k * __pyx_v_sj)])), (&(__pyx_v_v[(__pyx_v_k * __pyx_v_sv)])), __pyx_v_addv)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 827, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, ((PetscInt)__pyx_v_si), (&(__pyx_v_i[(__pyx_v_k * __pyx_v_si)])), ((PetscInt)__pyx_v_sj), (&(__pyx_v_j[(__pyx_v_k * __pyx_v_sj)])), (&(__pyx_v_v[(__pyx_v_k * __pyx_v_sv)])), __pyx_v_addv)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 833, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":831
+ /* "PETSc/petscmat.pxi":837
* <PetscInt>sj, &j[k*sj],
* &v[k*sv], addv) )
* return 0 # <<<<<<<<<<<<<<
@@ -28240,7 +29140,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":776
+ /* "PETSc/petscmat.pxi":782
* return 0
*
* cdef inline int matsetvalues_rcv(PetscMat A, # <<<<<<<<<<<<<<
@@ -28264,7 +29164,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(Mat __pyx_v_A
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":833
+/* "PETSc/petscmat.pxi":839
* return 0
*
* cdef inline int matsetvalues_ijv(PetscMat A, # <<<<<<<<<<<<<<
@@ -28310,7 +29210,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__Pyx_INCREF(__pyx_v_ov);
__Pyx_INCREF(__pyx_v_om);
- /* "PETSc/petscmat.pxi":839
+ /* "PETSc/petscmat.pxi":845
* int blocked, int local) except -1:
* # block size
* cdef PetscInt rbs=1, cbs=1 # <<<<<<<<<<<<<<
@@ -28320,7 +29220,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_rbs = 1;
__pyx_v_cbs = 1;
- /* "PETSc/petscmat.pxi":840
+ /* "PETSc/petscmat.pxi":846
* # block size
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) ) # <<<<<<<<<<<<<<
@@ -28329,10 +29229,10 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_t_1 = (__pyx_v_blocked != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 840, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 846, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":841
+ /* "PETSc/petscmat.pxi":847
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1 # <<<<<<<<<<<<<<
@@ -28344,7 +29244,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_rbs = 1;
}
- /* "PETSc/petscmat.pxi":842
+ /* "PETSc/petscmat.pxi":848
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1
* if cbs < 1: cbs = 1 # <<<<<<<<<<<<<<
@@ -28356,7 +29256,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_cbs = 1;
}
- /* "PETSc/petscmat.pxi":844
+ /* "PETSc/petscmat.pxi":850
* if cbs < 1: cbs = 1
* # column pointers, column indices, and values
* cdef PetscInt ni=0, *i=NULL # <<<<<<<<<<<<<<
@@ -28366,7 +29266,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_ni = 0;
__pyx_v_i = NULL;
- /* "PETSc/petscmat.pxi":845
+ /* "PETSc/petscmat.pxi":851
* # column pointers, column indices, and values
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL # <<<<<<<<<<<<<<
@@ -28376,7 +29276,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_nj = 0;
__pyx_v_j = NULL;
- /* "PETSc/petscmat.pxi":846
+ /* "PETSc/petscmat.pxi":852
* cdef PetscInt ni=0, *i=NULL
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0 # <<<<<<<<<<<<<<
@@ -28385,7 +29285,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_v_nv = 0;
- /* "PETSc/petscmat.pxi":847
+ /* "PETSc/petscmat.pxi":853
* cdef PetscInt nj=0, *j=NULL
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL # <<<<<<<<<<<<<<
@@ -28394,43 +29294,43 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_v_v = NULL;
- /* "PETSc/petscmat.pxi":848
+ /* "PETSc/petscmat.pxi":854
* cdef PetscInt nv=0
* cdef PetscScalar *v=NULL
* oi = iarray_i(oi, &ni, &i) # <<<<<<<<<<<<<<
* oj = iarray_i(oj, &nj, &j)
* ov = iarray_s(ov, &nv, &v)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 848, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 854, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_oi, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":849
+ /* "PETSc/petscmat.pxi":855
* cdef PetscScalar *v=NULL
* oi = iarray_i(oi, &ni, &i)
* oj = iarray_i(oj, &nj, &j) # <<<<<<<<<<<<<<
* ov = iarray_s(ov, &nv, &v)
* # row indices
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 849, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_oj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 855, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_oj, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":850
+ /* "PETSc/petscmat.pxi":856
* oi = iarray_i(oi, &ni, &i)
* oj = iarray_i(oj, &nj, &j)
* ov = iarray_s(ov, &nv, &v) # <<<<<<<<<<<<<<
* # row indices
* cdef PetscInt nm=0, *m=NULL
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 850, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_ov, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 856, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_ov, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":852
+ /* "PETSc/petscmat.pxi":858
* ov = iarray_s(ov, &nv, &v)
* # row indices
* cdef PetscInt nm=0, *m=NULL # <<<<<<<<<<<<<<
@@ -28440,7 +29340,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_nm = 0;
__pyx_v_m = NULL;
- /* "PETSc/petscmat.pxi":853
+ /* "PETSc/petscmat.pxi":859
* # row indices
* cdef PetscInt nm=0, *m=NULL
* cdef PetscInt rs=0, re=ni-1 # <<<<<<<<<<<<<<
@@ -28450,7 +29350,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_rs = 0;
__pyx_v_re = (__pyx_v_ni - 1);
- /* "PETSc/petscmat.pxi":854
+ /* "PETSc/petscmat.pxi":860
* cdef PetscInt nm=0, *m=NULL
* cdef PetscInt rs=0, re=ni-1
* if om is not None: # <<<<<<<<<<<<<<
@@ -28461,19 +29361,19 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_4 = (__pyx_t_1 != 0);
if (__pyx_t_4) {
- /* "PETSc/petscmat.pxi":855
+ /* "PETSc/petscmat.pxi":861
* cdef PetscInt rs=0, re=ni-1
* if om is not None:
* om = iarray_i(om, &nm, &m) # <<<<<<<<<<<<<<
* else:
* if not local:
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_om, (&__pyx_v_nm), (&__pyx_v_m))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 855, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_om, (&__pyx_v_nm), (&__pyx_v_m))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 861, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_om, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":854
+ /* "PETSc/petscmat.pxi":860
* cdef PetscInt nm=0, *m=NULL
* cdef PetscInt rs=0, re=ni-1
* if om is not None: # <<<<<<<<<<<<<<
@@ -28483,7 +29383,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
goto __pyx_L6;
}
- /* "PETSc/petscmat.pxi":857
+ /* "PETSc/petscmat.pxi":863
* om = iarray_i(om, &nm, &m)
* else:
* if not local: # <<<<<<<<<<<<<<
@@ -28494,16 +29394,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_4 = ((!(__pyx_v_local != 0)) != 0);
if (__pyx_t_4) {
- /* "PETSc/petscmat.pxi":858
+ /* "PETSc/petscmat.pxi":864
* else:
* if not local:
* CHKERR( MatGetOwnershipRange(A, &rs, &re) ) # <<<<<<<<<<<<<<
* rs //= rbs; re //= rbs
* nm = re - rs
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRange(__pyx_v_A, (&__pyx_v_rs), (&__pyx_v_re))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 858, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRange(__pyx_v_A, (&__pyx_v_rs), (&__pyx_v_re))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 864, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":859
+ /* "PETSc/petscmat.pxi":865
* if not local:
* CHKERR( MatGetOwnershipRange(A, &rs, &re) )
* rs //= rbs; re //= rbs # <<<<<<<<<<<<<<
@@ -28513,7 +29413,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_rs = (__pyx_v_rs / __pyx_v_rbs);
__pyx_v_re = (__pyx_v_re / __pyx_v_rbs);
- /* "PETSc/petscmat.pxi":857
+ /* "PETSc/petscmat.pxi":863
* om = iarray_i(om, &nm, &m)
* else:
* if not local: # <<<<<<<<<<<<<<
@@ -28522,7 +29422,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
}
- /* "PETSc/petscmat.pxi":860
+ /* "PETSc/petscmat.pxi":866
* CHKERR( MatGetOwnershipRange(A, &rs, &re) )
* rs //= rbs; re //= rbs
* nm = re - rs # <<<<<<<<<<<<<<
@@ -28533,7 +29433,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
}
__pyx_L6:;
- /* "PETSc/petscmat.pxi":862
+ /* "PETSc/petscmat.pxi":868
* nm = re - rs
* # check various sizes
* if (ni-1 != nm): raise ValueError( # <<<<<<<<<<<<<<
@@ -28543,18 +29443,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_4 = (((__pyx_v_ni - 1) != __pyx_v_nm) != 0);
if (__pyx_t_4) {
- /* "PETSc/petscmat.pxi":864
+ /* "PETSc/petscmat.pxi":870
* if (ni-1 != nm): raise ValueError(
* "size(I) is %d, expected %d" %
* (toInt(ni), toInt(nm+1)) ) # <<<<<<<<<<<<<<
* if (i[0] != 0):raise ValueError(
* "I[0] is %d, expected %d" %
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 864, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 870, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_nm + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 864, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_nm + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 870, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 864, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 870, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
@@ -28563,38 +29463,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_3 = 0;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":863
+ /* "PETSc/petscmat.pxi":869
* # check various sizes
* if (ni-1 != nm): raise ValueError(
* "size(I) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(ni), toInt(nm+1)) )
* if (i[0] != 0):raise ValueError(
*/
- __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_size_I_is_d_expected_d, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 863, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_size_I_is_d_expected_d, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 869, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscmat.pxi":862
+ /* "PETSc/petscmat.pxi":868
* nm = re - rs
* # check various sizes
* if (ni-1 != nm): raise ValueError( # <<<<<<<<<<<<<<
* "size(I) is %d, expected %d" %
* (toInt(ni), toInt(nm+1)) )
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 862, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
__pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 862, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_Raise(__pyx_t_5, 0, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __PYX_ERR(6, 862, __pyx_L1_error)
+ __PYX_ERR(6, 868, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":865
+ /* "PETSc/petscmat.pxi":871
* "size(I) is %d, expected %d" %
* (toInt(ni), toInt(nm+1)) )
* if (i[0] != 0):raise ValueError( # <<<<<<<<<<<<<<
@@ -28604,16 +29504,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_4 = (((__pyx_v_i[0]) != 0) != 0);
if (__pyx_t_4) {
- /* "PETSc/petscmat.pxi":867
+ /* "PETSc/petscmat.pxi":873
* if (i[0] != 0):raise ValueError(
* "I[0] is %d, expected %d" %
* (toInt(i[0]), 0) ) # <<<<<<<<<<<<<<
* if (i[ni-1] != nj): raise ValueError(
* "size(J) is %d, expected %d" %
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[0])); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 867, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[0])); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 873, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 867, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 873, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
@@ -28622,38 +29522,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_0);
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":866
+ /* "PETSc/petscmat.pxi":872
* (toInt(ni), toInt(nm+1)) )
* if (i[0] != 0):raise ValueError(
* "I[0] is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(i[0]), 0) )
* if (i[ni-1] != nj): raise ValueError(
*/
- __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_I_0_is_d_expected_d, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 866, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_I_0_is_d_expected_d, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 872, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscmat.pxi":865
+ /* "PETSc/petscmat.pxi":871
* "size(I) is %d, expected %d" %
* (toInt(ni), toInt(nm+1)) )
* if (i[0] != 0):raise ValueError( # <<<<<<<<<<<<<<
* "I[0] is %d, expected %d" %
* (toInt(i[0]), 0) )
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 865, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 871, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
__pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 865, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 871, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_Raise(__pyx_t_5, 0, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __PYX_ERR(6, 865, __pyx_L1_error)
+ __PYX_ERR(6, 871, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":868
+ /* "PETSc/petscmat.pxi":874
* "I[0] is %d, expected %d" %
* (toInt(i[0]), 0) )
* if (i[ni-1] != nj): raise ValueError( # <<<<<<<<<<<<<<
@@ -28663,18 +29563,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_4 = (((__pyx_v_i[(__pyx_v_ni - 1)]) != __pyx_v_nj) != 0);
if (__pyx_t_4) {
- /* "PETSc/petscmat.pxi":870
+ /* "PETSc/petscmat.pxi":876
* if (i[ni-1] != nj): raise ValueError(
* "size(J) is %d, expected %d" %
* (toInt(nj), toInt(i[ni-1])) ) # <<<<<<<<<<<<<<
* if (nj*rbs*cbs != nv): raise ValueError(
* "size(V) is %d, expected %d" %
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 870, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 876, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[(__pyx_v_ni - 1)])); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 870, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_i[(__pyx_v_ni - 1)])); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 876, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 870, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 876, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5);
@@ -28683,38 +29583,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_5 = 0;
__pyx_t_6 = 0;
- /* "PETSc/petscmat.pxi":869
+ /* "PETSc/petscmat.pxi":875
* (toInt(i[0]), 0) )
* if (i[ni-1] != nj): raise ValueError(
* "size(J) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(nj), toInt(i[ni-1])) )
* if (nj*rbs*cbs != nv): raise ValueError(
*/
- __pyx_t_6 = __Pyx_PyString_Format(__pyx_kp_s_size_J_is_d_expected_d, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 869, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyString_Format(__pyx_kp_s_size_J_is_d_expected_d, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 875, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":868
+ /* "PETSc/petscmat.pxi":874
* "I[0] is %d, expected %d" %
* (toInt(i[0]), 0) )
* if (i[ni-1] != nj): raise ValueError( # <<<<<<<<<<<<<<
* "size(J) is %d, expected %d" %
* (toInt(nj), toInt(i[ni-1])) )
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 868, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 874, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6);
__pyx_t_6 = 0;
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 868, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 874, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_Raise(__pyx_t_6, 0, 0, 0);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __PYX_ERR(6, 868, __pyx_L1_error)
+ __PYX_ERR(6, 874, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":871
+ /* "PETSc/petscmat.pxi":877
* "size(J) is %d, expected %d" %
* (toInt(nj), toInt(i[ni-1])) )
* if (nj*rbs*cbs != nv): raise ValueError( # <<<<<<<<<<<<<<
@@ -28724,18 +29624,18 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_4 = ((((__pyx_v_nj * __pyx_v_rbs) * __pyx_v_cbs) != __pyx_v_nv) != 0);
if (__pyx_t_4) {
- /* "PETSc/petscmat.pxi":873
+ /* "PETSc/petscmat.pxi":879
* if (nj*rbs*cbs != nv): raise ValueError(
* "size(V) is %d, expected %d" %
* (toInt(nv), toInt(nj*rbs*cbs)) ) # <<<<<<<<<<<<<<
* # MatSetValuesXXX function and insert mode
* cdef MatSetValuesFcn *setvalues = \
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 873, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(((__pyx_v_nj * __pyx_v_rbs) * __pyx_v_cbs)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 873, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(((__pyx_v_nj * __pyx_v_rbs) * __pyx_v_cbs)); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 873, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
@@ -28744,38 +29644,38 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_6 = 0;
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":872
+ /* "PETSc/petscmat.pxi":878
* (toInt(nj), toInt(i[ni-1])) )
* if (nj*rbs*cbs != nv): raise ValueError(
* "size(V) is %d, expected %d" % # <<<<<<<<<<<<<<
* (toInt(nv), toInt(nj*rbs*cbs)) )
* # MatSetValuesXXX function and insert mode
*/
- __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_size_V_is_d_expected_d, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 872, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_size_V_is_d_expected_d, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 878, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":871
+ /* "PETSc/petscmat.pxi":877
* "size(J) is %d, expected %d" %
* (toInt(nj), toInt(i[ni-1])) )
* if (nj*rbs*cbs != nv): raise ValueError( # <<<<<<<<<<<<<<
* "size(V) is %d, expected %d" %
* (toInt(nv), toInt(nj*rbs*cbs)) )
*/
- __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 871, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 877, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 871, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 877, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(6, 871, __pyx_L1_error)
+ __PYX_ERR(6, 877, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":876
+ /* "PETSc/petscmat.pxi":882
* # MatSetValuesXXX function and insert mode
* cdef MatSetValuesFcn *setvalues = \
* matsetvalues_fcn(blocked, local) # <<<<<<<<<<<<<<
@@ -28784,17 +29684,17 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_v_setvalues = __pyx_f_8petsc4py_5PETSc_matsetvalues_fcn(__pyx_v_blocked, __pyx_v_local);
- /* "PETSc/petscmat.pxi":877
+ /* "PETSc/petscmat.pxi":883
* cdef MatSetValuesFcn *setvalues = \
* matsetvalues_fcn(blocked, local)
* cdef PetscInsertMode addv = insertmode(oaddv) # <<<<<<<<<<<<<<
* # actual call
* cdef PetscInt k=0, l=0
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oaddv); if (unlikely(__pyx_t_7 == ((InsertMode)-1L))) __PYX_ERR(6, 877, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_oaddv); if (unlikely(__pyx_t_7 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(6, 883, __pyx_L1_error)
__pyx_v_addv = __pyx_t_7;
- /* "PETSc/petscmat.pxi":879
+ /* "PETSc/petscmat.pxi":885
* cdef PetscInsertMode addv = insertmode(oaddv)
* # actual call
* cdef PetscInt k=0, l=0 # <<<<<<<<<<<<<<
@@ -28804,7 +29704,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_k = 0;
__pyx_v_l = 0;
- /* "PETSc/petscmat.pxi":880
+ /* "PETSc/petscmat.pxi":886
* # actual call
* cdef PetscInt k=0, l=0
* cdef PetscInt irow=0, ncol=0, *icol=NULL # <<<<<<<<<<<<<<
@@ -28815,7 +29715,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_v_ncol = 0;
__pyx_v_icol = NULL;
- /* "PETSc/petscmat.pxi":881
+ /* "PETSc/petscmat.pxi":887
* cdef PetscInt k=0, l=0
* cdef PetscInt irow=0, ncol=0, *icol=NULL
* cdef PetscScalar *sval=NULL # <<<<<<<<<<<<<<
@@ -28824,7 +29724,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_v_sval = NULL;
- /* "PETSc/petscmat.pxi":882
+ /* "PETSc/petscmat.pxi":888
* cdef PetscInt irow=0, ncol=0, *icol=NULL
* cdef PetscScalar *sval=NULL
* for k from 0 <= k < nm: # <<<<<<<<<<<<<<
@@ -28834,7 +29734,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_8 = __pyx_v_nm;
for (__pyx_v_k = 0; __pyx_v_k < __pyx_t_8; __pyx_v_k++) {
- /* "PETSc/petscmat.pxi":883
+ /* "PETSc/petscmat.pxi":889
* cdef PetscScalar *sval=NULL
* for k from 0 <= k < nm:
* irow = m[k] if m!=NULL else rs+k # <<<<<<<<<<<<<<
@@ -28848,7 +29748,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
}
__pyx_v_irow = __pyx_t_9;
- /* "PETSc/petscmat.pxi":884
+ /* "PETSc/petscmat.pxi":890
* for k from 0 <= k < nm:
* irow = m[k] if m!=NULL else rs+k
* ncol = i[k+1] - i[k] # <<<<<<<<<<<<<<
@@ -28857,7 +29757,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_v_ncol = ((__pyx_v_i[(__pyx_v_k + 1)]) - (__pyx_v_i[__pyx_v_k]));
- /* "PETSc/petscmat.pxi":885
+ /* "PETSc/petscmat.pxi":891
* irow = m[k] if m!=NULL else rs+k
* ncol = i[k+1] - i[k]
* icol = j + i[k] # <<<<<<<<<<<<<<
@@ -28866,7 +29766,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_v_icol = (__pyx_v_j + (__pyx_v_i[__pyx_v_k]));
- /* "PETSc/petscmat.pxi":886
+ /* "PETSc/petscmat.pxi":892
* ncol = i[k+1] - i[k]
* icol = j + i[k]
* if blocked: # <<<<<<<<<<<<<<
@@ -28876,7 +29776,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_4 = (__pyx_v_blocked != 0);
if (__pyx_t_4) {
- /* "PETSc/petscmat.pxi":887
+ /* "PETSc/petscmat.pxi":893
* icol = j + i[k]
* if blocked:
* sval = v + i[k]*rbs*cbs # <<<<<<<<<<<<<<
@@ -28885,7 +29785,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
*/
__pyx_v_sval = (__pyx_v_v + (((__pyx_v_i[__pyx_v_k]) * __pyx_v_rbs) * __pyx_v_cbs));
- /* "PETSc/petscmat.pxi":888
+ /* "PETSc/petscmat.pxi":894
* if blocked:
* sval = v + i[k]*rbs*cbs
* for l from 0 <= l < ncol: # <<<<<<<<<<<<<<
@@ -28895,17 +29795,17 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_t_9 = __pyx_v_ncol;
for (__pyx_v_l = 0; __pyx_v_l < __pyx_t_9; __pyx_v_l++) {
- /* "PETSc/petscmat.pxi":889
+ /* "PETSc/petscmat.pxi":895
* sval = v + i[k]*rbs*cbs
* for l from 0 <= l < ncol:
* CHKERR( setvalues(A, 1, &irow, 1, &icol[l], # <<<<<<<<<<<<<<
* &sval[l*rbs*cbs], addv) )
* else:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, 1, (&__pyx_v_irow), 1, (&(__pyx_v_icol[__pyx_v_l])), (&(__pyx_v_sval[((__pyx_v_l * __pyx_v_rbs) * __pyx_v_cbs)])), __pyx_v_addv)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 889, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, 1, (&__pyx_v_irow), 1, (&(__pyx_v_icol[__pyx_v_l])), (&(__pyx_v_sval[((__pyx_v_l * __pyx_v_rbs) * __pyx_v_cbs)])), __pyx_v_addv)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 895, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":886
+ /* "PETSc/petscmat.pxi":892
* ncol = i[k+1] - i[k]
* icol = j + i[k]
* if blocked: # <<<<<<<<<<<<<<
@@ -28915,7 +29815,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
goto __pyx_L14;
}
- /* "PETSc/petscmat.pxi":892
+ /* "PETSc/petscmat.pxi":898
* &sval[l*rbs*cbs], addv) )
* else:
* sval = v + i[k] # <<<<<<<<<<<<<<
@@ -28925,19 +29825,19 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
/*else*/ {
__pyx_v_sval = (__pyx_v_v + (__pyx_v_i[__pyx_v_k]));
- /* "PETSc/petscmat.pxi":893
+ /* "PETSc/petscmat.pxi":899
* else:
* sval = v + i[k]
* CHKERR( setvalues(A, 1, &irow, ncol, icol, sval, addv) ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, 1, (&__pyx_v_irow), __pyx_v_ncol, __pyx_v_icol, __pyx_v_sval, __pyx_v_addv)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 893, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_v_setvalues(__pyx_v_A, 1, (&__pyx_v_irow), __pyx_v_ncol, __pyx_v_icol, __pyx_v_sval, __pyx_v_addv)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 899, __pyx_L1_error)
}
__pyx_L14:;
}
- /* "PETSc/petscmat.pxi":894
+ /* "PETSc/petscmat.pxi":900
* sval = v + i[k]
* CHKERR( setvalues(A, 1, &irow, ncol, icol, sval, addv) )
* return 0 # <<<<<<<<<<<<<<
@@ -28947,7 +29847,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":833
+ /* "PETSc/petscmat.pxi":839
* return 0
*
* cdef inline int matsetvalues_ijv(PetscMat A, # <<<<<<<<<<<<<<
@@ -28971,7 +29871,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(Mat __pyx_v_A
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":896
+/* "PETSc/petscmat.pxi":902
* return 0
*
* cdef inline int matsetvalues_csr(PetscMat A, # <<<<<<<<<<<<<<
@@ -28985,16 +29885,16 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(Mat __pyx_v_A
int __pyx_t_1;
__Pyx_RefNannySetupContext("matsetvalues_csr", 0);
- /* "PETSc/petscmat.pxi":900
+ /* "PETSc/petscmat.pxi":906
* object oaddv,
* int blocked, int local) except -1:
* matsetvalues_ijv(A, oi, oj, ov, oaddv, None, blocked, local) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_A, __pyx_v_oi, __pyx_v_oj, __pyx_v_ov, __pyx_v_oaddv, Py_None, __pyx_v_blocked, __pyx_v_local); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 900, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_A, __pyx_v_oi, __pyx_v_oj, __pyx_v_ov, __pyx_v_oaddv, Py_None, __pyx_v_blocked, __pyx_v_local); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 906, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":901
+ /* "PETSc/petscmat.pxi":907
* int blocked, int local) except -1:
* matsetvalues_ijv(A, oi, oj, ov, oaddv, None, blocked, local)
* return 0 # <<<<<<<<<<<<<<
@@ -29004,7 +29904,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(Mat __pyx_v_A
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":896
+ /* "PETSc/petscmat.pxi":902
* return 0
*
* cdef inline int matsetvalues_csr(PetscMat A, # <<<<<<<<<<<<<<
@@ -29021,7 +29921,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(Mat __pyx_v_A
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":903
+/* "PETSc/petscmat.pxi":909
* return 0
*
* cdef inline matgetvalues(PetscMat mat, # <<<<<<<<<<<<<<
@@ -29050,7 +29950,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
__Pyx_RefNannySetupContext("matgetvalues", 0);
__Pyx_INCREF(__pyx_v_values);
- /* "PETSc/petscmat.pxi":905
+ /* "PETSc/petscmat.pxi":911
* cdef inline matgetvalues(PetscMat mat,
* object orows, object ocols, object values):
* cdef PetscInt ni=0, nj=0, nv=0 # <<<<<<<<<<<<<<
@@ -29061,7 +29961,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
__pyx_v_nj = 0;
__pyx_v_nv = 0;
- /* "PETSc/petscmat.pxi":906
+ /* "PETSc/petscmat.pxi":912
* object orows, object ocols, object values):
* cdef PetscInt ni=0, nj=0, nv=0
* cdef PetscInt *i=NULL, *j=NULL # <<<<<<<<<<<<<<
@@ -29071,7 +29971,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
__pyx_v_i = NULL;
__pyx_v_j = NULL;
- /* "PETSc/petscmat.pxi":907
+ /* "PETSc/petscmat.pxi":913
* cdef PetscInt ni=0, nj=0, nv=0
* cdef PetscInt *i=NULL, *j=NULL
* cdef PetscScalar *v=NULL # <<<<<<<<<<<<<<
@@ -29080,31 +29980,31 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
*/
__pyx_v_v = NULL;
- /* "PETSc/petscmat.pxi":908
+ /* "PETSc/petscmat.pxi":914
* cdef PetscInt *i=NULL, *j=NULL
* cdef PetscScalar *v=NULL
* cdef ndarray rows = iarray_i(orows, &ni, &i) # <<<<<<<<<<<<<<
* cdef ndarray cols = iarray_i(ocols, &nj, &j)
* if values is None:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_orows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 908, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_orows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 914, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_rows = ((PyArrayObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":909
+ /* "PETSc/petscmat.pxi":915
* cdef PetscScalar *v=NULL
* cdef ndarray rows = iarray_i(orows, &ni, &i)
* cdef ndarray cols = iarray_i(ocols, &nj, &j) # <<<<<<<<<<<<<<
* if values is None:
* values = empty_s(ni*nj)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_ocols, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 909, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_ocols, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 915, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_cols = ((PyArrayObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":910
+ /* "PETSc/petscmat.pxi":916
* cdef ndarray rows = iarray_i(orows, &ni, &i)
* cdef ndarray cols = iarray_i(ocols, &nj, &j)
* if values is None: # <<<<<<<<<<<<<<
@@ -29115,37 +30015,37 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":911
+ /* "PETSc/petscmat.pxi":917
* cdef ndarray cols = iarray_i(ocols, &nj, &j)
* if values is None:
* values = empty_s(ni*nj) # <<<<<<<<<<<<<<
* values.shape = rows.shape + cols.shape
* values = oarray_s(values, &nv, &v)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_s((__pyx_v_ni * __pyx_v_nj))); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 911, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_s((__pyx_v_ni * __pyx_v_nj))); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 917, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":912
+ /* "PETSc/petscmat.pxi":918
* if values is None:
* values = empty_s(ni*nj)
* values.shape = rows.shape + cols.shape # <<<<<<<<<<<<<<
* values = oarray_s(values, &nv, &v)
* if (ni*nj != nv): raise ValueError(
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_rows), __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 912, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_rows), __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 918, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_cols), __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 912, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_cols), __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 918, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 912, __pyx_L1_error)
+ __pyx_t_5 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 918, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (__Pyx_PyObject_SetAttrStr(__pyx_v_values, __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(6, 912, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_v_values, __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(6, 918, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":910
+ /* "PETSc/petscmat.pxi":916
* cdef ndarray rows = iarray_i(orows, &ni, &i)
* cdef ndarray cols = iarray_i(ocols, &nj, &j)
* if values is None: # <<<<<<<<<<<<<<
@@ -29154,19 +30054,19 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
*/
}
- /* "PETSc/petscmat.pxi":913
+ /* "PETSc/petscmat.pxi":919
* values = empty_s(ni*nj)
* values.shape = rows.shape + cols.shape
* values = oarray_s(values, &nv, &v) # <<<<<<<<<<<<<<
* if (ni*nj != nv): raise ValueError(
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" %
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_s(__pyx_v_values, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 913, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_s(__pyx_v_values, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 919, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_values, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":914
+ /* "PETSc/petscmat.pxi":920
* values.shape = rows.shape + cols.shape
* values = oarray_s(values, &nv, &v)
* if (ni*nj != nv): raise ValueError( # <<<<<<<<<<<<<<
@@ -29176,20 +30076,20 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
__pyx_t_3 = (((__pyx_v_ni * __pyx_v_nj) != __pyx_v_nv) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":916
+ /* "PETSc/petscmat.pxi":922
* if (ni*nj != nv): raise ValueError(
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" %
* (toInt(ni), toInt(nj), toInt(nv))) # <<<<<<<<<<<<<<
* CHKERR( MatGetValues(mat, ni, i, nj, j, v) )
* return values
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 916, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 916, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 916, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 916, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
@@ -29201,47 +30101,47 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
__pyx_t_4 = 0;
__pyx_t_1 = 0;
- /* "PETSc/petscmat.pxi":915
+ /* "PETSc/petscmat.pxi":921
* values = oarray_s(values, &nv, &v)
* if (ni*nj != nv): raise ValueError(
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" % # <<<<<<<<<<<<<<
* (toInt(ni), toInt(nj), toInt(nv)))
* CHKERR( MatGetValues(mat, ni, i, nj, j, v) )
*/
- __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nj, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 915, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_ni_d_nj, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 921, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscmat.pxi":914
+ /* "PETSc/petscmat.pxi":920
* values.shape = rows.shape + cols.shape
* values = oarray_s(values, &nv, &v)
* if (ni*nj != nv): raise ValueError( # <<<<<<<<<<<<<<
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" %
* (toInt(ni), toInt(nj), toInt(nv)))
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 914, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(6, 920, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
__pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 914, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 920, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_Raise(__pyx_t_1, 0, 0, 0);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __PYX_ERR(6, 914, __pyx_L1_error)
+ __PYX_ERR(6, 920, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":917
+ /* "PETSc/petscmat.pxi":923
* "incompatible array sizes: ni=%d, nj=%d, nv=%d" %
* (toInt(ni), toInt(nj), toInt(nv)))
* CHKERR( MatGetValues(mat, ni, i, nj, j, v) ) # <<<<<<<<<<<<<<
* return values
*
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetValues(__pyx_v_mat, __pyx_v_ni, __pyx_v_i, __pyx_v_nj, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(6, 917, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetValues(__pyx_v_mat, __pyx_v_ni, __pyx_v_i, __pyx_v_nj, __pyx_v_j, __pyx_v_v)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(6, 923, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":918
+ /* "PETSc/petscmat.pxi":924
* (toInt(ni), toInt(nj), toInt(nv)))
* CHKERR( MatGetValues(mat, ni, i, nj, j, v) )
* return values # <<<<<<<<<<<<<<
@@ -29253,7 +30153,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
__pyx_r = __pyx_v_values;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":903
+ /* "PETSc/petscmat.pxi":909
* return 0
*
* cdef inline matgetvalues(PetscMat mat, # <<<<<<<<<<<<<<
@@ -29278,7 +30178,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_matgetvalues(Mat __pyx_v
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":925
+/* "PETSc/petscmat.pxi":931
* int MatFactorInfoDefaults(PetscBool,PetscBool,PetscMatFactorInfo*)
*
* cdef inline PetscMatFactorShiftType matfactorshifttype(object st) \ # <<<<<<<<<<<<<<
@@ -29296,7 +30196,7 @@ static CYTHON_INLINE MatFactorShiftType __pyx_f_8petsc4py_5PETSc_matfactorshiftt
MatFactorShiftType __pyx_t_5;
__Pyx_RefNannySetupContext("matfactorshifttype", 0);
- /* "PETSc/petscmat.pxi":927
+ /* "PETSc/petscmat.pxi":933
* cdef inline PetscMatFactorShiftType matfactorshifttype(object st) \
* except <PetscMatFactorShiftType>(-1):
* if isinstance(st, str): # <<<<<<<<<<<<<<
@@ -29307,85 +30207,85 @@ static CYTHON_INLINE MatFactorShiftType __pyx_f_8petsc4py_5PETSc_matfactorshiftt
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":928
+ /* "PETSc/petscmat.pxi":934
* except <PetscMatFactorShiftType>(-1):
* if isinstance(st, str):
* if st == "none": return MAT_SHIFT_NONE # <<<<<<<<<<<<<<
* if st == "nonzero": return MAT_SHIFT_NONZERO
* if st == "positive_definite": return MAT_SHIFT_POSITIVE_DEFINITE
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_none, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 928, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_none, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 934, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_r = MAT_SHIFT_NONE;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":929
+ /* "PETSc/petscmat.pxi":935
* if isinstance(st, str):
* if st == "none": return MAT_SHIFT_NONE
* if st == "nonzero": return MAT_SHIFT_NONZERO # <<<<<<<<<<<<<<
* if st == "positive_definite": return MAT_SHIFT_POSITIVE_DEFINITE
* if st == "inblocks": return MAT_SHIFT_INBLOCKS
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_nonzero, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 929, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_nonzero, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 935, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_r = MAT_SHIFT_NONZERO;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":930
+ /* "PETSc/petscmat.pxi":936
* if st == "none": return MAT_SHIFT_NONE
* if st == "nonzero": return MAT_SHIFT_NONZERO
* if st == "positive_definite": return MAT_SHIFT_POSITIVE_DEFINITE # <<<<<<<<<<<<<<
* if st == "inblocks": return MAT_SHIFT_INBLOCKS
* if st == "na": return MAT_SHIFT_NONZERO
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_positive_definite, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 930, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_positive_definite, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 936, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_r = MAT_SHIFT_POSITIVE_DEFINITE;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":931
+ /* "PETSc/petscmat.pxi":937
* if st == "nonzero": return MAT_SHIFT_NONZERO
* if st == "positive_definite": return MAT_SHIFT_POSITIVE_DEFINITE
* if st == "inblocks": return MAT_SHIFT_INBLOCKS # <<<<<<<<<<<<<<
* if st == "na": return MAT_SHIFT_NONZERO
* if st == "pd": return MAT_SHIFT_POSITIVE_DEFINITE
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_inblocks, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 931, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_inblocks, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 937, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_r = MAT_SHIFT_INBLOCKS;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":932
+ /* "PETSc/petscmat.pxi":938
* if st == "positive_definite": return MAT_SHIFT_POSITIVE_DEFINITE
* if st == "inblocks": return MAT_SHIFT_INBLOCKS
* if st == "na": return MAT_SHIFT_NONZERO # <<<<<<<<<<<<<<
* if st == "pd": return MAT_SHIFT_POSITIVE_DEFINITE
* else: raise ValueError("unknown shift type: %s" % st)
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_na, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 932, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_na, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 938, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_r = MAT_SHIFT_NONZERO;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":933
+ /* "PETSc/petscmat.pxi":939
* if st == "inblocks": return MAT_SHIFT_INBLOCKS
* if st == "na": return MAT_SHIFT_NONZERO
* if st == "pd": return MAT_SHIFT_POSITIVE_DEFINITE # <<<<<<<<<<<<<<
* else: raise ValueError("unknown shift type: %s" % st)
* return st
*/
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_pd, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 933, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_st, __pyx_n_s_pd, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 939, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_r = MAT_SHIFT_POSITIVE_DEFINITE;
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":934
+ /* "PETSc/petscmat.pxi":940
* if st == "na": return MAT_SHIFT_NONZERO
* if st == "pd": return MAT_SHIFT_POSITIVE_DEFINITE
* else: raise ValueError("unknown shift type: %s" % st) # <<<<<<<<<<<<<<
@@ -29393,22 +30293,22 @@ static CYTHON_INLINE MatFactorShiftType __pyx_f_8petsc4py_5PETSc_matfactorshiftt
*
*/
/*else*/ {
- __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_unknown_shift_type_s, __pyx_v_st); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 934, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_unknown_shift_type_s, __pyx_v_st); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 940, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 934, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 940, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 934, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 940, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(6, 934, __pyx_L1_error)
+ __PYX_ERR(6, 940, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":927
+ /* "PETSc/petscmat.pxi":933
* cdef inline PetscMatFactorShiftType matfactorshifttype(object st) \
* except <PetscMatFactorShiftType>(-1):
* if isinstance(st, str): # <<<<<<<<<<<<<<
@@ -29417,18 +30317,18 @@ static CYTHON_INLINE MatFactorShiftType __pyx_f_8petsc4py_5PETSc_matfactorshiftt
*/
}
- /* "PETSc/petscmat.pxi":935
+ /* "PETSc/petscmat.pxi":941
* if st == "pd": return MAT_SHIFT_POSITIVE_DEFINITE
* else: raise ValueError("unknown shift type: %s" % st)
* return st # <<<<<<<<<<<<<<
*
* cdef int matfactorinfo(PetscBool inc, PetscBool chol, object opts,
*/
- __pyx_t_5 = ((MatFactorShiftType)__Pyx_PyInt_As_MatFactorShiftType(__pyx_v_st)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 935, __pyx_L1_error)
+ __pyx_t_5 = ((MatFactorShiftType)__Pyx_PyInt_As_MatFactorShiftType(__pyx_v_st)); if (unlikely(PyErr_Occurred())) __PYX_ERR(6, 941, __pyx_L1_error)
__pyx_r = __pyx_t_5;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":925
+ /* "PETSc/petscmat.pxi":931
* int MatFactorInfoDefaults(PetscBool,PetscBool,PetscMatFactorInfo*)
*
* cdef inline PetscMatFactorShiftType matfactorshifttype(object st) \ # <<<<<<<<<<<<<<
@@ -29447,7 +30347,7 @@ static CYTHON_INLINE MatFactorShiftType __pyx_f_8petsc4py_5PETSc_matfactorshiftt
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":937
+/* "PETSc/petscmat.pxi":943
* return st
*
* cdef int matfactorinfo(PetscBool inc, PetscBool chol, object opts, # <<<<<<<<<<<<<<
@@ -29479,16 +30379,16 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
MatFactorShiftType __pyx_t_9;
__Pyx_RefNannySetupContext("matfactorinfo", 0);
- /* "PETSc/petscmat.pxi":939
+ /* "PETSc/petscmat.pxi":945
* cdef int matfactorinfo(PetscBool inc, PetscBool chol, object opts,
* PetscMatFactorInfo *info) except -1:
* CHKERR( MatFactorInfoDefaults(inc,chol,info) ) # <<<<<<<<<<<<<<
* if opts is None: return 0
* cdef dict options = dict(opts)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatFactorInfoDefaults(__pyx_v_inc, __pyx_v_chol, __pyx_v_info)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(6, 939, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatFactorInfoDefaults(__pyx_v_inc, __pyx_v_chol, __pyx_v_info)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(6, 945, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":940
+ /* "PETSc/petscmat.pxi":946
* PetscMatFactorInfo *info) except -1:
* CHKERR( MatFactorInfoDefaults(inc,chol,info) )
* if opts is None: return 0 # <<<<<<<<<<<<<<
@@ -29502,40 +30402,40 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
goto __pyx_L0;
}
- /* "PETSc/petscmat.pxi":941
+ /* "PETSc/petscmat.pxi":947
* CHKERR( MatFactorInfoDefaults(inc,chol,info) )
* if opts is None: return 0
* cdef dict options = dict(opts) # <<<<<<<<<<<<<<
* #
* cdef fill = options.pop('fill', None)
*/
- __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 941, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 947, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_opts);
__Pyx_GIVEREF(__pyx_v_opts);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_opts);
- __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyDict_Type)), __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 941, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyDict_Type)), __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 947, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_options = ((PyObject*)__pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":943
+ /* "PETSc/petscmat.pxi":949
* cdef dict options = dict(opts)
* #
* cdef fill = options.pop('fill', None) # <<<<<<<<<<<<<<
* if fill is not None:
* info.fill = asReal(fill)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 943, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__23, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 943, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__23, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_fill = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":944
+ /* "PETSc/petscmat.pxi":950
* #
* cdef fill = options.pop('fill', None)
* if fill is not None: # <<<<<<<<<<<<<<
@@ -29546,17 +30446,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":945
+ /* "PETSc/petscmat.pxi":951
* cdef fill = options.pop('fill', None)
* if fill is not None:
* info.fill = asReal(fill) # <<<<<<<<<<<<<<
* #
* cdef zeropivot = options.pop('zeropivot', None)
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_6 == -1.0 && PyErr_Occurred())) __PYX_ERR(6, 945, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_6 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(6, 951, __pyx_L1_error)
__pyx_v_info->fill = __pyx_t_6;
- /* "PETSc/petscmat.pxi":944
+ /* "PETSc/petscmat.pxi":950
* #
* cdef fill = options.pop('fill', None)
* if fill is not None: # <<<<<<<<<<<<<<
@@ -29565,22 +30465,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":947
+ /* "PETSc/petscmat.pxi":953
* info.fill = asReal(fill)
* #
* cdef zeropivot = options.pop('zeropivot', None) # <<<<<<<<<<<<<<
* if zeropivot is not None:
* info.zeropivot = asReal(zeropivot)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 947, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 953, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__24, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 947, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__24, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 953, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_zeropivot = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":948
+ /* "PETSc/petscmat.pxi":954
* #
* cdef zeropivot = options.pop('zeropivot', None)
* if zeropivot is not None: # <<<<<<<<<<<<<<
@@ -29591,17 +30491,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":949
+ /* "PETSc/petscmat.pxi":955
* cdef zeropivot = options.pop('zeropivot', None)
* if zeropivot is not None:
* info.zeropivot = asReal(zeropivot) # <<<<<<<<<<<<<<
* #
* cdef levels = options.pop('levels', None)
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zeropivot); if (unlikely(__pyx_t_6 == -1.0 && PyErr_Occurred())) __PYX_ERR(6, 949, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zeropivot); if (unlikely(__pyx_t_6 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(6, 955, __pyx_L1_error)
__pyx_v_info->zeropivot = __pyx_t_6;
- /* "PETSc/petscmat.pxi":948
+ /* "PETSc/petscmat.pxi":954
* #
* cdef zeropivot = options.pop('zeropivot', None)
* if zeropivot is not None: # <<<<<<<<<<<<<<
@@ -29610,22 +30510,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":951
+ /* "PETSc/petscmat.pxi":957
* info.zeropivot = asReal(zeropivot)
* #
* cdef levels = options.pop('levels', None) # <<<<<<<<<<<<<<
* if levels is not None:
* info.levels = <PetscReal>asInt(levels)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 951, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 957, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 951, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 957, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_levels = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":952
+ /* "PETSc/petscmat.pxi":958
* #
* cdef levels = options.pop('levels', None)
* if levels is not None: # <<<<<<<<<<<<<<
@@ -29636,17 +30536,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":953
+ /* "PETSc/petscmat.pxi":959
* cdef levels = options.pop('levels', None)
* if levels is not None:
* info.levels = <PetscReal>asInt(levels) # <<<<<<<<<<<<<<
* cdef diagonal_fill = options.pop('diagonal_fill', None)
* if diagonal_fill is not None:
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_7 == -1L && PyErr_Occurred())) __PYX_ERR(6, 953, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_7 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 959, __pyx_L1_error)
__pyx_v_info->levels = ((PetscReal)__pyx_t_7);
- /* "PETSc/petscmat.pxi":952
+ /* "PETSc/petscmat.pxi":958
* #
* cdef levels = options.pop('levels', None)
* if levels is not None: # <<<<<<<<<<<<<<
@@ -29655,22 +30555,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":954
+ /* "PETSc/petscmat.pxi":960
* if levels is not None:
* info.levels = <PetscReal>asInt(levels)
* cdef diagonal_fill = options.pop('diagonal_fill', None) # <<<<<<<<<<<<<<
* if diagonal_fill is not None:
* info.diagonal_fill = <PetscReal>(<bint>diagonal_fill)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 954, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 960, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__26, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 954, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__26, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 960, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_diagonal_fill = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":955
+ /* "PETSc/petscmat.pxi":961
* info.levels = <PetscReal>asInt(levels)
* cdef diagonal_fill = options.pop('diagonal_fill', None)
* if diagonal_fill is not None: # <<<<<<<<<<<<<<
@@ -29681,17 +30581,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":956
+ /* "PETSc/petscmat.pxi":962
* cdef diagonal_fill = options.pop('diagonal_fill', None)
* if diagonal_fill is not None:
* info.diagonal_fill = <PetscReal>(<bint>diagonal_fill) # <<<<<<<<<<<<<<
* #
* cdef dt = options.pop('dt', None)
*/
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_diagonal_fill); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(6, 956, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_diagonal_fill); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(6, 962, __pyx_L1_error)
__pyx_v_info->diagonal_fill = ((PetscReal)__pyx_t_3);
- /* "PETSc/petscmat.pxi":955
+ /* "PETSc/petscmat.pxi":961
* info.levels = <PetscReal>asInt(levels)
* cdef diagonal_fill = options.pop('diagonal_fill', None)
* if diagonal_fill is not None: # <<<<<<<<<<<<<<
@@ -29700,22 +30600,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":958
+ /* "PETSc/petscmat.pxi":964
* info.diagonal_fill = <PetscReal>(<bint>diagonal_fill)
* #
* cdef dt = options.pop('dt', None) # <<<<<<<<<<<<<<
* if dt is not None:
* info.dt = asReal(dt)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 958, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 964, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__27, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 958, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__27, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 964, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_dt = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":959
+ /* "PETSc/petscmat.pxi":965
* #
* cdef dt = options.pop('dt', None)
* if dt is not None: # <<<<<<<<<<<<<<
@@ -29726,17 +30626,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":960
+ /* "PETSc/petscmat.pxi":966
* cdef dt = options.pop('dt', None)
* if dt is not None:
* info.dt = asReal(dt) # <<<<<<<<<<<<<<
* cdef dtcol = options.pop('dtcol', None)
* if dtcol is not None:
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_dt); if (unlikely(__pyx_t_6 == -1.0 && PyErr_Occurred())) __PYX_ERR(6, 960, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_dt); if (unlikely(__pyx_t_6 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(6, 966, __pyx_L1_error)
__pyx_v_info->dt = __pyx_t_6;
- /* "PETSc/petscmat.pxi":959
+ /* "PETSc/petscmat.pxi":965
* #
* cdef dt = options.pop('dt', None)
* if dt is not None: # <<<<<<<<<<<<<<
@@ -29745,22 +30645,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":961
+ /* "PETSc/petscmat.pxi":967
* if dt is not None:
* info.dt = asReal(dt)
* cdef dtcol = options.pop('dtcol', None) # <<<<<<<<<<<<<<
* if dtcol is not None:
* info.dtcol = asReal(dtcol)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 961, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__28, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 961, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__28, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_dtcol = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":962
+ /* "PETSc/petscmat.pxi":968
* info.dt = asReal(dt)
* cdef dtcol = options.pop('dtcol', None)
* if dtcol is not None: # <<<<<<<<<<<<<<
@@ -29771,17 +30671,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscmat.pxi":963
+ /* "PETSc/petscmat.pxi":969
* cdef dtcol = options.pop('dtcol', None)
* if dtcol is not None:
* info.dtcol = asReal(dtcol) # <<<<<<<<<<<<<<
* cdef dtcount = options.pop('dtcount', None)
* if dtcount is not None:
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_dtcol); if (unlikely(__pyx_t_6 == -1.0 && PyErr_Occurred())) __PYX_ERR(6, 963, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_dtcol); if (unlikely(__pyx_t_6 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(6, 969, __pyx_L1_error)
__pyx_v_info->dtcol = __pyx_t_6;
- /* "PETSc/petscmat.pxi":962
+ /* "PETSc/petscmat.pxi":968
* info.dt = asReal(dt)
* cdef dtcol = options.pop('dtcol', None)
* if dtcol is not None: # <<<<<<<<<<<<<<
@@ -29790,22 +30690,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":964
+ /* "PETSc/petscmat.pxi":970
* if dtcol is not None:
* info.dtcol = asReal(dtcol)
* cdef dtcount = options.pop('dtcount', None) # <<<<<<<<<<<<<<
* if dtcount is not None:
* info.dtcount = <PetscReal>asInt(dtcount)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 964, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 970, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__29, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 964, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__29, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 970, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_dtcount = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":965
+ /* "PETSc/petscmat.pxi":971
* info.dtcol = asReal(dtcol)
* cdef dtcount = options.pop('dtcount', None)
* if dtcount is not None: # <<<<<<<<<<<<<<
@@ -29816,17 +30716,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":966
+ /* "PETSc/petscmat.pxi":972
* cdef dtcount = options.pop('dtcount', None)
* if dtcount is not None:
* info.dtcount = <PetscReal>asInt(dtcount) # <<<<<<<<<<<<<<
* if ((dt is not None) or
* (dtcol is not None) or
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dtcount); if (unlikely(__pyx_t_7 == -1L && PyErr_Occurred())) __PYX_ERR(6, 966, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dtcount); if (unlikely(__pyx_t_7 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 972, __pyx_L1_error)
__pyx_v_info->dtcount = ((PetscReal)__pyx_t_7);
- /* "PETSc/petscmat.pxi":965
+ /* "PETSc/petscmat.pxi":971
* info.dtcol = asReal(dtcol)
* cdef dtcount = options.pop('dtcount', None)
* if dtcount is not None: # <<<<<<<<<<<<<<
@@ -29835,7 +30735,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":967
+ /* "PETSc/petscmat.pxi":973
* if dtcount is not None:
* info.dtcount = <PetscReal>asInt(dtcount)
* if ((dt is not None) or # <<<<<<<<<<<<<<
@@ -29850,7 +30750,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
goto __pyx_L12_bool_binop_done;
}
- /* "PETSc/petscmat.pxi":968
+ /* "PETSc/petscmat.pxi":974
* info.dtcount = <PetscReal>asInt(dtcount)
* if ((dt is not None) or
* (dtcol is not None) or # <<<<<<<<<<<<<<
@@ -29865,7 +30765,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
goto __pyx_L12_bool_binop_done;
}
- /* "PETSc/petscmat.pxi":969
+ /* "PETSc/petscmat.pxi":975
* if ((dt is not None) or
* (dtcol is not None) or
* (dtcount is not None)): # <<<<<<<<<<<<<<
@@ -29877,7 +30777,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_2 = __pyx_t_8;
__pyx_L12_bool_binop_done:;
- /* "PETSc/petscmat.pxi":967
+ /* "PETSc/petscmat.pxi":973
* if dtcount is not None:
* info.dtcount = <PetscReal>asInt(dtcount)
* if ((dt is not None) or # <<<<<<<<<<<<<<
@@ -29886,7 +30786,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":970
+ /* "PETSc/petscmat.pxi":976
* (dtcol is not None) or
* (dtcount is not None)):
* info.usedt = <PetscReal>PETSC_TRUE # <<<<<<<<<<<<<<
@@ -29895,7 +30795,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
__pyx_v_info->usedt = ((PetscReal)PETSC_TRUE);
- /* "PETSc/petscmat.pxi":967
+ /* "PETSc/petscmat.pxi":973
* if dtcount is not None:
* info.dtcount = <PetscReal>asInt(dtcount)
* if ((dt is not None) or # <<<<<<<<<<<<<<
@@ -29904,22 +30804,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":972
+ /* "PETSc/petscmat.pxi":978
* info.usedt = <PetscReal>PETSC_TRUE
* #
* cdef shifttype = options.pop('shifttype', None) # <<<<<<<<<<<<<<
* if shifttype is not None:
* info.shifttype = <PetscReal>matfactorshifttype(shifttype)
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 972, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 978, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__30, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 972, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__30, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 978, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_shifttype = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":973
+ /* "PETSc/petscmat.pxi":979
* #
* cdef shifttype = options.pop('shifttype', None)
* if shifttype is not None: # <<<<<<<<<<<<<<
@@ -29930,17 +30830,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_8 = (__pyx_t_2 != 0);
if (__pyx_t_8) {
- /* "PETSc/petscmat.pxi":974
+ /* "PETSc/petscmat.pxi":980
* cdef shifttype = options.pop('shifttype', None)
* if shifttype is not None:
* info.shifttype = <PetscReal>matfactorshifttype(shifttype) # <<<<<<<<<<<<<<
* cdef shiftamount = options.pop('shiftamount', None)
* if shiftamount is not None:
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_matfactorshifttype(__pyx_v_shifttype); if (unlikely(__pyx_t_9 == ((MatFactorShiftType)-1L))) __PYX_ERR(6, 974, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_matfactorshifttype(__pyx_v_shifttype); if (unlikely(__pyx_t_9 == ((MatFactorShiftType)((MatFactorShiftType)-1L)))) __PYX_ERR(6, 980, __pyx_L1_error)
__pyx_v_info->shifttype = ((PetscReal)__pyx_t_9);
- /* "PETSc/petscmat.pxi":973
+ /* "PETSc/petscmat.pxi":979
* #
* cdef shifttype = options.pop('shifttype', None)
* if shifttype is not None: # <<<<<<<<<<<<<<
@@ -29949,22 +30849,22 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":975
+ /* "PETSc/petscmat.pxi":981
* if shifttype is not None:
* info.shifttype = <PetscReal>matfactorshifttype(shifttype)
* cdef shiftamount = options.pop('shiftamount', None) # <<<<<<<<<<<<<<
* if shiftamount is not None:
* info.shiftamount = asReal(shiftamount)
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 975, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_options, __pyx_n_s_pop); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__31, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 975, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__31, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_shiftamount = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscmat.pxi":976
+ /* "PETSc/petscmat.pxi":982
* info.shifttype = <PetscReal>matfactorshifttype(shifttype)
* cdef shiftamount = options.pop('shiftamount', None)
* if shiftamount is not None: # <<<<<<<<<<<<<<
@@ -29975,17 +30875,17 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_t_2 = (__pyx_t_8 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":977
+ /* "PETSc/petscmat.pxi":983
* cdef shiftamount = options.pop('shiftamount', None)
* if shiftamount is not None:
* info.shiftamount = asReal(shiftamount) # <<<<<<<<<<<<<<
* #
* if options:
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_shiftamount); if (unlikely(__pyx_t_6 == -1.0 && PyErr_Occurred())) __PYX_ERR(6, 977, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_shiftamount); if (unlikely(__pyx_t_6 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(6, 983, __pyx_L1_error)
__pyx_v_info->shiftamount = __pyx_t_6;
- /* "PETSc/petscmat.pxi":976
+ /* "PETSc/petscmat.pxi":982
* info.shifttype = <PetscReal>matfactorshifttype(shifttype)
* cdef shiftamount = options.pop('shiftamount', None)
* if shiftamount is not None: # <<<<<<<<<<<<<<
@@ -29994,52 +30894,52 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":979
+ /* "PETSc/petscmat.pxi":985
* info.shiftamount = asReal(shiftamount)
* #
* if options: # <<<<<<<<<<<<<<
* raise ValueError("unknown options: %s"
* % list(options.keys()))
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_options); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 979, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_options); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(6, 985, __pyx_L1_error)
if (__pyx_t_2) {
- /* "PETSc/petscmat.pxi":981
+ /* "PETSc/petscmat.pxi":987
* if options:
* raise ValueError("unknown options: %s"
* % list(options.keys())) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_4 = __Pyx_PyDict_Keys(__pyx_v_options); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 981, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_Keys(__pyx_v_options); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 987, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_List(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 981, __pyx_L1_error)
+ __pyx_t_5 = PySequence_List(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 987, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_unknown_options_s, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 981, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_unknown_options_s, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 987, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscmat.pxi":980
+ /* "PETSc/petscmat.pxi":986
* #
* if options:
* raise ValueError("unknown options: %s" # <<<<<<<<<<<<<<
* % list(options.keys()))
* return 0
*/
- __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 980, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(6, 986, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 980, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 986, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(6, 980, __pyx_L1_error)
+ __PYX_ERR(6, 986, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":979
+ /* "PETSc/petscmat.pxi":985
* info.shiftamount = asReal(shiftamount)
* #
* if options: # <<<<<<<<<<<<<<
@@ -30048,7 +30948,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
*/
}
- /* "PETSc/petscmat.pxi":982
+ /* "PETSc/petscmat.pxi":988
* raise ValueError("unknown options: %s"
* % list(options.keys()))
* return 0 # <<<<<<<<<<<<<<
@@ -30058,7 +30958,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":937
+ /* "PETSc/petscmat.pxi":943
* return st
*
* cdef int matfactorinfo(PetscBool inc, PetscBool chol, object opts, # <<<<<<<<<<<<<<
@@ -30087,7 +30987,7 @@ static int __pyx_f_8petsc4py_5PETSc_matfactorinfo(PetscBool __pyx_v_inc, PetscBo
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":986
+/* "PETSc/petscmat.pxi":992
* # -----------------------------------------------------------------------------
*
* cdef object mat_getitem(Mat self, object ij): # <<<<<<<<<<<<<<
@@ -30116,7 +31016,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
PyObject *__pyx_t_9 = NULL;
__Pyx_RefNannySetupContext("mat_getitem", 0);
- /* "PETSc/petscmat.pxi":987
+ /* "PETSc/petscmat.pxi":993
*
* cdef object mat_getitem(Mat self, object ij):
* cdef PetscInt M=0, N=0 # <<<<<<<<<<<<<<
@@ -30126,7 +31026,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__pyx_v_M = 0;
__pyx_v_N = 0;
- /* "PETSc/petscmat.pxi":988
+ /* "PETSc/petscmat.pxi":994
* cdef object mat_getitem(Mat self, object ij):
* cdef PetscInt M=0, N=0
* rows, cols = ij # <<<<<<<<<<<<<<
@@ -30135,7 +31035,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
*/
if ((likely(PyTuple_CheckExact(__pyx_v_ij))) || (PyList_CheckExact(__pyx_v_ij))) {
PyObject* sequence = __pyx_v_ij;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -30143,9 +31043,9 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 988, __pyx_L1_error)
+ __PYX_ERR(6, 994, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
@@ -30156,21 +31056,21 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_2);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 988, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 994, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 988, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 994, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_3 = PyObject_GetIter(__pyx_v_ij); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 988, __pyx_L1_error)
+ __pyx_t_3 = PyObject_GetIter(__pyx_v_ij); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 994, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = Py_TYPE(__pyx_t_3)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_4(__pyx_t_3); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_2 = __pyx_t_4(__pyx_t_3); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_3), 2) < 0) __PYX_ERR(6, 988, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_3), 2) < 0) __PYX_ERR(6, 994, __pyx_L1_error)
__pyx_t_4 = NULL;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
goto __pyx_L4_unpacking_done;
@@ -30178,7 +31078,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_4 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 988, __pyx_L1_error)
+ __PYX_ERR(6, 994, __pyx_L1_error)
__pyx_L4_unpacking_done:;
}
__pyx_v_rows = __pyx_t_1;
@@ -30186,7 +31086,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__pyx_v_cols = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":989
+ /* "PETSc/petscmat.pxi":995
* cdef PetscInt M=0, N=0
* rows, cols = ij
* if isinstance(rows, slice): # <<<<<<<<<<<<<<
@@ -30197,28 +31097,28 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__pyx_t_6 = (__pyx_t_5 != 0);
if (__pyx_t_6) {
- /* "PETSc/petscmat.pxi":990
+ /* "PETSc/petscmat.pxi":996
* rows, cols = ij
* if isinstance(rows, slice):
* CHKERR( MatGetSize(self.mat, &M, NULL) ) # <<<<<<<<<<<<<<
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride)
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), NULL)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(6, 990, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), NULL)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(6, 996, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":991
+ /* "PETSc/petscmat.pxi":997
* if isinstance(rows, slice):
* CHKERR( MatGetSize(self.mat, &M, NULL) )
* start, stop, stride = rows.indices(toInt(M)) # <<<<<<<<<<<<<<
* rows = arange(start, stop, stride)
* if isinstance(cols, slice):
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_rows, __pyx_n_s_indices); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 991, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_rows, __pyx_n_s_indices); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 997, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 991, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 997, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
@@ -30228,24 +31128,44 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
}
}
if (!__pyx_t_8) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 991, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 997, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 991, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3);
- __pyx_t_3 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 991, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_1)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_3};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 997, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_3};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 997, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 997, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3);
+ __pyx_t_3 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 997, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -30253,9 +31173,9 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 991, __pyx_L1_error)
+ __PYX_ERR(6, 997, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_9 = PyTuple_GET_ITEM(sequence, 1);
@@ -30269,17 +31189,17 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(__pyx_t_3);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 991, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 997, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 991, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 997, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_3 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 991, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 997, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_8 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 991, __pyx_L1_error)
+ __pyx_t_8 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 997, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_4 = Py_TYPE(__pyx_t_8)->tp_iternext;
@@ -30289,7 +31209,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_GOTREF(__pyx_t_9);
index = 2; __pyx_t_3 = __pyx_t_4(__pyx_t_8); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_8), 3) < 0) __PYX_ERR(6, 991, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_8), 3) < 0) __PYX_ERR(6, 997, __pyx_L1_error)
__pyx_t_4 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L7_unpacking_done;
@@ -30297,7 +31217,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_4 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 991, __pyx_L1_error)
+ __PYX_ERR(6, 997, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__pyx_v_start = __pyx_t_1;
@@ -30307,19 +31227,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__pyx_v_stride = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":992
+ /* "PETSc/petscmat.pxi":998
* CHKERR( MatGetSize(self.mat, &M, NULL) )
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride) # <<<<<<<<<<<<<<
* if isinstance(cols, slice):
* CHKERR( MatGetSize(self.mat, NULL, &N) )
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 992, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 998, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_rows, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":989
+ /* "PETSc/petscmat.pxi":995
* cdef PetscInt M=0, N=0
* rows, cols = ij
* if isinstance(rows, slice): # <<<<<<<<<<<<<<
@@ -30328,7 +31248,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
*/
}
- /* "PETSc/petscmat.pxi":993
+ /* "PETSc/petscmat.pxi":999
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride)
* if isinstance(cols, slice): # <<<<<<<<<<<<<<
@@ -30339,28 +31259,28 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__pyx_t_5 = (__pyx_t_6 != 0);
if (__pyx_t_5) {
- /* "PETSc/petscmat.pxi":994
+ /* "PETSc/petscmat.pxi":1000
* rows = arange(start, stop, stride)
* if isinstance(cols, slice):
* CHKERR( MatGetSize(self.mat, NULL, &N) ) # <<<<<<<<<<<<<<
* start, stop, stride = cols.indices(toInt(N))
* cols = arange(start, stop, stride)
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(6, 994, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(6, 1000, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":995
+ /* "PETSc/petscmat.pxi":1001
* if isinstance(cols, slice):
* CHKERR( MatGetSize(self.mat, NULL, &N) )
* start, stop, stride = cols.indices(toInt(N)) # <<<<<<<<<<<<<<
* cols = arange(start, stop, stride)
* return matgetvalues(self.mat, rows, cols, None)
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_cols, __pyx_n_s_indices); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 995, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_cols, __pyx_n_s_indices); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1001, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 995, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1001, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_1 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -30370,24 +31290,44 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
}
}
if (!__pyx_t_1) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 995, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1001, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 995, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL;
- __Pyx_GIVEREF(__pyx_t_9);
- PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_9);
- __pyx_t_9 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 995, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_t_9};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1001, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_t_9};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1001, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1001, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL;
+ __Pyx_GIVEREF(__pyx_t_9);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_9);
+ __pyx_t_9 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1001, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -30395,9 +31335,9 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 995, __pyx_L1_error)
+ __PYX_ERR(6, 1001, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -30411,17 +31351,17 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 995, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1001, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 995, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1001, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 995, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1001, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 995, __pyx_L1_error)
+ __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1001, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext;
@@ -30431,7 +31371,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_9 = __pyx_t_4(__pyx_t_1); if (unlikely(!__pyx_t_9)) goto __pyx_L9_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_1), 3) < 0) __PYX_ERR(6, 995, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_1), 3) < 0) __PYX_ERR(6, 1001, __pyx_L1_error)
__pyx_t_4 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L10_unpacking_done;
@@ -30439,7 +31379,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_4 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 995, __pyx_L1_error)
+ __PYX_ERR(6, 1001, __pyx_L1_error)
__pyx_L10_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_start, __pyx_t_3);
@@ -30449,19 +31389,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
__Pyx_XDECREF_SET(__pyx_v_stride, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":996
+ /* "PETSc/petscmat.pxi":1002
* CHKERR( MatGetSize(self.mat, NULL, &N) )
* start, stop, stride = cols.indices(toInt(N))
* cols = arange(start, stop, stride) # <<<<<<<<<<<<<<
* return matgetvalues(self.mat, rows, cols, None)
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 996, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1002, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_cols, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":993
+ /* "PETSc/petscmat.pxi":999
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride)
* if isinstance(cols, slice): # <<<<<<<<<<<<<<
@@ -30470,7 +31410,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
*/
}
- /* "PETSc/petscmat.pxi":997
+ /* "PETSc/petscmat.pxi":1003
* start, stop, stride = cols.indices(toInt(N))
* cols = arange(start, stop, stride)
* return matgetvalues(self.mat, rows, cols, None) # <<<<<<<<<<<<<<
@@ -30478,13 +31418,13 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
*
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_matgetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 997, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_matgetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1003, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":986
+ /* "PETSc/petscmat.pxi":992
* # -----------------------------------------------------------------------------
*
* cdef object mat_getitem(Mat self, object ij): # <<<<<<<<<<<<<<
@@ -30512,7 +31452,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_mat_getitem(struct PyPetscMatObject *_
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1000
+/* "PETSc/petscmat.pxi":1006
*
*
* cdef int mat_setitem(Mat self, object ij, object v) except -1: # <<<<<<<<<<<<<<
@@ -30541,7 +31481,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
PyObject *__pyx_t_9 = NULL;
__Pyx_RefNannySetupContext("mat_setitem", 0);
- /* "PETSc/petscmat.pxi":1001
+ /* "PETSc/petscmat.pxi":1007
*
* cdef int mat_setitem(Mat self, object ij, object v) except -1:
* cdef PetscInt M=0, N=0 # <<<<<<<<<<<<<<
@@ -30551,7 +31491,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__pyx_v_M = 0;
__pyx_v_N = 0;
- /* "PETSc/petscmat.pxi":1002
+ /* "PETSc/petscmat.pxi":1008
* cdef int mat_setitem(Mat self, object ij, object v) except -1:
* cdef PetscInt M=0, N=0
* rows, cols = ij # <<<<<<<<<<<<<<
@@ -30560,7 +31500,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
*/
if ((likely(PyTuple_CheckExact(__pyx_v_ij))) || (PyList_CheckExact(__pyx_v_ij))) {
PyObject* sequence = __pyx_v_ij;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -30568,9 +31508,9 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 1002, __pyx_L1_error)
+ __PYX_ERR(6, 1008, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
@@ -30581,21 +31521,21 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_2);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1002, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1008, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1002, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1008, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_3 = PyObject_GetIter(__pyx_v_ij); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1002, __pyx_L1_error)
+ __pyx_t_3 = PyObject_GetIter(__pyx_v_ij); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1008, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = Py_TYPE(__pyx_t_3)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_4(__pyx_t_3); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_2 = __pyx_t_4(__pyx_t_3); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_3), 2) < 0) __PYX_ERR(6, 1002, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_3), 2) < 0) __PYX_ERR(6, 1008, __pyx_L1_error)
__pyx_t_4 = NULL;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
goto __pyx_L4_unpacking_done;
@@ -30603,7 +31543,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_4 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 1002, __pyx_L1_error)
+ __PYX_ERR(6, 1008, __pyx_L1_error)
__pyx_L4_unpacking_done:;
}
__pyx_v_rows = __pyx_t_1;
@@ -30611,7 +31551,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__pyx_v_cols = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":1003
+ /* "PETSc/petscmat.pxi":1009
* cdef PetscInt M=0, N=0
* rows, cols = ij
* if isinstance(rows, slice): # <<<<<<<<<<<<<<
@@ -30622,28 +31562,28 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__pyx_t_6 = (__pyx_t_5 != 0);
if (__pyx_t_6) {
- /* "PETSc/petscmat.pxi":1004
+ /* "PETSc/petscmat.pxi":1010
* rows, cols = ij
* if isinstance(rows, slice):
* CHKERR( MatGetSize(self.mat, &M, NULL) ) # <<<<<<<<<<<<<<
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride)
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), NULL)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(6, 1004, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), NULL)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(6, 1010, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":1005
+ /* "PETSc/petscmat.pxi":1011
* if isinstance(rows, slice):
* CHKERR( MatGetSize(self.mat, &M, NULL) )
* start, stop, stride = rows.indices(toInt(M)) # <<<<<<<<<<<<<<
* rows = arange(start, stop, stride)
* if isinstance(cols, slice):
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_rows, __pyx_n_s_indices); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1005, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_rows, __pyx_n_s_indices); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1005, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
@@ -30653,24 +31593,44 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
}
}
if (!__pyx_t_8) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1005, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1011, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1005, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_9);
- __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3);
- __pyx_t_3 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1005, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_1)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_3};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1011, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_1)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_8, __pyx_t_3};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_1, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1011, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1011, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL;
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3);
+ __pyx_t_3 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1011, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -30678,9 +31638,9 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 1005, __pyx_L1_error)
+ __PYX_ERR(6, 1011, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_9 = PyTuple_GET_ITEM(sequence, 1);
@@ -30694,17 +31654,17 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(__pyx_t_3);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1005, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1005, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_3 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1005, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_8 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1005, __pyx_L1_error)
+ __pyx_t_8 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1011, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_4 = Py_TYPE(__pyx_t_8)->tp_iternext;
@@ -30714,7 +31674,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_GOTREF(__pyx_t_9);
index = 2; __pyx_t_3 = __pyx_t_4(__pyx_t_8); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_8), 3) < 0) __PYX_ERR(6, 1005, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_8), 3) < 0) __PYX_ERR(6, 1011, __pyx_L1_error)
__pyx_t_4 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L7_unpacking_done;
@@ -30722,7 +31682,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_4 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 1005, __pyx_L1_error)
+ __PYX_ERR(6, 1011, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__pyx_v_start = __pyx_t_1;
@@ -30732,19 +31692,19 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__pyx_v_stride = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":1006
+ /* "PETSc/petscmat.pxi":1012
* CHKERR( MatGetSize(self.mat, &M, NULL) )
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride) # <<<<<<<<<<<<<<
* if isinstance(cols, slice):
* CHKERR( MatGetSize(self.mat, NULL, &N) )
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1006, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1012, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_rows, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":1003
+ /* "PETSc/petscmat.pxi":1009
* cdef PetscInt M=0, N=0
* rows, cols = ij
* if isinstance(rows, slice): # <<<<<<<<<<<<<<
@@ -30753,7 +31713,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
*/
}
- /* "PETSc/petscmat.pxi":1007
+ /* "PETSc/petscmat.pxi":1013
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride)
* if isinstance(cols, slice): # <<<<<<<<<<<<<<
@@ -30764,28 +31724,28 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__pyx_t_5 = (__pyx_t_6 != 0);
if (__pyx_t_5) {
- /* "PETSc/petscmat.pxi":1008
+ /* "PETSc/petscmat.pxi":1014
* rows = arange(start, stop, stride)
* if isinstance(cols, slice):
* CHKERR( MatGetSize(self.mat, NULL, &N) ) # <<<<<<<<<<<<<<
* start, stop, stride = cols.indices(toInt(N))
* cols = arange(start, stop, stride)
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(6, 1008, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(6, 1014, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":1009
+ /* "PETSc/petscmat.pxi":1015
* if isinstance(cols, slice):
* CHKERR( MatGetSize(self.mat, NULL, &N) )
* start, stop, stride = cols.indices(toInt(N)) # <<<<<<<<<<<<<<
* cols = arange(start, stop, stride)
* matsetvalues(self.mat, rows, cols, v, None, 0, 0)
*/
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_cols, __pyx_n_s_indices); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1009, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_cols, __pyx_n_s_indices); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1009, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_1 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_3);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
@@ -30795,24 +31755,44 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
}
}
if (!__pyx_t_1) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1009, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1015, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1009, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL;
- __Pyx_GIVEREF(__pyx_t_9);
- PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_9);
- __pyx_t_9 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1009, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_t_9};
+ __pyx_t_2 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1015, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_1, __pyx_t_9};
+ __pyx_t_2 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1015, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1015, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL;
+ __Pyx_GIVEREF(__pyx_t_9);
+ PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_9);
+ __pyx_t_9 = 0;
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1015, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -30820,9 +31800,9 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(6, 1009, __pyx_L1_error)
+ __PYX_ERR(6, 1015, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -30836,17 +31816,17 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1009, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1009, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(6, 1015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1009, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(6, 1015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1009, __pyx_L1_error)
+ __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 1015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext;
@@ -30856,7 +31836,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_9 = __pyx_t_4(__pyx_t_1); if (unlikely(!__pyx_t_9)) goto __pyx_L9_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_1), 3) < 0) __PYX_ERR(6, 1009, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_1), 3) < 0) __PYX_ERR(6, 1015, __pyx_L1_error)
__pyx_t_4 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L10_unpacking_done;
@@ -30864,7 +31844,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_4 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(6, 1009, __pyx_L1_error)
+ __PYX_ERR(6, 1015, __pyx_L1_error)
__pyx_L10_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_start, __pyx_t_3);
@@ -30874,19 +31854,19 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__Pyx_XDECREF_SET(__pyx_v_stride, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/petscmat.pxi":1010
+ /* "PETSc/petscmat.pxi":1016
* CHKERR( MatGetSize(self.mat, NULL, &N) )
* start, stop, stride = cols.indices(toInt(N))
* cols = arange(start, stop, stride) # <<<<<<<<<<<<<<
* matsetvalues(self.mat, rows, cols, v, None, 0, 0)
* return 0
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1010, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_arange(__pyx_v_start, __pyx_v_stop, __pyx_v_stride)); if (unlikely(!__pyx_t_2)) __PYX_ERR(6, 1016, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_cols, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscmat.pxi":1007
+ /* "PETSc/petscmat.pxi":1013
* start, stop, stride = rows.indices(toInt(M))
* rows = arange(start, stop, stride)
* if isinstance(cols, slice): # <<<<<<<<<<<<<<
@@ -30895,16 +31875,16 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
*/
}
- /* "PETSc/petscmat.pxi":1011
+ /* "PETSc/petscmat.pxi":1017
* start, stop, stride = cols.indices(toInt(N))
* cols = arange(start, stop, stride)
* matsetvalues(self.mat, rows, cols, v, None, 0, 0) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_v, Py_None, 0, 0); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(6, 1011, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_v, Py_None, 0, 0); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(6, 1017, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":1012
+ /* "PETSc/petscmat.pxi":1018
* cols = arange(start, stop, stride)
* matsetvalues(self.mat, rows, cols, v, None, 0, 0)
* return 0 # <<<<<<<<<<<<<<
@@ -30914,7 +31894,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":1000
+ /* "PETSc/petscmat.pxi":1006
*
*
* cdef int mat_setitem(Mat self, object ij, object v) except -1: # <<<<<<<<<<<<<<
@@ -30941,7 +31921,7 @@ static int __pyx_f_8petsc4py_5PETSc_mat_setitem(struct PyPetscMatObject *__pyx_v
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1020
+/* "PETSc/petscmat.pxi":1026
* cdef PetscMatStencil stencil
* property i:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -30968,17 +31948,17 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1i___set__(struct __pyx_obj_
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/petscmat.pxi":1021
+ /* "PETSc/petscmat.pxi":1027
* property i:
* def __set__(self, value):
* self.stencil.i = asInt(value) # <<<<<<<<<<<<<<
* property j:
* def __set__(self, value):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(6, 1021, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 1027, __pyx_L1_error)
__pyx_v_self->stencil.i = __pyx_t_1;
- /* "PETSc/petscmat.pxi":1020
+ /* "PETSc/petscmat.pxi":1026
* cdef PetscMatStencil stencil
* property i:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -30997,7 +31977,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1i___set__(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1023
+/* "PETSc/petscmat.pxi":1029
* self.stencil.i = asInt(value)
* property j:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31024,17 +32004,17 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1j___set__(struct __pyx_obj_
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/petscmat.pxi":1024
+ /* "PETSc/petscmat.pxi":1030
* property j:
* def __set__(self, value):
* self.stencil.j = asInt(value) # <<<<<<<<<<<<<<
* property k:
* def __set__(self, value):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(6, 1024, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 1030, __pyx_L1_error)
__pyx_v_self->stencil.j = __pyx_t_1;
- /* "PETSc/petscmat.pxi":1023
+ /* "PETSc/petscmat.pxi":1029
* self.stencil.i = asInt(value)
* property j:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31053,7 +32033,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1j___set__(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1026
+/* "PETSc/petscmat.pxi":1032
* self.stencil.j = asInt(value)
* property k:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31080,17 +32060,17 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1k___set__(struct __pyx_obj_
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/petscmat.pxi":1027
+ /* "PETSc/petscmat.pxi":1033
* property k:
* def __set__(self, value):
* self.stencil.k = asInt(value) # <<<<<<<<<<<<<<
* property c:
* def __set__(self, value):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(6, 1027, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 1033, __pyx_L1_error)
__pyx_v_self->stencil.k = __pyx_t_1;
- /* "PETSc/petscmat.pxi":1026
+ /* "PETSc/petscmat.pxi":1032
* self.stencil.j = asInt(value)
* property k:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31109,7 +32089,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1k___set__(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1029
+/* "PETSc/petscmat.pxi":1035
* self.stencil.k = asInt(value)
* property c:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31136,17 +32116,17 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1c___set__(struct __pyx_obj_
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/petscmat.pxi":1030
+ /* "PETSc/petscmat.pxi":1036
* property c:
* def __set__(self, value):
* self.stencil.c = asInt(value) # <<<<<<<<<<<<<<
* property index:
* def __set__(self, value):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(6, 1030, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 1036, __pyx_L1_error)
__pyx_v_self->stencil.c = __pyx_t_1;
- /* "PETSc/petscmat.pxi":1029
+ /* "PETSc/petscmat.pxi":1035
* self.stencil.k = asInt(value)
* property c:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31165,7 +32145,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_1c___set__(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1032
+/* "PETSc/petscmat.pxi":1038
* self.stencil.c = asInt(value)
* property index:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31193,7 +32173,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_5index___set__(struct __pyx_
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/petscmat.pxi":1033
+ /* "PETSc/petscmat.pxi":1039
* property index:
* def __set__(self, value):
* cdef PetscMatStencil *s = &self.stencil # <<<<<<<<<<<<<<
@@ -31202,7 +32182,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_5index___set__(struct __pyx_
*/
__pyx_v_s = (&__pyx_v_self->stencil);
- /* "PETSc/petscmat.pxi":1034
+ /* "PETSc/petscmat.pxi":1040
* def __set__(self, value):
* cdef PetscMatStencil *s = &self.stencil
* s.k = s.j = s.i = 0 # <<<<<<<<<<<<<<
@@ -31213,16 +32193,16 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_5index___set__(struct __pyx_
__pyx_v_s->j = 0;
__pyx_v_s->i = 0;
- /* "PETSc/petscmat.pxi":1035
+ /* "PETSc/petscmat.pxi":1041
* cdef PetscMatStencil *s = &self.stencil
* s.k = s.j = s.i = 0
* asDims(value, &s.i, &s.j, &s.k) # <<<<<<<<<<<<<<
* property field:
* def __set__(self, value):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_value, (&__pyx_v_s->i), (&__pyx_v_s->j), (&__pyx_v_s->k)); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(6, 1035, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_value, (&__pyx_v_s->i), (&__pyx_v_s->j), (&__pyx_v_s->k)); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 1041, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":1032
+ /* "PETSc/petscmat.pxi":1038
* self.stencil.c = asInt(value)
* property index:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31241,7 +32221,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_5index___set__(struct __pyx_
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1037
+/* "PETSc/petscmat.pxi":1043
* asDims(value, &s.i, &s.j, &s.k)
* property field:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31269,7 +32249,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_5field___set__(struct __pyx_
PetscInt __pyx_t_1;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/petscmat.pxi":1038
+ /* "PETSc/petscmat.pxi":1044
* property field:
* def __set__(self, value):
* cdef PetscMatStencil *s = &self.stencil # <<<<<<<<<<<<<<
@@ -31278,17 +32258,17 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_5field___set__(struct __pyx_
*/
__pyx_v_s = (&__pyx_v_self->stencil);
- /* "PETSc/petscmat.pxi":1039
+ /* "PETSc/petscmat.pxi":1045
* def __set__(self, value):
* cdef PetscMatStencil *s = &self.stencil
* s.c = asInt(value) # <<<<<<<<<<<<<<
*
* cdef matsetvaluestencil(PetscMat A,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(6, 1039, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(6, 1045, __pyx_L1_error)
__pyx_v_s->c = __pyx_t_1;
- /* "PETSc/petscmat.pxi":1037
+ /* "PETSc/petscmat.pxi":1043
* asDims(value, &s.i, &s.j, &s.k)
* property field:
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -31307,7 +32287,7 @@ static int __pyx_pf_8petsc4py_5PETSc_12_Mat_Stencil_5field___set__(struct __pyx_
return __pyx_r;
}
-/* "PETSc/petscmat.pxi":1041
+/* "PETSc/petscmat.pxi":1047
* s.c = asInt(value)
*
* cdef matsetvaluestencil(PetscMat A, # <<<<<<<<<<<<<<
@@ -31329,7 +32309,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
__Pyx_RefNannySetupContext("matsetvaluestencil", 0);
__Pyx_INCREF(__pyx_v_value);
- /* "PETSc/petscmat.pxi":1045
+ /* "PETSc/petscmat.pxi":1051
* PetscInsertMode im, int blocked):
* # block size
* cdef PetscInt rbs=1, cbs=1 # <<<<<<<<<<<<<<
@@ -31339,7 +32319,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
__pyx_v_rbs = 1;
__pyx_v_cbs = 1;
- /* "PETSc/petscmat.pxi":1046
+ /* "PETSc/petscmat.pxi":1052
* # block size
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) ) # <<<<<<<<<<<<<<
@@ -31348,10 +32328,10 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
*/
__pyx_t_1 = (__pyx_v_blocked != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 1046, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_A, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 1052, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":1047
+ /* "PETSc/petscmat.pxi":1053
* cdef PetscInt rbs=1, cbs=1
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1 # <<<<<<<<<<<<<<
@@ -31363,7 +32343,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
__pyx_v_rbs = 1;
}
- /* "PETSc/petscmat.pxi":1048
+ /* "PETSc/petscmat.pxi":1054
* if blocked: CHKERR( MatGetBlockSizes(A, &rbs, &cbs) )
* if rbs < 1: rbs = 1
* if cbs < 1: cbs = 1 # <<<<<<<<<<<<<<
@@ -31375,7 +32355,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
__pyx_v_cbs = 1;
}
- /* "PETSc/petscmat.pxi":1050
+ /* "PETSc/petscmat.pxi":1056
* if cbs < 1: cbs = 1
* # values
* cdef PetscInt nv = 1 # <<<<<<<<<<<<<<
@@ -31384,7 +32364,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
*/
__pyx_v_nv = 1;
- /* "PETSc/petscmat.pxi":1051
+ /* "PETSc/petscmat.pxi":1057
* # values
* cdef PetscInt nv = 1
* cdef PetscScalar *v = NULL # <<<<<<<<<<<<<<
@@ -31393,19 +32373,19 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
*/
__pyx_v_v = NULL;
- /* "PETSc/petscmat.pxi":1052
+ /* "PETSc/petscmat.pxi":1058
* cdef PetscInt nv = 1
* cdef PetscScalar *v = NULL
* value = iarray_s(value, &nv, &v) # <<<<<<<<<<<<<<
* if rbs*cbs != nv: raise ValueError(
* "incompatible array sizes: nv=%d" % toInt(nv) )
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_value, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1052, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_value, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1058, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_value, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":1053
+ /* "PETSc/petscmat.pxi":1059
* cdef PetscScalar *v = NULL
* value = iarray_s(value, &nv, &v)
* if rbs*cbs != nv: raise ValueError( # <<<<<<<<<<<<<<
@@ -31415,40 +32395,40 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
__pyx_t_1 = (((__pyx_v_rbs * __pyx_v_cbs) != __pyx_v_nv) != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":1054
+ /* "PETSc/petscmat.pxi":1060
* value = iarray_s(value, &nv, &v)
* if rbs*cbs != nv: raise ValueError(
* "incompatible array sizes: nv=%d" % toInt(nv) ) # <<<<<<<<<<<<<<
* if blocked:
* CHKERR( MatSetValuesBlockedStencil(A,
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1054, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1060, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_nv_d, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 1054, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_incompatible_array_sizes_nv_d, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 1060, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/petscmat.pxi":1053
+ /* "PETSc/petscmat.pxi":1059
* cdef PetscScalar *v = NULL
* value = iarray_s(value, &nv, &v)
* if rbs*cbs != nv: raise ValueError( # <<<<<<<<<<<<<<
* "incompatible array sizes: nv=%d" % toInt(nv) )
* if blocked:
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1053, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(6, 1059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 1053, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(6, 1059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(6, 1053, __pyx_L1_error)
+ __PYX_ERR(6, 1059, __pyx_L1_error)
}
- /* "PETSc/petscmat.pxi":1055
+ /* "PETSc/petscmat.pxi":1061
* if rbs*cbs != nv: raise ValueError(
* "incompatible array sizes: nv=%d" % toInt(nv) )
* if blocked: # <<<<<<<<<<<<<<
@@ -31458,16 +32438,16 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
__pyx_t_1 = (__pyx_v_blocked != 0);
if (__pyx_t_1) {
- /* "PETSc/petscmat.pxi":1056
+ /* "PETSc/petscmat.pxi":1062
* "incompatible array sizes: nv=%d" % toInt(nv) )
* if blocked:
* CHKERR( MatSetValuesBlockedStencil(A, # <<<<<<<<<<<<<<
* 1, &r.stencil,
* 1, &c.stencil,
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValuesBlockedStencil(__pyx_v_A, 1, (&__pyx_v_r->stencil), 1, (&__pyx_v_c->stencil), __pyx_v_v, __pyx_v_im)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 1056, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValuesBlockedStencil(__pyx_v_A, 1, (&__pyx_v_r->stencil), 1, (&__pyx_v_c->stencil), __pyx_v_v, __pyx_v_im)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 1062, __pyx_L1_error)
- /* "PETSc/petscmat.pxi":1055
+ /* "PETSc/petscmat.pxi":1061
* if rbs*cbs != nv: raise ValueError(
* "incompatible array sizes: nv=%d" % toInt(nv) )
* if blocked: # <<<<<<<<<<<<<<
@@ -31477,7 +32457,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
goto __pyx_L7;
}
- /* "PETSc/petscmat.pxi":1061
+ /* "PETSc/petscmat.pxi":1067
* v, im) )
* else:
* CHKERR( MatSetValuesStencil(A, # <<<<<<<<<<<<<<
@@ -31486,18 +32466,18 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
*/
/*else*/ {
- /* "PETSc/petscmat.pxi":1064
+ /* "PETSc/petscmat.pxi":1070
* 1, &r.stencil,
* 1, &c.stencil,
* v, im) ) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValuesStencil(__pyx_v_A, 1, (&__pyx_v_r->stencil), 1, (&__pyx_v_c->stencil), __pyx_v_v, __pyx_v_im)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(6, 1061, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValuesStencil(__pyx_v_A, 1, (&__pyx_v_r->stencil), 1, (&__pyx_v_c->stencil), __pyx_v_v, __pyx_v_im)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(6, 1067, __pyx_L1_error)
}
__pyx_L7:;
- /* "PETSc/petscmat.pxi":1065
+ /* "PETSc/petscmat.pxi":1071
* 1, &c.stencil,
* v, im) )
* return 0 # <<<<<<<<<<<<<<
@@ -31509,7 +32489,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
__pyx_r = __pyx_int_0;
goto __pyx_L0;
- /* "PETSc/petscmat.pxi":1041
+ /* "PETSc/petscmat.pxi":1047
* s.c = asInt(value)
*
* cdef matsetvaluestencil(PetscMat A, # <<<<<<<<<<<<<<
@@ -31530,7 +32510,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_matsetvaluestencil(Mat __pyx_v_A, stru
return __pyx_r;
}
-/* "PETSc/petscksp.pxi":196
+/* "PETSc/petscksp.pxi":197
* # -----------------------------------------------------------------------------
*
* cdef inline KSP ref_KSP(PetscKSP ksp): # <<<<<<<<<<<<<<
@@ -31546,14 +32526,14 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_8petsc4py_5PETSc_ref_KSP(K
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_KSP", 0);
- /* "PETSc/petscksp.pxi":197
+ /* "PETSc/petscksp.pxi":198
*
* cdef inline KSP ref_KSP(PetscKSP ksp):
* cdef KSP ob = <KSP> KSP() # <<<<<<<<<<<<<<
* ob.ksp = ksp
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 197, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -31561,7 +32541,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_8petsc4py_5PETSc_ref_KSP(K
__pyx_v_ob = ((struct PyPetscKSPObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscksp.pxi":198
+ /* "PETSc/petscksp.pxi":199
* cdef inline KSP ref_KSP(PetscKSP ksp):
* cdef KSP ob = <KSP> KSP()
* ob.ksp = ksp # <<<<<<<<<<<<<<
@@ -31570,7 +32550,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_8petsc4py_5PETSc_ref_KSP(K
*/
__pyx_v_ob->ksp = __pyx_v_ksp;
- /* "PETSc/petscksp.pxi":199
+ /* "PETSc/petscksp.pxi":200
* cdef KSP ob = <KSP> KSP()
* ob.ksp = ksp
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -31579,7 +32559,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_8petsc4py_5PETSc_ref_KSP(K
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscksp.pxi":200
+ /* "PETSc/petscksp.pxi":201
* ob.ksp = ksp
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -31591,7 +32571,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_8petsc4py_5PETSc_ref_KSP(K
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscksp.pxi":196
+ /* "PETSc/petscksp.pxi":197
* # -----------------------------------------------------------------------------
*
* cdef inline KSP ref_KSP(PetscKSP ksp): # <<<<<<<<<<<<<<
@@ -31612,7 +32592,7 @@ static CYTHON_INLINE struct PyPetscKSPObject *__pyx_f_8petsc4py_5PETSc_ref_KSP(K
return __pyx_r;
}
-/* "PETSc/petscksp.pxi":204
+/* "PETSc/petscksp.pxi":205
* # -----------------------------------------------------------------------------
*
* cdef int KSP_Converged( # <<<<<<<<<<<<<<
@@ -31638,34 +32618,34 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
int __pyx_t_8;
KSPConvergedReason __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSP_Converged", 0);
- /* "PETSc/petscksp.pxi":211
+ /* "PETSc/petscksp.pxi":212
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp) # <<<<<<<<<<<<<<
* (converged, args, kargs) = Ksp.get_attr('__converged__')
* reason = converged(Ksp, toInt(its), toReal(rnm), *args, **kargs)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 211, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":212
+ /* "PETSc/petscksp.pxi":213
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp)
* (converged, args, kargs) = Ksp.get_attr('__converged__') # <<<<<<<<<<<<<<
* reason = converged(Ksp, toInt(its), toReal(rnm), *args, **kargs)
* if reason is None: r[0] = KSP_CONVERGED_ITERATING
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 212, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 213, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -31673,9 +32653,9 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(18, 212, __pyx_L1_error)
+ __PYX_ERR(18, 213, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -31689,17 +32669,17 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(18, 212, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(18, 213, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(18, 212, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(18, 213, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 212, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 213, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 212, __pyx_L1_error)
+ __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 213, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
@@ -31709,7 +32689,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
__Pyx_GOTREF(__pyx_t_3);
index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(18, 212, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(18, 213, __pyx_L1_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L4_unpacking_done;
@@ -31717,7 +32697,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(18, 212, __pyx_L1_error)
+ __PYX_ERR(18, 213, __pyx_L1_error)
__pyx_L4_unpacking_done:;
}
__pyx_v_converged = __pyx_t_2;
@@ -31727,18 +32707,18 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
__pyx_v_kargs = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscksp.pxi":213
+ /* "PETSc/petscksp.pxi":214
* cdef KSP Ksp = ref_KSP(ksp)
* (converged, args, kargs) = Ksp.get_attr('__converged__')
* reason = converged(Ksp, toInt(its), toReal(rnm), *args, **kargs) # <<<<<<<<<<<<<<
* if reason is None: r[0] = KSP_CONVERGED_ITERATING
* elif reason is False: r[0] = KSP_CONVERGED_ITERATING
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_its); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_its); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rnm); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rnm); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)__pyx_v_Ksp));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ksp));
@@ -31749,31 +32729,31 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_4);
__pyx_t_1 = 0;
__pyx_t_4 = 0;
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(18, 213, __pyx_L1_error)
+ __PYX_ERR(18, 214, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
}
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_v_converged, __pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(18, 213, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_v_converged, __pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(18, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_reason = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/petscksp.pxi":214
+ /* "PETSc/petscksp.pxi":215
* (converged, args, kargs) = Ksp.get_attr('__converged__')
* reason = converged(Ksp, toInt(its), toReal(rnm), *args, **kargs)
* if reason is None: r[0] = KSP_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -31787,7 +32767,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
goto __pyx_L5;
}
- /* "PETSc/petscksp.pxi":215
+ /* "PETSc/petscksp.pxi":216
* reason = converged(Ksp, toInt(its), toReal(rnm), *args, **kargs)
* if reason is None: r[0] = KSP_CONVERGED_ITERATING
* elif reason is False: r[0] = KSP_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -31801,7 +32781,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
goto __pyx_L5;
}
- /* "PETSc/petscksp.pxi":216
+ /* "PETSc/petscksp.pxi":217
* if reason is None: r[0] = KSP_CONVERGED_ITERATING
* elif reason is False: r[0] = KSP_CONVERGED_ITERATING
* elif reason is True: r[0] = KSP_CONVERGED_ITS # XXX ? # <<<<<<<<<<<<<<
@@ -31815,7 +32795,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
goto __pyx_L5;
}
- /* "PETSc/petscksp.pxi":217
+ /* "PETSc/petscksp.pxi":218
* elif reason is False: r[0] = KSP_CONVERGED_ITERATING
* elif reason is True: r[0] = KSP_CONVERGED_ITS # XXX ?
* else: r[0] = reason # <<<<<<<<<<<<<<
@@ -31823,12 +32803,12 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
*
*/
/*else*/ {
- __pyx_t_9 = ((KSPConvergedReason)__Pyx_PyInt_As_KSPConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(18, 217, __pyx_L1_error)
+ __pyx_t_9 = ((KSPConvergedReason)__Pyx_PyInt_As_KSPConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(18, 218, __pyx_L1_error)
(__pyx_v_r[0]) = __pyx_t_9;
}
__pyx_L5:;
- /* "PETSc/petscksp.pxi":218
+ /* "PETSc/petscksp.pxi":219
* elif reason is True: r[0] = KSP_CONVERGED_ITS # XXX ?
* else: r[0] = reason
* return 0 # <<<<<<<<<<<<<<
@@ -31838,7 +32818,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscksp.pxi":204
+ /* "PETSc/petscksp.pxi":205
* # -----------------------------------------------------------------------------
*
* cdef int KSP_Converged( # <<<<<<<<<<<<<<
@@ -31863,12 +32843,12 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Converged(KSP __pyx_v_ksp, PetscInt __py
__Pyx_XDECREF(__pyx_v_reason);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscksp.pxi":222
+/* "PETSc/petscksp.pxi":223
* # -----------------------------------------------------------------------------
*
* cdef int KSP_Monitor( # <<<<<<<<<<<<<<
@@ -31896,35 +32876,35 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
PyObject *__pyx_t_10 = NULL;
PyObject *(*__pyx_t_11)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSP_Monitor", 0);
- /* "PETSc/petscksp.pxi":228
+ /* "PETSc/petscksp.pxi":229
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp) # <<<<<<<<<<<<<<
* cdef object monitorlist = Ksp.get_attr('__monitor__')
* if monitorlist is None: return 0
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 228, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 229, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":229
+ /* "PETSc/petscksp.pxi":230
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp)
* cdef object monitorlist = Ksp.get_attr('__monitor__') # <<<<<<<<<<<<<<
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist:
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 229, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_monitorlist = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":230
+ /* "PETSc/petscksp.pxi":231
* cdef KSP Ksp = ref_KSP(ksp)
* cdef object monitorlist = Ksp.get_attr('__monitor__')
* if monitorlist is None: return 0 # <<<<<<<<<<<<<<
@@ -31938,7 +32918,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
goto __pyx_L0;
}
- /* "PETSc/petscksp.pxi":231
+ /* "PETSc/petscksp.pxi":232
* cdef object monitorlist = Ksp.get_attr('__monitor__')
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist: # <<<<<<<<<<<<<<
@@ -31949,26 +32929,26 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
__pyx_t_1 = __pyx_v_monitorlist; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0;
__pyx_t_5 = NULL;
} else {
- __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_monitorlist); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_monitorlist); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 232, __pyx_L1_error)
}
for (;;) {
if (likely(!__pyx_t_5)) {
if (likely(PyList_CheckExact(__pyx_t_1))) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(18, 231, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(18, 232, __pyx_L1_error)
#else
- __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(18, 231, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(18, 232, __pyx_L1_error)
#else
- __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
}
@@ -31977,8 +32957,8 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
if (unlikely(!__pyx_t_6)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(18, 231, __pyx_L1_error)
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ else __PYX_ERR(18, 232, __pyx_L1_error)
}
break;
}
@@ -31986,7 +32966,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
}
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -31994,9 +32974,9 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(18, 231, __pyx_L1_error)
+ __PYX_ERR(18, 232, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -32010,17 +32990,17 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(18, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(18, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(18, 231, __pyx_L1_error)
+ __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(18, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
@@ -32030,7 +33010,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(18, 231, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(18, 232, __pyx_L1_error)
__pyx_t_11 = NULL;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
goto __pyx_L7_unpacking_done;
@@ -32038,7 +33018,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_11 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(18, 231, __pyx_L1_error)
+ __PYX_ERR(18, 232, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_monitor, __pyx_t_7);
@@ -32048,18 +33028,18 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
__Pyx_XDECREF_SET(__pyx_v_kargs, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/petscksp.pxi":232
+ /* "PETSc/petscksp.pxi":233
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist:
* monitor(Ksp, toInt(its), toReal(rnm), *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_its); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_its); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rnm); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rnm); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(((PyObject *)__pyx_v_Ksp));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ksp));
@@ -32070,30 +33050,30 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_9);
__pyx_t_6 = 0;
__pyx_t_9 = 0;
- __pyx_t_9 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_6 = PyNumber_Add(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_6 = PyNumber_Add(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(18, 232, __pyx_L1_error)
+ __PYX_ERR(18, 233, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_9 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_9 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
} else {
- __pyx_t_9 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_9 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
}
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_v_monitor, __pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(18, 232, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_v_monitor, __pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(18, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/petscksp.pxi":231
+ /* "PETSc/petscksp.pxi":232
* cdef object monitorlist = Ksp.get_attr('__monitor__')
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist: # <<<<<<<<<<<<<<
@@ -32103,7 +33083,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":233
+ /* "PETSc/petscksp.pxi":234
* for (monitor, args, kargs) in monitorlist:
* monitor(Ksp, toInt(its), toReal(rnm), *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -32113,7 +33093,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscksp.pxi":222
+ /* "PETSc/petscksp.pxi":223
* # -----------------------------------------------------------------------------
*
* cdef int KSP_Monitor( # <<<<<<<<<<<<<<
@@ -32139,12 +33119,12 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_Monitor(KSP __pyx_v_ksp, PetscInt __pyx_
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscksp.pxi":237
+/* "PETSc/petscksp.pxi":238
* # -----------------------------------------------------------------------------
*
* cdef int KSP_ComputeRHS( # <<<<<<<<<<<<<<
@@ -32170,47 +33150,47 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSP_ComputeRHS", 0);
- /* "PETSc/petscksp.pxi":242
+ /* "PETSc/petscksp.pxi":243
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp) # <<<<<<<<<<<<<<
* cdef Vec Rhs = ref_Vec(rhs)
* cdef object context = Ksp.get_attr('__rhs__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 242, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":243
+ /* "PETSc/petscksp.pxi":244
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp)
* cdef Vec Rhs = ref_Vec(rhs) # <<<<<<<<<<<<<<
* cdef object context = Ksp.get_attr('__rhs__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_rhs)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 243, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_rhs)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 244, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Rhs = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":244
+ /* "PETSc/petscksp.pxi":245
* cdef KSP Ksp = ref_KSP(ksp)
* cdef Vec Rhs = ref_Vec(rhs)
* cdef object context = Ksp.get_attr('__rhs__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__rhs__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 244, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__rhs__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":245
+ /* "PETSc/petscksp.pxi":246
* cdef Vec Rhs = ref_Vec(rhs)
* cdef object context = Ksp.get_attr('__rhs__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -32234,7 +33214,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__pyx_t_1 = 0;
}
- /* "PETSc/petscksp.pxi":246
+ /* "PETSc/petscksp.pxi":247
* cdef object context = Ksp.get_attr('__rhs__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -32256,12 +33236,12 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(18, 246, __pyx_L1_error)
+ __PYX_ERR(18, 247, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscksp.pxi":247
+ /* "PETSc/petscksp.pxi":248
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (computerhs, args, kargs) = context # <<<<<<<<<<<<<<
@@ -32270,7 +33250,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -32278,9 +33258,9 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(18, 247, __pyx_L1_error)
+ __PYX_ERR(18, 248, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -32294,16 +33274,16 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 247, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 248, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 247, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 248, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 247, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 248, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(18, 247, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(18, 248, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -32312,7 +33292,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(18, 247, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(18, 248, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -32320,7 +33300,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(18, 247, __pyx_L1_error)
+ __PYX_ERR(18, 248, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_computerhs = __pyx_t_1;
@@ -32330,14 +33310,14 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscksp.pxi":248
+ /* "PETSc/petscksp.pxi":249
* assert context is not None and type(context) is tuple # sanity check
* (computerhs, args, kargs) = context
* computerhs(Ksp, Rhs, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 248, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Ksp));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ksp));
@@ -32345,30 +33325,30 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__Pyx_INCREF(((PyObject *)__pyx_v_Rhs));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Rhs));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Rhs));
- __pyx_t_5 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 248, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 248, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(18, 248, __pyx_L1_error)
+ __PYX_ERR(18, 249, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 248, __pyx_L1_error)
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 248, __pyx_L1_error)
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_computerhs, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 248, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_computerhs, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscksp.pxi":249
+ /* "PETSc/petscksp.pxi":250
* (computerhs, args, kargs) = context
* computerhs(Ksp, Rhs, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -32378,7 +33358,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscksp.pxi":237
+ /* "PETSc/petscksp.pxi":238
* # -----------------------------------------------------------------------------
*
* cdef int KSP_ComputeRHS( # <<<<<<<<<<<<<<
@@ -32403,12 +33383,12 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS(KSP __pyx_v_ksp, Vec __pyx_v_
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscksp.pxi":251
+/* "PETSc/petscksp.pxi":252
* return 0
*
* cdef int KSP_ComputeOps( # <<<<<<<<<<<<<<
@@ -32435,59 +33415,59 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("KSP_ComputeOps", 0);
- /* "PETSc/petscksp.pxi":257
+ /* "PETSc/petscksp.pxi":258
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp) # <<<<<<<<<<<<<<
* cdef Mat Amat = ref_Mat(A)
* cdef Mat Bmat = ref_Mat(B)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 257, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP(__pyx_v_ksp)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":258
+ /* "PETSc/petscksp.pxi":259
* ) except PETSC_ERR_PYTHON with gil:
* cdef KSP Ksp = ref_KSP(ksp)
* cdef Mat Amat = ref_Mat(A) # <<<<<<<<<<<<<<
* cdef Mat Bmat = ref_Mat(B)
* cdef object context = Ksp.get_attr('__operators__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_A)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 258, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_A)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Amat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":259
+ /* "PETSc/petscksp.pxi":260
* cdef KSP Ksp = ref_KSP(ksp)
* cdef Mat Amat = ref_Mat(A)
* cdef Mat Bmat = ref_Mat(B) # <<<<<<<<<<<<<<
* cdef object context = Ksp.get_attr('__operators__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_B)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 259, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_B)); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Bmat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":260
+ /* "PETSc/petscksp.pxi":261
* cdef Mat Amat = ref_Mat(A)
* cdef Mat Bmat = ref_Mat(B)
* cdef object context = Ksp.get_attr('__operators__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__operators__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 260, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_Ksp->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ksp), ((char *)"__operators__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 261, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscksp.pxi":261
+ /* "PETSc/petscksp.pxi":262
* cdef Mat Bmat = ref_Mat(B)
* cdef object context = Ksp.get_attr('__operators__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -32511,7 +33491,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__pyx_t_1 = 0;
}
- /* "PETSc/petscksp.pxi":262
+ /* "PETSc/petscksp.pxi":263
* cdef object context = Ksp.get_attr('__operators__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -32533,12 +33513,12 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(18, 262, __pyx_L1_error)
+ __PYX_ERR(18, 263, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscksp.pxi":263
+ /* "PETSc/petscksp.pxi":264
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (computeops, args, kargs) = context # <<<<<<<<<<<<<<
@@ -32547,7 +33527,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -32555,9 +33535,9 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(18, 263, __pyx_L1_error)
+ __PYX_ERR(18, 264, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -32571,16 +33551,16 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 263, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 263, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 263, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(18, 263, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(18, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -32589,7 +33569,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(18, 263, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(18, 264, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -32597,7 +33577,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(18, 263, __pyx_L1_error)
+ __PYX_ERR(18, 264, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_computeops = __pyx_t_1;
@@ -32607,14 +33587,14 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscksp.pxi":264
+ /* "PETSc/petscksp.pxi":265
* assert context is not None and type(context) is tuple # sanity check
* (computeops, args, kargs) = context
* computeops(Ksp, Amat, Bmat, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 264, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Ksp));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ksp));
@@ -32625,30 +33605,30 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__Pyx_INCREF(((PyObject *)__pyx_v_Bmat));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Bmat));
PyTuple_SET_ITEM(__pyx_t_6, 2, ((PyObject *)__pyx_v_Bmat));
- __pyx_t_5 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 264, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 264, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(18, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(18, 264, __pyx_L1_error)
+ __PYX_ERR(18, 265, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 264, __pyx_L1_error)
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 264, __pyx_L1_error)
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(18, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_computeops, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 264, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_computeops, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(18, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscksp.pxi":265
+ /* "PETSc/petscksp.pxi":266
* (computeops, args, kargs) = context
* computeops(Ksp, Amat, Bmat, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -32658,7 +33638,7 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscksp.pxi":251
+ /* "PETSc/petscksp.pxi":252
* return 0
*
* cdef int KSP_ComputeOps( # <<<<<<<<<<<<<<
@@ -32684,12 +33664,12 @@ static int __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps(KSP __pyx_v_ksp, Mat __pyx_v_
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscsnes.pxi":216
+/* "PETSc/petscsnes.pxi":228
* # -----------------------------------------------------------------------------
*
* cdef inline SNES ref_SNES(PetscSNES snes): # <<<<<<<<<<<<<<
@@ -32705,14 +33685,14 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_8petsc4py_5PETSc_ref_SNES
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_SNES", 0);
- /* "PETSc/petscsnes.pxi":217
+ /* "PETSc/petscsnes.pxi":229
*
* cdef inline SNES ref_SNES(PetscSNES snes):
* cdef SNES ob = <SNES> SNES() # <<<<<<<<<<<<<<
* ob.snes = snes
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 217, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 229, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -32720,7 +33700,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_8petsc4py_5PETSc_ref_SNES
__pyx_v_ob = ((struct PyPetscSNESObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscsnes.pxi":218
+ /* "PETSc/petscsnes.pxi":230
* cdef inline SNES ref_SNES(PetscSNES snes):
* cdef SNES ob = <SNES> SNES()
* ob.snes = snes # <<<<<<<<<<<<<<
@@ -32729,7 +33709,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_8petsc4py_5PETSc_ref_SNES
*/
__pyx_v_ob->snes = __pyx_v_snes;
- /* "PETSc/petscsnes.pxi":219
+ /* "PETSc/petscsnes.pxi":231
* cdef SNES ob = <SNES> SNES()
* ob.snes = snes
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -32738,7 +33718,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_8petsc4py_5PETSc_ref_SNES
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscsnes.pxi":220
+ /* "PETSc/petscsnes.pxi":232
* ob.snes = snes
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -32750,7 +33730,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_8petsc4py_5PETSc_ref_SNES
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscsnes.pxi":216
+ /* "PETSc/petscsnes.pxi":228
* # -----------------------------------------------------------------------------
*
* cdef inline SNES ref_SNES(PetscSNES snes): # <<<<<<<<<<<<<<
@@ -32771,7 +33751,7 @@ static CYTHON_INLINE struct PyPetscSNESObject *__pyx_f_8petsc4py_5PETSc_ref_SNES
return __pyx_r;
}
-/* "PETSc/petscsnes.pxi":224
+/* "PETSc/petscsnes.pxi":236
* # -----------------------------------------------------------------------------
*
* cdef int SNES_InitialGuess( # <<<<<<<<<<<<<<
@@ -32797,47 +33777,47 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNES_InitialGuess", 0);
- /* "PETSc/petscsnes.pxi":229
+ /* "PETSc/petscsnes.pxi":241
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef object context = Snes.get_attr('__initialguess__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 229, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 241, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":230
+ /* "PETSc/petscsnes.pxi":242
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef object context = Snes.get_attr('__initialguess__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 230, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 242, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":231
+ /* "PETSc/petscsnes.pxi":243
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x)
* cdef object context = Snes.get_attr('__initialguess__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__initialguess__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 231, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__initialguess__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":232
+ /* "PETSc/petscsnes.pxi":244
* cdef Vec Xvec = ref_Vec(x)
* cdef object context = Snes.get_attr('__initialguess__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -32861,7 +33841,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__pyx_t_1 = 0;
}
- /* "PETSc/petscsnes.pxi":233
+ /* "PETSc/petscsnes.pxi":245
* cdef object context = Snes.get_attr('__initialguess__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -32883,12 +33863,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(19, 233, __pyx_L1_error)
+ __PYX_ERR(19, 245, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscsnes.pxi":234
+ /* "PETSc/petscsnes.pxi":246
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (initialguess, args, kargs) = context # <<<<<<<<<<<<<<
@@ -32897,7 +33877,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -32905,9 +33885,9 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(19, 234, __pyx_L1_error)
+ __PYX_ERR(19, 246, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -32921,16 +33901,16 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 234, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 234, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 234, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 234, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -32939,7 +33919,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 234, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 246, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -32947,7 +33927,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(19, 234, __pyx_L1_error)
+ __PYX_ERR(19, 246, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_initialguess = __pyx_t_1;
@@ -32957,14 +33937,14 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":235
+ /* "PETSc/petscsnes.pxi":247
* assert context is not None and type(context) is tuple # sanity check
* (initialguess, args, kargs) = context
* initialguess(Snes, Xvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 235, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Snes));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
@@ -32972,30 +33952,30 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Xvec));
- __pyx_t_5 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 235, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 235, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(19, 235, __pyx_L1_error)
+ __PYX_ERR(19, 247, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 235, __pyx_L1_error)
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 235, __pyx_L1_error)
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_initialguess, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 235, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_initialguess, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":236
+ /* "PETSc/petscsnes.pxi":248
* (initialguess, args, kargs) = context
* initialguess(Snes, Xvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -33005,7 +33985,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsnes.pxi":224
+ /* "PETSc/petscsnes.pxi":236
* # -----------------------------------------------------------------------------
*
* cdef int SNES_InitialGuess( # <<<<<<<<<<<<<<
@@ -33030,12 +34010,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess(SNES __pyx_v_snes, Vec __p
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscsnes.pxi":240
+/* "PETSc/petscsnes.pxi":252
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Function( # <<<<<<<<<<<<<<
@@ -33062,59 +34042,59 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Function(SNES __pyx_v_snes, Vec __pyx_v
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNES_Function", 0);
- /* "PETSc/petscsnes.pxi":246
+ /* "PETSc/petscsnes.pxi":258
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec Fvec = ref_Vec(f)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 246, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":247
+ /* "PETSc/petscsnes.pxi":259
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Snes.get_attr('__function__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 247, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":248
+ /* "PETSc/petscsnes.pxi":260
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec Fvec = ref_Vec(f) # <<<<<<<<<<<<<<
* cdef object context = Snes.get_attr('__function__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 248, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Fvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":249
+ /* "PETSc/petscsnes.pxi":261
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Snes.get_attr('__function__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 249, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 261, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":250
+ /* "PETSc/petscsnes.pxi":262
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Snes.get_attr('__function__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -33138,7 +34118,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Function(SNES __pyx_v_snes, Vec __pyx_v
__pyx_t_1 = 0;
}
- /* "PETSc/petscsnes.pxi":251
+ /* "PETSc/petscsnes.pxi":263
* cdef object context = Snes.get_attr('__function__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -33160,12 +34140,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Function(SNES __pyx_v_snes, Vec __pyx_v
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(19, 251, __pyx_L1_error)
+ __PYX_ERR(19, 263, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscsnes.pxi":252
+ /* "PETSc/petscsnes.pxi":264
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (function, args, kargs) = context # <<<<<<<<<<<<<<
@@ -33174,7 +34154,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Function(SNES __pyx_v_snes, Vec __pyx_v
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -33182,240 +34162,9 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Function(SNES __pyx_v_snes, Vec __pyx_v
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(19, 252, __pyx_L1_error)
- }
- #if CYTHON_COMPILING_IN_CPYTHON
- if (likely(PyTuple_CheckExact(sequence))) {
- __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
- __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
- __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
- } else {
- __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
- __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
- __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
- }
- __Pyx_INCREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_t_5);
- __Pyx_INCREF(__pyx_t_6);
- #else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 252, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 252, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 252, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- #endif
- } else {
- Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 252, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
- index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
- __Pyx_GOTREF(__pyx_t_1);
- index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L8_unpacking_failed;
- __Pyx_GOTREF(__pyx_t_5);
- index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
- __Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 252, __pyx_L1_error)
- __pyx_t_8 = NULL;
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- goto __pyx_L9_unpacking_done;
- __pyx_L8_unpacking_failed:;
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- __pyx_t_8 = NULL;
- if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(19, 252, __pyx_L1_error)
- __pyx_L9_unpacking_done:;
- }
- __pyx_v_function = __pyx_t_1;
- __pyx_t_1 = 0;
- __pyx_v_args = __pyx_t_5;
- __pyx_t_5 = 0;
- __pyx_v_kargs = __pyx_t_6;
- __pyx_t_6 = 0;
-
- /* "PETSc/petscsnes.pxi":253
- * assert context is not None and type(context) is tuple # sanity check
- * (function, args, kargs) = context
- * function(Snes, Xvec, Fvec, *args, **kargs) # <<<<<<<<<<<<<<
- * return 0
- *
- */
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 253, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_INCREF(((PyObject *)__pyx_v_Snes));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
- PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Snes));
- __Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
- PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Xvec));
- __Pyx_INCREF(((PyObject *)__pyx_v_Fvec));
- __Pyx_GIVEREF(((PyObject *)__pyx_v_Fvec));
- PyTuple_SET_ITEM(__pyx_t_6, 2, ((PyObject *)__pyx_v_Fvec));
- __pyx_t_5 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 253, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 253, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (unlikely(__pyx_v_kargs == Py_None)) {
- PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(19, 253, __pyx_L1_error)
- }
- if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 253, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- } else {
- __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 253, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- }
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 253, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
-
- /* "PETSc/petscsnes.pxi":254
- * (function, args, kargs) = context
- * function(Snes, Xvec, Fvec, *args, **kargs)
- * return 0 # <<<<<<<<<<<<<<
- *
- * # -----------------------------------------------------------------------------
- */
- __pyx_r = 0;
- goto __pyx_L0;
-
- /* "PETSc/petscsnes.pxi":240
- * # -----------------------------------------------------------------------------
- *
- * cdef int SNES_Function( # <<<<<<<<<<<<<<
- * PetscSNES snes,
- * PetscVec x,
- */
-
- /* function exit code */
- __pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
- __Pyx_XDECREF(__pyx_t_5);
- __Pyx_XDECREF(__pyx_t_6);
- __Pyx_XDECREF(__pyx_t_7);
- __Pyx_AddTraceback("petsc4py.PETSc.SNES_Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = PETSC_ERR_PYTHON;
- __pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_Snes);
- __Pyx_XDECREF((PyObject *)__pyx_v_Xvec);
- __Pyx_XDECREF((PyObject *)__pyx_v_Fvec);
- __Pyx_XDECREF(__pyx_v_context);
- __Pyx_XDECREF(__pyx_v_function);
- __Pyx_XDECREF(__pyx_v_args);
- __Pyx_XDECREF(__pyx_v_kargs);
- __Pyx_RefNannyFinishContext();
- #ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
- #endif
- return __pyx_r;
-}
-
-/* "PETSc/petscsnes.pxi":258
- * # -----------------------------------------------------------------------------
- *
- * cdef int SNES_Update( # <<<<<<<<<<<<<<
- * PetscSNES snes,
- * PetscInt its,
- */
-
-static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __pyx_v_its) {
- struct PyPetscSNESObject *__pyx_v_Snes = 0;
- PyObject *__pyx_v_context = 0;
- PyObject *__pyx_v_update = NULL;
- PyObject *__pyx_v_args = NULL;
- PyObject *__pyx_v_kargs = NULL;
- int __pyx_r;
- __Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
- int __pyx_t_2;
- int __pyx_t_3;
- int __pyx_t_4;
- PyObject *__pyx_t_5 = NULL;
- PyObject *__pyx_t_6 = NULL;
- PyObject *__pyx_t_7 = NULL;
- PyObject *(*__pyx_t_8)(PyObject *);
- #ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
- #endif
- __Pyx_RefNannySetupContext("SNES_Update", 0);
-
- /* "PETSc/petscsnes.pxi":262
- * PetscInt its,
- * ) except PETSC_ERR_PYTHON with gil:
- * cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
- * cdef object context = Snes.get_attr('__update__')
- * assert context is not None and type(context) is tuple # sanity check
- */
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 262, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
- __pyx_t_1 = 0;
-
- /* "PETSc/petscsnes.pxi":263
- * ) except PETSC_ERR_PYTHON with gil:
- * cdef SNES Snes = ref_SNES(snes)
- * cdef object context = Snes.get_attr('__update__') # <<<<<<<<<<<<<<
- * assert context is not None and type(context) is tuple # sanity check
- * (update, args, kargs) = context
- */
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__update__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 263, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_v_context = __pyx_t_1;
- __pyx_t_1 = 0;
-
- /* "PETSc/petscsnes.pxi":264
- * cdef SNES Snes = ref_SNES(snes)
- * cdef object context = Snes.get_attr('__update__')
- * assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
- * (update, args, kargs) = context
- * update(Snes, toInt(its), *args, **kargs)
- */
- #ifndef CYTHON_WITHOUT_ASSERTIONS
- if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_3 = (__pyx_v_context != Py_None);
- __pyx_t_4 = (__pyx_t_3 != 0);
- if (__pyx_t_4) {
- } else {
- __pyx_t_2 = __pyx_t_4;
- goto __pyx_L3_bool_binop_done;
- }
- __pyx_t_4 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
- __pyx_t_3 = (__pyx_t_4 != 0);
- __pyx_t_2 = __pyx_t_3;
- __pyx_L3_bool_binop_done:;
- if (unlikely(!__pyx_t_2)) {
- PyErr_SetNone(PyExc_AssertionError);
__PYX_ERR(19, 264, __pyx_L1_error)
}
- }
- #endif
-
- /* "PETSc/petscsnes.pxi":265
- * cdef object context = Snes.get_attr('__update__')
- * assert context is not None and type(context) is tuple # sanity check
- * (update, args, kargs) = context # <<<<<<<<<<<<<<
- * update(Snes, toInt(its), *args, **kargs)
- * return 0
- */
- if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
- PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
- Py_ssize_t size = Py_SIZE(sequence);
- #else
- Py_ssize_t size = PySequence_Size(sequence);
- #endif
- if (unlikely(size != 3)) {
- if (size > 3) __Pyx_RaiseTooManyValuesError(3);
- else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(19, 265, __pyx_L1_error)
- }
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -33429,16 +34178,247 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __py
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 264, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_5);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 264, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(19, 264, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ __pyx_v_function = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_args = __pyx_t_5;
+ __pyx_t_5 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscsnes.pxi":265
+ * assert context is not None and type(context) is tuple # sanity check
+ * (function, args, kargs) = context
+ * function(Snes, Xvec, Fvec, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Snes));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
+ PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Snes));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
+ PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Xvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Fvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Fvec));
+ PyTuple_SET_ITEM(__pyx_t_6, 2, ((PyObject *)__pyx_v_Fvec));
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(19, 265, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ } else {
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ }
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 265, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+
+ /* "PETSc/petscsnes.pxi":266
+ * (function, args, kargs) = context
+ * function(Snes, Xvec, Fvec, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * # -----------------------------------------------------------------------------
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscsnes.pxi":252
+ * # -----------------------------------------------------------------------------
+ *
+ * cdef int SNES_Function( # <<<<<<<<<<<<<<
+ * PetscSNES snes,
+ * PetscVec x,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES_Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Snes);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Xvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Fvec);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_function);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscsnes.pxi":270
+ * # -----------------------------------------------------------------------------
+ *
+ * cdef int SNES_Update( # <<<<<<<<<<<<<<
+ * PetscSNES snes,
+ * PetscInt its,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __pyx_v_its) {
+ struct PyPetscSNESObject *__pyx_v_Snes = 0;
+ PyObject *__pyx_v_context = 0;
+ PyObject *__pyx_v_update = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("SNES_Update", 0);
+
+ /* "PETSc/petscsnes.pxi":274
+ * PetscInt its,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
+ * cdef object context = Snes.get_attr('__update__')
+ * assert context is not None and type(context) is tuple # sanity check
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 274, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":275
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef SNES Snes = ref_SNES(snes)
+ * cdef object context = Snes.get_attr('__update__') # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple # sanity check
+ * (update, args, kargs) = context
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__update__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 275, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":276
+ * cdef SNES Snes = ref_SNES(snes)
+ * cdef object context = Snes.get_attr('__update__')
+ * assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
+ * (update, args, kargs) = context
+ * update(Snes, toInt(its), *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_3 = (__pyx_v_context != Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_2 = __pyx_t_4;
+ goto __pyx_L3_bool_binop_done;
+ }
+ __pyx_t_4 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_3 = (__pyx_t_4 != 0);
+ __pyx_t_2 = __pyx_t_3;
+ __pyx_L3_bool_binop_done:;
+ if (unlikely(!__pyx_t_2)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(19, 276, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscsnes.pxi":277
+ * cdef object context = Snes.get_attr('__update__')
+ * assert context is not None and type(context) is tuple # sanity check
+ * (update, args, kargs) = context # <<<<<<<<<<<<<<
+ * update(Snes, toInt(its), *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(19, 277, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_5);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 277, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 277, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 277, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 277, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
@@ -33447,7 +34427,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __py
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 265, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 277, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -33455,7 +34435,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __py
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(19, 265, __pyx_L1_error)
+ __PYX_ERR(19, 277, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_update = __pyx_t_1;
@@ -33465,16 +34445,16 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __py
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":266
+ /* "PETSc/petscsnes.pxi":278
* assert context is not None and type(context) is tuple # sanity check
* (update, args, kargs) = context
* update(Snes, toInt(its), *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_its); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 266, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_its); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 266, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_v_Snes));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
@@ -33482,30 +34462,30 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __py
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6);
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 266, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 266, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(19, 266, __pyx_L1_error)
+ __PYX_ERR(19, 278, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 266, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 266, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_update, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 266, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_update, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscsnes.pxi":267
+ /* "PETSc/petscsnes.pxi":279
* (update, args, kargs) = context
* update(Snes, toInt(its), *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -33515,7 +34495,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsnes.pxi":258
+ /* "PETSc/petscsnes.pxi":270
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Update( # <<<<<<<<<<<<<<
@@ -33539,12 +34519,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Update(SNES __pyx_v_snes, PetscInt __py
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscsnes.pxi":271
+/* "PETSc/petscsnes.pxi":283
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Jacobian( # <<<<<<<<<<<<<<
@@ -33572,71 +34552,71 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNES_Jacobian", 0);
- /* "PETSc/petscsnes.pxi":278
+ /* "PETSc/petscsnes.pxi":290
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef Mat Jmat = ref_Mat(J)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 278, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 290, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":279
+ /* "PETSc/petscsnes.pxi":291
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 279, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":280
+ /* "PETSc/petscsnes.pxi":292
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x)
* cdef Mat Jmat = ref_Mat(J) # <<<<<<<<<<<<<<
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Snes.get_attr('__jacobian__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 280, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 292, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Jmat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":281
+ /* "PETSc/petscsnes.pxi":293
* cdef Vec Xvec = ref_Vec(x)
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P) # <<<<<<<<<<<<<<
* cdef object context = Snes.get_attr('__jacobian__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_P)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 281, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_P)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 293, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Pmat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":282
+ /* "PETSc/petscsnes.pxi":294
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Snes.get_attr('__jacobian__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__jacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 282, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__jacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 294, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":283
+ /* "PETSc/petscsnes.pxi":295
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Snes.get_attr('__jacobian__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -33660,7 +34640,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__pyx_t_1 = 0;
}
- /* "PETSc/petscsnes.pxi":284
+ /* "PETSc/petscsnes.pxi":296
* cdef object context = Snes.get_attr('__jacobian__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -33682,12 +34662,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(19, 284, __pyx_L1_error)
+ __PYX_ERR(19, 296, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscsnes.pxi":285
+ /* "PETSc/petscsnes.pxi":297
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (jacobian, args, kargs) = context # <<<<<<<<<<<<<<
@@ -33696,7 +34676,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -33704,9 +34684,9 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(19, 285, __pyx_L1_error)
+ __PYX_ERR(19, 297, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -33720,16 +34700,16 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 285, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 285, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 285, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 285, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -33738,7 +34718,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 285, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 297, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -33746,7 +34726,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(19, 285, __pyx_L1_error)
+ __PYX_ERR(19, 297, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_jacobian = __pyx_t_1;
@@ -33756,14 +34736,14 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":286
+ /* "PETSc/petscsnes.pxi":298
* assert context is not None and type(context) is tuple # sanity check
* (jacobian, args, kargs) = context
* jacobian(Snes, Xvec, Jmat, Pmat, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = PyTuple_New(4); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 286, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(4); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Snes));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
@@ -33777,30 +34757,30 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__Pyx_INCREF(((PyObject *)__pyx_v_Pmat));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Pmat));
PyTuple_SET_ITEM(__pyx_t_6, 3, ((PyObject *)__pyx_v_Pmat));
- __pyx_t_5 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 286, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 286, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(19, 286, __pyx_L1_error)
+ __PYX_ERR(19, 298, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 286, __pyx_L1_error)
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 286, __pyx_L1_error)
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_jacobian, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 286, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_jacobian, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":287
+ /* "PETSc/petscsnes.pxi":299
* (jacobian, args, kargs) = context
* jacobian(Snes, Xvec, Jmat, Pmat, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -33810,7 +34790,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsnes.pxi":271
+ /* "PETSc/petscsnes.pxi":283
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Jacobian( # <<<<<<<<<<<<<<
@@ -33837,12 +34817,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Jacobian(SNES __pyx_v_snes, Vec __pyx_v
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscsnes.pxi":291
+/* "PETSc/petscsnes.pxi":303
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Objective( # <<<<<<<<<<<<<<
@@ -33870,47 +34850,47 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
PyObject *(*__pyx_t_8)(PyObject *);
PetscReal __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNES_Objective", 0);
- /* "PETSc/petscsnes.pxi":297
+ /* "PETSc/petscsnes.pxi":309
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef object context = Snes.get_attr('__objective__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 297, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 309, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":298
+ /* "PETSc/petscsnes.pxi":310
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef object context = Snes.get_attr('__objective__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 298, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 310, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":299
+ /* "PETSc/petscsnes.pxi":311
* cdef SNES Snes = ref_SNES(snes)
* cdef Vec Xvec = ref_Vec(x)
* cdef object context = Snes.get_attr('__objective__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__objective__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 299, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__objective__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 311, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":300
+ /* "PETSc/petscsnes.pxi":312
* cdef Vec Xvec = ref_Vec(x)
* cdef object context = Snes.get_attr('__objective__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -33934,7 +34914,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__pyx_t_1 = 0;
}
- /* "PETSc/petscsnes.pxi":301
+ /* "PETSc/petscsnes.pxi":313
* cdef object context = Snes.get_attr('__objective__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -33956,12 +34936,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(19, 301, __pyx_L1_error)
+ __PYX_ERR(19, 313, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscsnes.pxi":302
+ /* "PETSc/petscsnes.pxi":314
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (objective, args, kargs) = context # <<<<<<<<<<<<<<
@@ -33970,7 +34950,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -33978,9 +34958,9 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(19, 302, __pyx_L1_error)
+ __PYX_ERR(19, 314, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -33994,16 +34974,16 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 302, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 302, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 302, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 302, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -34012,7 +34992,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 302, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 314, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -34020,7 +35000,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(19, 302, __pyx_L1_error)
+ __PYX_ERR(19, 314, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_objective = __pyx_t_1;
@@ -34030,14 +35010,14 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":303
+ /* "PETSc/petscsnes.pxi":315
* assert context is not None and type(context) is tuple # sanity check
* (objective, args, kargs) = context
* obj = objective(Snes, Xvec, *args, **kargs) # <<<<<<<<<<<<<<
* o[0] = asReal(obj)
* return 0
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 303, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 315, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Snes));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
@@ -34045,41 +35025,41 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Xvec));
- __pyx_t_5 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 303, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 315, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 303, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 315, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(19, 303, __pyx_L1_error)
+ __PYX_ERR(19, 315, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 303, __pyx_L1_error)
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 315, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 303, __pyx_L1_error)
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 315, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_objective, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 303, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_objective, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 315, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_obj = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":304
+ /* "PETSc/petscsnes.pxi":316
* (objective, args, kargs) = context
* obj = objective(Snes, Xvec, *args, **kargs)
* o[0] = asReal(obj) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_obj); if (unlikely(__pyx_t_9 == -1.0 && PyErr_Occurred())) __PYX_ERR(19, 304, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_obj); if (unlikely(__pyx_t_9 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(19, 316, __pyx_L1_error)
(__pyx_v_o[0]) = __pyx_t_9;
- /* "PETSc/petscsnes.pxi":305
+ /* "PETSc/petscsnes.pxi":317
* obj = objective(Snes, Xvec, *args, **kargs)
* o[0] = asReal(obj)
* return 0 # <<<<<<<<<<<<<<
@@ -34089,7 +35069,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsnes.pxi":291
+ /* "PETSc/petscsnes.pxi":303
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Objective( # <<<<<<<<<<<<<<
@@ -34115,30 +35095,27 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Objective(SNES __pyx_v_snes, Vec __pyx_
__Pyx_XDECREF(__pyx_v_obj);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscsnes.pxi":309
+/* "PETSc/petscsnes.pxi":321
* # -----------------------------------------------------------------------------
*
- * cdef int SNES_Converged( # <<<<<<<<<<<<<<
- * PetscSNES snes,
- * PetscInt iters,
+ * cdef int SNES_NGS( # <<<<<<<<<<<<<<
+ * PetscSNES snes,
+ * PetscVec x,
*/
-static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt __pyx_v_iters, PetscReal __pyx_v_xnorm, PetscReal __pyx_v_gnorm, PetscReal __pyx_v_fnorm, SNESConvergedReason *__pyx_v_r, void *__pyx_v_ctx) {
+static int __pyx_f_8petsc4py_5PETSc_SNES_NGS(SNES __pyx_v_snes, Vec __pyx_v_x, Vec __pyx_v_b, void *__pyx_v_ctx) {
struct PyPetscSNESObject *__pyx_v_Snes = 0;
- PyObject *__pyx_v_it = 0;
- PyObject *__pyx_v_xn = 0;
- PyObject *__pyx_v_gn = 0;
- PyObject *__pyx_v_fn = 0;
+ struct PyPetscVecObject *__pyx_v_Xvec = 0;
+ struct PyPetscVecObject *__pyx_v_Bvec = 0;
PyObject *__pyx_v_context = 0;
- PyObject *__pyx_v_converged = NULL;
+ PyObject *__pyx_v_ngs = NULL;
PyObject *__pyx_v_args = NULL;
PyObject *__pyx_v_kargs = NULL;
- PyObject *__pyx_v_reason = NULL;
int __pyx_r;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
@@ -34149,90 +35126,65 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
- SNESConvergedReason __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
- __Pyx_RefNannySetupContext("SNES_Converged", 0);
+ __Pyx_RefNannySetupContext("SNES_NGS", 0);
- /* "PETSc/petscsnes.pxi":318
- * void* ctx,
+ /* "PETSc/petscsnes.pxi":327
+ * void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
- * cdef object it = toInt(iters)
- * cdef object xn = toReal(xnorm)
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec Bvec = ref_Vec(b)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 318, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 327, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":319
+ /* "PETSc/petscsnes.pxi":328
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes)
- * cdef object it = toInt(iters) # <<<<<<<<<<<<<<
- * cdef object xn = toReal(xnorm)
- * cdef object gn = toReal(gnorm)
+ * cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
+ * cdef Vec Bvec = ref_Vec(b)
+ * cdef object context = Snes.get_attr('__ngs__')
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_iters); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 319, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 328, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_v_it = __pyx_t_1;
+ __pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":320
+ /* "PETSc/petscsnes.pxi":329
* cdef SNES Snes = ref_SNES(snes)
- * cdef object it = toInt(iters)
- * cdef object xn = toReal(xnorm) # <<<<<<<<<<<<<<
- * cdef object gn = toReal(gnorm)
- * cdef object fn = toReal(fnorm)
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_xnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 320, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_v_xn = __pyx_t_1;
- __pyx_t_1 = 0;
-
- /* "PETSc/petscsnes.pxi":321
- * cdef object it = toInt(iters)
- * cdef object xn = toReal(xnorm)
- * cdef object gn = toReal(gnorm) # <<<<<<<<<<<<<<
- * cdef object fn = toReal(fnorm)
- * cdef object context = Snes.get_attr('__converged__')
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_gnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 321, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_v_gn = __pyx_t_1;
- __pyx_t_1 = 0;
-
- /* "PETSc/petscsnes.pxi":322
- * cdef object xn = toReal(xnorm)
- * cdef object gn = toReal(gnorm)
- * cdef object fn = toReal(fnorm) # <<<<<<<<<<<<<<
- * cdef object context = Snes.get_attr('__converged__')
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec Bvec = ref_Vec(b) # <<<<<<<<<<<<<<
+ * cdef object context = Snes.get_attr('__ngs__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_fnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 322, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_b)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 329, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_v_fn = __pyx_t_1;
+ __pyx_v_Bvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":323
- * cdef object gn = toReal(gnorm)
- * cdef object fn = toReal(fnorm)
- * cdef object context = Snes.get_attr('__converged__') # <<<<<<<<<<<<<<
+ /* "PETSc/petscsnes.pxi":330
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec Bvec = ref_Vec(b)
+ * cdef object context = Snes.get_attr('__ngs__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 323, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__ngs__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":324
- * cdef object fn = toReal(fnorm)
- * cdef object context = Snes.get_attr('__converged__')
+ /* "PETSc/petscsnes.pxi":331
+ * cdef Vec Bvec = ref_Vec(b)
+ * cdef object context = Snes.get_attr('__ngs__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple # sanity check
- * (converged, args, kargs) = context
+ * (ngs, args, kargs) = context
*/
__pyx_t_3 = (__pyx_v_context == Py_None);
__pyx_t_4 = (__pyx_t_3 != 0);
@@ -34251,12 +35203,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__pyx_t_1 = 0;
}
- /* "PETSc/petscsnes.pxi":325
- * cdef object context = Snes.get_attr('__converged__')
+ /* "PETSc/petscsnes.pxi":332
+ * cdef object context = Snes.get_attr('__ngs__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
- * (converged, args, kargs) = context
- * reason = converged(Snes, it, (xn, gn, fn), *args, **kargs)
+ * (ngs, args, kargs) = context
+ * ngs(Snes, Xvec, Bvec, *args, **kargs)
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
@@ -34273,12 +35225,321 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(19, 325, __pyx_L1_error)
+ __PYX_ERR(19, 332, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscsnes.pxi":326
+ /* "PETSc/petscsnes.pxi":333
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ * (ngs, args, kargs) = context # <<<<<<<<<<<<<<
+ * ngs(Snes, Xvec, Bvec, *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(19, 333, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_5);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 333, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 333, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 333, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 333, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_5);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 333, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(19, 333, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ __pyx_v_ngs = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_args = __pyx_t_5;
+ __pyx_t_5 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscsnes.pxi":334
+ * assert context is not None and type(context) is tuple # sanity check
+ * (ngs, args, kargs) = context
+ * ngs(Snes, Xvec, Bvec, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 334, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Snes));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
+ PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Snes));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
+ PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Xvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Bvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Bvec));
+ PyTuple_SET_ITEM(__pyx_t_6, 2, ((PyObject *)__pyx_v_Bvec));
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 334, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 334, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(19, 334, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 334, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ } else {
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 334, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ }
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_ngs, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 334, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+
+ /* "PETSc/petscsnes.pxi":335
+ * (ngs, args, kargs) = context
+ * ngs(Snes, Xvec, Bvec, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * # -----------------------------------------------------------------------------
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscsnes.pxi":321
+ * # -----------------------------------------------------------------------------
+ *
+ * cdef int SNES_NGS( # <<<<<<<<<<<<<<
+ * PetscSNES snes,
+ * PetscVec x,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES_NGS", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Snes);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Xvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Bvec);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_ngs);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscsnes.pxi":339
+ * # -----------------------------------------------------------------------------
+ *
+ * cdef int SNES_Converged( # <<<<<<<<<<<<<<
+ * PetscSNES snes,
+ * PetscInt iters,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt __pyx_v_iters, PetscReal __pyx_v_xnorm, PetscReal __pyx_v_gnorm, PetscReal __pyx_v_fnorm, SNESConvergedReason *__pyx_v_r, void *__pyx_v_ctx) {
+ struct PyPetscSNESObject *__pyx_v_Snes = 0;
+ PyObject *__pyx_v_it = 0;
+ PyObject *__pyx_v_xn = 0;
+ PyObject *__pyx_v_gn = 0;
+ PyObject *__pyx_v_fn = 0;
+ PyObject *__pyx_v_context = 0;
+ PyObject *__pyx_v_converged = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ PyObject *__pyx_v_reason = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ SNESConvergedReason __pyx_t_9;
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("SNES_Converged", 0);
+
+ /* "PETSc/petscsnes.pxi":348
+ * void* ctx,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
+ * cdef object it = toInt(iters)
+ * cdef object xn = toReal(xnorm)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 348, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":349
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef SNES Snes = ref_SNES(snes)
+ * cdef object it = toInt(iters) # <<<<<<<<<<<<<<
+ * cdef object xn = toReal(xnorm)
+ * cdef object gn = toReal(gnorm)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_iters); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 349, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_it = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":350
+ * cdef SNES Snes = ref_SNES(snes)
+ * cdef object it = toInt(iters)
+ * cdef object xn = toReal(xnorm) # <<<<<<<<<<<<<<
+ * cdef object gn = toReal(gnorm)
+ * cdef object fn = toReal(fnorm)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_xnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 350, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_xn = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":351
+ * cdef object it = toInt(iters)
+ * cdef object xn = toReal(xnorm)
+ * cdef object gn = toReal(gnorm) # <<<<<<<<<<<<<<
+ * cdef object fn = toReal(fnorm)
+ * cdef object context = Snes.get_attr('__converged__')
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_gnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 351, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_gn = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":352
+ * cdef object xn = toReal(xnorm)
+ * cdef object gn = toReal(gnorm)
+ * cdef object fn = toReal(fnorm) # <<<<<<<<<<<<<<
+ * cdef object context = Snes.get_attr('__converged__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_fnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 352, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_fn = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":353
+ * cdef object gn = toReal(gnorm)
+ * cdef object fn = toReal(fnorm)
+ * cdef object context = Snes.get_attr('__converged__') # <<<<<<<<<<<<<<
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 353, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscsnes.pxi":354
+ * cdef object fn = toReal(fnorm)
+ * cdef object context = Snes.get_attr('__converged__')
+ * if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple # sanity check
+ * (converged, args, kargs) = context
+ */
+ __pyx_t_3 = (__pyx_v_context == Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_2 = __pyx_t_4;
+ goto __pyx_L4_bool_binop_done;
+ }
+ __pyx_t_4 = ((__pyx_v_ctx != NULL) != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L4_bool_binop_done:;
+ if (__pyx_t_2) {
+ __pyx_t_1 = ((PyObject *)__pyx_v_ctx);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_context, __pyx_t_1);
+ __pyx_t_1 = 0;
+ }
+
+ /* "PETSc/petscsnes.pxi":355
+ * cdef object context = Snes.get_attr('__converged__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
+ * (converged, args, kargs) = context
+ * reason = converged(Snes, it, (xn, gn, fn), *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = (__pyx_v_context != Py_None);
+ __pyx_t_3 = (__pyx_t_4 != 0);
+ if (__pyx_t_3) {
+ } else {
+ __pyx_t_2 = __pyx_t_3;
+ goto __pyx_L6_bool_binop_done;
+ }
+ __pyx_t_3 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L6_bool_binop_done:;
+ if (unlikely(!__pyx_t_2)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(19, 355, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscsnes.pxi":356
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (converged, args, kargs) = context # <<<<<<<<<<<<<<
@@ -34287,7 +35548,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -34295,9 +35556,9 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(19, 326, __pyx_L1_error)
+ __PYX_ERR(19, 356, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -34311,16 +35572,16 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 326, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 326, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 326, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 326, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -34329,7 +35590,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 326, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(19, 356, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -34337,7 +35598,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(19, 326, __pyx_L1_error)
+ __PYX_ERR(19, 356, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_converged = __pyx_t_1;
@@ -34347,14 +35608,14 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":327
+ /* "PETSc/petscsnes.pxi":357
* assert context is not None and type(context) is tuple # sanity check
* (converged, args, kargs) = context
* reason = converged(Snes, it, (xn, gn, fn), *args, **kargs) # <<<<<<<<<<<<<<
* if reason is None: r[0] = SNES_CONVERGED_ITERATING
* elif reason is False: r[0] = SNES_CONVERGED_ITERATING
*/
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 327, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_xn);
__Pyx_GIVEREF(__pyx_v_xn);
@@ -34365,7 +35626,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__Pyx_INCREF(__pyx_v_fn);
__Pyx_GIVEREF(__pyx_v_fn);
PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_fn);
- __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 327, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_v_Snes));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
@@ -34376,31 +35637,31 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_6);
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 327, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 327, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(19, 327, __pyx_L1_error)
+ __PYX_ERR(19, 357, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 327, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 327, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_converged, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 327, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_converged, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_v_reason = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/petscsnes.pxi":328
+ /* "PETSc/petscsnes.pxi":358
* (converged, args, kargs) = context
* reason = converged(Snes, it, (xn, gn, fn), *args, **kargs)
* if reason is None: r[0] = SNES_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -34414,7 +35675,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
goto __pyx_L10;
}
- /* "PETSc/petscsnes.pxi":329
+ /* "PETSc/petscsnes.pxi":359
* reason = converged(Snes, it, (xn, gn, fn), *args, **kargs)
* if reason is None: r[0] = SNES_CONVERGED_ITERATING
* elif reason is False: r[0] = SNES_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -34428,7 +35689,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
goto __pyx_L10;
}
- /* "PETSc/petscsnes.pxi":330
+ /* "PETSc/petscsnes.pxi":360
* if reason is None: r[0] = SNES_CONVERGED_ITERATING
* elif reason is False: r[0] = SNES_CONVERGED_ITERATING
* elif reason is True: r[0] = SNES_CONVERGED_ITS # XXX ? # <<<<<<<<<<<<<<
@@ -34442,7 +35703,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
goto __pyx_L10;
}
- /* "PETSc/petscsnes.pxi":331
+ /* "PETSc/petscsnes.pxi":361
* elif reason is False: r[0] = SNES_CONVERGED_ITERATING
* elif reason is True: r[0] = SNES_CONVERGED_ITS # XXX ?
* else: r[0] = reason # <<<<<<<<<<<<<<
@@ -34450,12 +35711,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
*
*/
/*else*/ {
- __pyx_t_9 = ((SNESConvergedReason)__Pyx_PyInt_As_SNESConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(19, 331, __pyx_L1_error)
+ __pyx_t_9 = ((SNESConvergedReason)__Pyx_PyInt_As_SNESConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(19, 361, __pyx_L1_error)
(__pyx_v_r[0]) = __pyx_t_9;
}
__pyx_L10:;
- /* "PETSc/petscsnes.pxi":332
+ /* "PETSc/petscsnes.pxi":362
* elif reason is True: r[0] = SNES_CONVERGED_ITS # XXX ?
* else: r[0] = reason
* return 0 # <<<<<<<<<<<<<<
@@ -34465,7 +35726,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsnes.pxi":309
+ /* "PETSc/petscsnes.pxi":339
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Converged( # <<<<<<<<<<<<<<
@@ -34494,12 +35755,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Converged(SNES __pyx_v_snes, PetscInt _
__Pyx_XDECREF(__pyx_v_reason);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscsnes.pxi":336
+/* "PETSc/petscsnes.pxi":366
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Monitor( # <<<<<<<<<<<<<<
@@ -34529,35 +35790,35 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
PyObject *__pyx_t_10 = NULL;
PyObject *(*__pyx_t_11)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("SNES_Monitor", 0);
- /* "PETSc/petscsnes.pxi":342
+ /* "PETSc/petscsnes.pxi":372
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes) # <<<<<<<<<<<<<<
* cdef object monitorlist = Snes.get_attr('__monitor__')
* if monitorlist is None: return 0
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 342, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_SNES(__pyx_v_snes)); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 372, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Snes = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":343
+ /* "PETSc/petscsnes.pxi":373
* ) except PETSC_ERR_PYTHON with gil:
* cdef SNES Snes = ref_SNES(snes)
* cdef object monitorlist = Snes.get_attr('__monitor__') # <<<<<<<<<<<<<<
* if monitorlist is None: return 0
* cdef object it = toInt(iters)
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 343, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_Snes->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Snes), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 373, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_monitorlist = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":344
+ /* "PETSc/petscsnes.pxi":374
* cdef SNES Snes = ref_SNES(snes)
* cdef object monitorlist = Snes.get_attr('__monitor__')
* if monitorlist is None: return 0 # <<<<<<<<<<<<<<
@@ -34571,31 +35832,31 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
goto __pyx_L0;
}
- /* "PETSc/petscsnes.pxi":345
+ /* "PETSc/petscsnes.pxi":375
* cdef object monitorlist = Snes.get_attr('__monitor__')
* if monitorlist is None: return 0
* cdef object it = toInt(iters) # <<<<<<<<<<<<<<
* cdef object rn = toReal(rnorm)
* for (monitor, args, kargs) in monitorlist:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_iters); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 345, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_iters); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 375, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_it = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":346
+ /* "PETSc/petscsnes.pxi":376
* if monitorlist is None: return 0
* cdef object it = toInt(iters)
* cdef object rn = toReal(rnorm) # <<<<<<<<<<<<<<
* for (monitor, args, kargs) in monitorlist:
* monitor(Snes, it, rn, *args, **kargs)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 346, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rnorm); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_rn = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":347
+ /* "PETSc/petscsnes.pxi":377
* cdef object it = toInt(iters)
* cdef object rn = toReal(rnorm)
* for (monitor, args, kargs) in monitorlist: # <<<<<<<<<<<<<<
@@ -34606,26 +35867,26 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__pyx_t_1 = __pyx_v_monitorlist; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0;
__pyx_t_5 = NULL;
} else {
- __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_monitorlist); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_monitorlist); if (unlikely(!__pyx_t_1)) __PYX_ERR(19, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_5)) __PYX_ERR(19, 377, __pyx_L1_error)
}
for (;;) {
if (likely(!__pyx_t_5)) {
if (likely(PyList_CheckExact(__pyx_t_1))) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(19, 347, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(19, 377, __pyx_L1_error)
#else
- __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(19, 347, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(19, 377, __pyx_L1_error)
#else
- __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
}
@@ -34634,8 +35895,8 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
if (unlikely(!__pyx_t_6)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(19, 347, __pyx_L1_error)
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ else __PYX_ERR(19, 377, __pyx_L1_error)
}
break;
}
@@ -34643,7 +35904,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
}
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -34651,9 +35912,9 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(19, 347, __pyx_L1_error)
+ __PYX_ERR(19, 377, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -34667,17 +35928,17 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(19, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(19, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(19, 347, __pyx_L1_error)
+ __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(19, 377, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
@@ -34687,7 +35948,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(19, 347, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(19, 377, __pyx_L1_error)
__pyx_t_11 = NULL;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
goto __pyx_L7_unpacking_done;
@@ -34695,7 +35956,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_11 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(19, 347, __pyx_L1_error)
+ __PYX_ERR(19, 377, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_monitor, __pyx_t_7);
@@ -34705,14 +35966,14 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__Pyx_XDECREF_SET(__pyx_v_kargs, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/petscsnes.pxi":348
+ /* "PETSc/petscsnes.pxi":378
* cdef object rn = toReal(rnorm)
* for (monitor, args, kargs) in monitorlist:
* monitor(Snes, it, rn, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 348, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Snes));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Snes));
@@ -34723,30 +35984,30 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__Pyx_INCREF(__pyx_v_rn);
__Pyx_GIVEREF(__pyx_v_rn);
PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_rn);
- __pyx_t_9 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 348, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_8 = PyNumber_Add(__pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(19, 348, __pyx_L1_error)
+ __pyx_t_8 = PyNumber_Add(__pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(19, 378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(19, 348, __pyx_L1_error)
+ __PYX_ERR(19, 378, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_9 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 348, __pyx_L1_error)
+ __pyx_t_9 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
} else {
- __pyx_t_9 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 348, __pyx_L1_error)
+ __pyx_t_9 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(19, 378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_monitor, __pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 348, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_monitor, __pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(19, 378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- /* "PETSc/petscsnes.pxi":347
+ /* "PETSc/petscsnes.pxi":377
* cdef object it = toInt(iters)
* cdef object rn = toReal(rnorm)
* for (monitor, args, kargs) in monitorlist: # <<<<<<<<<<<<<<
@@ -34756,7 +36017,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscsnes.pxi":349
+ /* "PETSc/petscsnes.pxi":379
* for (monitor, args, kargs) in monitorlist:
* monitor(Snes, it, rn, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -34766,7 +36027,7 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscsnes.pxi":336
+ /* "PETSc/petscsnes.pxi":366
* # -----------------------------------------------------------------------------
*
* cdef int SNES_Monitor( # <<<<<<<<<<<<<<
@@ -34794,12 +36055,12 @@ static int __pyx_f_8petsc4py_5PETSc_SNES_Monitor(SNES __pyx_v_snes, PetscInt __p
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscts.pxi":199
+/* "PETSc/petscts.pxi":277
* # -----------------------------------------------------------------------------
*
* cdef inline TS ref_TS(PetscTS ts): # <<<<<<<<<<<<<<
@@ -34815,14 +36076,14 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_8petsc4py_5PETSc_ref_TS(TS
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("ref_TS", 0);
- /* "PETSc/petscts.pxi":200
+ /* "PETSc/petscts.pxi":278
*
* cdef inline TS ref_TS(PetscTS ts):
* cdef TS ob = <TS> TS() # <<<<<<<<<<<<<<
* ob.ts = ts
* PetscINCREF(ob.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_TS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 200, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_TS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_2 = __pyx_t_1;
__Pyx_INCREF(__pyx_t_2);
@@ -34830,7 +36091,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_8petsc4py_5PETSc_ref_TS(TS
__pyx_v_ob = ((struct PyPetscTSObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscts.pxi":201
+ /* "PETSc/petscts.pxi":279
* cdef inline TS ref_TS(PetscTS ts):
* cdef TS ob = <TS> TS()
* ob.ts = ts # <<<<<<<<<<<<<<
@@ -34839,7 +36100,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_8petsc4py_5PETSc_ref_TS(TS
*/
__pyx_v_ob->ts = __pyx_v_ts;
- /* "PETSc/petscts.pxi":202
+ /* "PETSc/petscts.pxi":280
* cdef TS ob = <TS> TS()
* ob.ts = ts
* PetscINCREF(ob.obj) # <<<<<<<<<<<<<<
@@ -34848,7 +36109,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_8petsc4py_5PETSc_ref_TS(TS
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ob->__pyx_base.obj);
- /* "PETSc/petscts.pxi":203
+ /* "PETSc/petscts.pxi":281
* ob.ts = ts
* PetscINCREF(ob.obj)
* return ob # <<<<<<<<<<<<<<
@@ -34860,7 +36121,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_8petsc4py_5PETSc_ref_TS(TS
__pyx_r = __pyx_v_ob;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":199
+ /* "PETSc/petscts.pxi":277
* # -----------------------------------------------------------------------------
*
* cdef inline TS ref_TS(PetscTS ts): # <<<<<<<<<<<<<<
@@ -34881,7 +36142,7 @@ static CYTHON_INLINE struct PyPetscTSObject *__pyx_f_8petsc4py_5PETSc_ref_TS(TS
return __pyx_r;
}
-/* "PETSc/petscts.pxi":207
+/* "PETSc/petscts.pxi":285
* # -----------------------------------------------------------------------------
*
* cdef int TS_RHSFunction( # <<<<<<<<<<<<<<
@@ -34908,59 +36169,59 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TS_RHSFunction", 0);
- /* "PETSc/petscts.pxi":214
+ /* "PETSc/petscts.pxi":292
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec Fvec = ref_Vec(f)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 214, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 292, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":215
+ /* "PETSc/petscts.pxi":293
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Ts.get_attr('__rhsfunction__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 215, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 293, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":216
+ /* "PETSc/petscts.pxi":294
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec Fvec = ref_Vec(f) # <<<<<<<<<<<<<<
* cdef object context = Ts.get_attr('__rhsfunction__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 216, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 294, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Fvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":217
+ /* "PETSc/petscts.pxi":295
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Ts.get_attr('__rhsfunction__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__rhsfunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 217, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__rhsfunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 295, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":218
+ /* "PETSc/petscts.pxi":296
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Ts.get_attr('__rhsfunction__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -34984,7 +36245,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__pyx_t_1 = 0;
}
- /* "PETSc/petscts.pxi":219
+ /* "PETSc/petscts.pxi":297
* cdef object context = Ts.get_attr('__rhsfunction__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -35006,12 +36267,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(20, 219, __pyx_L1_error)
+ __PYX_ERR(20, 297, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscts.pxi":220
+ /* "PETSc/petscts.pxi":298
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (function, args, kargs) = context # <<<<<<<<<<<<<<
@@ -35020,7 +36281,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -35028,9 +36289,9 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(20, 220, __pyx_L1_error)
+ __PYX_ERR(20, 298, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -35044,16 +36305,16 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 220, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 220, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 220, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 220, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -35062,7 +36323,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 220, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 298, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -35070,7 +36331,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(20, 220, __pyx_L1_error)
+ __PYX_ERR(20, 298, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_function = __pyx_t_1;
@@ -35080,16 +36341,16 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscts.pxi":221
+ /* "PETSc/petscts.pxi":299
* assert context is not None and type(context) is tuple # sanity check
* (function, args, kargs) = context
* function(Ts, toReal(t), Xvec, Fvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 221, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 221, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_v_Ts));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
@@ -35103,30 +36364,30 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__Pyx_GIVEREF(((PyObject *)__pyx_v_Fvec));
PyTuple_SET_ITEM(__pyx_t_5, 3, ((PyObject *)__pyx_v_Fvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 221, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 221, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(20, 221, __pyx_L1_error)
+ __PYX_ERR(20, 299, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 221, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 221, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 221, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscts.pxi":222
+ /* "PETSc/petscts.pxi":300
* (function, args, kargs) = context
* function(Ts, toReal(t), Xvec, Fvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -35136,7 +36397,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":207
+ /* "PETSc/petscts.pxi":285
* # -----------------------------------------------------------------------------
*
* cdef int TS_RHSFunction( # <<<<<<<<<<<<<<
@@ -35162,12 +36423,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSFunction(TS __pyx_v_ts, PetscReal __py
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscts.pxi":224
+/* "PETSc/petscts.pxi":302
* return 0
*
* cdef int TS_RHSJacobian( # <<<<<<<<<<<<<<
@@ -35195,71 +36456,71 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TS_RHSJacobian", 0);
- /* "PETSc/petscts.pxi":232
+ /* "PETSc/petscts.pxi":310
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef Mat Jmat = ref_Mat(J)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 232, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 310, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":233
+ /* "PETSc/petscts.pxi":311
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 233, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 311, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":234
+ /* "PETSc/petscts.pxi":312
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x)
* cdef Mat Jmat = ref_Mat(J) # <<<<<<<<<<<<<<
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Ts.get_attr('__rhsjacobian__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 234, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 312, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Jmat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":235
+ /* "PETSc/petscts.pxi":313
* cdef Vec Xvec = ref_Vec(x)
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P) # <<<<<<<<<<<<<<
* cdef object context = Ts.get_attr('__rhsjacobian__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_P)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 235, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_P)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 313, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Pmat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":236
+ /* "PETSc/petscts.pxi":314
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Ts.get_attr('__rhsjacobian__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__rhsjacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 236, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__rhsjacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":237
+ /* "PETSc/petscts.pxi":315
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Ts.get_attr('__rhsjacobian__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -35283,7 +36544,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__pyx_t_1 = 0;
}
- /* "PETSc/petscts.pxi":238
+ /* "PETSc/petscts.pxi":316
* cdef object context = Ts.get_attr('__rhsjacobian__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -35305,12 +36566,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(20, 238, __pyx_L1_error)
+ __PYX_ERR(20, 316, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscts.pxi":239
+ /* "PETSc/petscts.pxi":317
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (jacobian, args, kargs) = context # <<<<<<<<<<<<<<
@@ -35319,7 +36580,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -35327,9 +36588,9 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(20, 239, __pyx_L1_error)
+ __PYX_ERR(20, 317, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -35343,16 +36604,16 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 239, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 239, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 239, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 239, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -35361,7 +36622,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 239, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 317, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -35369,7 +36630,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(20, 239, __pyx_L1_error)
+ __PYX_ERR(20, 317, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_jacobian = __pyx_t_1;
@@ -35379,16 +36640,16 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscts.pxi":240
+ /* "PETSc/petscts.pxi":318
* assert context is not None and type(context) is tuple # sanity check
* (jacobian, args, kargs) = context
* jacobian(Ts, toReal(t), Xvec, Jmat, Pmat, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 240, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 318, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_5 = PyTuple_New(5); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 240, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(5); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 318, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_v_Ts));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
@@ -35405,30 +36666,30 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__Pyx_GIVEREF(((PyObject *)__pyx_v_Pmat));
PyTuple_SET_ITEM(__pyx_t_5, 4, ((PyObject *)__pyx_v_Pmat));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 240, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 318, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 240, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 318, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(20, 240, __pyx_L1_error)
+ __PYX_ERR(20, 318, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 240, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 318, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 240, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 318, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_jacobian, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 240, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_jacobian, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 318, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscts.pxi":241
+ /* "PETSc/petscts.pxi":319
* (jacobian, args, kargs) = context
* jacobian(Ts, toReal(t), Xvec, Jmat, Pmat, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -35438,7 +36699,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":224
+ /* "PETSc/petscts.pxi":302
* return 0
*
* cdef int TS_RHSJacobian( # <<<<<<<<<<<<<<
@@ -35465,12 +36726,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian(TS __pyx_v_ts, PetscReal __py
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscts.pxi":245
+/* "PETSc/petscts.pxi":323
* # -----------------------------------------------------------------------------
*
* cdef int TS_IFunction( # <<<<<<<<<<<<<<
@@ -35498,71 +36759,71 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TS_IFunction", 0);
- /* "PETSc/petscts.pxi":253
+ /* "PETSc/petscts.pxi":331
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec XDvec = ref_Vec(xdot)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 253, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 331, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":254
+ /* "PETSc/petscts.pxi":332
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef Vec XDvec = ref_Vec(xdot)
* cdef Vec Fvec = ref_Vec(f)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 254, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":255
+ /* "PETSc/petscts.pxi":333
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec XDvec = ref_Vec(xdot) # <<<<<<<<<<<<<<
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Ts.get_attr('__ifunction__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 255, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 333, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_XDvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":256
+ /* "PETSc/petscts.pxi":334
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec XDvec = ref_Vec(xdot)
* cdef Vec Fvec = ref_Vec(f) # <<<<<<<<<<<<<<
* cdef object context = Ts.get_attr('__ifunction__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 256, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 334, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Fvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":257
+ /* "PETSc/petscts.pxi":335
* cdef Vec XDvec = ref_Vec(xdot)
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Ts.get_attr('__ifunction__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__ifunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 257, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__ifunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 335, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":258
+ /* "PETSc/petscts.pxi":336
* cdef Vec Fvec = ref_Vec(f)
* cdef object context = Ts.get_attr('__ifunction__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -35586,7 +36847,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__pyx_t_1 = 0;
}
- /* "PETSc/petscts.pxi":259
+ /* "PETSc/petscts.pxi":337
* cdef object context = Ts.get_attr('__ifunction__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -35608,12 +36869,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(20, 259, __pyx_L1_error)
+ __PYX_ERR(20, 337, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscts.pxi":260
+ /* "PETSc/petscts.pxi":338
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (function, args, kargs) = context # <<<<<<<<<<<<<<
@@ -35622,7 +36883,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -35630,9 +36891,9 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(20, 260, __pyx_L1_error)
+ __PYX_ERR(20, 338, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -35646,16 +36907,16 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 260, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 260, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 260, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 260, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -35664,7 +36925,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 260, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 338, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -35672,7 +36933,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(20, 260, __pyx_L1_error)
+ __PYX_ERR(20, 338, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_function = __pyx_t_1;
@@ -35682,16 +36943,16 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscts.pxi":261
+ /* "PETSc/petscts.pxi":339
* assert context is not None and type(context) is tuple # sanity check
* (function, args, kargs) = context
* function(Ts, toReal(t), Xvec, XDvec, Fvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 261, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_5 = PyTuple_New(5); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 261, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(5); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(((PyObject *)__pyx_v_Ts));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
@@ -35708,30 +36969,30 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_GIVEREF(((PyObject *)__pyx_v_Fvec));
PyTuple_SET_ITEM(__pyx_t_5, 4, ((PyObject *)__pyx_v_Fvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 261, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 261, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(20, 261, __pyx_L1_error)
+ __PYX_ERR(20, 339, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 261, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 261, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 261, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/petscts.pxi":262
+ /* "PETSc/petscts.pxi":340
* (function, args, kargs) = context
* function(Ts, toReal(t), Xvec, XDvec, Fvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -35741,7 +37002,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":245
+ /* "PETSc/petscts.pxi":323
* # -----------------------------------------------------------------------------
*
* cdef int TS_IFunction( # <<<<<<<<<<<<<<
@@ -35768,12 +37029,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IFunction(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscts.pxi":264
+/* "PETSc/petscts.pxi":342
* return 0
*
* cdef int TS_IJacobian( # <<<<<<<<<<<<<<
@@ -35802,83 +37063,83 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TS_IJacobian", 0);
- /* "PETSc/petscts.pxi":274
+ /* "PETSc/petscts.pxi":352
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec XDvec = ref_Vec(xdot)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 274, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":275
+ /* "PETSc/petscts.pxi":353
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
* cdef Vec XDvec = ref_Vec(xdot)
* cdef Mat Jmat = ref_Mat(J)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 275, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 353, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":276
+ /* "PETSc/petscts.pxi":354
* cdef TS Ts = ref_TS(ts)
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec XDvec = ref_Vec(xdot) # <<<<<<<<<<<<<<
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 276, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 354, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_XDvec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":277
+ /* "PETSc/petscts.pxi":355
* cdef Vec Xvec = ref_Vec(x)
* cdef Vec XDvec = ref_Vec(xdot)
* cdef Mat Jmat = ref_Mat(J) # <<<<<<<<<<<<<<
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Ts.get_attr('__ijacobian__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 277, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Jmat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":278
+ /* "PETSc/petscts.pxi":356
* cdef Vec XDvec = ref_Vec(xdot)
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P) # <<<<<<<<<<<<<<
* cdef object context = Ts.get_attr('__ijacobian__')
* if context is None and ctx != NULL: context = <object>ctx
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_P)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 278, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_P)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Pmat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":279
+ /* "PETSc/petscts.pxi":357
* cdef Mat Jmat = ref_Mat(J)
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Ts.get_attr('__ijacobian__') # <<<<<<<<<<<<<<
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__ijacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 279, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__ijacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":280
+ /* "PETSc/petscts.pxi":358
* cdef Mat Pmat = ref_Mat(P)
* cdef object context = Ts.get_attr('__ijacobian__')
* if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
@@ -35902,7 +37163,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
__pyx_t_1 = 0;
}
- /* "PETSc/petscts.pxi":281
+ /* "PETSc/petscts.pxi":359
* cdef object context = Ts.get_attr('__ijacobian__')
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
@@ -35924,12 +37185,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
__pyx_L6_bool_binop_done:;
if (unlikely(!__pyx_t_2)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(20, 281, __pyx_L1_error)
+ __PYX_ERR(20, 359, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscts.pxi":282
+ /* "PETSc/petscts.pxi":360
* if context is None and ctx != NULL: context = <object>ctx
* assert context is not None and type(context) is tuple # sanity check
* (jacobian, args, kargs) = context # <<<<<<<<<<<<<<
@@ -35938,7 +37199,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -35946,9 +37207,9 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(20, 282, __pyx_L1_error)
+ __PYX_ERR(20, 360, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -35962,16 +37223,16 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 282, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 282, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 282, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 282, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
@@ -35980,7 +37241,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_GOTREF(__pyx_t_5);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 282, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 360, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L9_unpacking_done;
@@ -35988,7 +37249,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(20, 282, __pyx_L1_error)
+ __PYX_ERR(20, 360, __pyx_L1_error)
__pyx_L9_unpacking_done:;
}
__pyx_v_jacobian = __pyx_t_1;
@@ -35998,18 +37259,18 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscts.pxi":283
+ /* "PETSc/petscts.pxi":361
* assert context is not None and type(context) is tuple # sanity check
* (jacobian, args, kargs) = context
* jacobian(Ts, toReal(t), Xvec, XDvec, toReal(a), Jmat, Pmat, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_a); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_a); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_1 = PyTuple_New(7); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(7); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Ts));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
@@ -36032,40 +37293,40 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
PyTuple_SET_ITEM(__pyx_t_1, 6, ((PyObject *)__pyx_v_Pmat));
__pyx_t_6 = 0;
__pyx_t_5 = 0;
- __pyx_t_5 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyNumber_Add(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_6 = PyNumber_Add(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(20, 283, __pyx_L1_error)
+ __PYX_ERR(20, 361, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_5 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
} else {
- __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_5 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_jacobian, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 283, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_jacobian, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 361, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":284
+ /* "PETSc/petscts.pxi":362
* (jacobian, args, kargs) = context
* jacobian(Ts, toReal(t), Xvec, XDvec, toReal(a), Jmat, Pmat, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
*
- * # -----------------------------------------------------------------------------
+ * cdef int TS_I2Function(
*/
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":264
+ /* "PETSc/petscts.pxi":342
* return 0
*
* cdef int TS_IJacobian( # <<<<<<<<<<<<<<
@@ -36093,12 +37354,679 @@ static int __pyx_f_8petsc4py_5PETSc_TS_IJacobian(TS __pyx_v_ts, PetscReal __pyx_
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscts.pxi":364
+ * return 0
+ *
+ * cdef int TS_I2Function( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_TS_I2Function(TS __pyx_v_ts, PetscReal __pyx_v_t, Vec __pyx_v_x, Vec __pyx_v_xdot, Vec __pyx_v_xdotdot, Vec __pyx_v_f, void *__pyx_v_ctx) {
+ struct PyPetscTSObject *__pyx_v_Ts = 0;
+ struct PyPetscVecObject *__pyx_v_Xvec = 0;
+ struct PyPetscVecObject *__pyx_v_XDvec = 0;
+ struct PyPetscVecObject *__pyx_v_XDDvec = 0;
+ struct PyPetscVecObject *__pyx_v_Fvec = 0;
+ PyObject *__pyx_v_context = 0;
+ PyObject *__pyx_v_function = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("TS_I2Function", 0);
+
+ /* "PETSc/petscts.pxi":373
+ * void* ctx,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec XDvec = ref_Vec(xdot)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 373, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":374
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
+ * cdef Vec XDvec = ref_Vec(xdot)
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 374, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":375
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec XDvec = ref_Vec(xdot) # <<<<<<<<<<<<<<
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ * cdef Vec Fvec = ref_Vec(f)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 375, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_XDvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":376
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec XDvec = ref_Vec(xdot)
+ * cdef Vec XDDvec = ref_Vec(xdotdot) # <<<<<<<<<<<<<<
+ * cdef Vec Fvec = ref_Vec(f)
+ * cdef object context = Ts.get_attr('__i2function__')
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdotdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 376, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_XDDvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":377
+ * cdef Vec XDvec = ref_Vec(xdot)
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ * cdef Vec Fvec = ref_Vec(f) # <<<<<<<<<<<<<<
+ * cdef object context = Ts.get_attr('__i2function__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 377, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Fvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":378
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ * cdef Vec Fvec = ref_Vec(f)
+ * cdef object context = Ts.get_attr('__i2function__') # <<<<<<<<<<<<<<
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__i2function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 378, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":379
+ * cdef Vec Fvec = ref_Vec(f)
+ * cdef object context = Ts.get_attr('__i2function__')
+ * if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple # sanity check
+ * (function, args, kargs) = context
+ */
+ __pyx_t_3 = (__pyx_v_context == Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_2 = __pyx_t_4;
+ goto __pyx_L4_bool_binop_done;
+ }
+ __pyx_t_4 = ((__pyx_v_ctx != NULL) != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L4_bool_binop_done:;
+ if (__pyx_t_2) {
+ __pyx_t_1 = ((PyObject *)__pyx_v_ctx);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_context, __pyx_t_1);
+ __pyx_t_1 = 0;
+ }
+
+ /* "PETSc/petscts.pxi":380
+ * cdef object context = Ts.get_attr('__i2function__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
+ * (function, args, kargs) = context
+ * function(Ts, toReal(t), Xvec, XDvec, XDDvec, Fvec, *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = (__pyx_v_context != Py_None);
+ __pyx_t_3 = (__pyx_t_4 != 0);
+ if (__pyx_t_3) {
+ } else {
+ __pyx_t_2 = __pyx_t_3;
+ goto __pyx_L6_bool_binop_done;
+ }
+ __pyx_t_3 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L6_bool_binop_done:;
+ if (unlikely(!__pyx_t_2)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(20, 380, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscts.pxi":381
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ * (function, args, kargs) = context # <<<<<<<<<<<<<<
+ * function(Ts, toReal(t), Xvec, XDvec, XDDvec, Fvec, *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 381, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_5);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 381, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 381, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 381, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 381, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_5);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 381, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 381, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ __pyx_v_function = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_args = __pyx_t_5;
+ __pyx_t_5 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscts.pxi":382
+ * assert context is not None and type(context) is tuple # sanity check
+ * (function, args, kargs) = context
+ * function(Ts, toReal(t), Xvec, XDvec, XDDvec, Fvec, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 382, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_5 = PyTuple_New(6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 382, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
+ PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
+ PyTuple_SET_ITEM(__pyx_t_5, 2, ((PyObject *)__pyx_v_Xvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_XDvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_XDvec));
+ PyTuple_SET_ITEM(__pyx_t_5, 3, ((PyObject *)__pyx_v_XDvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_XDDvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_XDDvec));
+ PyTuple_SET_ITEM(__pyx_t_5, 4, ((PyObject *)__pyx_v_XDDvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Fvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Fvec));
+ PyTuple_SET_ITEM(__pyx_t_5, 5, ((PyObject *)__pyx_v_Fvec));
+ __pyx_t_6 = 0;
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 382, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 382, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(20, 382, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 382, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ } else {
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 382, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ }
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_function, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 382, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+
+ /* "PETSc/petscts.pxi":383
+ * (function, args, kargs) = context
+ * function(Ts, toReal(t), Xvec, XDvec, XDDvec, Fvec, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * cdef int TS_I2Jacobian(
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscts.pxi":364
+ * return 0
+ *
+ * cdef int TS_I2Function( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS_I2Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Ts);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Xvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_XDvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_XDDvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Fvec);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_function);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscts.pxi":288
+/* "PETSc/petscts.pxi":385
+ * return 0
+ *
+ * cdef int TS_I2Jacobian( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_TS_I2Jacobian(TS __pyx_v_ts, PetscReal __pyx_v_t, Vec __pyx_v_x, Vec __pyx_v_xdot, Vec __pyx_v_xdotdot, PetscReal __pyx_v_v, PetscReal __pyx_v_a, Mat __pyx_v_J, Mat __pyx_v_P, void *__pyx_v_ctx) {
+ struct PyPetscTSObject *__pyx_v_Ts = 0;
+ struct PyPetscVecObject *__pyx_v_Xvec = 0;
+ struct PyPetscVecObject *__pyx_v_XDvec = 0;
+ struct PyPetscVecObject *__pyx_v_XDDvec = 0;
+ struct PyPetscMatObject *__pyx_v_Jmat = 0;
+ struct PyPetscMatObject *__pyx_v_Pmat = 0;
+ PyObject *__pyx_v_context = 0;
+ PyObject *__pyx_v_jacobian = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("TS_I2Jacobian", 0);
+
+ /* "PETSc/petscts.pxi":397
+ * void* ctx,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec XDvec = ref_Vec(xdot)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 397, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":398
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
+ * cdef Vec XDvec = ref_Vec(xdot)
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 398, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":399
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec XDvec = ref_Vec(xdot) # <<<<<<<<<<<<<<
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ * cdef Mat Jmat = ref_Mat(J)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 399, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_XDvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":400
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Vec XDvec = ref_Vec(xdot)
+ * cdef Vec XDDvec = ref_Vec(xdotdot) # <<<<<<<<<<<<<<
+ * cdef Mat Jmat = ref_Mat(J)
+ * cdef Mat Pmat = ref_Mat(P)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_xdotdot)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 400, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_XDDvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":401
+ * cdef Vec XDvec = ref_Vec(xdot)
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ * cdef Mat Jmat = ref_Mat(J) # <<<<<<<<<<<<<<
+ * cdef Mat Pmat = ref_Mat(P)
+ * cdef object context = Ts.get_attr('__i2jacobian__')
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 401, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Jmat = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":402
+ * cdef Vec XDDvec = ref_Vec(xdotdot)
+ * cdef Mat Jmat = ref_Mat(J)
+ * cdef Mat Pmat = ref_Mat(P) # <<<<<<<<<<<<<<
+ * cdef object context = Ts.get_attr('__i2jacobian__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_P)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 402, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Pmat = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":403
+ * cdef Mat Jmat = ref_Mat(J)
+ * cdef Mat Pmat = ref_Mat(P)
+ * cdef object context = Ts.get_attr('__i2jacobian__') # <<<<<<<<<<<<<<
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__i2jacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 403, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":404
+ * cdef Mat Pmat = ref_Mat(P)
+ * cdef object context = Ts.get_attr('__i2jacobian__')
+ * if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple # sanity check
+ * (jacobian, args, kargs) = context
+ */
+ __pyx_t_3 = (__pyx_v_context == Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_2 = __pyx_t_4;
+ goto __pyx_L4_bool_binop_done;
+ }
+ __pyx_t_4 = ((__pyx_v_ctx != NULL) != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L4_bool_binop_done:;
+ if (__pyx_t_2) {
+ __pyx_t_1 = ((PyObject *)__pyx_v_ctx);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_context, __pyx_t_1);
+ __pyx_t_1 = 0;
+ }
+
+ /* "PETSc/petscts.pxi":405
+ * cdef object context = Ts.get_attr('__i2jacobian__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
+ * (jacobian, args, kargs) = context
+ * jacobian(Ts, toReal(t), Xvec, XDvec, XDDvec, toReal(v), toReal(a), Jmat, Pmat, *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = (__pyx_v_context != Py_None);
+ __pyx_t_3 = (__pyx_t_4 != 0);
+ if (__pyx_t_3) {
+ } else {
+ __pyx_t_2 = __pyx_t_3;
+ goto __pyx_L6_bool_binop_done;
+ }
+ __pyx_t_3 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L6_bool_binop_done:;
+ if (unlikely(!__pyx_t_2)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(20, 405, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscts.pxi":406
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ * (jacobian, args, kargs) = context # <<<<<<<<<<<<<<
+ * jacobian(Ts, toReal(t), Xvec, XDvec, XDDvec, toReal(v), toReal(a), Jmat, Pmat, *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 406, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_5);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 406, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 406, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 406, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 406, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_5);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 406, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 406, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ __pyx_v_jacobian = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_args = __pyx_t_5;
+ __pyx_t_5 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscts.pxi":407
+ * assert context is not None and type(context) is tuple # sanity check
+ * (jacobian, args, kargs) = context
+ * jacobian(Ts, toReal(t), Xvec, XDvec, XDDvec, toReal(v), toReal(a), Jmat, Pmat, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_v); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_a); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_7 = PyTuple_New(9); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
+ PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
+ PyTuple_SET_ITEM(__pyx_t_7, 2, ((PyObject *)__pyx_v_Xvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_XDvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_XDvec));
+ PyTuple_SET_ITEM(__pyx_t_7, 3, ((PyObject *)__pyx_v_XDvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_XDDvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_XDDvec));
+ PyTuple_SET_ITEM(__pyx_t_7, 4, ((PyObject *)__pyx_v_XDDvec));
+ __Pyx_GIVEREF(__pyx_t_5);
+ PyTuple_SET_ITEM(__pyx_t_7, 5, __pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_1);
+ PyTuple_SET_ITEM(__pyx_t_7, 6, __pyx_t_1);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Jmat));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Jmat));
+ PyTuple_SET_ITEM(__pyx_t_7, 7, ((PyObject *)__pyx_v_Jmat));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Pmat));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Pmat));
+ PyTuple_SET_ITEM(__pyx_t_7, 8, ((PyObject *)__pyx_v_Pmat));
+ __pyx_t_6 = 0;
+ __pyx_t_5 = 0;
+ __pyx_t_1 = 0;
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_5 = PyNumber_Add(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(20, 407, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ } else {
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ }
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_v_jacobian, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 407, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+
+ /* "PETSc/petscts.pxi":408
+ * (jacobian, args, kargs) = context
+ * jacobian(Ts, toReal(t), Xvec, XDvec, XDDvec, toReal(v), toReal(a), Jmat, Pmat, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * # -----------------------------------------------------------------------------
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscts.pxi":385
+ * return 0
+ *
+ * cdef int TS_I2Jacobian( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS_I2Jacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Ts);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Xvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_XDvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_XDDvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Jmat);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Pmat);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_jacobian);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscts.pxi":412
* # -----------------------------------------------------------------------------
*
* cdef int TS_Monitor( # <<<<<<<<<<<<<<
@@ -36127,47 +38055,47 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
PyObject *__pyx_t_10 = NULL;
PyObject *(*__pyx_t_11)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TS_Monitor", 0);
- /* "PETSc/petscts.pxi":295
+ /* "PETSc/petscts.pxi":419
* void* ctx,
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
* cdef Vec Vu = ref_Vec(u)
* cdef object monitorlist = Ts.get_attr('__monitor__')
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 295, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 419, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":296
+ /* "PETSc/petscts.pxi":420
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts)
* cdef Vec Vu = ref_Vec(u) # <<<<<<<<<<<<<<
* cdef object monitorlist = Ts.get_attr('__monitor__')
* if monitorlist is None: return 0
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_u)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 296, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_u)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 420, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Vu = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":297
+ /* "PETSc/petscts.pxi":421
* cdef TS Ts = ref_TS(ts)
* cdef Vec Vu = ref_Vec(u)
* cdef object monitorlist = Ts.get_attr('__monitor__') # <<<<<<<<<<<<<<
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist:
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 297, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 421, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_monitorlist = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":298
+ /* "PETSc/petscts.pxi":422
* cdef Vec Vu = ref_Vec(u)
* cdef object monitorlist = Ts.get_attr('__monitor__')
* if monitorlist is None: return 0 # <<<<<<<<<<<<<<
@@ -36181,7 +38109,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
goto __pyx_L0;
}
- /* "PETSc/petscts.pxi":299
+ /* "PETSc/petscts.pxi":423
* cdef object monitorlist = Ts.get_attr('__monitor__')
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist: # <<<<<<<<<<<<<<
@@ -36192,26 +38120,26 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
__pyx_t_1 = __pyx_v_monitorlist; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0;
__pyx_t_5 = NULL;
} else {
- __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_monitorlist); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_monitorlist); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 423, __pyx_L1_error)
}
for (;;) {
if (likely(!__pyx_t_5)) {
if (likely(PyList_CheckExact(__pyx_t_1))) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(20, 299, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(20, 423, __pyx_L1_error)
#else
- __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(20, 299, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(20, 423, __pyx_L1_error)
#else
- __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
}
@@ -36220,8 +38148,8 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
if (unlikely(!__pyx_t_6)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(20, 299, __pyx_L1_error)
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ else __PYX_ERR(20, 423, __pyx_L1_error)
}
break;
}
@@ -36229,7 +38157,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
}
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -36237,9 +38165,9 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(20, 299, __pyx_L1_error)
+ __PYX_ERR(20, 423, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -36253,17 +38181,17 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(20, 299, __pyx_L1_error)
+ __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(20, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
@@ -36273,7 +38201,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
__Pyx_GOTREF(__pyx_t_8);
index = 2; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(20, 299, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) __PYX_ERR(20, 423, __pyx_L1_error)
__pyx_t_11 = NULL;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
goto __pyx_L7_unpacking_done;
@@ -36281,7 +38209,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_11 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(20, 299, __pyx_L1_error)
+ __PYX_ERR(20, 423, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_monitor, __pyx_t_7);
@@ -36291,18 +38219,18 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
__Pyx_XDECREF_SET(__pyx_v_kargs, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/petscts.pxi":300
+ /* "PETSc/petscts.pxi":424
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist:
* monitor(Ts, toInt(step), toReal(time), Vu, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_step); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_step); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_time); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_time); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_8 = PyTuple_New(4); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(4); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(((PyObject *)__pyx_v_Ts));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
@@ -36316,30 +38244,30 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
PyTuple_SET_ITEM(__pyx_t_8, 3, ((PyObject *)__pyx_v_Vu));
__pyx_t_6 = 0;
__pyx_t_9 = 0;
- __pyx_t_9 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_6 = PyNumber_Add(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_6 = PyNumber_Add(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(20, 300, __pyx_L1_error)
+ __PYX_ERR(20, 424, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_9 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_9 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
} else {
- __pyx_t_9 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_9 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
}
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_v_monitor, __pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 300, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_v_monitor, __pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/petscts.pxi":299
+ /* "PETSc/petscts.pxi":423
* cdef object monitorlist = Ts.get_attr('__monitor__')
* if monitorlist is None: return 0
* for (monitor, args, kargs) in monitorlist: # <<<<<<<<<<<<<<
@@ -36349,7 +38277,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":301
+ /* "PETSc/petscts.pxi":425
* for (monitor, args, kargs) in monitorlist:
* monitor(Ts, toInt(step), toReal(time), Vu, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -36359,7 +38287,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":288
+ /* "PETSc/petscts.pxi":412
* # -----------------------------------------------------------------------------
*
* cdef int TS_Monitor( # <<<<<<<<<<<<<<
@@ -36386,12 +38314,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_Monitor(TS __pyx_v_ts, PetscInt __pyx_v_s
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscts.pxi":305
+/* "PETSc/petscts.pxi":429
* # -----------------------------------------------------------------------------
*
* cdef int TS_PreStep( # <<<<<<<<<<<<<<
@@ -36413,34 +38341,34 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TS_PreStep", 0);
- /* "PETSc/petscts.pxi":308
+ /* "PETSc/petscts.pxi":432
* PetscTS ts,
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
* (prestep, args, kargs) = Ts.get_attr('__prestep__')
* prestep(Ts, *args, **kargs)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 308, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":309
+ /* "PETSc/petscts.pxi":433
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts)
* (prestep, args, kargs) = Ts.get_attr('__prestep__') # <<<<<<<<<<<<<<
* prestep(Ts, *args, **kargs)
* return 0
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__prestep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 309, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__prestep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -36448,9 +38376,9 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(20, 309, __pyx_L1_error)
+ __PYX_ERR(20, 433, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -36464,17 +38392,17 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(20, 309, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(20, 433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 309, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 309, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 309, __pyx_L1_error)
+ __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
@@ -36484,7 +38412,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
__Pyx_GOTREF(__pyx_t_3);
index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(20, 309, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(20, 433, __pyx_L1_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L4_unpacking_done;
@@ -36492,7 +38420,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(20, 309, __pyx_L1_error)
+ __PYX_ERR(20, 433, __pyx_L1_error)
__pyx_L4_unpacking_done:;
}
__pyx_v_prestep = __pyx_t_2;
@@ -36502,42 +38430,42 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
__pyx_v_kargs = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscts.pxi":310
+ /* "PETSc/petscts.pxi":434
* cdef TS Ts = ref_TS(ts)
* (prestep, args, kargs) = Ts.get_attr('__prestep__')
* prestep(Ts, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 310, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Ts));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_Ts));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 310, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 310, __pyx_L1_error)
+ __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(20, 310, __pyx_L1_error)
+ __PYX_ERR(20, 434, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 310, __pyx_L1_error)
+ __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 310, __pyx_L1_error)
+ __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_prestep, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 310, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_prestep, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":311
+ /* "PETSc/petscts.pxi":435
* (prestep, args, kargs) = Ts.get_attr('__prestep__')
* prestep(Ts, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -36547,7 +38475,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":305
+ /* "PETSc/petscts.pxi":429
* # -----------------------------------------------------------------------------
*
* cdef int TS_PreStep( # <<<<<<<<<<<<<<
@@ -36571,12 +38499,12 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PreStep(TS __pyx_v_ts) {
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscts.pxi":313
+/* "PETSc/petscts.pxi":437
* return 0
*
* cdef int TS_PostStep( # <<<<<<<<<<<<<<
@@ -36598,34 +38526,34 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TS_PostStep", 0);
- /* "PETSc/petscts.pxi":316
+ /* "PETSc/petscts.pxi":440
* PetscTS ts,
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
* (poststep, args, kargs) = Ts.get_attr('__poststep__')
* poststep(Ts, *args, **kargs)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 316, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 440, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":317
+ /* "PETSc/petscts.pxi":441
* ) except PETSC_ERR_PYTHON with gil:
* cdef TS Ts = ref_TS(ts)
* (poststep, args, kargs) = Ts.get_attr('__poststep__') # <<<<<<<<<<<<<<
* poststep(Ts, *args, **kargs)
* return 0
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__poststep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 317, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__poststep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -36633,9 +38561,9 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(20, 317, __pyx_L1_error)
+ __PYX_ERR(20, 441, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -36649,17 +38577,17 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
__Pyx_INCREF(__pyx_t_3);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(20, 317, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(20, 441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 317, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 317, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 317, __pyx_L1_error)
+ __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
@@ -36669,7 +38597,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
__Pyx_GOTREF(__pyx_t_3);
index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(20, 317, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) __PYX_ERR(20, 441, __pyx_L1_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L4_unpacking_done;
@@ -36677,7 +38605,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(20, 317, __pyx_L1_error)
+ __PYX_ERR(20, 441, __pyx_L1_error)
__pyx_L4_unpacking_done:;
}
__pyx_v_poststep = __pyx_t_2;
@@ -36687,42 +38615,42 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
__pyx_v_kargs = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/petscts.pxi":318
+ /* "PETSc/petscts.pxi":442
* cdef TS Ts = ref_TS(ts)
* (poststep, args, kargs) = Ts.get_attr('__poststep__')
* poststep(Ts, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 318, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Ts));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_Ts));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 318, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 318, __pyx_L1_error)
+ __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(20, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(20, 318, __pyx_L1_error)
+ __PYX_ERR(20, 442, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 318, __pyx_L1_error)
+ __pyx_t_4 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
} else {
- __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 318, __pyx_L1_error)
+ __pyx_t_4 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_poststep, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 318, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_poststep, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscts.pxi":319
+ /* "PETSc/petscts.pxi":443
* (poststep, args, kargs) = Ts.get_attr('__poststep__')
* poststep(Ts, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -36732,7 +38660,7 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscts.pxi":313
+ /* "PETSc/petscts.pxi":437
* return 0
*
* cdef int TS_PostStep( # <<<<<<<<<<<<<<
@@ -36756,7 +38684,1337 @@ static int __pyx_f_8petsc4py_5PETSc_TS_PostStep(TS __pyx_v_ts) {
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscts.pxi":447
+ * # -----------------------------------------------------------------------------
+ *
+ * cdef int TSAdjoint_CostIntegrand( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand(TS __pyx_v_ts, PetscReal __pyx_v_t, Vec __pyx_v_y, Vec __pyx_v_r, void *__pyx_v_ctx) {
+ struct PyPetscTSObject *__pyx_v_Ts = 0;
+ struct PyPetscVecObject *__pyx_v_Yvec = 0;
+ struct PyPetscVecObject *__pyx_v_Rvec = 0;
+ PyObject *__pyx_v_context = 0;
+ PyObject *__pyx_v_rfunction = NULL;
+ CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_11 = NULL;
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("TSAdjoint_CostIntegrand", 0);
+
+ /* "PETSc/petscts.pxi":454
+ * void* ctx,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef Vec Rvec = ref_Vec(r)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 454, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":455
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Yvec = ref_Vec(y) # <<<<<<<<<<<<<<
+ * cdef Vec Rvec = ref_Vec(r)
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_y)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 455, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Yvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":456
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef Vec Rvec = ref_Vec(r) # <<<<<<<<<<<<<<
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_r)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 456, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Rvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":457
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef Vec Rvec = ref_Vec(r)
+ * cdef object context = Ts.get_attr('__costintegrand__') # <<<<<<<<<<<<<<
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((rfunction, _, _), args, kargs) = context
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__costintegrand__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 457, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":458
+ * cdef Vec Rvec = ref_Vec(r)
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
+ * ((rfunction, _, _), args, kargs) = context
+ * rfunction(Ts, toReal(t), Yvec, Rvec, *args, **kargs)
+ */
+ __pyx_t_3 = (__pyx_v_context == Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_2 = __pyx_t_4;
+ goto __pyx_L4_bool_binop_done;
+ }
+ __pyx_t_4 = ((__pyx_v_ctx != NULL) != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L4_bool_binop_done:;
+ if (__pyx_t_2) {
+ __pyx_t_1 = ((PyObject *)__pyx_v_ctx);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_context, __pyx_t_1);
+ __pyx_t_1 = 0;
+ }
+
+ /* "PETSc/petscts.pxi":459
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((rfunction, _, _), args, kargs) = context # <<<<<<<<<<<<<<
+ * rfunction(Ts, toReal(t), Yvec, Rvec, *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 459, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_5);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L6_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_5);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 459, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L7_unpacking_done;
+ __pyx_L6_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 459, __pyx_L1_error)
+ __pyx_L7_unpacking_done:;
+ }
+ if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
+ PyObject* sequence = __pyx_t_1;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 459, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_10 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_7 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_9 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_10 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_7);
+ __Pyx_INCREF(__pyx_t_9);
+ __Pyx_INCREF(__pyx_t_10);
+ #else
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __pyx_t_10 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_10)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ #endif
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_11 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_11)) __PYX_ERR(20, 459, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_8 = Py_TYPE(__pyx_t_11)->tp_iternext;
+ index = 0; __pyx_t_7 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_7)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_7);
+ index = 1; __pyx_t_9 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_9)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_9);
+ index = 2; __pyx_t_10 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_10)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_10);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_11), 3) < 0) __PYX_ERR(20, 459, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 459, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ __pyx_v_rfunction = __pyx_t_7;
+ __pyx_t_7 = 0;
+ __pyx_v__ = __pyx_t_9;
+ __pyx_t_9 = 0;
+ __Pyx_DECREF_SET(__pyx_v__, __pyx_t_10);
+ __pyx_t_10 = 0;
+ __pyx_v_args = __pyx_t_5;
+ __pyx_t_5 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscts.pxi":460
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((rfunction, _, _), args, kargs) = context
+ * rfunction(Ts, toReal(t), Yvec, Rvec, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 460, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 460, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
+ PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Yvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Yvec));
+ PyTuple_SET_ITEM(__pyx_t_5, 2, ((PyObject *)__pyx_v_Yvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Rvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Rvec));
+ PyTuple_SET_ITEM(__pyx_t_5, 3, ((PyObject *)__pyx_v_Rvec));
+ __pyx_t_6 = 0;
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 460, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 460, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(20, 460, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 460, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ } else {
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 460, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ }
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_rfunction, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 460, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+
+ /* "PETSc/petscts.pxi":461
+ * ((rfunction, _, _), args, kargs) = context
+ * rfunction(Ts, toReal(t), Yvec, Rvec, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * cdef int TSAdjoint_CostIntegrand_DY(
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscts.pxi":447
+ * # -----------------------------------------------------------------------------
+ *
+ * cdef int TSAdjoint_CostIntegrand( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_XDECREF(__pyx_t_9);
+ __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_AddTraceback("petsc4py.PETSc.TSAdjoint_CostIntegrand", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Ts);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Yvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Rvec);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_rfunction);
+ __Pyx_XDECREF(__pyx_v__);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscts.pxi":463
+ * return 0
+ *
+ * cdef int TSAdjoint_CostIntegrand_DY( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand_DY(TS __pyx_v_ts, PetscReal __pyx_v_t, Vec __pyx_v_y, Vec *__pyx_v_drdy, void *__pyx_v_ctx) {
+ struct PyPetscTSObject *__pyx_v_Ts = 0;
+ struct PyPetscVecObject *__pyx_v_Yvec = 0;
+ PetscInt __pyx_v_i;
+ PetscInt __pyx_v_n;
+ PyObject *__pyx_v_vecs = 0;
+ PyObject *__pyx_v_context = 0;
+ CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
+ PyObject *__pyx_v_drdyfunction = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ PetscInt __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ int __pyx_t_5;
+ int __pyx_t_6;
+ int __pyx_t_7;
+ PyObject *__pyx_t_8 = NULL;
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *(*__pyx_t_10)(PyObject *);
+ PyObject *__pyx_t_11 = NULL;
+ PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_13 = NULL;
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("TSAdjoint_CostIntegrand_DY", 0);
+
+ /* "PETSc/petscts.pxi":470
+ * void* ctx,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef PetscInt i = 0, n = 0
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 470, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":471
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Yvec = ref_Vec(y) # <<<<<<<<<<<<<<
+ * cdef PetscInt i = 0, n = 0
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_y)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 471, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Yvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":472
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef PetscInt i = 0, n = 0 # <<<<<<<<<<<<<<
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ * cdef list vecs = [ref_Vec(drdy[i]) for i from 0 <= i < n]
+ */
+ __pyx_v_i = 0;
+ __pyx_v_n = 0;
+
+ /* "PETSc/petscts.pxi":473
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef PetscInt i = 0, n = 0
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) ) # <<<<<<<<<<<<<<
+ * cdef list vecs = [ref_Vec(drdy[i]) for i from 0 <= i < n]
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetCostGradients(__pyx_v_ts, (&__pyx_v_n), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(20, 473, __pyx_L1_error)
+
+ /* "PETSc/petscts.pxi":474
+ * cdef PetscInt i = 0, n = 0
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ * cdef list vecs = [ref_Vec(drdy[i]) for i from 0 <= i < n] # <<<<<<<<<<<<<<
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ */
+ __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 474, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __pyx_v_n;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_drdy[__pyx_v_i]))); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 474, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(20, 474, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
+ __pyx_v_vecs = ((PyObject*)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":475
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ * cdef list vecs = [ref_Vec(drdy[i]) for i from 0 <= i < n]
+ * cdef object context = Ts.get_attr('__costintegrand__') # <<<<<<<<<<<<<<
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((_, drdyfunction, _), args, kargs) = context
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__costintegrand__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 475, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":476
+ * cdef list vecs = [ref_Vec(drdy[i]) for i from 0 <= i < n]
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
+ * ((_, drdyfunction, _), args, kargs) = context
+ * drdyfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ */
+ __pyx_t_6 = (__pyx_v_context == Py_None);
+ __pyx_t_7 = (__pyx_t_6 != 0);
+ if (__pyx_t_7) {
+ } else {
+ __pyx_t_5 = __pyx_t_7;
+ goto __pyx_L6_bool_binop_done;
+ }
+ __pyx_t_7 = ((__pyx_v_ctx != NULL) != 0);
+ __pyx_t_5 = __pyx_t_7;
+ __pyx_L6_bool_binop_done:;
+ if (__pyx_t_5) {
+ __pyx_t_1 = ((PyObject *)__pyx_v_ctx);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_context, __pyx_t_1);
+ __pyx_t_1 = 0;
+ }
+
+ /* "PETSc/petscts.pxi":477
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((_, drdyfunction, _), args, kargs) = context # <<<<<<<<<<<<<<
+ * drdyfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 477, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_8 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_4 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_8 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_4);
+ __Pyx_INCREF(__pyx_t_8);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_8 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_9 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_4 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_4)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_4);
+ index = 2; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_8);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 3) < 0) __PYX_ERR(20, 477, __pyx_L1_error)
+ __pyx_t_10 = NULL;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __pyx_t_10 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 477, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
+ PyObject* sequence = __pyx_t_1;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 477, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_9 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_12 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_9 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_11 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_12 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_9);
+ __Pyx_INCREF(__pyx_t_11);
+ __Pyx_INCREF(__pyx_t_12);
+ #else
+ __pyx_t_9 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_12);
+ #endif
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_13 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(20, 477, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_13);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_10 = Py_TYPE(__pyx_t_13)->tp_iternext;
+ index = 0; __pyx_t_9 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_9)) goto __pyx_L10_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_9);
+ index = 1; __pyx_t_11 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_11)) goto __pyx_L10_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_11);
+ index = 2; __pyx_t_12 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L10_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_12);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_13), 3) < 0) __PYX_ERR(20, 477, __pyx_L1_error)
+ __pyx_t_10 = NULL;
+ __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
+ goto __pyx_L11_unpacking_done;
+ __pyx_L10_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
+ __pyx_t_10 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 477, __pyx_L1_error)
+ __pyx_L11_unpacking_done:;
+ }
+ __pyx_v__ = __pyx_t_9;
+ __pyx_t_9 = 0;
+ __pyx_v_drdyfunction = __pyx_t_11;
+ __pyx_t_11 = 0;
+ __Pyx_DECREF_SET(__pyx_v__, __pyx_t_12);
+ __pyx_t_12 = 0;
+ __pyx_v_args = __pyx_t_4;
+ __pyx_t_4 = 0;
+ __pyx_v_kargs = __pyx_t_8;
+ __pyx_t_8 = 0;
+
+ /* "PETSc/petscts.pxi":478
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((_, drdyfunction, _), args, kargs) = context
+ * drdyfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 478, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __pyx_t_4 = PyTuple_New(4); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 478, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
+ PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_8);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Yvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Yvec));
+ PyTuple_SET_ITEM(__pyx_t_4, 2, ((PyObject *)__pyx_v_Yvec));
+ __Pyx_INCREF(__pyx_v_vecs);
+ __Pyx_GIVEREF(__pyx_v_vecs);
+ PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_v_vecs);
+ __pyx_t_8 = 0;
+ __pyx_t_8 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 478, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_4, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 478, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(20, 478, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_8 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 478, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ } else {
+ __pyx_t_8 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 478, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ }
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_v_drdyfunction, __pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 478, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+
+ /* "PETSc/petscts.pxi":479
+ * ((_, drdyfunction, _), args, kargs) = context
+ * drdyfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * cdef int TSAdjoint_CostIntegrand_DP(
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscts.pxi":463
+ * return 0
+ *
+ * cdef int TSAdjoint_CostIntegrand_DY( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_8);
+ __Pyx_XDECREF(__pyx_t_9);
+ __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_XDECREF(__pyx_t_12);
+ __Pyx_XDECREF(__pyx_t_13);
+ __Pyx_AddTraceback("petsc4py.PETSc.TSAdjoint_CostIntegrand_DY", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Ts);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Yvec);
+ __Pyx_XDECREF(__pyx_v_vecs);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v__);
+ __Pyx_XDECREF(__pyx_v_drdyfunction);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscts.pxi":481
+ * return 0
+ *
+ * cdef int TSAdjoint_CostIntegrand_DP( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand_DP(TS __pyx_v_ts, PetscReal __pyx_v_t, Vec __pyx_v_y, Vec *__pyx_v_drdp, void *__pyx_v_ctx) {
+ struct PyPetscTSObject *__pyx_v_Ts = 0;
+ struct PyPetscVecObject *__pyx_v_Yvec = 0;
+ PetscInt __pyx_v_i;
+ PetscInt __pyx_v_n;
+ PyObject *__pyx_v_vecs = 0;
+ PyObject *__pyx_v_context = 0;
+ CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
+ PyObject *__pyx_v_drdpfunction = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ PetscInt __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ int __pyx_t_5;
+ int __pyx_t_6;
+ int __pyx_t_7;
+ PyObject *__pyx_t_8 = NULL;
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *(*__pyx_t_10)(PyObject *);
+ PyObject *__pyx_t_11 = NULL;
+ PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_13 = NULL;
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("TSAdjoint_CostIntegrand_DP", 0);
+
+ /* "PETSc/petscts.pxi":488
+ * void* ctx,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef PetscInt i = 0, n = 0
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 488, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":489
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Yvec = ref_Vec(y) # <<<<<<<<<<<<<<
+ * cdef PetscInt i = 0, n = 0
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_y)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 489, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Yvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":490
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef PetscInt i = 0, n = 0 # <<<<<<<<<<<<<<
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ * cdef list vecs = [ref_Vec(drdp[i]) for i from 0 <= i < n]
+ */
+ __pyx_v_i = 0;
+ __pyx_v_n = 0;
+
+ /* "PETSc/petscts.pxi":491
+ * cdef Vec Yvec = ref_Vec(y)
+ * cdef PetscInt i = 0, n = 0
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) ) # <<<<<<<<<<<<<<
+ * cdef list vecs = [ref_Vec(drdp[i]) for i from 0 <= i < n]
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetCostGradients(__pyx_v_ts, (&__pyx_v_n), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(20, 491, __pyx_L1_error)
+
+ /* "PETSc/petscts.pxi":492
+ * cdef PetscInt i = 0, n = 0
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ * cdef list vecs = [ref_Vec(drdp[i]) for i from 0 <= i < n] # <<<<<<<<<<<<<<
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ */
+ __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 492, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __pyx_v_n;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_drdp[__pyx_v_i]))); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 492, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_4))) __PYX_ERR(20, 492, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
+ __pyx_v_vecs = ((PyObject*)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":493
+ * CHKERR( TSGetCostGradients(ts, &n, NULL, NULL) )
+ * cdef list vecs = [ref_Vec(drdp[i]) for i from 0 <= i < n]
+ * cdef object context = Ts.get_attr('__costintegrand__') # <<<<<<<<<<<<<<
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((_, _, drdpfunction), args, kargs) = context
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__costintegrand__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 493, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":494
+ * cdef list vecs = [ref_Vec(drdp[i]) for i from 0 <= i < n]
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
+ * ((_, _, drdpfunction), args, kargs) = context
+ * drdpfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ */
+ __pyx_t_6 = (__pyx_v_context == Py_None);
+ __pyx_t_7 = (__pyx_t_6 != 0);
+ if (__pyx_t_7) {
+ } else {
+ __pyx_t_5 = __pyx_t_7;
+ goto __pyx_L6_bool_binop_done;
+ }
+ __pyx_t_7 = ((__pyx_v_ctx != NULL) != 0);
+ __pyx_t_5 = __pyx_t_7;
+ __pyx_L6_bool_binop_done:;
+ if (__pyx_t_5) {
+ __pyx_t_1 = ((PyObject *)__pyx_v_ctx);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_context, __pyx_t_1);
+ __pyx_t_1 = 0;
+ }
+
+ /* "PETSc/petscts.pxi":495
+ * cdef object context = Ts.get_attr('__costintegrand__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((_, _, drdpfunction), args, kargs) = context # <<<<<<<<<<<<<<
+ * drdpfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 495, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_8 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_4 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_8 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_4);
+ __Pyx_INCREF(__pyx_t_8);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_8 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_9 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_4 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_4)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_4);
+ index = 2; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_8);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 3) < 0) __PYX_ERR(20, 495, __pyx_L1_error)
+ __pyx_t_10 = NULL;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __pyx_t_10 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 495, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
+ PyObject* sequence = __pyx_t_1;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 495, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_9 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_12 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_9 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_11 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_12 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_9);
+ __Pyx_INCREF(__pyx_t_11);
+ __Pyx_INCREF(__pyx_t_12);
+ #else
+ __pyx_t_9 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_9)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_12);
+ #endif
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_13 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(20, 495, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_13);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_10 = Py_TYPE(__pyx_t_13)->tp_iternext;
+ index = 0; __pyx_t_9 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_9)) goto __pyx_L10_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_9);
+ index = 1; __pyx_t_11 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_11)) goto __pyx_L10_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_11);
+ index = 2; __pyx_t_12 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L10_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_12);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_13), 3) < 0) __PYX_ERR(20, 495, __pyx_L1_error)
+ __pyx_t_10 = NULL;
+ __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
+ goto __pyx_L11_unpacking_done;
+ __pyx_L10_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
+ __pyx_t_10 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 495, __pyx_L1_error)
+ __pyx_L11_unpacking_done:;
+ }
+ __pyx_v__ = __pyx_t_9;
+ __pyx_t_9 = 0;
+ __Pyx_DECREF_SET(__pyx_v__, __pyx_t_11);
+ __pyx_t_11 = 0;
+ __pyx_v_drdpfunction = __pyx_t_12;
+ __pyx_t_12 = 0;
+ __pyx_v_args = __pyx_t_4;
+ __pyx_t_4 = 0;
+ __pyx_v_kargs = __pyx_t_8;
+ __pyx_t_8 = 0;
+
+ /* "PETSc/petscts.pxi":496
+ * if context is None and ctx != NULL: context = <object>ctx
+ * ((_, _, drdpfunction), args, kargs) = context
+ * drdpfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 496, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __pyx_t_4 = PyTuple_New(4); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 496, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
+ PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(__pyx_t_8);
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_8);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Yvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Yvec));
+ PyTuple_SET_ITEM(__pyx_t_4, 2, ((PyObject *)__pyx_v_Yvec));
+ __Pyx_INCREF(__pyx_v_vecs);
+ __Pyx_GIVEREF(__pyx_v_vecs);
+ PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_v_vecs);
+ __pyx_t_8 = 0;
+ __pyx_t_8 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 496, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_4, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 496, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(20, 496, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_8 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 496, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ } else {
+ __pyx_t_8 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(20, 496, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ }
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_v_drdpfunction, __pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(20, 496, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+
+ /* "PETSc/petscts.pxi":497
+ * ((_, _, drdpfunction), args, kargs) = context
+ * drdpfunction(Ts, toReal(t), Yvec, vecs, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * cdef int TSAdjoint_RHSJacobian(
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscts.pxi":481
+ * return 0
+ *
+ * cdef int TSAdjoint_CostIntegrand_DP( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_8);
+ __Pyx_XDECREF(__pyx_t_9);
+ __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_XDECREF(__pyx_t_12);
+ __Pyx_XDECREF(__pyx_t_13);
+ __Pyx_AddTraceback("petsc4py.PETSc.TSAdjoint_CostIntegrand_DP", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Ts);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Yvec);
+ __Pyx_XDECREF(__pyx_v_vecs);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v__);
+ __Pyx_XDECREF(__pyx_v_drdpfunction);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscts.pxi":499
+ * return 0
+ *
+ * cdef int TSAdjoint_RHSJacobian( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_TSAdjoint_RHSJacobian(TS __pyx_v_ts, PetscReal __pyx_v_t, Vec __pyx_v_x, Mat __pyx_v_J, void *__pyx_v_ctx) {
+ struct PyPetscTSObject *__pyx_v_Ts = 0;
+ struct PyPetscVecObject *__pyx_v_Xvec = 0;
+ struct PyPetscMatObject *__pyx_v_Jmat = 0;
+ PyObject *__pyx_v_context = 0;
+ PyObject *__pyx_v_adjointjacobian = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("TSAdjoint_RHSJacobian", 0);
+
+ /* "PETSc/petscts.pxi":506
+ * void* ctx,
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts) # <<<<<<<<<<<<<<
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Mat Jmat = ref_Mat(J)
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_TS(__pyx_v_ts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 506, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Ts = ((struct PyPetscTSObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":507
+ * ) except PETSC_ERR_PYTHON with gil:
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Xvec = ref_Vec(x) # <<<<<<<<<<<<<<
+ * cdef Mat Jmat = ref_Mat(J)
+ * cdef object context = Ts.get_attr('__adjointrhsjacobian__')
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 507, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Xvec = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":508
+ * cdef TS Ts = ref_TS(ts)
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Mat Jmat = ref_Mat(J) # <<<<<<<<<<<<<<
+ * cdef object context = Ts.get_attr('__adjointrhsjacobian__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Mat(__pyx_v_J)); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 508, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_Jmat = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":509
+ * cdef Vec Xvec = ref_Vec(x)
+ * cdef Mat Jmat = ref_Mat(J)
+ * cdef object context = Ts.get_attr('__adjointrhsjacobian__') # <<<<<<<<<<<<<<
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_Ts->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Ts), ((char *)"__adjointrhsjacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 509, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscts.pxi":510
+ * cdef Mat Jmat = ref_Mat(J)
+ * cdef object context = Ts.get_attr('__adjointrhsjacobian__')
+ * if context is None and ctx != NULL: context = <object>ctx # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple # sanity check
+ * (adjointjacobian, args, kargs) = context
+ */
+ __pyx_t_3 = (__pyx_v_context == Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_2 = __pyx_t_4;
+ goto __pyx_L4_bool_binop_done;
+ }
+ __pyx_t_4 = ((__pyx_v_ctx != NULL) != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L4_bool_binop_done:;
+ if (__pyx_t_2) {
+ __pyx_t_1 = ((PyObject *)__pyx_v_ctx);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_context, __pyx_t_1);
+ __pyx_t_1 = 0;
+ }
+
+ /* "PETSc/petscts.pxi":511
+ * cdef object context = Ts.get_attr('__adjointrhsjacobian__')
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check # <<<<<<<<<<<<<<
+ * (adjointjacobian, args, kargs) = context
+ * adjointjacobian(Ts, toReal(t), Xvec, Jmat, *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = (__pyx_v_context != Py_None);
+ __pyx_t_3 = (__pyx_t_4 != 0);
+ if (__pyx_t_3) {
+ } else {
+ __pyx_t_2 = __pyx_t_3;
+ goto __pyx_L6_bool_binop_done;
+ }
+ __pyx_t_3 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ __pyx_t_2 = __pyx_t_4;
+ __pyx_L6_bool_binop_done:;
+ if (unlikely(!__pyx_t_2)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(20, 511, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscts.pxi":512
+ * if context is None and ctx != NULL: context = <object>ctx
+ * assert context is not None and type(context) is tuple # sanity check
+ * (adjointjacobian, args, kargs) = context # <<<<<<<<<<<<<<
+ * adjointjacobian(Ts, toReal(t), Xvec, Jmat, *args, **kargs)
+ * return 0
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(20, 512, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_5);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 512, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 512, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 512, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(20, 512, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_5);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(20, 512, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(20, 512, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
+ }
+ __pyx_v_adjointjacobian = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_args = __pyx_t_5;
+ __pyx_t_5 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscts.pxi":513
+ * assert context is not None and type(context) is tuple # sanity check
+ * (adjointjacobian, args, kargs) = context
+ * adjointjacobian(Ts, toReal(t), Xvec, Jmat, *args, **kargs) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Ts));
+ PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_v_Ts));
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Xvec));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Xvec));
+ PyTuple_SET_ITEM(__pyx_t_5, 2, ((PyObject *)__pyx_v_Xvec));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Jmat));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Jmat));
+ PyTuple_SET_ITEM(__pyx_t_5, 3, ((PyObject *)__pyx_v_Jmat));
+ __pyx_t_6 = 0;
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(20, 513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(20, 513, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ } else {
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(20, 513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ }
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_v_adjointjacobian, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(20, 513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+
+ /* "PETSc/petscts.pxi":514
+ * (adjointjacobian, args, kargs) = context
+ * adjointjacobian(Ts, toReal(t), Xvec, Jmat, *args, **kargs)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * # -----------------------------------------------------------------------------
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscts.pxi":499
+ * return 0
+ *
+ * cdef int TSAdjoint_RHSJacobian( # <<<<<<<<<<<<<<
+ * PetscTS ts,
+ * PetscReal t,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_AddTraceback("petsc4py.PETSc.TSAdjoint_RHSJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Ts);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Xvec);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Jmat);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_adjointjacobian);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -36868,7 +40126,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Objective(Tao __pyx_v__tao, Vec __pyx_v_
PyObject *(*__pyx_t_6)(PyObject *);
PetscReal __pyx_t_7;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_Objective", 0);
@@ -36907,7 +40165,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Objective(Tao __pyx_v__tao, Vec __pyx_v_
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -36917,7 +40175,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Objective(Tao __pyx_v__tao, Vec __pyx_v_
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 168, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -36984,7 +40242,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Objective(Tao __pyx_v__tao, Vec __pyx_v_
__Pyx_INCREF(((PyObject *)__pyx_v_x));
__Pyx_GIVEREF(((PyObject *)__pyx_v_x));
PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_x));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 169, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 169, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 169, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -37015,7 +40273,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Objective(Tao __pyx_v__tao, Vec __pyx_v_
* return 0
*
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_retv); if (unlikely(__pyx_t_7 == -1.0 && PyErr_Occurred())) __PYX_ERR(21, 170, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_retv); if (unlikely(__pyx_t_7 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(21, 170, __pyx_L1_error)
(__pyx_v__f[0]) = __pyx_t_7;
/* "PETSc/petsctao.pxi":171
@@ -37054,7 +40312,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Objective(Tao __pyx_v__tao, Vec __pyx_v_
__Pyx_XDECREF(__pyx_v_retv);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -37083,7 +40341,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective(Tao __pyx_v__tao, Vec
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_SeparableObjective", 0);
@@ -37134,7 +40392,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective(Tao __pyx_v__tao, Vec
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -37144,7 +40402,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective(Tao __pyx_v__tao, Vec
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 180, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -37214,7 +40472,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective(Tao __pyx_v__tao, Vec
__Pyx_INCREF(((PyObject *)__pyx_v_f));
__Pyx_GIVEREF(((PyObject *)__pyx_v_f));
PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_f));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 181, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -37273,7 +40531,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective(Tao __pyx_v__tao, Vec
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -37302,7 +40560,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Gradient(Tao __pyx_v__tao, Vec __pyx_v__
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_Gradient", 0);
@@ -37353,7 +40611,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Gradient(Tao __pyx_v__tao, Vec __pyx_v__
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -37363,7 +40621,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Gradient(Tao __pyx_v__tao, Vec __pyx_v__
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 191, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -37433,7 +40691,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Gradient(Tao __pyx_v__tao, Vec __pyx_v__
__Pyx_INCREF(((PyObject *)__pyx_v_g));
__Pyx_GIVEREF(((PyObject *)__pyx_v_g));
PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_g));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 192, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 192, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 192, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -37492,7 +40750,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Gradient(Tao __pyx_v__tao, Vec __pyx_v__
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -37523,7 +40781,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad(Tao __pyx_v__tao, Vec __pyx_v__x
PyObject *(*__pyx_t_6)(PyObject *);
PetscReal __pyx_t_7;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_ObjGrad", 0);
@@ -37574,7 +40832,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad(Tao __pyx_v__tao, Vec __pyx_v__x
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -37584,7 +40842,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad(Tao __pyx_v__tao, Vec __pyx_v__x
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 203, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -37654,7 +40912,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad(Tao __pyx_v__tao, Vec __pyx_v__x
__Pyx_INCREF(((PyObject *)__pyx_v_g));
__Pyx_GIVEREF(((PyObject *)__pyx_v_g));
PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_g));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 204, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -37685,7 +40943,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad(Tao __pyx_v__tao, Vec __pyx_v__x
* return 0
*
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_retv); if (unlikely(__pyx_t_7 == -1.0 && PyErr_Occurred())) __PYX_ERR(21, 205, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_retv); if (unlikely(__pyx_t_7 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(21, 205, __pyx_L1_error)
(__pyx_v__f[0]) = __pyx_t_7;
/* "PETSc/petsctao.pxi":206
@@ -37725,7 +40983,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad(Tao __pyx_v__tao, Vec __pyx_v__x
__Pyx_XDECREF(__pyx_v_retv);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -37754,7 +41012,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Constraints(Tao __pyx_v__tao, Vec __pyx_
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_Constraints", 0);
@@ -37805,7 +41063,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Constraints(Tao __pyx_v__tao, Vec __pyx_
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -37815,7 +41073,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Constraints(Tao __pyx_v__tao, Vec __pyx_
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 215, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -37885,7 +41143,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Constraints(Tao __pyx_v__tao, Vec __pyx_
__Pyx_INCREF(((PyObject *)__pyx_v_r));
__Pyx_GIVEREF(((PyObject *)__pyx_v_r));
PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_r));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 216, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -37944,7 +41202,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Constraints(Tao __pyx_v__tao, Vec __pyx_
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -37973,7 +41231,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_VarBounds(Tao __pyx_v__tao, Vec __pyx_v_
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_VarBounds", 0);
@@ -38024,7 +41282,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_VarBounds(Tao __pyx_v__tao, Vec __pyx_v_
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -38034,7 +41292,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_VarBounds(Tao __pyx_v__tao, Vec __pyx_v_
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 226, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -38104,7 +41362,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_VarBounds(Tao __pyx_v__tao, Vec __pyx_v_
__Pyx_INCREF(((PyObject *)__pyx_v_xu));
__Pyx_GIVEREF(((PyObject *)__pyx_v_xu));
PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_xu));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 227, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -38163,7 +41421,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_VarBounds(Tao __pyx_v__tao, Vec __pyx_v_
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -38193,7 +41451,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Hessian(Tao __pyx_v__tao, Vec __pyx_v__x
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_Hessian", 0);
@@ -38256,7 +41514,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Hessian(Tao __pyx_v__tao, Vec __pyx_v__x
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -38266,7 +41524,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Hessian(Tao __pyx_v__tao, Vec __pyx_v__x
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 239, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -38339,7 +41597,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Hessian(Tao __pyx_v__tao, Vec __pyx_v__x
__Pyx_INCREF(((PyObject *)__pyx_v_P));
__Pyx_GIVEREF(((PyObject *)__pyx_v_P));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_P));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 240, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 240, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 240, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -38399,7 +41657,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Hessian(Tao __pyx_v__tao, Vec __pyx_v__x
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -38429,7 +41687,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Jacobian(Tao __pyx_v__tao, Vec __pyx_v__
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_Jacobian", 0);
@@ -38492,7 +41750,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Jacobian(Tao __pyx_v__tao, Vec __pyx_v__
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -38502,7 +41760,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Jacobian(Tao __pyx_v__tao, Vec __pyx_v__
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 252, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -38575,7 +41833,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Jacobian(Tao __pyx_v__tao, Vec __pyx_v__
__Pyx_INCREF(((PyObject *)__pyx_v_P));
__Pyx_GIVEREF(((PyObject *)__pyx_v_P));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_P));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 253, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -38635,7 +41893,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Jacobian(Tao __pyx_v__tao, Vec __pyx_v__
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -38666,7 +41924,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianState(Tao __pyx_v__tao, Vec __py
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_JacobianState", 0);
@@ -38741,7 +41999,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianState(Tao __pyx_v__tao, Vec __py
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -38751,7 +42009,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianState(Tao __pyx_v__tao, Vec __py
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 267, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -38827,7 +42085,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianState(Tao __pyx_v__tao, Vec __py
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_GIVEREF(((PyObject *)__pyx_v_I));
PyTuple_SET_ITEM(__pyx_t_1, 4, ((PyObject *)__pyx_v_I));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 268, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 268, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 268, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -38888,7 +42146,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianState(Tao __pyx_v__tao, Vec __py
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -38917,7 +42175,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianDesign(Tao __pyx_v__tao, Vec __p
PyObject *__pyx_t_5 = NULL;
PyObject *(*__pyx_t_6)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_JacobianDesign", 0);
@@ -38968,7 +42226,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianDesign(Tao __pyx_v__tao, Vec __p
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -38978,7 +42236,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianDesign(Tao __pyx_v__tao, Vec __p
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 278, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -39048,7 +42306,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianDesign(Tao __pyx_v__tao, Vec __p
__Pyx_INCREF(((PyObject *)__pyx_v_J));
__Pyx_GIVEREF(((PyObject *)__pyx_v_J));
PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_J));
- __pyx_t_4 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 279, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(21, 279, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(21, 279, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -39107,7 +42365,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_JacobianDesign(Tao __pyx_v__tao, Vec __p
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -39142,7 +42400,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Converged(Tao __pyx_v__tao, CYTHON_UNUSE
int __pyx_t_11;
TaoConvergedReason __pyx_t_12;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_Converged", 0);
@@ -39153,8 +42411,8 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Converged(Tao __pyx_v__tao, CYTHON_UNUSE
* # call next the user-provided convergence test
* cdef TAO tao = ref_TAO(_tao)
*/
- __pyx_t_1 = TaoDefaultConvergenceTest(__pyx_v__tao, NULL); if (unlikely(__pyx_t_1 == PETSC_ERR_PYTHON)) __PYX_ERR(21, 285, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(21, 285, __pyx_L1_error)
+ __pyx_t_1 = TaoDefaultConvergenceTest(__pyx_v__tao, NULL); if (unlikely(__pyx_t_1 == ((int)PETSC_ERR_PYTHON))) __PYX_ERR(21, 285, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_t_1); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(21, 285, __pyx_L1_error)
/* "PETSc/petsctao.pxi":287
* CHKERR( TaoDefaultConvergenceTest(_tao, NULL) )
@@ -39179,7 +42437,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Converged(Tao __pyx_v__tao, CYTHON_UNUSE
__Pyx_GOTREF(__pyx_t_3);
if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
PyObject* sequence = __pyx_t_3;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -39189,7 +42447,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Converged(Tao __pyx_v__tao, CYTHON_UNUSE
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 288, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -39253,7 +42511,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Converged(Tao __pyx_v__tao, CYTHON_UNUSE
__Pyx_INCREF(((PyObject *)__pyx_v_tao));
__Pyx_GIVEREF(((PyObject *)__pyx_v_tao));
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_v_tao));
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(21, 289, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(21, 289, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = PyNumber_Add(__pyx_t_3, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(21, 289, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
@@ -39434,7 +42692,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Converged(Tao __pyx_v__tao, CYTHON_UNUSE
* return 0
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergedReason(__pyx_v__tao, __pyx_v_creason)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(21, 301, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergedReason(__pyx_v__tao, __pyx_v_creason)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(21, 301, __pyx_L1_error)
/* "PETSc/petsctao.pxi":302
* assert creason <= TAO_CONVERGED_USER
@@ -39471,7 +42729,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Converged(Tao __pyx_v__tao, CYTHON_UNUSE
__Pyx_XDECREF(__pyx_v_reason);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -39504,7 +42762,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
PyObject *__pyx_t_10 = NULL;
PyObject *(*__pyx_t_11)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("TAO_Monitor", 0);
@@ -39565,7 +42823,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
if (likely(!__pyx_t_5)) {
if (likely(PyList_CheckExact(__pyx_t_1))) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(21, 309, __pyx_L1_error)
#else
__pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(21, 309, __pyx_L1_error)
@@ -39573,7 +42831,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
#endif
} else {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(21, 309, __pyx_L1_error)
#else
__pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) __PYX_ERR(21, 309, __pyx_L1_error)
@@ -39585,7 +42843,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
if (unlikely(!__pyx_t_6)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(21, 309, __pyx_L1_error)
}
break;
@@ -39594,7 +42852,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
}
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -39604,7 +42862,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(21, 309, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -39668,7 +42926,7 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
__Pyx_INCREF(((PyObject *)__pyx_v_tao));
__Pyx_GIVEREF(((PyObject *)__pyx_v_tao));
PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_tao));
- __pyx_t_9 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(21, 310, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_9)) __PYX_ERR(21, 310, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_8 = PyNumber_Add(__pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(21, 310, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
@@ -39737,12 +42995,12 @@ static int __pyx_f_8petsc4py_5PETSc_TAO_Monitor(Tao __pyx_v__tao, CYTHON_UNUSED
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdm.pxi":108
+/* "PETSc/petscdm.pxi":125
* # --------------------------------------------------------------------
*
* cdef inline PetscDMBoundaryType asBoundaryType(object boundary) \ # <<<<<<<<<<<<<<
@@ -39760,7 +43018,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
DMBoundaryType __pyx_t_5;
__Pyx_RefNannySetupContext("asBoundaryType", 0);
- /* "PETSc/petscdm.pxi":110
+ /* "PETSc/petscdm.pxi":127
* cdef inline PetscDMBoundaryType asBoundaryType(object boundary) \
* except <PetscDMBoundaryType>(-1):
* if boundary is None: # <<<<<<<<<<<<<<
@@ -39771,7 +43029,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/petscdm.pxi":111
+ /* "PETSc/petscdm.pxi":128
* except <PetscDMBoundaryType>(-1):
* if boundary is None:
* return DM_BOUNDARY_NONE # <<<<<<<<<<<<<<
@@ -39781,7 +43039,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_r = DM_BOUNDARY_NONE;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":110
+ /* "PETSc/petscdm.pxi":127
* cdef inline PetscDMBoundaryType asBoundaryType(object boundary) \
* except <PetscDMBoundaryType>(-1):
* if boundary is None: # <<<<<<<<<<<<<<
@@ -39790,7 +43048,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*/
}
- /* "PETSc/petscdm.pxi":112
+ /* "PETSc/petscdm.pxi":129
* if boundary is None:
* return DM_BOUNDARY_NONE
* if isinstance(boundary, str): # <<<<<<<<<<<<<<
@@ -39801,17 +43059,17 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/petscdm.pxi":113
+ /* "PETSc/petscdm.pxi":130
* return DM_BOUNDARY_NONE
* if isinstance(boundary, str):
* if boundary == 'none': # <<<<<<<<<<<<<<
* return DM_BOUNDARY_NONE
* elif boundary == 'ghosted':
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_none, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 113, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_none, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 130, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/petscdm.pxi":114
+ /* "PETSc/petscdm.pxi":131
* if isinstance(boundary, str):
* if boundary == 'none':
* return DM_BOUNDARY_NONE # <<<<<<<<<<<<<<
@@ -39821,7 +43079,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_r = DM_BOUNDARY_NONE;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":113
+ /* "PETSc/petscdm.pxi":130
* return DM_BOUNDARY_NONE
* if isinstance(boundary, str):
* if boundary == 'none': # <<<<<<<<<<<<<<
@@ -39830,17 +43088,17 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*/
}
- /* "PETSc/petscdm.pxi":115
+ /* "PETSc/petscdm.pxi":132
* if boundary == 'none':
* return DM_BOUNDARY_NONE
* elif boundary == 'ghosted': # <<<<<<<<<<<<<<
* return DM_BOUNDARY_GHOSTED
* elif boundary == 'mirror':
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_ghosted, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 115, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_ghosted, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 132, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/petscdm.pxi":116
+ /* "PETSc/petscdm.pxi":133
* return DM_BOUNDARY_NONE
* elif boundary == 'ghosted':
* return DM_BOUNDARY_GHOSTED # <<<<<<<<<<<<<<
@@ -39850,7 +43108,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_r = DM_BOUNDARY_GHOSTED;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":115
+ /* "PETSc/petscdm.pxi":132
* if boundary == 'none':
* return DM_BOUNDARY_NONE
* elif boundary == 'ghosted': # <<<<<<<<<<<<<<
@@ -39859,17 +43117,17 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*/
}
- /* "PETSc/petscdm.pxi":117
+ /* "PETSc/petscdm.pxi":134
* elif boundary == 'ghosted':
* return DM_BOUNDARY_GHOSTED
* elif boundary == 'mirror': # <<<<<<<<<<<<<<
* return DM_BOUNDARY_MIRROR
* elif boundary == 'periodic':
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_mirror, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 117, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_mirror, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 134, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/petscdm.pxi":118
+ /* "PETSc/petscdm.pxi":135
* return DM_BOUNDARY_GHOSTED
* elif boundary == 'mirror':
* return DM_BOUNDARY_MIRROR # <<<<<<<<<<<<<<
@@ -39879,7 +43137,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_r = DM_BOUNDARY_MIRROR;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":117
+ /* "PETSc/petscdm.pxi":134
* elif boundary == 'ghosted':
* return DM_BOUNDARY_GHOSTED
* elif boundary == 'mirror': # <<<<<<<<<<<<<<
@@ -39888,17 +43146,17 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*/
}
- /* "PETSc/petscdm.pxi":119
+ /* "PETSc/petscdm.pxi":136
* elif boundary == 'mirror':
* return DM_BOUNDARY_MIRROR
* elif boundary == 'periodic': # <<<<<<<<<<<<<<
* return DM_BOUNDARY_PERIODIC
* elif boundary == 'twist':
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_periodic, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 119, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_periodic, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 136, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/petscdm.pxi":120
+ /* "PETSc/petscdm.pxi":137
* return DM_BOUNDARY_MIRROR
* elif boundary == 'periodic':
* return DM_BOUNDARY_PERIODIC # <<<<<<<<<<<<<<
@@ -39908,7 +43166,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_r = DM_BOUNDARY_PERIODIC;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":119
+ /* "PETSc/petscdm.pxi":136
* elif boundary == 'mirror':
* return DM_BOUNDARY_MIRROR
* elif boundary == 'periodic': # <<<<<<<<<<<<<<
@@ -39917,17 +43175,17 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*/
}
- /* "PETSc/petscdm.pxi":121
+ /* "PETSc/petscdm.pxi":138
* elif boundary == 'periodic':
* return DM_BOUNDARY_PERIODIC
* elif boundary == 'twist': # <<<<<<<<<<<<<<
* return DM_BOUNDARY_TWIST
* else:
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_twist, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 121, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_boundary, __pyx_n_s_twist, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(22, 138, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/petscdm.pxi":122
+ /* "PETSc/petscdm.pxi":139
* return DM_BOUNDARY_PERIODIC
* elif boundary == 'twist':
* return DM_BOUNDARY_TWIST # <<<<<<<<<<<<<<
@@ -39937,7 +43195,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
__pyx_r = DM_BOUNDARY_TWIST;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":121
+ /* "PETSc/petscdm.pxi":138
* elif boundary == 'periodic':
* return DM_BOUNDARY_PERIODIC
* elif boundary == 'twist': # <<<<<<<<<<<<<<
@@ -39946,7 +43204,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*/
}
- /* "PETSc/petscdm.pxi":124
+ /* "PETSc/petscdm.pxi":141
* return DM_BOUNDARY_TWIST
* else:
* raise ValueError("unknown boundary type: %s" % boundary) # <<<<<<<<<<<<<<
@@ -39954,22 +43212,22 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*
*/
/*else*/ {
- __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_unknown_boundary_type_s, __pyx_v_boundary); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 124, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_unknown_boundary_type_s, __pyx_v_boundary); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 141, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(22, 124, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(22, 141, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 124, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 141, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(22, 124, __pyx_L1_error)
+ __PYX_ERR(22, 141, __pyx_L1_error)
}
- /* "PETSc/petscdm.pxi":112
+ /* "PETSc/petscdm.pxi":129
* if boundary is None:
* return DM_BOUNDARY_NONE
* if isinstance(boundary, str): # <<<<<<<<<<<<<<
@@ -39978,18 +43236,18 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
*/
}
- /* "PETSc/petscdm.pxi":125
+ /* "PETSc/petscdm.pxi":142
* else:
* raise ValueError("unknown boundary type: %s" % boundary)
* return boundary # <<<<<<<<<<<<<<
*
* cdef inline PetscInt asBoundary(object boundary,
*/
- __pyx_t_5 = ((DMBoundaryType)__Pyx_PyInt_As_DMBoundaryType(__pyx_v_boundary)); if (unlikely(PyErr_Occurred())) __PYX_ERR(22, 125, __pyx_L1_error)
+ __pyx_t_5 = ((DMBoundaryType)__Pyx_PyInt_As_DMBoundaryType(__pyx_v_boundary)); if (unlikely(PyErr_Occurred())) __PYX_ERR(22, 142, __pyx_L1_error)
__pyx_r = __pyx_t_5;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":108
+ /* "PETSc/petscdm.pxi":125
* # --------------------------------------------------------------------
*
* cdef inline PetscDMBoundaryType asBoundaryType(object boundary) \ # <<<<<<<<<<<<<<
@@ -40008,7 +43266,7 @@ static CYTHON_INLINE DMBoundaryType __pyx_f_8petsc4py_5PETSc_asBoundaryType(PyOb
return __pyx_r;
}
-/* "PETSc/petscdm.pxi":127
+/* "PETSc/petscdm.pxi":144
* return boundary
*
* cdef inline PetscInt asBoundary(object boundary, # <<<<<<<<<<<<<<
@@ -40036,7 +43294,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
__Pyx_RefNannySetupContext("asBoundary", 0);
__Pyx_INCREF(__pyx_v_boundary);
- /* "PETSc/petscdm.pxi":131
+ /* "PETSc/petscdm.pxi":148
* PetscDMBoundaryType *_y,
* PetscDMBoundaryType *_z) except? -1:
* cdef PetscInt dim = PETSC_DECIDE # <<<<<<<<<<<<<<
@@ -40045,7 +43303,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
*/
__pyx_v_dim = PETSC_DECIDE;
- /* "PETSc/petscdm.pxi":132
+ /* "PETSc/petscdm.pxi":149
* PetscDMBoundaryType *_z) except? -1:
* cdef PetscInt dim = PETSC_DECIDE
* cdef object x=None, y=None, z=None # <<<<<<<<<<<<<<
@@ -40059,7 +43317,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
__Pyx_INCREF(Py_None);
__pyx_v_z = Py_None;
- /* "PETSc/petscdm.pxi":133
+ /* "PETSc/petscdm.pxi":150
* cdef PetscInt dim = PETSC_DECIDE
* cdef object x=None, y=None, z=None
* if (boundary is None or # <<<<<<<<<<<<<<
@@ -40074,7 +43332,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
goto __pyx_L4_bool_binop_done;
}
- /* "PETSc/petscdm.pxi":134
+ /* "PETSc/petscdm.pxi":151
* cdef object x=None, y=None, z=None
* if (boundary is None or
* isinstance(boundary, str) or # <<<<<<<<<<<<<<
@@ -40089,7 +43347,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
goto __pyx_L4_bool_binop_done;
}
- /* "PETSc/petscdm.pxi":135
+ /* "PETSc/petscdm.pxi":152
* if (boundary is None or
* isinstance(boundary, str) or
* isinstance(boundary, int)): # <<<<<<<<<<<<<<
@@ -40101,7 +43359,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
__pyx_t_1 = __pyx_t_3;
__pyx_L4_bool_binop_done:;
- /* "PETSc/petscdm.pxi":133
+ /* "PETSc/petscdm.pxi":150
* cdef PetscInt dim = PETSC_DECIDE
* cdef object x=None, y=None, z=None
* if (boundary is None or # <<<<<<<<<<<<<<
@@ -40110,19 +43368,19 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
*/
if (__pyx_t_1) {
- /* "PETSc/petscdm.pxi":136
+ /* "PETSc/petscdm.pxi":153
* isinstance(boundary, str) or
* isinstance(boundary, int)):
* _x[0] = _y[0] = _z[0] = asBoundaryType(boundary) # <<<<<<<<<<<<<<
* else:
* boundary = tuple(boundary)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_boundary); if (unlikely(__pyx_t_4 == ((DMBoundaryType)-1L))) __PYX_ERR(22, 136, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_boundary); if (unlikely(__pyx_t_4 == ((DMBoundaryType)((DMBoundaryType)-1L)))) __PYX_ERR(22, 153, __pyx_L1_error)
(__pyx_v__x[0]) = __pyx_t_4;
(__pyx_v__y[0]) = __pyx_t_4;
(__pyx_v__z[0]) = __pyx_t_4;
- /* "PETSc/petscdm.pxi":133
+ /* "PETSc/petscdm.pxi":150
* cdef PetscInt dim = PETSC_DECIDE
* cdef object x=None, y=None, z=None
* if (boundary is None or # <<<<<<<<<<<<<<
@@ -40132,7 +43390,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
goto __pyx_L3;
}
- /* "PETSc/petscdm.pxi":138
+ /* "PETSc/petscdm.pxi":155
* _x[0] = _y[0] = _z[0] = asBoundaryType(boundary)
* else:
* boundary = tuple(boundary) # <<<<<<<<<<<<<<
@@ -40140,43 +43398,45 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
* if dim == 0: pass
*/
/*else*/ {
- __pyx_t_5 = PySequence_Tuple(__pyx_v_boundary); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 138, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_boundary); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 155, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_boundary, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/petscdm.pxi":139
+ /* "PETSc/petscdm.pxi":156
* else:
* boundary = tuple(boundary)
* dim = <PetscInt>len(boundary) # <<<<<<<<<<<<<<
* if dim == 0: pass
* elif dim == 1: (x,) = boundary
*/
- __pyx_t_6 = PyObject_Length(__pyx_v_boundary); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(22, 139, __pyx_L1_error)
+ __pyx_t_6 = PyObject_Length(__pyx_v_boundary); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(22, 156, __pyx_L1_error)
__pyx_v_dim = ((PetscInt)__pyx_t_6);
- /* "PETSc/petscdm.pxi":140
+ /* "PETSc/petscdm.pxi":157
* boundary = tuple(boundary)
* dim = <PetscInt>len(boundary)
* if dim == 0: pass # <<<<<<<<<<<<<<
* elif dim == 1: (x,) = boundary
* elif dim == 2: (x, y) = boundary
*/
- switch (__pyx_v_dim) {
- case 0:
- break;
+ __pyx_t_1 = ((__pyx_v_dim == 0) != 0);
+ if (__pyx_t_1) {
+ goto __pyx_L7;
+ }
- /* "PETSc/petscdm.pxi":141
+ /* "PETSc/petscdm.pxi":158
* dim = <PetscInt>len(boundary)
* if dim == 0: pass
* elif dim == 1: (x,) = boundary # <<<<<<<<<<<<<<
* elif dim == 2: (x, y) = boundary
* elif dim == 3: (x, y, z) = boundary
*/
- case 1:
+ __pyx_t_1 = ((__pyx_v_dim == 1) != 0);
+ if (__pyx_t_1) {
if ((likely(PyTuple_CheckExact(__pyx_v_boundary))) || (PyList_CheckExact(__pyx_v_boundary))) {
PyObject* sequence = __pyx_v_boundary;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -40184,9 +43444,9 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
if (unlikely(size != 1)) {
if (size > 1) __Pyx_RaiseTooManyValuesError(1);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(22, 141, __pyx_L1_error)
+ __PYX_ERR(22, 158, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
} else {
@@ -40194,42 +43454,44 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
}
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 141, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 158, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_boundary); if (unlikely(!__pyx_t_7)) __PYX_ERR(22, 141, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_boundary); if (unlikely(!__pyx_t_7)) __PYX_ERR(22, 158, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
- index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed;
+ index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 1) < 0) __PYX_ERR(22, 141, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 1) < 0) __PYX_ERR(22, 158, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- goto __pyx_L8_unpacking_done;
- __pyx_L7_unpacking_failed:;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(22, 141, __pyx_L1_error)
- __pyx_L8_unpacking_done:;
+ __PYX_ERR(22, 158, __pyx_L1_error)
+ __pyx_L9_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_x, __pyx_t_5);
__pyx_t_5 = 0;
- break;
+ goto __pyx_L7;
+ }
- /* "PETSc/petscdm.pxi":142
+ /* "PETSc/petscdm.pxi":159
* if dim == 0: pass
* elif dim == 1: (x,) = boundary
* elif dim == 2: (x, y) = boundary # <<<<<<<<<<<<<<
* elif dim == 3: (x, y, z) = boundary
* if dim >= 1: _x[0] = asBoundaryType(x)
*/
- case 2:
+ __pyx_t_1 = ((__pyx_v_dim == 2) != 0);
+ if (__pyx_t_1) {
if ((likely(PyTuple_CheckExact(__pyx_v_boundary))) || (PyList_CheckExact(__pyx_v_boundary))) {
PyObject* sequence = __pyx_v_boundary;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -40237,9 +43499,9 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(22, 142, __pyx_L1_error)
+ __PYX_ERR(22, 159, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
@@ -40250,48 +43512,50 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_7);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 142, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(22, 142, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(22, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_9 = PyObject_GetIter(__pyx_v_boundary); if (unlikely(!__pyx_t_9)) __PYX_ERR(22, 142, __pyx_L1_error)
+ __pyx_t_9 = PyObject_GetIter(__pyx_v_boundary); if (unlikely(!__pyx_t_9)) __PYX_ERR(22, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_8 = Py_TYPE(__pyx_t_9)->tp_iternext;
- index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_5)) goto __pyx_L9_unpacking_failed;
+ index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_5)) goto __pyx_L10_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- index = 1; __pyx_t_7 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L9_unpacking_failed;
+ index = 1; __pyx_t_7 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L10_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_9), 2) < 0) __PYX_ERR(22, 142, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_9), 2) < 0) __PYX_ERR(22, 159, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- goto __pyx_L10_unpacking_done;
- __pyx_L9_unpacking_failed:;
+ goto __pyx_L11_unpacking_done;
+ __pyx_L10_unpacking_failed:;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(22, 142, __pyx_L1_error)
- __pyx_L10_unpacking_done:;
+ __PYX_ERR(22, 159, __pyx_L1_error)
+ __pyx_L11_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_x, __pyx_t_5);
__pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_y, __pyx_t_7);
__pyx_t_7 = 0;
- break;
+ goto __pyx_L7;
+ }
- /* "PETSc/petscdm.pxi":143
+ /* "PETSc/petscdm.pxi":160
* elif dim == 1: (x,) = boundary
* elif dim == 2: (x, y) = boundary
* elif dim == 3: (x, y, z) = boundary # <<<<<<<<<<<<<<
* if dim >= 1: _x[0] = asBoundaryType(x)
* if dim >= 2: _y[0] = asBoundaryType(y)
*/
- case 3:
+ __pyx_t_1 = ((__pyx_v_dim == 3) != 0);
+ if (__pyx_t_1) {
if ((likely(PyTuple_CheckExact(__pyx_v_boundary))) || (PyList_CheckExact(__pyx_v_boundary))) {
PyObject* sequence = __pyx_v_boundary;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -40299,9 +43563,9 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(22, 143, __pyx_L1_error)
+ __PYX_ERR(22, 160, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -40315,34 +43579,34 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(22, 143, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(22, 160, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 143, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 160, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(22, 143, __pyx_L1_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(22, 160, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_10 = PyObject_GetIter(__pyx_v_boundary); if (unlikely(!__pyx_t_10)) __PYX_ERR(22, 143, __pyx_L1_error)
+ __pyx_t_10 = PyObject_GetIter(__pyx_v_boundary); if (unlikely(!__pyx_t_10)) __PYX_ERR(22, 160, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_10);
__pyx_t_8 = Py_TYPE(__pyx_t_10)->tp_iternext;
- index = 0; __pyx_t_7 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed;
+ index = 0; __pyx_t_7 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_7)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed;
+ index = 1; __pyx_t_5 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_5)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- index = 2; __pyx_t_9 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L11_unpacking_failed;
+ index = 2; __pyx_t_9 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L12_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_10), 3) < 0) __PYX_ERR(22, 143, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_10), 3) < 0) __PYX_ERR(22, 160, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
- goto __pyx_L12_unpacking_done;
- __pyx_L11_unpacking_failed:;
+ goto __pyx_L13_unpacking_done;
+ __pyx_L12_unpacking_failed:;
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(22, 143, __pyx_L1_error)
- __pyx_L12_unpacking_done:;
+ __PYX_ERR(22, 160, __pyx_L1_error)
+ __pyx_L13_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_x, __pyx_t_7);
__pyx_t_7 = 0;
@@ -40350,11 +43614,10 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
__pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_z, __pyx_t_9);
__pyx_t_9 = 0;
- break;
- default: break;
}
+ __pyx_L7:;
- /* "PETSc/petscdm.pxi":144
+ /* "PETSc/petscdm.pxi":161
* elif dim == 2: (x, y) = boundary
* elif dim == 3: (x, y, z) = boundary
* if dim >= 1: _x[0] = asBoundaryType(x) # <<<<<<<<<<<<<<
@@ -40363,11 +43626,11 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
*/
__pyx_t_1 = ((__pyx_v_dim >= 1) != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_x); if (unlikely(__pyx_t_4 == ((DMBoundaryType)-1L))) __PYX_ERR(22, 144, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_x); if (unlikely(__pyx_t_4 == ((DMBoundaryType)((DMBoundaryType)-1L)))) __PYX_ERR(22, 161, __pyx_L1_error)
(__pyx_v__x[0]) = __pyx_t_4;
}
- /* "PETSc/petscdm.pxi":145
+ /* "PETSc/petscdm.pxi":162
* elif dim == 3: (x, y, z) = boundary
* if dim >= 1: _x[0] = asBoundaryType(x)
* if dim >= 2: _y[0] = asBoundaryType(y) # <<<<<<<<<<<<<<
@@ -40376,11 +43639,11 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
*/
__pyx_t_1 = ((__pyx_v_dim >= 2) != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_y); if (unlikely(__pyx_t_4 == ((DMBoundaryType)-1L))) __PYX_ERR(22, 145, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_y); if (unlikely(__pyx_t_4 == ((DMBoundaryType)((DMBoundaryType)-1L)))) __PYX_ERR(22, 162, __pyx_L1_error)
(__pyx_v__y[0]) = __pyx_t_4;
}
- /* "PETSc/petscdm.pxi":146
+ /* "PETSc/petscdm.pxi":163
* if dim >= 1: _x[0] = asBoundaryType(x)
* if dim >= 2: _y[0] = asBoundaryType(y)
* if dim >= 3: _z[0] = asBoundaryType(z) # <<<<<<<<<<<<<<
@@ -40389,13 +43652,13 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
*/
__pyx_t_1 = ((__pyx_v_dim >= 3) != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_z); if (unlikely(__pyx_t_4 == ((DMBoundaryType)-1L))) __PYX_ERR(22, 146, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundaryType(__pyx_v_z); if (unlikely(__pyx_t_4 == ((DMBoundaryType)((DMBoundaryType)-1L)))) __PYX_ERR(22, 163, __pyx_L1_error)
(__pyx_v__z[0]) = __pyx_t_4;
}
}
__pyx_L3:;
- /* "PETSc/petscdm.pxi":147
+ /* "PETSc/petscdm.pxi":164
* if dim >= 2: _y[0] = asBoundaryType(y)
* if dim >= 3: _z[0] = asBoundaryType(z)
* return dim # <<<<<<<<<<<<<<
@@ -40405,7 +43668,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
__pyx_r = __pyx_v_dim;
goto __pyx_L0;
- /* "PETSc/petscdm.pxi":127
+ /* "PETSc/petscdm.pxi":144
* return boundary
*
* cdef inline PetscInt asBoundary(object boundary, # <<<<<<<<<<<<<<
@@ -40430,7 +43693,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
return __pyx_r;
}
-/* "PETSc/petscdm.pxi":149
+/* "PETSc/petscdm.pxi":166
* return dim
*
* cdef inline object toBoundary(PetscInt dim, # <<<<<<<<<<<<<<
@@ -40441,108 +43704,110 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asBoundary(PyObject *__py
static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toBoundary(PetscInt __pyx_v_dim, DMBoundaryType __pyx_v_x, DMBoundaryType __pyx_v_y, DMBoundaryType __pyx_v_z) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
+ PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("toBoundary", 0);
- /* "PETSc/petscdm.pxi":153
+ /* "PETSc/petscdm.pxi":170
* PetscDMBoundaryType y,
* PetscDMBoundaryType z):
* if dim == 0: return () # <<<<<<<<<<<<<<
* elif dim == 1: return (x,)
* elif dim == 2: return (x, y)
*/
- switch (__pyx_v_dim) {
- case 0:
+ __pyx_t_1 = ((__pyx_v_dim == 0) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_empty_tuple);
__pyx_r = __pyx_empty_tuple;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/petscdm.pxi":154
+ /* "PETSc/petscdm.pxi":171
* PetscDMBoundaryType z):
* if dim == 0: return ()
* elif dim == 1: return (x,) # <<<<<<<<<<<<<<
* elif dim == 2: return (x, y)
* elif dim == 3: return (x, y, z)
*/
- case 1:
+ __pyx_t_1 = ((__pyx_v_dim == 1) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_x); if (unlikely(!__pyx_t_1)) __PYX_ERR(22, 154, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(22, 154, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_x); if (unlikely(!__pyx_t_2)) __PYX_ERR(22, 171, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_r = __pyx_t_2;
+ __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 171, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
__pyx_t_2 = 0;
+ __pyx_r = __pyx_t_3;
+ __pyx_t_3 = 0;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/petscdm.pxi":155
+ /* "PETSc/petscdm.pxi":172
* if dim == 0: return ()
* elif dim == 1: return (x,)
* elif dim == 2: return (x, y) # <<<<<<<<<<<<<<
* elif dim == 3: return (x, y, z)
*
*/
- case 2:
+ __pyx_t_1 = ((__pyx_v_dim == 2) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_x); if (unlikely(!__pyx_t_2)) __PYX_ERR(22, 155, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_y); if (unlikely(!__pyx_t_1)) __PYX_ERR(22, 155, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 155, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_x); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 172, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_2 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_y); if (unlikely(!__pyx_t_2)) __PYX_ERR(22, 172, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(22, 172, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
__Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
- __pyx_t_2 = 0;
- __pyx_t_1 = 0;
- __pyx_r = __pyx_t_3;
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2);
__pyx_t_3 = 0;
+ __pyx_t_2 = 0;
+ __pyx_r = __pyx_t_4;
+ __pyx_t_4 = 0;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/petscdm.pxi":156
+ /* "PETSc/petscdm.pxi":173
* elif dim == 1: return (x,)
* elif dim == 2: return (x, y)
* elif dim == 3: return (x, y, z) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- case 3:
+ __pyx_t_1 = ((__pyx_v_dim == 3) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_x); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 156, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __pyx_t_1 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_y); if (unlikely(!__pyx_t_1)) __PYX_ERR(22, 156, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_z); if (unlikely(!__pyx_t_2)) __PYX_ERR(22, 156, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(22, 156, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_x); if (unlikely(!__pyx_t_4)) __PYX_ERR(22, 173, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1);
+ __pyx_t_2 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_y); if (unlikely(!__pyx_t_2)) __PYX_ERR(22, 173, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = __Pyx_PyInt_From_DMBoundaryType(__pyx_v_z); if (unlikely(!__pyx_t_3)) __PYX_ERR(22, 173, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(22, 173, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2);
- __pyx_t_3 = 0;
- __pyx_t_1 = 0;
- __pyx_t_2 = 0;
- __pyx_r = __pyx_t_4;
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_2);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_3);
__pyx_t_4 = 0;
+ __pyx_t_2 = 0;
+ __pyx_t_3 = 0;
+ __pyx_r = __pyx_t_5;
+ __pyx_t_5 = 0;
goto __pyx_L0;
- break;
- default: break;
}
- /* "PETSc/petscdm.pxi":149
+ /* "PETSc/petscdm.pxi":166
* return dim
*
* cdef inline object toBoundary(PetscInt dim, # <<<<<<<<<<<<<<
@@ -40554,10 +43819,10 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toBoundary(PetscInt __py
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_5);
__Pyx_AddTraceback("petsc4py.PETSc.toBoundary", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
@@ -40694,6 +43959,7 @@ static CYTHON_INLINE DMDAStencilType __pyx_f_8petsc4py_5PETSc_asStencil(PyObject
static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toStencil(DMDAStencilType __pyx_v_stype) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
+ int __pyx_t_1;
__Pyx_RefNannySetupContext("toStencil", 0);
/* "PETSc/petscdmda.pxi":97
@@ -40703,28 +43969,27 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toStencil(DMDAStencilTyp
* elif stype == DMDA_STENCIL_BOX: return "box"
*
*/
- switch (__pyx_v_stype) {
- case DMDA_STENCIL_STAR:
+ __pyx_t_1 = ((__pyx_v_stype == DMDA_STENCIL_STAR) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_n_s_star);
__pyx_r = __pyx_n_s_star;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/petscdmda.pxi":98
+ /* "PETSc/petscdmda.pxi":98
* cdef inline object toStencil(PetscDMDAStencilType stype):
* if stype == DMDA_STENCIL_STAR: return "star"
* elif stype == DMDA_STENCIL_BOX: return "box" # <<<<<<<<<<<<<<
*
* cdef inline PetscDMDAInterpolationType dainterpolationtype(object itype) \
*/
- case DMDA_STENCIL_BOX:
+ __pyx_t_1 = ((__pyx_v_stype == DMDA_STENCIL_BOX) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_n_s_box);
__pyx_r = __pyx_n_s_box;
goto __pyx_L0;
- break;
- default: break;
}
/* "PETSc/petscdmda.pxi":96
@@ -41076,11 +44341,11 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
Py_ssize_t __pyx_t_2;
- PyObject *__pyx_t_3 = NULL;
- PyObject *(*__pyx_t_4)(PyObject *);
- PyObject *__pyx_t_5 = NULL;
+ int __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ PyObject *(*__pyx_t_5)(PyObject *);
PyObject *__pyx_t_6 = NULL;
- int __pyx_t_7;
+ PyObject *__pyx_t_7 = NULL;
PetscInt __pyx_t_8;
__Pyx_RefNannySetupContext("asDims", 0);
__Pyx_INCREF(__pyx_v_dims);
@@ -41115,7 +44380,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
* dim = <PetscInt>len(dims)
* if dim == 0: pass
*/
- __pyx_t_1 = PySequence_Tuple(__pyx_v_dims); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 130, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_dims); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_dims, __pyx_t_1);
__pyx_t_1 = 0;
@@ -41127,7 +44392,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
* if dim == 0: pass
* elif dim == 1: M, = dims
*/
- __pyx_t_2 = PyObject_Length(__pyx_v_dims); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(7, 131, __pyx_L1_error)
+ __pyx_t_2 = PyObject_Length(__pyx_v_dims); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(7, 131, __pyx_L1_error)
__pyx_v_dim = ((PetscInt)__pyx_t_2);
/* "PETSc/petscdmda.pxi":132
@@ -41137,21 +44402,23 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
* elif dim == 1: M, = dims
* elif dim == 2: M, N = dims
*/
- switch (__pyx_v_dim) {
- case 0:
- break;
+ __pyx_t_3 = ((__pyx_v_dim == 0) != 0);
+ if (__pyx_t_3) {
+ goto __pyx_L3;
+ }
- /* "PETSc/petscdmda.pxi":133
+ /* "PETSc/petscdmda.pxi":133
* dim = <PetscInt>len(dims)
* if dim == 0: pass
* elif dim == 1: M, = dims # <<<<<<<<<<<<<<
* elif dim == 2: M, N = dims
* elif dim == 3: M, N, P = dims
*/
- case 1:
+ __pyx_t_3 = ((__pyx_v_dim == 1) != 0);
+ if (__pyx_t_3) {
if ((likely(PyTuple_CheckExact(__pyx_v_dims))) || (PyList_CheckExact(__pyx_v_dims))) {
PyObject* sequence = __pyx_v_dims;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -41161,7 +44428,7 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(7, 133, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
} else {
@@ -41174,37 +44441,39 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_3 = PyObject_GetIter(__pyx_v_dims); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 133, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = Py_TYPE(__pyx_t_3)->tp_iternext;
- index = 0; __pyx_t_1 = __pyx_t_4(__pyx_t_3); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
+ __pyx_t_4 = PyObject_GetIter(__pyx_v_dims); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 133, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_3), 1) < 0) __PYX_ERR(7, 133, __pyx_L1_error)
- __pyx_t_4 = NULL;
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- goto __pyx_L4_unpacking_done;
- __pyx_L3_unpacking_failed:;
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_4 = NULL;
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 1) < 0) __PYX_ERR(7, 133, __pyx_L1_error)
+ __pyx_t_5 = NULL;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ goto __pyx_L5_unpacking_done;
+ __pyx_L4_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_5 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(7, 133, __pyx_L1_error)
- __pyx_L4_unpacking_done:;
+ __pyx_L5_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_M, __pyx_t_1);
__pyx_t_1 = 0;
- break;
+ goto __pyx_L3;
+ }
- /* "PETSc/petscdmda.pxi":134
+ /* "PETSc/petscdmda.pxi":134
* if dim == 0: pass
* elif dim == 1: M, = dims
* elif dim == 2: M, N = dims # <<<<<<<<<<<<<<
* elif dim == 3: M, N, P = dims
* if dim >= 1: _M[0] = asInt(M)
*/
- case 2:
+ __pyx_t_3 = ((__pyx_v_dim == 2) != 0);
+ if (__pyx_t_3) {
if ((likely(PyTuple_CheckExact(__pyx_v_dims))) || (PyList_CheckExact(__pyx_v_dims))) {
PyObject* sequence = __pyx_v_dims;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -41214,59 +44483,61 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(7, 134, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
- __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
- __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_4 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_t_4);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 134, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 134, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 134, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_5 = PyObject_GetIter(__pyx_v_dims); if (unlikely(!__pyx_t_5)) __PYX_ERR(7, 134, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = Py_TYPE(__pyx_t_5)->tp_iternext;
- index = 0; __pyx_t_1 = __pyx_t_4(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
+ __pyx_t_6 = PyObject_GetIter(__pyx_v_dims); if (unlikely(!__pyx_t_6)) __PYX_ERR(7, 134, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_5 = Py_TYPE(__pyx_t_6)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_5(__pyx_t_6); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
- index = 1; __pyx_t_3 = __pyx_t_4(__pyx_t_5); if (unlikely(!__pyx_t_3)) goto __pyx_L5_unpacking_failed;
- __Pyx_GOTREF(__pyx_t_3);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_5), 2) < 0) __PYX_ERR(7, 134, __pyx_L1_error)
- __pyx_t_4 = NULL;
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- goto __pyx_L6_unpacking_done;
- __pyx_L5_unpacking_failed:;
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_4 = NULL;
+ index = 1; __pyx_t_4 = __pyx_t_5(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_4);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_6), 2) < 0) __PYX_ERR(7, 134, __pyx_L1_error)
+ __pyx_t_5 = NULL;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ goto __pyx_L7_unpacking_done;
+ __pyx_L6_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __pyx_t_5 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(7, 134, __pyx_L1_error)
- __pyx_L6_unpacking_done:;
+ __pyx_L7_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_M, __pyx_t_1);
__pyx_t_1 = 0;
- __Pyx_DECREF_SET(__pyx_v_N, __pyx_t_3);
- __pyx_t_3 = 0;
- break;
+ __Pyx_DECREF_SET(__pyx_v_N, __pyx_t_4);
+ __pyx_t_4 = 0;
+ goto __pyx_L3;
+ }
- /* "PETSc/petscdmda.pxi":135
+ /* "PETSc/petscdmda.pxi":135
* elif dim == 1: M, = dims
* elif dim == 2: M, N = dims
* elif dim == 3: M, N, P = dims # <<<<<<<<<<<<<<
* if dim >= 1: _M[0] = asInt(M)
* if dim >= 2: _N[0] = asInt(N)
*/
- case 3:
+ __pyx_t_3 = ((__pyx_v_dim == 3) != 0);
+ if (__pyx_t_3) {
if ((likely(PyTuple_CheckExact(__pyx_v_dims))) || (PyList_CheckExact(__pyx_v_dims))) {
PyObject* sequence = __pyx_v_dims;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -41276,58 +44547,57 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(7, 135, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
- __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
- __pyx_t_5 = PyTuple_GET_ITEM(sequence, 2);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
} else {
- __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_1 = PyList_GET_ITEM(sequence, 1);
- __pyx_t_5 = PyList_GET_ITEM(sequence, 2);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
}
- __Pyx_INCREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_t_5);
+ __Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 135, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 135, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
__pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 135, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_5)) __PYX_ERR(7, 135, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(7, 135, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_v_dims); if (unlikely(!__pyx_t_6)) __PYX_ERR(7, 135, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __pyx_t_4 = Py_TYPE(__pyx_t_6)->tp_iternext;
- index = 0; __pyx_t_3 = __pyx_t_4(__pyx_t_6); if (unlikely(!__pyx_t_3)) goto __pyx_L7_unpacking_failed;
- __Pyx_GOTREF(__pyx_t_3);
- index = 1; __pyx_t_1 = __pyx_t_4(__pyx_t_6); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_dims); if (unlikely(!__pyx_t_7)) __PYX_ERR(7, 135, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_5 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_4 = __pyx_t_5(__pyx_t_7); if (unlikely(!__pyx_t_4)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_4);
+ index = 1; __pyx_t_1 = __pyx_t_5(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L8_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
- index = 2; __pyx_t_5 = __pyx_t_4(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed;
- __Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_4(__pyx_t_6), 3) < 0) __PYX_ERR(7, 135, __pyx_L1_error)
- __pyx_t_4 = NULL;
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- goto __pyx_L8_unpacking_done;
- __pyx_L7_unpacking_failed:;
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_4 = NULL;
+ index = 2; __pyx_t_6 = __pyx_t_5(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_7), 3) < 0) __PYX_ERR(7, 135, __pyx_L1_error)
+ __pyx_t_5 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L9_unpacking_done;
+ __pyx_L8_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_5 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(7, 135, __pyx_L1_error)
- __pyx_L8_unpacking_done:;
+ __pyx_L9_unpacking_done:;
}
- __Pyx_DECREF_SET(__pyx_v_M, __pyx_t_3);
- __pyx_t_3 = 0;
+ __Pyx_DECREF_SET(__pyx_v_M, __pyx_t_4);
+ __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_N, __pyx_t_1);
__pyx_t_1 = 0;
- __Pyx_DECREF_SET(__pyx_v_P, __pyx_t_5);
- __pyx_t_5 = 0;
- break;
- default: break;
+ __Pyx_DECREF_SET(__pyx_v_P, __pyx_t_6);
+ __pyx_t_6 = 0;
}
+ __pyx_L3:;
/* "PETSc/petscdmda.pxi":136
* elif dim == 2: M, N = dims
@@ -41336,9 +44606,9 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
* if dim >= 2: _N[0] = asInt(N)
* if dim >= 3: _P[0] = asInt(P)
*/
- __pyx_t_7 = ((__pyx_v_dim >= 1) != 0);
- if (__pyx_t_7) {
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_M); if (unlikely(__pyx_t_8 == -1L && PyErr_Occurred())) __PYX_ERR(7, 136, __pyx_L1_error)
+ __pyx_t_3 = ((__pyx_v_dim >= 1) != 0);
+ if (__pyx_t_3) {
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_M); if (unlikely(__pyx_t_8 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(7, 136, __pyx_L1_error)
(__pyx_v__M[0]) = __pyx_t_8;
}
@@ -41349,9 +44619,9 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
* if dim >= 3: _P[0] = asInt(P)
* return dim
*/
- __pyx_t_7 = ((__pyx_v_dim >= 2) != 0);
- if (__pyx_t_7) {
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_N); if (unlikely(__pyx_t_8 == -1L && PyErr_Occurred())) __PYX_ERR(7, 137, __pyx_L1_error)
+ __pyx_t_3 = ((__pyx_v_dim >= 2) != 0);
+ if (__pyx_t_3) {
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_N); if (unlikely(__pyx_t_8 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(7, 137, __pyx_L1_error)
(__pyx_v__N[0]) = __pyx_t_8;
}
@@ -41362,9 +44632,9 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
* return dim
*
*/
- __pyx_t_7 = ((__pyx_v_dim >= 3) != 0);
- if (__pyx_t_7) {
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_P); if (unlikely(__pyx_t_8 == -1L && PyErr_Occurred())) __PYX_ERR(7, 138, __pyx_L1_error)
+ __pyx_t_3 = ((__pyx_v_dim >= 3) != 0);
+ if (__pyx_t_3) {
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_P); if (unlikely(__pyx_t_8 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(7, 138, __pyx_L1_error)
(__pyx_v__P[0]) = __pyx_t_8;
}
@@ -41389,9 +44659,9 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
- __Pyx_XDECREF(__pyx_t_3);
- __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("petsc4py.PETSc.asDims", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = -1L;
__pyx_L0:;
@@ -41414,10 +44684,11 @@ static CYTHON_INLINE PetscInt __pyx_f_8petsc4py_5PETSc_asDims(PyObject *__pyx_v_
static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toDims(PetscInt __pyx_v_dim, PetscInt __pyx_v_M, PetscInt __pyx_v_N, PetscInt __pyx_v_P) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
+ PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("toDims", 0);
/* "PETSc/petscdmda.pxi":145
@@ -41427,92 +44698,93 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toDims(PetscInt __pyx_v_
* elif dim == 1: return (toInt(M),)
* elif dim == 2: return (toInt(M), toInt(N))
*/
- switch (__pyx_v_dim) {
- case 0:
+ __pyx_t_1 = ((__pyx_v_dim == 0) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_empty_tuple);
__pyx_r = __pyx_empty_tuple;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/petscdmda.pxi":146
+ /* "PETSc/petscdmda.pxi":146
* PetscInt P):
* if dim == 0: return ()
* elif dim == 1: return (toInt(M),) # <<<<<<<<<<<<<<
* elif dim == 2: return (toInt(M), toInt(N))
* elif dim == 3: return (toInt(M), toInt(N), toInt(P))
*/
- case 1:
+ __pyx_t_1 = ((__pyx_v_dim == 1) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 146, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 146, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 146, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
- __pyx_t_1 = 0;
- __pyx_r = ((PyObject*)__pyx_t_2);
+ __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 146, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
__pyx_t_2 = 0;
+ __pyx_r = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/petscdmda.pxi":147
+ /* "PETSc/petscdmda.pxi":147
* if dim == 0: return ()
* elif dim == 1: return (toInt(M),)
* elif dim == 2: return (toInt(M), toInt(N)) # <<<<<<<<<<<<<<
* elif dim == 3: return (toInt(M), toInt(N), toInt(P))
*
*/
- case 2:
+ __pyx_t_1 = ((__pyx_v_dim == 2) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 147, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 147, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 147, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 147, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 147, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 147, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
__Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
- __pyx_t_2 = 0;
- __pyx_t_1 = 0;
- __pyx_r = ((PyObject*)__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2);
__pyx_t_3 = 0;
+ __pyx_t_2 = 0;
+ __pyx_r = ((PyObject*)__pyx_t_4);
+ __pyx_t_4 = 0;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/petscdmda.pxi":148
+ /* "PETSc/petscdmda.pxi":148
* elif dim == 1: return (toInt(M),)
* elif dim == 2: return (toInt(M), toInt(N))
* elif dim == 3: return (toInt(M), toInt(N), toInt(P)) # <<<<<<<<<<<<<<
*
* cdef inline tuple asOwnershipRanges(object ownership_ranges,
*/
- case 3:
+ __pyx_t_1 = ((__pyx_v_dim == 3) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 148, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_1)) __PYX_ERR(7, 148, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_P); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 148, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 148, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_M); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 148, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 148, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_P); if (unlikely(!__pyx_t_3)) __PYX_ERR(7, 148, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(7, 148, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2);
- __pyx_t_3 = 0;
- __pyx_t_1 = 0;
- __pyx_t_2 = 0;
- __pyx_r = ((PyObject*)__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_2);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_3);
__pyx_t_4 = 0;
+ __pyx_t_2 = 0;
+ __pyx_t_3 = 0;
+ __pyx_r = ((PyObject*)__pyx_t_5);
+ __pyx_t_5 = 0;
goto __pyx_L0;
- break;
- default: break;
}
/* "PETSc/petscdmda.pxi":141
@@ -41527,10 +44799,10 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toDims(PetscInt __pyx_v_
__pyx_r = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_5);
__Pyx_AddTraceback("petsc4py.PETSc.toDims", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
@@ -41581,7 +44853,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_asOwnershipRanges(PyObje
* cdef PetscInt nlx=0, nly=0, nlz=0
* if dim == PETSC_DECIDE: dim = rdim
*/
- __pyx_t_2 = PyObject_Length(__pyx_v_ranges); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(7, 157, __pyx_L1_error)
+ __pyx_t_2 = PyObject_Length(__pyx_v_ranges); if (unlikely(__pyx_t_2 == ((Py_ssize_t)-1))) __PYX_ERR(7, 157, __pyx_L1_error)
__pyx_v_rdim = ((PetscInt)__pyx_t_2);
/* "PETSc/petscdmda.pxi":158
@@ -41940,7 +45212,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_asOwnershipRanges(PyObje
* elif p[0] != nlz: raise ValueError(
* "ownership range size %d and number or processors %d" %
* (toInt(nlz), toInt(p[0]))) # <<<<<<<<<<<<<<
- * return ranges
+ * return tuple(ranges)
*
*/
__pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nlz); if (unlikely(!__pyx_t_5)) __PYX_ERR(7, 180, __pyx_L1_error)
@@ -41961,7 +45233,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_asOwnershipRanges(PyObje
* elif p[0] != nlz: raise ValueError(
* "ownership range size %d and number or processors %d" % # <<<<<<<<<<<<<<
* (toInt(nlz), toInt(p[0])))
- * return ranges
+ * return tuple(ranges)
*/
__pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_ownership_range_size_d_and_numbe, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 179, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
@@ -42000,14 +45272,15 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_asOwnershipRanges(PyObje
/* "PETSc/petscdmda.pxi":181
* "ownership range size %d and number or processors %d" %
* (toInt(nlz), toInt(p[0])))
- * return ranges # <<<<<<<<<<<<<<
+ * return tuple(ranges) # <<<<<<<<<<<<<<
*
* cdef inline tuple toOwnershipRanges(PetscInt dim,
*/
__Pyx_XDECREF(__pyx_r);
- if (!(likely(PyTuple_CheckExact(__pyx_v_ranges))||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v_ranges)->tp_name), 0))) __PYX_ERR(7, 181, __pyx_L1_error)
- __Pyx_INCREF(__pyx_v_ranges);
- __pyx_r = ((PyObject*)__pyx_v_ranges);
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_ranges); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 181, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_r = ((PyObject*)__pyx_t_4);
+ __pyx_t_4 = 0;
goto __pyx_L0;
/* "PETSc/petscdmda.pxi":150
@@ -42033,7 +45306,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_asOwnershipRanges(PyObje
}
/* "PETSc/petscdmda.pxi":183
- * return ranges
+ * return tuple(ranges)
*
* cdef inline tuple toOwnershipRanges(PetscInt dim, # <<<<<<<<<<<<<<
* PetscInt m, PetscInt n, PetscInt p,
@@ -42086,7 +45359,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toOwnershipRanges(PetscI
*/
__pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_n, __pyx_v_ly)); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_ranges, __pyx_t_2); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(7, 191, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_ranges, __pyx_t_2); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(7, 191, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "PETSc/petscdmda.pxi":190
@@ -42117,7 +45390,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toOwnershipRanges(PetscI
*/
__pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_p, __pyx_v_lz)); if (unlikely(!__pyx_t_2)) __PYX_ERR(7, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_ranges, __pyx_t_2); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(7, 193, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_ranges, __pyx_t_2); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(7, 193, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
/* "PETSc/petscdmda.pxi":192
@@ -42144,7 +45417,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toOwnershipRanges(PetscI
goto __pyx_L0;
/* "PETSc/petscdmda.pxi":183
- * return ranges
+ * return tuple(ranges)
*
* cdef inline tuple toOwnershipRanges(PetscInt dim, # <<<<<<<<<<<<<<
* PetscInt m, PetscInt n, PetscInt p,
@@ -42167,7 +45440,7 @@ static CYTHON_INLINE PyObject *__pyx_f_8petsc4py_5PETSc_toOwnershipRanges(PetscI
/* "PETSc/petscdmda.pxi":205
* cdef readonly ndarray array
*
- * def __cinit__(self, DMDA da not None, Vec vec not None, bint DOF=False): # <<<<<<<<<<<<<<
+ * def __cinit__(self, DMDA da, Vec vec, bint DOF=False): # <<<<<<<<<<<<<<
* #
* cdef PetscInt dim=0, dof=0
*/
@@ -42189,8 +45462,11 @@ static int __pyx_pw_8petsc4py_5PETSc_15_DMDA_Vec_array_1__cinit__(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -42199,11 +45475,13 @@ static int __pyx_pw_8petsc4py_5PETSc_15_DMDA_Vec_array_1__cinit__(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_da)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 3, 1); __PYX_ERR(7, 205, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_DOF);
@@ -42216,6 +45494,7 @@ static int __pyx_pw_8petsc4py_5PETSc_15_DMDA_Vec_array_1__cinit__(PyObject *__py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -42295,7 +45574,7 @@ static int __pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array___cinit__(struct __pyx_ob
__Pyx_RefNannySetupContext("__cinit__", 0);
/* "PETSc/petscdmda.pxi":207
- * def __cinit__(self, DMDA da not None, Vec vec not None, bint DOF=False):
+ * def __cinit__(self, DMDA da, Vec vec, bint DOF=False):
* #
* cdef PetscInt dim=0, dof=0 # <<<<<<<<<<<<<<
* CHKERR( DMDAGetInfo(da.dm,
@@ -42311,7 +45590,7 @@ static int __pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array___cinit__(struct __pyx_ob
* &dim, NULL, NULL, NULL, NULL, NULL, NULL,
* &dof, NULL, NULL, NULL, NULL, NULL) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_da->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_dof), NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 208, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_da->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_dof), NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 208, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":211
* &dim, NULL, NULL, NULL, NULL, NULL, NULL,
@@ -42342,7 +45621,7 @@ static int __pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array___cinit__(struct __pyx_ob
* &lxs, &lys, &lzs,
* &lxm, &lym, &lzm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCorners(__pyx_v_da->__pyx_base.dm, (&__pyx_v_lxs), (&__pyx_v_lys), (&__pyx_v_lzs), (&__pyx_v_lxm), (&__pyx_v_lym), (&__pyx_v_lzm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 213, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCorners(__pyx_v_da->__pyx_base.dm, (&__pyx_v_lxs), (&__pyx_v_lys), (&__pyx_v_lzs), (&__pyx_v_lxm), (&__pyx_v_lym), (&__pyx_v_lzm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 213, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":216
* &lxs, &lys, &lzs,
@@ -42373,7 +45652,7 @@ static int __pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array___cinit__(struct __pyx_ob
* &gxs, &gys, &gzs,
* &gxm, &gym, &gzm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetGhostCorners(__pyx_v_da->__pyx_base.dm, (&__pyx_v_gxs), (&__pyx_v_gys), (&__pyx_v_gzs), (&__pyx_v_gxm), (&__pyx_v_gym), (&__pyx_v_gzm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 218, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetGhostCorners(__pyx_v_da->__pyx_base.dm, (&__pyx_v_gxs), (&__pyx_v_gys), (&__pyx_v_gzs), (&__pyx_v_gxm), (&__pyx_v_gym), (&__pyx_v_gzm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 218, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":222
* &gxm, &gym, &gzm) )
@@ -42391,7 +45670,7 @@ static int __pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array___cinit__(struct __pyx_ob
* cdef PetscInt xs, ys, zs, xm, ym, zm
* if (n == lxm*lym*lzm*dof):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_vec->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 223, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_vec->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 223, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":225
* CHKERR( VecGetLocalSize(vec.vec, &n) )
@@ -42774,7 +46053,7 @@ static int __pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array___cinit__(struct __pyx_ob
/* "PETSc/petscdmda.pxi":205
* cdef readonly ndarray array
*
- * def __cinit__(self, DMDA da not None, Vec vec not None, bint DOF=False): # <<<<<<<<<<<<<<
+ * def __cinit__(self, DMDA da, Vec vec, bint DOF=False): # <<<<<<<<<<<<<<
* #
* cdef PetscInt dim=0, dof=0
*/
@@ -42823,7 +46102,7 @@ static int __pyx_f_8petsc4py_5PETSc_15_DMDA_Vec_array_acquire(struct __pyx_obj_8
* if self.array is None:
* self.array = asarray(self.vecbuf)
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->vecbuf->__pyx_vtab)->acquire(__pyx_v_self->vecbuf); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 254, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->vecbuf->__pyx_vtab)->acquire(__pyx_v_self->vecbuf); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 254, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":255
* cdef int acquire(self) except -1:
@@ -42937,7 +46216,7 @@ static int __pyx_f_8petsc4py_5PETSc_15_DMDA_Vec_array_release(struct __pyx_obj_8
* self.array = None
* return 0
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->vecbuf->__pyx_vtab)->release(__pyx_v_self->vecbuf); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 262, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_self->vecbuf->__pyx_vtab)->release(__pyx_v_self->vecbuf); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 262, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":263
* cdef int release(self) except -1:
@@ -43016,7 +46295,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array_2__getitem__(struct
* index = adjust_index_exp(self.starts, index)
* return self.array[index]
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 269, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 269, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":270
* def __getitem__(self, index):
@@ -43105,7 +46384,7 @@ static int __pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array_4__setitem__(struct __pyx
* index = adjust_index_exp(self.starts, index)
* self.array[index] = value
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 274, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 274, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":275
* def __setitem__(self, index, value):
@@ -43191,7 +46470,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array_6__enter__(struct _
* return self
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 281, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->acquire(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 281, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":282
* def __enter__(self):
@@ -43263,7 +46542,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array_8__exit__(struct __
* return None
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(7, 285, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__DMDA_Vec_array *)__pyx_v_self->__pyx_vtab)->release(__pyx_v_self); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(7, 285, __pyx_L1_error)
/* "PETSc/petscdmda.pxi":286
* def __exit__(self, *exc):
@@ -43432,7 +46711,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_15_DMDA_Vec_array_7strides___get__(st
* cdef readonly tuple shape, strides
* cdef readonly ndarray array # <<<<<<<<<<<<<<
*
- * def __cinit__(self, DMDA da not None, Vec vec not None, bint DOF=False):
+ * def __cinit__(self, DMDA da, Vec vec, bint DOF=False):
*/
/* Python wrapper */
@@ -43558,7 +46837,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_adjust_index_exp(PyObject *__pyx_v_sta
if (likely(!__pyx_t_6)) {
if (likely(PyList_CheckExact(__pyx_t_3))) {
if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_7 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(7, 293, __pyx_L1_error)
#else
__pyx_t_7 = PySequence_ITEM(__pyx_t_3, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(7, 293, __pyx_L1_error)
@@ -43566,7 +46845,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_adjust_index_exp(PyObject *__pyx_v_sta
#endif
} else {
if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(7, 293, __pyx_L1_error)
#else
__pyx_t_7 = PySequence_ITEM(__pyx_t_3, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(7, 293, __pyx_L1_error)
@@ -43578,7 +46857,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_adjust_index_exp(PyObject *__pyx_v_sta
if (unlikely(!__pyx_t_7)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(7, 293, __pyx_L1_error)
}
break;
@@ -43628,7 +46907,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_adjust_index_exp(PyObject *__pyx_v_sta
* return index
*
*/
- __pyx_t_4 = PySequence_Tuple(__pyx_v_index); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 295, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_index); if (unlikely(!__pyx_t_4)) __PYX_ERR(7, 295, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_index, __pyx_t_4);
__pyx_t_4 = 0;
@@ -43900,7 +47179,6 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_adjust_index(PyObject *__pyx_v_lbound,
*/
}
__pyx_L8_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
/* "PETSc/petscdmda.pxi":312
@@ -43943,21 +47221,18 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_adjust_index(PyObject *__pyx_v_lbound,
* return index - lbound
* except TypeError:
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
goto __pyx_L1_error;
__pyx_L12_try_return:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
goto __pyx_L0;
__pyx_L11_except_return:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
@@ -43992,7 +47267,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_adjust_index(PyObject *__pyx_v_lbound,
/* "PETSc/petscdmcomposite.pxi":27
* cdef object access
*
- * def __cinit__(self, DM dm, Vec gvec not None, locs=None): # <<<<<<<<<<<<<<
+ * def __cinit__(self, DM dm, Vec gvec, locs=None): # <<<<<<<<<<<<<<
* self.dm = dm.dm
* CHKERR( PetscINCREF(<PetscObject*>&self.dm) )
*/
@@ -44015,8 +47290,11 @@ static int __pyx_pw_8petsc4py_5PETSc_19_DMComposite_access_1__cinit__(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -44025,11 +47303,13 @@ static int __pyx_pw_8petsc4py_5PETSc_19_DMComposite_access_1__cinit__(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gvec)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 3, 1); __PYX_ERR(23, 27, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_locs);
@@ -44042,6 +47322,7 @@ static int __pyx_pw_8petsc4py_5PETSc_19_DMComposite_access_1__cinit__(PyObject *
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -44060,7 +47341,7 @@ static int __pyx_pw_8petsc4py_5PETSc_19_DMComposite_access_1__cinit__(PyObject *
__Pyx_RefNannyFinishContext();
return -1;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 1, "dm", 0))) __PYX_ERR(23, 27, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(23, 27, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "gvec", 0))) __PYX_ERR(23, 27, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access___cinit__(((struct __pyx_obj_8petsc4py_5PETSc__DMComposite_access *)__pyx_v_self), __pyx_v_dm, __pyx_v_gvec, __pyx_v_locs);
@@ -44088,7 +47369,7 @@ static int __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access___cinit__(struct __py
/* "PETSc/petscdmcomposite.pxi":28
*
- * def __cinit__(self, DM dm, Vec gvec not None, locs=None):
+ * def __cinit__(self, DM dm, Vec gvec, locs=None):
* self.dm = dm.dm # <<<<<<<<<<<<<<
* CHKERR( PetscINCREF(<PetscObject*>&self.dm) )
* self.gvec = gvec.vec
@@ -44097,13 +47378,13 @@ static int __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access___cinit__(struct __py
__pyx_v_self->dm = __pyx_t_1;
/* "PETSc/petscdmcomposite.pxi":29
- * def __cinit__(self, DM dm, Vec gvec not None, locs=None):
+ * def __cinit__(self, DM dm, Vec gvec, locs=None):
* self.dm = dm.dm
* CHKERR( PetscINCREF(<PetscObject*>&self.dm) ) # <<<<<<<<<<<<<<
* self.gvec = gvec.vec
* CHKERR( PetscINCREF(<PetscObject*>&self.gvec) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_self->dm)))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(23, 29, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_self->dm)))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(23, 29, __pyx_L1_error)
/* "PETSc/petscdmcomposite.pxi":30
* self.dm = dm.dm
@@ -44122,7 +47403,7 @@ static int __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access___cinit__(struct __py
* if locs is None:
* CHKERR( DMCompositeGetNumberDM(self.dm, &self.nlocs) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_self->gvec)))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(23, 31, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&__pyx_v_self->gvec)))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(23, 31, __pyx_L1_error)
/* "PETSc/petscdmcomposite.pxi":32
* self.gvec = gvec.vec
@@ -44142,7 +47423,7 @@ static int __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access___cinit__(struct __py
* locs = arange(0, <long>self.nlocs, 1)
* self.locs_mem = iarray_i(locs, &self.nlocs, &self.locs)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->dm, (&__pyx_v_self->nlocs))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(23, 33, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->dm, (&__pyx_v_self->nlocs))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(23, 33, __pyx_L1_error)
/* "PETSc/petscdmcomposite.pxi":34
* if locs is None:
@@ -44217,7 +47498,7 @@ static int __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access___cinit__(struct __py
/* "PETSc/petscdmcomposite.pxi":27
* cdef object access
*
- * def __cinit__(self, DM dm, Vec gvec not None, locs=None): # <<<<<<<<<<<<<<
+ * def __cinit__(self, DM dm, Vec gvec, locs=None): # <<<<<<<<<<<<<<
* self.dm = dm.dm
* CHKERR( PetscINCREF(<PetscObject*>&self.dm) )
*/
@@ -44267,7 +47548,7 @@ static void __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access_2__dealloc__(struct
* CHKERR( VecDestroy(&self.gvec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDestroy((&__pyx_v_self->dm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(23, 40, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDestroy((&__pyx_v_self->dm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(23, 40, __pyx_L1_error)
/* "PETSc/petscdmcomposite.pxi":41
* def __dealloc__(self):
@@ -44276,7 +47557,7 @@ static void __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access_2__dealloc__(struct
*
* def __enter__(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_self->gvec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(23, 41, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_self->gvec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(23, 41, __pyx_L1_error)
/* "PETSc/petscdmcomposite.pxi":39
* self.access = None
@@ -44289,7 +47570,7 @@ static void __pyx_pf_8petsc4py_5PETSc_19_DMComposite_access_2__dealloc__(struct
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc._DMComposite_access.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc._DMComposite_access.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
@@ -44348,7 +47629,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_19_DMComposite_access_4__enter__(stru
* self.access = [ref_Vec(self.vecs[i]) for i from 0 <= i < n]
* return tuple(self.access)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetAccessArray(__pyx_v_self->dm, __pyx_v_self->gvec, __pyx_v_self->nlocs, __pyx_v_self->locs, __pyx_v_self->vecs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(23, 45, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetAccessArray(__pyx_v_self->dm, __pyx_v_self->gvec, __pyx_v_self->nlocs, __pyx_v_self->locs, __pyx_v_self->vecs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(23, 45, __pyx_L1_error)
/* "PETSc/petscdmcomposite.pxi":46
* cdef Py_ssize_t i, n = self.nlocs
@@ -44380,7 +47661,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_19_DMComposite_access_4__enter__(stru
* def __exit__(self, *exc):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = PySequence_Tuple(__pyx_v_self->access); if (unlikely(!__pyx_t_3)) __PYX_ERR(23, 47, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PySequence_Tuple(__pyx_v_self->access); if (unlikely(!__pyx_t_3)) __PYX_ERR(23, 47, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
@@ -44475,7 +47756,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_19_DMComposite_access_6__exit__(struc
* CHKERR( DMCompositeRestoreAccessArray(self.dm, self.gvec, self.nlocs, self.locs, self.vecs) ) # <<<<<<<<<<<<<<
* self.access = None
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeRestoreAccessArray(__pyx_v_self->dm, __pyx_v_self->gvec, __pyx_v_self->nlocs, __pyx_v_self->locs, __pyx_v_self->vecs)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(23, 52, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeRestoreAccessArray(__pyx_v_self->dm, __pyx_v_self->gvec, __pyx_v_self->nlocs, __pyx_v_self->locs, __pyx_v_self->vecs)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(23, 52, __pyx_L1_error)
/* "PETSc/petscdmcomposite.pxi":53
* for i from 0 <= i < n: (<Vec>self.access[i]).vec = NULL
@@ -44509,7 +47790,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_19_DMComposite_access_6__exit__(struc
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":50
+/* "PETSc/petscdmshell.pxi":68
* int DMShellSetCreateSubDM(PetscDM,PetscDMShellCreateSubDM)
*
* cdef int DMSHELL_CreateGlobalVector( # <<<<<<<<<<<<<<
@@ -44536,27 +47817,27 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
PyObject *(*__pyx_t_8)(PyObject *);
Vec __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_CreateGlobalVector", 0);
- /* "PETSc/petscdmshell.pxi":53
+ /* "PETSc/petscdmshell.pxi":71
* PetscDM dm,
* PetscVec *v) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec vec
* Dm.dm = dm
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 53, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 71, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 53, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 71, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 53, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 71, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":55
+ /* "PETSc/petscdmshell.pxi":73
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec vec
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -44565,7 +47846,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":56
+ /* "PETSc/petscdmshell.pxi":74
* cdef Vec vec
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -44574,19 +47855,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":57
+ /* "PETSc/petscdmshell.pxi":75
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_global_vector__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (create_gvec, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_global_vector__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 57, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_global_vector__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 75, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":58
+ /* "PETSc/petscdmshell.pxi":76
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_global_vector__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -44608,12 +47889,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 58, __pyx_L1_error)
+ __PYX_ERR(8, 76, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":59
+ /* "PETSc/petscdmshell.pxi":77
* context = Dm.get_attr('__create_global_vector__')
* assert context is not None and type(context) is tuple
* (create_gvec, args, kargs) = context # <<<<<<<<<<<<<<
@@ -44622,7 +47903,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -44630,9 +47911,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 59, __pyx_L1_error)
+ __PYX_ERR(8, 77, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -44646,16 +47927,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 59, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 59, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 59, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 59, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -44664,7 +47945,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 59, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 77, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -44672,7 +47953,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 59, __pyx_L1_error)
+ __PYX_ERR(8, 77, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_create_gvec = __pyx_t_2;
@@ -44682,44 +47963,44 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":60
+ /* "PETSc/petscdmshell.pxi":78
* assert context is not None and type(context) is tuple
* (create_gvec, args, kargs) = context
* vec = create_gvec(Dm, *args, **kargs) # <<<<<<<<<<<<<<
* PetscINCREF(vec.obj)
* v[0] = vec.vec
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 60, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 78, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Dm));
- __pyx_t_1 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 60, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 78, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 60, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 78, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 60, __pyx_L1_error)
+ __PYX_ERR(8, 78, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 60, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 78, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 60, __pyx_L1_error)
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 78, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_create_gvec, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 60, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_create_gvec, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 78, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(8, 60, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(8, 78, __pyx_L1_error)
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":61
+ /* "PETSc/petscdmshell.pxi":79
* (create_gvec, args, kargs) = context
* vec = create_gvec(Dm, *args, **kargs)
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -44728,7 +48009,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":62
+ /* "PETSc/petscdmshell.pxi":80
* vec = create_gvec(Dm, *args, **kargs)
* PetscINCREF(vec.obj)
* v[0] = vec.vec # <<<<<<<<<<<<<<
@@ -44738,7 +48019,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__pyx_t_9 = __pyx_v_vec->vec;
(__pyx_v_v[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":63
+ /* "PETSc/petscdmshell.pxi":81
* PetscINCREF(vec.obj)
* v[0] = vec.vec
* return 0 # <<<<<<<<<<<<<<
@@ -44748,7 +48029,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":50
+ /* "PETSc/petscdmshell.pxi":68
* int DMShellSetCreateSubDM(PetscDM,PetscDMShellCreateSubDM)
*
* cdef int DMSHELL_CreateGlobalVector( # <<<<<<<<<<<<<<
@@ -44773,12 +48054,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector(DM __pyx_v_dm, Ve
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":65
+/* "PETSc/petscdmshell.pxi":83
* return 0
*
* cdef int DMSHELL_CreateLocalVector( # <<<<<<<<<<<<<<
@@ -44805,27 +48086,27 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
PyObject *(*__pyx_t_8)(PyObject *);
Vec __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_CreateLocalVector", 0);
- /* "PETSc/petscdmshell.pxi":68
+ /* "PETSc/petscdmshell.pxi":86
* PetscDM dm,
* PetscVec *v) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec vec
* Dm.dm = dm
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 68, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 86, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 68, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 86, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 68, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 86, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":70
+ /* "PETSc/petscdmshell.pxi":88
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec vec
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -44834,7 +48115,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":71
+ /* "PETSc/petscdmshell.pxi":89
* cdef Vec vec
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -44843,19 +48124,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":72
+ /* "PETSc/petscdmshell.pxi":90
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_local_vector__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (create_lvec, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_local_vector__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 72, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_local_vector__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 90, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":73
+ /* "PETSc/petscdmshell.pxi":91
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_local_vector__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -44877,12 +48158,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 73, __pyx_L1_error)
+ __PYX_ERR(8, 91, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":74
+ /* "PETSc/petscdmshell.pxi":92
* context = Dm.get_attr('__create_local_vector__')
* assert context is not None and type(context) is tuple
* (create_lvec, args, kargs) = context # <<<<<<<<<<<<<<
@@ -44891,7 +48172,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -44899,9 +48180,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 74, __pyx_L1_error)
+ __PYX_ERR(8, 92, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -44915,16 +48196,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 74, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 74, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 74, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 74, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -44933,7 +48214,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 74, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 92, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -44941,7 +48222,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 74, __pyx_L1_error)
+ __PYX_ERR(8, 92, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_create_lvec = __pyx_t_2;
@@ -44951,44 +48232,44 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":75
+ /* "PETSc/petscdmshell.pxi":93
* assert context is not None and type(context) is tuple
* (create_lvec, args, kargs) = context
* vec = create_lvec(Dm, *args, **kargs) # <<<<<<<<<<<<<<
* PetscINCREF(vec.obj)
* v[0] = vec.vec
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 75, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 93, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Dm));
- __pyx_t_1 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 75, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 93, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 75, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 93, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 75, __pyx_L1_error)
+ __PYX_ERR(8, 93, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 75, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 93, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 75, __pyx_L1_error)
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 93, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_create_lvec, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 75, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_create_lvec, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 93, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(8, 75, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(8, 93, __pyx_L1_error)
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":76
+ /* "PETSc/petscdmshell.pxi":94
* (create_lvec, args, kargs) = context
* vec = create_lvec(Dm, *args, **kargs)
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -44997,7 +48278,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":77
+ /* "PETSc/petscdmshell.pxi":95
* vec = create_lvec(Dm, *args, **kargs)
* PetscINCREF(vec.obj)
* v[0] = vec.vec # <<<<<<<<<<<<<<
@@ -45007,7 +48288,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__pyx_t_9 = __pyx_v_vec->vec;
(__pyx_v_v[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":78
+ /* "PETSc/petscdmshell.pxi":96
* PetscINCREF(vec.obj)
* v[0] = vec.vec
* return 0 # <<<<<<<<<<<<<<
@@ -45017,7 +48298,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":65
+ /* "PETSc/petscdmshell.pxi":83
* return 0
*
* cdef int DMSHELL_CreateLocalVector( # <<<<<<<<<<<<<<
@@ -45042,12 +48323,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector(DM __pyx_v_dm, Vec
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":80
+/* "PETSc/petscdmshell.pxi":98
* return 0
*
* cdef int DMSHELL_GlobalToLocalBegin( # <<<<<<<<<<<<<<
@@ -45074,51 +48355,51 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_GlobalToLocalBegin", 0);
- /* "PETSc/petscdmshell.pxi":85
+ /* "PETSc/petscdmshell.pxi":103
* PetscInsertMode mode,
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 85, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 103, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 85, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 103, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 85, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 103, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":86
+ /* "PETSc/petscdmshell.pxi":104
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g) # <<<<<<<<<<<<<<
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 86, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 104, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_gvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":87
+ /* "PETSc/petscdmshell.pxi":105
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 87, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 105, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_lvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":88
+ /* "PETSc/petscdmshell.pxi":106
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -45127,7 +48408,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":89
+ /* "PETSc/petscdmshell.pxi":107
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -45136,19 +48417,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":90
+ /* "PETSc/petscdmshell.pxi":108
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__g2l_begin__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__g2l_begin__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 90, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__g2l_begin__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 108, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":91
+ /* "PETSc/petscdmshell.pxi":109
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__g2l_begin__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -45170,12 +48451,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 91, __pyx_L1_error)
+ __PYX_ERR(8, 109, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":92
+ /* "PETSc/petscdmshell.pxi":110
* context = Dm.get_attr('__g2l_begin__')
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context # <<<<<<<<<<<<<<
@@ -45184,7 +48465,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -45192,9 +48473,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 92, __pyx_L1_error)
+ __PYX_ERR(8, 110, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -45208,16 +48489,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 92, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 110, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 92, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 110, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 92, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 110, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 92, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 110, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -45226,7 +48507,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 92, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 110, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -45234,7 +48515,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 92, __pyx_L1_error)
+ __PYX_ERR(8, 110, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_begin = __pyx_t_2;
@@ -45244,16 +48525,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":93
+ /* "PETSc/petscdmshell.pxi":111
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context
* begin(Dm, gvec, mode, lvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 93, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 93, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -45267,30 +48548,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__Pyx_GIVEREF(((PyObject *)__pyx_v_lvec));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_lvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 93, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 93, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 93, __pyx_L1_error)
+ __PYX_ERR(8, 111, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 93, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 93, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_begin, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 93, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_begin, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":94
+ /* "PETSc/petscdmshell.pxi":112
* (begin, args, kargs) = context
* begin(Dm, gvec, mode, lvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -45300,7 +48581,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":80
+ /* "PETSc/petscdmshell.pxi":98
* return 0
*
* cdef int DMSHELL_GlobalToLocalBegin( # <<<<<<<<<<<<<<
@@ -45326,12 +48607,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalBegin(DM __pyx_v_dm, Ve
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":96
+/* "PETSc/petscdmshell.pxi":114
* return 0
*
* cdef int DMSHELL_GlobalToLocalEnd( # <<<<<<<<<<<<<<
@@ -45358,51 +48639,51 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_GlobalToLocalEnd", 0);
- /* "PETSc/petscdmshell.pxi":101
+ /* "PETSc/petscdmshell.pxi":119
* PetscInsertMode mode,
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 101, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 119, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 101, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 119, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 101, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 119, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":102
+ /* "PETSc/petscdmshell.pxi":120
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g) # <<<<<<<<<<<<<<
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 102, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_gvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":103
+ /* "PETSc/petscdmshell.pxi":121
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 103, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 121, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_lvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":104
+ /* "PETSc/petscdmshell.pxi":122
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -45411,7 +48692,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":105
+ /* "PETSc/petscdmshell.pxi":123
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -45420,19 +48701,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":106
+ /* "PETSc/petscdmshell.pxi":124
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__g2l_end__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__g2l_end__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 106, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__g2l_end__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 124, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":107
+ /* "PETSc/petscdmshell.pxi":125
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__g2l_end__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -45454,12 +48735,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 107, __pyx_L1_error)
+ __PYX_ERR(8, 125, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":108
+ /* "PETSc/petscdmshell.pxi":126
* context = Dm.get_attr('__g2l_end__')
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context # <<<<<<<<<<<<<<
@@ -45468,7 +48749,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -45476,9 +48757,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 108, __pyx_L1_error)
+ __PYX_ERR(8, 126, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -45492,16 +48773,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 108, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 108, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 108, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 108, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 126, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -45510,7 +48791,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 108, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 126, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -45518,7 +48799,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 108, __pyx_L1_error)
+ __PYX_ERR(8, 126, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_end = __pyx_t_2;
@@ -45528,16 +48809,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":109
+ /* "PETSc/petscdmshell.pxi":127
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context
* end(Dm, gvec, mode, lvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 109, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 109, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -45551,30 +48832,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__Pyx_GIVEREF(((PyObject *)__pyx_v_lvec));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_lvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 109, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 109, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 109, __pyx_L1_error)
+ __PYX_ERR(8, 127, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 109, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 109, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_end, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 109, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_end, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":110
+ /* "PETSc/petscdmshell.pxi":128
* (end, args, kargs) = context
* end(Dm, gvec, mode, lvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -45584,7 +48865,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":96
+ /* "PETSc/petscdmshell.pxi":114
* return 0
*
* cdef int DMSHELL_GlobalToLocalEnd( # <<<<<<<<<<<<<<
@@ -45610,12 +48891,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_GlobalToLocalEnd(DM __pyx_v_dm, Vec
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":112
+/* "PETSc/petscdmshell.pxi":130
* return 0
*
* cdef int DMSHELL_LocalToGlobalBegin( # <<<<<<<<<<<<<<
@@ -45642,51 +48923,51 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_LocalToGlobalBegin", 0);
- /* "PETSc/petscdmshell.pxi":117
+ /* "PETSc/petscdmshell.pxi":135
* PetscInsertMode mode,
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 117, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 135, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 117, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 135, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 117, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 135, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":118
+ /* "PETSc/petscdmshell.pxi":136
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g) # <<<<<<<<<<<<<<
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 118, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 136, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_gvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":119
+ /* "PETSc/petscdmshell.pxi":137
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 119, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 137, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_lvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":120
+ /* "PETSc/petscdmshell.pxi":138
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -45695,7 +48976,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":121
+ /* "PETSc/petscdmshell.pxi":139
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -45704,19 +48985,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":122
+ /* "PETSc/petscdmshell.pxi":140
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2g_begin__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2g_begin__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 122, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2g_begin__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 140, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":123
+ /* "PETSc/petscdmshell.pxi":141
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2g_begin__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -45738,12 +49019,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 123, __pyx_L1_error)
+ __PYX_ERR(8, 141, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":124
+ /* "PETSc/petscdmshell.pxi":142
* context = Dm.get_attr('__l2g_begin__')
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context # <<<<<<<<<<<<<<
@@ -45752,7 +49033,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -45760,9 +49041,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 124, __pyx_L1_error)
+ __PYX_ERR(8, 142, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -45776,16 +49057,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 124, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 142, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 124, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 142, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 124, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 142, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 124, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 142, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -45794,7 +49075,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 124, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 142, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -45802,7 +49083,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 124, __pyx_L1_error)
+ __PYX_ERR(8, 142, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_begin = __pyx_t_2;
@@ -45812,16 +49093,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":125
+ /* "PETSc/petscdmshell.pxi":143
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context
* begin(Dm, gvec, mode, lvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 125, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 125, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -45835,30 +49116,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__Pyx_GIVEREF(((PyObject *)__pyx_v_lvec));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_lvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 125, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 125, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 125, __pyx_L1_error)
+ __PYX_ERR(8, 143, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 125, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 125, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_begin, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 125, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_begin, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":126
+ /* "PETSc/petscdmshell.pxi":144
* (begin, args, kargs) = context
* begin(Dm, gvec, mode, lvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -45868,7 +49149,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":112
+ /* "PETSc/petscdmshell.pxi":130
* return 0
*
* cdef int DMSHELL_LocalToGlobalBegin( # <<<<<<<<<<<<<<
@@ -45894,12 +49175,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalBegin(DM __pyx_v_dm, Ve
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":128
+/* "PETSc/petscdmshell.pxi":146
* return 0
*
* cdef int DMSHELL_LocalToGlobalEnd( # <<<<<<<<<<<<<<
@@ -45926,51 +49207,51 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_LocalToGlobalEnd", 0);
- /* "PETSc/petscdmshell.pxi":133
+ /* "PETSc/petscdmshell.pxi":151
* PetscInsertMode mode,
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 133, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 151, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 133, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 151, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 133, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 151, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":134
+ /* "PETSc/petscdmshell.pxi":152
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g) # <<<<<<<<<<<<<<
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 134, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 152, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_gvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":135
+ /* "PETSc/petscdmshell.pxi":153
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 135, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 153, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_lvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":136
+ /* "PETSc/petscdmshell.pxi":154
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -45979,7 +49260,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":137
+ /* "PETSc/petscdmshell.pxi":155
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -45988,19 +49269,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":138
+ /* "PETSc/petscdmshell.pxi":156
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2g_end__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2g_end__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 138, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2g_end__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 156, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":139
+ /* "PETSc/petscdmshell.pxi":157
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2g_end__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -46022,12 +49303,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 139, __pyx_L1_error)
+ __PYX_ERR(8, 157, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":140
+ /* "PETSc/petscdmshell.pxi":158
* context = Dm.get_attr('__l2g_end__')
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context # <<<<<<<<<<<<<<
@@ -46036,7 +49317,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -46044,9 +49325,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 140, __pyx_L1_error)
+ __PYX_ERR(8, 158, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -46060,16 +49341,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 140, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 158, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 140, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 158, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 140, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 158, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 140, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 158, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -46078,7 +49359,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 140, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 158, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -46086,7 +49367,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 140, __pyx_L1_error)
+ __PYX_ERR(8, 158, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_end = __pyx_t_2;
@@ -46096,16 +49377,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":141
+ /* "PETSc/petscdmshell.pxi":159
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context
* end(Dm, gvec, mode, lvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 141, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 141, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -46119,30 +49400,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__Pyx_GIVEREF(((PyObject *)__pyx_v_lvec));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_lvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 141, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 141, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 141, __pyx_L1_error)
+ __PYX_ERR(8, 159, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 141, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 141, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_end, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 141, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_end, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":142
+ /* "PETSc/petscdmshell.pxi":160
* (end, args, kargs) = context
* end(Dm, gvec, mode, lvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -46152,7 +49433,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":128
+ /* "PETSc/petscdmshell.pxi":146
* return 0
*
* cdef int DMSHELL_LocalToGlobalEnd( # <<<<<<<<<<<<<<
@@ -46178,12 +49459,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToGlobalEnd(DM __pyx_v_dm, Vec
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":144
+/* "PETSc/petscdmshell.pxi":162
* return 0
*
* cdef int DMSHELL_LocalToLocalBegin( # <<<<<<<<<<<<<<
@@ -46210,51 +49491,51 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_LocalToLocalBegin", 0);
- /* "PETSc/petscdmshell.pxi":149
+ /* "PETSc/petscdmshell.pxi":167
* PetscInsertMode mode,
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 149, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 167, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 149, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 167, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 149, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 167, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":150
+ /* "PETSc/petscdmshell.pxi":168
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g) # <<<<<<<<<<<<<<
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 150, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 168, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_gvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":151
+ /* "PETSc/petscdmshell.pxi":169
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 151, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 169, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_lvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":152
+ /* "PETSc/petscdmshell.pxi":170
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -46263,7 +49544,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":153
+ /* "PETSc/petscdmshell.pxi":171
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -46272,19 +49553,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":154
+ /* "PETSc/petscdmshell.pxi":172
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2l_begin__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2l_begin__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 154, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2l_begin__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 172, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":155
+ /* "PETSc/petscdmshell.pxi":173
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2l_begin__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -46306,12 +49587,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 155, __pyx_L1_error)
+ __PYX_ERR(8, 173, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":156
+ /* "PETSc/petscdmshell.pxi":174
* context = Dm.get_attr('__l2l_begin__')
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context # <<<<<<<<<<<<<<
@@ -46320,7 +49601,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -46328,9 +49609,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 156, __pyx_L1_error)
+ __PYX_ERR(8, 174, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -46344,16 +49625,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 156, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 174, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 156, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 174, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 156, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 174, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 156, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 174, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -46362,7 +49643,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 156, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 174, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -46370,7 +49651,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 156, __pyx_L1_error)
+ __PYX_ERR(8, 174, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_begin = __pyx_t_2;
@@ -46380,16 +49661,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":157
+ /* "PETSc/petscdmshell.pxi":175
* assert context is not None and type(context) is tuple
* (begin, args, kargs) = context
* begin(Dm, gvec, mode, lvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 157, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 157, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -46403,30 +49684,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__Pyx_GIVEREF(((PyObject *)__pyx_v_lvec));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_lvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 157, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 157, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 157, __pyx_L1_error)
+ __PYX_ERR(8, 175, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 157, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 157, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_begin, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 157, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_begin, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":158
+ /* "PETSc/petscdmshell.pxi":176
* (begin, args, kargs) = context
* begin(Dm, gvec, mode, lvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -46436,7 +49717,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":144
+ /* "PETSc/petscdmshell.pxi":162
* return 0
*
* cdef int DMSHELL_LocalToLocalBegin( # <<<<<<<<<<<<<<
@@ -46462,12 +49743,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalBegin(DM __pyx_v_dm, Vec
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":160
+/* "PETSc/petscdmshell.pxi":178
* return 0
*
* cdef int DMSHELL_LocalToLocalEnd( # <<<<<<<<<<<<<<
@@ -46494,51 +49775,51 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
PyObject *__pyx_t_7 = NULL;
PyObject *(*__pyx_t_8)(PyObject *);
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_LocalToLocalEnd", 0);
- /* "PETSc/petscdmshell.pxi":165
+ /* "PETSc/petscdmshell.pxi":183
* PetscInsertMode mode,
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 165, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 183, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 165, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 183, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 165, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 183, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":166
+ /* "PETSc/petscdmshell.pxi":184
* PetscVec l) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g) # <<<<<<<<<<<<<<
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 166, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_g)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_gvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":167
+ /* "PETSc/petscdmshell.pxi":185
* cdef DM Dm = subtype_DM(dm)()
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 167, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_l)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_lvec = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":168
+ /* "PETSc/petscdmshell.pxi":186
* cdef Vec gvec = ref_Vec(g)
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -46547,7 +49828,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":169
+ /* "PETSc/petscdmshell.pxi":187
* cdef Vec lvec = ref_Vec(l)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -46556,19 +49837,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":170
+ /* "PETSc/petscdmshell.pxi":188
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2l_end__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2l_end__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 170, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__l2l_end__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":171
+ /* "PETSc/petscdmshell.pxi":189
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__l2l_end__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -46590,12 +49871,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 171, __pyx_L1_error)
+ __PYX_ERR(8, 189, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":172
+ /* "PETSc/petscdmshell.pxi":190
* context = Dm.get_attr('__l2l_end__')
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context # <<<<<<<<<<<<<<
@@ -46604,7 +49885,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -46612,9 +49893,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 172, __pyx_L1_error)
+ __PYX_ERR(8, 190, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -46628,16 +49909,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 172, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 172, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 172, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 172, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -46646,7 +49927,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 172, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 190, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -46654,7 +49935,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 172, __pyx_L1_error)
+ __PYX_ERR(8, 190, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_end = __pyx_t_2;
@@ -46664,16 +49945,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":173
+ /* "PETSc/petscdmshell.pxi":191
* assert context is not None and type(context) is tuple
* (end, args, kargs) = context
* end(Dm, gvec, mode, lvec, *args, **kargs) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 173, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyInt_From_InsertMode(__pyx_v_mode); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 173, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -46687,30 +49968,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__Pyx_GIVEREF(((PyObject *)__pyx_v_lvec));
PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_lvec));
__pyx_t_6 = 0;
- __pyx_t_6 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 173, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 173, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 173, __pyx_L1_error)
+ __PYX_ERR(8, 191, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 173, __pyx_L1_error)
+ __pyx_t_6 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
- __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 173, __pyx_L1_error)
+ __pyx_t_6 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
}
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_end, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 173, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_v_end, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 191, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":174
+ /* "PETSc/petscdmshell.pxi":192
* (end, args, kargs) = context
* end(Dm, gvec, mode, lvec, *args, **kargs)
* return 0 # <<<<<<<<<<<<<<
@@ -46720,7 +50001,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":160
+ /* "PETSc/petscdmshell.pxi":178
* return 0
*
* cdef int DMSHELL_LocalToLocalEnd( # <<<<<<<<<<<<<<
@@ -46746,12 +50027,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_LocalToLocalEnd(DM __pyx_v_dm, Vec _
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":176
+/* "PETSc/petscdmshell.pxi":194
* return 0
*
* cdef int DMSHELL_CreateMatrix( # <<<<<<<<<<<<<<
@@ -46778,27 +50059,27 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
PyObject *(*__pyx_t_8)(PyObject *);
Mat __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_CreateMatrix", 0);
- /* "PETSc/petscdmshell.pxi":179
+ /* "PETSc/petscdmshell.pxi":197
* PetscDM dm,
* PetscMat *cmat) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef Mat mat
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 179, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 197, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 179, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 197, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 179, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 197, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":182
+ /* "PETSc/petscdmshell.pxi":200
* cdef Mat mat
*
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -46807,7 +50088,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":183
+ /* "PETSc/petscdmshell.pxi":201
*
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -46816,19 +50097,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":184
+ /* "PETSc/petscdmshell.pxi":202
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_matrix__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (matrix, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_matrix__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 184, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_matrix__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":185
+ /* "PETSc/petscdmshell.pxi":203
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_matrix__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -46850,12 +50131,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 185, __pyx_L1_error)
+ __PYX_ERR(8, 203, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":186
+ /* "PETSc/petscdmshell.pxi":204
* context = Dm.get_attr('__create_matrix__')
* assert context is not None and type(context) is tuple
* (matrix, args, kargs) = context # <<<<<<<<<<<<<<
@@ -46864,7 +50145,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -46872,9 +50153,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 186, __pyx_L1_error)
+ __PYX_ERR(8, 204, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -46888,16 +50169,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 186, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 186, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 186, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 186, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -46906,7 +50187,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 186, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 204, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -46914,7 +50195,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 186, __pyx_L1_error)
+ __PYX_ERR(8, 204, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_matrix = __pyx_t_2;
@@ -46924,44 +50205,44 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":187
+ /* "PETSc/petscdmshell.pxi":205
* assert context is not None and type(context) is tuple
* (matrix, args, kargs) = context
* mat = matrix(Dm, *args, **kargs) # <<<<<<<<<<<<<<
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 187, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Dm));
- __pyx_t_1 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 187, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 187, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 187, __pyx_L1_error)
+ __PYX_ERR(8, 205, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 187, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 187, __pyx_L1_error)
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_matrix, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 187, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_matrix, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(8, 187, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(8, 205, __pyx_L1_error)
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":188
+ /* "PETSc/petscdmshell.pxi":206
* (matrix, args, kargs) = context
* mat = matrix(Dm, *args, **kargs)
* PetscINCREF(mat.obj) # <<<<<<<<<<<<<<
@@ -46970,7 +50251,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_mat->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":189
+ /* "PETSc/petscdmshell.pxi":207
* mat = matrix(Dm, *args, **kargs)
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat # <<<<<<<<<<<<<<
@@ -46980,7 +50261,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__pyx_t_9 = __pyx_v_mat->mat;
(__pyx_v_cmat[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":190
+ /* "PETSc/petscdmshell.pxi":208
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat
* return 0 # <<<<<<<<<<<<<<
@@ -46990,7 +50271,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":176
+ /* "PETSc/petscdmshell.pxi":194
* return 0
*
* cdef int DMSHELL_CreateMatrix( # <<<<<<<<<<<<<<
@@ -47015,12 +50296,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix(DM __pyx_v_dm, Mat *__p
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":192
+/* "PETSc/petscdmshell.pxi":210
* return 0
*
* cdef int DMSHELL_Coarsen( # <<<<<<<<<<<<<<
@@ -47048,39 +50329,39 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
PyObject *(*__pyx_t_8)(PyObject *);
DM __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_Coarsen", 0);
- /* "PETSc/petscdmshell.pxi":196
+ /* "PETSc/petscdmshell.pxi":214
* MPI_Comm comm,
* PetscDM *dmc) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef DM Dmc
* cdef Comm Comm = new_Comm(comm)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 196, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 196, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 196, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 214, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":198
+ /* "PETSc/petscdmshell.pxi":216
* cdef DM Dm = subtype_DM(dm)()
* cdef DM Dmc
* cdef Comm Comm = new_Comm(comm) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_new_Comm(__pyx_v_comm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 198, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_new_Comm(__pyx_v_comm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_Comm = ((struct PyPetscCommObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":199
+ /* "PETSc/petscdmshell.pxi":217
* cdef DM Dmc
* cdef Comm Comm = new_Comm(comm)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -47089,7 +50370,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":200
+ /* "PETSc/petscdmshell.pxi":218
* cdef Comm Comm = new_Comm(comm)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -47098,19 +50379,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":201
+ /* "PETSc/petscdmshell.pxi":219
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__coarsen__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (coarsen, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__coarsen__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 201, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__coarsen__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 219, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":202
+ /* "PETSc/petscdmshell.pxi":220
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__coarsen__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -47132,12 +50413,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 202, __pyx_L1_error)
+ __PYX_ERR(8, 220, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":203
+ /* "PETSc/petscdmshell.pxi":221
* context = Dm.get_attr('__coarsen__')
* assert context is not None and type(context) is tuple
* (coarsen, args, kargs) = context # <<<<<<<<<<<<<<
@@ -47146,7 +50427,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -47154,9 +50435,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 203, __pyx_L1_error)
+ __PYX_ERR(8, 221, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -47170,16 +50451,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 203, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 203, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 203, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 203, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -47188,7 +50469,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 203, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 221, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -47196,7 +50477,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 203, __pyx_L1_error)
+ __PYX_ERR(8, 221, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_coarsen = __pyx_t_2;
@@ -47206,14 +50487,14 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":204
+ /* "PETSc/petscdmshell.pxi":222
* assert context is not None and type(context) is tuple
* (coarsen, args, kargs) = context
* Dmc = coarsen(Dm, Comm, *args, **kargs) # <<<<<<<<<<<<<<
* PetscINCREF(Dmc.obj)
* dmc[0] = Dmc.dm
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 204, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -47221,32 +50502,32 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__Pyx_INCREF(((PyObject *)__pyx_v_Comm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Comm));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Comm));
- __pyx_t_1 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 204, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 204, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 204, __pyx_L1_error)
+ __PYX_ERR(8, 222, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 204, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 204, __pyx_L1_error)
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_coarsen, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 204, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_coarsen, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 204, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 222, __pyx_L1_error)
__pyx_v_Dmc = ((struct PyPetscDMObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":205
+ /* "PETSc/petscdmshell.pxi":223
* (coarsen, args, kargs) = context
* Dmc = coarsen(Dm, Comm, *args, **kargs)
* PetscINCREF(Dmc.obj) # <<<<<<<<<<<<<<
@@ -47255,7 +50536,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmc->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":206
+ /* "PETSc/petscdmshell.pxi":224
* Dmc = coarsen(Dm, Comm, *args, **kargs)
* PetscINCREF(Dmc.obj)
* dmc[0] = Dmc.dm # <<<<<<<<<<<<<<
@@ -47265,7 +50546,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__pyx_t_9 = __pyx_v_Dmc->dm;
(__pyx_v_dmc[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":207
+ /* "PETSc/petscdmshell.pxi":225
* PetscINCREF(Dmc.obj)
* dmc[0] = Dmc.dm
* return 0 # <<<<<<<<<<<<<<
@@ -47275,7 +50556,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":192
+ /* "PETSc/petscdmshell.pxi":210
* return 0
*
* cdef int DMSHELL_Coarsen( # <<<<<<<<<<<<<<
@@ -47301,12 +50582,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen(DM __pyx_v_dm, MPI_Comm __py
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":209
+/* "PETSc/petscdmshell.pxi":227
* return 0
*
* cdef int DMSHELL_Refine( # <<<<<<<<<<<<<<
@@ -47334,39 +50615,39 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
PyObject *(*__pyx_t_8)(PyObject *);
DM __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_Refine", 0);
- /* "PETSc/petscdmshell.pxi":213
+ /* "PETSc/petscdmshell.pxi":231
* MPI_Comm comm,
* PetscDM *dmf) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef DM Dmf
* cdef Comm Comm = new_Comm(comm)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 213, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 231, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 213, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 231, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 213, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 231, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":215
+ /* "PETSc/petscdmshell.pxi":233
* cdef DM Dm = subtype_DM(dm)()
* cdef DM Dmf
* cdef Comm Comm = new_Comm(comm) # <<<<<<<<<<<<<<
* Dm.dm = dm
* PetscINCREF(Dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_new_Comm(__pyx_v_comm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 215, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_new_Comm(__pyx_v_comm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_Comm = ((struct PyPetscCommObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":216
+ /* "PETSc/petscdmshell.pxi":234
* cdef DM Dmf
* cdef Comm Comm = new_Comm(comm)
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -47375,7 +50656,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":217
+ /* "PETSc/petscdmshell.pxi":235
* cdef Comm Comm = new_Comm(comm)
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -47384,19 +50665,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":218
+ /* "PETSc/petscdmshell.pxi":236
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__refine__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (refine, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__refine__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 218, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__refine__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 236, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":219
+ /* "PETSc/petscdmshell.pxi":237
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__refine__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -47418,12 +50699,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 219, __pyx_L1_error)
+ __PYX_ERR(8, 237, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":220
+ /* "PETSc/petscdmshell.pxi":238
* context = Dm.get_attr('__refine__')
* assert context is not None and type(context) is tuple
* (refine, args, kargs) = context # <<<<<<<<<<<<<<
@@ -47432,7 +50713,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -47440,9 +50721,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 220, __pyx_L1_error)
+ __PYX_ERR(8, 238, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -47456,16 +50737,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 220, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 238, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 220, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 238, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 220, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 238, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 220, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 238, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -47474,7 +50755,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 220, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 238, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -47482,7 +50763,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 220, __pyx_L1_error)
+ __PYX_ERR(8, 238, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_refine = __pyx_t_2;
@@ -47492,14 +50773,14 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":221
+ /* "PETSc/petscdmshell.pxi":239
* assert context is not None and type(context) is tuple
* (refine, args, kargs) = context
* Dmf = refine(Dm, Comm, *args, **kargs) # <<<<<<<<<<<<<<
* PetscINCREF(Dmf.obj)
* dmf[0] = Dmf.dm
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 221, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
@@ -47507,32 +50788,32 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__Pyx_INCREF(((PyObject *)__pyx_v_Comm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Comm));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Comm));
- __pyx_t_1 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 221, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 221, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 221, __pyx_L1_error)
+ __PYX_ERR(8, 239, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 221, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 221, __pyx_L1_error)
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_refine, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 221, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_refine, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 221, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 239, __pyx_L1_error)
__pyx_v_Dmf = ((struct PyPetscDMObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":222
+ /* "PETSc/petscdmshell.pxi":240
* (refine, args, kargs) = context
* Dmf = refine(Dm, Comm, *args, **kargs)
* PetscINCREF(Dmf.obj) # <<<<<<<<<<<<<<
@@ -47541,7 +50822,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmf->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":223
+ /* "PETSc/petscdmshell.pxi":241
* Dmf = refine(Dm, Comm, *args, **kargs)
* PetscINCREF(Dmf.obj)
* dmf[0] = Dmf.dm # <<<<<<<<<<<<<<
@@ -47551,7 +50832,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__pyx_t_9 = __pyx_v_Dmf->dm;
(__pyx_v_dmf[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":224
+ /* "PETSc/petscdmshell.pxi":242
* PetscINCREF(Dmf.obj)
* dmf[0] = Dmf.dm
* return 0 # <<<<<<<<<<<<<<
@@ -47561,7 +50842,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":209
+ /* "PETSc/petscdmshell.pxi":227
* return 0
*
* cdef int DMSHELL_Refine( # <<<<<<<<<<<<<<
@@ -47587,12 +50868,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine(DM __pyx_v_dm, MPI_Comm __pyx
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":226
+/* "PETSc/petscdmshell.pxi":244
* return 0
*
* cdef int DMSHELL_CreateInterpolation( # <<<<<<<<<<<<<<
@@ -47622,43 +50903,43 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
Mat __pyx_t_9;
Vec __pyx_t_10;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_CreateInterpolation", 0);
- /* "PETSc/petscdmshell.pxi":231
+ /* "PETSc/petscdmshell.pxi":249
* PetscMat *cmat,
* PetscVec *cvec) except PETSC_ERR_PYTHON with gil:
* cdef DM Dmc = subtype_DM(dmc)() # <<<<<<<<<<<<<<
* cdef DM Dmf = subtype_DM(dmf)()
* cdef Mat mat
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 231, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 231, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 231, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 249, __pyx_L1_error)
__pyx_v_Dmc = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":232
+ /* "PETSc/petscdmshell.pxi":250
* PetscVec *cvec) except PETSC_ERR_PYTHON with gil:
* cdef DM Dmc = subtype_DM(dmc)()
* cdef DM Dmf = subtype_DM(dmf)() # <<<<<<<<<<<<<<
* cdef Mat mat
* cdef Vec vec
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmf)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 232, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmf)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 250, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 232, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 250, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 232, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 250, __pyx_L1_error)
__pyx_v_Dmf = ((struct PyPetscDMObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":235
+ /* "PETSc/petscdmshell.pxi":253
* cdef Mat mat
* cdef Vec vec
* Dmc.dm = dmc # <<<<<<<<<<<<<<
@@ -47667,7 +50948,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
*/
__pyx_v_Dmc->dm = __pyx_v_dmc;
- /* "PETSc/petscdmshell.pxi":236
+ /* "PETSc/petscdmshell.pxi":254
* cdef Vec vec
* Dmc.dm = dmc
* PetscINCREF(Dmc.obj) # <<<<<<<<<<<<<<
@@ -47676,7 +50957,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmc->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":237
+ /* "PETSc/petscdmshell.pxi":255
* Dmc.dm = dmc
* PetscINCREF(Dmc.obj)
* Dmf.dm = dmf # <<<<<<<<<<<<<<
@@ -47685,7 +50966,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
*/
__pyx_v_Dmf->dm = __pyx_v_dmf;
- /* "PETSc/petscdmshell.pxi":238
+ /* "PETSc/petscdmshell.pxi":256
* PetscINCREF(Dmc.obj)
* Dmf.dm = dmf
* PetscINCREF(Dmf.obj) # <<<<<<<<<<<<<<
@@ -47694,19 +50975,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmf->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":239
+ /* "PETSc/petscdmshell.pxi":257
* Dmf.dm = dmf
* PetscINCREF(Dmf.obj)
* context = Dmc.get_attr('__create_interpolation__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (interpolation, args, kargs) = context
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dmc->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dmc), ((char *)"__create_interpolation__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 239, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dmc->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dmc), ((char *)"__create_interpolation__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 257, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":240
+ /* "PETSc/petscdmshell.pxi":258
* PetscINCREF(Dmf.obj)
* context = Dmc.get_attr('__create_interpolation__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -47728,12 +51009,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 240, __pyx_L1_error)
+ __PYX_ERR(8, 258, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":241
+ /* "PETSc/petscdmshell.pxi":259
* context = Dmc.get_attr('__create_interpolation__')
* assert context is not None and type(context) is tuple
* (interpolation, args, kargs) = context # <<<<<<<<<<<<<<
@@ -47742,7 +51023,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -47750,9 +51031,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 241, __pyx_L1_error)
+ __PYX_ERR(8, 259, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
@@ -47766,16 +51047,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 241, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 241, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 241, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 241, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
@@ -47784,7 +51065,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_GOTREF(__pyx_t_2);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 241, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 259, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -47792,7 +51073,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 241, __pyx_L1_error)
+ __PYX_ERR(8, 259, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_interpolation = __pyx_t_1;
@@ -47802,14 +51083,14 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":242
+ /* "PETSc/petscdmshell.pxi":260
* assert context is not None and type(context) is tuple
* (interpolation, args, kargs) = context
* mat, vec = interpolation(Dmc, Dmf, *args, **kargs) # <<<<<<<<<<<<<<
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dmc));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dmc));
@@ -47817,30 +51098,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_INCREF(((PyObject *)__pyx_v_Dmf));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dmf));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Dmf));
- __pyx_t_2 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 242, __pyx_L1_error)
+ __PYX_ERR(8, 260, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_2 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_2 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_2 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_2 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_interpolation, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_interpolation, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -47848,9 +51129,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 242, __pyx_L1_error)
+ __PYX_ERR(8, 260, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -47861,15 +51142,15 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_1);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 242, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
@@ -47877,7 +51158,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_GOTREF(__pyx_t_2);
index = 1; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(8, 242, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(8, 260, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L8_unpacking_done;
@@ -47885,17 +51166,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 242, __pyx_L1_error)
+ __PYX_ERR(8, 260, __pyx_L1_error)
__pyx_L8_unpacking_done:;
}
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(8, 242, __pyx_L1_error)
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(8, 242, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(8, 260, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(8, 260, __pyx_L1_error)
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":243
+ /* "PETSc/petscdmshell.pxi":261
* (interpolation, args, kargs) = context
* mat, vec = interpolation(Dmc, Dmf, *args, **kargs)
* PetscINCREF(mat.obj) # <<<<<<<<<<<<<<
@@ -47904,7 +51185,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_mat->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":244
+ /* "PETSc/petscdmshell.pxi":262
* mat, vec = interpolation(Dmc, Dmf, *args, **kargs)
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat # <<<<<<<<<<<<<<
@@ -47914,7 +51195,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__pyx_t_9 = __pyx_v_mat->mat;
(__pyx_v_cmat[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":245
+ /* "PETSc/petscdmshell.pxi":263
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat
* if vec is None: # <<<<<<<<<<<<<<
@@ -47925,7 +51206,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "PETSc/petscdmshell.pxi":246
+ /* "PETSc/petscdmshell.pxi":264
* cmat[0] = mat.mat
* if vec is None:
* cvec[0] = NULL # <<<<<<<<<<<<<<
@@ -47934,7 +51215,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
*/
(__pyx_v_cvec[0]) = NULL;
- /* "PETSc/petscdmshell.pxi":245
+ /* "PETSc/petscdmshell.pxi":263
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat
* if vec is None: # <<<<<<<<<<<<<<
@@ -47944,7 +51225,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
goto __pyx_L9;
}
- /* "PETSc/petscdmshell.pxi":248
+ /* "PETSc/petscdmshell.pxi":266
* cvec[0] = NULL
* else:
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -47954,7 +51235,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
/*else*/ {
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":249
+ /* "PETSc/petscdmshell.pxi":267
* else:
* PetscINCREF(vec.obj)
* cvec[0] = vec.vec # <<<<<<<<<<<<<<
@@ -47966,7 +51247,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
}
__pyx_L9:;
- /* "PETSc/petscdmshell.pxi":250
+ /* "PETSc/petscdmshell.pxi":268
* PetscINCREF(vec.obj)
* cvec[0] = vec.vec
* return 0 # <<<<<<<<<<<<<<
@@ -47976,7 +51257,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":226
+ /* "PETSc/petscdmshell.pxi":244
* return 0
*
* cdef int DMSHELL_CreateInterpolation( # <<<<<<<<<<<<<<
@@ -48003,12 +51284,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation(DM __pyx_v_dmc,
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":252
+/* "PETSc/petscdmshell.pxi":270
* return 0
*
* cdef int DMSHELL_CreateInjection( # <<<<<<<<<<<<<<
@@ -48036,43 +51317,43 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
PyObject *(*__pyx_t_8)(PyObject *);
Mat __pyx_t_9;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_CreateInjection", 0);
- /* "PETSc/petscdmshell.pxi":256
+ /* "PETSc/petscdmshell.pxi":274
* PetscDM dmf,
* PetscMat *cmat) except PETSC_ERR_PYTHON with gil:
* cdef DM Dmc = subtype_DM(dmc)() # <<<<<<<<<<<<<<
* cdef DM Dmf = subtype_DM(dmf)()
* cdef Mat mat
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 256, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmc)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 274, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 256, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 274, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 256, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 274, __pyx_L1_error)
__pyx_v_Dmc = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":257
+ /* "PETSc/petscdmshell.pxi":275
* PetscMat *cmat) except PETSC_ERR_PYTHON with gil:
* cdef DM Dmc = subtype_DM(dmc)()
* cdef DM Dmf = subtype_DM(dmf)() # <<<<<<<<<<<<<<
* cdef Mat mat
* Dmc.dm = dmc
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmf)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 257, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmf)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 275, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 257, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 275, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 257, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 275, __pyx_L1_error)
__pyx_v_Dmf = ((struct PyPetscDMObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":259
+ /* "PETSc/petscdmshell.pxi":277
* cdef DM Dmf = subtype_DM(dmf)()
* cdef Mat mat
* Dmc.dm = dmc # <<<<<<<<<<<<<<
@@ -48081,7 +51362,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
*/
__pyx_v_Dmc->dm = __pyx_v_dmc;
- /* "PETSc/petscdmshell.pxi":260
+ /* "PETSc/petscdmshell.pxi":278
* cdef Mat mat
* Dmc.dm = dmc
* PetscINCREF(Dmc.obj) # <<<<<<<<<<<<<<
@@ -48090,7 +51371,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmc->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":261
+ /* "PETSc/petscdmshell.pxi":279
* Dmc.dm = dmc
* PetscINCREF(Dmc.obj)
* Dmf.dm = dmf # <<<<<<<<<<<<<<
@@ -48099,7 +51380,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
*/
__pyx_v_Dmf->dm = __pyx_v_dmf;
- /* "PETSc/petscdmshell.pxi":262
+ /* "PETSc/petscdmshell.pxi":280
* PetscINCREF(Dmc.obj)
* Dmf.dm = dmf
* PetscINCREF(Dmf.obj) # <<<<<<<<<<<<<<
@@ -48108,19 +51389,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmf->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":263
+ /* "PETSc/petscdmshell.pxi":281
* Dmf.dm = dmf
* PetscINCREF(Dmf.obj)
* context = Dmc.get_attr('__create_injection__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (injection, args, kargs) = context
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dmc->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dmc), ((char *)"__create_injection__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 263, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dmc->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dmc), ((char *)"__create_injection__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 281, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_context = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/petscdmshell.pxi":264
+ /* "PETSc/petscdmshell.pxi":282
* PetscINCREF(Dmf.obj)
* context = Dmc.get_attr('__create_injection__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -48142,12 +51423,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 264, __pyx_L1_error)
+ __PYX_ERR(8, 282, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":265
+ /* "PETSc/petscdmshell.pxi":283
* context = Dmc.get_attr('__create_injection__')
* assert context is not None and type(context) is tuple
* (injection, args, kargs) = context # <<<<<<<<<<<<<<
@@ -48156,7 +51437,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -48164,9 +51445,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 265, __pyx_L1_error)
+ __PYX_ERR(8, 283, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
@@ -48180,16 +51461,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 265, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 265, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 265, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 265, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
@@ -48198,7 +51479,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__Pyx_GOTREF(__pyx_t_2);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 265, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 283, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -48206,7 +51487,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 265, __pyx_L1_error)
+ __PYX_ERR(8, 283, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_injection = __pyx_t_1;
@@ -48216,14 +51497,14 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":266
+ /* "PETSc/petscdmshell.pxi":284
* assert context is not None and type(context) is tuple
* (injection, args, kargs) = context
* mat = injection(Dmc, Dmf, *args, **kargs) # <<<<<<<<<<<<<<
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 266, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dmc));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dmc));
@@ -48231,32 +51512,32 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__Pyx_INCREF(((PyObject *)__pyx_v_Dmf));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dmf));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Dmf));
- __pyx_t_2 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 266, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 266, __pyx_L1_error)
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 266, __pyx_L1_error)
+ __PYX_ERR(8, 284, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_2 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 266, __pyx_L1_error)
+ __pyx_t_2 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
} else {
- __pyx_t_2 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 266, __pyx_L1_error)
+ __pyx_t_2 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_injection, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 266, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_injection, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(8, 266, __pyx_L1_error)
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(8, 284, __pyx_L1_error)
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":267
+ /* "PETSc/petscdmshell.pxi":285
* (injection, args, kargs) = context
* mat = injection(Dmc, Dmf, *args, **kargs)
* PetscINCREF(mat.obj) # <<<<<<<<<<<<<<
@@ -48265,7 +51546,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_mat->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":268
+ /* "PETSc/petscdmshell.pxi":286
* mat = injection(Dmc, Dmf, *args, **kargs)
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat # <<<<<<<<<<<<<<
@@ -48275,17 +51556,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__pyx_t_9 = __pyx_v_mat->mat;
(__pyx_v_cmat[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":269
+ /* "PETSc/petscdmshell.pxi":287
* PetscINCREF(mat.obj)
* cmat[0] = mat.mat
* return 0 # <<<<<<<<<<<<<<
*
- * cdef int DMSHELL_CreateFieldDecomposition(
+ * cdef int DMSHELL_CreateRestriction(
*/
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":252
+ /* "PETSc/petscdmshell.pxi":270
* return 0
*
* cdef int DMSHELL_CreateInjection( # <<<<<<<<<<<<<<
@@ -48311,12 +51592,320 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection(DM __pyx_v_dmc, DM _
__Pyx_XDECREF(__pyx_v_kargs);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscdmshell.pxi":289
+ * return 0
+ *
+ * cdef int DMSHELL_CreateRestriction( # <<<<<<<<<<<<<<
+ * PetscDM dmf,
+ * PetscDM dmc,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateRestriction(DM __pyx_v_dmf, DM __pyx_v_dmc, Mat *__pyx_v_cmat) {
+ struct PyPetscDMObject *__pyx_v_Dmf = 0;
+ struct PyPetscDMObject *__pyx_v_Dmc = 0;
+ struct PyPetscMatObject *__pyx_v_mat = 0;
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_v_restriction = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ PyObject *__pyx_t_2 = NULL;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ int __pyx_t_5;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ Mat __pyx_t_9;
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("DMSHELL_CreateRestriction", 0);
+
+ /* "PETSc/petscdmshell.pxi":293
+ * PetscDM dmc,
+ * PetscMat *cmat) except PETSC_ERR_PYTHON with gil:
+ * cdef DM Dmf = subtype_DM(dmf)() # <<<<<<<<<<<<<<
+ * cdef DM Dmc = subtype_DM(dmc)()
+ * cdef Mat mat
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmf)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 293, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 293, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 293, __pyx_L1_error)
+ __pyx_v_Dmf = ((struct PyPetscDMObject *)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/petscdmshell.pxi":294
+ * PetscMat *cmat) except PETSC_ERR_PYTHON with gil:
+ * cdef DM Dmf = subtype_DM(dmf)()
+ * cdef DM Dmc = subtype_DM(dmc)() # <<<<<<<<<<<<<<
+ * cdef Mat mat
+ * Dmf.dm = dmf
+ */
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dmc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 294, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 294, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 294, __pyx_L1_error)
+ __pyx_v_Dmc = ((struct PyPetscDMObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscdmshell.pxi":296
+ * cdef DM Dmc = subtype_DM(dmc)()
+ * cdef Mat mat
+ * Dmf.dm = dmf # <<<<<<<<<<<<<<
+ * PetscINCREF(Dmf.obj)
+ * Dmc.dm = dmc
+ */
+ __pyx_v_Dmf->dm = __pyx_v_dmf;
+
+ /* "PETSc/petscdmshell.pxi":297
+ * cdef Mat mat
+ * Dmf.dm = dmf
+ * PetscINCREF(Dmf.obj) # <<<<<<<<<<<<<<
+ * Dmc.dm = dmc
+ * PetscINCREF(Dmc.obj)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmf->__pyx_base.obj);
+
+ /* "PETSc/petscdmshell.pxi":298
+ * Dmf.dm = dmf
+ * PetscINCREF(Dmf.obj)
+ * Dmc.dm = dmc # <<<<<<<<<<<<<<
+ * PetscINCREF(Dmc.obj)
+ * context = Dmf.get_attr('__create_restriction__')
+ */
+ __pyx_v_Dmc->dm = __pyx_v_dmc;
+
+ /* "PETSc/petscdmshell.pxi":299
+ * PetscINCREF(Dmf.obj)
+ * Dmc.dm = dmc
+ * PetscINCREF(Dmc.obj) # <<<<<<<<<<<<<<
+ * context = Dmf.get_attr('__create_restriction__')
+ * assert context is not None and type(context) is tuple
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dmc->__pyx_base.obj);
+
+ /* "PETSc/petscdmshell.pxi":300
+ * Dmc.dm = dmc
+ * PetscINCREF(Dmc.obj)
+ * context = Dmf.get_attr('__create_restriction__') # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple
+ * (restriction, args, kargs) = context
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dmf->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dmf), ((char *)"__create_restriction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 300, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscdmshell.pxi":301
+ * PetscINCREF(Dmc.obj)
+ * context = Dmf.get_attr('__create_restriction__')
+ * assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
+ * (restriction, args, kargs) = context
+ * mat = restriction(Dmf, Dmc, *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = (__pyx_v_context != Py_None);
+ __pyx_t_5 = (__pyx_t_4 != 0);
+ if (__pyx_t_5) {
+ } else {
+ __pyx_t_3 = __pyx_t_5;
+ goto __pyx_L3_bool_binop_done;
+ }
+ __pyx_t_5 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_4 = (__pyx_t_5 != 0);
+ __pyx_t_3 = __pyx_t_4;
+ __pyx_L3_bool_binop_done:;
+ if (unlikely(!__pyx_t_3)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(8, 301, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscdmshell.pxi":302
+ * context = Dmf.get_attr('__create_restriction__')
+ * assert context is not None and type(context) is tuple
+ * (restriction, args, kargs) = context # <<<<<<<<<<<<<<
+ * mat = restriction(Dmf, Dmc, *args, **kargs)
+ * PetscINCREF(mat.obj)
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(8, 302, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 302, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 302, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 302, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 302, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_2);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 302, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L6_unpacking_done;
+ __pyx_L5_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(8, 302, __pyx_L1_error)
+ __pyx_L6_unpacking_done:;
+ }
+ __pyx_v_restriction = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_args = __pyx_t_2;
+ __pyx_t_2 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscdmshell.pxi":303
+ * assert context is not None and type(context) is tuple
+ * (restriction, args, kargs) = context
+ * mat = restriction(Dmf, Dmc, *args, **kargs) # <<<<<<<<<<<<<<
+ * PetscINCREF(mat.obj)
+ * cmat[0] = mat.mat
+ */
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 303, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Dmf));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Dmf));
+ PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Dmf));
+ __Pyx_INCREF(((PyObject *)__pyx_v_Dmc));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Dmc));
+ PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_Dmc));
+ __pyx_t_2 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 303, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 303, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(8, 303, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_2 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 303, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ } else {
+ __pyx_t_2 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 303, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ }
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_restriction, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 303, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(8, 303, __pyx_L1_error)
+ __pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_6);
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscdmshell.pxi":304
+ * (restriction, args, kargs) = context
+ * mat = restriction(Dmf, Dmc, *args, **kargs)
+ * PetscINCREF(mat.obj) # <<<<<<<<<<<<<<
+ * cmat[0] = mat.mat
+ * return 0
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_mat->__pyx_base.obj);
+
+ /* "PETSc/petscdmshell.pxi":305
+ * mat = restriction(Dmf, Dmc, *args, **kargs)
+ * PetscINCREF(mat.obj)
+ * cmat[0] = mat.mat # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_9 = __pyx_v_mat->mat;
+ (__pyx_v_cmat[0]) = __pyx_t_9;
+
+ /* "PETSc/petscdmshell.pxi":306
+ * PetscINCREF(mat.obj)
+ * cmat[0] = mat.mat
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * cdef int DMSHELL_CreateFieldDecomposition(
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscdmshell.pxi":289
+ * return 0
+ *
+ * cdef int DMSHELL_CreateRestriction( # <<<<<<<<<<<<<<
+ * PetscDM dmf,
+ * PetscDM dmc,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMSHELL_CreateRestriction", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Dmf);
+ __Pyx_XDECREF((PyObject *)__pyx_v_Dmc);
+ __Pyx_XDECREF((PyObject *)__pyx_v_mat);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_restriction);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":271
+/* "PETSc/petscdmshell.pxi":308
* return 0
*
* cdef int DMSHELL_CreateFieldDecomposition( # <<<<<<<<<<<<<<
@@ -48352,27 +51941,27 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
IS __pyx_t_13;
DM __pyx_t_14;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_CreateFieldDecomposition", 0);
- /* "PETSc/petscdmshell.pxi":277
+ /* "PETSc/petscdmshell.pxi":314
* PetscIS **islist,
* PetscDM **dmlist) except PETSC_ERR_PYTHON with gil:
* cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
* cdef int i
* cdef const_char *cname = NULL
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 277, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 277, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 277, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 314, __pyx_L1_error)
__pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":279
+ /* "PETSc/petscdmshell.pxi":316
* cdef DM Dm = subtype_DM(dm)()
* cdef int i
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -48381,7 +51970,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
__pyx_v_cname = NULL;
- /* "PETSc/petscdmshell.pxi":280
+ /* "PETSc/petscdmshell.pxi":317
* cdef int i
* cdef const_char *cname = NULL
* Dm.dm = dm # <<<<<<<<<<<<<<
@@ -48390,7 +51979,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
__pyx_v_Dm->dm = __pyx_v_dm;
- /* "PETSc/petscdmshell.pxi":281
+ /* "PETSc/petscdmshell.pxi":318
* cdef const_char *cname = NULL
* Dm.dm = dm
* PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
@@ -48399,19 +51988,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":282
+ /* "PETSc/petscdmshell.pxi":319
* Dm.dm = dm
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_field_decomp__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (decomp, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_field_decomp__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 282, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_field_decomp__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 319, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":283
+ /* "PETSc/petscdmshell.pxi":320
* PetscINCREF(Dm.obj)
* context = Dm.get_attr('__create_field_decomp__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -48433,12 +52022,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 283, __pyx_L1_error)
+ __PYX_ERR(8, 320, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":284
+ /* "PETSc/petscdmshell.pxi":321
* context = Dm.get_attr('__create_field_decomp__')
* assert context is not None and type(context) is tuple
* (decomp, args, kargs) = context # <<<<<<<<<<<<<<
@@ -48447,7 +52036,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -48455,9 +52044,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 284, __pyx_L1_error)
+ __PYX_ERR(8, 321, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -48471,16 +52060,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 284, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 321, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 284, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 321, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 284, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 321, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 284, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 321, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -48489,7 +52078,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 284, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 321, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -48497,7 +52086,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 284, __pyx_L1_error)
+ __PYX_ERR(8, 321, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_decomp = __pyx_t_2;
@@ -48507,42 +52096,42 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":285
+ /* "PETSc/petscdmshell.pxi":322
* assert context is not None and type(context) is tuple
* (decomp, args, kargs) = context
* names, ises, dms = decomp(Dm, *args, **kargs) # <<<<<<<<<<<<<<
*
* if clen != NULL:
*/
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_Dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Dm));
- __pyx_t_1 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 285, __pyx_L1_error)
+ __PYX_ERR(8, 322, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_decomp, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_decomp, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -48550,9 +52139,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 285, __pyx_L1_error)
+ __PYX_ERR(8, 322, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
@@ -48566,17 +52155,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_7);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_7 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_9 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 285, __pyx_L1_error)
+ __pyx_t_9 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 322, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_8 = Py_TYPE(__pyx_t_9)->tp_iternext;
@@ -48586,7 +52175,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__Pyx_GOTREF(__pyx_t_2);
index = 2; __pyx_t_7 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L7_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_9), 3) < 0) __PYX_ERR(8, 285, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_9), 3) < 0) __PYX_ERR(8, 322, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
goto __pyx_L8_unpacking_done;
@@ -48594,7 +52183,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 285, __pyx_L1_error)
+ __PYX_ERR(8, 322, __pyx_L1_error)
__pyx_L8_unpacking_done:;
}
__pyx_v_names = __pyx_t_1;
@@ -48604,7 +52193,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_v_dms = __pyx_t_7;
__pyx_t_7 = 0;
- /* "PETSc/petscdmshell.pxi":287
+ /* "PETSc/petscdmshell.pxi":324
* names, ises, dms = decomp(Dm, *args, **kargs)
*
* if clen != NULL: # <<<<<<<<<<<<<<
@@ -48614,7 +52203,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_t_3 = ((__pyx_v_clen != NULL) != 0);
if (__pyx_t_3) {
- /* "PETSc/petscdmshell.pxi":288
+ /* "PETSc/petscdmshell.pxi":325
*
* if clen != NULL:
* if names is not None: # <<<<<<<<<<<<<<
@@ -48625,17 +52214,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "PETSc/petscdmshell.pxi":289
+ /* "PETSc/petscdmshell.pxi":326
* if clen != NULL:
* if names is not None:
* clen[0] = <PetscInt>len(names) # <<<<<<<<<<<<<<
* elif ises is not None:
* clen[0] = <PetscInt>len(ises)
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 289, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 326, __pyx_L1_error)
(__pyx_v_clen[0]) = ((PetscInt)__pyx_t_10);
- /* "PETSc/petscdmshell.pxi":288
+ /* "PETSc/petscdmshell.pxi":325
*
* if clen != NULL:
* if names is not None: # <<<<<<<<<<<<<<
@@ -48645,7 +52234,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
goto __pyx_L10;
}
- /* "PETSc/petscdmshell.pxi":290
+ /* "PETSc/petscdmshell.pxi":327
* if names is not None:
* clen[0] = <PetscInt>len(names)
* elif ises is not None: # <<<<<<<<<<<<<<
@@ -48656,17 +52245,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_t_3 = (__pyx_t_4 != 0);
if (__pyx_t_3) {
- /* "PETSc/petscdmshell.pxi":291
+ /* "PETSc/petscdmshell.pxi":328
* clen[0] = <PetscInt>len(names)
* elif ises is not None:
* clen[0] = <PetscInt>len(ises) # <<<<<<<<<<<<<<
* elif dms is not None:
* clen[0] = <PetscInt>len(dms)
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_ises); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 291, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_ises); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 328, __pyx_L1_error)
(__pyx_v_clen[0]) = ((PetscInt)__pyx_t_10);
- /* "PETSc/petscdmshell.pxi":290
+ /* "PETSc/petscdmshell.pxi":327
* if names is not None:
* clen[0] = <PetscInt>len(names)
* elif ises is not None: # <<<<<<<<<<<<<<
@@ -48676,7 +52265,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
goto __pyx_L10;
}
- /* "PETSc/petscdmshell.pxi":292
+ /* "PETSc/petscdmshell.pxi":329
* elif ises is not None:
* clen[0] = <PetscInt>len(ises)
* elif dms is not None: # <<<<<<<<<<<<<<
@@ -48687,17 +52276,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "PETSc/petscdmshell.pxi":293
+ /* "PETSc/petscdmshell.pxi":330
* clen[0] = <PetscInt>len(ises)
* elif dms is not None:
* clen[0] = <PetscInt>len(dms) # <<<<<<<<<<<<<<
* else:
* clen[0] = 0
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 293, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 330, __pyx_L1_error)
(__pyx_v_clen[0]) = ((PetscInt)__pyx_t_10);
- /* "PETSc/petscdmshell.pxi":292
+ /* "PETSc/petscdmshell.pxi":329
* elif ises is not None:
* clen[0] = <PetscInt>len(ises)
* elif dms is not None: # <<<<<<<<<<<<<<
@@ -48707,7 +52296,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
goto __pyx_L10;
}
- /* "PETSc/petscdmshell.pxi":295
+ /* "PETSc/petscdmshell.pxi":332
* clen[0] = <PetscInt>len(dms)
* else:
* clen[0] = 0 # <<<<<<<<<<<<<<
@@ -48719,7 +52308,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
}
__pyx_L10:;
- /* "PETSc/petscdmshell.pxi":287
+ /* "PETSc/petscdmshell.pxi":324
* names, ises, dms = decomp(Dm, *args, **kargs)
*
* if clen != NULL: # <<<<<<<<<<<<<<
@@ -48728,7 +52317,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
}
- /* "PETSc/petscdmshell.pxi":297
+ /* "PETSc/petscdmshell.pxi":334
* clen[0] = 0
*
* if namelist != NULL and names is not None: # <<<<<<<<<<<<<<
@@ -48747,53 +52336,53 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_L12_bool_binop_done:;
if (__pyx_t_4) {
- /* "PETSc/petscdmshell.pxi":298
+ /* "PETSc/petscdmshell.pxi":335
*
* if namelist != NULL and names is not None:
* CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) ) # <<<<<<<<<<<<<<
* for i in range(len(names)):
* names[i] = str2bytes(names[i], &cname)
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 298, __pyx_L1_error)
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_10 * (sizeof(char **))), __pyx_v_namelist)); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(8, 298, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 335, __pyx_L1_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_10 * (sizeof(char **))), __pyx_v_namelist)); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(8, 335, __pyx_L1_error)
- /* "PETSc/petscdmshell.pxi":299
+ /* "PETSc/petscdmshell.pxi":336
* if namelist != NULL and names is not None:
* CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) )
* for i in range(len(names)): # <<<<<<<<<<<<<<
* names[i] = str2bytes(names[i], &cname)
* CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 299, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 336, __pyx_L1_error)
for (__pyx_t_11 = 0; __pyx_t_11 < __pyx_t_10; __pyx_t_11+=1) {
__pyx_v_i = __pyx_t_11;
- /* "PETSc/petscdmshell.pxi":300
+ /* "PETSc/petscdmshell.pxi":337
* CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) )
* for i in range(len(names)):
* names[i] = str2bytes(names[i], &cname) # <<<<<<<<<<<<<<
* CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
*
*/
- __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_names, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 300, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_names, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 337, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_t_6, (&__pyx_v_cname)); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 300, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_t_6, (&__pyx_v_cname)); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 337, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (unlikely(__Pyx_SetItemInt(__pyx_v_names, __pyx_v_i, __pyx_t_7, int, 1, __Pyx_PyInt_From_int, 0, 1, 1) < 0)) __PYX_ERR(8, 300, __pyx_L1_error)
+ if (unlikely(__Pyx_SetItemInt(__pyx_v_names, __pyx_v_i, __pyx_t_7, int, 1, __Pyx_PyInt_From_int, 0, 1, 1) < 0)) __PYX_ERR(8, 337, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/petscdmshell.pxi":301
+ /* "PETSc/petscdmshell.pxi":338
* for i in range(len(names)):
* names[i] = str2bytes(names[i], &cname)
* CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) ) # <<<<<<<<<<<<<<
*
* if islist != NULL and ises is not None:
*/
- __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscStrallocpy(__pyx_v_cname, (&((__pyx_v_namelist[0])[__pyx_v_i])))); if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(8, 301, __pyx_L1_error)
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscStrallocpy(__pyx_v_cname, (&((__pyx_v_namelist[0])[__pyx_v_i])))); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(8, 338, __pyx_L1_error)
}
- /* "PETSc/petscdmshell.pxi":297
+ /* "PETSc/petscdmshell.pxi":334
* clen[0] = 0
*
* if namelist != NULL and names is not None: # <<<<<<<<<<<<<<
@@ -48802,7 +52391,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
}
- /* "PETSc/petscdmshell.pxi":303
+ /* "PETSc/petscdmshell.pxi":340
* CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
*
* if islist != NULL and ises is not None: # <<<<<<<<<<<<<<
@@ -48821,56 +52410,56 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_L17_bool_binop_done:;
if (__pyx_t_4) {
- /* "PETSc/petscdmshell.pxi":304
+ /* "PETSc/petscdmshell.pxi":341
*
* if islist != NULL and ises is not None:
* CHKERR( PetscMalloc(len(ises)*sizeof(PetscIS), islist) ) # <<<<<<<<<<<<<<
* for i in range(len(ises)):
* islist[0][i] = (<IS?>ises[i]).iset
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_ises); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 304, __pyx_L1_error)
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_10 * (sizeof(IS))), __pyx_v_islist)); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(8, 304, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_ises); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 341, __pyx_L1_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_10 * (sizeof(IS))), __pyx_v_islist)); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(8, 341, __pyx_L1_error)
- /* "PETSc/petscdmshell.pxi":305
+ /* "PETSc/petscdmshell.pxi":342
* if islist != NULL and ises is not None:
* CHKERR( PetscMalloc(len(ises)*sizeof(PetscIS), islist) )
* for i in range(len(ises)): # <<<<<<<<<<<<<<
* islist[0][i] = (<IS?>ises[i]).iset
* PetscINCREF((<IS?>ises[i]).obj)
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_ises); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 305, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_ises); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 342, __pyx_L1_error)
for (__pyx_t_11 = 0; __pyx_t_11 < __pyx_t_10; __pyx_t_11+=1) {
__pyx_v_i = __pyx_t_11;
- /* "PETSc/petscdmshell.pxi":306
+ /* "PETSc/petscdmshell.pxi":343
* CHKERR( PetscMalloc(len(ises)*sizeof(PetscIS), islist) )
* for i in range(len(ises)):
* islist[0][i] = (<IS?>ises[i]).iset # <<<<<<<<<<<<<<
* PetscINCREF((<IS?>ises[i]).obj)
*
*/
- __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_ises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 306, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_ises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 343, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 306, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 343, __pyx_L1_error)
__pyx_t_13 = ((struct PyPetscISObject *)__pyx_t_7)->iset;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
((__pyx_v_islist[0])[__pyx_v_i]) = __pyx_t_13;
- /* "PETSc/petscdmshell.pxi":307
+ /* "PETSc/petscdmshell.pxi":344
* for i in range(len(ises)):
* islist[0][i] = (<IS?>ises[i]).iset
* PetscINCREF((<IS?>ises[i]).obj) # <<<<<<<<<<<<<<
*
* if dmlist != NULL and dms is not None:
*/
- __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_ises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 307, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_ises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 344, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 307, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 344, __pyx_L1_error)
__pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscISObject *)__pyx_t_7)->__pyx_base.obj);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- /* "PETSc/petscdmshell.pxi":303
+ /* "PETSc/petscdmshell.pxi":340
* CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
*
* if islist != NULL and ises is not None: # <<<<<<<<<<<<<<
@@ -48879,7 +52468,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
}
- /* "PETSc/petscdmshell.pxi":309
+ /* "PETSc/petscdmshell.pxi":346
* PetscINCREF((<IS?>ises[i]).obj)
*
* if dmlist != NULL and dms is not None: # <<<<<<<<<<<<<<
@@ -48898,56 +52487,56 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__pyx_L22_bool_binop_done:;
if (__pyx_t_4) {
- /* "PETSc/petscdmshell.pxi":310
+ /* "PETSc/petscdmshell.pxi":347
*
* if dmlist != NULL and dms is not None:
* CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) ) # <<<<<<<<<<<<<<
* for i in range(len(dms)):
* dmlist[0][i] = (<DM?>dms[i]).dm
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 310, __pyx_L1_error)
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_10 * (sizeof(DM))), __pyx_v_dmlist)); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(8, 310, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 347, __pyx_L1_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_10 * (sizeof(DM))), __pyx_v_dmlist)); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(8, 347, __pyx_L1_error)
- /* "PETSc/petscdmshell.pxi":311
+ /* "PETSc/petscdmshell.pxi":348
* if dmlist != NULL and dms is not None:
* CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) )
* for i in range(len(dms)): # <<<<<<<<<<<<<<
* dmlist[0][i] = (<DM?>dms[i]).dm
* PetscINCREF((<DM?>dms[i]).obj)
*/
- __pyx_t_10 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(8, 311, __pyx_L1_error)
+ __pyx_t_10 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_10 == ((Py_ssize_t)-1))) __PYX_ERR(8, 348, __pyx_L1_error)
for (__pyx_t_11 = 0; __pyx_t_11 < __pyx_t_10; __pyx_t_11+=1) {
__pyx_v_i = __pyx_t_11;
- /* "PETSc/petscdmshell.pxi":312
+ /* "PETSc/petscdmshell.pxi":349
* CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) )
* for i in range(len(dms)):
* dmlist[0][i] = (<DM?>dms[i]).dm # <<<<<<<<<<<<<<
* PetscINCREF((<DM?>dms[i]).obj)
* return 0
*/
- __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_dms, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 312, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_dms, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 349, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_DM)))) __PYX_ERR(8, 312, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_DM)))) __PYX_ERR(8, 349, __pyx_L1_error)
__pyx_t_14 = ((struct PyPetscDMObject *)__pyx_t_7)->dm;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
((__pyx_v_dmlist[0])[__pyx_v_i]) = __pyx_t_14;
- /* "PETSc/petscdmshell.pxi":313
+ /* "PETSc/petscdmshell.pxi":350
* for i in range(len(dms)):
* dmlist[0][i] = (<DM?>dms[i]).dm
* PetscINCREF((<DM?>dms[i]).obj) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_dms, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 313, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_dms, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 350, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_DM)))) __PYX_ERR(8, 313, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_8petsc4py_5PETSc_DM)))) __PYX_ERR(8, 350, __pyx_L1_error)
__pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscDMObject *)__pyx_t_7)->__pyx_base.obj);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- /* "PETSc/petscdmshell.pxi":309
+ /* "PETSc/petscdmshell.pxi":346
* PetscINCREF((<IS?>ises[i]).obj)
*
* if dmlist != NULL and dms is not None: # <<<<<<<<<<<<<<
@@ -48956,17 +52545,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
*/
}
- /* "PETSc/petscdmshell.pxi":314
+ /* "PETSc/petscdmshell.pxi":351
* dmlist[0][i] = (<DM?>dms[i]).dm
* PetscINCREF((<DM?>dms[i]).obj)
* return 0 # <<<<<<<<<<<<<<
*
- * cdef int DMSHELL_CreateSubDM(
+ * cdef int DMSHELL_CreateDomainDecomposition(
*/
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/petscdmshell.pxi":271
+ /* "PETSc/petscdmshell.pxi":308
* return 0
*
* cdef int DMSHELL_CreateFieldDecomposition( # <<<<<<<<<<<<<<
@@ -48994,12 +52583,1400 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition(DM __pyx_v_
__Pyx_XDECREF(__pyx_v_dms);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscdmshell.pxi":353
+ * return 0
+ *
+ * cdef int DMSHELL_CreateDomainDecomposition( # <<<<<<<<<<<<<<
+ * PetscDM dm,
+ * PetscInt *clen,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateDomainDecomposition(DM __pyx_v_dm, PetscInt *__pyx_v_clen, char ***__pyx_v_namelist, IS **__pyx_v_innerislist, IS **__pyx_v_outerislist, DM **__pyx_v_dmlist) {
+ struct PyPetscDMObject *__pyx_v_Dm = 0;
+ int __pyx_v_i;
+ const char *__pyx_v_cname;
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_v_decomp = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ PyObject *__pyx_v_names = NULL;
+ PyObject *__pyx_v_innerises = NULL;
+ PyObject *__pyx_v_outerises = NULL;
+ PyObject *__pyx_v_dms = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ PyObject *__pyx_t_2 = NULL;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ int __pyx_t_5;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *(*__pyx_t_8)(PyObject *);
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *__pyx_t_10 = NULL;
+ Py_ssize_t __pyx_t_11;
+ int __pyx_t_12;
+ int __pyx_t_13;
+ IS __pyx_t_14;
+ DM __pyx_t_15;
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("DMSHELL_CreateDomainDecomposition", 0);
+
+ /* "PETSc/petscdmshell.pxi":360
+ * PetscIS **outerislist,
+ * PetscDM **dmlist) except PETSC_ERR_PYTHON with gil:
+ * cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
+ * cdef int i
+ * cdef const_char *cname = NULL
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 360, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 360, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 360, __pyx_L1_error)
+ __pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/petscdmshell.pxi":362
+ * cdef DM Dm = subtype_DM(dm)()
+ * cdef int i
+ * cdef const_char *cname = NULL # <<<<<<<<<<<<<<
+ * Dm.dm = dm
+ * PetscINCREF(Dm.obj)
+ */
+ __pyx_v_cname = NULL;
+
+ /* "PETSc/petscdmshell.pxi":363
+ * cdef int i
+ * cdef const_char *cname = NULL
+ * Dm.dm = dm # <<<<<<<<<<<<<<
+ * PetscINCREF(Dm.obj)
+ * context = Dm.get_attr('__create_domain_decomp__')
+ */
+ __pyx_v_Dm->dm = __pyx_v_dm;
+
+ /* "PETSc/petscdmshell.pxi":364
+ * cdef const_char *cname = NULL
+ * Dm.dm = dm
+ * PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
+ * context = Dm.get_attr('__create_domain_decomp__')
+ * assert context is not None and type(context) is tuple
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
+
+ /* "PETSc/petscdmshell.pxi":365
+ * Dm.dm = dm
+ * PetscINCREF(Dm.obj)
+ * context = Dm.get_attr('__create_domain_decomp__') # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple
+ * (decomp, args, kargs) = context
+ */
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_domain_decomp__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 365, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_v_context = __pyx_t_2;
+ __pyx_t_2 = 0;
+
+ /* "PETSc/petscdmshell.pxi":366
+ * PetscINCREF(Dm.obj)
+ * context = Dm.get_attr('__create_domain_decomp__')
+ * assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
+ * (decomp, args, kargs) = context
+ * names, innerises, outerises, dms = decomp(Dm, *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = (__pyx_v_context != Py_None);
+ __pyx_t_5 = (__pyx_t_4 != 0);
+ if (__pyx_t_5) {
+ } else {
+ __pyx_t_3 = __pyx_t_5;
+ goto __pyx_L3_bool_binop_done;
+ }
+ __pyx_t_5 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_4 = (__pyx_t_5 != 0);
+ __pyx_t_3 = __pyx_t_4;
+ __pyx_L3_bool_binop_done:;
+ if (unlikely(!__pyx_t_3)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(8, 366, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscdmshell.pxi":367
+ * context = Dm.get_attr('__create_domain_decomp__')
+ * assert context is not None and type(context) is tuple
+ * (decomp, args, kargs) = context # <<<<<<<<<<<<<<
+ * names, innerises, outerises, dms = decomp(Dm, *args, **kargs)
+ *
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(8, 367, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_6 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_6);
+ #else
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 367, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 367, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 367, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 367, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
+ index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_2);
+ index = 1; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 367, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ goto __pyx_L6_unpacking_done;
+ __pyx_L5_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(8, 367, __pyx_L1_error)
+ __pyx_L6_unpacking_done:;
+ }
+ __pyx_v_decomp = __pyx_t_2;
+ __pyx_t_2 = 0;
+ __pyx_v_args = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_kargs = __pyx_t_6;
+ __pyx_t_6 = 0;
+
+ /* "PETSc/petscdmshell.pxi":368
+ * assert context is not None and type(context) is tuple
+ * (decomp, args, kargs) = context
+ * names, innerises, outerises, dms = decomp(Dm, *args, **kargs) # <<<<<<<<<<<<<<
+ *
+ * if clen != NULL:
+ */
+ __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Dm));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
+ PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_Dm));
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(8, 368, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ } else {
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ }
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_decomp, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
+ PyObject* sequence = __pyx_t_6;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 4)) {
+ if (size > 4) __Pyx_RaiseTooManyValuesError(4);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(8, 368, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_7 = PyTuple_GET_ITEM(sequence, 2);
+ __pyx_t_9 = PyTuple_GET_ITEM(sequence, 3);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_7 = PyList_GET_ITEM(sequence, 2);
+ __pyx_t_9 = PyList_GET_ITEM(sequence, 3);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_7);
+ __Pyx_INCREF(__pyx_t_9);
+ #else
+ {
+ Py_ssize_t i;
+ PyObject** temps[4] = {&__pyx_t_1,&__pyx_t_2,&__pyx_t_7,&__pyx_t_9};
+ for (i=0; i < 4; i++) {
+ PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(item);
+ *(temps[i]) = item;
+ }
+ }
+ #endif
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ } else {
+ Py_ssize_t index = -1;
+ PyObject** temps[4] = {&__pyx_t_1,&__pyx_t_2,&__pyx_t_7,&__pyx_t_9};
+ __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(8, 368, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_10);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __pyx_t_8 = Py_TYPE(__pyx_t_10)->tp_iternext;
+ for (index=0; index < 4; index++) {
+ PyObject* item = __pyx_t_8(__pyx_t_10); if (unlikely(!item)) goto __pyx_L7_unpacking_failed;
+ __Pyx_GOTREF(item);
+ *(temps[index]) = item;
+ }
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_10), 4) < 0) __PYX_ERR(8, 368, __pyx_L1_error)
+ __pyx_t_8 = NULL;
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ goto __pyx_L8_unpacking_done;
+ __pyx_L7_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __pyx_t_8 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(8, 368, __pyx_L1_error)
+ __pyx_L8_unpacking_done:;
+ }
+ __pyx_v_names = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_innerises = __pyx_t_2;
+ __pyx_t_2 = 0;
+ __pyx_v_outerises = __pyx_t_7;
+ __pyx_t_7 = 0;
+ __pyx_v_dms = __pyx_t_9;
+ __pyx_t_9 = 0;
+
+ /* "PETSc/petscdmshell.pxi":370
+ * names, innerises, outerises, dms = decomp(Dm, *args, **kargs)
+ *
+ * if clen != NULL: # <<<<<<<<<<<<<<
+ * if names is not None:
+ * clen[0] = <PetscInt>len(names)
+ */
+ __pyx_t_3 = ((__pyx_v_clen != NULL) != 0);
+ if (__pyx_t_3) {
+
+ /* "PETSc/petscdmshell.pxi":371
+ *
+ * if clen != NULL:
+ * if names is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(names)
+ * elif innerises is not None:
+ */
+ __pyx_t_3 = (__pyx_v_names != Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+
+ /* "PETSc/petscdmshell.pxi":372
+ * if clen != NULL:
+ * if names is not None:
+ * clen[0] = <PetscInt>len(names) # <<<<<<<<<<<<<<
+ * elif innerises is not None:
+ * clen[0] = <PetscInt>len(innerises)
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 372, __pyx_L1_error)
+ (__pyx_v_clen[0]) = ((PetscInt)__pyx_t_11);
+
+ /* "PETSc/petscdmshell.pxi":371
+ *
+ * if clen != NULL:
+ * if names is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(names)
+ * elif innerises is not None:
+ */
+ goto __pyx_L10;
+ }
+
+ /* "PETSc/petscdmshell.pxi":373
+ * if names is not None:
+ * clen[0] = <PetscInt>len(names)
+ * elif innerises is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(innerises)
+ * elif outerises is not None:
+ */
+ __pyx_t_4 = (__pyx_v_innerises != Py_None);
+ __pyx_t_3 = (__pyx_t_4 != 0);
+ if (__pyx_t_3) {
+
+ /* "PETSc/petscdmshell.pxi":374
+ * clen[0] = <PetscInt>len(names)
+ * elif innerises is not None:
+ * clen[0] = <PetscInt>len(innerises) # <<<<<<<<<<<<<<
+ * elif outerises is not None:
+ * clen[0] = <PetscInt>len(outerises)
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_innerises); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 374, __pyx_L1_error)
+ (__pyx_v_clen[0]) = ((PetscInt)__pyx_t_11);
+
+ /* "PETSc/petscdmshell.pxi":373
+ * if names is not None:
+ * clen[0] = <PetscInt>len(names)
+ * elif innerises is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(innerises)
+ * elif outerises is not None:
+ */
+ goto __pyx_L10;
+ }
+
+ /* "PETSc/petscdmshell.pxi":375
+ * elif innerises is not None:
+ * clen[0] = <PetscInt>len(innerises)
+ * elif outerises is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(outerises)
+ * elif dms is not None:
+ */
+ __pyx_t_3 = (__pyx_v_outerises != Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+
+ /* "PETSc/petscdmshell.pxi":376
+ * clen[0] = <PetscInt>len(innerises)
+ * elif outerises is not None:
+ * clen[0] = <PetscInt>len(outerises) # <<<<<<<<<<<<<<
+ * elif dms is not None:
+ * clen[0] = <PetscInt>len(dms)
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_outerises); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 376, __pyx_L1_error)
+ (__pyx_v_clen[0]) = ((PetscInt)__pyx_t_11);
+
+ /* "PETSc/petscdmshell.pxi":375
+ * elif innerises is not None:
+ * clen[0] = <PetscInt>len(innerises)
+ * elif outerises is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(outerises)
+ * elif dms is not None:
+ */
+ goto __pyx_L10;
+ }
+
+ /* "PETSc/petscdmshell.pxi":377
+ * elif outerises is not None:
+ * clen[0] = <PetscInt>len(outerises)
+ * elif dms is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(dms)
+ * else:
+ */
+ __pyx_t_4 = (__pyx_v_dms != Py_None);
+ __pyx_t_3 = (__pyx_t_4 != 0);
+ if (__pyx_t_3) {
+
+ /* "PETSc/petscdmshell.pxi":378
+ * clen[0] = <PetscInt>len(outerises)
+ * elif dms is not None:
+ * clen[0] = <PetscInt>len(dms) # <<<<<<<<<<<<<<
+ * else:
+ * clen[0] = 0
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 378, __pyx_L1_error)
+ (__pyx_v_clen[0]) = ((PetscInt)__pyx_t_11);
+
+ /* "PETSc/petscdmshell.pxi":377
+ * elif outerises is not None:
+ * clen[0] = <PetscInt>len(outerises)
+ * elif dms is not None: # <<<<<<<<<<<<<<
+ * clen[0] = <PetscInt>len(dms)
+ * else:
+ */
+ goto __pyx_L10;
+ }
+
+ /* "PETSc/petscdmshell.pxi":380
+ * clen[0] = <PetscInt>len(dms)
+ * else:
+ * clen[0] = 0 # <<<<<<<<<<<<<<
+ *
+ * if namelist != NULL and names is not None:
+ */
+ /*else*/ {
+ (__pyx_v_clen[0]) = 0;
+ }
+ __pyx_L10:;
+
+ /* "PETSc/petscdmshell.pxi":370
+ * names, innerises, outerises, dms = decomp(Dm, *args, **kargs)
+ *
+ * if clen != NULL: # <<<<<<<<<<<<<<
+ * if names is not None:
+ * clen[0] = <PetscInt>len(names)
+ */
+ }
+
+ /* "PETSc/petscdmshell.pxi":382
+ * clen[0] = 0
+ *
+ * if namelist != NULL and names is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) )
+ * for i in range(len(names)):
+ */
+ __pyx_t_4 = ((__pyx_v_namelist != NULL) != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_3 = __pyx_t_4;
+ goto __pyx_L12_bool_binop_done;
+ }
+ __pyx_t_4 = (__pyx_v_names != Py_None);
+ __pyx_t_5 = (__pyx_t_4 != 0);
+ __pyx_t_3 = __pyx_t_5;
+ __pyx_L12_bool_binop_done:;
+ if (__pyx_t_3) {
+
+ /* "PETSc/petscdmshell.pxi":383
+ *
+ * if namelist != NULL and names is not None:
+ * CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) ) # <<<<<<<<<<<<<<
+ * for i in range(len(names)):
+ * names[i] = str2bytes(names[i], &cname)
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 383, __pyx_L1_error)
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_11 * (sizeof(char **))), __pyx_v_namelist)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(8, 383, __pyx_L1_error)
+
+ /* "PETSc/petscdmshell.pxi":384
+ * if namelist != NULL and names is not None:
+ * CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) )
+ * for i in range(len(names)): # <<<<<<<<<<<<<<
+ * names[i] = str2bytes(names[i], &cname)
+ * CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_names); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 384, __pyx_L1_error)
+ for (__pyx_t_12 = 0; __pyx_t_12 < __pyx_t_11; __pyx_t_12+=1) {
+ __pyx_v_i = __pyx_t_12;
+
+ /* "PETSc/petscdmshell.pxi":385
+ * CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) )
+ * for i in range(len(names)):
+ * names[i] = str2bytes(names[i], &cname) # <<<<<<<<<<<<<<
+ * CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
+ *
+ */
+ __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_names, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 385, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_t_6, (&__pyx_v_cname)); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 385, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ if (unlikely(__Pyx_SetItemInt(__pyx_v_names, __pyx_v_i, __pyx_t_9, int, 1, __Pyx_PyInt_From_int, 0, 1, 1) < 0)) __PYX_ERR(8, 385, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+
+ /* "PETSc/petscdmshell.pxi":386
+ * for i in range(len(names)):
+ * names[i] = str2bytes(names[i], &cname)
+ * CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) ) # <<<<<<<<<<<<<<
+ *
+ * if innerislist != NULL and innerises is not None:
+ */
+ __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscStrallocpy(__pyx_v_cname, (&((__pyx_v_namelist[0])[__pyx_v_i])))); if (unlikely(__pyx_t_13 == ((int)-1))) __PYX_ERR(8, 386, __pyx_L1_error)
+ }
+
+ /* "PETSc/petscdmshell.pxi":382
+ * clen[0] = 0
+ *
+ * if namelist != NULL and names is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(names)*sizeof(char**), namelist) )
+ * for i in range(len(names)):
+ */
+ }
+
+ /* "PETSc/petscdmshell.pxi":388
+ * CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
+ *
+ * if innerislist != NULL and innerises is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(innerises)*sizeof(PetscIS), innerislist) )
+ * for i in range(len(innerises)):
+ */
+ __pyx_t_5 = ((__pyx_v_innerislist != NULL) != 0);
+ if (__pyx_t_5) {
+ } else {
+ __pyx_t_3 = __pyx_t_5;
+ goto __pyx_L17_bool_binop_done;
+ }
+ __pyx_t_5 = (__pyx_v_innerises != Py_None);
+ __pyx_t_4 = (__pyx_t_5 != 0);
+ __pyx_t_3 = __pyx_t_4;
+ __pyx_L17_bool_binop_done:;
+ if (__pyx_t_3) {
+
+ /* "PETSc/petscdmshell.pxi":389
+ *
+ * if innerislist != NULL and innerises is not None:
+ * CHKERR( PetscMalloc(len(innerises)*sizeof(PetscIS), innerislist) ) # <<<<<<<<<<<<<<
+ * for i in range(len(innerises)):
+ * innerislist[0][i] = (<IS?>innerises[i]).iset
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_innerises); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 389, __pyx_L1_error)
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_11 * (sizeof(IS))), __pyx_v_innerislist)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(8, 389, __pyx_L1_error)
+
+ /* "PETSc/petscdmshell.pxi":390
+ * if innerislist != NULL and innerises is not None:
+ * CHKERR( PetscMalloc(len(innerises)*sizeof(PetscIS), innerislist) )
+ * for i in range(len(innerises)): # <<<<<<<<<<<<<<
+ * innerislist[0][i] = (<IS?>innerises[i]).iset
+ * PetscINCREF((<IS?>innerises[i]).obj)
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_innerises); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 390, __pyx_L1_error)
+ for (__pyx_t_12 = 0; __pyx_t_12 < __pyx_t_11; __pyx_t_12+=1) {
+ __pyx_v_i = __pyx_t_12;
+
+ /* "PETSc/petscdmshell.pxi":391
+ * CHKERR( PetscMalloc(len(innerises)*sizeof(PetscIS), innerislist) )
+ * for i in range(len(innerises)):
+ * innerislist[0][i] = (<IS?>innerises[i]).iset # <<<<<<<<<<<<<<
+ * PetscINCREF((<IS?>innerises[i]).obj)
+ *
+ */
+ __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_innerises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 391, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 391, __pyx_L1_error)
+ __pyx_t_14 = ((struct PyPetscISObject *)__pyx_t_9)->iset;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ ((__pyx_v_innerislist[0])[__pyx_v_i]) = __pyx_t_14;
+
+ /* "PETSc/petscdmshell.pxi":392
+ * for i in range(len(innerises)):
+ * innerislist[0][i] = (<IS?>innerises[i]).iset
+ * PetscINCREF((<IS?>innerises[i]).obj) # <<<<<<<<<<<<<<
+ *
+ * if outerislist != NULL and outerises is not None:
+ */
+ __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_innerises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 392, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 392, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscISObject *)__pyx_t_9)->__pyx_base.obj);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
+
+ /* "PETSc/petscdmshell.pxi":388
+ * CHKERR( PetscStrallocpy(cname, &(namelist[0][i])) )
+ *
+ * if innerislist != NULL and innerises is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(innerises)*sizeof(PetscIS), innerislist) )
+ * for i in range(len(innerises)):
+ */
+ }
+
+ /* "PETSc/petscdmshell.pxi":394
+ * PetscINCREF((<IS?>innerises[i]).obj)
+ *
+ * if outerislist != NULL and outerises is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(outerises)*sizeof(PetscIS), outerislist) )
+ * for i in range(len(outerises)):
+ */
+ __pyx_t_4 = ((__pyx_v_outerislist != NULL) != 0);
+ if (__pyx_t_4) {
+ } else {
+ __pyx_t_3 = __pyx_t_4;
+ goto __pyx_L22_bool_binop_done;
+ }
+ __pyx_t_4 = (__pyx_v_outerises != Py_None);
+ __pyx_t_5 = (__pyx_t_4 != 0);
+ __pyx_t_3 = __pyx_t_5;
+ __pyx_L22_bool_binop_done:;
+ if (__pyx_t_3) {
+
+ /* "PETSc/petscdmshell.pxi":395
+ *
+ * if outerislist != NULL and outerises is not None:
+ * CHKERR( PetscMalloc(len(outerises)*sizeof(PetscIS), outerislist) ) # <<<<<<<<<<<<<<
+ * for i in range(len(outerises)):
+ * outerislist[0][i] = (<IS?>outerises[i]).iset
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_outerises); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 395, __pyx_L1_error)
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_11 * (sizeof(IS))), __pyx_v_outerislist)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(8, 395, __pyx_L1_error)
+
+ /* "PETSc/petscdmshell.pxi":396
+ * if outerislist != NULL and outerises is not None:
+ * CHKERR( PetscMalloc(len(outerises)*sizeof(PetscIS), outerislist) )
+ * for i in range(len(outerises)): # <<<<<<<<<<<<<<
+ * outerislist[0][i] = (<IS?>outerises[i]).iset
+ * PetscINCREF((<IS?>outerises[i]).obj)
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_outerises); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 396, __pyx_L1_error)
+ for (__pyx_t_12 = 0; __pyx_t_12 < __pyx_t_11; __pyx_t_12+=1) {
+ __pyx_v_i = __pyx_t_12;
+
+ /* "PETSc/petscdmshell.pxi":397
+ * CHKERR( PetscMalloc(len(outerises)*sizeof(PetscIS), outerislist) )
+ * for i in range(len(outerises)):
+ * outerislist[0][i] = (<IS?>outerises[i]).iset # <<<<<<<<<<<<<<
+ * PetscINCREF((<IS?>outerises[i]).obj)
+ *
+ */
+ __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_outerises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 397, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 397, __pyx_L1_error)
+ __pyx_t_14 = ((struct PyPetscISObject *)__pyx_t_9)->iset;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ ((__pyx_v_outerislist[0])[__pyx_v_i]) = __pyx_t_14;
+
+ /* "PETSc/petscdmshell.pxi":398
+ * for i in range(len(outerises)):
+ * outerislist[0][i] = (<IS?>outerises[i]).iset
+ * PetscINCREF((<IS?>outerises[i]).obj) # <<<<<<<<<<<<<<
+ *
+ * if dmlist != NULL and dms is not None:
+ */
+ __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_outerises, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 398, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(8, 398, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscISObject *)__pyx_t_9)->__pyx_base.obj);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
+
+ /* "PETSc/petscdmshell.pxi":394
+ * PetscINCREF((<IS?>innerises[i]).obj)
+ *
+ * if outerislist != NULL and outerises is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(outerises)*sizeof(PetscIS), outerislist) )
+ * for i in range(len(outerises)):
+ */
+ }
+
+ /* "PETSc/petscdmshell.pxi":400
+ * PetscINCREF((<IS?>outerises[i]).obj)
+ *
+ * if dmlist != NULL and dms is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) )
+ * for i in range(len(dms)):
+ */
+ __pyx_t_5 = ((__pyx_v_dmlist != NULL) != 0);
+ if (__pyx_t_5) {
+ } else {
+ __pyx_t_3 = __pyx_t_5;
+ goto __pyx_L27_bool_binop_done;
+ }
+ __pyx_t_5 = (__pyx_v_dms != Py_None);
+ __pyx_t_4 = (__pyx_t_5 != 0);
+ __pyx_t_3 = __pyx_t_4;
+ __pyx_L27_bool_binop_done:;
+ if (__pyx_t_3) {
+
+ /* "PETSc/petscdmshell.pxi":401
+ *
+ * if dmlist != NULL and dms is not None:
+ * CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) ) # <<<<<<<<<<<<<<
+ * for i in range(len(dms)):
+ * dmlist[0][i] = (<DM?>dms[i]).dm
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 401, __pyx_L1_error)
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_t_11 * (sizeof(DM))), __pyx_v_dmlist)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(8, 401, __pyx_L1_error)
+
+ /* "PETSc/petscdmshell.pxi":402
+ * if dmlist != NULL and dms is not None:
+ * CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) )
+ * for i in range(len(dms)): # <<<<<<<<<<<<<<
+ * dmlist[0][i] = (<DM?>dms[i]).dm
+ * PetscINCREF((<DM?>dms[i]).obj)
+ */
+ __pyx_t_11 = PyObject_Length(__pyx_v_dms); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(8, 402, __pyx_L1_error)
+ for (__pyx_t_12 = 0; __pyx_t_12 < __pyx_t_11; __pyx_t_12+=1) {
+ __pyx_v_i = __pyx_t_12;
+
+ /* "PETSc/petscdmshell.pxi":403
+ * CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) )
+ * for i in range(len(dms)):
+ * dmlist[0][i] = (<DM?>dms[i]).dm # <<<<<<<<<<<<<<
+ * PetscINCREF((<DM?>dms[i]).obj)
+ * return 0
+ */
+ __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_dms, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 403, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_8petsc4py_5PETSc_DM)))) __PYX_ERR(8, 403, __pyx_L1_error)
+ __pyx_t_15 = ((struct PyPetscDMObject *)__pyx_t_9)->dm;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ ((__pyx_v_dmlist[0])[__pyx_v_i]) = __pyx_t_15;
+
+ /* "PETSc/petscdmshell.pxi":404
+ * for i in range(len(dms)):
+ * dmlist[0][i] = (<DM?>dms[i]).dm
+ * PetscINCREF((<DM?>dms[i]).obj) # <<<<<<<<<<<<<<
+ * return 0
+ *
+ */
+ __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_dms, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 404, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_8petsc4py_5PETSc_DM)))) __PYX_ERR(8, 404, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscDMObject *)__pyx_t_9)->__pyx_base.obj);
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ }
+
+ /* "PETSc/petscdmshell.pxi":400
+ * PetscINCREF((<IS?>outerises[i]).obj)
+ *
+ * if dmlist != NULL and dms is not None: # <<<<<<<<<<<<<<
+ * CHKERR( PetscMalloc(len(dms)*sizeof(PetscDM), dmlist) )
+ * for i in range(len(dms)):
+ */
+ }
+
+ /* "PETSc/petscdmshell.pxi":405
+ * dmlist[0][i] = (<DM?>dms[i]).dm
+ * PetscINCREF((<DM?>dms[i]).obj)
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * cdef int DMSHELL_CreateDomainDecompositionScatters(
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscdmshell.pxi":353
+ * return 0
+ *
+ * cdef int DMSHELL_CreateDomainDecomposition( # <<<<<<<<<<<<<<
+ * PetscDM dm,
+ * PetscInt *clen,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_XDECREF(__pyx_t_9);
+ __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMSHELL_CreateDomainDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Dm);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_decomp);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XDECREF(__pyx_v_names);
+ __Pyx_XDECREF(__pyx_v_innerises);
+ __Pyx_XDECREF(__pyx_v_outerises);
+ __Pyx_XDECREF(__pyx_v_dms);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
+ #endif
+ return __pyx_r;
+}
+
+/* "PETSc/petscdmshell.pxi":407
+ * return 0
+ *
+ * cdef int DMSHELL_CreateDomainDecompositionScatters( # <<<<<<<<<<<<<<
+ * PetscDM dm,
+ * PetscInt clen,
+ */
+
+static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateDomainDecompositionScatters(DM __pyx_v_dm, PetscInt __pyx_v_clen, DM *__pyx_v_subdms, VecScatter **__pyx_v_iscat, VecScatter **__pyx_v_oscat, VecScatter **__pyx_v_gscat) {
+ struct PyPetscDMObject *__pyx_v_Dm = 0;
+ int __pyx_v_i;
+ CYTHON_UNUSED const char *__pyx_v_cname;
+ struct PyPetscDMObject *__pyx_v_subdm = 0;
+ PyObject *__pyx_v_psubdms = NULL;
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_v_scatters = NULL;
+ PyObject *__pyx_v_args = NULL;
+ PyObject *__pyx_v_kargs = NULL;
+ PyObject *__pyx_v_iscatter = NULL;
+ PyObject *__pyx_v_oscatter = NULL;
+ PyObject *__pyx_v_gscatter = NULL;
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ PyObject *__pyx_t_2 = NULL;
+ PetscInt __pyx_t_3;
+ int __pyx_t_4;
+ int __pyx_t_5;
+ int __pyx_t_6;
+ int __pyx_t_7;
+ PyObject *__pyx_t_8 = NULL;
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *(*__pyx_t_10)(PyObject *);
+ PyObject *__pyx_t_11 = NULL;
+ Py_ssize_t __pyx_t_12;
+ int __pyx_t_13;
+ VecScatter __pyx_t_14;
+ #ifdef WITH_THREAD
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
+ #endif
+ __Pyx_RefNannySetupContext("DMSHELL_CreateDomainDecompositionScatters", 0);
+
+ /* "PETSc/petscdmshell.pxi":415
+ * PetscScatter** gscat) except PETSC_ERR_PYTHON with gil:
+ *
+ * cdef DM Dm = subtype_DM(dm)() # <<<<<<<<<<<<<<
+ * cdef int i
+ * cdef const_char *cname = NULL
+ */
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_dm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 415, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 415, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 415, __pyx_L1_error)
+ __pyx_v_Dm = ((struct PyPetscDMObject *)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/petscdmshell.pxi":417
+ * cdef DM Dm = subtype_DM(dm)()
+ * cdef int i
+ * cdef const_char *cname = NULL # <<<<<<<<<<<<<<
+ * cdef DM subdm = None
+ *
+ */
+ __pyx_v_cname = NULL;
+
+ /* "PETSc/petscdmshell.pxi":418
+ * cdef int i
+ * cdef const_char *cname = NULL
+ * cdef DM subdm = None # <<<<<<<<<<<<<<
+ *
+ * Dm.dm = dm
+ */
+ __Pyx_INCREF(Py_None);
+ __pyx_v_subdm = ((struct PyPetscDMObject *)Py_None);
+
+ /* "PETSc/petscdmshell.pxi":420
+ * cdef DM subdm = None
+ *
+ * Dm.dm = dm # <<<<<<<<<<<<<<
+ * PetscINCREF(Dm.obj)
+ *
+ */
+ __pyx_v_Dm->dm = __pyx_v_dm;
+
+ /* "PETSc/petscdmshell.pxi":421
+ *
+ * Dm.dm = dm
+ * PetscINCREF(Dm.obj) # <<<<<<<<<<<<<<
+ *
+ * psubdms = []
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_Dm->__pyx_base.obj);
+
+ /* "PETSc/petscdmshell.pxi":423
+ * PetscINCREF(Dm.obj)
+ *
+ * psubdms = [] # <<<<<<<<<<<<<<
+ * for i from 0 <= i < clen:
+ * subdm = subtype_DM(subdms[i])()
+ */
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 423, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_v_psubdms = ((PyObject*)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/petscdmshell.pxi":424
+ *
+ * psubdms = []
+ * for i from 0 <= i < clen: # <<<<<<<<<<<<<<
+ * subdm = subtype_DM(subdms[i])()
+ * subdm.dm = subdms[i]
+ */
+ __pyx_t_3 = __pyx_v_clen;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
+
+ /* "PETSc/petscdmshell.pxi":425
+ * psubdms = []
+ * for i from 0 <= i < clen:
+ * subdm = subtype_DM(subdms[i])() # <<<<<<<<<<<<<<
+ * subdm.dm = subdms[i]
+ * PetscINCREF(subdm.obj)
+ */
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM((__pyx_v_subdms[__pyx_v_i]))); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 425, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 425, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 425, __pyx_L1_error)
+ __Pyx_DECREF_SET(__pyx_v_subdm, ((struct PyPetscDMObject *)__pyx_t_1));
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscdmshell.pxi":426
+ * for i from 0 <= i < clen:
+ * subdm = subtype_DM(subdms[i])()
+ * subdm.dm = subdms[i] # <<<<<<<<<<<<<<
+ * PetscINCREF(subdm.obj)
+ * psubdms.append(subdm)
+ */
+ __pyx_v_subdm->dm = (__pyx_v_subdms[__pyx_v_i]);
+
+ /* "PETSc/petscdmshell.pxi":427
+ * subdm = subtype_DM(subdms[i])()
+ * subdm.dm = subdms[i]
+ * PetscINCREF(subdm.obj) # <<<<<<<<<<<<<<
+ * psubdms.append(subdm)
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_subdm->__pyx_base.obj);
+
+ /* "PETSc/petscdmshell.pxi":428
+ * subdm.dm = subdms[i]
+ * PetscINCREF(subdm.obj)
+ * psubdms.append(subdm) # <<<<<<<<<<<<<<
+ *
+ * context = Dm.get_attr('__create_domain_decomp_scatters__')
+ */
+ __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_psubdms, ((PyObject *)__pyx_v_subdm)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(8, 428, __pyx_L1_error)
+ }
+
+ /* "PETSc/petscdmshell.pxi":430
+ * psubdms.append(subdm)
+ *
+ * context = Dm.get_attr('__create_domain_decomp_scatters__') # <<<<<<<<<<<<<<
+ * assert context is not None and type(context) is tuple
+ * (scatters, args, kargs) = context
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_Dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_Dm), ((char *)"__create_domain_decomp_scatters__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 430, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_context = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/petscdmshell.pxi":431
+ *
+ * context = Dm.get_attr('__create_domain_decomp_scatters__')
+ * assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
+ * (scatters, args, kargs) = context
+ * (iscatter, oscatter, gscatter) = scatters(Dm, psubdms, *args, **kargs)
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_6 = (__pyx_v_context != Py_None);
+ __pyx_t_7 = (__pyx_t_6 != 0);
+ if (__pyx_t_7) {
+ } else {
+ __pyx_t_5 = __pyx_t_7;
+ goto __pyx_L5_bool_binop_done;
+ }
+ __pyx_t_7 = (((PyObject *)Py_TYPE(__pyx_v_context)) == ((PyObject *)(&PyTuple_Type)));
+ __pyx_t_6 = (__pyx_t_7 != 0);
+ __pyx_t_5 = __pyx_t_6;
+ __pyx_L5_bool_binop_done:;
+ if (unlikely(!__pyx_t_5)) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(8, 431, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscdmshell.pxi":432
+ * context = Dm.get_attr('__create_domain_decomp_scatters__')
+ * assert context is not None and type(context) is tuple
+ * (scatters, args, kargs) = context # <<<<<<<<<<<<<<
+ * (iscatter, oscatter, gscatter) = scatters(Dm, psubdms, *args, **kargs)
+ *
+ */
+ if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
+ PyObject* sequence = __pyx_v_context;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(8, 432, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_8 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_8 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_8);
+ #else
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 432, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 432, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_8 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 432, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ #endif
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_9 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 432, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext;
+ index = 0; __pyx_t_1 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 1; __pyx_t_2 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_2)) goto __pyx_L7_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_2);
+ index = 2; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L7_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_8);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 3) < 0) __PYX_ERR(8, 432, __pyx_L1_error)
+ __pyx_t_10 = NULL;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ goto __pyx_L8_unpacking_done;
+ __pyx_L7_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __pyx_t_10 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(8, 432, __pyx_L1_error)
+ __pyx_L8_unpacking_done:;
+ }
+ __pyx_v_scatters = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_args = __pyx_t_2;
+ __pyx_t_2 = 0;
+ __pyx_v_kargs = __pyx_t_8;
+ __pyx_t_8 = 0;
+
+ /* "PETSc/petscdmshell.pxi":433
+ * assert context is not None and type(context) is tuple
+ * (scatters, args, kargs) = context
+ * (iscatter, oscatter, gscatter) = scatters(Dm, psubdms, *args, **kargs) # <<<<<<<<<<<<<<
+ *
+ * assert len(iscatter) == clen
+ */
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_INCREF(((PyObject *)__pyx_v_Dm));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_Dm));
+ PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)__pyx_v_Dm));
+ __Pyx_INCREF(__pyx_v_psubdms);
+ __Pyx_GIVEREF(__pyx_v_psubdms);
+ PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_psubdms);
+ __pyx_t_2 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_1 = PyNumber_Add(__pyx_t_8, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (unlikely(__pyx_v_kargs == Py_None)) {
+ PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
+ __PYX_ERR(8, 433, __pyx_L1_error)
+ }
+ if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
+ __pyx_t_2 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ } else {
+ __pyx_t_2 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ }
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_v_scatters, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) {
+ PyObject* sequence = __pyx_t_8;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 3)) {
+ if (size > 3) __Pyx_RaiseTooManyValuesError(3);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(8, 433, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_9 = PyTuple_GET_ITEM(sequence, 2);
+ } else {
+ __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_9 = PyList_GET_ITEM(sequence, 2);
+ }
+ __Pyx_INCREF(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_9);
+ #else
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_9);
+ #endif
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ } else {
+ Py_ssize_t index = -1;
+ __pyx_t_11 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(8, 433, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_11);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_10 = Py_TYPE(__pyx_t_11)->tp_iternext;
+ index = 0; __pyx_t_2 = __pyx_t_10(__pyx_t_11); if (unlikely(!__pyx_t_2)) goto __pyx_L9_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_2);
+ index = 1; __pyx_t_1 = __pyx_t_10(__pyx_t_11); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_1);
+ index = 2; __pyx_t_9 = __pyx_t_10(__pyx_t_11); if (unlikely(!__pyx_t_9)) goto __pyx_L9_unpacking_failed;
+ __Pyx_GOTREF(__pyx_t_9);
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_11), 3) < 0) __PYX_ERR(8, 433, __pyx_L1_error)
+ __pyx_t_10 = NULL;
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ goto __pyx_L10_unpacking_done;
+ __pyx_L9_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
+ __pyx_t_10 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(8, 433, __pyx_L1_error)
+ __pyx_L10_unpacking_done:;
+ }
+ __pyx_v_iscatter = __pyx_t_2;
+ __pyx_t_2 = 0;
+ __pyx_v_oscatter = __pyx_t_1;
+ __pyx_t_1 = 0;
+ __pyx_v_gscatter = __pyx_t_9;
+ __pyx_t_9 = 0;
+
+ /* "PETSc/petscdmshell.pxi":435
+ * (iscatter, oscatter, gscatter) = scatters(Dm, psubdms, *args, **kargs)
+ *
+ * assert len(iscatter) == clen # <<<<<<<<<<<<<<
+ * assert len(oscatter) == clen
+ * assert len(gscatter) == clen
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_12 = PyObject_Length(__pyx_v_iscatter); if (unlikely(__pyx_t_12 == ((Py_ssize_t)-1))) __PYX_ERR(8, 435, __pyx_L1_error)
+ if (unlikely(!((__pyx_t_12 == __pyx_v_clen) != 0))) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(8, 435, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscdmshell.pxi":436
+ *
+ * assert len(iscatter) == clen
+ * assert len(oscatter) == clen # <<<<<<<<<<<<<<
+ * assert len(gscatter) == clen
+ *
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_12 = PyObject_Length(__pyx_v_oscatter); if (unlikely(__pyx_t_12 == ((Py_ssize_t)-1))) __PYX_ERR(8, 436, __pyx_L1_error)
+ if (unlikely(!((__pyx_t_12 == __pyx_v_clen) != 0))) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(8, 436, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscdmshell.pxi":437
+ * assert len(iscatter) == clen
+ * assert len(oscatter) == clen
+ * assert len(gscatter) == clen # <<<<<<<<<<<<<<
+ *
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), iscat) )
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_12 = PyObject_Length(__pyx_v_gscatter); if (unlikely(__pyx_t_12 == ((Py_ssize_t)-1))) __PYX_ERR(8, 437, __pyx_L1_error)
+ if (unlikely(!((__pyx_t_12 == __pyx_v_clen) != 0))) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(8, 437, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/petscdmshell.pxi":439
+ * assert len(gscatter) == clen
+ *
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), iscat) ) # <<<<<<<<<<<<<<
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), oscat) )
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), gscat) )
+ */
+ __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_v_clen * (sizeof(VecScatter))), __pyx_v_iscat)); if (unlikely(__pyx_t_13 == ((int)-1))) __PYX_ERR(8, 439, __pyx_L1_error)
+
+ /* "PETSc/petscdmshell.pxi":440
+ *
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), iscat) )
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), oscat) ) # <<<<<<<<<<<<<<
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), gscat) )
+ *
+ */
+ __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_v_clen * (sizeof(VecScatter))), __pyx_v_oscat)); if (unlikely(__pyx_t_13 == ((int)-1))) __PYX_ERR(8, 440, __pyx_L1_error)
+
+ /* "PETSc/petscdmshell.pxi":441
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), iscat) )
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), oscat) )
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), gscat) ) # <<<<<<<<<<<<<<
+ *
+ * for i in range(clen):
+ */
+ __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((__pyx_v_clen * (sizeof(VecScatter))), __pyx_v_gscat)); if (unlikely(__pyx_t_13 == ((int)-1))) __PYX_ERR(8, 441, __pyx_L1_error)
+
+ /* "PETSc/petscdmshell.pxi":443
+ * CHKERR ( PetscMalloc(clen*sizeof(PetscScatter), gscat) )
+ *
+ * for i in range(clen): # <<<<<<<<<<<<<<
+ * iscat[0][i] = (<Scatter?>iscatter[i]).sct
+ * PetscINCREF((<Scatter?>iscatter[i]).obj)
+ */
+ __pyx_t_3 = __pyx_v_clen;
+ for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_3; __pyx_t_13+=1) {
+ __pyx_v_i = __pyx_t_13;
+
+ /* "PETSc/petscdmshell.pxi":444
+ *
+ * for i in range(clen):
+ * iscat[0][i] = (<Scatter?>iscatter[i]).sct # <<<<<<<<<<<<<<
+ * PetscINCREF((<Scatter?>iscatter[i]).obj)
+ *
+ */
+ __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_iscatter, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 444, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_8petsc4py_5PETSc_Scatter)))) __PYX_ERR(8, 444, __pyx_L1_error)
+ __pyx_t_14 = ((struct PyPetscScatterObject *)__pyx_t_8)->sct;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ ((__pyx_v_iscat[0])[__pyx_v_i]) = __pyx_t_14;
+
+ /* "PETSc/petscdmshell.pxi":445
+ * for i in range(clen):
+ * iscat[0][i] = (<Scatter?>iscatter[i]).sct
+ * PetscINCREF((<Scatter?>iscatter[i]).obj) # <<<<<<<<<<<<<<
+ *
+ * oscat[0][i] = (<Scatter?>oscatter[i]).sct
+ */
+ __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_iscatter, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 445, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_8petsc4py_5PETSc_Scatter)))) __PYX_ERR(8, 445, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscScatterObject *)__pyx_t_8)->__pyx_base.obj);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+
+ /* "PETSc/petscdmshell.pxi":447
+ * PetscINCREF((<Scatter?>iscatter[i]).obj)
+ *
+ * oscat[0][i] = (<Scatter?>oscatter[i]).sct # <<<<<<<<<<<<<<
+ * PetscINCREF((<Scatter?>oscatter[i]).obj)
+ *
+ */
+ __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_oscatter, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 447, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_8petsc4py_5PETSc_Scatter)))) __PYX_ERR(8, 447, __pyx_L1_error)
+ __pyx_t_14 = ((struct PyPetscScatterObject *)__pyx_t_8)->sct;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ ((__pyx_v_oscat[0])[__pyx_v_i]) = __pyx_t_14;
+
+ /* "PETSc/petscdmshell.pxi":448
+ *
+ * oscat[0][i] = (<Scatter?>oscatter[i]).sct
+ * PetscINCREF((<Scatter?>oscatter[i]).obj) # <<<<<<<<<<<<<<
+ *
+ * gscat[0][i] = (<Scatter?>gscatter[i]).sct
+ */
+ __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_oscatter, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 448, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_8petsc4py_5PETSc_Scatter)))) __PYX_ERR(8, 448, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscScatterObject *)__pyx_t_8)->__pyx_base.obj);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+
+ /* "PETSc/petscdmshell.pxi":450
+ * PetscINCREF((<Scatter?>oscatter[i]).obj)
+ *
+ * gscat[0][i] = (<Scatter?>gscatter[i]).sct # <<<<<<<<<<<<<<
+ * PetscINCREF((<Scatter?>gscatter[i]).obj)
+ *
+ */
+ __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_gscatter, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 450, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_8petsc4py_5PETSc_Scatter)))) __PYX_ERR(8, 450, __pyx_L1_error)
+ __pyx_t_14 = ((struct PyPetscScatterObject *)__pyx_t_8)->sct;
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ ((__pyx_v_gscat[0])[__pyx_v_i]) = __pyx_t_14;
+
+ /* "PETSc/petscdmshell.pxi":451
+ *
+ * gscat[0][i] = (<Scatter?>gscatter[i]).sct
+ * PetscINCREF((<Scatter?>gscatter[i]).obj) # <<<<<<<<<<<<<<
+ *
+ * return 0
+ */
+ __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_gscatter, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(8, 451, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_8);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_8petsc4py_5PETSc_Scatter)))) __PYX_ERR(8, 451, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(((struct PyPetscScatterObject *)__pyx_t_8)->__pyx_base.obj);
+ __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ }
+
+ /* "PETSc/petscdmshell.pxi":453
+ * PetscINCREF((<Scatter?>gscatter[i]).obj)
+ *
+ * return 0 # <<<<<<<<<<<<<<
+ *
+ * cdef int DMSHELL_CreateSubDM(
+ */
+ __pyx_r = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/petscdmshell.pxi":407
+ * return 0
+ *
+ * cdef int DMSHELL_CreateDomainDecompositionScatters( # <<<<<<<<<<<<<<
+ * PetscDM dm,
+ * PetscInt clen,
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_XDECREF(__pyx_t_8);
+ __Pyx_XDECREF(__pyx_t_9);
+ __Pyx_XDECREF(__pyx_t_11);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMSHELL_CreateDomainDecompositionScatters", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = PETSC_ERR_PYTHON;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_Dm);
+ __Pyx_XDECREF((PyObject *)__pyx_v_subdm);
+ __Pyx_XDECREF(__pyx_v_psubdms);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_scatters);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XDECREF(__pyx_v_iscatter);
+ __Pyx_XDECREF(__pyx_v_oscatter);
+ __Pyx_XDECREF(__pyx_v_gscatter);
+ __Pyx_RefNannyFinishContext();
+ #ifdef WITH_THREAD
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/petscdmshell.pxi":316
+/* "PETSc/petscdmshell.pxi":455
* return 0
*
* cdef int DMSHELL_CreateSubDM( # <<<<<<<<<<<<<<
@@ -49029,27 +54006,27 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
IS __pyx_t_9;
DM __pyx_t_10;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("DMSHELL_CreateSubDM", 0);
- /* "PETSc/petscdmshell.pxi":322
+ /* "PETSc/petscdmshell.pxi":461
* PetscIS *ciset,
* PetscDM *csubdm) except PETSC_ERR_PYTHON with gil:
* cdef DM dm = subtype_DM(cdm)() # <<<<<<<<<<<<<<
* cdef IS iset
* cdef DM subdm
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_cdm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 322, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_cdm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 461, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 322, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 461, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 322, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 461, __pyx_L1_error)
__pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":325
+ /* "PETSc/petscdmshell.pxi":464
* cdef IS iset
* cdef DM subdm
* dm.dm = cdm # <<<<<<<<<<<<<<
@@ -49058,7 +54035,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
*/
__pyx_v_dm->dm = __pyx_v_cdm;
- /* "PETSc/petscdmshell.pxi":326
+ /* "PETSc/petscdmshell.pxi":465
* cdef DM subdm
* dm.dm = cdm
* PetscINCREF(dm.obj) # <<<<<<<<<<<<<<
@@ -49067,19 +54044,19 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_dm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":327
+ /* "PETSc/petscdmshell.pxi":466
* dm.dm = cdm
* PetscINCREF(dm.obj)
* context = dm.get_attr('__create_subdm__') # <<<<<<<<<<<<<<
* assert context is not None and type(context) is tuple
* (create_subdm, args, kargs) = context
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_dm), ((char *)"__create_subdm__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 327, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_dm->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_dm), ((char *)"__create_subdm__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 466, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_context = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":328
+ /* "PETSc/petscdmshell.pxi":467
* PetscINCREF(dm.obj)
* context = dm.get_attr('__create_subdm__')
* assert context is not None and type(context) is tuple # <<<<<<<<<<<<<<
@@ -49101,12 +54078,12 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(8, 328, __pyx_L1_error)
+ __PYX_ERR(8, 467, __pyx_L1_error)
}
}
#endif
- /* "PETSc/petscdmshell.pxi":329
+ /* "PETSc/petscdmshell.pxi":468
* context = dm.get_attr('__create_subdm__')
* assert context is not None and type(context) is tuple
* (create_subdm, args, kargs) = context # <<<<<<<<<<<<<<
@@ -49115,7 +54092,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
*/
if ((likely(PyTuple_CheckExact(__pyx_v_context))) || (PyList_CheckExact(__pyx_v_context))) {
PyObject* sequence = __pyx_v_context;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -49123,9 +54100,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 329, __pyx_L1_error)
+ __PYX_ERR(8, 468, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
@@ -49139,16 +54116,16 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 329, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 468, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 329, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 468, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 329, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 468, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 329, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 468, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
@@ -49157,7 +54134,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_GOTREF(__pyx_t_1);
index = 2; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 329, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 3) < 0) __PYX_ERR(8, 468, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L6_unpacking_done;
@@ -49165,7 +54142,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 329, __pyx_L1_error)
+ __PYX_ERR(8, 468, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__pyx_v_create_subdm = __pyx_t_2;
@@ -49175,26 +54152,26 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__pyx_v_kargs = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":331
+ /* "PETSc/petscdmshell.pxi":470
* (create_subdm, args, kargs) = context
*
* fields = array_i(numFields, cfields) # <<<<<<<<<<<<<<
*
* iset, subdm = create_subdm(dm, fields, *args, **kargs)
*/
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_numFields, __pyx_v_cfields)); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 331, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_numFields, __pyx_v_cfields)); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 470, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_v_fields = ((PyArrayObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/petscdmshell.pxi":333
+ /* "PETSc/petscdmshell.pxi":472
* fields = array_i(numFields, cfields)
*
* iset, subdm = create_subdm(dm, fields, *args, **kargs) # <<<<<<<<<<<<<<
*
* PetscINCREF(iset.obj)
*/
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(((PyObject *)__pyx_v_dm));
__Pyx_GIVEREF(((PyObject *)__pyx_v_dm));
@@ -49202,30 +54179,30 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_INCREF(((PyObject *)__pyx_v_fields));
__Pyx_GIVEREF(((PyObject *)__pyx_v_fields));
PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_v_fields));
- __pyx_t_1 = PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_args); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(__pyx_v_kargs == Py_None)) {
PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
- __PYX_ERR(8, 333, __pyx_L1_error)
+ __PYX_ERR(8, 472, __pyx_L1_error)
}
if (likely(PyDict_CheckExact(__pyx_v_kargs))) {
- __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_1 = PyDict_Copy(__pyx_v_kargs); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_1 = PyObject_CallFunctionObjArgs((PyObject*)&PyDict_Type, __pyx_v_kargs, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
}
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_create_subdm, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_v_create_subdm, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -49233,9 +54210,9 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(8, 333, __pyx_L1_error)
+ __PYX_ERR(8, 472, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
@@ -49246,15 +54223,15 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_2);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 333, __pyx_L1_error)
+ __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(8, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
@@ -49262,7 +54239,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L7_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(8, 333, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) __PYX_ERR(8, 472, __pyx_L1_error)
__pyx_t_8 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L8_unpacking_done;
@@ -49270,17 +54247,17 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_8 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(8, 333, __pyx_L1_error)
+ __PYX_ERR(8, 472, __pyx_L1_error)
__pyx_L8_unpacking_done:;
}
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_IS))))) __PYX_ERR(8, 333, __pyx_L1_error)
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 333, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_IS))))) __PYX_ERR(8, 472, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(8, 472, __pyx_L1_error)
__pyx_v_iset = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
__pyx_v_subdm = ((struct PyPetscDMObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/petscdmshell.pxi":335
+ /* "PETSc/petscdmshell.pxi":474
* iset, subdm = create_subdm(dm, fields, *args, **kargs)
*
* PetscINCREF(iset.obj) # <<<<<<<<<<<<<<
@@ -49289,7 +54266,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_iset->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":336
+ /* "PETSc/petscdmshell.pxi":475
*
* PetscINCREF(iset.obj)
* PetscINCREF(subdm.obj) # <<<<<<<<<<<<<<
@@ -49298,7 +54275,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_subdm->__pyx_base.obj);
- /* "PETSc/petscdmshell.pxi":337
+ /* "PETSc/petscdmshell.pxi":476
* PetscINCREF(iset.obj)
* PetscINCREF(subdm.obj)
* ciset[0] = iset.iset # <<<<<<<<<<<<<<
@@ -49307,7 +54284,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__pyx_t_9 = __pyx_v_iset->iset;
(__pyx_v_ciset[0]) = __pyx_t_9;
- /* "PETSc/petscdmshell.pxi":338
+ /* "PETSc/petscdmshell.pxi":477
* PetscINCREF(subdm.obj)
* ciset[0] = iset.iset
* csubdm[0] = subdm.dm # <<<<<<<<<<<<<<
@@ -49315,7 +54292,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__pyx_t_10 = __pyx_v_subdm->dm;
(__pyx_v_csubdm[0]) = __pyx_t_10;
- /* "PETSc/petscdmshell.pxi":316
+ /* "PETSc/petscdmshell.pxi":455
* return 0
*
* cdef int DMSHELL_CreateSubDM( # <<<<<<<<<<<<<<
@@ -49344,7 +54321,7 @@ static int __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM(DM __pyx_v_cdm, PetscInt
__Pyx_XDECREF((PyObject *)__pyx_v_fields);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
@@ -49375,7 +54352,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5Error_1__init__(PyObject *__pyx_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -49384,6 +54363,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5Error_1__init__(PyObject *__pyx_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ierr);
@@ -49396,6 +54376,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5Error_1__init__(PyObject *__pyx_self
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -49430,7 +54411,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error___init__(CYTHON_UNUSED PyObjec
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
- Py_ssize_t __pyx_t_5;
+ int __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("__init__", 0);
@@ -49459,7 +54440,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error___init__(CYTHON_UNUSED PyObjec
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = NULL;
__pyx_t_5 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -49469,20 +54450,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error___init__(CYTHON_UNUSED PyObjec
__pyx_t_5 = 1;
}
}
- __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 9, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- if (__pyx_t_4) {
- __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_v_self, __pyx_t_3};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_v_self, __pyx_t_3};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_5, 2+__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else
+ #endif
+ {
+ __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 9, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__pyx_t_4) {
+ __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_self);
+ __Pyx_GIVEREF(__pyx_v_self);
+ PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_v_self);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_t_3);
+ __pyx_t_3 = 0;
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- __Pyx_INCREF(__pyx_v_self);
- __Pyx_GIVEREF(__pyx_v_self);
- PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_v_self);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_t_3);
- __pyx_t_3 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -49536,6 +54537,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5Error_3__nonzero__(PyObject *__pyx_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -49649,6 +54651,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5Error_5__repr__(PyObject *__pyx_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -49752,6 +54755,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5Error_7__str__(PyObject *__pyx_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -49871,7 +54875,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error_6__str__(CYTHON_UNUSED PyObjec
__pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 23, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_4 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(1, 23, __pyx_L1_error)
+ __pyx_t_4 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(1, 23, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_5 = __pyx_v_crank;
__pyx_v_width = __pyx_t_4;
@@ -49919,7 +54923,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error_6__str__(CYTHON_UNUSED PyObjec
if (likely(!__pyx_t_6)) {
if (likely(PyList_CheckExact(__pyx_t_3))) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(1, 25, __pyx_L1_error)
#else
__pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 25, __pyx_L1_error)
@@ -49927,7 +54931,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error_6__str__(CYTHON_UNUSED PyObjec
#endif
} else {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(1, 25, __pyx_L1_error)
#else
__pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 25, __pyx_L1_error)
@@ -49939,7 +54943,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error_6__str__(CYTHON_UNUSED PyObjec
if (unlikely(!__pyx_t_2)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(1, 25, __pyx_L1_error)
}
break;
@@ -49984,7 +54988,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5Error_6__str__(CYTHON_UNUSED PyObjec
* return '\n'.join(tblist)
*
*/
- __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_tblist, __pyx_v_tbline); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(1, 27, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_tblist, __pyx_v_tbline); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(1, 27, __pyx_L1_error)
/* "PETSc/Error.pyx":25
* width, rank = len(str(csize-1)), crank
@@ -50059,6 +55063,7 @@ static int __pyx_pw_8petsc4py_5PETSc_7Options_1__init__(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -50076,6 +55081,7 @@ static int __pyx_pw_8petsc4py_5PETSc_7Options_1__init__(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -50183,7 +55189,7 @@ static void __pyx_pf_8petsc4py_5PETSc_7Options_2__dealloc__(struct __pyx_obj_8pe
*
* def __contains__(self, item):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsDestroy((&__pyx_v_self->opt))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(24, 14, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsDestroy((&__pyx_v_self->opt))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(24, 14, __pyx_L1_error)
/* "PETSc/Options.pyx":12
* self.prefix = prefix
@@ -50196,7 +55202,7 @@ static void __pyx_pf_8petsc4py_5PETSc_7Options_2__dealloc__(struct __pyx_obj_8pe
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc.Options.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.Options.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
@@ -50242,7 +55248,7 @@ static int __pyx_pf_8petsc4py_5PETSc_7Options_4__contains__(struct __pyx_obj_8pe
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_hasName); if (unlikely(!__pyx_t_2)) __PYX_ERR(24, 17, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -50255,15 +55261,33 @@ static int __pyx_pf_8petsc4py_5PETSc_7Options_4__contains__(struct __pyx_obj_8pe
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 17, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(24, 17, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_item);
- __Pyx_GIVEREF(__pyx_v_item);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_item);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 17, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_item};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 17, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_item};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 17, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(24, 17, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_item);
+ __Pyx_GIVEREF(__pyx_v_item);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_item);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 17, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(24, 17, __pyx_L1_error)
@@ -50333,7 +55357,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_6__getitem__(struct __pyx_ob
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getString); if (unlikely(!__pyx_t_2)) __PYX_ERR(24, 20, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -50346,15 +55370,33 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_6__getitem__(struct __pyx_ob
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 20, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(24, 20, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_item);
- __Pyx_GIVEREF(__pyx_v_item);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_item);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 20, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_item};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 20, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_item};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 20, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(24, 20, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_item);
+ __Pyx_GIVEREF(__pyx_v_item);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_item);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 20, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_1;
@@ -50410,7 +55452,7 @@ static int __pyx_pf_8petsc4py_5PETSc_7Options_8__setitem__(struct __pyx_obj_8pet
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
- Py_ssize_t __pyx_t_4;
+ int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("__setitem__", 0);
@@ -50425,7 +55467,7 @@ static int __pyx_pf_8petsc4py_5PETSc_7Options_8__setitem__(struct __pyx_obj_8pet
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
__pyx_t_4 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -50435,20 +55477,38 @@ static int __pyx_pf_8petsc4py_5PETSc_7Options_8__setitem__(struct __pyx_obj_8pet
__pyx_t_4 = 1;
}
}
- __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(24, 23, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (__pyx_t_3) {
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_item, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 23, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_item, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 23, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(24, 23, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (__pyx_t_3) {
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_item);
+ __Pyx_GIVEREF(__pyx_v_item);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_item);
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 23, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- __Pyx_INCREF(__pyx_v_item);
- __Pyx_GIVEREF(__pyx_v_item);
- PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_item);
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 23, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -50515,7 +55575,7 @@ static int __pyx_pf_8petsc4py_5PETSc_7Options_10__delitem__(struct __pyx_obj_8pe
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_delValue); if (unlikely(!__pyx_t_2)) __PYX_ERR(24, 26, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -50528,15 +55588,33 @@ static int __pyx_pf_8petsc4py_5PETSc_7Options_10__delitem__(struct __pyx_obj_8pe
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_item); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 26, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(24, 26, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_item);
- __Pyx_GIVEREF(__pyx_v_item);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_item);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 26, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_item};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 26, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_item};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 26, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(24, 26, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_item);
+ __Pyx_GIVEREF(__pyx_v_item);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_item);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(24, 26, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -50785,7 +55863,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_12create(struct __pyx_obj_8p
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsCreate((&__pyx_v_self->opt))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(24, 39, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsCreate((&__pyx_v_self->opt))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(24, 39, __pyx_L1_error)
/* "PETSc/Options.pyx":40
* if self.opt != NULL: return
@@ -50870,7 +55948,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_14destroy(struct __pyx_obj_8
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsDestroy((&__pyx_v_self->opt))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(24, 44, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsDestroy((&__pyx_v_self->opt))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(24, 44, __pyx_L1_error)
/* "PETSc/Options.pyx":45
* if self.opt == NULL: return
@@ -50955,7 +56033,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_16clear(struct __pyx_obj_8pe
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsClear(__pyx_v_self->opt)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(24, 49, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsClear(__pyx_v_self->opt)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(24, 49, __pyx_L1_error)
/* "PETSc/Options.pyx":50
* if self.opt == NULL: return
@@ -51012,6 +56090,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_19view(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -51029,6 +56108,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_19view(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -51095,7 +56175,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_18view(struct __pyx_obj_8pet
*
* def setFromOptions(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsView(__pyx_v_self->opt, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(24, 55, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsView(__pyx_v_self->opt, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(24, 55, __pyx_L1_error)
/* "PETSc/Options.pyx":52
* return self
@@ -51155,7 +56235,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_20setFromOptions(struct __py
* #
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsSetFromOptions(__pyx_v_self->opt)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(24, 58, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsSetFromOptions(__pyx_v_self->opt)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(24, 58, __pyx_L1_error)
/* "PETSc/Options.pyx":57
* CHKERR( PetscOptionsView(self.opt, vwr) )
@@ -51201,6 +56281,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_23prefixPush(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -51284,7 +56365,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_22prefixPush(struct __pyx_ob
*
* def prefixPop(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsPrefixPush(__pyx_v_self->opt, __pyx_v_cprefix)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(24, 65, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsPrefixPush(__pyx_v_self->opt, __pyx_v_cprefix)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(24, 65, __pyx_L1_error)
/* "PETSc/Options.pyx":61
* #
@@ -51346,7 +56427,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_24prefixPop(struct __pyx_obj
* #
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsPrefixPop(__pyx_v_self->opt)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(24, 68, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsPrefixPop(__pyx_v_self->opt)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(24, 68, __pyx_L1_error)
/* "PETSc/Options.pyx":67
* CHKERR( PetscOptionsPrefixPush(self.opt, cprefix) )
@@ -51392,6 +56473,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_27hasName(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -51476,7 +56558,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_26hasName(struct __pyx_obj_8
* tmp = getpair(self.prefix, name, &pr, &nm)
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( PetscOptionsHasName(self.opt, pr, nm, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
@@ -51484,20 +56566,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_26hasName(struct __pyx_obj_8
* tmp = getpair(self.prefix, name, &pr, &nm)
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( PetscOptionsHasName(self.opt, pr, nm, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsHasName(__pyx_v_self->opt, __pyx_v_pr, __pyx_v_nm, (&__pyx_v_flag))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(24, 76, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsHasName(__pyx_v_self->opt, __pyx_v_pr, __pyx_v_nm, (&__pyx_v_flag))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(24, 76, __pyx_L1_error)
/* "PETSc/Options.pyx":77
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( PetscOptionsHasName(self.opt, pr, nm, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setValue(self, name, value):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(24, 77, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(24, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -51525,7 +56607,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_26hasName(struct __pyx_obj_8
}
/* "PETSc/Options.pyx":79
- * return <bint> flag
+ * return toBool(flag)
*
* def setValue(self, name, value): # <<<<<<<<<<<<<<
* cdef const_char *pr = NULL
@@ -51549,7 +56631,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_29setValue(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -51558,6 +56642,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_29setValue(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
@@ -51732,7 +56817,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_28setValue(struct __pyx_obj_
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_2 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_2 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_2)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -51850,10 +56935,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_28setValue(struct __pyx_obj_
*
* def delValue(self, name):
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsSetValue(__pyx_v_self->opt, __pyx_v_key, __pyx_v_val)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(24, 95, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsSetValue(__pyx_v_self->opt, __pyx_v_key, __pyx_v_val)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(24, 95, __pyx_L1_error)
/* "PETSc/Options.pyx":79
- * return <bint> flag
+ * return toBool(flag)
*
* def setValue(self, name, value): # <<<<<<<<<<<<<<
* cdef const_char *pr = NULL
@@ -51902,6 +56987,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_31delValue(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -52072,7 +57158,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_30delValue(struct __pyx_obj_
*
* #
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsClearValue(__pyx_v_self->opt, __pyx_v_key)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(24, 107, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsClearValue(__pyx_v_self->opt, __pyx_v_key)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(24, 107, __pyx_L1_error)
/* "PETSc/Options.pyx":97
* CHKERR( PetscOptionsSetValue(self.opt, key, val) )
@@ -52125,7 +57211,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_33getBool(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -52134,6 +57222,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_33getBool(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_default);
@@ -52146,6 +57235,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_33getBool(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -52239,7 +57329,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_35getInt(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -52248,6 +57340,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_35getInt(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_default);
@@ -52260,6 +57353,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_35getInt(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -52353,7 +57447,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_37getReal(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -52362,6 +57458,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_37getReal(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_default);
@@ -52374,6 +57471,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_37getReal(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -52467,7 +57565,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_39getScalar(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -52476,6 +57576,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_39getScalar(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_default);
@@ -52488,6 +57589,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_39getScalar(PyObject *__pyx_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -52581,7 +57683,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_41getString(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -52590,6 +57694,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_41getString(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_default);
@@ -52602,6 +57707,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Options_41getString(PyObject *__pyx_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -52720,7 +57826,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_42getAll(struct __pyx_obj_8p
* options = bytes2str(allopts)
* CHKERR( PetscFree(allopts) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetAll(__pyx_v_self->opt, (&__pyx_v_allopts))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(24, 128, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscOptionsGetAll(__pyx_v_self->opt, (&__pyx_v_allopts))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(24, 128, __pyx_L1_error)
/* "PETSc/Options.pyx":129
* cdef char *allopts = NULL
@@ -52741,7 +57847,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_42getAll(struct __pyx_obj_8p
* return parseopt(options, self.prefix)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_allopts)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(24, 130, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_allopts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(24, 130, __pyx_L1_error)
/* "PETSc/Options.pyx":131
* options = bytes2str(allopts)
@@ -52784,16 +57890,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Options_42getAll(struct __pyx_obj_8p
/* "PETSc/Sys.pyx":6
*
* @classmethod
- * def getVersion(cls, patch=False, devel=False, # <<<<<<<<<<<<<<
- * date=False, author=False):
- * cdef int cmajor = PETSC_VERSION_MAJOR
+ * def getVersion(cls, devel=False, date=False, author=False): # <<<<<<<<<<<<<<
+ * cdef char cversion[256]
+ * cdef PetscInt major=0, minor=0, micro=0, release=0
*/
/* Python wrapper */
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_1getVersion(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Sys_getVersion[] = "Sys.getVersion(type cls, patch=False, devel=False, date=False, author=False)";
+static char __pyx_doc_8petsc4py_5PETSc_3Sys_getVersion[] = "Sys.getVersion(type cls, devel=False, date=False, author=False)";
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_1getVersion(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_patch = 0;
PyObject *__pyx_v_devel = 0;
PyObject *__pyx_v_date = 0;
PyObject *__pyx_v_author = 0;
@@ -52801,28 +57906,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_1getVersion(PyObject *__pyx_v_cl
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getVersion (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_patch,&__pyx_n_s_devel,&__pyx_n_s_date,&__pyx_n_s_author,0};
- PyObject* values[4] = {0,0,0,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_devel,&__pyx_n_s_date,&__pyx_n_s_author,0};
+ PyObject* values[3] = {0,0,0};
values[0] = ((PyObject *)Py_False);
values[1] = ((PyObject *)Py_False);
-
- /* "PETSc/Sys.pyx":7
- * @classmethod
- * def getVersion(cls, patch=False, devel=False,
- * date=False, author=False): # <<<<<<<<<<<<<<
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR
- */
values[2] = ((PyObject *)Py_False);
- values[3] = ((PyObject *)Py_False);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
- case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -52830,23 +57928,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_1getVersion(PyObject *__pyx_v_cl
switch (pos_args) {
case 0:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_patch);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_devel);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_devel);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_date);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_date);
- if (value) { values[2] = value; kw_args--; }
- }
- case 3:
- if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_author);
- if (value) { values[3] = value; kw_args--; }
+ if (value) { values[2] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
@@ -52854,460 +57949,480 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_1getVersion(PyObject *__pyx_v_cl
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
- case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
}
- __pyx_v_patch = values[0];
- __pyx_v_devel = values[1];
- __pyx_v_date = values[2];
- __pyx_v_author = values[3];
+ __pyx_v_devel = values[0];
+ __pyx_v_date = values[1];
+ __pyx_v_author = values[2];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getVersion", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 6, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getVersion", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 6, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.getVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(((PyTypeObject*)__pyx_v_cls), __pyx_v_patch, __pyx_v_devel, __pyx_v_date, __pyx_v_author);
-
- /* "PETSc/Sys.pyx":6
- *
- * @classmethod
- * def getVersion(cls, patch=False, devel=False, # <<<<<<<<<<<<<<
- * date=False, author=False):
- * cdef int cmajor = PETSC_VERSION_MAJOR
- */
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(((PyTypeObject*)__pyx_v_cls), __pyx_v_devel, __pyx_v_date, __pyx_v_author);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_patch, PyObject *__pyx_v_devel, PyObject *__pyx_v_date, PyObject *__pyx_v_author) {
- int __pyx_v_cmajor;
- int __pyx_v_cminor;
- int __pyx_v_cmicro;
- int __pyx_v_cpatch;
- int __pyx_v_cdevel;
- const char *__pyx_v_cdate;
- const char *__pyx_v_cauthorinfo;
- PyObject *__pyx_v_version = NULL;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_devel, PyObject *__pyx_v_date, PyObject *__pyx_v_author) {
+ char __pyx_v_cversion[0x100];
+ PetscInt __pyx_v_major;
+ PetscInt __pyx_v_minor;
+ PetscInt __pyx_v_micro;
+ PetscInt __pyx_v_release;
PyObject *__pyx_v_out = NULL;
+ PyObject *__pyx_v_version = NULL;
+ PyObject *__pyx_v_vstr = NULL;
PyObject *__pyx_v_s = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
- int __pyx_t_5;
+ PyObject *__pyx_t_5 = NULL;
int __pyx_t_6;
int __pyx_t_7;
- Py_ssize_t __pyx_t_8;
- PyObject *(*__pyx_t_9)(PyObject *);
- PyObject *__pyx_t_10 = NULL;
+ int __pyx_t_8;
+ Py_ssize_t __pyx_t_9;
+ PyObject *(*__pyx_t_10)(PyObject *);
+ PyObject *__pyx_t_11 = NULL;
__Pyx_RefNannySetupContext("getVersion", 0);
__Pyx_INCREF(__pyx_v_date);
__Pyx_INCREF(__pyx_v_author);
/* "PETSc/Sys.pyx":8
- * def getVersion(cls, patch=False, devel=False,
- * date=False, author=False):
- * cdef int cmajor = PETSC_VERSION_MAJOR # <<<<<<<<<<<<<<
- * cdef int cminor = PETSC_VERSION_MINOR
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
+ * def getVersion(cls, devel=False, date=False, author=False):
+ * cdef char cversion[256]
+ * cdef PetscInt major=0, minor=0, micro=0, release=0 # <<<<<<<<<<<<<<
+ * CHKERR( PetscGetVersion(cversion, sizeof(cversion)) )
+ * CHKERR( PetscGetVersionNumber(&major, &minor, µ, &release) )
*/
- __pyx_v_cmajor = PETSC_VERSION_MAJOR;
+ __pyx_v_major = 0;
+ __pyx_v_minor = 0;
+ __pyx_v_micro = 0;
+ __pyx_v_release = 0;
/* "PETSc/Sys.pyx":9
- * date=False, author=False):
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR # <<<<<<<<<<<<<<
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
- * cdef int cpatch = PETSC_VERSION_PATCH
+ * cdef char cversion[256]
+ * cdef PetscInt major=0, minor=0, micro=0, release=0
+ * CHKERR( PetscGetVersion(cversion, sizeof(cversion)) ) # <<<<<<<<<<<<<<
+ * CHKERR( PetscGetVersionNumber(&major, &minor, µ, &release) )
+ * out = version = (toInt(major), toInt(minor), toInt(micro))
*/
- __pyx_v_cminor = PETSC_VERSION_MINOR;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscGetVersion(__pyx_v_cversion, (sizeof(__pyx_v_cversion)))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(25, 9, __pyx_L1_error)
/* "PETSc/Sys.pyx":10
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR
- * cdef int cmicro = PETSC_VERSION_SUBMINOR # <<<<<<<<<<<<<<
- * cdef int cpatch = PETSC_VERSION_PATCH
- * cdef int cdevel = not PETSC_VERSION_RELEASE
+ * cdef PetscInt major=0, minor=0, micro=0, release=0
+ * CHKERR( PetscGetVersion(cversion, sizeof(cversion)) )
+ * CHKERR( PetscGetVersionNumber(&major, &minor, µ, &release) ) # <<<<<<<<<<<<<<
+ * out = version = (toInt(major), toInt(minor), toInt(micro))
+ * if devel or date or author:
*/
- __pyx_v_cmicro = PETSC_VERSION_SUBMINOR;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscGetVersionNumber((&__pyx_v_major), (&__pyx_v_minor), (&__pyx_v_micro), (&__pyx_v_release))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(25, 10, __pyx_L1_error)
/* "PETSc/Sys.pyx":11
- * cdef int cminor = PETSC_VERSION_MINOR
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
- * cdef int cpatch = PETSC_VERSION_PATCH # <<<<<<<<<<<<<<
- * cdef int cdevel = not PETSC_VERSION_RELEASE
- * cdef const_char *cdate = PETSC_VERSION_DATE
+ * CHKERR( PetscGetVersion(cversion, sizeof(cversion)) )
+ * CHKERR( PetscGetVersionNumber(&major, &minor, µ, &release) )
+ * out = version = (toInt(major), toInt(minor), toInt(micro)) # <<<<<<<<<<<<<<
+ * if devel or date or author:
+ * out = [version]
*/
- __pyx_v_cpatch = PETSC_VERSION_PATCH;
-
- /* "PETSc/Sys.pyx":12
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
- * cdef int cpatch = PETSC_VERSION_PATCH
- * cdef int cdevel = not PETSC_VERSION_RELEASE # <<<<<<<<<<<<<<
- * cdef const_char *cdate = PETSC_VERSION_DATE
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- */
- __pyx_v_cdevel = (!PETSC_VERSION_RELEASE);
-
- /* "PETSc/Sys.pyx":13
- * cdef int cpatch = PETSC_VERSION_PATCH
- * cdef int cdevel = not PETSC_VERSION_RELEASE
- * cdef const_char *cdate = PETSC_VERSION_DATE # <<<<<<<<<<<<<<
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- * version = (cmajor, cminor, cmicro)
- */
- __pyx_v_cdate = PETSC_VERSION_DATE;
-
- /* "PETSc/Sys.pyx":14
- * cdef int cdevel = not PETSC_VERSION_RELEASE
- * cdef const_char *cdate = PETSC_VERSION_DATE
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO # <<<<<<<<<<<<<<
- * version = (cmajor, cminor, cmicro)
- * out = version
- */
- __pyx_v_cauthorinfo = PETSC_AUTHOR_INFO;
-
- /* "PETSc/Sys.pyx":15
- * cdef const_char *cdate = PETSC_VERSION_DATE
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- * version = (cmajor, cminor, cmicro) # <<<<<<<<<<<<<<
- * out = version
- * if patch or devel or date or author:
- */
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_cmajor); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 15, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_cminor); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 15, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_major); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 11, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_cmicro); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 15, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_minor); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 11, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 15, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_micro); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 11, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_1);
- PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 11, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
__Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_3);
- __pyx_t_1 = 0;
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4);
__pyx_t_2 = 0;
__pyx_t_3 = 0;
- __pyx_v_version = __pyx_t_4;
__pyx_t_4 = 0;
+ __Pyx_INCREF(__pyx_t_5);
+ __pyx_v_out = __pyx_t_5;
+ __Pyx_INCREF(__pyx_t_5);
+ __pyx_v_version = __pyx_t_5;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":16
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- * version = (cmajor, cminor, cmicro)
- * out = version # <<<<<<<<<<<<<<
- * if patch or devel or date or author:
- * out = [version]
- */
- __Pyx_INCREF(__pyx_v_version);
- __pyx_v_out = __pyx_v_version;
-
- /* "PETSc/Sys.pyx":17
- * version = (cmajor, cminor, cmicro)
- * out = version
- * if patch or devel or date or author: # <<<<<<<<<<<<<<
+ /* "PETSc/Sys.pyx":12
+ * CHKERR( PetscGetVersionNumber(&major, &minor, µ, &release) )
+ * out = version = (toInt(major), toInt(minor), toInt(micro))
+ * if devel or date or author: # <<<<<<<<<<<<<<
* out = [version]
- * if patch:
+ * if devel:
*/
- __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_patch); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 17, __pyx_L1_error)
- if (!__pyx_t_6) {
- } else {
- __pyx_t_5 = __pyx_t_6;
- goto __pyx_L4_bool_binop_done;
- }
- __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_devel); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 17, __pyx_L1_error)
- if (!__pyx_t_6) {
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_devel); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(25, 12, __pyx_L1_error)
+ if (!__pyx_t_7) {
} else {
- __pyx_t_5 = __pyx_t_6;
+ __pyx_t_6 = __pyx_t_7;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_date); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 17, __pyx_L1_error)
- if (!__pyx_t_6) {
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_date); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(25, 12, __pyx_L1_error)
+ if (!__pyx_t_7) {
} else {
- __pyx_t_5 = __pyx_t_6;
+ __pyx_t_6 = __pyx_t_7;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_author); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 17, __pyx_L1_error)
- __pyx_t_5 = __pyx_t_6;
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_author); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(25, 12, __pyx_L1_error)
+ __pyx_t_6 = __pyx_t_7;
__pyx_L4_bool_binop_done:;
- if (__pyx_t_5) {
+ if (__pyx_t_6) {
- /* "PETSc/Sys.pyx":18
- * out = version
- * if patch or devel or date or author:
+ /* "PETSc/Sys.pyx":13
+ * out = version = (toInt(major), toInt(minor), toInt(micro))
+ * if devel or date or author:
* out = [version] # <<<<<<<<<<<<<<
- * if patch:
- * out.append(cpatch)
+ * if devel:
+ * out.append(not <bint>release)
*/
- __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 18, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 13, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_version);
__Pyx_GIVEREF(__pyx_v_version);
- PyList_SET_ITEM(__pyx_t_4, 0, __pyx_v_version);
- __Pyx_DECREF_SET(__pyx_v_out, __pyx_t_4);
- __pyx_t_4 = 0;
+ PyList_SET_ITEM(__pyx_t_5, 0, __pyx_v_version);
+ __Pyx_DECREF_SET(__pyx_v_out, __pyx_t_5);
+ __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":19
- * if patch or devel or date or author:
+ /* "PETSc/Sys.pyx":14
+ * if devel or date or author:
* out = [version]
- * if patch: # <<<<<<<<<<<<<<
- * out.append(cpatch)
- * if devel:
+ * if devel: # <<<<<<<<<<<<<<
+ * out.append(not <bint>release)
+ * if date:
*/
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_patch); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(25, 19, __pyx_L1_error)
- if (__pyx_t_5) {
+ __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_devel); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 14, __pyx_L1_error)
+ if (__pyx_t_6) {
- /* "PETSc/Sys.pyx":20
+ /* "PETSc/Sys.pyx":15
* out = [version]
- * if patch:
- * out.append(cpatch) # <<<<<<<<<<<<<<
* if devel:
- * out.append(<bint>cdevel)
+ * out.append(not <bint>release) # <<<<<<<<<<<<<<
+ * if date:
+ * vstr = bytes2str(cversion)
*/
- __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_cpatch); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 20, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_out, __pyx_t_4); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(25, 20, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_5 = __Pyx_PyBool_FromLong((!((__pyx_v_release != 0) != 0))); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 15, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_8 = __Pyx_PyObject_Append(__pyx_v_out, __pyx_t_5); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(25, 15, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":19
- * if patch or devel or date or author:
+ /* "PETSc/Sys.pyx":14
+ * if devel or date or author:
* out = [version]
- * if patch: # <<<<<<<<<<<<<<
- * out.append(cpatch)
- * if devel:
- */
- }
-
- /* "PETSc/Sys.pyx":21
- * if patch:
- * out.append(cpatch)
* if devel: # <<<<<<<<<<<<<<
- * out.append(<bint>cdevel)
+ * out.append(not <bint>release)
* if date:
*/
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_devel); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(25, 21, __pyx_L1_error)
- if (__pyx_t_5) {
+ }
- /* "PETSc/Sys.pyx":22
- * out.append(cpatch)
+ /* "PETSc/Sys.pyx":16
* if devel:
- * out.append(<bint>cdevel) # <<<<<<<<<<<<<<
+ * out.append(not <bint>release)
+ * if date: # <<<<<<<<<<<<<<
+ * vstr = bytes2str(cversion)
+ * if release != 0:
+ */
+ __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_date); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 16, __pyx_L1_error)
+ if (__pyx_t_6) {
+
+ /* "PETSc/Sys.pyx":17
+ * out.append(not <bint>release)
* if date:
- * date = bytes2str(cdate)
+ * vstr = bytes2str(cversion) # <<<<<<<<<<<<<<
+ * if release != 0:
+ * date = vstr.split(",", 1)[-1].strip()
*/
- __pyx_t_4 = __Pyx_PyBool_FromLong((__pyx_v_cdevel != 0)); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 22, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_out, __pyx_t_4); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(25, 22, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cversion); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 17, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_v_vstr = __pyx_t_5;
+ __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":21
- * if patch:
- * out.append(cpatch)
- * if devel: # <<<<<<<<<<<<<<
- * out.append(<bint>cdevel)
+ /* "PETSc/Sys.pyx":18
* if date:
+ * vstr = bytes2str(cversion)
+ * if release != 0: # <<<<<<<<<<<<<<
+ * date = vstr.split(",", 1)[-1].strip()
+ * else:
*/
- }
+ __pyx_t_6 = ((__pyx_v_release != 0) != 0);
+ if (__pyx_t_6) {
- /* "PETSc/Sys.pyx":23
- * if devel:
- * out.append(<bint>cdevel)
- * if date: # <<<<<<<<<<<<<<
- * date = bytes2str(cdate)
- * out.append(date)
+ /* "PETSc/Sys.pyx":19
+ * vstr = bytes2str(cversion)
+ * if release != 0:
+ * date = vstr.split(",", 1)[-1].strip() # <<<<<<<<<<<<<<
+ * else:
+ * date = vstr.split("GIT Date:")[-1].strip()
*/
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_date); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(25, 23, __pyx_L1_error)
- if (__pyx_t_5) {
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_vstr, __pyx_n_s_split); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__34, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_3, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_strip); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_4 = NULL;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) {
+ __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
+ if (likely(__pyx_t_4)) {
+ PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
+ __Pyx_INCREF(__pyx_t_4);
+ __Pyx_INCREF(function);
+ __Pyx_DECREF_SET(__pyx_t_3, function);
+ }
+ }
+ if (__pyx_t_4) {
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 19, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ } else {
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 19, __pyx_L1_error)
+ }
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF_SET(__pyx_v_date, __pyx_t_5);
+ __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":24
- * out.append(<bint>cdevel)
+ /* "PETSc/Sys.pyx":18
* if date:
- * date = bytes2str(cdate) # <<<<<<<<<<<<<<
+ * vstr = bytes2str(cversion)
+ * if release != 0: # <<<<<<<<<<<<<<
+ * date = vstr.split(",", 1)[-1].strip()
+ * else:
+ */
+ goto __pyx_L9;
+ }
+
+ /* "PETSc/Sys.pyx":21
+ * date = vstr.split(",", 1)[-1].strip()
+ * else:
+ * date = vstr.split("GIT Date:")[-1].strip() # <<<<<<<<<<<<<<
* out.append(date)
* if author:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cdate); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 24, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF_SET(__pyx_v_date, __pyx_t_4);
- __pyx_t_4 = 0;
+ /*else*/ {
+ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_vstr, __pyx_n_s_split); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__35, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_4, -1L, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_strip); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_3 = NULL;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
+ __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4);
+ if (likely(__pyx_t_3)) {
+ PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
+ __Pyx_INCREF(__pyx_t_3);
+ __Pyx_INCREF(function);
+ __Pyx_DECREF_SET(__pyx_t_4, function);
+ }
+ }
+ if (__pyx_t_3) {
+ __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 21, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else {
+ __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 21, __pyx_L1_error)
+ }
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_DECREF_SET(__pyx_v_date, __pyx_t_5);
+ __pyx_t_5 = 0;
+ }
+ __pyx_L9:;
- /* "PETSc/Sys.pyx":25
- * if date:
- * date = bytes2str(cdate)
+ /* "PETSc/Sys.pyx":22
+ * else:
+ * date = vstr.split("GIT Date:")[-1].strip()
* out.append(date) # <<<<<<<<<<<<<<
* if author:
- * author = bytes2str(cauthorinfo).split('\n')
+ * author = bytes2str(PETSC_AUTHOR_INFO).split('\n')
*/
- __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_out, __pyx_v_date); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Append(__pyx_v_out, __pyx_v_date); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(25, 22, __pyx_L1_error)
- /* "PETSc/Sys.pyx":23
+ /* "PETSc/Sys.pyx":16
* if devel:
- * out.append(<bint>cdevel)
+ * out.append(not <bint>release)
* if date: # <<<<<<<<<<<<<<
- * date = bytes2str(cdate)
- * out.append(date)
+ * vstr = bytes2str(cversion)
+ * if release != 0:
*/
}
- /* "PETSc/Sys.pyx":26
- * date = bytes2str(cdate)
+ /* "PETSc/Sys.pyx":23
+ * date = vstr.split("GIT Date:")[-1].strip()
* out.append(date)
* if author: # <<<<<<<<<<<<<<
- * author = bytes2str(cauthorinfo).split('\n')
- * author = [s.strip() for s in author if s]
+ * author = bytes2str(PETSC_AUTHOR_INFO).split('\n')
+ * author = tuple([s.strip() for s in author if s])
*/
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_author); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(25, 26, __pyx_L1_error)
- if (__pyx_t_5) {
+ __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_author); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 23, __pyx_L1_error)
+ if (__pyx_t_6) {
- /* "PETSc/Sys.pyx":27
+ /* "PETSc/Sys.pyx":24
* out.append(date)
* if author:
- * author = bytes2str(cauthorinfo).split('\n') # <<<<<<<<<<<<<<
- * author = [s.strip() for s in author if s]
+ * author = bytes2str(PETSC_AUTHOR_INFO).split('\n') # <<<<<<<<<<<<<<
+ * author = tuple([s.strip() for s in author if s])
* out.append(author)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cauthorinfo); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 27, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_bytes2str(PETSC_AUTHOR_INFO); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 24, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_split); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 24, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_split); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 27, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__36, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 24, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__33, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 27, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __Pyx_DECREF_SET(__pyx_v_author, __pyx_t_4);
- __pyx_t_4 = 0;
+ __Pyx_DECREF_SET(__pyx_v_author, __pyx_t_5);
+ __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":28
+ /* "PETSc/Sys.pyx":25
* if author:
- * author = bytes2str(cauthorinfo).split('\n')
- * author = [s.strip() for s in author if s] # <<<<<<<<<<<<<<
+ * author = bytes2str(PETSC_AUTHOR_INFO).split('\n')
+ * author = tuple([s.strip() for s in author if s]) # <<<<<<<<<<<<<<
* out.append(author)
* return tuple(out)
*/
- __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 28, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
if (likely(PyList_CheckExact(__pyx_v_author)) || PyTuple_CheckExact(__pyx_v_author)) {
- __pyx_t_3 = __pyx_v_author; __Pyx_INCREF(__pyx_t_3); __pyx_t_8 = 0;
- __pyx_t_9 = NULL;
+ __pyx_t_4 = __pyx_v_author; __Pyx_INCREF(__pyx_t_4); __pyx_t_9 = 0;
+ __pyx_t_10 = NULL;
} else {
- __pyx_t_8 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_author); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 28, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __pyx_t_9 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_9)) __PYX_ERR(25, 28, __pyx_L1_error)
+ __pyx_t_9 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_author); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_10 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_10)) __PYX_ERR(25, 25, __pyx_L1_error)
}
for (;;) {
- if (likely(!__pyx_t_9)) {
- if (likely(PyList_CheckExact(__pyx_t_3))) {
- if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_8); __Pyx_INCREF(__pyx_t_2); __pyx_t_8++; if (unlikely(0 < 0)) __PYX_ERR(25, 28, __pyx_L1_error)
+ if (likely(!__pyx_t_10)) {
+ if (likely(PyList_CheckExact(__pyx_t_4))) {
+ if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_4)) break;
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_9); __Pyx_INCREF(__pyx_t_3); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(25, 25, __pyx_L1_error)
#else
- __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 28, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
#endif
} else {
- if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_8); __Pyx_INCREF(__pyx_t_2); __pyx_t_8++; if (unlikely(0 < 0)) __PYX_ERR(25, 28, __pyx_L1_error)
+ if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_9); __Pyx_INCREF(__pyx_t_3); __pyx_t_9++; if (unlikely(0 < 0)) __PYX_ERR(25, 25, __pyx_L1_error)
#else
- __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 28, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
#endif
}
} else {
- __pyx_t_2 = __pyx_t_9(__pyx_t_3);
- if (unlikely(!__pyx_t_2)) {
+ __pyx_t_3 = __pyx_t_10(__pyx_t_4);
+ if (unlikely(!__pyx_t_3)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(25, 28, __pyx_L1_error)
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ else __PYX_ERR(25, 25, __pyx_L1_error)
}
break;
}
- __Pyx_GOTREF(__pyx_t_2);
+ __Pyx_GOTREF(__pyx_t_3);
}
- __Pyx_XDECREF_SET(__pyx_v_s, __pyx_t_2);
- __pyx_t_2 = 0;
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_s); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(25, 28, __pyx_L1_error)
- if (__pyx_t_5) {
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_s, __pyx_n_s_strip); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 28, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_10 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
- __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_1);
- if (likely(__pyx_t_10)) {
- PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
- __Pyx_INCREF(__pyx_t_10);
+ __Pyx_XDECREF_SET(__pyx_v_s, __pyx_t_3);
+ __pyx_t_3 = 0;
+ __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_s); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 25, __pyx_L1_error)
+ if (__pyx_t_6) {
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_s, __pyx_n_s_strip); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_11 = NULL;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
+ __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_2);
+ if (likely(__pyx_t_11)) {
+ PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_11);
__Pyx_INCREF(function);
- __Pyx_DECREF_SET(__pyx_t_1, function);
+ __Pyx_DECREF_SET(__pyx_t_2, function);
}
}
- if (__pyx_t_10) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 28, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
+ if (__pyx_t_11) {
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
} else {
- __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 28, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 25, __pyx_L1_error)
}
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_2))) __PYX_ERR(25, 28, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_3))) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
}
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_4 = PyList_AsTuple(((PyObject*)__pyx_t_5)); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_author, __pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/Sys.pyx":29
- * author = bytes2str(cauthorinfo).split('\n')
- * author = [s.strip() for s in author if s]
+ /* "PETSc/Sys.pyx":26
+ * author = bytes2str(PETSC_AUTHOR_INFO).split('\n')
+ * author = tuple([s.strip() for s in author if s])
* out.append(author) # <<<<<<<<<<<<<<
* return tuple(out)
*
*/
- __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_out, __pyx_v_author); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(25, 29, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Append(__pyx_v_out, __pyx_v_author); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(25, 26, __pyx_L1_error)
- /* "PETSc/Sys.pyx":26
- * date = bytes2str(cdate)
+ /* "PETSc/Sys.pyx":23
+ * date = vstr.split("GIT Date:")[-1].strip()
* out.append(date)
* if author: # <<<<<<<<<<<<<<
- * author = bytes2str(cauthorinfo).split('\n')
- * author = [s.strip() for s in author if s]
+ * author = bytes2str(PETSC_AUTHOR_INFO).split('\n')
+ * author = tuple([s.strip() for s in author if s])
*/
}
- /* "PETSc/Sys.pyx":17
- * version = (cmajor, cminor, cmicro)
- * out = version
- * if patch or devel or date or author: # <<<<<<<<<<<<<<
+ /* "PETSc/Sys.pyx":12
+ * CHKERR( PetscGetVersionNumber(&major, &minor, µ, &release) )
+ * out = version = (toInt(major), toInt(minor), toInt(micro))
+ * if devel or date or author: # <<<<<<<<<<<<<<
* out = [version]
- * if patch:
+ * if devel:
*/
}
- /* "PETSc/Sys.pyx":30
- * author = [s.strip() for s in author if s]
+ /* "PETSc/Sys.pyx":27
+ * author = tuple([s.strip() for s in author if s])
* out.append(author)
* return tuple(out) # <<<<<<<<<<<<<<
*
* @classmethod
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PySequence_Tuple(__pyx_v_out); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 30, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_out); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 27, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
@@ -53316,23 +58431,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(CYTHON_UNUSED PyTypeO
/* "PETSc/Sys.pyx":6
*
* @classmethod
- * def getVersion(cls, patch=False, devel=False, # <<<<<<<<<<<<<<
- * date=False, author=False):
- * cdef int cmajor = PETSC_VERSION_MAJOR
+ * def getVersion(cls, devel=False, date=False, author=False): # <<<<<<<<<<<<<<
+ * cdef char cversion[256]
+ * cdef PetscInt major=0, minor=0, micro=0, release=0
*/
/* function exit code */
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
- __Pyx_XDECREF(__pyx_t_10);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_XDECREF(__pyx_t_11);
__Pyx_AddTraceback("petsc4py.PETSc.Sys.getVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XDECREF(__pyx_v_version);
__Pyx_XDECREF(__pyx_v_out);
+ __Pyx_XDECREF(__pyx_v_version);
+ __Pyx_XDECREF(__pyx_v_vstr);
__Pyx_XDECREF(__pyx_v_s);
__Pyx_XDECREF(__pyx_v_date);
__Pyx_XDECREF(__pyx_v_author);
@@ -53341,12 +58457,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_getVersion(CYTHON_UNUSED PyTypeO
return __pyx_r;
}
-/* "PETSc/Sys.pyx":33
+/* "PETSc/Sys.pyx":30
*
* @classmethod
* def getVersionInfo(cls): # <<<<<<<<<<<<<<
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR
+ * version, dev, date, author = cls.getVersion(True, True, True)
+ * return dict(major = version[0],
*/
/* Python wrapper */
@@ -53366,306 +58482,213 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_3getVersionInfo(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_2getVersionInfo(CYTHON_UNUSED PyTypeObject *__pyx_v_cls) {
- int __pyx_v_cmajor;
- int __pyx_v_cminor;
- int __pyx_v_cmicro;
- int __pyx_v_cpatch;
- int __pyx_v_crelease;
- const char *__pyx_v_cdate;
- const char *__pyx_v_cauthorinfo;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_2getVersionInfo(PyTypeObject *__pyx_v_cls) {
+ PyObject *__pyx_v_version = NULL;
+ PyObject *__pyx_v_dev = NULL;
+ PyObject *__pyx_v_date = NULL;
PyObject *__pyx_v_author = NULL;
- PyObject *__pyx_v_s = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
- Py_ssize_t __pyx_t_3;
- PyObject *(*__pyx_t_4)(PyObject *);
+ PyObject *__pyx_t_3 = NULL;
+ PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
- int __pyx_t_6;
- PyObject *__pyx_t_7 = NULL;
- PyObject *__pyx_t_8 = NULL;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *(*__pyx_t_7)(PyObject *);
+ int __pyx_t_8;
__Pyx_RefNannySetupContext("getVersionInfo", 0);
- /* "PETSc/Sys.pyx":34
+ /* "PETSc/Sys.pyx":31
* @classmethod
* def getVersionInfo(cls):
- * cdef int cmajor = PETSC_VERSION_MAJOR # <<<<<<<<<<<<<<
- * cdef int cminor = PETSC_VERSION_MINOR
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
- */
- __pyx_v_cmajor = PETSC_VERSION_MAJOR;
-
- /* "PETSc/Sys.pyx":35
- * def getVersionInfo(cls):
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR # <<<<<<<<<<<<<<
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
- * cdef int cpatch = PETSC_VERSION_PATCH
- */
- __pyx_v_cminor = PETSC_VERSION_MINOR;
-
- /* "PETSc/Sys.pyx":36
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR
- * cdef int cmicro = PETSC_VERSION_SUBMINOR # <<<<<<<<<<<<<<
- * cdef int cpatch = PETSC_VERSION_PATCH
- * cdef int crelease = PETSC_VERSION_RELEASE
- */
- __pyx_v_cmicro = PETSC_VERSION_SUBMINOR;
-
- /* "PETSc/Sys.pyx":37
- * cdef int cminor = PETSC_VERSION_MINOR
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
- * cdef int cpatch = PETSC_VERSION_PATCH # <<<<<<<<<<<<<<
- * cdef int crelease = PETSC_VERSION_RELEASE
- * cdef const_char *cdate = PETSC_VERSION_DATE
- */
- __pyx_v_cpatch = PETSC_VERSION_PATCH;
-
- /* "PETSc/Sys.pyx":38
- * cdef int cmicro = PETSC_VERSION_SUBMINOR
- * cdef int cpatch = PETSC_VERSION_PATCH
- * cdef int crelease = PETSC_VERSION_RELEASE # <<<<<<<<<<<<<<
- * cdef const_char *cdate = PETSC_VERSION_DATE
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- */
- __pyx_v_crelease = PETSC_VERSION_RELEASE;
-
- /* "PETSc/Sys.pyx":39
- * cdef int cpatch = PETSC_VERSION_PATCH
- * cdef int crelease = PETSC_VERSION_RELEASE
- * cdef const_char *cdate = PETSC_VERSION_DATE # <<<<<<<<<<<<<<
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- * author = bytes2str(cauthorinfo).split('\n')
- */
- __pyx_v_cdate = PETSC_VERSION_DATE;
-
- /* "PETSc/Sys.pyx":40
- * cdef int crelease = PETSC_VERSION_RELEASE
- * cdef const_char *cdate = PETSC_VERSION_DATE
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO # <<<<<<<<<<<<<<
- * author = bytes2str(cauthorinfo).split('\n')
- * author = [s.strip() for s in author if s]
+ * version, dev, date, author = cls.getVersion(True, True, True) # <<<<<<<<<<<<<<
+ * return dict(major = version[0],
+ * minor = version[1],
*/
- __pyx_v_cauthorinfo = PETSC_AUTHOR_INFO;
-
- /* "PETSc/Sys.pyx":41
- * cdef const_char *cdate = PETSC_VERSION_DATE
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- * author = bytes2str(cauthorinfo).split('\n') # <<<<<<<<<<<<<<
- * author = [s.strip() for s in author if s]
- * return dict(major = cmajor,
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cauthorinfo); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 41, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_cls), __pyx_n_s_getVersion); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 31, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_split); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 41, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__37, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 31, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__34, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 41, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_v_author = __pyx_t_1;
- __pyx_t_1 = 0;
-
- /* "PETSc/Sys.pyx":42
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- * author = bytes2str(cauthorinfo).split('\n')
- * author = [s.strip() for s in author if s] # <<<<<<<<<<<<<<
- * return dict(major = cmajor,
- * minor = cminor,
- */
- __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 42, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (likely(PyList_CheckExact(__pyx_v_author)) || PyTuple_CheckExact(__pyx_v_author)) {
- __pyx_t_2 = __pyx_v_author; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
- __pyx_t_4 = NULL;
- } else {
- __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_author); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 42, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 42, __pyx_L1_error)
- }
- for (;;) {
- if (likely(!__pyx_t_4)) {
- if (likely(PyList_CheckExact(__pyx_t_2))) {
- if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_5 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(25, 42, __pyx_L1_error)
- #else
- __pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 42, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- #endif
- } else {
- if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(25, 42, __pyx_L1_error)
- #else
- __pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 42, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- #endif
- }
+ if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
+ PyObject* sequence = __pyx_t_2;
+ #if !CYTHON_COMPILING_IN_PYPY
+ Py_ssize_t size = Py_SIZE(sequence);
+ #else
+ Py_ssize_t size = PySequence_Size(sequence);
+ #endif
+ if (unlikely(size != 4)) {
+ if (size > 4) __Pyx_RaiseTooManyValuesError(4);
+ else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
+ __PYX_ERR(25, 31, __pyx_L1_error)
+ }
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ if (likely(PyTuple_CheckExact(sequence))) {
+ __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
+ __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
+ __pyx_t_4 = PyTuple_GET_ITEM(sequence, 2);
+ __pyx_t_5 = PyTuple_GET_ITEM(sequence, 3);
} else {
- __pyx_t_5 = __pyx_t_4(__pyx_t_2);
- if (unlikely(!__pyx_t_5)) {
- PyObject* exc_type = PyErr_Occurred();
- if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(25, 42, __pyx_L1_error)
- }
- break;
- }
- __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
+ __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
+ __pyx_t_4 = PyList_GET_ITEM(sequence, 2);
+ __pyx_t_5 = PyList_GET_ITEM(sequence, 3);
}
- __Pyx_XDECREF_SET(__pyx_v_s, __pyx_t_5);
- __pyx_t_5 = 0;
- __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_s); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(25, 42, __pyx_L1_error)
- if (__pyx_t_6) {
- __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_s, __pyx_n_s_strip); if (unlikely(!__pyx_t_7)) __PYX_ERR(25, 42, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
- __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7);
- if (likely(__pyx_t_8)) {
- PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
- __Pyx_INCREF(__pyx_t_8);
- __Pyx_INCREF(function);
- __Pyx_DECREF_SET(__pyx_t_7, function);
- }
- }
- if (__pyx_t_8) {
- __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 42, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- } else {
- __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 42, __pyx_L1_error)
+ __Pyx_INCREF(__pyx_t_1);
+ __Pyx_INCREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_t_4);
+ __Pyx_INCREF(__pyx_t_5);
+ #else
+ {
+ Py_ssize_t i;
+ PyObject** temps[4] = {&__pyx_t_1,&__pyx_t_3,&__pyx_t_4,&__pyx_t_5};
+ for (i=0; i < 4; i++) {
+ PyObject* item = PySequence_ITEM(sequence, i); if (unlikely(!item)) __PYX_ERR(25, 31, __pyx_L1_error)
+ __Pyx_GOTREF(item);
+ *(temps[i]) = item;
}
- __Pyx_GOTREF(__pyx_t_5);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_5))) __PYX_ERR(25, 42, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
+ #endif
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ } else {
+ Py_ssize_t index = -1;
+ PyObject** temps[4] = {&__pyx_t_1,&__pyx_t_3,&__pyx_t_4,&__pyx_t_5};
+ __pyx_t_6 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(25, 31, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
+ for (index=0; index < 4; index++) {
+ PyObject* item = __pyx_t_7(__pyx_t_6); if (unlikely(!item)) goto __pyx_L3_unpacking_failed;
+ __Pyx_GOTREF(item);
+ *(temps[index]) = item;
+ }
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 4) < 0) __PYX_ERR(25, 31, __pyx_L1_error)
+ __pyx_t_7 = NULL;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ goto __pyx_L4_unpacking_done;
+ __pyx_L3_unpacking_failed:;
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __pyx_t_7 = NULL;
+ if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
+ __PYX_ERR(25, 31, __pyx_L1_error)
+ __pyx_L4_unpacking_done:;
}
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __Pyx_DECREF_SET(__pyx_v_author, __pyx_t_1);
+ __pyx_v_version = __pyx_t_1;
__pyx_t_1 = 0;
+ __pyx_v_dev = __pyx_t_3;
+ __pyx_t_3 = 0;
+ __pyx_v_date = __pyx_t_4;
+ __pyx_t_4 = 0;
+ __pyx_v_author = __pyx_t_5;
+ __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":43
- * author = bytes2str(cauthorinfo).split('\n')
- * author = [s.strip() for s in author if s]
- * return dict(major = cmajor, # <<<<<<<<<<<<<<
- * minor = cminor,
- * subminor = cmicro,
+ /* "PETSc/Sys.pyx":32
+ * def getVersionInfo(cls):
+ * version, dev, date, author = cls.getVersion(True, True, True)
+ * return dict(major = version[0], # <<<<<<<<<<<<<<
+ * minor = version[1],
+ * subminor = version[2],
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_cmajor); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_major, __pyx_t_2) < 0) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
-
- /* "PETSc/Sys.pyx":44
- * author = [s.strip() for s in author if s]
- * return dict(major = cmajor,
- * minor = cminor, # <<<<<<<<<<<<<<
- * subminor = cmicro,
- * patch = cpatch,
- */
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_cminor); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 44, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 32, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_minor, __pyx_t_2) < 0) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_version, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 32, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_major, __pyx_t_5) < 0) __PYX_ERR(25, 32, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":45
- * return dict(major = cmajor,
- * minor = cminor,
- * subminor = cmicro, # <<<<<<<<<<<<<<
- * patch = cpatch,
- * release = <bint>crelease,
+ /* "PETSc/Sys.pyx":33
+ * version, dev, date, author = cls.getVersion(True, True, True)
+ * return dict(major = version[0],
+ * minor = version[1], # <<<<<<<<<<<<<<
+ * subminor = version[2],
+ * release = not dev,
*/
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_cmicro); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 45, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_subminor, __pyx_t_2) < 0) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_version, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 33, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_minor, __pyx_t_5) < 0) __PYX_ERR(25, 32, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":46
- * minor = cminor,
- * subminor = cmicro,
- * patch = cpatch, # <<<<<<<<<<<<<<
- * release = <bint>crelease,
- * date = bytes2str(cdate),
+ /* "PETSc/Sys.pyx":34
+ * return dict(major = version[0],
+ * minor = version[1],
+ * subminor = version[2], # <<<<<<<<<<<<<<
+ * release = not dev,
+ * date = date,
*/
- __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_cpatch); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 46, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_patch, __pyx_t_2) < 0) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_version, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 34, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_subminor, __pyx_t_5) < 0) __PYX_ERR(25, 32, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":47
- * subminor = cmicro,
- * patch = cpatch,
- * release = <bint>crelease, # <<<<<<<<<<<<<<
- * date = bytes2str(cdate),
+ /* "PETSc/Sys.pyx":35
+ * minor = version[1],
+ * subminor = version[2],
+ * release = not dev, # <<<<<<<<<<<<<<
+ * date = date,
* authorinfo = author)
*/
- __pyx_t_2 = __Pyx_PyBool_FromLong((__pyx_v_crelease != 0)); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 47, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_release, __pyx_t_2) < 0) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_dev); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(25, 35, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyBool_FromLong((!__pyx_t_8)); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 35, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_release, __pyx_t_5) < 0) __PYX_ERR(25, 32, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Sys.pyx":48
- * patch = cpatch,
- * release = <bint>crelease,
- * date = bytes2str(cdate), # <<<<<<<<<<<<<<
+ /* "PETSc/Sys.pyx":36
+ * subminor = version[2],
+ * release = not dev,
+ * date = date, # <<<<<<<<<<<<<<
* authorinfo = author)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cdate); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 48, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_date, __pyx_t_2) < 0) __PYX_ERR(25, 43, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_date, __pyx_v_date) < 0) __PYX_ERR(25, 32, __pyx_L1_error)
- /* "PETSc/Sys.pyx":49
- * release = <bint>crelease,
- * date = bytes2str(cdate),
+ /* "PETSc/Sys.pyx":37
+ * release = not dev,
+ * date = date,
* authorinfo = author) # <<<<<<<<<<<<<<
*
* # --- xxx ---
*/
- if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_authorinfo, __pyx_v_author) < 0) __PYX_ERR(25, 43, __pyx_L1_error)
- __pyx_r = __pyx_t_1;
- __pyx_t_1 = 0;
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_authorinfo, __pyx_v_author) < 0) __PYX_ERR(25, 32, __pyx_L1_error)
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Sys.pyx":33
+ /* "PETSc/Sys.pyx":30
*
* @classmethod
* def getVersionInfo(cls): # <<<<<<<<<<<<<<
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR
+ * version, dev, date, author = cls.getVersion(True, True, True)
+ * return dict(major = version[0],
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
- __Pyx_XDECREF(__pyx_t_7);
- __Pyx_XDECREF(__pyx_t_8);
+ __Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("petsc4py.PETSc.Sys.getVersionInfo", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_version);
+ __Pyx_XDECREF(__pyx_v_dev);
+ __Pyx_XDECREF(__pyx_v_date);
__Pyx_XDECREF(__pyx_v_author);
- __Pyx_XDECREF(__pyx_v_s);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/Sys.pyx":54
+/* "PETSc/Sys.pyx":42
*
* @classmethod
* def isInitialized(cls): # <<<<<<<<<<<<<<
- * return <bint>PetscInitializeCalled
+ * return toBool(PetscInitializeCalled)
*
*/
@@ -53692,25 +58715,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_4isInitialized(CYTHON_UNUSED PyT
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("isInitialized", 0);
- /* "PETSc/Sys.pyx":55
+ /* "PETSc/Sys.pyx":43
* @classmethod
* def isInitialized(cls):
- * return <bint>PetscInitializeCalled # <<<<<<<<<<<<<<
+ * return toBool(PetscInitializeCalled) # <<<<<<<<<<<<<<
*
* @classmethod
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_PetscBool(PetscInitializeCalled); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 55, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toBool(PetscInitializeCalled); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 43, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Sys.pyx":54
+ /* "PETSc/Sys.pyx":42
*
* @classmethod
* def isInitialized(cls): # <<<<<<<<<<<<<<
- * return <bint>PetscInitializeCalled
+ * return toBool(PetscInitializeCalled)
*
*/
@@ -53725,11 +58748,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_4isInitialized(CYTHON_UNUSED PyT
return __pyx_r;
}
-/* "PETSc/Sys.pyx":58
+/* "PETSc/Sys.pyx":46
*
* @classmethod
* def isFinalized(cls): # <<<<<<<<<<<<<<
- * return <bint>PetscFinalizeCalled
+ * return toBool(PetscFinalizeCalled)
*
*/
@@ -53756,25 +58779,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_6isFinalized(CYTHON_UNUSED PyTyp
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("isFinalized", 0);
- /* "PETSc/Sys.pyx":59
+ /* "PETSc/Sys.pyx":47
* @classmethod
* def isFinalized(cls):
- * return <bint>PetscFinalizeCalled # <<<<<<<<<<<<<<
+ * return toBool(PetscFinalizeCalled) # <<<<<<<<<<<<<<
*
* # --- xxx ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_PetscBool(PetscFinalizeCalled); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 59, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toBool(PetscFinalizeCalled); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 47, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Sys.pyx":58
+ /* "PETSc/Sys.pyx":46
*
* @classmethod
* def isFinalized(cls): # <<<<<<<<<<<<<<
- * return <bint>PetscFinalizeCalled
+ * return toBool(PetscFinalizeCalled)
*
*/
@@ -53789,7 +58812,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_6isFinalized(CYTHON_UNUSED PyTyp
return __pyx_r;
}
-/* "PETSc/Sys.pyx":64
+/* "PETSc/Sys.pyx":52
*
* @classmethod
* def getDefaultComm(cls): # <<<<<<<<<<<<<<
@@ -53821,19 +58844,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_8getDefaultComm(CYTHON_UNUSED Py
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getDefaultComm", 0);
- /* "PETSc/Sys.pyx":65
+ /* "PETSc/Sys.pyx":53
* @classmethod
* def getDefaultComm(cls):
* cdef Comm comm = Comm() # <<<<<<<<<<<<<<
* comm.comm = PETSC_COMM_DEFAULT
* return comm
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 65, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 53, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_comm = ((struct PyPetscCommObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":66
+ /* "PETSc/Sys.pyx":54
* def getDefaultComm(cls):
* cdef Comm comm = Comm()
* comm.comm = PETSC_COMM_DEFAULT # <<<<<<<<<<<<<<
@@ -53842,7 +58865,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_8getDefaultComm(CYTHON_UNUSED Py
*/
__pyx_v_comm->comm = __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT;
- /* "PETSc/Sys.pyx":67
+ /* "PETSc/Sys.pyx":55
* cdef Comm comm = Comm()
* comm.comm = PETSC_COMM_DEFAULT
* return comm # <<<<<<<<<<<<<<
@@ -53854,7 +58877,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_8getDefaultComm(CYTHON_UNUSED Py
__pyx_r = ((PyObject *)__pyx_v_comm);
goto __pyx_L0;
- /* "PETSc/Sys.pyx":64
+ /* "PETSc/Sys.pyx":52
*
* @classmethod
* def getDefaultComm(cls): # <<<<<<<<<<<<<<
@@ -53874,7 +58897,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_8getDefaultComm(CYTHON_UNUSED Py
return __pyx_r;
}
-/* "PETSc/Sys.pyx":70
+/* "PETSc/Sys.pyx":58
*
* @classmethod
* def setDefaultComm(cls, comm): # <<<<<<<<<<<<<<
@@ -53898,6 +58921,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_11setDefaultComm(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -53908,7 +58932,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_11setDefaultComm(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDefaultComm") < 0)) __PYX_ERR(25, 70, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDefaultComm") < 0)) __PYX_ERR(25, 58, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -53919,7 +58943,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_11setDefaultComm(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDefaultComm", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 70, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDefaultComm", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 58, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.setDefaultComm", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -53941,17 +58965,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_10setDefaultComm(CYTHON_UNUSED P
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("setDefaultComm", 0);
- /* "PETSc/Sys.pyx":71
+ /* "PETSc/Sys.pyx":59
* @classmethod
* def setDefaultComm(cls, comm):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_WORLD) # <<<<<<<<<<<<<<
* if ccomm == MPI_COMM_NULL:
* raise ValueError("null communicator")
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, PETSC_COMM_WORLD); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 71, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, PETSC_COMM_WORLD); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 59, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Sys.pyx":72
+ /* "PETSc/Sys.pyx":60
* def setDefaultComm(cls, comm):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_WORLD)
* if ccomm == MPI_COMM_NULL: # <<<<<<<<<<<<<<
@@ -53961,20 +58985,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_10setDefaultComm(CYTHON_UNUSED P
__pyx_t_2 = ((__pyx_v_ccomm == MPI_COMM_NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Sys.pyx":73
+ /* "PETSc/Sys.pyx":61
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_WORLD)
* if ccomm == MPI_COMM_NULL:
* raise ValueError("null communicator") # <<<<<<<<<<<<<<
* global PETSC_COMM_DEFAULT
* PETSC_COMM_DEFAULT = ccomm
*/
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__35, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 73, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__38, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 61, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(25, 73, __pyx_L1_error)
+ __PYX_ERR(25, 61, __pyx_L1_error)
- /* "PETSc/Sys.pyx":72
+ /* "PETSc/Sys.pyx":60
* def setDefaultComm(cls, comm):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_WORLD)
* if ccomm == MPI_COMM_NULL: # <<<<<<<<<<<<<<
@@ -53983,7 +59007,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_10setDefaultComm(CYTHON_UNUSED P
*/
}
- /* "PETSc/Sys.pyx":75
+ /* "PETSc/Sys.pyx":63
* raise ValueError("null communicator")
* global PETSC_COMM_DEFAULT
* PETSC_COMM_DEFAULT = ccomm # <<<<<<<<<<<<<<
@@ -53992,7 +59016,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_10setDefaultComm(CYTHON_UNUSED P
*/
__pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT = __pyx_v_ccomm;
- /* "PETSc/Sys.pyx":70
+ /* "PETSc/Sys.pyx":58
*
* @classmethod
* def setDefaultComm(cls, comm): # <<<<<<<<<<<<<<
@@ -54013,7 +59037,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_10setDefaultComm(CYTHON_UNUSED P
return __pyx_r;
}
-/* "PETSc/Sys.pyx":80
+/* "PETSc/Sys.pyx":68
*
* @classmethod
* def Print(cls, *args, **kargs): # <<<<<<<<<<<<<<
@@ -54064,64 +59088,64 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_12Print(CYTHON_UNUSED PyTypeObje
__Pyx_RefNannySetupContext("Print", 0);
__Pyx_INCREF(__pyx_v_args);
- /* "PETSc/Sys.pyx":81
+ /* "PETSc/Sys.pyx":69
* @classmethod
* def Print(cls, *args, **kargs):
* cdef object comm = kargs.get('comm', None) # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef object sep = kargs.get('sep', ' ')
*/
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_comm, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 81, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_comm, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 69, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_comm = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":82
+ /* "PETSc/Sys.pyx":70
* def Print(cls, *args, **kargs):
* cdef object comm = kargs.get('comm', None)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef object sep = kargs.get('sep', ' ')
* cdef object end = kargs.get('end', '\n')
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 82, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 70, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_2;
- /* "PETSc/Sys.pyx":83
+ /* "PETSc/Sys.pyx":71
* cdef object comm = kargs.get('comm', None)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef object sep = kargs.get('sep', ' ') # <<<<<<<<<<<<<<
* cdef object end = kargs.get('end', '\n')
* if comm_rank(ccomm) == 0:
*/
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_sep, __pyx_kp_s__2); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 83, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_sep, __pyx_kp_s__2); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 71, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_sep = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":84
+ /* "PETSc/Sys.pyx":72
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef object sep = kargs.get('sep', ' ')
* cdef object end = kargs.get('end', '\n') # <<<<<<<<<<<<<<
* if comm_rank(ccomm) == 0:
* if not args: args = ('',)
*/
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_end, __pyx_kp_s__32); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 84, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_end, __pyx_kp_s__32); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 72, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_end = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":85
+ /* "PETSc/Sys.pyx":73
* cdef object sep = kargs.get('sep', ' ')
* cdef object end = kargs.get('end', '\n')
* if comm_rank(ccomm) == 0: # <<<<<<<<<<<<<<
* if not args: args = ('',)
* format = ['%s', sep] * len(args)
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_comm_rank(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == -1 && PyErr_Occurred())) __PYX_ERR(25, 85, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_comm_rank(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == ((int)-1) && PyErr_Occurred())) __PYX_ERR(25, 73, __pyx_L1_error)
__pyx_t_4 = ((__pyx_t_3 == 0) != 0);
if (__pyx_t_4) {
- /* "PETSc/Sys.pyx":86
+ /* "PETSc/Sys.pyx":74
* cdef object end = kargs.get('end', '\n')
* if comm_rank(ccomm) == 0:
* if not args: args = ('',) # <<<<<<<<<<<<<<
@@ -54131,19 +59155,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_12Print(CYTHON_UNUSED PyTypeObje
__pyx_t_4 = (__pyx_v_args != Py_None) && (PyTuple_GET_SIZE(__pyx_v_args) != 0);
__pyx_t_5 = ((!__pyx_t_4) != 0);
if (__pyx_t_5) {
- __Pyx_INCREF(__pyx_tuple__36);
- __Pyx_DECREF_SET(__pyx_v_args, __pyx_tuple__36);
+ __Pyx_INCREF(__pyx_tuple__39);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_tuple__39);
}
- /* "PETSc/Sys.pyx":87
+ /* "PETSc/Sys.pyx":75
* if comm_rank(ccomm) == 0:
* if not args: args = ('',)
* format = ['%s', sep] * len(args) # <<<<<<<<<<<<<<
* format[-1] = end
* message = ''.join(format) % args
*/
- __pyx_t_6 = PyTuple_GET_SIZE(__pyx_v_args); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(25, 87, __pyx_L1_error)
- __pyx_t_1 = PyList_New(2 * ((__pyx_t_6<0) ? 0:__pyx_t_6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 87, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_GET_SIZE(__pyx_v_args); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(25, 75, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(2 * ((__pyx_t_6<0) ? 0:__pyx_t_6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 75, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
{ Py_ssize_t __pyx_temp;
for (__pyx_temp=0; __pyx_temp < __pyx_t_6; __pyx_temp++) {
@@ -54158,31 +59182,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_12Print(CYTHON_UNUSED PyTypeObje
__pyx_v_format = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":88
+ /* "PETSc/Sys.pyx":76
* if not args: args = ('',)
* format = ['%s', sep] * len(args)
* format[-1] = end # <<<<<<<<<<<<<<
* message = ''.join(format) % args
* else:
*/
- if (unlikely(__Pyx_SetItemInt(__pyx_v_format, -1L, __pyx_v_end, long, 1, __Pyx_PyInt_From_long, 1, 1, 1) < 0)) __PYX_ERR(25, 88, __pyx_L1_error)
+ if (unlikely(__Pyx_SetItemInt(__pyx_v_format, -1L, __pyx_v_end, long, 1, __Pyx_PyInt_From_long, 1, 1, 1) < 0)) __PYX_ERR(25, 76, __pyx_L1_error)
- /* "PETSc/Sys.pyx":89
+ /* "PETSc/Sys.pyx":77
* format = ['%s', sep] * len(args)
* format[-1] = end
* message = ''.join(format) % args # <<<<<<<<<<<<<<
* else:
* message = ''
*/
- __pyx_t_1 = __Pyx_PyString_Join(__pyx_kp_s__10, __pyx_v_format); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 89, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyString_Join(__pyx_kp_s__10, __pyx_v_format); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_7 = PyNumber_Remainder(__pyx_t_1, __pyx_v_args); if (unlikely(!__pyx_t_7)) __PYX_ERR(25, 89, __pyx_L1_error)
+ __pyx_t_7 = PyNumber_Remainder(__pyx_t_1, __pyx_v_args); if (unlikely(!__pyx_t_7)) __PYX_ERR(25, 77, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_message = __pyx_t_7;
__pyx_t_7 = 0;
- /* "PETSc/Sys.pyx":85
+ /* "PETSc/Sys.pyx":73
* cdef object sep = kargs.get('sep', ' ')
* cdef object end = kargs.get('end', '\n')
* if comm_rank(ccomm) == 0: # <<<<<<<<<<<<<<
@@ -54192,7 +59216,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_12Print(CYTHON_UNUSED PyTypeObje
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":91
+ /* "PETSc/Sys.pyx":79
* message = ''.join(format) % args
* else:
* message = '' # <<<<<<<<<<<<<<
@@ -54205,7 +59229,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_12Print(CYTHON_UNUSED PyTypeObje
}
__pyx_L3:;
- /* "PETSc/Sys.pyx":92
+ /* "PETSc/Sys.pyx":80
* else:
* message = ''
* cdef const_char *m = NULL # <<<<<<<<<<<<<<
@@ -54214,28 +59238,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_12Print(CYTHON_UNUSED PyTypeObje
*/
__pyx_v_m = NULL;
- /* "PETSc/Sys.pyx":93
+ /* "PETSc/Sys.pyx":81
* message = ''
* cdef const_char *m = NULL
* message = str2bytes(message, &m) # <<<<<<<<<<<<<<
* CHKERR( PetscPrintf(ccomm, m) )
*
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_message, (&__pyx_v_m)); if (unlikely(!__pyx_t_7)) __PYX_ERR(25, 93, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_message, (&__pyx_v_m)); if (unlikely(!__pyx_t_7)) __PYX_ERR(25, 81, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF_SET(__pyx_v_message, __pyx_t_7);
__pyx_t_7 = 0;
- /* "PETSc/Sys.pyx":94
+ /* "PETSc/Sys.pyx":82
* cdef const_char *m = NULL
* message = str2bytes(message, &m)
* CHKERR( PetscPrintf(ccomm, m) ) # <<<<<<<<<<<<<<
*
* @classmethod
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPrintf(__pyx_v_ccomm, __pyx_v_m)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(25, 94, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPrintf(__pyx_v_ccomm, __pyx_v_m)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(25, 82, __pyx_L1_error)
- /* "PETSc/Sys.pyx":80
+ /* "PETSc/Sys.pyx":68
*
* @classmethod
* def Print(cls, *args, **kargs): # <<<<<<<<<<<<<<
@@ -54263,7 +59287,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_12Print(CYTHON_UNUSED PyTypeObje
return __pyx_r;
}
-/* "PETSc/Sys.pyx":97
+/* "PETSc/Sys.pyx":85
*
* @classmethod
* def syncPrint(cls, *args, **kargs): # <<<<<<<<<<<<<<
@@ -54315,65 +59339,65 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_14syncPrint(CYTHON_UNUSED PyType
__Pyx_RefNannySetupContext("syncPrint", 0);
__Pyx_INCREF(__pyx_v_args);
- /* "PETSc/Sys.pyx":98
+ /* "PETSc/Sys.pyx":86
* @classmethod
* def syncPrint(cls, *args, **kargs):
* cdef object comm = kargs.get('comm', None) # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef object sep = kargs.get('sep', ' ')
*/
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_comm, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 98, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_comm, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 86, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_comm = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":99
+ /* "PETSc/Sys.pyx":87
* def syncPrint(cls, *args, **kargs):
* cdef object comm = kargs.get('comm', None)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef object sep = kargs.get('sep', ' ')
* cdef object end = kargs.get('end', '\n')
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 99, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 87, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_2;
- /* "PETSc/Sys.pyx":100
+ /* "PETSc/Sys.pyx":88
* cdef object comm = kargs.get('comm', None)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef object sep = kargs.get('sep', ' ') # <<<<<<<<<<<<<<
* cdef object end = kargs.get('end', '\n')
* cdef object flush = kargs.get('flush', False)
*/
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_sep, __pyx_kp_s__2); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 100, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_sep, __pyx_kp_s__2); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 88, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_sep = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":101
+ /* "PETSc/Sys.pyx":89
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef object sep = kargs.get('sep', ' ')
* cdef object end = kargs.get('end', '\n') # <<<<<<<<<<<<<<
* cdef object flush = kargs.get('flush', False)
* if not args: args = ('',)
*/
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_end, __pyx_kp_s__32); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 101, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_end, __pyx_kp_s__32); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 89, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_end = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":102
+ /* "PETSc/Sys.pyx":90
* cdef object sep = kargs.get('sep', ' ')
* cdef object end = kargs.get('end', '\n')
* cdef object flush = kargs.get('flush', False) # <<<<<<<<<<<<<<
* if not args: args = ('',)
* format = ['%s', sep] * len(args)
*/
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_flush, Py_False); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 102, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kargs, __pyx_n_s_flush, Py_False); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 90, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_flush = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":103
+ /* "PETSc/Sys.pyx":91
* cdef object end = kargs.get('end', '\n')
* cdef object flush = kargs.get('flush', False)
* if not args: args = ('',) # <<<<<<<<<<<<<<
@@ -54383,19 +59407,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_14syncPrint(CYTHON_UNUSED PyType
__pyx_t_3 = (__pyx_v_args != Py_None) && (PyTuple_GET_SIZE(__pyx_v_args) != 0);
__pyx_t_4 = ((!__pyx_t_3) != 0);
if (__pyx_t_4) {
- __Pyx_INCREF(__pyx_tuple__37);
- __Pyx_DECREF_SET(__pyx_v_args, __pyx_tuple__37);
+ __Pyx_INCREF(__pyx_tuple__40);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_tuple__40);
}
- /* "PETSc/Sys.pyx":104
+ /* "PETSc/Sys.pyx":92
* cdef object flush = kargs.get('flush', False)
* if not args: args = ('',)
* format = ['%s', sep] * len(args) # <<<<<<<<<<<<<<
* format[-1] = end
* message = ''.join(format) % args
*/
- __pyx_t_5 = PyTuple_GET_SIZE(__pyx_v_args); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(25, 104, __pyx_L1_error)
- __pyx_t_1 = PyList_New(2 * ((__pyx_t_5<0) ? 0:__pyx_t_5)); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 104, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_GET_SIZE(__pyx_v_args); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(25, 92, __pyx_L1_error)
+ __pyx_t_1 = PyList_New(2 * ((__pyx_t_5<0) ? 0:__pyx_t_5)); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
{ Py_ssize_t __pyx_temp;
for (__pyx_temp=0; __pyx_temp < __pyx_t_5; __pyx_temp++) {
@@ -54410,31 +59434,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_14syncPrint(CYTHON_UNUSED PyType
__pyx_v_format = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":105
+ /* "PETSc/Sys.pyx":93
* if not args: args = ('',)
* format = ['%s', sep] * len(args)
* format[-1] = end # <<<<<<<<<<<<<<
* message = ''.join(format) % args
* cdef const_char *m = NULL
*/
- if (unlikely(__Pyx_SetItemInt(__pyx_v_format, -1L, __pyx_v_end, long, 1, __Pyx_PyInt_From_long, 1, 1, 1) < 0)) __PYX_ERR(25, 105, __pyx_L1_error)
+ if (unlikely(__Pyx_SetItemInt(__pyx_v_format, -1L, __pyx_v_end, long, 1, __Pyx_PyInt_From_long, 1, 1, 1) < 0)) __PYX_ERR(25, 93, __pyx_L1_error)
- /* "PETSc/Sys.pyx":106
+ /* "PETSc/Sys.pyx":94
* format = ['%s', sep] * len(args)
* format[-1] = end
* message = ''.join(format) % args # <<<<<<<<<<<<<<
* cdef const_char *m = NULL
* message = str2bytes(message, &m)
*/
- __pyx_t_1 = __Pyx_PyString_Join(__pyx_kp_s__10, __pyx_v_format); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 106, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyString_Join(__pyx_kp_s__10, __pyx_v_format); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 94, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_6 = PyNumber_Remainder(__pyx_t_1, __pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(25, 106, __pyx_L1_error)
+ __pyx_t_6 = PyNumber_Remainder(__pyx_t_1, __pyx_v_args); if (unlikely(!__pyx_t_6)) __PYX_ERR(25, 94, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_message = __pyx_t_6;
__pyx_t_6 = 0;
- /* "PETSc/Sys.pyx":107
+ /* "PETSc/Sys.pyx":95
* format[-1] = end
* message = ''.join(format) % args
* cdef const_char *m = NULL # <<<<<<<<<<<<<<
@@ -54443,40 +59467,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_14syncPrint(CYTHON_UNUSED PyType
*/
__pyx_v_m = NULL;
- /* "PETSc/Sys.pyx":108
+ /* "PETSc/Sys.pyx":96
* message = ''.join(format) % args
* cdef const_char *m = NULL
* message = str2bytes(message, &m) # <<<<<<<<<<<<<<
* CHKERR( PetscSynchronizedPrintf(ccomm, m) )
* if flush: CHKERR( PetscSynchronizedFlush(ccomm, PETSC_STDOUT) )
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_message, (&__pyx_v_m)); if (unlikely(!__pyx_t_6)) __PYX_ERR(25, 108, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_message, (&__pyx_v_m)); if (unlikely(!__pyx_t_6)) __PYX_ERR(25, 96, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF_SET(__pyx_v_message, __pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/Sys.pyx":109
+ /* "PETSc/Sys.pyx":97
* cdef const_char *m = NULL
* message = str2bytes(message, &m)
* CHKERR( PetscSynchronizedPrintf(ccomm, m) ) # <<<<<<<<<<<<<<
* if flush: CHKERR( PetscSynchronizedFlush(ccomm, PETSC_STDOUT) )
*
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSynchronizedPrintf(__pyx_v_ccomm, __pyx_v_m)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(25, 109, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSynchronizedPrintf(__pyx_v_ccomm, __pyx_v_m)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(25, 97, __pyx_L1_error)
- /* "PETSc/Sys.pyx":110
+ /* "PETSc/Sys.pyx":98
* message = str2bytes(message, &m)
* CHKERR( PetscSynchronizedPrintf(ccomm, m) )
* if flush: CHKERR( PetscSynchronizedFlush(ccomm, PETSC_STDOUT) ) # <<<<<<<<<<<<<<
*
* @classmethod
*/
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_flush); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(25, 110, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_flush); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(25, 98, __pyx_L1_error)
if (__pyx_t_4) {
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSynchronizedFlush(__pyx_v_ccomm, PETSC_STDOUT)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(25, 110, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSynchronizedFlush(__pyx_v_ccomm, PETSC_STDOUT)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(25, 98, __pyx_L1_error)
}
- /* "PETSc/Sys.pyx":97
+ /* "PETSc/Sys.pyx":85
*
* @classmethod
* def syncPrint(cls, *args, **kargs): # <<<<<<<<<<<<<<
@@ -54505,7 +59529,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_14syncPrint(CYTHON_UNUSED PyType
return __pyx_r;
}
-/* "PETSc/Sys.pyx":113
+/* "PETSc/Sys.pyx":101
*
* @classmethod
* def syncFlush(cls, comm=None): # <<<<<<<<<<<<<<
@@ -54530,6 +59554,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_17syncFlush(PyObject *__pyx_v_cl
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -54542,11 +59567,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_17syncFlush(PyObject *__pyx_v_cl
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "syncFlush") < 0)) __PYX_ERR(25, 113, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "syncFlush") < 0)) __PYX_ERR(25, 101, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -54555,7 +59581,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_17syncFlush(PyObject *__pyx_v_cl
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("syncFlush", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 113, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("syncFlush", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 101, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.syncFlush", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -54576,26 +59602,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_16syncFlush(CYTHON_UNUSED PyType
int __pyx_t_2;
__Pyx_RefNannySetupContext("syncFlush", 0);
- /* "PETSc/Sys.pyx":114
+ /* "PETSc/Sys.pyx":102
* @classmethod
* def syncFlush(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* CHKERR( PetscSynchronizedFlush(ccomm, PETSC_STDOUT) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 114, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 102, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Sys.pyx":115
+ /* "PETSc/Sys.pyx":103
* def syncFlush(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* CHKERR( PetscSynchronizedFlush(ccomm, PETSC_STDOUT) ) # <<<<<<<<<<<<<<
*
* # --- xxx ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSynchronizedFlush(__pyx_v_ccomm, PETSC_STDOUT)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(25, 115, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSynchronizedFlush(__pyx_v_ccomm, PETSC_STDOUT)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(25, 103, __pyx_L1_error)
- /* "PETSc/Sys.pyx":113
+ /* "PETSc/Sys.pyx":101
*
* @classmethod
* def syncFlush(cls, comm=None): # <<<<<<<<<<<<<<
@@ -54615,7 +59641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_16syncFlush(CYTHON_UNUSED PyType
return __pyx_r;
}
-/* "PETSc/Sys.pyx":120
+/* "PETSc/Sys.pyx":108
*
* @classmethod
* def splitOwnership(cls, size, bsize=None, comm=None): # <<<<<<<<<<<<<<
@@ -54643,8 +59669,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_19splitOwnership(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -54653,11 +59682,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_19splitOwnership(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -54665,12 +59696,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_19splitOwnership(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "splitOwnership") < 0)) __PYX_ERR(25, 120, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "splitOwnership") < 0)) __PYX_ERR(25, 108, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -54682,7 +59715,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_19splitOwnership(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("splitOwnership", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 120, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("splitOwnership", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 108, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.splitOwnership", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -54710,17 +59743,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("splitOwnership", 0);
- /* "PETSc/Sys.pyx":121
+ /* "PETSc/Sys.pyx":109
* @classmethod
* def splitOwnership(cls, size, bsize=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscInt bs=0, n=0, N=0
* Sys_Sizes(size, bsize, &bs, &n, &N)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 121, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(25, 109, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Sys.pyx":122
+ /* "PETSc/Sys.pyx":110
* def splitOwnership(cls, size, bsize=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscInt bs=0, n=0, N=0 # <<<<<<<<<<<<<<
@@ -54731,16 +59764,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
__pyx_v_n = 0;
__pyx_v_N = 0;
- /* "PETSc/Sys.pyx":123
+ /* "PETSc/Sys.pyx":111
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscInt bs=0, n=0, N=0
* Sys_Sizes(size, bsize, &bs, &n, &N) # <<<<<<<<<<<<<<
* if bs == PETSC_DECIDE: bs = 1
* if n > 0: n = n // bs
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(25, 123, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(25, 111, __pyx_L1_error)
- /* "PETSc/Sys.pyx":124
+ /* "PETSc/Sys.pyx":112
* cdef PetscInt bs=0, n=0, N=0
* Sys_Sizes(size, bsize, &bs, &n, &N)
* if bs == PETSC_DECIDE: bs = 1 # <<<<<<<<<<<<<<
@@ -54752,7 +59785,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
__pyx_v_bs = 1;
}
- /* "PETSc/Sys.pyx":125
+ /* "PETSc/Sys.pyx":113
* Sys_Sizes(size, bsize, &bs, &n, &N)
* if bs == PETSC_DECIDE: bs = 1
* if n > 0: n = n // bs # <<<<<<<<<<<<<<
@@ -54764,7 +59797,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
__pyx_v_n = (__pyx_v_n / __pyx_v_bs);
}
- /* "PETSc/Sys.pyx":126
+ /* "PETSc/Sys.pyx":114
* if bs == PETSC_DECIDE: bs = 1
* if n > 0: n = n // bs
* if N > 0: N = N // bs # <<<<<<<<<<<<<<
@@ -54776,16 +59809,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
__pyx_v_N = (__pyx_v_N / __pyx_v_bs);
}
- /* "PETSc/Sys.pyx":127
+ /* "PETSc/Sys.pyx":115
* if n > 0: n = n // bs
* if N > 0: N = N // bs
* CHKERR( PetscSplitOwnership(ccomm, &n, &N) ) # <<<<<<<<<<<<<<
* n = n * bs
* N = N * bs
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSplitOwnership(__pyx_v_ccomm, (&__pyx_v_n), (&__pyx_v_N))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(25, 127, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSplitOwnership(__pyx_v_ccomm, (&__pyx_v_n), (&__pyx_v_N))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(25, 115, __pyx_L1_error)
- /* "PETSc/Sys.pyx":128
+ /* "PETSc/Sys.pyx":116
* if N > 0: N = N // bs
* CHKERR( PetscSplitOwnership(ccomm, &n, &N) )
* n = n * bs # <<<<<<<<<<<<<<
@@ -54794,7 +59827,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
*/
__pyx_v_n = (__pyx_v_n * __pyx_v_bs);
- /* "PETSc/Sys.pyx":129
+ /* "PETSc/Sys.pyx":117
* CHKERR( PetscSplitOwnership(ccomm, &n, &N) )
* n = n * bs
* N = N * bs # <<<<<<<<<<<<<<
@@ -54803,7 +59836,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
*/
__pyx_v_N = (__pyx_v_N * __pyx_v_bs);
- /* "PETSc/Sys.pyx":130
+ /* "PETSc/Sys.pyx":118
* n = n * bs
* N = N * bs
* return (toInt(n), toInt(N)) # <<<<<<<<<<<<<<
@@ -54811,11 +59844,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
* @classmethod
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 130, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(25, 118, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 130, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_N); if (unlikely(!__pyx_t_5)) __PYX_ERR(25, 118, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(25, 130, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(25, 118, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4);
@@ -54827,7 +59860,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
__pyx_t_6 = 0;
goto __pyx_L0;
- /* "PETSc/Sys.pyx":120
+ /* "PETSc/Sys.pyx":108
*
* @classmethod
* def splitOwnership(cls, size, bsize=None, comm=None): # <<<<<<<<<<<<<<
@@ -54848,7 +59881,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_18splitOwnership(CYTHON_UNUSED P
return __pyx_r;
}
-/* "PETSc/Sys.pyx":133
+/* "PETSc/Sys.pyx":121
*
* @classmethod
* def sleep(cls, seconds=1): # <<<<<<<<<<<<<<
@@ -54873,6 +59906,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_21sleep(PyObject *__pyx_v_cls, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -54885,11 +59919,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_21sleep(PyObject *__pyx_v_cls, P
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "sleep") < 0)) __PYX_ERR(25, 133, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "sleep") < 0)) __PYX_ERR(25, 121, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -54898,7 +59933,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_21sleep(PyObject *__pyx_v_cls, P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("sleep", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 133, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("sleep", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 121, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.sleep", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -54918,26 +59953,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_20sleep(CYTHON_UNUSED PyTypeObje
int __pyx_t_1;
__Pyx_RefNannySetupContext("sleep", 0);
- /* "PETSc/Sys.pyx":134
+ /* "PETSc/Sys.pyx":122
* @classmethod
* def sleep(cls, seconds=1):
* cdef int s = seconds # <<<<<<<<<<<<<<
* CHKERR( PetscSleep(s) )
*
*/
- __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_seconds); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(25, 134, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_seconds); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(25, 122, __pyx_L1_error)
__pyx_v_s = __pyx_t_1;
- /* "PETSc/Sys.pyx":135
+ /* "PETSc/Sys.pyx":123
* def sleep(cls, seconds=1):
* cdef int s = seconds
* CHKERR( PetscSleep(s) ) # <<<<<<<<<<<<<<
*
* # --- xxx ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSleep(__pyx_v_s)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(25, 135, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSleep(__pyx_v_s)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(25, 123, __pyx_L1_error)
- /* "PETSc/Sys.pyx":133
+ /* "PETSc/Sys.pyx":121
*
* @classmethod
* def sleep(cls, seconds=1): # <<<<<<<<<<<<<<
@@ -54957,7 +59992,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_20sleep(CYTHON_UNUSED PyTypeObje
return __pyx_r;
}
-/* "PETSc/Sys.pyx":140
+/* "PETSc/Sys.pyx":128
*
* @classmethod
* def pushErrorHandler(cls, errhandler): # <<<<<<<<<<<<<<
@@ -54981,6 +60016,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_23pushErrorHandler(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -54991,7 +60027,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_23pushErrorHandler(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "pushErrorHandler") < 0)) __PYX_ERR(25, 140, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "pushErrorHandler") < 0)) __PYX_ERR(25, 128, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -55002,7 +60038,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_23pushErrorHandler(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("pushErrorHandler", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 140, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("pushErrorHandler", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 128, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.pushErrorHandler", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -55025,7 +60061,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
int __pyx_t_4;
__Pyx_RefNannySetupContext("pushErrorHandler", 0);
- /* "PETSc/Sys.pyx":141
+ /* "PETSc/Sys.pyx":129
* @classmethod
* def pushErrorHandler(cls, errhandler):
* cdef PetscErrorHandlerFunction handler = NULL # <<<<<<<<<<<<<<
@@ -55034,17 +60070,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = NULL;
- /* "PETSc/Sys.pyx":142
+ /* "PETSc/Sys.pyx":130
* def pushErrorHandler(cls, errhandler):
* cdef PetscErrorHandlerFunction handler = NULL
* if errhandler == "python": # <<<<<<<<<<<<<<
* handler = <PetscErrorHandlerFunction> \
* PetscPythonErrorHandler
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_python, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 142, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_python, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 130, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/Sys.pyx":143
+ /* "PETSc/Sys.pyx":131
* cdef PetscErrorHandlerFunction handler = NULL
* if errhandler == "python":
* handler = <PetscErrorHandlerFunction> \ # <<<<<<<<<<<<<<
@@ -55053,7 +60089,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = ((PetscErrorHandlerFunction)__pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler);
- /* "PETSc/Sys.pyx":142
+ /* "PETSc/Sys.pyx":130
* def pushErrorHandler(cls, errhandler):
* cdef PetscErrorHandlerFunction handler = NULL
* if errhandler == "python": # <<<<<<<<<<<<<<
@@ -55063,17 +60099,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":145
+ /* "PETSc/Sys.pyx":133
* handler = <PetscErrorHandlerFunction> \
* PetscPythonErrorHandler
* elif errhandler == "debugger": # <<<<<<<<<<<<<<
* handler = PetscAttachDebuggerErrorHandler
* elif errhandler == "emacs":
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_debugger, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 145, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_debugger, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 133, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/Sys.pyx":146
+ /* "PETSc/Sys.pyx":134
* PetscPythonErrorHandler
* elif errhandler == "debugger":
* handler = PetscAttachDebuggerErrorHandler # <<<<<<<<<<<<<<
@@ -55082,7 +60118,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = PetscAttachDebuggerErrorHandler;
- /* "PETSc/Sys.pyx":145
+ /* "PETSc/Sys.pyx":133
* handler = <PetscErrorHandlerFunction> \
* PetscPythonErrorHandler
* elif errhandler == "debugger": # <<<<<<<<<<<<<<
@@ -55092,17 +60128,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":147
+ /* "PETSc/Sys.pyx":135
* elif errhandler == "debugger":
* handler = PetscAttachDebuggerErrorHandler
* elif errhandler == "emacs": # <<<<<<<<<<<<<<
* handler = PetscEmacsClientErrorHandler
* elif errhandler == "traceback":
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_emacs, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 147, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_emacs, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 135, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/Sys.pyx":148
+ /* "PETSc/Sys.pyx":136
* handler = PetscAttachDebuggerErrorHandler
* elif errhandler == "emacs":
* handler = PetscEmacsClientErrorHandler # <<<<<<<<<<<<<<
@@ -55111,7 +60147,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = PetscEmacsClientErrorHandler;
- /* "PETSc/Sys.pyx":147
+ /* "PETSc/Sys.pyx":135
* elif errhandler == "debugger":
* handler = PetscAttachDebuggerErrorHandler
* elif errhandler == "emacs": # <<<<<<<<<<<<<<
@@ -55121,17 +60157,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":149
+ /* "PETSc/Sys.pyx":137
* elif errhandler == "emacs":
* handler = PetscEmacsClientErrorHandler
* elif errhandler == "traceback": # <<<<<<<<<<<<<<
* handler = PetscTraceBackErrorHandler
* elif errhandler == "ignore":
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_traceback_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 149, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_traceback_2, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 137, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/Sys.pyx":150
+ /* "PETSc/Sys.pyx":138
* handler = PetscEmacsClientErrorHandler
* elif errhandler == "traceback":
* handler = PetscTraceBackErrorHandler # <<<<<<<<<<<<<<
@@ -55140,7 +60176,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = PetscTraceBackErrorHandler;
- /* "PETSc/Sys.pyx":149
+ /* "PETSc/Sys.pyx":137
* elif errhandler == "emacs":
* handler = PetscEmacsClientErrorHandler
* elif errhandler == "traceback": # <<<<<<<<<<<<<<
@@ -55150,17 +60186,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":151
+ /* "PETSc/Sys.pyx":139
* elif errhandler == "traceback":
* handler = PetscTraceBackErrorHandler
* elif errhandler == "ignore": # <<<<<<<<<<<<<<
* handler = PetscIgnoreErrorHandler
* elif errhandler == "mpiabort":
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_ignore, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 151, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_ignore, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 139, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/Sys.pyx":152
+ /* "PETSc/Sys.pyx":140
* handler = PetscTraceBackErrorHandler
* elif errhandler == "ignore":
* handler = PetscIgnoreErrorHandler # <<<<<<<<<<<<<<
@@ -55169,7 +60205,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = PetscIgnoreErrorHandler;
- /* "PETSc/Sys.pyx":151
+ /* "PETSc/Sys.pyx":139
* elif errhandler == "traceback":
* handler = PetscTraceBackErrorHandler
* elif errhandler == "ignore": # <<<<<<<<<<<<<<
@@ -55179,17 +60215,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":153
+ /* "PETSc/Sys.pyx":141
* elif errhandler == "ignore":
* handler = PetscIgnoreErrorHandler
* elif errhandler == "mpiabort": # <<<<<<<<<<<<<<
* handler = PetscMPIAbortErrorHandler
* elif errhandler == "abort":
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_mpiabort, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 153, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_mpiabort, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 141, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/Sys.pyx":154
+ /* "PETSc/Sys.pyx":142
* handler = PetscIgnoreErrorHandler
* elif errhandler == "mpiabort":
* handler = PetscMPIAbortErrorHandler # <<<<<<<<<<<<<<
@@ -55198,7 +60234,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = PetscMPIAbortErrorHandler;
- /* "PETSc/Sys.pyx":153
+ /* "PETSc/Sys.pyx":141
* elif errhandler == "ignore":
* handler = PetscIgnoreErrorHandler
* elif errhandler == "mpiabort": # <<<<<<<<<<<<<<
@@ -55208,17 +60244,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":155
+ /* "PETSc/Sys.pyx":143
* elif errhandler == "mpiabort":
* handler = PetscMPIAbortErrorHandler
* elif errhandler == "abort": # <<<<<<<<<<<<<<
* handler = PetscAbortErrorHandler
* else:
*/
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_abort, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 155, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_errhandler, __pyx_n_s_abort, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 143, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/Sys.pyx":156
+ /* "PETSc/Sys.pyx":144
* handler = PetscMPIAbortErrorHandler
* elif errhandler == "abort":
* handler = PetscAbortErrorHandler # <<<<<<<<<<<<<<
@@ -55227,7 +60263,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
__pyx_v_handler = PetscAbortErrorHandler;
- /* "PETSc/Sys.pyx":155
+ /* "PETSc/Sys.pyx":143
* elif errhandler == "mpiabort":
* handler = PetscMPIAbortErrorHandler
* elif errhandler == "abort": # <<<<<<<<<<<<<<
@@ -55237,7 +60273,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
goto __pyx_L3;
}
- /* "PETSc/Sys.pyx":158
+ /* "PETSc/Sys.pyx":146
* handler = PetscAbortErrorHandler
* else:
* raise ValueError( # <<<<<<<<<<<<<<
@@ -55246,47 +60282,47 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
*/
/*else*/ {
- /* "PETSc/Sys.pyx":159
+ /* "PETSc/Sys.pyx":147
* else:
* raise ValueError(
* "unknown error handler: %s" % errhandler) # <<<<<<<<<<<<<<
* CHKERR( PetscPushErrorHandler(handler, NULL) )
*
*/
- __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_unknown_error_handler_s, __pyx_v_errhandler); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 159, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_unknown_error_handler_s, __pyx_v_errhandler); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 147, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- /* "PETSc/Sys.pyx":158
+ /* "PETSc/Sys.pyx":146
* handler = PetscAbortErrorHandler
* else:
* raise ValueError( # <<<<<<<<<<<<<<
* "unknown error handler: %s" % errhandler)
* CHKERR( PetscPushErrorHandler(handler, NULL) )
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 158, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 146, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
__pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 158, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(25, 146, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __PYX_ERR(25, 158, __pyx_L1_error)
+ __PYX_ERR(25, 146, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/Sys.pyx":160
+ /* "PETSc/Sys.pyx":148
* raise ValueError(
* "unknown error handler: %s" % errhandler)
* CHKERR( PetscPushErrorHandler(handler, NULL) ) # <<<<<<<<<<<<<<
*
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPushErrorHandler(__pyx_v_handler, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(25, 160, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPushErrorHandler(__pyx_v_handler, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(25, 148, __pyx_L1_error)
- /* "PETSc/Sys.pyx":140
+ /* "PETSc/Sys.pyx":128
*
* @classmethod
* def pushErrorHandler(cls, errhandler): # <<<<<<<<<<<<<<
@@ -55308,7 +60344,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_22pushErrorHandler(CYTHON_UNUSED
return __pyx_r;
}
-/* "PETSc/Sys.pyx":164
+/* "PETSc/Sys.pyx":152
*
* @classmethod
* def popErrorHandler(cls): # <<<<<<<<<<<<<<
@@ -55339,16 +60375,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_24popErrorHandler(CYTHON_UNUSED
int __pyx_t_1;
__Pyx_RefNannySetupContext("popErrorHandler", 0);
- /* "PETSc/Sys.pyx":165
+ /* "PETSc/Sys.pyx":153
* @classmethod
* def popErrorHandler(cls):
* CHKERR( PetscPopErrorHandler() ) # <<<<<<<<<<<<<<
*
* @classmethod
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPopErrorHandler()); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(25, 165, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPopErrorHandler()); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(25, 153, __pyx_L1_error)
- /* "PETSc/Sys.pyx":164
+ /* "PETSc/Sys.pyx":152
*
* @classmethod
* def popErrorHandler(cls): # <<<<<<<<<<<<<<
@@ -55368,7 +60404,67 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_24popErrorHandler(CYTHON_UNUSED
return __pyx_r;
}
-/* "PETSc/Sys.pyx":168
+/* "PETSc/Sys.pyx":156
+ *
+ * @classmethod
+ * def popSignalHandler(cls): # <<<<<<<<<<<<<<
+ * CHKERR( PetscPopSignalHandler() )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_27popSignalHandler(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Sys_26popSignalHandler[] = "Sys.popSignalHandler(type cls)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_27popSignalHandler(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("popSignalHandler (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("popSignalHandler", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "popSignalHandler", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Sys_26popSignalHandler(((PyTypeObject*)__pyx_v_cls));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26popSignalHandler(CYTHON_UNUSED PyTypeObject *__pyx_v_cls) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("popSignalHandler", 0);
+
+ /* "PETSc/Sys.pyx":157
+ * @classmethod
+ * def popSignalHandler(cls):
+ * CHKERR( PetscPopSignalHandler() ) # <<<<<<<<<<<<<<
+ *
+ * @classmethod
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPopSignalHandler()); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(25, 157, __pyx_L1_error)
+
+ /* "PETSc/Sys.pyx":156
+ *
+ * @classmethod
+ * def popSignalHandler(cls): # <<<<<<<<<<<<<<
+ * CHKERR( PetscPopSignalHandler() )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Sys.popSignalHandler", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Sys.pyx":160
*
* @classmethod
* def infoAllow(cls, flag): # <<<<<<<<<<<<<<
@@ -55377,9 +60473,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_24popErrorHandler(CYTHON_UNUSED
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_27infoAllow(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Sys_26infoAllow[] = "Sys.infoAllow(type cls, flag)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_27infoAllow(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_29infoAllow(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Sys_28infoAllow[] = "Sys.infoAllow(type cls, flag)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_29infoAllow(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_flag = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -55392,6 +60488,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_27infoAllow(PyObject *__pyx_v_cl
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -55402,7 +60499,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_27infoAllow(PyObject *__pyx_v_cl
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "infoAllow") < 0)) __PYX_ERR(25, 168, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "infoAllow") < 0)) __PYX_ERR(25, 160, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -55413,20 +60510,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_27infoAllow(PyObject *__pyx_v_cl
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("infoAllow", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 168, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("infoAllow", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 160, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.infoAllow", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Sys_26infoAllow(((PyTypeObject*)__pyx_v_cls), __pyx_v_flag);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Sys_28infoAllow(((PyTypeObject*)__pyx_v_cls), __pyx_v_flag);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26infoAllow(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_flag) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_28infoAllow(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_flag) {
PetscBool __pyx_v_tval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -55434,7 +60531,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26infoAllow(CYTHON_UNUSED PyType
int __pyx_t_2;
__Pyx_RefNannySetupContext("infoAllow", 0);
- /* "PETSc/Sys.pyx":169
+ /* "PETSc/Sys.pyx":161
* @classmethod
* def infoAllow(cls, flag):
* cdef PetscBool tval = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -55443,28 +60540,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26infoAllow(CYTHON_UNUSED PyType
*/
__pyx_v_tval = PETSC_FALSE;
- /* "PETSc/Sys.pyx":170
+ /* "PETSc/Sys.pyx":162
* def infoAllow(cls, flag):
* cdef PetscBool tval = PETSC_FALSE
* if flag: tval = PETSC_TRUE # <<<<<<<<<<<<<<
* CHKERR( PetscInfoAllow(tval, NULL) )
*
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 170, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 162, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_v_tval = PETSC_TRUE;
}
- /* "PETSc/Sys.pyx":171
+ /* "PETSc/Sys.pyx":163
* cdef PetscBool tval = PETSC_FALSE
* if flag: tval = PETSC_TRUE
* CHKERR( PetscInfoAllow(tval, NULL) ) # <<<<<<<<<<<<<<
*
* @classmethod
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscInfoAllow(__pyx_v_tval, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(25, 171, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscInfoAllow(__pyx_v_tval, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(25, 163, __pyx_L1_error)
- /* "PETSc/Sys.pyx":168
+ /* "PETSc/Sys.pyx":160
*
* @classmethod
* def infoAllow(cls, flag): # <<<<<<<<<<<<<<
@@ -55484,7 +60581,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26infoAllow(CYTHON_UNUSED PyType
return __pyx_r;
}
-/* "PETSc/Sys.pyx":174
+/* "PETSc/Sys.pyx":166
*
* @classmethod
* def registerCitation(cls, citation): # <<<<<<<<<<<<<<
@@ -55493,9 +60590,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_26infoAllow(CYTHON_UNUSED PyType
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_29registerCitation(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Sys_28registerCitation[] = "Sys.registerCitation(type cls, citation)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_29registerCitation(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_31registerCitation(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Sys_30registerCitation[] = "Sys.registerCitation(type cls, citation)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_31registerCitation(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_citation = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -55508,6 +60605,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_29registerCitation(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -55518,7 +60616,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_29registerCitation(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "registerCitation") < 0)) __PYX_ERR(25, 174, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "registerCitation") < 0)) __PYX_ERR(25, 166, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -55529,22 +60627,22 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Sys_29registerCitation(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("registerCitation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 174, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("registerCitation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(25, 166, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Sys.registerCitation", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Sys_28registerCitation(((PyTypeObject*)__pyx_v_cls), __pyx_v_citation);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Sys_30registerCitation(((PyTypeObject*)__pyx_v_cls), __pyx_v_citation);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_28registerCitation(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_citation) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_30registerCitation(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_citation) {
const char *__pyx_v_cit;
- PetscBool __pyx_v_set;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -55554,74 +60652,78 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_28registerCitation(CYTHON_UNUSED
__Pyx_RefNannySetupContext("registerCitation", 0);
__Pyx_INCREF(__pyx_v_citation);
- /* "PETSc/Sys.pyx":175
+ /* "PETSc/Sys.pyx":167
* @classmethod
* def registerCitation(cls, citation):
* if not citation: raise ValueError("empty citation") # <<<<<<<<<<<<<<
* cdef const_char *cit = NULL
* citation = str2bytes(citation, &cit)
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_citation); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 175, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_citation); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(25, 167, __pyx_L1_error)
__pyx_t_2 = ((!__pyx_t_1) != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__38, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 175, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__41, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 167, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(25, 175, __pyx_L1_error)
+ __PYX_ERR(25, 167, __pyx_L1_error)
}
- /* "PETSc/Sys.pyx":176
+ /* "PETSc/Sys.pyx":168
* def registerCitation(cls, citation):
* if not citation: raise ValueError("empty citation")
* cdef const_char *cit = NULL # <<<<<<<<<<<<<<
* citation = str2bytes(citation, &cit)
- * cdef PetscBool set = get_citation(citation)
+ * cdef PetscBool flag = get_citation(citation)
*/
__pyx_v_cit = NULL;
- /* "PETSc/Sys.pyx":177
+ /* "PETSc/Sys.pyx":169
* if not citation: raise ValueError("empty citation")
* cdef const_char *cit = NULL
* citation = str2bytes(citation, &cit) # <<<<<<<<<<<<<<
- * cdef PetscBool set = get_citation(citation)
- * CHKERR( PetscCitationsRegister(cit, &set) )
+ * cdef PetscBool flag = get_citation(citation)
+ * CHKERR( PetscCitationsRegister(cit, &flag) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_citation, (&__pyx_v_cit)); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 177, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_citation, (&__pyx_v_cit)); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 169, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_citation, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Sys.pyx":178
+ /* "PETSc/Sys.pyx":170
* cdef const_char *cit = NULL
* citation = str2bytes(citation, &cit)
- * cdef PetscBool set = get_citation(citation) # <<<<<<<<<<<<<<
- * CHKERR( PetscCitationsRegister(cit, &set) )
- * set_citation(citation, <bint>set)
+ * cdef PetscBool flag = get_citation(citation) # <<<<<<<<<<<<<<
+ * CHKERR( PetscCitationsRegister(cit, &flag) )
+ * set_citation(citation, toBool(flag))
*/
- __pyx_v_set = __pyx_f_8petsc4py_5PETSc_get_citation(__pyx_v_citation);
+ __pyx_v_flag = __pyx_f_8petsc4py_5PETSc_get_citation(__pyx_v_citation);
- /* "PETSc/Sys.pyx":179
+ /* "PETSc/Sys.pyx":171
* citation = str2bytes(citation, &cit)
- * cdef PetscBool set = get_citation(citation)
- * CHKERR( PetscCitationsRegister(cit, &set) ) # <<<<<<<<<<<<<<
- * set_citation(citation, <bint>set)
+ * cdef PetscBool flag = get_citation(citation)
+ * CHKERR( PetscCitationsRegister(cit, &flag) ) # <<<<<<<<<<<<<<
+ * set_citation(citation, toBool(flag))
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCitationsRegister(__pyx_v_cit, (&__pyx_v_set))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(25, 179, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCitationsRegister(__pyx_v_cit, (&__pyx_v_flag))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(25, 171, __pyx_L1_error)
- /* "PETSc/Sys.pyx":180
- * cdef PetscBool set = get_citation(citation)
- * CHKERR( PetscCitationsRegister(cit, &set) )
- * set_citation(citation, <bint>set) # <<<<<<<<<<<<<<
+ /* "PETSc/Sys.pyx":172
+ * cdef PetscBool flag = get_citation(citation)
+ * CHKERR( PetscCitationsRegister(cit, &flag) )
+ * set_citation(citation, toBool(flag)) # <<<<<<<<<<<<<<
*
* cdef dict citations_registry = { }
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_set_citation(__pyx_v_citation, __pyx_v_set); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 180, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 172, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(25, 172, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_set_citation(__pyx_v_citation, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 172, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Sys.pyx":174
+ /* "PETSc/Sys.pyx":166
*
* @classmethod
* def registerCitation(cls, citation): # <<<<<<<<<<<<<<
@@ -55643,7 +60745,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Sys_28registerCitation(CYTHON_UNUSED
return __pyx_r;
}
-/* "PETSc/Sys.pyx":184
+/* "PETSc/Sys.pyx":176
* cdef dict citations_registry = { }
*
* cdef PetscBool get_citation(object citation): # <<<<<<<<<<<<<<
@@ -55660,7 +60762,7 @@ static PetscBool __pyx_f_8petsc4py_5PETSc_get_citation(PyObject *__pyx_v_citatio
PetscBool __pyx_t_3;
__Pyx_RefNannySetupContext("get_citation", 0);
- /* "PETSc/Sys.pyx":185
+ /* "PETSc/Sys.pyx":177
*
* cdef PetscBool get_citation(object citation):
* cdef bint is_set = citations_registry.get(citation) # <<<<<<<<<<<<<<
@@ -55668,16 +60770,16 @@ static PetscBool __pyx_f_8petsc4py_5PETSc_get_citation(PyObject *__pyx_v_citatio
*
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_citations_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "get");
- __PYX_ERR(25, 185, __pyx_L1_error)
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "get");
+ __PYX_ERR(25, 177, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_8petsc4py_5PETSc_citations_registry, __pyx_v_citation, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 185, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_8petsc4py_5PETSc_citations_registry, __pyx_v_citation, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 177, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(25, 185, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(25, 177, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_is_set = __pyx_t_2;
- /* "PETSc/Sys.pyx":186
+ /* "PETSc/Sys.pyx":178
* cdef PetscBool get_citation(object citation):
* cdef bint is_set = citations_registry.get(citation)
* return PETSC_TRUE if is_set else PETSC_FALSE # <<<<<<<<<<<<<<
@@ -55692,7 +60794,7 @@ static PetscBool __pyx_f_8petsc4py_5PETSc_get_citation(PyObject *__pyx_v_citatio
__pyx_r = __pyx_t_3;
goto __pyx_L0;
- /* "PETSc/Sys.pyx":184
+ /* "PETSc/Sys.pyx":176
* cdef dict citations_registry = { }
*
* cdef PetscBool get_citation(object citation): # <<<<<<<<<<<<<<
@@ -55703,14 +60805,14 @@ static PetscBool __pyx_f_8petsc4py_5PETSc_get_citation(PyObject *__pyx_v_citatio
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
- __Pyx_WriteUnraisable("petsc4py.PETSc.get_citation", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.get_citation", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_r = (PetscBool) 0;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/Sys.pyx":188
+/* "PETSc/Sys.pyx":180
* return PETSC_TRUE if is_set else PETSC_FALSE
*
* cdef set_citation(object citation, bint is_set): # <<<<<<<<<<<<<<
@@ -55724,23 +60826,23 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_set_citation(PyObject *__pyx_v_citatio
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("set_citation", 0);
- /* "PETSc/Sys.pyx":189
+ /* "PETSc/Sys.pyx":181
*
* cdef set_citation(object citation, bint is_set):
* citations_registry[citation] = is_set # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_is_set); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 189, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_v_is_set); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (unlikely(__pyx_v_8petsc4py_5PETSc_citations_registry == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(25, 189, __pyx_L1_error)
+ __PYX_ERR(25, 181, __pyx_L1_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_8petsc4py_5PETSc_citations_registry, __pyx_v_citation, __pyx_t_1) < 0)) __PYX_ERR(25, 189, __pyx_L1_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_8petsc4py_5PETSc_citations_registry, __pyx_v_citation, __pyx_t_1) < 0)) __PYX_ERR(25, 181, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Sys.pyx":188
+ /* "PETSc/Sys.pyx":180
* return PETSC_TRUE if is_set else PETSC_FALSE
*
* cdef set_citation(object citation, bint is_set): # <<<<<<<<<<<<<<
@@ -55785,6 +60887,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_1Stage(PyObject *__pyx_v_cls, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -55842,7 +60945,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_Stage(CYTHON_UNUSED PyTypeObject
__pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_name); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(26, 7, __pyx_L1_error)
__pyx_t_2 = ((!__pyx_t_1) != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__39, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 7, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__42, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 7, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -55914,7 +61017,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_Stage(CYTHON_UNUSED PyTypeObject
* if stageid == -1:
* CHKERR( PetscLogStageRegister(cname, &stageid) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageFindId(__pyx_v_cname, (&__pyx_v_stageid))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(26, 13, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageFindId(__pyx_v_cname, (&__pyx_v_stageid))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(26, 13, __pyx_L1_error)
/* "PETSc/Log.pyx":14
* if stage is not None: return stage
@@ -55933,7 +61036,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_Stage(CYTHON_UNUSED PyTypeObject
* stage = reg_LogStage(name, stageid)
* return stage
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageRegister(__pyx_v_cname, (&__pyx_v_stageid))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(26, 15, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageRegister(__pyx_v_cname, (&__pyx_v_stageid))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(26, 15, __pyx_L1_error)
/* "PETSc/Log.pyx":14
* if stage is not None: return stage
@@ -56013,6 +61116,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_3Class(PyObject *__pyx_v_cls, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56070,7 +61174,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_2Class(CYTHON_UNUSED PyTypeObjec
__pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_name); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(26, 21, __pyx_L1_error)
__pyx_t_2 = ((!__pyx_t_1) != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__40, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 21, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__43, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 21, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -56142,7 +61246,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_2Class(CYTHON_UNUSED PyTypeObjec
* if classid == -1:
* CHKERR( PetscLogClassRegister(cname, &classid) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogClassFindId(__pyx_v_cname, (&__pyx_v_classid))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(26, 27, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogClassFindId(__pyx_v_cname, (&__pyx_v_classid))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(26, 27, __pyx_L1_error)
/* "PETSc/Log.pyx":28
* if klass is not None: return klass
@@ -56161,7 +61265,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_2Class(CYTHON_UNUSED PyTypeObjec
* klass = reg_LogClass(name, classid)
* return klass
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscClassIdRegister(__pyx_v_cname, (&__pyx_v_classid))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(26, 29, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscClassIdRegister(__pyx_v_cname, (&__pyx_v_classid))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(26, 29, __pyx_L1_error)
/* "PETSc/Log.pyx":28
* if klass is not None: return klass
@@ -56243,7 +61347,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_5Event(PyObject *__pyx_v_cls, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56252,6 +61358,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_5Event(PyObject *__pyx_v_cls, Py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_klass);
@@ -56264,6 +61371,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_5Event(PyObject *__pyx_v_cls, Py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -56312,7 +61420,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_4Event(CYTHON_UNUSED PyTypeObjec
__pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_name); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(26, 35, __pyx_L1_error)
__pyx_t_2 = ((!__pyx_t_1) != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__41, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 35, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__44, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 35, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -56368,7 +61476,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_4Event(CYTHON_UNUSED PyTypeObjec
__pyx_t_2 = (__pyx_v_klass != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __Pyx_PyInt_As_PetscClassId(__pyx_v_klass); if (unlikely((__pyx_t_4 == (PetscClassId)-1) && PyErr_Occurred())) __PYX_ERR(26, 40, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyInt_As_PetscClassId(__pyx_v_klass); if (unlikely((__pyx_t_4 == ((PetscClassId)-1)) && PyErr_Occurred())) __PYX_ERR(26, 40, __pyx_L1_error)
__pyx_v_classid = __pyx_t_4;
}
@@ -56407,7 +61515,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_4Event(CYTHON_UNUSED PyTypeObjec
* if eventid == -1:
* CHKERR( PetscLogEventRegister(cname, classid, &eventid) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventFindId(__pyx_v_cname, (&__pyx_v_eventid))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(26, 43, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventFindId(__pyx_v_cname, (&__pyx_v_eventid))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(26, 43, __pyx_L1_error)
/* "PETSc/Log.pyx":44
* if event is not None: return event
@@ -56426,7 +61534,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_4Event(CYTHON_UNUSED PyTypeObjec
* event = reg_LogEvent(name, eventid)
* return event
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventRegister(__pyx_v_cname, __pyx_v_classid, (&__pyx_v_eventid))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(26, 45, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventRegister(__pyx_v_cname, __pyx_v_classid, (&__pyx_v_eventid))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(26, 45, __pyx_L1_error)
/* "PETSc/Log.pyx":44
* if event is not None: return event
@@ -56507,6 +61615,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_7begin(PyObject *__pyx_v_cls, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56524,6 +61633,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_7begin(PyObject *__pyx_v_cls, Py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56561,7 +61671,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_6begin(CYTHON_UNUSED PyTypeObjec
*/
__pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_all); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(26, 51, __pyx_L1_error)
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogAllBegin()); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 51, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogAllBegin()); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 51, __pyx_L1_error)
goto __pyx_L3;
}
@@ -56573,7 +61683,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_6begin(CYTHON_UNUSED PyTypeObjec
* @classmethod
*/
/*else*/ {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogDefaultBegin()); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 52, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogDefaultBegin()); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 52, __pyx_L1_error)
}
__pyx_L3:;
@@ -56622,6 +61732,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_9view(PyObject *__pyx_v_cls, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56639,6 +61750,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_9view(PyObject *__pyx_v_cls, PyO
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56717,7 +61829,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_8view(CYTHON_UNUSED PyTypeObject
*
* @classmethod
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogView(__pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(26, 59, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogView(__pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(26, 59, __pyx_L1_error)
/* "PETSc/Log.pyx":55
*
@@ -56777,7 +61889,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_10destroy(CYTHON_UNUSED PyTypeOb
*
* @classmethod
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogDestroy()); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 63, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogDestroy()); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 63, __pyx_L1_error)
/* "PETSc/Log.pyx":62
*
@@ -56823,6 +61935,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_13logFlops(PyObject *__pyx_v_cls
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56872,7 +61985,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_12logFlops(CYTHON_UNUSED PyTypeO
* CHKERR( PetscLogFlops(cflops) )
*
*/
- __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_flops); if (unlikely((__pyx_t_1 == (PetscLogDouble)-1) && PyErr_Occurred())) __PYX_ERR(26, 67, __pyx_L1_error)
+ __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_flops); if (unlikely((__pyx_t_1 == ((PetscLogDouble)-1)) && PyErr_Occurred())) __PYX_ERR(26, 67, __pyx_L1_error)
__pyx_v_cflops = __pyx_t_1;
/* "PETSc/Log.pyx":68
@@ -56882,7 +61995,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_12logFlops(CYTHON_UNUSED PyTypeO
*
* @classmethod
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogFlops(__pyx_v_cflops)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 68, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogFlops(__pyx_v_cflops)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 68, __pyx_L1_error)
/* "PETSc/Log.pyx":66
*
@@ -56928,6 +62041,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Log_15addFlops(PyObject *__pyx_v_cls
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -56977,7 +62091,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_14addFlops(CYTHON_UNUSED PyTypeO
* CHKERR( PetscLogFlops(cflops) )
*
*/
- __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_flops); if (unlikely((__pyx_t_1 == (PetscLogDouble)-1) && PyErr_Occurred())) __PYX_ERR(26, 72, __pyx_L1_error)
+ __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_flops); if (unlikely((__pyx_t_1 == ((PetscLogDouble)-1)) && PyErr_Occurred())) __PYX_ERR(26, 72, __pyx_L1_error)
__pyx_v_cflops = __pyx_t_1;
/* "PETSc/Log.pyx":73
@@ -56987,7 +62101,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_14addFlops(CYTHON_UNUSED PyTypeO
*
* @classmethod
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogFlops(__pyx_v_cflops)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 73, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogFlops(__pyx_v_cflops)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 73, __pyx_L1_error)
/* "PETSc/Log.pyx":71
*
@@ -57058,7 +62172,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_16getFlops(CYTHON_UNUSED PyTypeO
* return cflops
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscGetFlops((&__pyx_v_cflops))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 78, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscGetFlops((&__pyx_v_cflops))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 78, __pyx_L1_error)
/* "PETSc/Log.pyx":79
* cdef PetscLogDouble cflops=0
@@ -57142,7 +62256,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_18getTime(CYTHON_UNUSED PyTypeOb
* return wctime
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTime((&__pyx_v_wctime))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 84, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscTime((&__pyx_v_wctime))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 84, __pyx_L1_error)
/* "PETSc/Log.pyx":85
* cdef PetscLogDouble wctime=0
@@ -57226,7 +62340,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Log_20getCPUTime(CYTHON_UNUSED PyTyp
* return cputime
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscGetCPUTime((&__pyx_v_cputime))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 90, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscGetCPUTime((&__pyx_v_cputime))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 90, __pyx_L1_error)
/* "PETSc/Log.pyx":91
* cdef PetscLogDouble cputime=0
@@ -57416,7 +62530,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_4__enter__(struct __pyx_obj
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_push); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 106, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -57571,7 +62685,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_8push(struct __pyx_obj_8pet
*
* def pop(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStagePush(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 115, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStagePush(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 115, __pyx_L1_error)
/* "PETSc/Log.pyx":114
* #
@@ -57640,7 +62754,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_10pop(struct __pyx_obj_8pet
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStagePop()); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 119, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStagePop()); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 119, __pyx_L1_error)
/* "PETSc/Log.pyx":117
* CHKERR( PetscLogStagePush(self.id) )
@@ -57711,7 +62825,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_12getName(struct __pyx_obj_
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageFindName(__pyx_v_self->id, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 125, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageFindName(__pyx_v_self->id, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 125, __pyx_L1_error)
/* "PETSc/Log.pyx":126
* cdef const_char *cval = NULL
@@ -57786,7 +62900,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_4name___get__(struct __pyx_
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getName); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -57872,7 +62986,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogStage_4name_2__set__(struct __pyx_obj_8
*
* #
*/
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__42, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 133, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__45, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 133, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_Raise(__pyx_t_1, 0, 0, 0);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -57933,7 +63047,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_14activate(struct __pyx_obj
*
* def deactivate(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetActive(__pyx_v_self->id, PETSC_TRUE)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 138, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetActive(__pyx_v_self->id, PETSC_TRUE)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 138, __pyx_L1_error)
/* "PETSc/Log.pyx":137
* #
@@ -57993,7 +63107,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_16deactivate(struct __pyx_o
*
* def getActive(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetActive(__pyx_v_self->id, PETSC_FALSE)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 141, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetActive(__pyx_v_self->id, PETSC_FALSE)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 141, __pyx_L1_error)
/* "PETSc/Log.pyx":140
* CHKERR( PetscLogStageSetActive(self.id, PETSC_TRUE) )
@@ -58019,8 +63133,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_16deactivate(struct __pyx_o
* CHKERR( PetscLogStageSetActive(self.id, PETSC_FALSE) )
*
* def getActive(self): # <<<<<<<<<<<<<<
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetActive(self.id, &tval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetActive(self.id, &flag) )
*/
/* Python wrapper */
@@ -58041,7 +63155,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogStage_19getActive(PyObject *__pyx
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_18getActive(struct __pyx_obj_8petsc4py_5PETSc_LogStage *__pyx_v_self) {
- PetscBool __pyx_v_tval;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -58051,30 +63165,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_18getActive(struct __pyx_ob
/* "PETSc/Log.pyx":144
*
* def getActive(self):
- * cdef PetscBool tval = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( PetscLogStageGetActive(self.id, &tval) )
- * return <bint> tval
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( PetscLogStageGetActive(self.id, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_tval = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
/* "PETSc/Log.pyx":145
* def getActive(self):
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetActive(self.id, &tval) ) # <<<<<<<<<<<<<<
- * return <bint> tval
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetActive(self.id, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageGetActive(__pyx_v_self->id, (&__pyx_v_tval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 145, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageGetActive(__pyx_v_self->id, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 145, __pyx_L1_error)
/* "PETSc/Log.pyx":146
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetActive(self.id, &tval) )
- * return <bint> tval # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetActive(self.id, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setActive(self, flag):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_tval); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 146, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 146, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -58084,8 +63198,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_18getActive(struct __pyx_ob
* CHKERR( PetscLogStageSetActive(self.id, PETSC_FALSE) )
*
* def getActive(self): # <<<<<<<<<<<<<<
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetActive(self.id, &tval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetActive(self.id, &flag) )
*/
/* function exit code */
@@ -58100,7 +63214,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_18getActive(struct __pyx_ob
}
/* "PETSc/Log.pyx":148
- * return <bint> tval
+ * return toBool(flag)
*
* def setActive(self, flag): # <<<<<<<<<<<<<<
* cdef PetscBool tval = PETSC_FALSE
@@ -58123,6 +63237,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogStage_21setActive(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -58193,10 +63308,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_20setActive(struct __pyx_ob
*
* property active:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetActive(__pyx_v_self->id, __pyx_v_tval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 151, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetActive(__pyx_v_self->id, __pyx_v_tval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 151, __pyx_L1_error)
/* "PETSc/Log.pyx":148
- * return <bint> tval
+ * return toBool(flag)
*
* def setActive(self, flag): # <<<<<<<<<<<<<<
* cdef PetscBool tval = PETSC_FALSE
@@ -58255,7 +63370,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_6active___get__(struct __py
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getActive); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 155, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -58337,7 +63452,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogStage_6active_2__set__(struct __pyx_obj
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setActive); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 157, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -58350,15 +63465,33 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogStage_6active_2__set__(struct __pyx_obj
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 157, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 157, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 157, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 157, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 157, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 157, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 157, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -58390,8 +63523,8 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogStage_6active_2__set__(struct __pyx_obj
* #
*
* def getVisible(self): # <<<<<<<<<<<<<<
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetVisible(self.id, &tval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetVisible(self.id, &flag) )
*/
/* Python wrapper */
@@ -58412,7 +63545,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogStage_23getVisible(PyObject *__py
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_22getVisible(struct __pyx_obj_8petsc4py_5PETSc_LogStage *__pyx_v_self) {
- PetscBool __pyx_v_tval;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -58422,30 +63555,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_22getVisible(struct __pyx_o
/* "PETSc/Log.pyx":162
*
* def getVisible(self):
- * cdef PetscBool tval = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( PetscLogStageGetVisible(self.id, &tval) )
- * return <bint> tval
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( PetscLogStageGetVisible(self.id, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_tval = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
/* "PETSc/Log.pyx":163
* def getVisible(self):
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetVisible(self.id, &tval) ) # <<<<<<<<<<<<<<
- * return <bint> tval
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetVisible(self.id, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageGetVisible(__pyx_v_self->id, (&__pyx_v_tval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 163, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageGetVisible(__pyx_v_self->id, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 163, __pyx_L1_error)
/* "PETSc/Log.pyx":164
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetVisible(self.id, &tval) )
- * return <bint> tval # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetVisible(self.id, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setVisible(self, flag):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_tval); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 164, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 164, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -58455,8 +63588,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_22getVisible(struct __pyx_o
* #
*
* def getVisible(self): # <<<<<<<<<<<<<<
- * cdef PetscBool tval = PETSC_FALSE
- * CHKERR( PetscLogStageGetVisible(self.id, &tval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( PetscLogStageGetVisible(self.id, &flag) )
*/
/* function exit code */
@@ -58471,7 +63604,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_22getVisible(struct __pyx_o
}
/* "PETSc/Log.pyx":166
- * return <bint> tval
+ * return toBool(flag)
*
* def setVisible(self, flag): # <<<<<<<<<<<<<<
* cdef PetscBool tval = PETSC_FALSE
@@ -58494,6 +63627,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogStage_25setVisible(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -58564,10 +63698,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_24setVisible(struct __pyx_o
*
* property visible:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetVisible(__pyx_v_self->id, __pyx_v_tval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 169, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogStageSetVisible(__pyx_v_self->id, __pyx_v_tval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 169, __pyx_L1_error)
/* "PETSc/Log.pyx":166
- * return <bint> tval
+ * return toBool(flag)
*
* def setVisible(self, flag): # <<<<<<<<<<<<<<
* cdef PetscBool tval = PETSC_FALSE
@@ -58626,7 +63760,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogStage_7visible___get__(struct __p
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getVisible); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 173, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -58708,7 +63842,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogStage_7visible_2__set__(struct __pyx_ob
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setVisible); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -58721,15 +63855,33 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogStage_7visible_2__set__(struct __pyx_ob
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 175, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 175, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 175, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 175, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 175, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 175, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -58824,7 +63976,7 @@ static struct __pyx_obj_8petsc4py_5PETSc_LogStage *__pyx_f_8petsc4py_5PETSc_get_
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
if (unlikely(__pyx_v_8petsc4py_5PETSc_stage_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "get");
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "get");
__PYX_ERR(26, 181, __pyx_L1_error)
}
__pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_8petsc4py_5PETSc_stage_registry, __pyx_v_name, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 181, __pyx_L1_error)
@@ -59095,7 +64247,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogClass_4getName(struct __pyx_obj_8
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogClassFindName(__pyx_v_self->id, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 205, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogClassFindName(__pyx_v_self->id, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 205, __pyx_L1_error)
/* "PETSc/Log.pyx":206
* cdef const_char *cval = NULL
@@ -59170,7 +64322,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogClass_4name___get__(struct __pyx_
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getName); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -59256,7 +64408,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogClass_4name_2__set__(struct __pyx_obj_8
*
* #
*/
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__43, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 213, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__46, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 213, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_Raise(__pyx_t_1, 0, 0, 0);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -59317,7 +64469,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogClass_6activate(struct __pyx_obj_
*
* def deactivate(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 218, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 218, __pyx_L1_error)
/* "PETSc/Log.pyx":217
* #
@@ -59377,7 +64529,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogClass_8deactivate(struct __pyx_ob
*
* def getActive(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 221, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 221, __pyx_L1_error)
/* "PETSc/Log.pyx":220
* CHKERR( PetscLogClassActivate(self.id) )
@@ -59489,6 +64641,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogClass_13setActive(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -59547,7 +64700,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogClass_12setActive(struct __pyx_ob
* else:
* CHKERR( PetscLogClassDeactivate(self.id) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 229, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 229, __pyx_L1_error)
/* "PETSc/Log.pyx":228
*
@@ -59567,7 +64720,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogClass_12setActive(struct __pyx_ob
* property active:
*/
/*else*/ {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 231, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivateClass(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 231, __pyx_L1_error)
}
__pyx_L3:;
@@ -59631,7 +64784,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogClass_6active___get__(struct __py
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getActive); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 235, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -59713,7 +64866,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogClass_6active_2__set__(struct __pyx_obj
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setActive); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -59726,15 +64879,33 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogClass_6active_2__set__(struct __pyx_obj
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 237, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 237, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 237, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 237, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 237, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 237, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -59829,7 +65000,7 @@ static struct __pyx_obj_8petsc4py_5PETSc_LogClass *__pyx_f_8petsc4py_5PETSc_get_
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
if (unlikely(__pyx_v_8petsc4py_5PETSc_class_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "get");
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "get");
__PYX_ERR(26, 243, __pyx_L1_error)
}
__pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_8petsc4py_5PETSc_class_registry, __pyx_v_name, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 243, __pyx_L1_error)
@@ -60094,7 +65265,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_4__enter__(struct __pyx_obj
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_begin); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 264, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -60191,7 +65362,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_6__exit__(struct __pyx_obj_
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_end); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 268, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -60274,7 +65445,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_8begin(struct __pyx_obj_8pe
* CHKERR( PetscLogEventBegin(self.id, o[0], o[1], o[2], o[3]) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 274, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 274, __pyx_L1_error)
/* "PETSc/Log.pyx":275
* cdef PetscObject o[4]
@@ -60283,7 +65454,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_8begin(struct __pyx_obj_8pe
*
* def end(self, *objs):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventBegin(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 275, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventBegin(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 275, __pyx_L1_error)
/* "PETSc/Log.pyx":272
* #
@@ -60346,7 +65517,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_10end(struct __pyx_obj_8pet
* CHKERR( PetscLogEventEnd(self.id, o[0], o[1], o[2], o[3]) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 279, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 279, __pyx_L1_error)
/* "PETSc/Log.pyx":280
* cdef PetscObject o[4]
@@ -60355,7 +65526,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_10end(struct __pyx_obj_8pet
*
* def barrierBegin(self, Comm comm=None, *objs):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventEnd(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 280, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventEnd(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 280, __pyx_L1_error)
/* "PETSc/Log.pyx":277
* CHKERR( PetscLogEventBegin(self.id, o[0], o[1], o[2], o[3]) )
@@ -60414,6 +65585,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_13barrierBegin(PyObject *__
switch (pos_args) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
kw_args = PyDict_Size(__pyx_kwds);
@@ -60432,6 +65604,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_13barrierBegin(PyObject *__
switch (PyTuple_GET_SIZE(__pyx_args)) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
}
@@ -60474,7 +65647,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_12barrierBegin(struct __pyx
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* if ccomm == MPI_COMM_NULL: ccomm = PETSC_COMM_DEFAULT
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 284, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 284, __pyx_L1_error)
/* "PETSc/Log.pyx":285
* cdef PetscObject o[4]
@@ -60505,7 +65678,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_12barrierBegin(struct __pyx
*
* def barrierEnd(self, Comm comm=None, *objs):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventBarrierBegin(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]), __pyx_v_ccomm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 287, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventBarrierBegin(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]), __pyx_v_ccomm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 287, __pyx_L1_error)
/* "PETSc/Log.pyx":282
* CHKERR( PetscLogEventEnd(self.id, o[0], o[1], o[2], o[3]) )
@@ -60564,6 +65737,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_15barrierEnd(PyObject *__py
switch (pos_args) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
kw_args = PyDict_Size(__pyx_kwds);
@@ -60582,6 +65756,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_15barrierEnd(PyObject *__py
switch (PyTuple_GET_SIZE(__pyx_args)) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
}
@@ -60624,7 +65799,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_14barrierEnd(struct __pyx_o
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* if ccomm == MPI_COMM_NULL: ccomm = PETSC_COMM_DEFAULT
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 291, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_event_args2objs(__pyx_v_objs, __pyx_v_o); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 291, __pyx_L1_error)
/* "PETSc/Log.pyx":292
* cdef PetscObject o[4]
@@ -60655,7 +65830,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_14barrierEnd(struct __pyx_o
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventBarrierEnd(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]), __pyx_v_ccomm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 294, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventBarrierEnd(__pyx_v_self->id, (__pyx_v_o[0]), (__pyx_v_o[1]), (__pyx_v_o[2]), (__pyx_v_o[3]), __pyx_v_ccomm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 294, __pyx_L1_error)
/* "PETSc/Log.pyx":289
* CHKERR( PetscLogEventBarrierBegin(self.id, o[0], o[1], o[2], o[3], ccomm) )
@@ -60726,7 +65901,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_16getName(struct __pyx_obj_
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventFindName(__pyx_v_self->id, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 300, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventFindName(__pyx_v_self->id, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 300, __pyx_L1_error)
/* "PETSc/Log.pyx":301
* cdef const_char *cval = NULL
@@ -60801,7 +65976,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_4name___get__(struct __pyx_
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getName); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 305, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -60887,7 +66062,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogEvent_4name_2__set__(struct __pyx_obj_8
*
* #
*/
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__44, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 308, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__47, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 308, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_Raise(__pyx_t_1, 0, 0, 0);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -60948,7 +66123,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_18activate(struct __pyx_obj
*
* def deactivate(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivate(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 313, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivate(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 313, __pyx_L1_error)
/* "PETSc/Log.pyx":312
* #
@@ -61008,7 +66183,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_20deactivate(struct __pyx_o
*
* def getActive(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivate(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(26, 316, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivate(__pyx_v_self->id)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(26, 316, __pyx_L1_error)
/* "PETSc/Log.pyx":315
* CHKERR( PetscLogEventActivate(self.id) )
@@ -61120,6 +66295,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_25setActive(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -61178,7 +66354,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_24setActive(struct __pyx_ob
* else:
* CHKERR( PetscLogEventDeactivate(self.id) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivate(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 324, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventActivate(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 324, __pyx_L1_error)
/* "PETSc/Log.pyx":323
*
@@ -61198,7 +66374,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_24setActive(struct __pyx_ob
* property active:
*/
/*else*/ {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivate(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 326, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventDeactivate(__pyx_v_self->id)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 326, __pyx_L1_error)
}
__pyx_L3:;
@@ -61262,7 +66438,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_6active___get__(struct __py
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getActive); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -61344,7 +66520,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogEvent_6active_2__set__(struct __pyx_obj
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setActive); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -61357,15 +66533,33 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogEvent_6active_2__set__(struct __pyx_obj
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 332, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 332, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 332, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 332, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 332, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 332, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 332, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -61483,6 +66677,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_29setActiveAll(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -61553,7 +66748,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_28setActiveAll(struct __pyx
*
* property active_all:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventSetActiveAll(__pyx_v_self->id, __pyx_v_tval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(26, 341, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventSetActiveAll(__pyx_v_self->id, __pyx_v_tval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(26, 341, __pyx_L1_error)
/* "PETSc/Log.pyx":338
* raise NotImplementedError
@@ -61614,7 +66809,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_10active_all___get__(struct
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getActiveAll); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 345, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -61696,7 +66891,7 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogEvent_10active_all_2__set__(struct __py
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setActiveAll); if (unlikely(!__pyx_t_2)) __PYX_ERR(26, 347, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -61709,15 +66904,33 @@ static int __pyx_pf_8petsc4py_5PETSc_8LogEvent_10active_all_2__set__(struct __py
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 347, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 347, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 347, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 347, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 347, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(26, 347, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 347, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -61770,6 +66983,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_31getPerfInfo(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -61787,6 +67001,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_8LogEvent_31getPerfInfo(PyObject *__p
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -61839,7 +67054,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_30getPerfInfo(struct __pyx_
__pyx_t_1 = (__pyx_v_stage != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stage); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(26, 354, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stage); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(26, 354, __pyx_L1_error)
__pyx_v_cstage = __pyx_t_3;
}
@@ -61850,7 +67065,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_8LogEvent_30getPerfInfo(struct __pyx_
* return info
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventGetPerfInfo(__pyx_v_cstage, __pyx_v_self->id, (&__pyx_v_info))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(26, 355, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscLogEventGetPerfInfo(__pyx_v_cstage, __pyx_v_self->id, (&__pyx_v_info))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(26, 355, __pyx_L1_error)
/* "PETSc/Log.pyx":356
* if stage is not None: cstage = asInt(stage)
@@ -61952,7 +67167,7 @@ static struct __pyx_obj_8petsc4py_5PETSc_LogEvent *__pyx_f_8petsc4py_5PETSc_get_
*/
__Pyx_XDECREF(((PyObject *)__pyx_r));
if (unlikely(__pyx_v_8petsc4py_5PETSc_event_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "get");
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "get");
__PYX_ERR(26, 361, __pyx_L1_error)
}
__pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_8petsc4py_5PETSc_event_registry, __pyx_v_name, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 361, __pyx_L1_error)
@@ -62086,6 +67301,7 @@ static int __pyx_pw_8petsc4py_5PETSc_4Comm_1__cinit__(PyObject *__pyx_v_self, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -62103,6 +67319,7 @@ static int __pyx_pw_8petsc4py_5PETSc_4Comm_1__cinit__(PyObject *__pyx_v_self, Py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -62260,7 +67477,7 @@ static void __pyx_pf_8petsc4py_5PETSc_4Comm_2__dealloc__(struct PyPetscCommObjec
* self.comm = MPI_COMM_NULL
* self.isdup = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscCommDEALLOC((&__pyx_v_self->comm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(9, 17, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscCommDEALLOC((&__pyx_v_self->comm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(9, 17, __pyx_L1_error)
/* "PETSc/Comm.pyx":16
*
@@ -62313,7 +67530,7 @@ static void __pyx_pf_8petsc4py_5PETSc_4Comm_2__dealloc__(struct PyPetscCommObjec
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc.Comm.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.Comm.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
@@ -62395,17 +67612,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_4__richcmp__(PyObject *__pyx_v_
* cdef Comm s = self
* cdef Comm o = other
*/
- switch (__pyx_v_op) {
- case 2:
- case 3:
- __pyx_t_1 = 0;
- break;
- default:
- __pyx_t_1 = 1;
- break;
+ __pyx_t_2 = ((__pyx_v_op != 2) != 0);
+ if (__pyx_t_2) {
+ } else {
+ __pyx_t_1 = __pyx_t_2;
+ goto __pyx_L6_bool_binop_done;
}
+ __pyx_t_2 = ((__pyx_v_op != 3) != 0);
+ __pyx_t_1 = __pyx_t_2;
+ __pyx_L6_bool_binop_done:;
if (__pyx_t_1) {
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__45, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 25, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__48, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 25, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -62487,11 +67704,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_4__richcmp__(PyObject *__pyx_v_
if (__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
- goto __pyx_L7_bool_binop_done;
+ goto __pyx_L9_bool_binop_done;
}
__pyx_t_2 = ((__pyx_v_comm2 != MPI_COMM_NULL) != 0);
__pyx_t_1 = __pyx_t_2;
- __pyx_L7_bool_binop_done:;
+ __pyx_L9_bool_binop_done:;
if (__pyx_t_1) {
/* "PETSc/Comm.pyx":33
@@ -62501,7 +67718,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_4__richcmp__(PyObject *__pyx_v_
* if eq: return (flag==<int>MPI_IDENT or flag==<int>MPI_CONGRUENT)
* else: return (flag!=<int>MPI_IDENT and flag!=<int>MPI_CONGRUENT)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_compare(__pyx_v_comm1, __pyx_v_comm2, (&__pyx_v_flag))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(9, 33, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_compare(__pyx_v_comm1, __pyx_v_comm2, (&__pyx_v_flag))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(9, 33, __pyx_L1_error)
/* "PETSc/Comm.pyx":34
* if comm1 != MPI_COMM_NULL and comm2 != MPI_COMM_NULL:
@@ -62520,14 +67737,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_4__richcmp__(PyObject *__pyx_v_
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_3 = __pyx_t_6;
__pyx_t_6 = 0;
- goto __pyx_L10_bool_binop_done;
+ goto __pyx_L12_bool_binop_done;
}
__pyx_t_1 = (__pyx_v_flag == ((int)MPI_CONGRUENT));
__pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(9, 34, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_3 = __pyx_t_6;
__pyx_t_6 = 0;
- __pyx_L10_bool_binop_done:;
+ __pyx_L12_bool_binop_done:;
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
@@ -62549,14 +67766,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_4__richcmp__(PyObject *__pyx_v_
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_3 = __pyx_t_6;
__pyx_t_6 = 0;
- goto __pyx_L12_bool_binop_done;
+ goto __pyx_L14_bool_binop_done;
}
__pyx_t_1 = (__pyx_v_flag != ((int)MPI_CONGRUENT));
__pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(9, 35, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_3 = __pyx_t_6;
__pyx_t_6 = 0;
- __pyx_L12_bool_binop_done:;
+ __pyx_L14_bool_binop_done:;
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
@@ -62742,7 +67959,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_8destroy(struct PyPetscCommObje
* CHKERR( PetscCommDestroy(&self.comm) )
* self.comm = MPI_COMM_NULL
*/
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__46, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 48, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__49, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 48, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -62764,7 +67981,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_8destroy(struct PyPetscCommObje
* self.comm = MPI_COMM_NULL
* self.isdup = 0
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCommDestroy((&__pyx_v_self->comm))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(9, 49, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCommDestroy((&__pyx_v_self->comm))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(9, 49, __pyx_L1_error)
/* "PETSc/Comm.pyx":50
* raise ValueError("communicator not owned")
@@ -62872,7 +68089,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_10duplicate(struct PyPetscCommO
* cdef MPI_Comm newcomm = MPI_COMM_NULL
* CHKERR( PetscCommDuplicate(self.comm, &newcomm, NULL) )
*/
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__47, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 56, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__50, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 56, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -62903,7 +68120,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_10duplicate(struct PyPetscCommO
* cdef Comm comm = type(self)()
* comm.comm = newcomm
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCommDuplicate(__pyx_v_self->comm, (&__pyx_v_newcomm), NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(9, 58, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCommDuplicate(__pyx_v_self->comm, (&__pyx_v_newcomm), NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(9, 58, __pyx_L1_error)
/* "PETSc/Comm.pyx":59
* cdef MPI_Comm newcomm = MPI_COMM_NULL
@@ -62914,7 +68131,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_10duplicate(struct PyPetscCommO
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_4 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -63052,7 +68269,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_12getSize(struct PyPetscCommObj
* cdef int size=0
* MPI_Comm_size(self.comm, &size)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__48, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 67, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__51, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 67, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -63168,7 +68385,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_14getRank(struct PyPetscCommObj
* cdef int rank=0
* MPI_Comm_rank(self.comm, &rank)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__49, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 74, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__52, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 74, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -63283,7 +68500,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_16barrier(struct PyPetscCommObj
* MPI_Barrier(self.comm)
*
*/
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__50, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 81, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__53, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 81, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -63368,7 +68585,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_4size___get__(struct PyPetscCom
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 88, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -63450,7 +68667,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4Comm_4rank___get__(struct PyPetscCom
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRank); if (unlikely(!__pyx_t_2)) __PYX_ERR(9, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -63811,7 +69028,7 @@ static void __pyx_pf_8petsc4py_5PETSc_6Object_2__dealloc__(struct PyPetscObjectO
* self.obj = NULL
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscDEALLOC((&(__pyx_v_self->obj[0])))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 12, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscDEALLOC((&(__pyx_v_self->obj[0])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 12, __pyx_L1_error)
/* "PETSc/Object.pyx":13
* def __dealloc__(self):
@@ -63833,7 +69050,7 @@ static void __pyx_pf_8petsc4py_5PETSc_6Object_2__dealloc__(struct PyPetscObjectO
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc.Object.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.Object.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
@@ -63926,46 +69143,46 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4__richcmp__(PyObject *__pyx_
* elif op == 3: return (s.obj[0] != o.obj[0])
* else: raise TypeError("only '==' and '!='")
*/
- switch (__pyx_v_op) {
- case 2:
+ __pyx_t_1 = ((__pyx_v_op == 2) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
__pyx_t_3 = __Pyx_PyBool_FromLong(((__pyx_v_s->obj[0]) == (__pyx_v_o->obj[0]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 19, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- break;
+ }
- /* "PETSc/Object.pyx":20
+ /* "PETSc/Object.pyx":20
* cdef Object s = self, o = other
* if op == 2: return (s.obj[0] == o.obj[0])
* elif op == 3: return (s.obj[0] != o.obj[0]) # <<<<<<<<<<<<<<
* else: raise TypeError("only '==' and '!='")
*
*/
- case 3:
+ __pyx_t_1 = ((__pyx_v_op == 3) != 0);
+ if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
__pyx_t_3 = __Pyx_PyBool_FromLong(((__pyx_v_s->obj[0]) != (__pyx_v_o->obj[0]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 20, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- break;
- default:
+ }
- /* "PETSc/Object.pyx":21
+ /* "PETSc/Object.pyx":21
* if op == 2: return (s.obj[0] == o.obj[0])
* elif op == 3: return (s.obj[0] != o.obj[0])
* else: raise TypeError("only '==' and '!='") # <<<<<<<<<<<<<<
*
* def __nonzero__(self):
*/
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__51, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 21, __pyx_L1_error)
+ /*else*/ {
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__54, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 21, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__PYX_ERR(10, 21, __pyx_L1_error)
- break;
}
/* "PETSc/Object.pyx":15
@@ -64085,7 +69302,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8__copy__(struct PyPetscObjec
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -64132,7 +69349,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8__copy__(struct PyPetscObjec
* obj.obj[0] = o
* return obj
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectReference(__pyx_v_o)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(10, 30, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectReference(__pyx_v_o)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(10, 30, __pyx_L1_error)
/* "PETSc/Object.pyx":29
* cdef Object obj = type(self)()
@@ -64157,7 +69374,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8__copy__(struct PyPetscObjec
* obj.obj[0] = o
* return obj # <<<<<<<<<<<<<<
*
- * def __deepcopy__(self, dict memo not None):
+ * def __deepcopy__(self, dict memo):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_obj));
@@ -64189,7 +69406,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8__copy__(struct PyPetscObjec
/* "PETSc/Object.pyx":34
* return obj
*
- * def __deepcopy__(self, dict memo not None): # <<<<<<<<<<<<<<
+ * def __deepcopy__(self, dict memo): # <<<<<<<<<<<<<<
* cdef object obj_copy = None
* try:
*/
@@ -64210,6 +69427,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_11__deepcopy__(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -64264,7 +69482,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_10__deepcopy__(struct PyPetsc
/* "PETSc/Object.pyx":35
*
- * def __deepcopy__(self, dict memo not None):
+ * def __deepcopy__(self, dict memo):
* cdef object obj_copy = None # <<<<<<<<<<<<<<
* try:
* obj_copy = self.copy
@@ -64273,7 +69491,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_10__deepcopy__(struct PyPetsc
__pyx_v_obj_copy = Py_None;
/* "PETSc/Object.pyx":36
- * def __deepcopy__(self, dict memo not None):
+ * def __deepcopy__(self, dict memo):
* cdef object obj_copy = None
* try: # <<<<<<<<<<<<<<
* obj_copy = self.copy
@@ -64301,7 +69519,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_10__deepcopy__(struct PyPetsc
__pyx_t_4 = 0;
/* "PETSc/Object.pyx":36
- * def __deepcopy__(self, dict memo not None):
+ * def __deepcopy__(self, dict memo):
* cdef object obj_copy = None
* try: # <<<<<<<<<<<<<<
* obj_copy = self.copy
@@ -64311,9 +69529,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_10__deepcopy__(struct PyPetsc
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- goto __pyx_L10_try_end;
+ goto __pyx_L8_try_end;
__pyx_L3_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Object.pyx":38
@@ -64345,19 +69562,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_10__deepcopy__(struct PyPetsc
__pyx_L5_except_error:;
/* "PETSc/Object.pyx":36
- * def __deepcopy__(self, dict memo not None):
+ * def __deepcopy__(self, dict memo):
* cdef object obj_copy = None
* try: # <<<<<<<<<<<<<<
* obj_copy = self.copy
* except AttributeError:
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
goto __pyx_L1_error;
- __pyx_L10_try_end:;
+ __pyx_L8_try_end:;
}
/* "PETSc/Object.pyx":40
@@ -64379,7 +69595,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_10__deepcopy__(struct PyPetsc
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_obj_copy);
__pyx_t_6 = __pyx_v_obj_copy; __pyx_t_4 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
@@ -64403,7 +69619,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_10__deepcopy__(struct PyPetsc
/* "PETSc/Object.pyx":34
* return obj
*
- * def __deepcopy__(self, dict memo not None): # <<<<<<<<<<<<<<
+ * def __deepcopy__(self, dict memo): # <<<<<<<<<<<<<<
* cdef object obj_copy = None
* try:
*/
@@ -64588,6 +69804,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_13view(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -64605,6 +69822,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_13view(PyObject *__pyx_v_self
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -64671,7 +69889,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_12view(struct PyPetscObjectOb
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectView((__pyx_v_self->obj[0]), __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(10, 59, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectView((__pyx_v_self->obj[0]), __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(10, 59, __pyx_L1_error)
/* "PETSc/Object.pyx":56
* #
@@ -64731,7 +69949,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_14destroy(struct PyPetscObjec
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectDestroy((&(__pyx_v_self->obj[0])))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 62, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectDestroy((&(__pyx_v_self->obj[0])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 62, __pyx_L1_error)
/* "PETSc/Object.pyx":63
* def destroy(self):
@@ -64812,7 +70030,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_16getType(struct PyPetscObjec
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetType((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 67, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetType((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 67, __pyx_L1_error)
/* "PETSc/Object.pyx":68
* cdef const_char *cval = NULL
@@ -64871,6 +70089,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_19setOptionsPrefix(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -64942,7 +70161,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_18setOptionsPrefix(struct PyP
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetOptionsPrefix((__pyx_v_self->obj[0]), __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 75, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetOptionsPrefix((__pyx_v_self->obj[0]), __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 75, __pyx_L1_error)
/* "PETSc/Object.pyx":72
* #
@@ -65015,7 +70234,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_20getOptionsPrefix(struct PyP
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetOptionsPrefix((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 79, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetOptionsPrefix((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 79, __pyx_L1_error)
/* "PETSc/Object.pyx":80
* cdef const_char *cval = NULL
@@ -65086,9 +70305,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_22setFromOptions(struct PyPet
* def setFromOptions(self):
* CHKERR( PetscObjectSetFromOptions(self.obj[0]) ) # <<<<<<<<<<<<<<
*
- * #
+ * def viewFromOptions(self, name, Object prefix=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetFromOptions((__pyx_v_self->obj[0]))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 83, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetFromOptions((__pyx_v_self->obj[0]))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 83, __pyx_L1_error)
/* "PETSc/Object.pyx":82
* return bytes2str(cval)
@@ -65110,7 +70329,174 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_22setFromOptions(struct PyPet
return __pyx_r;
}
-/* "PETSc/Object.pyx":87
+/* "PETSc/Object.pyx":85
+ * CHKERR( PetscObjectSetFromOptions(self.obj[0]) )
+ *
+ * def viewFromOptions(self, name, Object prefix=None): # <<<<<<<<<<<<<<
+ * cdef PetscObject pobj = NULL
+ * cdef const_char *cval = NULL
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_25viewFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_24viewFromOptions[] = "Object.viewFromOptions(self, name, Object prefix=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_25viewFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_name = 0;
+ struct PyPetscObjectObject *__pyx_v_prefix = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("viewFromOptions (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_name,&__pyx_n_s_prefix,0};
+ PyObject* values[2] = {0,0};
+ values[1] = (PyObject *)((struct PyPetscObjectObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_prefix);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "viewFromOptions") < 0)) __PYX_ERR(10, 85, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_name = values[0];
+ __pyx_v_prefix = ((struct PyPetscObjectObject *)values[1]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("viewFromOptions", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 85, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Object.viewFromOptions", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_prefix), __pyx_ptype_8petsc4py_5PETSc_Object, 1, "prefix", 0))) __PYX_ERR(10, 85, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_24viewFromOptions(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name, __pyx_v_prefix);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24viewFromOptions(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, struct PyPetscObjectObject *__pyx_v_prefix) {
+ PetscObject __pyx_v_pobj;
+ const char *__pyx_v_cval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscObject __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("viewFromOptions", 0);
+ __Pyx_INCREF(__pyx_v_name);
+
+ /* "PETSc/Object.pyx":86
+ *
+ * def viewFromOptions(self, name, Object prefix=None):
+ * cdef PetscObject pobj = NULL # <<<<<<<<<<<<<<
+ * cdef const_char *cval = NULL
+ * pobj = prefix.obj[0] if prefix is not None else NULL
+ */
+ __pyx_v_pobj = NULL;
+
+ /* "PETSc/Object.pyx":87
+ * def viewFromOptions(self, name, Object prefix=None):
+ * cdef PetscObject pobj = NULL
+ * cdef const_char *cval = NULL # <<<<<<<<<<<<<<
+ * pobj = prefix.obj[0] if prefix is not None else NULL
+ * name = str2bytes(name, &cval)
+ */
+ __pyx_v_cval = NULL;
+
+ /* "PETSc/Object.pyx":88
+ * cdef PetscObject pobj = NULL
+ * cdef const_char *cval = NULL
+ * pobj = prefix.obj[0] if prefix is not None else NULL # <<<<<<<<<<<<<<
+ * name = str2bytes(name, &cval)
+ * CHKERR( PetscObjectViewFromOptions(self.obj[0], pobj, cval) )
+ */
+ __pyx_t_2 = (((PyObject *)__pyx_v_prefix) != Py_None);
+ if ((__pyx_t_2 != 0)) {
+ __pyx_t_1 = (__pyx_v_prefix->obj[0]);
+ } else {
+ __pyx_t_1 = NULL;
+ }
+ __pyx_v_pobj = __pyx_t_1;
+
+ /* "PETSc/Object.pyx":89
+ * cdef const_char *cval = NULL
+ * pobj = prefix.obj[0] if prefix is not None else NULL
+ * name = str2bytes(name, &cval) # <<<<<<<<<<<<<<
+ * CHKERR( PetscObjectViewFromOptions(self.obj[0], pobj, cval) )
+ *
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 89, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_name, __pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/Object.pyx":90
+ * pobj = prefix.obj[0] if prefix is not None else NULL
+ * name = str2bytes(name, &cval)
+ * CHKERR( PetscObjectViewFromOptions(self.obj[0], pobj, cval) ) # <<<<<<<<<<<<<<
+ *
+ * #
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectViewFromOptions((__pyx_v_self->obj[0]), __pyx_v_pobj, __pyx_v_cval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(10, 90, __pyx_L1_error)
+
+ /* "PETSc/Object.pyx":85
+ * CHKERR( PetscObjectSetFromOptions(self.obj[0]) )
+ *
+ * def viewFromOptions(self, name, Object prefix=None): # <<<<<<<<<<<<<<
+ * cdef PetscObject pobj = NULL
+ * cdef const_char *cval = NULL
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.Object.viewFromOptions", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_name);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Object.pyx":94
* #
*
* def getComm(self): # <<<<<<<<<<<<<<
@@ -65119,23 +70505,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_22setFromOptions(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_25getComm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_24getComm[] = "Object.getComm(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_25getComm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_27getComm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_26getComm[] = "Object.getComm(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_27getComm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getComm (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getComm", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getComm", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_24getComm(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_26getComm(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24getComm(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getComm(struct PyPetscObjectObject *__pyx_v_self) {
struct PyPetscCommObject *__pyx_v_comm = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -65143,28 +70529,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24getComm(struct PyPetscObjec
int __pyx_t_2;
__Pyx_RefNannySetupContext("getComm", 0);
- /* "PETSc/Object.pyx":88
+ /* "PETSc/Object.pyx":95
*
* def getComm(self):
* cdef Comm comm = Comm() # <<<<<<<<<<<<<<
* CHKERR( PetscObjectGetComm(self.obj[0], &comm.comm) )
* return comm
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 88, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 95, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_comm = ((struct PyPetscCommObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":89
+ /* "PETSc/Object.pyx":96
* def getComm(self):
* cdef Comm comm = Comm()
* CHKERR( PetscObjectGetComm(self.obj[0], &comm.comm) ) # <<<<<<<<<<<<<<
* return comm
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm((__pyx_v_self->obj[0]), (&__pyx_v_comm->comm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 89, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm((__pyx_v_self->obj[0]), (&__pyx_v_comm->comm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 96, __pyx_L1_error)
- /* "PETSc/Object.pyx":90
+ /* "PETSc/Object.pyx":97
* cdef Comm comm = Comm()
* CHKERR( PetscObjectGetComm(self.obj[0], &comm.comm) )
* return comm # <<<<<<<<<<<<<<
@@ -65176,7 +70562,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24getComm(struct PyPetscObjec
__pyx_r = ((PyObject *)__pyx_v_comm);
goto __pyx_L0;
- /* "PETSc/Object.pyx":87
+ /* "PETSc/Object.pyx":94
* #
*
* def getComm(self): # <<<<<<<<<<<<<<
@@ -65196,7 +70582,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24getComm(struct PyPetscObjec
return __pyx_r;
}
-/* "PETSc/Object.pyx":92
+/* "PETSc/Object.pyx":99
* return comm
*
* def getName(self): # <<<<<<<<<<<<<<
@@ -65205,23 +70591,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_24getComm(struct PyPetscObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_27getName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_26getName[] = "Object.getName(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_27getName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_29getName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_28getName[] = "Object.getName(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_29getName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getName (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getName", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getName", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_26getName(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_28getName(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getName(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28getName(struct PyPetscObjectObject *__pyx_v_self) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -65229,7 +70615,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getName(struct PyPetscObjec
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getName", 0);
- /* "PETSc/Object.pyx":93
+ /* "PETSc/Object.pyx":100
*
* def getName(self):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -65238,16 +70624,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getName(struct PyPetscObjec
*/
__pyx_v_cval = NULL;
- /* "PETSc/Object.pyx":94
+ /* "PETSc/Object.pyx":101
* def getName(self):
* cdef const_char *cval = NULL
* CHKERR( PetscObjectGetName(self.obj[0], &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetName((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 94, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetName((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 101, __pyx_L1_error)
- /* "PETSc/Object.pyx":95
+ /* "PETSc/Object.pyx":102
* cdef const_char *cval = NULL
* CHKERR( PetscObjectGetName(self.obj[0], &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -65255,13 +70641,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getName(struct PyPetscObjec
* def setName(self, name):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 95, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 102, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":92
+ /* "PETSc/Object.pyx":99
* return comm
*
* def getName(self): # <<<<<<<<<<<<<<
@@ -65280,7 +70666,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getName(struct PyPetscObjec
return __pyx_r;
}
-/* "PETSc/Object.pyx":97
+/* "PETSc/Object.pyx":104
* return bytes2str(cval)
*
* def setName(self, name): # <<<<<<<<<<<<<<
@@ -65289,9 +70675,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_26getName(struct PyPetscObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_29setName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_28setName[] = "Object.setName(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_29setName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_31setName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_30setName[] = "Object.setName(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_31setName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -65304,6 +70690,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_29setName(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -65314,7 +70701,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_29setName(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setName") < 0)) __PYX_ERR(10, 97, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setName") < 0)) __PYX_ERR(10, 104, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -65325,20 +70712,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_29setName(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setName", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 97, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setName", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 104, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Object.setName", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_28setName(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_30setName(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28setName(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30setName(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -65347,7 +70734,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28setName(struct PyPetscObjec
__Pyx_RefNannySetupContext("setName", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Object.pyx":98
+ /* "PETSc/Object.pyx":105
*
* def setName(self, name):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -65356,28 +70743,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28setName(struct PyPetscObjec
*/
__pyx_v_cval = NULL;
- /* "PETSc/Object.pyx":99
+ /* "PETSc/Object.pyx":106
* def setName(self, name):
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectSetName(self.obj[0], cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 99, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 106, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":100
+ /* "PETSc/Object.pyx":107
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval)
* CHKERR( PetscObjectSetName(self.obj[0], cval) ) # <<<<<<<<<<<<<<
*
* def getClassId(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetName((__pyx_v_self->obj[0]), __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 100, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetName((__pyx_v_self->obj[0]), __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 107, __pyx_L1_error)
- /* "PETSc/Object.pyx":97
+ /* "PETSc/Object.pyx":104
* return bytes2str(cval)
*
* def setName(self, name): # <<<<<<<<<<<<<<
@@ -65399,7 +70786,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28setName(struct PyPetscObjec
return __pyx_r;
}
-/* "PETSc/Object.pyx":102
+/* "PETSc/Object.pyx":109
* CHKERR( PetscObjectSetName(self.obj[0], cval) )
*
* def getClassId(self): # <<<<<<<<<<<<<<
@@ -65408,23 +70795,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_28setName(struct PyPetscObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_31getClassId(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_30getClassId[] = "Object.getClassId(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_31getClassId(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_33getClassId(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_32getClassId[] = "Object.getClassId(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_33getClassId(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getClassId (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getClassId", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getClassId", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_32getClassId(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassId(struct PyPetscObjectObject *__pyx_v_self) {
PetscClassId __pyx_v_classid;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -65432,7 +70819,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(struct PyPetscOb
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getClassId", 0);
- /* "PETSc/Object.pyx":103
+ /* "PETSc/Object.pyx":110
*
* def getClassId(self):
* cdef PetscClassId classid = 0 # <<<<<<<<<<<<<<
@@ -65441,16 +70828,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(struct PyPetscOb
*/
__pyx_v_classid = 0;
- /* "PETSc/Object.pyx":104
+ /* "PETSc/Object.pyx":111
* def getClassId(self):
* cdef PetscClassId classid = 0
* CHKERR( PetscObjectGetClassId(self.obj[0], &classid) ) # <<<<<<<<<<<<<<
* return <long>classid
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetClassId((__pyx_v_self->obj[0]), (&__pyx_v_classid))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 104, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetClassId((__pyx_v_self->obj[0]), (&__pyx_v_classid))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 111, __pyx_L1_error)
- /* "PETSc/Object.pyx":105
+ /* "PETSc/Object.pyx":112
* cdef PetscClassId classid = 0
* CHKERR( PetscObjectGetClassId(self.obj[0], &classid) )
* return <long>classid # <<<<<<<<<<<<<<
@@ -65458,13 +70845,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(struct PyPetscOb
* def getClassName(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_long(((long)__pyx_v_classid)); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 105, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_long(((long)__pyx_v_classid)); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 112, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":102
+ /* "PETSc/Object.pyx":109
* CHKERR( PetscObjectSetName(self.obj[0], cval) )
*
* def getClassId(self): # <<<<<<<<<<<<<<
@@ -65483,7 +70870,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(struct PyPetscOb
return __pyx_r;
}
-/* "PETSc/Object.pyx":107
+/* "PETSc/Object.pyx":114
* return <long>classid
*
* def getClassName(self): # <<<<<<<<<<<<<<
@@ -65492,23 +70879,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_30getClassId(struct PyPetscOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_33getClassName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_32getClassName[] = "Object.getClassName(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_33getClassName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_35getClassName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_34getClassName[] = "Object.getClassName(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_35getClassName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getClassName (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getClassName", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getClassName", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_34getClassName(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getClassName(struct PyPetscObjectObject *__pyx_v_self) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -65516,7 +70903,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getClassName", 0);
- /* "PETSc/Object.pyx":108
+ /* "PETSc/Object.pyx":115
*
* def getClassName(self):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -65525,16 +70912,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(struct PyPetsc
*/
__pyx_v_cval = NULL;
- /* "PETSc/Object.pyx":109
+ /* "PETSc/Object.pyx":116
* def getClassName(self):
* cdef const_char *cval = NULL
* CHKERR( PetscObjectGetClassName(self.obj[0], &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetClassName((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 109, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetClassName((__pyx_v_self->obj[0]), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 116, __pyx_L1_error)
- /* "PETSc/Object.pyx":110
+ /* "PETSc/Object.pyx":117
* cdef const_char *cval = NULL
* CHKERR( PetscObjectGetClassName(self.obj[0], &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -65542,13 +70929,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(struct PyPetsc
* def getRefCount(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 110, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 117, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":107
+ /* "PETSc/Object.pyx":114
* return <long>classid
*
* def getClassName(self): # <<<<<<<<<<<<<<
@@ -65567,7 +70954,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Object.pyx":112
+/* "PETSc/Object.pyx":119
* return bytes2str(cval)
*
* def getRefCount(self): # <<<<<<<<<<<<<<
@@ -65576,23 +70963,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_32getClassName(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_35getRefCount(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_34getRefCount[] = "Object.getRefCount(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_35getRefCount(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37getRefCount(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_36getRefCount[] = "Object.getRefCount(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37getRefCount(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getRefCount (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getRefCount", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRefCount", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_36getRefCount(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36getRefCount(struct PyPetscObjectObject *__pyx_v_self) {
PetscInt __pyx_v_refcnt;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -65601,7 +70988,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(struct PyPetscO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getRefCount", 0);
- /* "PETSc/Object.pyx":113
+ /* "PETSc/Object.pyx":120
*
* def getRefCount(self):
* if self.obj[0] == NULL: return 0 # <<<<<<<<<<<<<<
@@ -65616,7 +71003,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(struct PyPetscO
goto __pyx_L0;
}
- /* "PETSc/Object.pyx":114
+ /* "PETSc/Object.pyx":121
* def getRefCount(self):
* if self.obj[0] == NULL: return 0
* cdef PetscInt refcnt = 0 # <<<<<<<<<<<<<<
@@ -65625,16 +71012,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(struct PyPetscO
*/
__pyx_v_refcnt = 0;
- /* "PETSc/Object.pyx":115
+ /* "PETSc/Object.pyx":122
* if self.obj[0] == NULL: return 0
* cdef PetscInt refcnt = 0
* CHKERR( PetscObjectGetReference(self.obj[0], &refcnt) ) # <<<<<<<<<<<<<<
* return toInt(refcnt)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetReference((__pyx_v_self->obj[0]), (&__pyx_v_refcnt))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 115, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetReference((__pyx_v_self->obj[0]), (&__pyx_v_refcnt))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 122, __pyx_L1_error)
- /* "PETSc/Object.pyx":116
+ /* "PETSc/Object.pyx":123
* cdef PetscInt refcnt = 0
* CHKERR( PetscObjectGetReference(self.obj[0], &refcnt) )
* return toInt(refcnt) # <<<<<<<<<<<<<<
@@ -65642,13 +71029,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(struct PyPetscO
* # --- general support ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_refcnt); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 116, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_refcnt); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 123, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":112
+ /* "PETSc/Object.pyx":119
* return bytes2str(cval)
*
* def getRefCount(self): # <<<<<<<<<<<<<<
@@ -65667,18 +71054,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_34getRefCount(struct PyPetscO
return __pyx_r;
}
-/* "PETSc/Object.pyx":120
+/* "PETSc/Object.pyx":127
* # --- general support ---
*
- * def compose(self, name, Object obj): # <<<<<<<<<<<<<<
+ * def compose(self, name, Object obj or None): # <<<<<<<<<<<<<<
* cdef const_char *cval = NULL
* cdef PetscObject cobj = NULL
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37compose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_36compose[] = "Object.compose(self, name, Object obj)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37compose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_39compose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_38compose[] = "Object.compose(self, name, Object obj)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_39compose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
struct PyPetscObjectObject *__pyx_v_obj = 0;
PyObject *__pyx_r = 0;
@@ -65692,7 +71079,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37compose(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -65701,14 +71090,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37compose(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_obj)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("compose", 1, 2, 2, 1); __PYX_ERR(10, 120, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("compose", 1, 2, 2, 1); __PYX_ERR(10, 127, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "compose") < 0)) __PYX_ERR(10, 120, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "compose") < 0)) __PYX_ERR(10, 127, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -65721,14 +71111,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37compose(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("compose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 120, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("compose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 127, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Object.compose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_obj), __pyx_ptype_8petsc4py_5PETSc_Object, 1, "obj", 0))) __PYX_ERR(10, 120, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_36compose(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name, __pyx_v_obj);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_obj), __pyx_ptype_8petsc4py_5PETSc_Object, 1, "obj", 0))) __PYX_ERR(10, 127, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_38compose(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name, __pyx_v_obj);
/* function exit code */
goto __pyx_L0;
@@ -65739,7 +71129,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_37compose(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36compose(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, struct PyPetscObjectObject *__pyx_v_obj) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38compose(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, struct PyPetscObjectObject *__pyx_v_obj) {
const char *__pyx_v_cval;
PetscObject __pyx_v_cobj;
PyObject *__pyx_r = NULL;
@@ -65751,17 +71141,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36compose(struct PyPetscObjec
__Pyx_RefNannySetupContext("compose", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Object.pyx":121
+ /* "PETSc/Object.pyx":128
*
- * def compose(self, name, Object obj):
+ * def compose(self, name, Object obj or None):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
* cdef PetscObject cobj = NULL
* name = str2bytes(name, &cval)
*/
__pyx_v_cval = NULL;
- /* "PETSc/Object.pyx":122
- * def compose(self, name, Object obj):
+ /* "PETSc/Object.pyx":129
+ * def compose(self, name, Object obj or None):
* cdef const_char *cval = NULL
* cdef PetscObject cobj = NULL # <<<<<<<<<<<<<<
* name = str2bytes(name, &cval)
@@ -65769,19 +71159,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36compose(struct PyPetscObjec
*/
__pyx_v_cobj = NULL;
- /* "PETSc/Object.pyx":123
+ /* "PETSc/Object.pyx":130
* cdef const_char *cval = NULL
* cdef PetscObject cobj = NULL
* name = str2bytes(name, &cval) # <<<<<<<<<<<<<<
* if obj is not None: cobj = obj.obj[0]
* CHKERR( PetscObjectCompose(self.obj[0], cval, cobj) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 123, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":124
+ /* "PETSc/Object.pyx":131
* cdef PetscObject cobj = NULL
* name = str2bytes(name, &cval)
* if obj is not None: cobj = obj.obj[0] # <<<<<<<<<<<<<<
@@ -65794,19 +71184,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36compose(struct PyPetscObjec
__pyx_v_cobj = (__pyx_v_obj->obj[0]);
}
- /* "PETSc/Object.pyx":125
+ /* "PETSc/Object.pyx":132
* name = str2bytes(name, &cval)
* if obj is not None: cobj = obj.obj[0]
* CHKERR( PetscObjectCompose(self.obj[0], cval, cobj) ) # <<<<<<<<<<<<<<
*
* def query(self, name):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectCompose((__pyx_v_self->obj[0]), __pyx_v_cval, __pyx_v_cobj)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(10, 125, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectCompose((__pyx_v_self->obj[0]), __pyx_v_cval, __pyx_v_cobj)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(10, 132, __pyx_L1_error)
- /* "PETSc/Object.pyx":120
+ /* "PETSc/Object.pyx":127
* # --- general support ---
*
- * def compose(self, name, Object obj): # <<<<<<<<<<<<<<
+ * def compose(self, name, Object obj or None): # <<<<<<<<<<<<<<
* cdef const_char *cval = NULL
* cdef PetscObject cobj = NULL
*/
@@ -65825,7 +71215,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36compose(struct PyPetscObjec
return __pyx_r;
}
-/* "PETSc/Object.pyx":127
+/* "PETSc/Object.pyx":134
* CHKERR( PetscObjectCompose(self.obj[0], cval, cobj) )
*
* def query(self, name): # <<<<<<<<<<<<<<
@@ -65834,9 +71224,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_36compose(struct PyPetscObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_39query(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_38query[] = "Object.query(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_39query(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_41query(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_40query[] = "Object.query(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_41query(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -65849,6 +71239,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_39query(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -65859,7 +71250,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_39query(PyObject *__pyx_v_sel
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "query") < 0)) __PYX_ERR(10, 127, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "query") < 0)) __PYX_ERR(10, 134, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -65870,20 +71261,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_39query(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("query", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 127, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("query", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 134, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Object.query", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_38query(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_40query(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40query(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cval;
PetscObject __pyx_v_cobj;
struct PyPetscObjectObject *__pyx_v_obj = 0;
@@ -65896,7 +71287,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
__Pyx_RefNannySetupContext("query", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Object.pyx":128
+ /* "PETSc/Object.pyx":135
*
* def query(self, name):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -65905,7 +71296,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
*/
__pyx_v_cval = NULL;
- /* "PETSc/Object.pyx":129
+ /* "PETSc/Object.pyx":136
* def query(self, name):
* cdef const_char *cval = NULL
* cdef PetscObject cobj = NULL # <<<<<<<<<<<<<<
@@ -65914,28 +71305,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
*/
__pyx_v_cobj = NULL;
- /* "PETSc/Object.pyx":130
+ /* "PETSc/Object.pyx":137
* cdef const_char *cval = NULL
* cdef PetscObject cobj = NULL
* name = str2bytes(name, &cval) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectQuery(self.obj[0], cval, &cobj) )
* if cobj == NULL: return None
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 130, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 137, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":131
+ /* "PETSc/Object.pyx":138
* cdef PetscObject cobj = NULL
* name = str2bytes(name, &cval)
* CHKERR( PetscObjectQuery(self.obj[0], cval, &cobj) ) # <<<<<<<<<<<<<<
* if cobj == NULL: return None
* cdef Object obj = subtype_Object(cobj)()
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectQuery((__pyx_v_self->obj[0]), __pyx_v_cval, (&__pyx_v_cobj))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 131, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectQuery((__pyx_v_self->obj[0]), __pyx_v_cval, (&__pyx_v_cobj))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 138, __pyx_L1_error)
- /* "PETSc/Object.pyx":132
+ /* "PETSc/Object.pyx":139
* name = str2bytes(name, &cval)
* CHKERR( PetscObjectQuery(self.obj[0], cval, &cobj) )
* if cobj == NULL: return None # <<<<<<<<<<<<<<
@@ -65950,23 +71341,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
goto __pyx_L0;
}
- /* "PETSc/Object.pyx":133
+ /* "PETSc/Object.pyx":140
* CHKERR( PetscObjectQuery(self.obj[0], cval, &cobj) )
* if cobj == NULL: return None
* cdef Object obj = subtype_Object(cobj)() # <<<<<<<<<<<<<<
* obj.obj[0] = cobj
* PetscINCREF(obj.obj)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_Object(__pyx_v_cobj)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 133, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_Object(__pyx_v_cobj)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 140, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 133, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 140, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_Object))))) __PYX_ERR(10, 133, __pyx_L1_error)
+ if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_Object))))) __PYX_ERR(10, 140, __pyx_L1_error)
__pyx_v_obj = ((struct PyPetscObjectObject *)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/Object.pyx":134
+ /* "PETSc/Object.pyx":141
* if cobj == NULL: return None
* cdef Object obj = subtype_Object(cobj)()
* obj.obj[0] = cobj # <<<<<<<<<<<<<<
@@ -65975,7 +71366,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
*/
(__pyx_v_obj->obj[0]) = __pyx_v_cobj;
- /* "PETSc/Object.pyx":135
+ /* "PETSc/Object.pyx":142
* cdef Object obj = subtype_Object(cobj)()
* obj.obj[0] = cobj
* PetscINCREF(obj.obj) # <<<<<<<<<<<<<<
@@ -65984,7 +71375,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_obj->obj);
- /* "PETSc/Object.pyx":136
+ /* "PETSc/Object.pyx":143
* obj.obj[0] = cobj
* PetscINCREF(obj.obj)
* return obj # <<<<<<<<<<<<<<
@@ -65996,7 +71387,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
__pyx_r = ((PyObject *)__pyx_v_obj);
goto __pyx_L0;
- /* "PETSc/Object.pyx":127
+ /* "PETSc/Object.pyx":134
* CHKERR( PetscObjectCompose(self.obj[0], cval, cobj) )
*
* def query(self, name): # <<<<<<<<<<<<<<
@@ -66018,7 +71409,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
return __pyx_r;
}
-/* "PETSc/Object.pyx":138
+/* "PETSc/Object.pyx":145
* return obj
*
* def incRef(self): # <<<<<<<<<<<<<<
@@ -66027,23 +71418,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_38query(struct PyPetscObjectO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_41incRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_40incRef[] = "Object.incRef(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_41incRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_43incRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_42incRef[] = "Object.incRef(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_43incRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("incRef (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("incRef", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "incRef", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_40incRef(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_42incRef(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42incRef(struct PyPetscObjectObject *__pyx_v_self) {
PetscObject __pyx_v_obj;
PetscInt __pyx_v_refct;
PyObject *__pyx_r = NULL;
@@ -66053,7 +71444,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("incRef", 0);
- /* "PETSc/Object.pyx":139
+ /* "PETSc/Object.pyx":146
*
* def incRef(self):
* cdef PetscObject obj = self.obj[0] # <<<<<<<<<<<<<<
@@ -66062,7 +71453,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
*/
__pyx_v_obj = (__pyx_v_self->obj[0]);
- /* "PETSc/Object.pyx":140
+ /* "PETSc/Object.pyx":147
* def incRef(self):
* cdef PetscObject obj = self.obj[0]
* cdef PetscInt refct = 0 # <<<<<<<<<<<<<<
@@ -66071,7 +71462,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
*/
__pyx_v_refct = 0;
- /* "PETSc/Object.pyx":141
+ /* "PETSc/Object.pyx":148
* cdef PetscObject obj = self.obj[0]
* cdef PetscInt refct = 0
* if obj != NULL: # <<<<<<<<<<<<<<
@@ -66081,25 +71472,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
__pyx_t_1 = ((__pyx_v_obj != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/Object.pyx":142
+ /* "PETSc/Object.pyx":149
* cdef PetscInt refct = 0
* if obj != NULL:
* CHKERR( PetscObjectReference(obj) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectGetReference(obj, &refct) )
* return (<long>refct)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectReference(__pyx_v_obj)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 142, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectReference(__pyx_v_obj)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 149, __pyx_L1_error)
- /* "PETSc/Object.pyx":143
+ /* "PETSc/Object.pyx":150
* if obj != NULL:
* CHKERR( PetscObjectReference(obj) )
* CHKERR( PetscObjectGetReference(obj, &refct) ) # <<<<<<<<<<<<<<
* return (<long>refct)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetReference(__pyx_v_obj, (&__pyx_v_refct))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 143, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetReference(__pyx_v_obj, (&__pyx_v_refct))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 150, __pyx_L1_error)
- /* "PETSc/Object.pyx":141
+ /* "PETSc/Object.pyx":148
* cdef PetscObject obj = self.obj[0]
* cdef PetscInt refct = 0
* if obj != NULL: # <<<<<<<<<<<<<<
@@ -66108,7 +71499,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
*/
}
- /* "PETSc/Object.pyx":144
+ /* "PETSc/Object.pyx":151
* CHKERR( PetscObjectReference(obj) )
* CHKERR( PetscObjectGetReference(obj, &refct) )
* return (<long>refct) # <<<<<<<<<<<<<<
@@ -66116,13 +71507,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
* def decRef(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyInt_From_long(((long)__pyx_v_refct)); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 144, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyInt_From_long(((long)__pyx_v_refct)); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 151, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":138
+ /* "PETSc/Object.pyx":145
* return obj
*
* def incRef(self): # <<<<<<<<<<<<<<
@@ -66141,7 +71532,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
return __pyx_r;
}
-/* "PETSc/Object.pyx":146
+/* "PETSc/Object.pyx":153
* return (<long>refct)
*
* def decRef(self): # <<<<<<<<<<<<<<
@@ -66150,23 +71541,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_40incRef(struct PyPetscObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_43decRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_42decRef[] = "Object.decRef(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_43decRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_45decRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_44decRef[] = "Object.decRef(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_45decRef(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("decRef (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("decRef", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "decRef", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_42decRef(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_44decRef(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44decRef(struct PyPetscObjectObject *__pyx_v_self) {
PetscObject __pyx_v_obj;
PetscInt __pyx_v_refct;
PyObject *__pyx_r = NULL;
@@ -66176,7 +71567,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("decRef", 0);
- /* "PETSc/Object.pyx":147
+ /* "PETSc/Object.pyx":154
*
* def decRef(self):
* cdef PetscObject obj = self.obj[0] # <<<<<<<<<<<<<<
@@ -66185,7 +71576,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
*/
__pyx_v_obj = (__pyx_v_self->obj[0]);
- /* "PETSc/Object.pyx":148
+ /* "PETSc/Object.pyx":155
* def decRef(self):
* cdef PetscObject obj = self.obj[0]
* cdef PetscInt refct = 0 # <<<<<<<<<<<<<<
@@ -66194,7 +71585,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
*/
__pyx_v_refct = 0;
- /* "PETSc/Object.pyx":149
+ /* "PETSc/Object.pyx":156
* cdef PetscObject obj = self.obj[0]
* cdef PetscInt refct = 0
* if obj != NULL: # <<<<<<<<<<<<<<
@@ -66204,25 +71595,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
__pyx_t_1 = ((__pyx_v_obj != NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/Object.pyx":150
+ /* "PETSc/Object.pyx":157
* cdef PetscInt refct = 0
* if obj != NULL:
* CHKERR( PetscObjectGetReference(obj, &refct) ) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectDereference(obj) )
* if refct == 1: self.obj[0] = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetReference(__pyx_v_obj, (&__pyx_v_refct))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 150, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetReference(__pyx_v_obj, (&__pyx_v_refct))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 157, __pyx_L1_error)
- /* "PETSc/Object.pyx":151
+ /* "PETSc/Object.pyx":158
* if obj != NULL:
* CHKERR( PetscObjectGetReference(obj, &refct) )
* CHKERR( PetscObjectDereference(obj) ) # <<<<<<<<<<<<<<
* if refct == 1: self.obj[0] = NULL
* refct -= 1
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectDereference(__pyx_v_obj)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 151, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectDereference(__pyx_v_obj)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 158, __pyx_L1_error)
- /* "PETSc/Object.pyx":152
+ /* "PETSc/Object.pyx":159
* CHKERR( PetscObjectGetReference(obj, &refct) )
* CHKERR( PetscObjectDereference(obj) )
* if refct == 1: self.obj[0] = NULL # <<<<<<<<<<<<<<
@@ -66234,7 +71625,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
(__pyx_v_self->obj[0]) = NULL;
}
- /* "PETSc/Object.pyx":153
+ /* "PETSc/Object.pyx":160
* CHKERR( PetscObjectDereference(obj) )
* if refct == 1: self.obj[0] = NULL
* refct -= 1 # <<<<<<<<<<<<<<
@@ -66243,7 +71634,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
*/
__pyx_v_refct = (__pyx_v_refct - 1);
- /* "PETSc/Object.pyx":149
+ /* "PETSc/Object.pyx":156
* cdef PetscObject obj = self.obj[0]
* cdef PetscInt refct = 0
* if obj != NULL: # <<<<<<<<<<<<<<
@@ -66252,7 +71643,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
*/
}
- /* "PETSc/Object.pyx":154
+ /* "PETSc/Object.pyx":161
* if refct == 1: self.obj[0] = NULL
* refct -= 1
* return (<long>refct) # <<<<<<<<<<<<<<
@@ -66260,13 +71651,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
* def getAttr(self, name):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyInt_From_long(((long)__pyx_v_refct)); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 154, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyInt_From_long(((long)__pyx_v_refct)); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 161, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":146
+ /* "PETSc/Object.pyx":153
* return (<long>refct)
*
* def decRef(self): # <<<<<<<<<<<<<<
@@ -66285,7 +71676,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
return __pyx_r;
}
-/* "PETSc/Object.pyx":156
+/* "PETSc/Object.pyx":163
* return (<long>refct)
*
* def getAttr(self, name): # <<<<<<<<<<<<<<
@@ -66294,9 +71685,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_42decRef(struct PyPetscObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_45getAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_44getAttr[] = "Object.getAttr(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_45getAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_47getAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_46getAttr[] = "Object.getAttr(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_47getAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -66309,6 +71700,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_45getAttr(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -66319,7 +71711,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_45getAttr(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getAttr") < 0)) __PYX_ERR(10, 156, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getAttr") < 0)) __PYX_ERR(10, 163, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -66330,20 +71722,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_45getAttr(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getAttr", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 156, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getAttr", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 163, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Object.getAttr", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_46getAttr(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46getAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -66351,7 +71743,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(struct PyPetscObjec
__Pyx_RefNannySetupContext("getAttr", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Object.pyx":157
+ /* "PETSc/Object.pyx":164
*
* def getAttr(self, name):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -66360,19 +71752,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(struct PyPetscObjec
*/
__pyx_v_cval = NULL;
- /* "PETSc/Object.pyx":158
+ /* "PETSc/Object.pyx":165
* def getAttr(self, name):
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval) # <<<<<<<<<<<<<<
* return self.get_attr(<char*>cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 158, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 165, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":159
+ /* "PETSc/Object.pyx":166
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval)
* return self.get_attr(<char*>cval) # <<<<<<<<<<<<<<
@@ -66380,13 +71772,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(struct PyPetscObjec
* def setAttr(self, name, attr):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *)__pyx_v_self->__pyx_vtab)->get_attr(__pyx_v_self, ((char *)__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 159, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *)__pyx_v_self->__pyx_vtab)->get_attr(__pyx_v_self, ((char *)__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 166, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":156
+ /* "PETSc/Object.pyx":163
* return (<long>refct)
*
* def getAttr(self, name): # <<<<<<<<<<<<<<
@@ -66406,7 +71798,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(struct PyPetscObjec
return __pyx_r;
}
-/* "PETSc/Object.pyx":161
+/* "PETSc/Object.pyx":168
* return self.get_attr(<char*>cval)
*
* def setAttr(self, name, attr): # <<<<<<<<<<<<<<
@@ -66415,9 +71807,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_44getAttr(struct PyPetscObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_47setAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_46setAttr[] = "Object.setAttr(self, name, attr)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_47setAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_49setAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_48setAttr[] = "Object.setAttr(self, name, attr)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_49setAttr(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_attr = 0;
PyObject *__pyx_r = 0;
@@ -66431,7 +71823,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_47setAttr(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -66440,14 +71834,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_47setAttr(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_attr)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setAttr", 1, 2, 2, 1); __PYX_ERR(10, 161, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAttr", 1, 2, 2, 1); __PYX_ERR(10, 168, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAttr") < 0)) __PYX_ERR(10, 161, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAttr") < 0)) __PYX_ERR(10, 168, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -66460,20 +71855,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_47setAttr(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setAttr", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 161, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAttr", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 168, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Object.setAttr", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_46setAttr(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name, __pyx_v_attr);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_48setAttr(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_name, __pyx_v_attr);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46setAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_attr) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_48setAttr(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_attr) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -66481,7 +71876,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46setAttr(struct PyPetscObjec
__Pyx_RefNannySetupContext("setAttr", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Object.pyx":162
+ /* "PETSc/Object.pyx":169
*
* def setAttr(self, name, attr):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -66490,30 +71885,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46setAttr(struct PyPetscObjec
*/
__pyx_v_cval = NULL;
- /* "PETSc/Object.pyx":163
+ /* "PETSc/Object.pyx":170
* def setAttr(self, name, attr):
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval) # <<<<<<<<<<<<<<
* self.set_attr(<char*>cval, attr)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 163, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 170, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":164
+ /* "PETSc/Object.pyx":171
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval)
* self.set_attr(<char*>cval, attr) # <<<<<<<<<<<<<<
*
* def getDict(self):
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *)__pyx_v_self->__pyx_vtab)->set_attr(__pyx_v_self, ((char *)__pyx_v_cval), __pyx_v_attr); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 164, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *)__pyx_v_self->__pyx_vtab)->set_attr(__pyx_v_self, ((char *)__pyx_v_cval), __pyx_v_attr); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 171, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":161
+ /* "PETSc/Object.pyx":168
* return self.get_attr(<char*>cval)
*
* def setAttr(self, name, attr): # <<<<<<<<<<<<<<
@@ -66535,7 +71930,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46setAttr(struct PyPetscObjec
return __pyx_r;
}
-/* "PETSc/Object.pyx":166
+/* "PETSc/Object.pyx":173
* self.set_attr(<char*>cval, attr)
*
* def getDict(self): # <<<<<<<<<<<<<<
@@ -66544,29 +71939,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_46setAttr(struct PyPetscObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_49getDict(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_48getDict[] = "Object.getDict(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_49getDict(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_51getDict(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_50getDict[] = "Object.getDict(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_51getDict(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDict (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDict", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDict", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_48getDict(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_50getDict(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_48getDict(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_50getDict(struct PyPetscObjectObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getDict", 0);
- /* "PETSc/Object.pyx":167
+ /* "PETSc/Object.pyx":174
*
* def getDict(self):
* return self.get_dict() # <<<<<<<<<<<<<<
@@ -66574,13 +71969,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_48getDict(struct PyPetscObjec
* def stateIncrease(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *)__pyx_v_self->__pyx_vtab)->get_dict(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 167, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *)__pyx_v_self->__pyx_vtab)->get_dict(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 174, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":166
+ /* "PETSc/Object.pyx":173
* self.set_attr(<char*>cval, attr)
*
* def getDict(self): # <<<<<<<<<<<<<<
@@ -66599,7 +71994,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_48getDict(struct PyPetscObjec
return __pyx_r;
}
-/* "PETSc/Object.pyx":169
+/* "PETSc/Object.pyx":176
* return self.get_dict()
*
* def stateIncrease(self): # <<<<<<<<<<<<<<
@@ -66608,28 +72003,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_48getDict(struct PyPetscObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_51stateIncrease(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_50stateIncrease[] = "Object.stateIncrease(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_51stateIncrease(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53stateIncrease(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_52stateIncrease[] = "Object.stateIncrease(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53stateIncrease(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("stateIncrease (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("stateIncrease", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "stateIncrease", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_50stateIncrease(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_52stateIncrease(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_50stateIncrease(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52stateIncrease(struct PyPetscObjectObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("stateIncrease", 0);
- /* "PETSc/Object.pyx":170
+ /* "PETSc/Object.pyx":177
*
* def stateIncrease(self):
* PetscINCSTATE(self.obj) # <<<<<<<<<<<<<<
@@ -66638,7 +72033,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_50stateIncrease(struct PyPets
*/
__pyx_f_8petsc4py_5PETSc_PetscINCSTATE(__pyx_v_self->obj);
- /* "PETSc/Object.pyx":169
+ /* "PETSc/Object.pyx":176
* return self.get_dict()
*
* def stateIncrease(self): # <<<<<<<<<<<<<<
@@ -66653,7 +72048,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_50stateIncrease(struct PyPets
return __pyx_r;
}
-/* "PETSc/Object.pyx":174
+/* "PETSc/Object.pyx":181
* # --- tab level ---
*
* def incrementTabLevel(self, tab, Object parent=None): # <<<<<<<<<<<<<<
@@ -66662,9 +72057,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_50stateIncrease(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_52incrementTabLevel[] = "Object.incrementTabLevel(self, tab, Object parent=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_55incrementTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_54incrementTabLevel[] = "Object.incrementTabLevel(self, tab, Object parent=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_55incrementTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_tab = 0;
struct PyPetscObjectObject *__pyx_v_parent = 0;
PyObject *__pyx_r = 0;
@@ -66679,7 +72074,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -66688,6 +72085,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tab)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_parent);
@@ -66695,11 +72093,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel(PyObject
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "incrementTabLevel") < 0)) __PYX_ERR(10, 174, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "incrementTabLevel") < 0)) __PYX_ERR(10, 181, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -66710,14 +72109,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("incrementTabLevel", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 174, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("incrementTabLevel", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 181, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Object.incrementTabLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_parent), __pyx_ptype_8petsc4py_5PETSc_Object, 1, "parent", 0))) __PYX_ERR(10, 174, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_52incrementTabLevel(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_tab, __pyx_v_parent);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_parent), __pyx_ptype_8petsc4py_5PETSc_Object, 1, "parent", 0))) __PYX_ERR(10, 181, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_54incrementTabLevel(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_tab, __pyx_v_parent);
/* function exit code */
goto __pyx_L0;
@@ -66728,7 +72127,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel(PyObject
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52incrementTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_tab, struct PyPetscObjectObject *__pyx_v_parent) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_54incrementTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_tab, struct PyPetscObjectObject *__pyx_v_parent) {
PetscInt __pyx_v_ctab;
PetscObject __pyx_v_cobj;
PyObject *__pyx_r = NULL;
@@ -66739,17 +72138,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52incrementTabLevel(struct Py
int __pyx_t_4;
__Pyx_RefNannySetupContext("incrementTabLevel", 0);
- /* "PETSc/Object.pyx":175
+ /* "PETSc/Object.pyx":182
*
* def incrementTabLevel(self, tab, Object parent=None):
* cdef PetscInt ctab = asInt(tab) # <<<<<<<<<<<<<<
* cdef PetscObject cobj = <PetscObject> NULL if parent is None else parent.obj[0]
* CHKERR( PetscObjectIncrementTabLevel(self.obj[0], cobj, ctab) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_tab); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(10, 175, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_tab); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(10, 182, __pyx_L1_error)
__pyx_v_ctab = __pyx_t_1;
- /* "PETSc/Object.pyx":176
+ /* "PETSc/Object.pyx":183
* def incrementTabLevel(self, tab, Object parent=None):
* cdef PetscInt ctab = asInt(tab)
* cdef PetscObject cobj = <PetscObject> NULL if parent is None else parent.obj[0] # <<<<<<<<<<<<<<
@@ -66764,16 +72163,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52incrementTabLevel(struct Py
}
__pyx_v_cobj = __pyx_t_2;
- /* "PETSc/Object.pyx":177
+ /* "PETSc/Object.pyx":184
* cdef PetscInt ctab = asInt(tab)
* cdef PetscObject cobj = <PetscObject> NULL if parent is None else parent.obj[0]
* CHKERR( PetscObjectIncrementTabLevel(self.obj[0], cobj, ctab) ) # <<<<<<<<<<<<<<
*
* def setTabLevel(self, level):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectIncrementTabLevel((__pyx_v_self->obj[0]), __pyx_v_cobj, __pyx_v_ctab)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(10, 177, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectIncrementTabLevel((__pyx_v_self->obj[0]), __pyx_v_cobj, __pyx_v_ctab)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(10, 184, __pyx_L1_error)
- /* "PETSc/Object.pyx":174
+ /* "PETSc/Object.pyx":181
* # --- tab level ---
*
* def incrementTabLevel(self, tab, Object parent=None): # <<<<<<<<<<<<<<
@@ -66793,7 +72192,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52incrementTabLevel(struct Py
return __pyx_r;
}
-/* "PETSc/Object.pyx":179
+/* "PETSc/Object.pyx":186
* CHKERR( PetscObjectIncrementTabLevel(self.obj[0], cobj, ctab) )
*
* def setTabLevel(self, level): # <<<<<<<<<<<<<<
@@ -66802,9 +72201,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_52incrementTabLevel(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_55setTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_54setTabLevel[] = "Object.setTabLevel(self, level)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_55setTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_57setTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_56setTabLevel[] = "Object.setTabLevel(self, level)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_57setTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_level = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -66817,6 +72216,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_55setTabLevel(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -66827,7 +72227,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_55setTabLevel(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTabLevel") < 0)) __PYX_ERR(10, 179, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTabLevel") < 0)) __PYX_ERR(10, 186, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -66838,20 +72238,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_55setTabLevel(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTabLevel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 179, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTabLevel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(10, 186, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Object.setTabLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_54setTabLevel(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_level);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_56setTabLevel(((struct PyPetscObjectObject *)__pyx_v_self), __pyx_v_level);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_54setTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_level) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56setTabLevel(struct PyPetscObjectObject *__pyx_v_self, PyObject *__pyx_v_level) {
PetscInt __pyx_v_clevel;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -66859,26 +72259,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_54setTabLevel(struct PyPetscO
int __pyx_t_2;
__Pyx_RefNannySetupContext("setTabLevel", 0);
- /* "PETSc/Object.pyx":180
+ /* "PETSc/Object.pyx":187
*
* def setTabLevel(self, level):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( PetscObjectSetTabLevel(self.obj[0], clevel) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(10, 180, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(10, 187, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/Object.pyx":181
+ /* "PETSc/Object.pyx":188
* def setTabLevel(self, level):
* cdef PetscInt clevel = asInt(level)
* CHKERR( PetscObjectSetTabLevel(self.obj[0], clevel) ) # <<<<<<<<<<<<<<
*
* def getTabLevel(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetTabLevel((__pyx_v_self->obj[0]), __pyx_v_clevel)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(10, 181, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectSetTabLevel((__pyx_v_self->obj[0]), __pyx_v_clevel)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(10, 188, __pyx_L1_error)
- /* "PETSc/Object.pyx":179
+ /* "PETSc/Object.pyx":186
* CHKERR( PetscObjectIncrementTabLevel(self.obj[0], cobj, ctab) )
*
* def setTabLevel(self, level): # <<<<<<<<<<<<<<
@@ -66898,7 +72298,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_54setTabLevel(struct PyPetscO
return __pyx_r;
}
-/* "PETSc/Object.pyx":183
+/* "PETSc/Object.pyx":190
* CHKERR( PetscObjectSetTabLevel(self.obj[0], clevel) )
*
* def getTabLevel(self): # <<<<<<<<<<<<<<
@@ -66907,23 +72307,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_54setTabLevel(struct PyPetscO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_57getTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Object_56getTabLevel[] = "Object.getTabLevel(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_57getTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_59getTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Object_58getTabLevel[] = "Object.getTabLevel(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Object_59getTabLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getTabLevel (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getTabLevel", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTabLevel", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_56getTabLevel(((struct PyPetscObjectObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Object_58getTabLevel(((struct PyPetscObjectObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56getTabLevel(struct PyPetscObjectObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_58getTabLevel(struct PyPetscObjectObject *__pyx_v_self) {
PetscInt __pyx_v_clevel;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -66931,7 +72331,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56getTabLevel(struct PyPetscO
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getTabLevel", 0);
- /* "PETSc/Object.pyx":184
+ /* "PETSc/Object.pyx":191
*
* def getTabLevel(self):
* cdef PetscInt clevel = 0 # <<<<<<<<<<<<<<
@@ -66940,16 +72340,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56getTabLevel(struct PyPetscO
*/
__pyx_v_clevel = 0;
- /* "PETSc/Object.pyx":185
+ /* "PETSc/Object.pyx":192
* def getTabLevel(self):
* cdef PetscInt clevel = 0
* CHKERR( PetscObjectGetTabLevel(self.obj[0], &clevel) ) # <<<<<<<<<<<<<<
* return toInt(clevel)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetTabLevel((__pyx_v_self->obj[0]), (&__pyx_v_clevel))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(10, 185, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetTabLevel((__pyx_v_self->obj[0]), (&__pyx_v_clevel))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(10, 192, __pyx_L1_error)
- /* "PETSc/Object.pyx":186
+ /* "PETSc/Object.pyx":193
* cdef PetscInt clevel = 0
* CHKERR( PetscObjectGetTabLevel(self.obj[0], &clevel) )
* return toInt(clevel) # <<<<<<<<<<<<<<
@@ -66957,13 +72357,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56getTabLevel(struct PyPetscO
* # --- properties ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_clevel); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 186, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_clevel); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":183
+ /* "PETSc/Object.pyx":190
* CHKERR( PetscObjectSetTabLevel(self.obj[0], clevel) )
*
* def getTabLevel(self): # <<<<<<<<<<<<<<
@@ -66982,7 +72382,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_56getTabLevel(struct PyPetscO
return __pyx_r;
}
-/* "PETSc/Object.pyx":191
+/* "PETSc/Object.pyx":198
*
* property type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67011,7 +72411,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4type___get__(struct PyPetscO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":192
+ /* "PETSc/Object.pyx":199
* property type:
* def __get__(self):
* return self.getType() # <<<<<<<<<<<<<<
@@ -67019,10 +72419,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4type___get__(struct PyPetscO
* self.setType(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getType); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 192, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getType); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 199, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67032,10 +72432,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4type___get__(struct PyPetscO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 192, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 199, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 192, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 199, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -67043,7 +72443,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4type___get__(struct PyPetscO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":191
+ /* "PETSc/Object.pyx":198
*
* property type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67064,7 +72464,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4type___get__(struct PyPetscO
return __pyx_r;
}
-/* "PETSc/Object.pyx":193
+/* "PETSc/Object.pyx":200
* def __get__(self):
* return self.getType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -67094,17 +72494,17 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_4type_2__set__(struct PyPetscObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/Object.pyx":194
+ /* "PETSc/Object.pyx":201
* return self.getType()
* def __set__(self, value):
* self.setType(value) # <<<<<<<<<<<<<<
*
* property prefix:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setType); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 194, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setType); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67114,23 +72514,41 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_4type_2__set__(struct PyPetscObject
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 194, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 194, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 194, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 201, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 201, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 201, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 201, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":193
+ /* "PETSc/Object.pyx":200
* def __get__(self):
* return self.getType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -67153,7 +72571,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_4type_2__set__(struct PyPetscObject
return __pyx_r;
}
-/* "PETSc/Object.pyx":197
+/* "PETSc/Object.pyx":204
*
* property prefix:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67182,7 +72600,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6prefix___get__(struct PyPets
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":198
+ /* "PETSc/Object.pyx":205
* property prefix:
* def __get__(self):
* return self.getOptionsPrefix() # <<<<<<<<<<<<<<
@@ -67190,10 +72608,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6prefix___get__(struct PyPets
* self.setOptionsPrefix(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOptionsPrefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 198, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOptionsPrefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67203,10 +72621,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6prefix___get__(struct PyPets
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 198, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 205, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 198, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 205, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -67214,7 +72632,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6prefix___get__(struct PyPets
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":197
+ /* "PETSc/Object.pyx":204
*
* property prefix:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67235,7 +72653,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6prefix___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/Object.pyx":199
+/* "PETSc/Object.pyx":206
* def __get__(self):
* return self.getOptionsPrefix()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -67265,17 +72683,17 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_6prefix_2__set__(struct PyPetscObje
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/Object.pyx":200
+ /* "PETSc/Object.pyx":207
* return self.getOptionsPrefix()
* def __set__(self, value):
* self.setOptionsPrefix(value) # <<<<<<<<<<<<<<
*
* property comm:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setOptionsPrefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 200, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setOptionsPrefix); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 207, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67285,23 +72703,41 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_6prefix_2__set__(struct PyPetscObje
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 200, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 207, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 200, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 200, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 207, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 207, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 207, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 207, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":199
+ /* "PETSc/Object.pyx":206
* def __get__(self):
* return self.getOptionsPrefix()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -67324,7 +72760,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_6prefix_2__set__(struct PyPetscObje
return __pyx_r;
}
-/* "PETSc/Object.pyx":203
+/* "PETSc/Object.pyx":210
*
* property comm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67353,7 +72789,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4comm___get__(struct PyPetscO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":204
+ /* "PETSc/Object.pyx":211
* property comm:
* def __get__(self):
* return self.getComm() # <<<<<<<<<<<<<<
@@ -67361,10 +72797,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4comm___get__(struct PyPetscO
* property name:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getComm); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 204, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getComm); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 211, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67374,10 +72810,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4comm___get__(struct PyPetscO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 204, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 211, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 204, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 211, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -67385,7 +72821,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4comm___get__(struct PyPetscO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":203
+ /* "PETSc/Object.pyx":210
*
* property comm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67406,7 +72842,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4comm___get__(struct PyPetscO
return __pyx_r;
}
-/* "PETSc/Object.pyx":207
+/* "PETSc/Object.pyx":214
*
* property name:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67435,7 +72871,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4name___get__(struct PyPetscO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":208
+ /* "PETSc/Object.pyx":215
* property name:
* def __get__(self):
* return self.getName() # <<<<<<<<<<<<<<
@@ -67443,10 +72879,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4name___get__(struct PyPetscO
* self.setName(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getName); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 208, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getName); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 215, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67456,10 +72892,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4name___get__(struct PyPetscO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 208, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 215, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 208, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 215, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -67467,7 +72903,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4name___get__(struct PyPetscO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":207
+ /* "PETSc/Object.pyx":214
*
* property name:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67488,7 +72924,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_4name___get__(struct PyPetscO
return __pyx_r;
}
-/* "PETSc/Object.pyx":209
+/* "PETSc/Object.pyx":216
* def __get__(self):
* return self.getName()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -67518,17 +72954,17 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_4name_2__set__(struct PyPetscObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/Object.pyx":210
+ /* "PETSc/Object.pyx":217
* return self.getName()
* def __set__(self, value):
* self.setName(value) # <<<<<<<<<<<<<<
*
* property classid:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setName); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 210, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setName); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67538,23 +72974,41 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_4name_2__set__(struct PyPetscObject
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 210, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 210, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 210, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 217, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 217, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 217, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 217, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":209
+ /* "PETSc/Object.pyx":216
* def __get__(self):
* return self.getName()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -67577,7 +73031,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Object_4name_2__set__(struct PyPetscObject
return __pyx_r;
}
-/* "PETSc/Object.pyx":213
+/* "PETSc/Object.pyx":220
*
* property classid:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67606,7 +73060,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7classid___get__(struct PyPet
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":214
+ /* "PETSc/Object.pyx":221
* property classid:
* def __get__(self):
* return self.getClassId() # <<<<<<<<<<<<<<
@@ -67614,10 +73068,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7classid___get__(struct PyPet
* property klass:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getClassId); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 214, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getClassId); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67627,10 +73081,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7classid___get__(struct PyPet
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 214, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 221, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 214, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 221, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -67638,7 +73092,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7classid___get__(struct PyPet
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":213
+ /* "PETSc/Object.pyx":220
*
* property classid:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67659,7 +73113,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7classid___get__(struct PyPet
return __pyx_r;
}
-/* "PETSc/Object.pyx":217
+/* "PETSc/Object.pyx":224
*
* property klass:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67688,7 +73142,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_5klass___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":218
+ /* "PETSc/Object.pyx":225
* property klass:
* def __get__(self):
* return self.getClassName() # <<<<<<<<<<<<<<
@@ -67696,10 +73150,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_5klass___get__(struct PyPetsc
* property refcount:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getClassName); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 218, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getClassName); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 225, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67709,10 +73163,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_5klass___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 218, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 225, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 218, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 225, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -67720,7 +73174,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_5klass___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":217
+ /* "PETSc/Object.pyx":224
*
* property klass:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67741,7 +73195,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_5klass___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Object.pyx":221
+/* "PETSc/Object.pyx":228
*
* property refcount:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67770,7 +73224,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8refcount___get__(struct PyPe
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":222
+ /* "PETSc/Object.pyx":229
* property refcount:
* def __get__(self):
* return self.getRefCount() # <<<<<<<<<<<<<<
@@ -67778,10 +73232,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8refcount___get__(struct PyPe
* # --- ctypes support ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRefCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 222, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRefCount); if (unlikely(!__pyx_t_2)) __PYX_ERR(10, 229, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -67791,10 +73245,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8refcount___get__(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 222, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 229, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 222, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 229, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -67802,7 +73256,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8refcount___get__(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":221
+ /* "PETSc/Object.pyx":228
*
* property refcount:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67823,7 +73277,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_8refcount___get__(struct PyPe
return __pyx_r;
}
-/* "PETSc/Object.pyx":227
+/* "PETSc/Object.pyx":234
*
* property handle:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67851,7 +73305,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6handle___get__(struct PyPets
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":228
+ /* "PETSc/Object.pyx":235
* property handle:
* def __get__(self):
* cdef PetscObject obj = self.obj[0] # <<<<<<<<<<<<<<
@@ -67860,7 +73314,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6handle___get__(struct PyPets
*/
__pyx_v_obj = (__pyx_v_self->obj[0]);
- /* "PETSc/Object.pyx":229
+ /* "PETSc/Object.pyx":236
* def __get__(self):
* cdef PetscObject obj = self.obj[0]
* return PyLong_FromVoidPtr(<void*>obj) # <<<<<<<<<<<<<<
@@ -67868,13 +73322,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6handle___get__(struct PyPets
* # --- Fortran support ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyLong_FromVoidPtr(((void *)__pyx_v_obj)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 229, __pyx_L1_error)
+ __pyx_t_1 = PyLong_FromVoidPtr(((void *)__pyx_v_obj)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 236, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":227
+ /* "PETSc/Object.pyx":234
*
* property handle:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67893,7 +73347,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_6handle___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/Object.pyx":234
+/* "PETSc/Object.pyx":241
*
* property fortran:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -67921,7 +73375,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7fortran___get__(struct PyPet
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Object.pyx":235
+ /* "PETSc/Object.pyx":242
* property fortran:
* def __get__(self):
* cdef PetscObject obj = self.obj[0] # <<<<<<<<<<<<<<
@@ -67930,7 +73384,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7fortran___get__(struct PyPet
*/
__pyx_v_obj = (__pyx_v_self->obj[0]);
- /* "PETSc/Object.pyx":236
+ /* "PETSc/Object.pyx":243
* def __get__(self):
* cdef PetscObject obj = self.obj[0]
* return Object_toFortran(obj) # <<<<<<<<<<<<<<
@@ -67938,13 +73392,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Object_7fortran___get__(struct PyPet
* # --------------------------------------------------------------------
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_f_8petsc4py_5PETSc_Object_toFortran(__pyx_v_obj)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 236, __pyx_L1_error)
+ __pyx_t_1 = PyInt_FromSsize_t(__pyx_f_8petsc4py_5PETSc_Object_toFortran(__pyx_v_obj)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 243, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":234
+ /* "PETSc/Object.pyx":241
*
* property fortran:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -68184,7 +73638,7 @@ static CYTHON_INLINE void __pyx_f_8petsc4py_5PETSc_TypeEnableGC(PyTypeObject *__
__Pyx_RefNannyFinishContext();
}
-/* "PETSc/Object.pyx":245
+/* "PETSc/Object.pyx":252
* __type_registry__ = type_registry
*
* cdef int PyPetscType_Register(int classid, type cls) except -1: # <<<<<<<<<<<<<<
@@ -68204,19 +73658,19 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("PyPetscType_Register", 0);
- /* "PETSc/Object.pyx":247
+ /* "PETSc/Object.pyx":254
* cdef int PyPetscType_Register(int classid, type cls) except -1:
* global type_registry
* cdef object key = <long>classid # <<<<<<<<<<<<<<
* cdef object value = cls
* cdef const_char *dummy = NULL
*/
- __pyx_t_1 = __Pyx_PyInt_From_long(((long)__pyx_v_classid)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 247, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_long(((long)__pyx_v_classid)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_key = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":248
+ /* "PETSc/Object.pyx":255
* global type_registry
* cdef object key = <long>classid
* cdef object value = cls # <<<<<<<<<<<<<<
@@ -68226,7 +73680,7 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
__Pyx_INCREF(((PyObject *)__pyx_v_cls));
__pyx_v_value = ((PyObject *)__pyx_v_cls);
- /* "PETSc/Object.pyx":249
+ /* "PETSc/Object.pyx":256
* cdef object key = <long>classid
* cdef object value = cls
* cdef const_char *dummy = NULL # <<<<<<<<<<<<<<
@@ -68235,7 +73689,7 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
*/
__pyx_v_dummy = NULL;
- /* "PETSc/Object.pyx":250
+ /* "PETSc/Object.pyx":257
* cdef object value = cls
* cdef const_char *dummy = NULL
* if key not in type_registry: # <<<<<<<<<<<<<<
@@ -68244,13 +73698,13 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_type_registry == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
- __PYX_ERR(10, 250, __pyx_L1_error)
+ __PYX_ERR(10, 257, __pyx_L1_error)
}
- __pyx_t_2 = (__Pyx_PyDict_ContainsTF(__pyx_v_key, __pyx_v_8petsc4py_5PETSc_type_registry, Py_NE)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(10, 250, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyDict_ContainsTF(__pyx_v_key, __pyx_v_8petsc4py_5PETSc_type_registry, Py_NE)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(10, 257, __pyx_L1_error)
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Object.pyx":251
+ /* "PETSc/Object.pyx":258
* cdef const_char *dummy = NULL
* if key not in type_registry:
* type_registry[key] = cls # <<<<<<<<<<<<<<
@@ -68259,36 +73713,36 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_type_registry == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(10, 251, __pyx_L1_error)
+ __PYX_ERR(10, 258, __pyx_L1_error)
}
- if (unlikely(PyDict_SetItem(__pyx_v_8petsc4py_5PETSc_type_registry, __pyx_v_key, ((PyObject *)__pyx_v_cls)) < 0)) __PYX_ERR(10, 251, __pyx_L1_error)
+ if (unlikely(PyDict_SetItem(__pyx_v_8petsc4py_5PETSc_type_registry, __pyx_v_key, ((PyObject *)__pyx_v_cls)) < 0)) __PYX_ERR(10, 258, __pyx_L1_error)
- /* "PETSc/Object.pyx":252
+ /* "PETSc/Object.pyx":259
* if key not in type_registry:
* type_registry[key] = cls
* reg_LogClass(str2bytes(cls.__name__, &dummy), # <<<<<<<<<<<<<<
* <PetscLogClass>classid)
* TypeEnableGC(<PyTypeObject*>cls)
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_cls), __pyx_n_s_name_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 252, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_cls), __pyx_n_s_name_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_t_1, (&__pyx_v_dummy)); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 252, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_t_1, (&__pyx_v_dummy)); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":253
+ /* "PETSc/Object.pyx":260
* type_registry[key] = cls
* reg_LogClass(str2bytes(cls.__name__, &dummy),
* <PetscLogClass>classid) # <<<<<<<<<<<<<<
* TypeEnableGC(<PyTypeObject*>cls)
* else:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_reg_LogClass(__pyx_t_4, ((PetscClassId)__pyx_v_classid))); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 252, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_reg_LogClass(__pyx_t_4, ((PetscClassId)__pyx_v_classid))); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":254
+ /* "PETSc/Object.pyx":261
* reg_LogClass(str2bytes(cls.__name__, &dummy),
* <PetscLogClass>classid)
* TypeEnableGC(<PyTypeObject*>cls) # <<<<<<<<<<<<<<
@@ -68297,7 +73751,7 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
*/
__pyx_f_8petsc4py_5PETSc_TypeEnableGC(((PyTypeObject *)__pyx_v_cls));
- /* "PETSc/Object.pyx":250
+ /* "PETSc/Object.pyx":257
* cdef object value = cls
* cdef const_char *dummy = NULL
* if key not in type_registry: # <<<<<<<<<<<<<<
@@ -68307,7 +73761,7 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
goto __pyx_L3;
}
- /* "PETSc/Object.pyx":256
+ /* "PETSc/Object.pyx":263
* TypeEnableGC(<PyTypeObject*>cls)
* else:
* value = type_registry[key] # <<<<<<<<<<<<<<
@@ -68317,14 +73771,14 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
/*else*/ {
if (unlikely(__pyx_v_8petsc4py_5PETSc_type_registry == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(10, 256, __pyx_L1_error)
+ __PYX_ERR(10, 263, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_8petsc4py_5PETSc_type_registry, __pyx_v_key); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 256, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_8petsc4py_5PETSc_type_registry, __pyx_v_key); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 263, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_value, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":257
+ /* "PETSc/Object.pyx":264
* else:
* value = type_registry[key]
* if cls is not value: # <<<<<<<<<<<<<<
@@ -68335,14 +73789,14 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- /* "PETSc/Object.pyx":260
+ /* "PETSc/Object.pyx":267
* raise ValueError(
* "key: %d, cannot register: %s, " \
* "already registered: %s" % (key, cls, value)) # <<<<<<<<<<<<<<
* return 0
*
*/
- __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 260, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 267, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_key);
__Pyx_GIVEREF(__pyx_v_key);
@@ -68353,30 +73807,30 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
__Pyx_INCREF(__pyx_v_value);
__Pyx_GIVEREF(__pyx_v_value);
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_value);
- __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_key_d_cannot_register_s_already, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 260, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_key_d_cannot_register_s_already, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 267, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":258
+ /* "PETSc/Object.pyx":265
* value = type_registry[key]
* if cls is not value:
* raise ValueError( # <<<<<<<<<<<<<<
* "key: %d, cannot register: %s, " \
* "already registered: %s" % (key, cls, value))
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 258, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 258, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(10, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __PYX_ERR(10, 258, __pyx_L1_error)
+ __PYX_ERR(10, 265, __pyx_L1_error)
- /* "PETSc/Object.pyx":257
+ /* "PETSc/Object.pyx":264
* else:
* value = type_registry[key]
* if cls is not value: # <<<<<<<<<<<<<<
@@ -68387,7 +73841,7 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
}
__pyx_L3:;
- /* "PETSc/Object.pyx":261
+ /* "PETSc/Object.pyx":268
* "key: %d, cannot register: %s, " \
* "already registered: %s" % (key, cls, value))
* return 0 # <<<<<<<<<<<<<<
@@ -68397,7 +73851,7 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/Object.pyx":245
+ /* "PETSc/Object.pyx":252
* __type_registry__ = type_registry
*
* cdef int PyPetscType_Register(int classid, type cls) except -1: # <<<<<<<<<<<<<<
@@ -68418,7 +73872,7 @@ static int __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(int __pyx_v_classid, Py
return __pyx_r;
}
-/* "PETSc/Object.pyx":263
+/* "PETSc/Object.pyx":270
* return 0
*
* cdef type PyPetscType_Lookup(int classid): # <<<<<<<<<<<<<<
@@ -68440,19 +73894,19 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
PyObject *__pyx_t_7 = NULL;
__Pyx_RefNannySetupContext("PyPetscType_Lookup", 0);
- /* "PETSc/Object.pyx":265
+ /* "PETSc/Object.pyx":272
* cdef type PyPetscType_Lookup(int classid):
* global type_registry
* cdef object key = <long>classid # <<<<<<<<<<<<<<
* cdef type cls = Object
* try:
*/
- __pyx_t_1 = __Pyx_PyInt_From_long(((long)__pyx_v_classid)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 265, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_long(((long)__pyx_v_classid)); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 272, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_key = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":266
+ /* "PETSc/Object.pyx":273
* global type_registry
* cdef object key = <long>classid
* cdef type cls = Object # <<<<<<<<<<<<<<
@@ -68462,7 +73916,7 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
__Pyx_INCREF(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Object));
__pyx_v_cls = __pyx_ptype_8petsc4py_5PETSc_Object;
- /* "PETSc/Object.pyx":267
+ /* "PETSc/Object.pyx":274
* cdef object key = <long>classid
* cdef type cls = Object
* try: # <<<<<<<<<<<<<<
@@ -68478,7 +73932,7 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
__Pyx_XGOTREF(__pyx_t_4);
/*try:*/ {
- /* "PETSc/Object.pyx":268
+ /* "PETSc/Object.pyx":275
* cdef type cls = Object
* try:
* cls = type_registry[key] # <<<<<<<<<<<<<<
@@ -68487,15 +73941,15 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_type_registry == Py_None)) {
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
- __PYX_ERR(10, 268, __pyx_L3_error)
+ __PYX_ERR(10, 275, __pyx_L3_error)
}
- __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_8petsc4py_5PETSc_type_registry, __pyx_v_key); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 268, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_8petsc4py_5PETSc_type_registry, __pyx_v_key); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 275, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_1);
- if (!(likely(PyType_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "type", Py_TYPE(__pyx_t_1)->tp_name), 0))) __PYX_ERR(10, 268, __pyx_L3_error)
+ if (!(likely(PyType_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "type", Py_TYPE(__pyx_t_1)->tp_name), 0))) __PYX_ERR(10, 275, __pyx_L3_error)
__Pyx_DECREF_SET(__pyx_v_cls, ((PyTypeObject*)__pyx_t_1));
__pyx_t_1 = 0;
- /* "PETSc/Object.pyx":267
+ /* "PETSc/Object.pyx":274
* cdef object key = <long>classid
* cdef type cls = Object
* try: # <<<<<<<<<<<<<<
@@ -68506,12 +73960,11 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- goto __pyx_L10_try_end;
+ goto __pyx_L8_try_end;
__pyx_L3_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Object.pyx":269
+ /* "PETSc/Object.pyx":276
* try:
* cls = type_registry[key]
* except KeyError: # <<<<<<<<<<<<<<
@@ -68521,12 +73974,12 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
__pyx_t_5 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_KeyError);
if (__pyx_t_5) {
__Pyx_AddTraceback("petsc4py.PETSc.PyPetscType_Lookup", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(10, 269, __pyx_L5_except_error)
+ if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(10, 276, __pyx_L5_except_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_7);
- /* "PETSc/Object.pyx":270
+ /* "PETSc/Object.pyx":277
* cls = type_registry[key]
* except KeyError:
* cls = Object # <<<<<<<<<<<<<<
@@ -68543,29 +73996,27 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
goto __pyx_L5_except_error;
__pyx_L5_except_error:;
- /* "PETSc/Object.pyx":267
+ /* "PETSc/Object.pyx":274
* cdef object key = <long>classid
* cdef type cls = Object
* try: # <<<<<<<<<<<<<<
* cls = type_registry[key]
* except KeyError:
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4);
goto __pyx_L1_error;
__pyx_L4_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4);
- __pyx_L10_try_end:;
+ __pyx_L8_try_end:;
}
- /* "PETSc/Object.pyx":271
+ /* "PETSc/Object.pyx":278
* except KeyError:
* cls = Object
* return cls # <<<<<<<<<<<<<<
@@ -68577,7 +74028,7 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
__pyx_r = __pyx_v_cls;
goto __pyx_L0;
- /* "PETSc/Object.pyx":263
+ /* "PETSc/Object.pyx":270
* return 0
*
* cdef type PyPetscType_Lookup(int classid): # <<<<<<<<<<<<<<
@@ -68600,7 +74051,7 @@ static PyTypeObject *__pyx_f_8petsc4py_5PETSc_PyPetscType_Lookup(int __pyx_v_cla
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":83
+/* "PETSc/Viewer.pyx":82
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -68629,7 +74080,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Viewer___cinit__(struct PyPetscViewerObjec
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/Viewer.pyx":84
+ /* "PETSc/Viewer.pyx":83
*
* def __cinit__(self):
* self.obj = <PetscObject*> &self.vwr # <<<<<<<<<<<<<<
@@ -68638,7 +74089,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Viewer___cinit__(struct PyPetscViewerObjec
*/
__pyx_v_self->__pyx_base.obj = ((PetscObject *)(&__pyx_v_self->vwr));
- /* "PETSc/Viewer.pyx":85
+ /* "PETSc/Viewer.pyx":84
* def __cinit__(self):
* self.obj = <PetscObject*> &self.vwr
* self.vwr = NULL # <<<<<<<<<<<<<<
@@ -68647,7 +74098,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Viewer___cinit__(struct PyPetscViewerObjec
*/
__pyx_v_self->vwr = NULL;
- /* "PETSc/Viewer.pyx":83
+ /* "PETSc/Viewer.pyx":82
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -68661,7 +74112,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Viewer___cinit__(struct PyPetscViewerObjec
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":87
+/* "PETSc/Viewer.pyx":86
* self.vwr = NULL
*
* def __call__(self, Object obj): # <<<<<<<<<<<<<<
@@ -68684,6 +74135,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_3__call__(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -68694,7 +74146,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_3__call__(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(27, 87, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(27, 86, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -68705,13 +74157,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_3__call__(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 87, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 86, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_obj), __pyx_ptype_8petsc4py_5PETSc_Object, 1, "obj", 0))) __PYX_ERR(27, 87, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_obj), __pyx_ptype_8petsc4py_5PETSc_Object, 0, "obj", 0))) __PYX_ERR(27, 86, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_2__call__(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_obj);
/* function exit code */
@@ -68729,7 +74181,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_2__call__(struct PyPetscViewe
int __pyx_t_1;
__Pyx_RefNannySetupContext("__call__", 0);
- /* "PETSc/Viewer.pyx":88
+ /* "PETSc/Viewer.pyx":87
*
* def __call__(self, Object obj):
* assert obj.obj != NULL # <<<<<<<<<<<<<<
@@ -68740,21 +74192,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_2__call__(struct PyPetscViewe
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_obj->obj != NULL) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(27, 88, __pyx_L1_error)
+ __PYX_ERR(27, 87, __pyx_L1_error)
}
}
#endif
- /* "PETSc/Viewer.pyx":89
+ /* "PETSc/Viewer.pyx":88
* def __call__(self, Object obj):
* assert obj.obj != NULL
* CHKERR( PetscObjectView(obj.obj[0], self.vwr) ) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectView((__pyx_v_obj->obj[0]), __pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 89, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectView((__pyx_v_obj->obj[0]), __pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 88, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":87
+ /* "PETSc/Viewer.pyx":86
* self.vwr = NULL
*
* def __call__(self, Object obj): # <<<<<<<<<<<<<<
@@ -68774,7 +74226,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_2__call__(struct PyPetscViewe
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":93
+/* "PETSc/Viewer.pyx":92
* #
*
* def view(self, obj=None): # <<<<<<<<<<<<<<
@@ -68799,6 +74251,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_5view(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -68811,11 +74264,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_5view(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(27, 93, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(27, 92, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -68824,7 +74278,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_5view(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 93, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 92, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.view", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -68845,7 +74299,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_4view(struct PyPetscViewerObj
int __pyx_t_3;
__Pyx_RefNannySetupContext("view", 0);
- /* "PETSc/Viewer.pyx":94
+ /* "PETSc/Viewer.pyx":93
*
* def view(self, obj=None):
* if obj is None: # <<<<<<<<<<<<<<
@@ -68856,16 +74310,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_4view(struct PyPetscViewerObj
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Viewer.pyx":95
+ /* "PETSc/Viewer.pyx":94
* def view(self, obj=None):
* if obj is None:
* CHKERR( PetscViewerView(self.vwr, NULL) ) # <<<<<<<<<<<<<<
* elif isinstance(obj, Viewer):
* CHKERR( PetscViewerView(self.vwr, (<Viewer?>obj).vwr) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerView(__pyx_v_self->vwr, NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(27, 95, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerView(__pyx_v_self->vwr, NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(27, 94, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":94
+ /* "PETSc/Viewer.pyx":93
*
* def view(self, obj=None):
* if obj is None: # <<<<<<<<<<<<<<
@@ -68875,7 +74329,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_4view(struct PyPetscViewerObj
goto __pyx_L3;
}
- /* "PETSc/Viewer.pyx":96
+ /* "PETSc/Viewer.pyx":95
* if obj is None:
* CHKERR( PetscViewerView(self.vwr, NULL) )
* elif isinstance(obj, Viewer): # <<<<<<<<<<<<<<
@@ -68886,17 +74340,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_4view(struct PyPetscViewerObj
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/Viewer.pyx":97
+ /* "PETSc/Viewer.pyx":96
* CHKERR( PetscViewerView(self.vwr, NULL) )
* elif isinstance(obj, Viewer):
* CHKERR( PetscViewerView(self.vwr, (<Viewer?>obj).vwr) ) # <<<<<<<<<<<<<<
* else:
* assert (<Object?>obj).obj != NULL
*/
- if (!(likely(__Pyx_TypeTest(__pyx_v_obj, __pyx_ptype_8petsc4py_5PETSc_Viewer)))) __PYX_ERR(27, 97, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerView(__pyx_v_self->vwr, ((struct PyPetscViewerObject *)__pyx_v_obj)->vwr)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(27, 97, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_v_obj, __pyx_ptype_8petsc4py_5PETSc_Viewer)))) __PYX_ERR(27, 96, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerView(__pyx_v_self->vwr, ((struct PyPetscViewerObject *)__pyx_v_obj)->vwr)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(27, 96, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":96
+ /* "PETSc/Viewer.pyx":95
* if obj is None:
* CHKERR( PetscViewerView(self.vwr, NULL) )
* elif isinstance(obj, Viewer): # <<<<<<<<<<<<<<
@@ -68906,7 +74360,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_4view(struct PyPetscViewerObj
goto __pyx_L3;
}
- /* "PETSc/Viewer.pyx":99
+ /* "PETSc/Viewer.pyx":98
* CHKERR( PetscViewerView(self.vwr, (<Viewer?>obj).vwr) )
* else:
* assert (<Object?>obj).obj != NULL # <<<<<<<<<<<<<<
@@ -68916,27 +74370,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_4view(struct PyPetscViewerObj
/*else*/ {
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- if (!(likely(__Pyx_TypeTest(__pyx_v_obj, __pyx_ptype_8petsc4py_5PETSc_Object)))) __PYX_ERR(27, 99, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_v_obj, __pyx_ptype_8petsc4py_5PETSc_Object)))) __PYX_ERR(27, 98, __pyx_L1_error)
if (unlikely(!((((struct PyPetscObjectObject *)__pyx_v_obj)->obj != NULL) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(27, 99, __pyx_L1_error)
+ __PYX_ERR(27, 98, __pyx_L1_error)
}
}
#endif
- /* "PETSc/Viewer.pyx":100
+ /* "PETSc/Viewer.pyx":99
* else:
* assert (<Object?>obj).obj != NULL
* CHKERR( PetscObjectView((<Object?>obj).obj[0], self.vwr) ) # <<<<<<<<<<<<<<
*
* def destroy(self):
*/
- if (!(likely(__Pyx_TypeTest(__pyx_v_obj, __pyx_ptype_8petsc4py_5PETSc_Object)))) __PYX_ERR(27, 100, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectView((((struct PyPetscObjectObject *)__pyx_v_obj)->obj[0]), __pyx_v_self->vwr)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(27, 100, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_v_obj, __pyx_ptype_8petsc4py_5PETSc_Object)))) __PYX_ERR(27, 99, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectView((((struct PyPetscObjectObject *)__pyx_v_obj)->obj[0]), __pyx_v_self->vwr)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(27, 99, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/Viewer.pyx":93
+ /* "PETSc/Viewer.pyx":92
* #
*
* def view(self, obj=None): # <<<<<<<<<<<<<<
@@ -68956,7 +74410,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_4view(struct PyPetscViewerObj
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":102
+/* "PETSc/Viewer.pyx":101
* CHKERR( PetscObjectView((<Object?>obj).obj[0], self.vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -68987,16 +74441,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_6destroy(struct PyPetscViewer
int __pyx_t_1;
__Pyx_RefNannySetupContext("destroy", 0);
- /* "PETSc/Viewer.pyx":103
+ /* "PETSc/Viewer.pyx":102
*
* def destroy(self):
* CHKERR( PetscViewerDestroy(&self.vwr) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDestroy((&__pyx_v_self->vwr))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 103, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDestroy((&__pyx_v_self->vwr))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 102, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":104
+ /* "PETSc/Viewer.pyx":103
* def destroy(self):
* CHKERR( PetscViewerDestroy(&self.vwr) )
* return self # <<<<<<<<<<<<<<
@@ -69008,7 +74462,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_6destroy(struct PyPetscViewer
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":102
+ /* "PETSc/Viewer.pyx":101
* CHKERR( PetscObjectView((<Object?>obj).obj[0], self.vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -69026,7 +74480,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_6destroy(struct PyPetscViewer
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":106
+/* "PETSc/Viewer.pyx":105
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -69051,6 +74505,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_9create(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -69063,11 +74518,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_9create(PyObject *__pyx_v_sel
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(27, 106, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(27, 105, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -69076,7 +74532,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_9create(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 106, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 105, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -69098,17 +74554,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_8create(struct PyPetscViewerO
int __pyx_t_2;
__Pyx_RefNannySetupContext("create", 0);
- /* "PETSc/Viewer.pyx":107
+ /* "PETSc/Viewer.pyx":106
*
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 107, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 106, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":108
+ /* "PETSc/Viewer.pyx":107
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -69117,16 +74573,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_8create(struct PyPetscViewerO
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":109
+ /* "PETSc/Viewer.pyx":108
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.vwr = newvwr
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(27, 109, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 108, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":110
+ /* "PETSc/Viewer.pyx":109
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -69136,7 +74592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_8create(struct PyPetscViewerO
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":111
+ /* "PETSc/Viewer.pyx":110
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* return self # <<<<<<<<<<<<<<
@@ -69148,7 +74604,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_8create(struct PyPetscViewerO
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":106
+ /* "PETSc/Viewer.pyx":105
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -69166,7 +74622,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_8create(struct PyPetscViewerO
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":113
+/* "PETSc/Viewer.pyx":112
* return self
*
* def createASCII(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -69194,8 +74650,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_11createASCII(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -69204,11 +74663,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_11createASCII(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -69216,12 +74677,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_11createASCII(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createASCII") < 0)) __PYX_ERR(27, 113, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createASCII") < 0)) __PYX_ERR(27, 112, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -69233,7 +74696,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_11createASCII(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createASCII", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 113, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createASCII", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 112, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.createASCII", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -69262,17 +74725,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
__Pyx_RefNannySetupContext("createASCII", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":114
+ /* "PETSc/Viewer.pyx":113
*
* def createASCII(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 114, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 113, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":115
+ /* "PETSc/Viewer.pyx":114
* def createASCII(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -69281,19 +74744,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
*/
__pyx_v_cname = NULL;
- /* "PETSc/Viewer.pyx":116
+ /* "PETSc/Viewer.pyx":115
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscFileMode cmode = PETSC_FILE_MODE_WRITE
* if mode is not None: filemode(mode)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 116, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 115, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":117
+ /* "PETSc/Viewer.pyx":116
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = PETSC_FILE_MODE_WRITE # <<<<<<<<<<<<<<
@@ -69302,7 +74765,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
*/
__pyx_v_cmode = FILE_MODE_WRITE;
- /* "PETSc/Viewer.pyx":118
+ /* "PETSc/Viewer.pyx":117
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = PETSC_FILE_MODE_WRITE
* if mode is not None: filemode(mode) # <<<<<<<<<<<<<<
@@ -69312,10 +74775,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
__pyx_t_3 = (__pyx_v_mode != Py_None);
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_5 == ((PetscFileMode)-1L))) __PYX_ERR(27, 118, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_5 == ((PetscFileMode)((PetscFileMode)-1L)))) __PYX_ERR(27, 117, __pyx_L1_error)
}
- /* "PETSc/Viewer.pyx":119
+ /* "PETSc/Viewer.pyx":118
* cdef PetscFileMode cmode = PETSC_FILE_MODE_WRITE
* if mode is not None: filemode(mode)
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -69324,16 +74787,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":120
+ /* "PETSc/Viewer.pyx":119
* if mode is not None: filemode(mode)
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERASCII) )
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(27, 120, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(27, 119, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":121
+ /* "PETSc/Viewer.pyx":120
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -69343,34 +74806,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":122
+ /* "PETSc/Viewer.pyx":121
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERASCII) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERASCII)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(27, 122, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERASCII)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(27, 121, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":123
+ /* "PETSc/Viewer.pyx":122
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERASCII) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(27, 123, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(27, 122, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":124
+ /* "PETSc/Viewer.pyx":123
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERASCII) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(27, 124, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(27, 123, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":125
+ /* "PETSc/Viewer.pyx":124
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self # <<<<<<<<<<<<<<
@@ -69382,7 +74845,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":113
+ /* "PETSc/Viewer.pyx":112
* return self
*
* def createASCII(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -69402,7 +74865,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_10createASCII(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":127
+/* "PETSc/Viewer.pyx":126
* return self
*
* def createBinary(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -69430,8 +74893,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_13createBinary(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -69440,11 +74906,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_13createBinary(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -69452,12 +74920,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_13createBinary(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createBinary") < 0)) __PYX_ERR(27, 127, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createBinary") < 0)) __PYX_ERR(27, 126, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -69469,7 +74939,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_13createBinary(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createBinary", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 127, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createBinary", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 126, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.createBinary", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -69496,17 +74966,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_12createBinary(struct PyPetsc
__Pyx_RefNannySetupContext("createBinary", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":128
+ /* "PETSc/Viewer.pyx":127
*
* def createBinary(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 128, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 127, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":129
+ /* "PETSc/Viewer.pyx":128
* def createBinary(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -69515,29 +74985,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_12createBinary(struct PyPetsc
*/
__pyx_v_cname = NULL;
- /* "PETSc/Viewer.pyx":130
+ /* "PETSc/Viewer.pyx":129
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 130, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 129, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":131
+ /* "PETSc/Viewer.pyx":130
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode) # <<<<<<<<<<<<<<
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerBinaryOpen(ccomm, cname, cmode, &newvwr) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)-1L))) __PYX_ERR(27, 131, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)((PetscFileMode)-1L)))) __PYX_ERR(27, 130, __pyx_L1_error)
__pyx_v_cmode = __pyx_t_3;
- /* "PETSc/Viewer.pyx":132
+ /* "PETSc/Viewer.pyx":131
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -69546,16 +75016,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_12createBinary(struct PyPetsc
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":133
+ /* "PETSc/Viewer.pyx":132
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerBinaryOpen(ccomm, cname, cmode, &newvwr) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.vwr = newvwr
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerBinaryOpen(__pyx_v_ccomm, __pyx_v_cname, __pyx_v_cmode, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 133, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerBinaryOpen(__pyx_v_ccomm, __pyx_v_cname, __pyx_v_cmode, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 132, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":134
+ /* "PETSc/Viewer.pyx":133
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerBinaryOpen(ccomm, cname, cmode, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -69565,7 +75035,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_12createBinary(struct PyPetsc
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":135
+ /* "PETSc/Viewer.pyx":134
* CHKERR( PetscViewerBinaryOpen(ccomm, cname, cmode, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* return self # <<<<<<<<<<<<<<
@@ -69577,7 +75047,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_12createBinary(struct PyPetsc
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":127
+ /* "PETSc/Viewer.pyx":126
* return self
*
* def createBinary(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -69597,7 +75067,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_12createBinary(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":137
+/* "PETSc/Viewer.pyx":136
* return self
*
* def createMPIIO(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -69625,8 +75095,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_15createMPIIO(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -69635,11 +75108,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_15createMPIIO(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -69647,12 +75122,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_15createMPIIO(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createMPIIO") < 0)) __PYX_ERR(27, 137, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createMPIIO") < 0)) __PYX_ERR(27, 136, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -69664,7 +75141,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_15createMPIIO(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createMPIIO", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 137, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createMPIIO", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 136, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.createMPIIO", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -69691,17 +75168,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_14createMPIIO(struct PyPetscV
__Pyx_RefNannySetupContext("createMPIIO", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":138
+ /* "PETSc/Viewer.pyx":137
*
* def createMPIIO(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 138, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 137, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":139
+ /* "PETSc/Viewer.pyx":138
* def createMPIIO(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -69710,29 +75187,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_14createMPIIO(struct PyPetscV
*/
__pyx_v_cname = NULL;
- /* "PETSc/Viewer.pyx":140
+ /* "PETSc/Viewer.pyx":139
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 140, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 139, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":141
+ /* "PETSc/Viewer.pyx":140
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode) # <<<<<<<<<<<<<<
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)-1L))) __PYX_ERR(27, 141, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)((PetscFileMode)-1L)))) __PYX_ERR(27, 140, __pyx_L1_error)
__pyx_v_cmode = __pyx_t_3;
- /* "PETSc/Viewer.pyx":142
+ /* "PETSc/Viewer.pyx":141
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -69741,16 +75218,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_14createMPIIO(struct PyPetscV
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":143
+ /* "PETSc/Viewer.pyx":142
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERBINARY) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 143, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 142, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":144
+ /* "PETSc/Viewer.pyx":143
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -69760,43 +75237,43 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_14createMPIIO(struct PyPetscV
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":145
+ /* "PETSc/Viewer.pyx":144
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERBINARY) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerBinarySetUseMPIIO(self.vwr, PETSC_TRUE) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERBINARY)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 145, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERBINARY)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 144, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":146
+ /* "PETSc/Viewer.pyx":145
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERBINARY) )
* CHKERR( PetscViewerBinarySetUseMPIIO(self.vwr, PETSC_TRUE) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerBinarySetUseMPIIO(__pyx_v_self->vwr, PETSC_TRUE)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 146, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerBinarySetUseMPIIO(__pyx_v_self->vwr, PETSC_TRUE)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 145, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":147
+ /* "PETSc/Viewer.pyx":146
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERBINARY) )
* CHKERR( PetscViewerBinarySetUseMPIIO(self.vwr, PETSC_TRUE) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 147, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 146, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":148
+ /* "PETSc/Viewer.pyx":147
* CHKERR( PetscViewerBinarySetUseMPIIO(self.vwr, PETSC_TRUE) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 148, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 147, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":149
+ /* "PETSc/Viewer.pyx":148
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self # <<<<<<<<<<<<<<
@@ -69808,7 +75285,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_14createMPIIO(struct PyPetscV
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":137
+ /* "PETSc/Viewer.pyx":136
* return self
*
* def createMPIIO(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -69828,7 +75305,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_14createMPIIO(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":151
+/* "PETSc/Viewer.pyx":150
* return self
*
* def createVTK(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -69856,8 +75333,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_17createVTK(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -69866,11 +75346,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_17createVTK(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -69878,12 +75360,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_17createVTK(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createVTK") < 0)) __PYX_ERR(27, 151, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createVTK") < 0)) __PYX_ERR(27, 150, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -69895,7 +75379,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_17createVTK(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createVTK", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 151, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createVTK", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 150, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.createVTK", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -69922,17 +75406,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_16createVTK(struct PyPetscVie
__Pyx_RefNannySetupContext("createVTK", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":152
+ /* "PETSc/Viewer.pyx":151
*
* def createVTK(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 152, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 151, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":153
+ /* "PETSc/Viewer.pyx":152
* def createVTK(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -69941,29 +75425,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_16createVTK(struct PyPetscVie
*/
__pyx_v_cname = NULL;
- /* "PETSc/Viewer.pyx":154
+ /* "PETSc/Viewer.pyx":153
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 154, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 153, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":155
+ /* "PETSc/Viewer.pyx":154
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode) # <<<<<<<<<<<<<<
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)-1L))) __PYX_ERR(27, 155, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)((PetscFileMode)-1L)))) __PYX_ERR(27, 154, __pyx_L1_error)
__pyx_v_cmode = __pyx_t_3;
- /* "PETSc/Viewer.pyx":156
+ /* "PETSc/Viewer.pyx":155
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -69972,16 +75456,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_16createVTK(struct PyPetscVie
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":157
+ /* "PETSc/Viewer.pyx":156
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERVTK) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 157, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 156, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":158
+ /* "PETSc/Viewer.pyx":157
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -69991,34 +75475,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_16createVTK(struct PyPetscVie
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":159
+ /* "PETSc/Viewer.pyx":158
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERVTK) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERVTK)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 159, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERVTK)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 158, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":160
+ /* "PETSc/Viewer.pyx":159
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERVTK) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 160, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 159, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":161
+ /* "PETSc/Viewer.pyx":160
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERVTK) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 161, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 160, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":162
+ /* "PETSc/Viewer.pyx":161
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self # <<<<<<<<<<<<<<
@@ -70030,7 +75514,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_16createVTK(struct PyPetscVie
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":151
+ /* "PETSc/Viewer.pyx":150
* return self
*
* def createVTK(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -70050,7 +75534,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_16createVTK(struct PyPetscVie
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":164
+/* "PETSc/Viewer.pyx":163
* return self
*
* def createHDF5(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -70078,8 +75562,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_19createHDF5(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -70088,11 +75575,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_19createHDF5(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -70100,12 +75589,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_19createHDF5(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createHDF5") < 0)) __PYX_ERR(27, 164, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createHDF5") < 0)) __PYX_ERR(27, 163, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -70117,7 +75608,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_19createHDF5(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createHDF5", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 164, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createHDF5", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 163, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.createHDF5", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -70144,17 +75635,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_18createHDF5(struct PyPetscVi
__Pyx_RefNannySetupContext("createHDF5", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":165
+ /* "PETSc/Viewer.pyx":164
*
* def createHDF5(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 165, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 164, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":166
+ /* "PETSc/Viewer.pyx":165
* def createHDF5(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -70163,29 +75654,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_18createHDF5(struct PyPetscVi
*/
__pyx_v_cname = NULL;
- /* "PETSc/Viewer.pyx":167
+ /* "PETSc/Viewer.pyx":166
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 167, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 166, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":168
+ /* "PETSc/Viewer.pyx":167
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode) # <<<<<<<<<<<<<<
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)-1L))) __PYX_ERR(27, 168, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)((PetscFileMode)-1L)))) __PYX_ERR(27, 167, __pyx_L1_error)
__pyx_v_cmode = __pyx_t_3;
- /* "PETSc/Viewer.pyx":169
+ /* "PETSc/Viewer.pyx":168
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -70194,16 +75685,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_18createHDF5(struct PyPetscVi
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":170
+ /* "PETSc/Viewer.pyx":169
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 170, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 169, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":171
+ /* "PETSc/Viewer.pyx":170
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -70213,46 +75704,46 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_18createHDF5(struct PyPetscVi
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":172
+ /* "PETSc/Viewer.pyx":171
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERHDF5)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 172, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERHDF5)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 171, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":173
+ /* "PETSc/Viewer.pyx":172
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 173, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 172, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":174
+ /* "PETSc/Viewer.pyx":173
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 174, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 173, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":175
+ /* "PETSc/Viewer.pyx":174
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self # <<<<<<<<<<<<<<
*
- * def createNetCDF(self, name, mode=None, comm=None):
+ * def createDraw(self, display=None, title=None,
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":164
+ /* "PETSc/Viewer.pyx":163
* return self
*
* def createHDF5(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -70272,229 +75763,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_18createHDF5(struct PyPetscVi
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":177
- * return self
- *
- * def createNetCDF(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
- * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
- * cdef const_char *cname = NULL
- */
-
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_21createNetCDF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_20createNetCDF[] = "Viewer.createNetCDF(self, name, mode=None, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_21createNetCDF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_name = 0;
- PyObject *__pyx_v_mode = 0;
- PyObject *__pyx_v_comm = 0;
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("createNetCDF (wrapper)", 0);
- {
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_name,&__pyx_n_s_mode,&__pyx_n_s_comm,0};
- PyObject* values[3] = {0,0,0};
- values[1] = ((PyObject *)Py_None);
- values[2] = ((PyObject *)Py_None);
- if (unlikely(__pyx_kwds)) {
- Py_ssize_t kw_args;
- const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
- switch (pos_args) {
- case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
- case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- kw_args = PyDict_Size(__pyx_kwds);
- switch (pos_args) {
- case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
- else goto __pyx_L5_argtuple_error;
- case 1:
- if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
- if (value) { values[1] = value; kw_args--; }
- }
- case 2:
- if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
- if (value) { values[2] = value; kw_args--; }
- }
- }
- if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createNetCDF") < 0)) __PYX_ERR(27, 177, __pyx_L3_error)
- }
- } else {
- switch (PyTuple_GET_SIZE(__pyx_args)) {
- case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
- case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- break;
- default: goto __pyx_L5_argtuple_error;
- }
- }
- __pyx_v_name = values[0];
- __pyx_v_mode = values[1];
- __pyx_v_comm = values[2];
- }
- goto __pyx_L4_argument_unpacking_done;
- __pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createNetCDF", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 177, __pyx_L3_error)
- __pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.Viewer.createNetCDF", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __Pyx_RefNannyFinishContext();
- return NULL;
- __pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_20createNetCDF(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_name, __pyx_v_mode, __pyx_v_comm);
-
- /* function exit code */
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_20createNetCDF(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_mode, PyObject *__pyx_v_comm) {
- MPI_Comm __pyx_v_ccomm;
- const char *__pyx_v_cname;
- PetscFileMode __pyx_v_cmode;
- PetscViewer __pyx_v_newvwr;
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- MPI_Comm __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- PetscFileMode __pyx_t_3;
- int __pyx_t_4;
- __Pyx_RefNannySetupContext("createNetCDF", 0);
- __Pyx_INCREF(__pyx_v_name);
-
- /* "PETSc/Viewer.pyx":178
- *
- * def createNetCDF(self, name, mode=None, comm=None):
- * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
- * cdef const_char *cname = NULL
- * name = str2bytes(name, &cname)
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 178, __pyx_L1_error)
- __pyx_v_ccomm = __pyx_t_1;
-
- /* "PETSc/Viewer.pyx":179
- * def createNetCDF(self, name, mode=None, comm=None):
- * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
- * cdef const_char *cname = NULL # <<<<<<<<<<<<<<
- * name = str2bytes(name, &cname)
- * cdef PetscFileMode cmode = filemode(mode)
- */
- __pyx_v_cname = NULL;
-
- /* "PETSc/Viewer.pyx":180
- * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
- * cdef const_char *cname = NULL
- * name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
- * cdef PetscFileMode cmode = filemode(mode)
- * cdef PetscViewer newvwr = NULL
- */
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 180, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
- __pyx_t_2 = 0;
-
- /* "PETSc/Viewer.pyx":181
- * cdef const_char *cname = NULL
- * name = str2bytes(name, &cname)
- * cdef PetscFileMode cmode = filemode(mode) # <<<<<<<<<<<<<<
- * cdef PetscViewer newvwr = NULL
- * CHKERR( PetscViewerCreate(ccomm, &newvwr) )
- */
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)-1L))) __PYX_ERR(27, 181, __pyx_L1_error)
- __pyx_v_cmode = __pyx_t_3;
-
- /* "PETSc/Viewer.pyx":182
- * name = str2bytes(name, &cname)
- * cdef PetscFileMode cmode = filemode(mode)
- * cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
- * CHKERR( PetscViewerCreate(ccomm, &newvwr) )
- * PetscCLEAR(self.obj); self.vwr = newvwr
- */
- __pyx_v_newvwr = NULL;
-
- /* "PETSc/Viewer.pyx":183
- * cdef PetscFileMode cmode = filemode(mode)
- * cdef PetscViewer newvwr = NULL
- * CHKERR( PetscViewerCreate(ccomm, &newvwr) ) # <<<<<<<<<<<<<<
- * PetscCLEAR(self.obj); self.vwr = newvwr
- * CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERNETCDF) )
- */
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 183, __pyx_L1_error)
-
- /* "PETSc/Viewer.pyx":184
- * cdef PetscViewer newvwr = NULL
- * CHKERR( PetscViewerCreate(ccomm, &newvwr) )
- * PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
- * CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERNETCDF) )
- * CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
- */
- __pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
- __pyx_v_self->vwr = __pyx_v_newvwr;
-
- /* "PETSc/Viewer.pyx":185
- * CHKERR( PetscViewerCreate(ccomm, &newvwr) )
- * PetscCLEAR(self.obj); self.vwr = newvwr
- * CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERNETCDF) ) # <<<<<<<<<<<<<<
- * CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
- * CHKERR( PetscViewerFileSetName(self.vwr, cname) )
- */
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, PETSCVIEWERNETCDF)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 185, __pyx_L1_error)
-
- /* "PETSc/Viewer.pyx":186
- * PetscCLEAR(self.obj); self.vwr = newvwr
- * CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERNETCDF) )
- * CHKERR( PetscViewerFileSetMode(self.vwr, cmode) ) # <<<<<<<<<<<<<<
- * CHKERR( PetscViewerFileSetName(self.vwr, cname) )
- * return self
- */
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 186, __pyx_L1_error)
-
- /* "PETSc/Viewer.pyx":187
- * CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERNETCDF) )
- * CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
- * CHKERR( PetscViewerFileSetName(self.vwr, cname) ) # <<<<<<<<<<<<<<
- * return self
- *
- */
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 187, __pyx_L1_error)
-
- /* "PETSc/Viewer.pyx":188
- * CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
- * CHKERR( PetscViewerFileSetName(self.vwr, cname) )
- * return self # <<<<<<<<<<<<<<
- *
- * def createDraw(self, display=None, title=None,
- */
- __Pyx_XDECREF(__pyx_r);
- __Pyx_INCREF(((PyObject *)__pyx_v_self));
- __pyx_r = ((PyObject *)__pyx_v_self);
- goto __pyx_L0;
-
- /* "PETSc/Viewer.pyx":177
- * return self
- *
- * def createNetCDF(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
- * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
- * cdef const_char *cname = NULL
- */
-
- /* function exit code */
- __pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.Viewer.createNetCDF", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = NULL;
- __pyx_L0:;
- __Pyx_XDECREF(__pyx_v_name);
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-/* "PETSc/Viewer.pyx":190
+/* "PETSc/Viewer.pyx":176
* return self
*
* def createDraw(self, display=None, title=None, # <<<<<<<<<<<<<<
@@ -70503,9 +75772,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_20createNetCDF(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_22createDraw[] = "Viewer.createDraw(self, display=None, title=None, position=None, size=None, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_21createDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_20createDraw[] = "Viewer.createDraw(self, display=None, title=None, position=None, size=None, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_21createDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_display = 0;
PyObject *__pyx_v_title = 0;
PyObject *__pyx_v_position = 0;
@@ -70520,7 +75789,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_
values[0] = ((PyObject *)Py_None);
values[1] = ((PyObject *)Py_None);
- /* "PETSc/Viewer.pyx":191
+ /* "PETSc/Viewer.pyx":177
*
* def createDraw(self, display=None, title=None,
* position=None, size=None, comm=None): # <<<<<<<<<<<<<<
@@ -70535,10 +75804,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -70549,21 +75823,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_display);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_title);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_position);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -70571,15 +75849,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createDraw") < 0)) __PYX_ERR(27, 190, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createDraw") < 0)) __PYX_ERR(27, 176, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -70592,15 +75875,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createDraw", 0, 0, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 190, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createDraw", 0, 0, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 176, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.createDraw", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_display, __pyx_v_title, __pyx_v_position, __pyx_v_size, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_20createDraw(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_display, __pyx_v_title, __pyx_v_position, __pyx_v_size, __pyx_v_comm);
- /* "PETSc/Viewer.pyx":190
+ /* "PETSc/Viewer.pyx":176
* return self
*
* def createDraw(self, display=None, title=None, # <<<<<<<<<<<<<<
@@ -70613,7 +75896,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_20createDraw(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
const char *__pyx_v_cdisplay;
const char *__pyx_v_ctitle;
@@ -70640,17 +75923,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__Pyx_INCREF(__pyx_v_display);
__Pyx_INCREF(__pyx_v_title);
- /* "PETSc/Viewer.pyx":192
+ /* "PETSc/Viewer.pyx":178
* def createDraw(self, display=None, title=None,
* position=None, size=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cdisplay = NULL
* cdef const_char *ctitle = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 192, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 178, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":193
+ /* "PETSc/Viewer.pyx":179
* position=None, size=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cdisplay = NULL # <<<<<<<<<<<<<<
@@ -70659,7 +75942,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
__pyx_v_cdisplay = NULL;
- /* "PETSc/Viewer.pyx":194
+ /* "PETSc/Viewer.pyx":180
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cdisplay = NULL
* cdef const_char *ctitle = NULL # <<<<<<<<<<<<<<
@@ -70668,31 +75951,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
__pyx_v_ctitle = NULL;
- /* "PETSc/Viewer.pyx":195
+ /* "PETSc/Viewer.pyx":181
* cdef const_char *cdisplay = NULL
* cdef const_char *ctitle = NULL
* display = str2bytes(display, &cdisplay) # <<<<<<<<<<<<<<
* title = str2bytes(title, &ctitle)
* cdef int x, y, h, w
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_display, (&__pyx_v_cdisplay)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 195, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_display, (&__pyx_v_cdisplay)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_display, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":196
+ /* "PETSc/Viewer.pyx":182
* cdef const_char *ctitle = NULL
* display = str2bytes(display, &cdisplay)
* title = str2bytes(title, &ctitle) # <<<<<<<<<<<<<<
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_title, (&__pyx_v_ctitle)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 196, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_title, (&__pyx_v_ctitle)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 182, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_title, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":198
+ /* "PETSc/Viewer.pyx":184
* title = str2bytes(title, &ctitle)
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE # <<<<<<<<<<<<<<
@@ -70704,7 +75987,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__pyx_v_h = PETSC_DECIDE;
__pyx_v_w = PETSC_DECIDE;
- /* "PETSc/Viewer.pyx":199
+ /* "PETSc/Viewer.pyx":185
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE
* if position not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -70713,19 +75996,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
__Pyx_INCREF(__pyx_v_position);
__pyx_t_2 = __pyx_v_position;
- __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 199, __pyx_L1_error)
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(27, 199, __pyx_L1_error)
+ __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 185, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(27, 185, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_5) {
} else {
__pyx_t_3 = __pyx_t_5;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_4 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 199, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_NE); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 199, __pyx_L1_error)
+ __pyx_t_6 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_NE); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 185, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(27, 199, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(27, 185, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_3 = __pyx_t_5;
__pyx_L4_bool_binop_done:;
@@ -70733,7 +76016,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__pyx_t_5 = (__pyx_t_3 != 0);
if (__pyx_t_5) {
- /* "PETSc/Viewer.pyx":200
+ /* "PETSc/Viewer.pyx":186
* x = y = h = w = PETSC_DECIDE
* if position not in (None, PETSC_DECIDE):
* x, y = position # <<<<<<<<<<<<<<
@@ -70742,7 +76025,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
if ((likely(PyTuple_CheckExact(__pyx_v_position))) || (PyList_CheckExact(__pyx_v_position))) {
PyObject* sequence = __pyx_v_position;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -70750,9 +76033,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(27, 200, __pyx_L1_error)
+ __PYX_ERR(27, 186, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
@@ -70763,21 +76046,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__Pyx_INCREF(__pyx_t_2);
__Pyx_INCREF(__pyx_t_6);
#else
- __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 200, __pyx_L1_error)
+ __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 200, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_4 = PyObject_GetIter(__pyx_v_position); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 200, __pyx_L1_error)
+ __pyx_t_4 = PyObject_GetIter(__pyx_v_position); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext;
index = 0; __pyx_t_2 = __pyx_t_7(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_2);
index = 1; __pyx_t_6 = __pyx_t_7(__pyx_t_4); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_4), 2) < 0) __PYX_ERR(27, 200, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_4), 2) < 0) __PYX_ERR(27, 186, __pyx_L1_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L7_unpacking_done;
@@ -70785,17 +76068,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(27, 200, __pyx_L1_error)
+ __PYX_ERR(27, 186, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
- __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_2); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 200, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_2); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 186, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_9 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 200, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 186, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_v_x = __pyx_t_8;
__pyx_v_y = __pyx_t_9;
- /* "PETSc/Viewer.pyx":199
+ /* "PETSc/Viewer.pyx":185
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE
* if position not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -70804,7 +76087,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
}
- /* "PETSc/Viewer.pyx":201
+ /* "PETSc/Viewer.pyx":187
* if position not in (None, PETSC_DECIDE):
* x, y = position
* if size not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -70813,19 +76096,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
__Pyx_INCREF(__pyx_v_size);
__pyx_t_6 = __pyx_v_size;
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 201, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(27, 201, __pyx_L1_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_6, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 187, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(27, 187, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
if (__pyx_t_3) {
} else {
__pyx_t_5 = __pyx_t_3;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_2 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 201, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 187, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_4 = PyObject_RichCompare(__pyx_t_6, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 201, __pyx_L1_error)
+ __pyx_t_4 = PyObject_RichCompare(__pyx_t_6, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 187, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(27, 201, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(27, 187, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_5 = __pyx_t_3;
__pyx_L9_bool_binop_done:;
@@ -70833,7 +76116,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__pyx_t_3 = (__pyx_t_5 != 0);
if (__pyx_t_3) {
- /* "PETSc/Viewer.pyx":202
+ /* "PETSc/Viewer.pyx":188
* x, y = position
* if size not in (None, PETSC_DECIDE):
* try: # <<<<<<<<<<<<<<
@@ -70849,7 +76132,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__Pyx_XGOTREF(__pyx_t_12);
/*try:*/ {
- /* "PETSc/Viewer.pyx":203
+ /* "PETSc/Viewer.pyx":189
* if size not in (None, PETSC_DECIDE):
* try:
* w, h = size # <<<<<<<<<<<<<<
@@ -70858,7 +76141,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
if ((likely(PyTuple_CheckExact(__pyx_v_size))) || (PyList_CheckExact(__pyx_v_size))) {
PyObject* sequence = __pyx_v_size;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -70866,9 +76149,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(27, 203, __pyx_L11_error)
+ __PYX_ERR(27, 189, __pyx_L11_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
@@ -70879,39 +76162,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(__pyx_t_4);
#else
- __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 203, __pyx_L11_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 189, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 203, __pyx_L11_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 189, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_4);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_2 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 203, __pyx_L11_error)
+ __pyx_t_2 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 189, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext;
- index = 0; __pyx_t_6 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_6)) goto __pyx_L19_unpacking_failed;
+ index = 0; __pyx_t_6 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_6)) goto __pyx_L17_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
- index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_4)) goto __pyx_L19_unpacking_failed;
+ index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_4)) goto __pyx_L17_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_2), 2) < 0) __PYX_ERR(27, 203, __pyx_L11_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_2), 2) < 0) __PYX_ERR(27, 189, __pyx_L11_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- goto __pyx_L20_unpacking_done;
- __pyx_L19_unpacking_failed:;
+ goto __pyx_L18_unpacking_done;
+ __pyx_L17_unpacking_failed:;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(27, 203, __pyx_L11_error)
- __pyx_L20_unpacking_done:;
+ __PYX_ERR(27, 189, __pyx_L11_error)
+ __pyx_L18_unpacking_done:;
}
- __pyx_t_9 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 203, __pyx_L11_error)
+ __pyx_t_9 = __Pyx_PyInt_As_int(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 189, __pyx_L11_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_4); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 203, __pyx_L11_error)
+ __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_4); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 189, __pyx_L11_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_w = __pyx_t_9;
__pyx_v_h = __pyx_t_8;
- /* "PETSc/Viewer.pyx":202
+ /* "PETSc/Viewer.pyx":188
* x, y = position
* if size not in (None, PETSC_DECIDE):
* try: # <<<<<<<<<<<<<<
@@ -70922,14 +76205,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
- goto __pyx_L18_try_end;
+ goto __pyx_L16_try_end;
__pyx_L11_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":204
+ /* "PETSc/Viewer.pyx":190
* try:
* w, h = size
* except TypeError: # <<<<<<<<<<<<<<
@@ -70939,19 +76221,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError);
if (__pyx_t_8) {
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.createDraw", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_6, &__pyx_t_2) < 0) __PYX_ERR(27, 204, __pyx_L13_except_error)
+ if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_6, &__pyx_t_2) < 0) __PYX_ERR(27, 190, __pyx_L13_except_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GOTREF(__pyx_t_2);
- /* "PETSc/Viewer.pyx":205
+ /* "PETSc/Viewer.pyx":191
* w, h = size
* except TypeError:
* w = h = size # <<<<<<<<<<<<<<
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerDrawOpen(ccomm, cdisplay, ctitle,
*/
- __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_v_size); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 205, __pyx_L13_except_error)
+ __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_v_size); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 191, __pyx_L13_except_error)
__pyx_v_w = __pyx_t_8;
__pyx_v_h = __pyx_t_8;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -70962,29 +76244,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
goto __pyx_L13_except_error;
__pyx_L13_except_error:;
- /* "PETSc/Viewer.pyx":202
+ /* "PETSc/Viewer.pyx":188
* x, y = position
* if size not in (None, PETSC_DECIDE):
* try: # <<<<<<<<<<<<<<
* w, h = size
* except TypeError:
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
__Pyx_XGIVEREF(__pyx_t_12);
__Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
goto __pyx_L1_error;
__pyx_L12_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
__Pyx_XGIVEREF(__pyx_t_12);
__Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
- __pyx_L18_try_end:;
+ __pyx_L16_try_end:;
}
- /* "PETSc/Viewer.pyx":201
+ /* "PETSc/Viewer.pyx":187
* if position not in (None, PETSC_DECIDE):
* x, y = position
* if size not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -70993,7 +76273,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
}
- /* "PETSc/Viewer.pyx":206
+ /* "PETSc/Viewer.pyx":192
* except TypeError:
* w = h = size
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -71002,16 +76282,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":207
+ /* "PETSc/Viewer.pyx":193
* w = h = size
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerDrawOpen(ccomm, cdisplay, ctitle, # <<<<<<<<<<<<<<
* x, y, w, h, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDrawOpen(__pyx_v_ccomm, __pyx_v_cdisplay, __pyx_v_ctitle, __pyx_v_x, __pyx_v_y, __pyx_v_w, __pyx_v_h, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(27, 207, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDrawOpen(__pyx_v_ccomm, __pyx_v_cdisplay, __pyx_v_ctitle, __pyx_v_x, __pyx_v_y, __pyx_v_w, __pyx_v_h, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(27, 193, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":209
+ /* "PETSc/Viewer.pyx":195
* CHKERR( PetscViewerDrawOpen(ccomm, cdisplay, ctitle,
* x, y, w, h, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -71021,7 +76301,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":210
+ /* "PETSc/Viewer.pyx":196
* x, y, w, h, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* return self # <<<<<<<<<<<<<<
@@ -71033,7 +76313,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":190
+ /* "PETSc/Viewer.pyx":176
* return self
*
* def createDraw(self, display=None, title=None, # <<<<<<<<<<<<<<
@@ -71056,7 +76336,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":212
+/* "PETSc/Viewer.pyx":198
* return self
*
* def setType(self, vwr_type): # <<<<<<<<<<<<<<
@@ -71065,9 +76345,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22createDraw(struct PyPetscVi
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_25setType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_24setType[] = "Viewer.setType(self, vwr_type)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_25setType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23setType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_22setType[] = "Viewer.setType(self, vwr_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_23setType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_vwr_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -71080,6 +76360,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_25setType(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71090,7 +76371,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_25setType(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(27, 212, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(27, 198, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -71101,20 +76382,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_25setType(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 212, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 198, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.setType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_24setType(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_vwr_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_22setType(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_vwr_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24setType(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_vwr_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_22setType(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_vwr_type) {
const char* __pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -71123,7 +76404,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24setType(struct PyPetscViewe
__Pyx_RefNannySetupContext("setType", 0);
__Pyx_INCREF(__pyx_v_vwr_type);
- /* "PETSc/Viewer.pyx":213
+ /* "PETSc/Viewer.pyx":199
*
* def setType(self, vwr_type):
* cdef PetscViewerType cval = NULL # <<<<<<<<<<<<<<
@@ -71132,28 +76413,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24setType(struct PyPetscViewe
*/
__pyx_v_cval = NULL;
- /* "PETSc/Viewer.pyx":214
+ /* "PETSc/Viewer.pyx":200
* def setType(self, vwr_type):
* cdef PetscViewerType cval = NULL
* vwr_type = str2bytes(vwr_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerSetType(self.vwr, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_vwr_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 214, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_vwr_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 200, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_vwr_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Viewer.pyx":215
+ /* "PETSc/Viewer.pyx":201
* cdef PetscViewerType cval = NULL
* vwr_type = str2bytes(vwr_type, &cval)
* CHKERR( PetscViewerSetType(self.vwr, cval) ) # <<<<<<<<<<<<<<
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(27, 215, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->vwr, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 201, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":212
+ /* "PETSc/Viewer.pyx":198
* return self
*
* def setType(self, vwr_type): # <<<<<<<<<<<<<<
@@ -71175,7 +76456,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24setType(struct PyPetscViewe
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":217
+/* "PETSc/Viewer.pyx":203
* CHKERR( PetscViewerSetType(self.vwr, cval) )
*
* def getType(self): # <<<<<<<<<<<<<<
@@ -71184,23 +76465,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24setType(struct PyPetscViewe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_27getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_26getType[] = "Viewer.getType(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_27getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_25getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_24getType[] = "Viewer.getType(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_25getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getType (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getType", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getType", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(((struct PyPetscViewerObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_24getType(((struct PyPetscViewerObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(struct PyPetscViewerObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_24getType(struct PyPetscViewerObject *__pyx_v_self) {
const char* __pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -71208,7 +76489,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(struct PyPetscViewe
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getType", 0);
- /* "PETSc/Viewer.pyx":218
+ /* "PETSc/Viewer.pyx":204
*
* def getType(self):
* cdef PetscViewerType cval = NULL # <<<<<<<<<<<<<<
@@ -71217,16 +76498,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(struct PyPetscViewe
*/
__pyx_v_cval = NULL;
- /* "PETSc/Viewer.pyx":219
+ /* "PETSc/Viewer.pyx":205
* def getType(self):
* cdef PetscViewerType cval = NULL
* CHKERR( PetscViewerGetType(self.vwr, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerGetType(__pyx_v_self->vwr, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 219, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerGetType(__pyx_v_self->vwr, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 205, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":220
+ /* "PETSc/Viewer.pyx":206
* cdef PetscViewerType cval = NULL
* CHKERR( PetscViewerGetType(self.vwr, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -71234,13 +76515,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(struct PyPetscViewe
* def getFormat(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 220, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":217
+ /* "PETSc/Viewer.pyx":203
* CHKERR( PetscViewerSetType(self.vwr, cval) )
*
* def getType(self): # <<<<<<<<<<<<<<
@@ -71259,7 +76540,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(struct PyPetscViewe
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":222
+/* "PETSc/Viewer.pyx":208
* return bytes2str(cval)
*
* def getFormat(self): # <<<<<<<<<<<<<<
@@ -71268,23 +76549,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getType(struct PyPetscViewe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_29getFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_28getFormat[] = "Viewer.getFormat(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_29getFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_27getFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_26getFormat[] = "Viewer.getFormat(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_27getFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getFormat (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getFormat", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getFormat", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(((struct PyPetscViewerObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_26getFormat(((struct PyPetscViewerObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(struct PyPetscViewerObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_26getFormat(struct PyPetscViewerObject *__pyx_v_self) {
PetscViewerFormat __pyx_v_format;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -71292,7 +76573,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(struct PyPetscVie
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getFormat", 0);
- /* "PETSc/Viewer.pyx":223
+ /* "PETSc/Viewer.pyx":209
*
* def getFormat(self):
* cdef PetscViewerFormat format = PETSC_VIEWER_DEFAULT # <<<<<<<<<<<<<<
@@ -71301,16 +76582,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(struct PyPetscVie
*/
__pyx_v_format = PETSC_VIEWER_DEFAULT;
- /* "PETSc/Viewer.pyx":224
+ /* "PETSc/Viewer.pyx":210
* def getFormat(self):
* cdef PetscViewerFormat format = PETSC_VIEWER_DEFAULT
* CHKERR( PetscViewerGetFormat(self.vwr, &format) ) # <<<<<<<<<<<<<<
* return format
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerGetFormat(__pyx_v_self->vwr, (&__pyx_v_format))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 224, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerGetFormat(__pyx_v_self->vwr, (&__pyx_v_format))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 210, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":225
+ /* "PETSc/Viewer.pyx":211
* cdef PetscViewerFormat format = PETSC_VIEWER_DEFAULT
* CHKERR( PetscViewerGetFormat(self.vwr, &format) )
* return format # <<<<<<<<<<<<<<
@@ -71318,13 +76599,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(struct PyPetscVie
* def pushFormat(self, format):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscViewerFormat(__pyx_v_format); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 225, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_PetscViewerFormat(__pyx_v_format); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 211, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":222
+ /* "PETSc/Viewer.pyx":208
* return bytes2str(cval)
*
* def getFormat(self): # <<<<<<<<<<<<<<
@@ -71343,7 +76624,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(struct PyPetscVie
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":227
+/* "PETSc/Viewer.pyx":213
* return format
*
* def pushFormat(self, format): # <<<<<<<<<<<<<<
@@ -71352,9 +76633,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28getFormat(struct PyPetscVie
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_31pushFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_30pushFormat[] = "Viewer.pushFormat(self, format)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_31pushFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_29pushFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_28pushFormat[] = "Viewer.pushFormat(self, format)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_29pushFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_format = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -71367,6 +76648,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_31pushFormat(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71377,7 +76659,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_31pushFormat(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "pushFormat") < 0)) __PYX_ERR(27, 227, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "pushFormat") < 0)) __PYX_ERR(27, 213, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -71388,37 +76670,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_31pushFormat(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("pushFormat", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 227, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("pushFormat", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 213, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.pushFormat", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_30pushFormat(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_format);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_28pushFormat(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_format);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_30pushFormat(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_format) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_28pushFormat(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_format) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PetscViewerFormat __pyx_t_1;
int __pyx_t_2;
__Pyx_RefNannySetupContext("pushFormat", 0);
- /* "PETSc/Viewer.pyx":228
+ /* "PETSc/Viewer.pyx":214
*
* def pushFormat(self, format):
* CHKERR( PetscViewerPushFormat(self.vwr, format) ) # <<<<<<<<<<<<<<
*
* def popFormat(self):
*/
- __pyx_t_1 = ((PetscViewerFormat)__Pyx_PyInt_As_PetscViewerFormat(__pyx_v_format)); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 228, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerPushFormat(__pyx_v_self->vwr, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(27, 228, __pyx_L1_error)
+ __pyx_t_1 = ((PetscViewerFormat)__Pyx_PyInt_As_PetscViewerFormat(__pyx_v_format)); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 214, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerPushFormat(__pyx_v_self->vwr, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 214, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":227
+ /* "PETSc/Viewer.pyx":213
* return format
*
* def pushFormat(self, format): # <<<<<<<<<<<<<<
@@ -71438,7 +76720,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_30pushFormat(struct PyPetscVi
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":230
+/* "PETSc/Viewer.pyx":216
* CHKERR( PetscViewerPushFormat(self.vwr, format) )
*
* def popFormat(self): # <<<<<<<<<<<<<<
@@ -71447,38 +76729,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_30pushFormat(struct PyPetscVi
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_33popFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_32popFormat[] = "Viewer.popFormat(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_33popFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_31popFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_30popFormat[] = "Viewer.popFormat(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_31popFormat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("popFormat (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("popFormat", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "popFormat", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_32popFormat(((struct PyPetscViewerObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_30popFormat(((struct PyPetscViewerObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_32popFormat(struct PyPetscViewerObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_30popFormat(struct PyPetscViewerObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("popFormat", 0);
- /* "PETSc/Viewer.pyx":231
+ /* "PETSc/Viewer.pyx":217
*
* def popFormat(self):
* CHKERR( PetscViewerPopFormat(self.vwr) ) # <<<<<<<<<<<<<<
*
* @classmethod
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerPopFormat(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 231, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerPopFormat(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 217, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":230
+ /* "PETSc/Viewer.pyx":216
* CHKERR( PetscViewerPushFormat(self.vwr, format) )
*
* def popFormat(self): # <<<<<<<<<<<<<<
@@ -71498,7 +76780,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_32popFormat(struct PyPetscVie
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":234
+/* "PETSc/Viewer.pyx":220
*
* @classmethod
* def STDOUT(cls, comm=None): # <<<<<<<<<<<<<<
@@ -71507,9 +76789,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_32popFormat(struct PyPetscVie
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDOUT(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_34STDOUT[] = "Viewer.STDOUT(type cls, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDOUT(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_33STDOUT(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_32STDOUT[] = "Viewer.STDOUT(type cls, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_33STDOUT(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -71523,6 +76805,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDOUT(PyObject *__pyx_v_cl
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71535,11 +76818,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDOUT(PyObject *__pyx_v_cl
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "STDOUT") < 0)) __PYX_ERR(27, 234, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "STDOUT") < 0)) __PYX_ERR(27, 220, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71548,20 +76832,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDOUT(PyObject *__pyx_v_cl
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("STDOUT", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 234, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("STDOUT", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 220, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.STDOUT", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_32STDOUT(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_32STDOUT(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
struct PyPetscViewerObject *__pyx_v_viewer = 0;
PyObject *__pyx_r = NULL;
@@ -71571,39 +76855,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(CYTHON_UNUSED PyType
PetscViewer __pyx_t_3;
__Pyx_RefNannySetupContext("STDOUT", 0);
- /* "PETSc/Viewer.pyx":235
+ /* "PETSc/Viewer.pyx":221
* @classmethod
* def STDOUT(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_STDOUT_(ccomm)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 235, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 221, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":236
+ /* "PETSc/Viewer.pyx":222
* def STDOUT(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer() # <<<<<<<<<<<<<<
* viewer.vwr = PETSC_VIEWER_STDOUT_(ccomm)
* PetscINCREF(viewer.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 236, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_viewer = ((struct PyPetscViewerObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":237
+ /* "PETSc/Viewer.pyx":223
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_STDOUT_(ccomm) # <<<<<<<<<<<<<<
* PetscINCREF(viewer.obj)
* return viewer
*/
- __pyx_t_3 = PETSC_VIEWER_STDOUT_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == NULL && PyErr_Occurred())) __PYX_ERR(27, 237, __pyx_L1_error)
+ __pyx_t_3 = PETSC_VIEWER_STDOUT_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == ((PetscViewer)NULL) && PyErr_Occurred())) __PYX_ERR(27, 223, __pyx_L1_error)
__pyx_v_viewer->vwr = __pyx_t_3;
- /* "PETSc/Viewer.pyx":238
+ /* "PETSc/Viewer.pyx":224
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_STDOUT_(ccomm)
* PetscINCREF(viewer.obj) # <<<<<<<<<<<<<<
@@ -71612,7 +76896,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(CYTHON_UNUSED PyType
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_viewer->__pyx_base.obj);
- /* "PETSc/Viewer.pyx":239
+ /* "PETSc/Viewer.pyx":225
* viewer.vwr = PETSC_VIEWER_STDOUT_(ccomm)
* PetscINCREF(viewer.obj)
* return viewer # <<<<<<<<<<<<<<
@@ -71624,7 +76908,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(CYTHON_UNUSED PyType
__pyx_r = ((PyObject *)__pyx_v_viewer);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":234
+ /* "PETSc/Viewer.pyx":220
*
* @classmethod
* def STDOUT(cls, comm=None): # <<<<<<<<<<<<<<
@@ -71644,7 +76928,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(CYTHON_UNUSED PyType
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":242
+/* "PETSc/Viewer.pyx":228
*
* @classmethod
* def STDERR(cls, comm=None): # <<<<<<<<<<<<<<
@@ -71653,9 +76937,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDOUT(CYTHON_UNUSED PyType
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_37STDERR(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_36STDERR[] = "Viewer.STDERR(type cls, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_37STDERR(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDERR(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_34STDERR[] = "Viewer.STDERR(type cls, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDERR(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -71669,6 +76953,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_37STDERR(PyObject *__pyx_v_cl
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71681,11 +76966,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_37STDERR(PyObject *__pyx_v_cl
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "STDERR") < 0)) __PYX_ERR(27, 242, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "STDERR") < 0)) __PYX_ERR(27, 228, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71694,20 +76980,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_37STDERR(PyObject *__pyx_v_cl
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("STDERR", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 242, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("STDERR", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 228, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.STDERR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_34STDERR(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_34STDERR(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
struct PyPetscViewerObject *__pyx_v_viewer = 0;
PyObject *__pyx_r = NULL;
@@ -71717,39 +77003,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(CYTHON_UNUSED PyType
PetscViewer __pyx_t_3;
__Pyx_RefNannySetupContext("STDERR", 0);
- /* "PETSc/Viewer.pyx":243
+ /* "PETSc/Viewer.pyx":229
* @classmethod
* def STDERR(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_STDERR_(ccomm)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 243, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 229, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":244
+ /* "PETSc/Viewer.pyx":230
* def STDERR(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer() # <<<<<<<<<<<<<<
* viewer.vwr = PETSC_VIEWER_STDERR_(ccomm)
* PetscINCREF(viewer.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 244, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_viewer = ((struct PyPetscViewerObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":245
+ /* "PETSc/Viewer.pyx":231
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_STDERR_(ccomm) # <<<<<<<<<<<<<<
* PetscINCREF(viewer.obj)
* return viewer
*/
- __pyx_t_3 = PETSC_VIEWER_STDERR_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == NULL && PyErr_Occurred())) __PYX_ERR(27, 245, __pyx_L1_error)
+ __pyx_t_3 = PETSC_VIEWER_STDERR_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == ((PetscViewer)NULL) && PyErr_Occurred())) __PYX_ERR(27, 231, __pyx_L1_error)
__pyx_v_viewer->vwr = __pyx_t_3;
- /* "PETSc/Viewer.pyx":246
+ /* "PETSc/Viewer.pyx":232
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_STDERR_(ccomm)
* PetscINCREF(viewer.obj) # <<<<<<<<<<<<<<
@@ -71758,7 +77044,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(CYTHON_UNUSED PyType
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_viewer->__pyx_base.obj);
- /* "PETSc/Viewer.pyx":247
+ /* "PETSc/Viewer.pyx":233
* viewer.vwr = PETSC_VIEWER_STDERR_(ccomm)
* PetscINCREF(viewer.obj)
* return viewer # <<<<<<<<<<<<<<
@@ -71770,7 +77056,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(CYTHON_UNUSED PyType
__pyx_r = ((PyObject *)__pyx_v_viewer);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":242
+ /* "PETSc/Viewer.pyx":228
*
* @classmethod
* def STDERR(cls, comm=None): # <<<<<<<<<<<<<<
@@ -71790,7 +77076,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(CYTHON_UNUSED PyType
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":250
+/* "PETSc/Viewer.pyx":236
*
* @classmethod
* def ASCII(cls, name, comm=None): # <<<<<<<<<<<<<<
@@ -71799,9 +77085,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36STDERR(CYTHON_UNUSED PyType
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39ASCII(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_38ASCII[] = "Viewer.ASCII(type cls, name, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39ASCII(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_37ASCII(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_36ASCII[] = "Viewer.ASCII(type cls, name, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_37ASCII(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
@@ -71816,7 +77102,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39ASCII(PyObject *__pyx_v_cls
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71825,6 +77113,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39ASCII(PyObject *__pyx_v_cls
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -71832,11 +77121,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39ASCII(PyObject *__pyx_v_cls
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ASCII") < 0)) __PYX_ERR(27, 250, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ASCII") < 0)) __PYX_ERR(27, 236, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -71847,20 +77137,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39ASCII(PyObject *__pyx_v_cls
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("ASCII", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 250, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("ASCII", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 236, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.ASCII", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(((PyTypeObject*)__pyx_v_cls), __pyx_v_name, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_36ASCII(((PyTypeObject*)__pyx_v_cls), __pyx_v_name, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_name, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_36ASCII(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_name, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
const char *__pyx_v_cname;
struct PyPetscViewerObject *__pyx_v_viewer = 0;
@@ -71872,17 +77162,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(CYTHON_UNUSED PyTypeO
__Pyx_RefNannySetupContext("ASCII", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":251
+ /* "PETSc/Viewer.pyx":237
* @classmethod
* def ASCII(cls, name, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 251, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 237, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":252
+ /* "PETSc/Viewer.pyx":238
* def ASCII(cls, name, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -71891,40 +77181,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(CYTHON_UNUSED PyTypeO
*/
__pyx_v_cname = NULL;
- /* "PETSc/Viewer.pyx":253
+ /* "PETSc/Viewer.pyx":239
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef Viewer viewer = Viewer()
* CHKERR( PetscViewerASCIIOpen(ccomm, cname, &viewer.vwr) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 253, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":254
+ /* "PETSc/Viewer.pyx":240
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef Viewer viewer = Viewer() # <<<<<<<<<<<<<<
* CHKERR( PetscViewerASCIIOpen(ccomm, cname, &viewer.vwr) )
* return viewer
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 254, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 240, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_viewer = ((struct PyPetscViewerObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":255
+ /* "PETSc/Viewer.pyx":241
* name = str2bytes(name, &cname)
* cdef Viewer viewer = Viewer()
* CHKERR( PetscViewerASCIIOpen(ccomm, cname, &viewer.vwr) ) # <<<<<<<<<<<<<<
* return viewer
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIOpen(__pyx_v_ccomm, __pyx_v_cname, (&__pyx_v_viewer->vwr))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(27, 255, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIOpen(__pyx_v_ccomm, __pyx_v_cname, (&__pyx_v_viewer->vwr))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(27, 241, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":256
+ /* "PETSc/Viewer.pyx":242
* cdef Viewer viewer = Viewer()
* CHKERR( PetscViewerASCIIOpen(ccomm, cname, &viewer.vwr) )
* return viewer # <<<<<<<<<<<<<<
@@ -71936,7 +77226,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(CYTHON_UNUSED PyTypeO
__pyx_r = ((PyObject *)__pyx_v_viewer);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":250
+ /* "PETSc/Viewer.pyx":236
*
* @classmethod
* def ASCII(cls, name, comm=None): # <<<<<<<<<<<<<<
@@ -71957,7 +77247,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(CYTHON_UNUSED PyTypeO
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":259
+/* "PETSc/Viewer.pyx":245
*
* @classmethod
* def BINARY(cls, comm=None): # <<<<<<<<<<<<<<
@@ -71966,9 +77256,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38ASCII(CYTHON_UNUSED PyTypeO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_41BINARY(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_40BINARY[] = "Viewer.BINARY(type cls, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_41BINARY(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39BINARY(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_38BINARY[] = "Viewer.BINARY(type cls, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_39BINARY(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -71982,6 +77272,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_41BINARY(PyObject *__pyx_v_cl
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -71994,11 +77285,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_41BINARY(PyObject *__pyx_v_cl
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "BINARY") < 0)) __PYX_ERR(27, 259, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "BINARY") < 0)) __PYX_ERR(27, 245, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -72007,20 +77299,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_41BINARY(PyObject *__pyx_v_cl
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("BINARY", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 259, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("BINARY", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 245, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.BINARY", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_38BINARY(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_38BINARY(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
struct PyPetscViewerObject *__pyx_v_viewer = 0;
PyObject *__pyx_r = NULL;
@@ -72030,39 +77322,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(CYTHON_UNUSED PyType
PetscViewer __pyx_t_3;
__Pyx_RefNannySetupContext("BINARY", 0);
- /* "PETSc/Viewer.pyx":260
+ /* "PETSc/Viewer.pyx":246
* @classmethod
* def BINARY(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_BINARY_(ccomm)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 260, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 246, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":261
+ /* "PETSc/Viewer.pyx":247
* def BINARY(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer() # <<<<<<<<<<<<<<
* viewer.vwr = PETSC_VIEWER_BINARY_(ccomm)
* PetscINCREF(viewer.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 261, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_viewer = ((struct PyPetscViewerObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":262
+ /* "PETSc/Viewer.pyx":248
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_BINARY_(ccomm) # <<<<<<<<<<<<<<
* PetscINCREF(viewer.obj)
* return viewer
*/
- __pyx_t_3 = PETSC_VIEWER_BINARY_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == NULL && PyErr_Occurred())) __PYX_ERR(27, 262, __pyx_L1_error)
+ __pyx_t_3 = PETSC_VIEWER_BINARY_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == ((PetscViewer)NULL) && PyErr_Occurred())) __PYX_ERR(27, 248, __pyx_L1_error)
__pyx_v_viewer->vwr = __pyx_t_3;
- /* "PETSc/Viewer.pyx":263
+ /* "PETSc/Viewer.pyx":249
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_BINARY_(ccomm)
* PetscINCREF(viewer.obj) # <<<<<<<<<<<<<<
@@ -72071,7 +77363,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(CYTHON_UNUSED PyType
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_viewer->__pyx_base.obj);
- /* "PETSc/Viewer.pyx":264
+ /* "PETSc/Viewer.pyx":250
* viewer.vwr = PETSC_VIEWER_BINARY_(ccomm)
* PetscINCREF(viewer.obj)
* return viewer # <<<<<<<<<<<<<<
@@ -72083,7 +77375,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(CYTHON_UNUSED PyType
__pyx_r = ((PyObject *)__pyx_v_viewer);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":259
+ /* "PETSc/Viewer.pyx":245
*
* @classmethod
* def BINARY(cls, comm=None): # <<<<<<<<<<<<<<
@@ -72103,7 +77395,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(CYTHON_UNUSED PyType
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":267
+/* "PETSc/Viewer.pyx":253
*
* @classmethod
* def DRAW(cls, comm=None): # <<<<<<<<<<<<<<
@@ -72112,9 +77404,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40BINARY(CYTHON_UNUSED PyType
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_43DRAW(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_42DRAW[] = "Viewer.DRAW(type cls, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_43DRAW(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_41DRAW(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_40DRAW[] = "Viewer.DRAW(type cls, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_41DRAW(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -72128,6 +77420,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_43DRAW(PyObject *__pyx_v_cls,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -72140,11 +77433,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_43DRAW(PyObject *__pyx_v_cls,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "DRAW") < 0)) __PYX_ERR(27, 267, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "DRAW") < 0)) __PYX_ERR(27, 253, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -72153,20 +77447,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_43DRAW(PyObject *__pyx_v_cls,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("DRAW", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 267, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("DRAW", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 253, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.DRAW", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_42DRAW(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_40DRAW(((PyTypeObject*)__pyx_v_cls), __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42DRAW(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_40DRAW(CYTHON_UNUSED PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
struct PyPetscViewerObject *__pyx_v_viewer = 0;
PyObject *__pyx_r = NULL;
@@ -72176,39 +77470,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42DRAW(CYTHON_UNUSED PyTypeOb
PetscViewer __pyx_t_3;
__Pyx_RefNannySetupContext("DRAW", 0);
- /* "PETSc/Viewer.pyx":268
+ /* "PETSc/Viewer.pyx":254
* @classmethod
* def DRAW(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_DRAW_(ccomm)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 268, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 254, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":269
+ /* "PETSc/Viewer.pyx":255
* def DRAW(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer() # <<<<<<<<<<<<<<
* viewer.vwr = PETSC_VIEWER_DRAW_(ccomm)
* PetscINCREF(viewer.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 269, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 255, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_viewer = ((struct PyPetscViewerObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":270
+ /* "PETSc/Viewer.pyx":256
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_DRAW_(ccomm) # <<<<<<<<<<<<<<
* PetscINCREF(viewer.obj)
* return viewer
*/
- __pyx_t_3 = PETSC_VIEWER_DRAW_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == NULL && PyErr_Occurred())) __PYX_ERR(27, 270, __pyx_L1_error)
+ __pyx_t_3 = PETSC_VIEWER_DRAW_(__pyx_v_ccomm); if (unlikely(__pyx_t_3 == ((PetscViewer)NULL) && PyErr_Occurred())) __PYX_ERR(27, 256, __pyx_L1_error)
__pyx_v_viewer->vwr = __pyx_t_3;
- /* "PETSc/Viewer.pyx":271
+ /* "PETSc/Viewer.pyx":257
* cdef Viewer viewer = Viewer()
* viewer.vwr = PETSC_VIEWER_DRAW_(ccomm)
* PetscINCREF(viewer.obj) # <<<<<<<<<<<<<<
@@ -72217,19 +77511,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42DRAW(CYTHON_UNUSED PyTypeOb
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_viewer->__pyx_base.obj);
- /* "PETSc/Viewer.pyx":272
+ /* "PETSc/Viewer.pyx":258
* viewer.vwr = PETSC_VIEWER_DRAW_(ccomm)
* PetscINCREF(viewer.obj)
* return viewer # <<<<<<<<<<<<<<
*
- * # --- methods specific to file viewers ---
+ * # --- ASCII viewers ---
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_viewer));
__pyx_r = ((PyObject *)__pyx_v_viewer);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":267
+ /* "PETSc/Viewer.pyx":253
*
* @classmethod
* def DRAW(cls, comm=None): # <<<<<<<<<<<<<<
@@ -72249,7 +77543,995 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42DRAW(CYTHON_UNUSED PyTypeOb
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":276
+/* "PETSc/Viewer.pyx":262
+ * # --- ASCII viewers ---
+ *
+ * def setASCIITab(self, tabs): # <<<<<<<<<<<<<<
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIISetTab(self.vwr, ctabs) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_43setASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_42setASCIITab[] = "Viewer.setASCIITab(self, tabs)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_43setASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_tabs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setASCIITab (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tabs,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tabs)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASCIITab") < 0)) __PYX_ERR(27, 262, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_tabs = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setASCIITab", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 262, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.setASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_42setASCIITab(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_tabs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42setASCIITab(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_tabs) {
+ PetscInt __pyx_v_ctabs;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setASCIITab", 0);
+
+ /* "PETSc/Viewer.pyx":263
+ *
+ * def setASCIITab(self, tabs):
+ * cdef PetscInt ctabs = asInt(tabs) # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIISetTab(self.vwr, ctabs) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_tabs); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(27, 263, __pyx_L1_error)
+ __pyx_v_ctabs = __pyx_t_1;
+
+ /* "PETSc/Viewer.pyx":264
+ * def setASCIITab(self, tabs):
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIISetTab(self.vwr, ctabs) ) # <<<<<<<<<<<<<<
+ *
+ * def getASCIITab(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIISetTab(__pyx_v_self->vwr, __pyx_v_ctabs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 264, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":262
+ * # --- ASCII viewers ---
+ *
+ * def setASCIITab(self, tabs): # <<<<<<<<<<<<<<
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIISetTab(self.vwr, ctabs) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.setASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":266
+ * CHKERR( PetscViewerASCIISetTab(self.vwr, ctabs) )
+ *
+ * def getASCIITab(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt tabs = 0
+ * CHKERR( PetscViewerASCIIGetTab(self.vwr, &tabs) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_45getASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_44getASCIITab[] = "Viewer.getASCIITab(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_45getASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getASCIITab (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getASCIITab", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getASCIITab", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_44getASCIITab(((struct PyPetscViewerObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_44getASCIITab(struct PyPetscViewerObject *__pyx_v_self) {
+ PetscInt __pyx_v_tabs;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getASCIITab", 0);
+
+ /* "PETSc/Viewer.pyx":267
+ *
+ * def getASCIITab(self):
+ * cdef PetscInt tabs = 0 # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIGetTab(self.vwr, &tabs) )
+ * return toInt(tabs)
+ */
+ __pyx_v_tabs = 0;
+
+ /* "PETSc/Viewer.pyx":268
+ * def getASCIITab(self):
+ * cdef PetscInt tabs = 0
+ * CHKERR( PetscViewerASCIIGetTab(self.vwr, &tabs) ) # <<<<<<<<<<<<<<
+ * return toInt(tabs)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIGetTab(__pyx_v_self->vwr, (&__pyx_v_tabs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 268, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":269
+ * cdef PetscInt tabs = 0
+ * CHKERR( PetscViewerASCIIGetTab(self.vwr, &tabs) )
+ * return toInt(tabs) # <<<<<<<<<<<<<<
+ *
+ * def addASCIITab(self, tabs):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_tabs); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 269, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/Viewer.pyx":266
+ * CHKERR( PetscViewerASCIISetTab(self.vwr, ctabs) )
+ *
+ * def getASCIITab(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt tabs = 0
+ * CHKERR( PetscViewerASCIIGetTab(self.vwr, &tabs) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.getASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":271
+ * return toInt(tabs)
+ *
+ * def addASCIITab(self, tabs): # <<<<<<<<<<<<<<
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIIAddTab(self.vwr, ctabs) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_47addASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_46addASCIITab[] = "Viewer.addASCIITab(self, tabs)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_47addASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_tabs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("addASCIITab (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tabs,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tabs)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "addASCIITab") < 0)) __PYX_ERR(27, 271, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_tabs = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("addASCIITab", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 271, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.addASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_46addASCIITab(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_tabs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_46addASCIITab(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_tabs) {
+ PetscInt __pyx_v_ctabs;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("addASCIITab", 0);
+
+ /* "PETSc/Viewer.pyx":272
+ *
+ * def addASCIITab(self, tabs):
+ * cdef PetscInt ctabs = asInt(tabs) # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIAddTab(self.vwr, ctabs) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_tabs); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(27, 272, __pyx_L1_error)
+ __pyx_v_ctabs = __pyx_t_1;
+
+ /* "PETSc/Viewer.pyx":273
+ * def addASCIITab(self, tabs):
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIIAddTab(self.vwr, ctabs) ) # <<<<<<<<<<<<<<
+ *
+ * def subtractASCIITab(self, tabs):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIAddTab(__pyx_v_self->vwr, __pyx_v_ctabs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 273, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":271
+ * return toInt(tabs)
+ *
+ * def addASCIITab(self, tabs): # <<<<<<<<<<<<<<
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIIAddTab(self.vwr, ctabs) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.addASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":275
+ * CHKERR( PetscViewerASCIIAddTab(self.vwr, ctabs) )
+ *
+ * def subtractASCIITab(self, tabs): # <<<<<<<<<<<<<<
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIISubtractTab(self.vwr, ctabs) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_49subtractASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_48subtractASCIITab[] = "Viewer.subtractASCIITab(self, tabs)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_49subtractASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_tabs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("subtractASCIITab (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tabs,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tabs)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "subtractASCIITab") < 0)) __PYX_ERR(27, 275, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_tabs = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("subtractASCIITab", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 275, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.subtractASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_48subtractASCIITab(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_tabs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48subtractASCIITab(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_tabs) {
+ PetscInt __pyx_v_ctabs;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("subtractASCIITab", 0);
+
+ /* "PETSc/Viewer.pyx":276
+ *
+ * def subtractASCIITab(self, tabs):
+ * cdef PetscInt ctabs = asInt(tabs) # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIISubtractTab(self.vwr, ctabs) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_tabs); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(27, 276, __pyx_L1_error)
+ __pyx_v_ctabs = __pyx_t_1;
+
+ /* "PETSc/Viewer.pyx":277
+ * def subtractASCIITab(self, tabs):
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIISubtractTab(self.vwr, ctabs) ) # <<<<<<<<<<<<<<
+ *
+ * def pushASCIISynchronized(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIISubtractTab(__pyx_v_self->vwr, __pyx_v_ctabs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 277, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":275
+ * CHKERR( PetscViewerASCIIAddTab(self.vwr, ctabs) )
+ *
+ * def subtractASCIITab(self, tabs): # <<<<<<<<<<<<<<
+ * cdef PetscInt ctabs = asInt(tabs)
+ * CHKERR( PetscViewerASCIISubtractTab(self.vwr, ctabs) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.subtractASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":279
+ * CHKERR( PetscViewerASCIISubtractTab(self.vwr, ctabs) )
+ *
+ * def pushASCIISynchronized(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPushSynchronized(self.vwr) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_51pushASCIISynchronized(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_50pushASCIISynchronized[] = "Viewer.pushASCIISynchronized(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_51pushASCIISynchronized(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("pushASCIISynchronized (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("pushASCIISynchronized", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "pushASCIISynchronized", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_50pushASCIISynchronized(((struct PyPetscViewerObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50pushASCIISynchronized(struct PyPetscViewerObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("pushASCIISynchronized", 0);
+
+ /* "PETSc/Viewer.pyx":280
+ *
+ * def pushASCIISynchronized(self):
+ * CHKERR( PetscViewerASCIIPushSynchronized(self.vwr) ) # <<<<<<<<<<<<<<
+ *
+ * def popASCIISynchronized(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIPushSynchronized(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 280, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":279
+ * CHKERR( PetscViewerASCIISubtractTab(self.vwr, ctabs) )
+ *
+ * def pushASCIISynchronized(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPushSynchronized(self.vwr) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.pushASCIISynchronized", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":282
+ * CHKERR( PetscViewerASCIIPushSynchronized(self.vwr) )
+ *
+ * def popASCIISynchronized(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPopSynchronized(self.vwr) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_53popASCIISynchronized(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_52popASCIISynchronized[] = "Viewer.popASCIISynchronized(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_53popASCIISynchronized(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("popASCIISynchronized (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("popASCIISynchronized", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "popASCIISynchronized", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_52popASCIISynchronized(((struct PyPetscViewerObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52popASCIISynchronized(struct PyPetscViewerObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("popASCIISynchronized", 0);
+
+ /* "PETSc/Viewer.pyx":283
+ *
+ * def popASCIISynchronized(self):
+ * CHKERR( PetscViewerASCIIPopSynchronized(self.vwr) ) # <<<<<<<<<<<<<<
+ *
+ * def pushASCIITab(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIPopSynchronized(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 283, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":282
+ * CHKERR( PetscViewerASCIIPushSynchronized(self.vwr) )
+ *
+ * def popASCIISynchronized(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPopSynchronized(self.vwr) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.popASCIISynchronized", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":285
+ * CHKERR( PetscViewerASCIIPopSynchronized(self.vwr) )
+ *
+ * def pushASCIITab(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPushTab(self.vwr) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55pushASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_54pushASCIITab[] = "Viewer.pushASCIITab(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55pushASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("pushASCIITab (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("pushASCIITab", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "pushASCIITab", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_54pushASCIITab(((struct PyPetscViewerObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54pushASCIITab(struct PyPetscViewerObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("pushASCIITab", 0);
+
+ /* "PETSc/Viewer.pyx":286
+ *
+ * def pushASCIITab(self):
+ * CHKERR( PetscViewerASCIIPushTab(self.vwr) ) # <<<<<<<<<<<<<<
+ *
+ * def popASCIITab(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIPushTab(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 286, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":285
+ * CHKERR( PetscViewerASCIIPopSynchronized(self.vwr) )
+ *
+ * def pushASCIITab(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPushTab(self.vwr) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.pushASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":288
+ * CHKERR( PetscViewerASCIIPushTab(self.vwr) )
+ *
+ * def popASCIITab(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPopTab(self.vwr) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_57popASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_56popASCIITab[] = "Viewer.popASCIITab(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_57popASCIITab(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("popASCIITab (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("popASCIITab", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "popASCIITab", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_56popASCIITab(((struct PyPetscViewerObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_56popASCIITab(struct PyPetscViewerObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("popASCIITab", 0);
+
+ /* "PETSc/Viewer.pyx":289
+ *
+ * def popASCIITab(self):
+ * CHKERR( PetscViewerASCIIPopTab(self.vwr) ) # <<<<<<<<<<<<<<
+ *
+ * def useASCIITabs(self, flag):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIPopTab(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 289, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":288
+ * CHKERR( PetscViewerASCIIPushTab(self.vwr) )
+ *
+ * def popASCIITab(self): # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPopTab(self.vwr) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.popASCIITab", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":291
+ * CHKERR( PetscViewerASCIIPopTab(self.vwr) )
+ *
+ * def useASCIITabs(self, flag): # <<<<<<<<<<<<<<
+ * cdef PetscBool flg = flag
+ * CHKERR( PetscViewerASCIIUseTabs(self.vwr, flg) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_59useASCIITabs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_58useASCIITabs[] = "Viewer.useASCIITabs(self, flag)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_59useASCIITabs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_flag = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("useASCIITabs (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_flag,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_flag)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "useASCIITabs") < 0)) __PYX_ERR(27, 291, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_flag = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("useASCIITabs", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 291, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.useASCIITabs", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_58useASCIITabs(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_flag);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_58useASCIITabs(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_flag) {
+ PetscBool __pyx_v_flg;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscBool __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("useASCIITabs", 0);
+
+ /* "PETSc/Viewer.pyx":292
+ *
+ * def useASCIITabs(self, flag):
+ * cdef PetscBool flg = flag # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIUseTabs(self.vwr, flg) )
+ *
+ */
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 292, __pyx_L1_error)
+ __pyx_v_flg = __pyx_t_1;
+
+ /* "PETSc/Viewer.pyx":293
+ * def useASCIITabs(self, flag):
+ * cdef PetscBool flg = flag
+ * CHKERR( PetscViewerASCIIUseTabs(self.vwr, flg) ) # <<<<<<<<<<<<<<
+ *
+ * def printfASCII(self, msg):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIUseTabs(__pyx_v_self->vwr, __pyx_v_flg)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 293, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":291
+ * CHKERR( PetscViewerASCIIPopTab(self.vwr) )
+ *
+ * def useASCIITabs(self, flag): # <<<<<<<<<<<<<<
+ * cdef PetscBool flg = flag
+ * CHKERR( PetscViewerASCIIUseTabs(self.vwr, flg) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.useASCIITabs", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":295
+ * CHKERR( PetscViewerASCIIUseTabs(self.vwr, flg) )
+ *
+ * def printfASCII(self, msg): # <<<<<<<<<<<<<<
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_61printfASCII(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_60printfASCII[] = "Viewer.printfASCII(self, msg)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_61printfASCII(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_msg = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("printfASCII (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_msg,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_msg)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "printfASCII") < 0)) __PYX_ERR(27, 295, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_msg = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("printfASCII", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 295, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.printfASCII", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_60printfASCII(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_msg);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_60printfASCII(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_msg) {
+ const char *__pyx_v_cmsg;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("printfASCII", 0);
+ __Pyx_INCREF(__pyx_v_msg);
+
+ /* "PETSc/Viewer.pyx":296
+ *
+ * def printfASCII(self, msg):
+ * cdef const_char *cmsg = NULL # <<<<<<<<<<<<<<
+ * msg = str2bytes(msg, &cmsg)
+ * CHKERR( PetscViewerASCIIPrintf(self.vwr, cmsg) )
+ */
+ __pyx_v_cmsg = NULL;
+
+ /* "PETSc/Viewer.pyx":297
+ * def printfASCII(self, msg):
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg) # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIIPrintf(self.vwr, cmsg) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_msg, (&__pyx_v_cmsg)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 297, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_msg, __pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Viewer.pyx":298
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg)
+ * CHKERR( PetscViewerASCIIPrintf(self.vwr, cmsg) ) # <<<<<<<<<<<<<<
+ *
+ * def printfASCIISynchronized(self, msg):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIIPrintf(__pyx_v_self->vwr, __pyx_v_cmsg)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 298, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":295
+ * CHKERR( PetscViewerASCIIUseTabs(self.vwr, flg) )
+ *
+ * def printfASCII(self, msg): # <<<<<<<<<<<<<<
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg)
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.printfASCII", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_msg);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":300
+ * CHKERR( PetscViewerASCIIPrintf(self.vwr, cmsg) )
+ *
+ * def printfASCIISynchronized(self, msg): # <<<<<<<<<<<<<<
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_63printfASCIISynchronized(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_62printfASCIISynchronized[] = "Viewer.printfASCIISynchronized(self, msg)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_63printfASCIISynchronized(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_msg = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("printfASCIISynchronized (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_msg,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_msg)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "printfASCIISynchronized") < 0)) __PYX_ERR(27, 300, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_msg = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("printfASCIISynchronized", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 300, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.printfASCIISynchronized", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_62printfASCIISynchronized(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_msg);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_62printfASCIISynchronized(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_msg) {
+ const char *__pyx_v_cmsg;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("printfASCIISynchronized", 0);
+ __Pyx_INCREF(__pyx_v_msg);
+
+ /* "PETSc/Viewer.pyx":301
+ *
+ * def printfASCIISynchronized(self, msg):
+ * cdef const_char *cmsg = NULL # <<<<<<<<<<<<<<
+ * msg = str2bytes(msg, &cmsg)
+ * CHKERR( PetscViewerASCIISynchronizedPrintf(self.vwr, cmsg) )
+ */
+ __pyx_v_cmsg = NULL;
+
+ /* "PETSc/Viewer.pyx":302
+ * def printfASCIISynchronized(self, msg):
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg) # <<<<<<<<<<<<<<
+ * CHKERR( PetscViewerASCIISynchronizedPrintf(self.vwr, cmsg) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_msg, (&__pyx_v_cmsg)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 302, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_msg, __pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Viewer.pyx":303
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg)
+ * CHKERR( PetscViewerASCIISynchronizedPrintf(self.vwr, cmsg) ) # <<<<<<<<<<<<<<
+ *
+ * # --- methods specific to file viewers ---
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerASCIISynchronizedPrintf(__pyx_v_self->vwr, __pyx_v_cmsg)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 303, __pyx_L1_error)
+
+ /* "PETSc/Viewer.pyx":300
+ * CHKERR( PetscViewerASCIIPrintf(self.vwr, cmsg) )
+ *
+ * def printfASCIISynchronized(self, msg): # <<<<<<<<<<<<<<
+ * cdef const_char *cmsg = NULL
+ * msg = str2bytes(msg, &cmsg)
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.Viewer.printfASCIISynchronized", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_msg);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Viewer.pyx":307
* # --- methods specific to file viewers ---
*
* def flush(self): # <<<<<<<<<<<<<<
@@ -72258,38 +78540,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_42DRAW(CYTHON_UNUSED PyTypeOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_45flush(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_44flush[] = "Viewer.flush(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_45flush(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_65flush(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_64flush[] = "Viewer.flush(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_65flush(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("flush (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("flush", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "flush", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_44flush(((struct PyPetscViewerObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_64flush(((struct PyPetscViewerObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_44flush(struct PyPetscViewerObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_64flush(struct PyPetscViewerObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("flush", 0);
- /* "PETSc/Viewer.pyx":277
+ /* "PETSc/Viewer.pyx":308
*
* def flush(self):
* CHKERR( PetscViewerFlush(self.vwr) ) # <<<<<<<<<<<<<<
*
* def setFileMode(self, mode):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFlush(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 277, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFlush(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 308, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":276
+ /* "PETSc/Viewer.pyx":307
* # --- methods specific to file viewers ---
*
* def flush(self): # <<<<<<<<<<<<<<
@@ -72309,7 +78591,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_44flush(struct PyPetscViewerO
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":279
+/* "PETSc/Viewer.pyx":310
* CHKERR( PetscViewerFlush(self.vwr) )
*
* def setFileMode(self, mode): # <<<<<<<<<<<<<<
@@ -72318,9 +78600,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_44flush(struct PyPetscViewerO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_47setFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_46setFileMode[] = "Viewer.setFileMode(self, mode)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_47setFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_67setFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_66setFileMode[] = "Viewer.setFileMode(self, mode)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_67setFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_mode = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -72333,6 +78615,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_47setFileMode(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -72343,7 +78626,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_47setFileMode(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFileMode") < 0)) __PYX_ERR(27, 279, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFileMode") < 0)) __PYX_ERR(27, 310, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -72354,37 +78637,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_47setFileMode(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFileMode", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 279, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFileMode", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 310, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.setFileMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_46setFileMode(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_mode);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_66setFileMode(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_mode);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_46setFileMode(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_mode) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_66setFileMode(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_mode) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PetscFileMode __pyx_t_1;
int __pyx_t_2;
__Pyx_RefNannySetupContext("setFileMode", 0);
- /* "PETSc/Viewer.pyx":280
+ /* "PETSc/Viewer.pyx":311
*
* def setFileMode(self, mode):
* CHKERR( PetscViewerFileSetMode(self.vwr, filemode(mode)) ) # <<<<<<<<<<<<<<
*
* def getFileMode(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_1 == ((PetscFileMode)-1L))) __PYX_ERR(27, 280, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(27, 280, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_1 == ((PetscFileMode)((PetscFileMode)-1L)))) __PYX_ERR(27, 311, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->vwr, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 311, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":279
+ /* "PETSc/Viewer.pyx":310
* CHKERR( PetscViewerFlush(self.vwr) )
*
* def setFileMode(self, mode): # <<<<<<<<<<<<<<
@@ -72404,7 +78687,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_46setFileMode(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":282
+/* "PETSc/Viewer.pyx":313
* CHKERR( PetscViewerFileSetMode(self.vwr, filemode(mode)) )
*
* def getFileMode(self): # <<<<<<<<<<<<<<
@@ -72413,23 +78696,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_46setFileMode(struct PyPetscV
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_49getFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_48getFileMode[] = "Viewer.getFileMode(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_49getFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_69getFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_68getFileMode[] = "Viewer.getFileMode(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_69getFileMode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getFileMode (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getFileMode", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getFileMode", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(((struct PyPetscViewerObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_68getFileMode(((struct PyPetscViewerObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(struct PyPetscViewerObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_68getFileMode(struct PyPetscViewerObject *__pyx_v_self) {
PetscFileMode __pyx_v_mode;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -72437,7 +78720,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(struct PyPetscV
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getFileMode", 0);
- /* "PETSc/Viewer.pyx":283
+ /* "PETSc/Viewer.pyx":314
*
* def getFileMode(self):
* cdef PetscFileMode mode = PETSC_FILE_MODE_READ # <<<<<<<<<<<<<<
@@ -72446,16 +78729,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(struct PyPetscV
*/
__pyx_v_mode = FILE_MODE_READ;
- /* "PETSc/Viewer.pyx":284
+ /* "PETSc/Viewer.pyx":315
* def getFileMode(self):
* cdef PetscFileMode mode = PETSC_FILE_MODE_READ
* CHKERR( PetscViewerFileGetMode(self.vwr, &mode) ) # <<<<<<<<<<<<<<
* return mode
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileGetMode(__pyx_v_self->vwr, (&__pyx_v_mode))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 284, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileGetMode(__pyx_v_self->vwr, (&__pyx_v_mode))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 315, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":285
+ /* "PETSc/Viewer.pyx":316
* cdef PetscFileMode mode = PETSC_FILE_MODE_READ
* CHKERR( PetscViewerFileGetMode(self.vwr, &mode) )
* return mode # <<<<<<<<<<<<<<
@@ -72463,13 +78746,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(struct PyPetscV
* def setFileName(self, name):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscFileMode(__pyx_v_mode); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 285, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_PetscFileMode(__pyx_v_mode); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 316, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":282
+ /* "PETSc/Viewer.pyx":313
* CHKERR( PetscViewerFileSetMode(self.vwr, filemode(mode)) )
*
* def getFileMode(self): # <<<<<<<<<<<<<<
@@ -72488,7 +78771,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":287
+/* "PETSc/Viewer.pyx":318
* return mode
*
* def setFileName(self, name): # <<<<<<<<<<<<<<
@@ -72497,9 +78780,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_48getFileMode(struct PyPetscV
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_51setFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_50setFileName[] = "Viewer.setFileName(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_51setFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_71setFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_70setFileName[] = "Viewer.setFileName(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_71setFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -72512,6 +78795,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_51setFileName(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -72522,7 +78806,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_51setFileName(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFileName") < 0)) __PYX_ERR(27, 287, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFileName") < 0)) __PYX_ERR(27, 318, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -72533,20 +78817,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_51setFileName(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFileName", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 287, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFileName", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 318, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.setFileName", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_50setFileName(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_70setFileName(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50setFileName(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_70setFileName(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -72555,7 +78839,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50setFileName(struct PyPetscV
__Pyx_RefNannySetupContext("setFileName", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":288
+ /* "PETSc/Viewer.pyx":319
*
* def setFileName(self, name):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -72564,28 +78848,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50setFileName(struct PyPetscV
*/
__pyx_v_cval = NULL;
- /* "PETSc/Viewer.pyx":289
+ /* "PETSc/Viewer.pyx":320
* def setFileName(self, name):
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetName(self.vwr, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 289, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 320, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Viewer.pyx":290
+ /* "PETSc/Viewer.pyx":321
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval)
* CHKERR( PetscViewerFileSetName(self.vwr, cval) ) # <<<<<<<<<<<<<<
*
* def getFileName(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(27, 290, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->vwr, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 321, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":287
+ /* "PETSc/Viewer.pyx":318
* return mode
*
* def setFileName(self, name): # <<<<<<<<<<<<<<
@@ -72607,7 +78891,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50setFileName(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":292
+/* "PETSc/Viewer.pyx":323
* CHKERR( PetscViewerFileSetName(self.vwr, cval) )
*
* def getFileName(self): # <<<<<<<<<<<<<<
@@ -72616,23 +78900,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_50setFileName(struct PyPetscV
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_53getFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_52getFileName[] = "Viewer.getFileName(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_53getFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_73getFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_72getFileName[] = "Viewer.getFileName(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_73getFileName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getFileName (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getFileName", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getFileName", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(((struct PyPetscViewerObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_72getFileName(((struct PyPetscViewerObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(struct PyPetscViewerObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_72getFileName(struct PyPetscViewerObject *__pyx_v_self) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -72640,7 +78924,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(struct PyPetscV
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getFileName", 0);
- /* "PETSc/Viewer.pyx":293
+ /* "PETSc/Viewer.pyx":324
*
* def getFileName(self):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -72649,16 +78933,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(struct PyPetscV
*/
__pyx_v_cval = NULL;
- /* "PETSc/Viewer.pyx":294
+ /* "PETSc/Viewer.pyx":325
* def getFileName(self):
* cdef const_char *cval = NULL
* CHKERR( PetscViewerFileGetName(self.vwr, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileGetName(__pyx_v_self->vwr, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 294, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileGetName(__pyx_v_self->vwr, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 325, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":295
+ /* "PETSc/Viewer.pyx":326
* cdef const_char *cval = NULL
* CHKERR( PetscViewerFileGetName(self.vwr, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -72666,13 +78950,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(struct PyPetscV
* # --- methods specific to draw viewers ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 295, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":292
+ /* "PETSc/Viewer.pyx":323
* CHKERR( PetscViewerFileSetName(self.vwr, cval) )
*
* def getFileName(self): # <<<<<<<<<<<<<<
@@ -72691,7 +78975,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":299
+/* "PETSc/Viewer.pyx":330
* # --- methods specific to draw viewers ---
*
* def setDrawInfo(self, display=None, title=None, position=None, size=None): # <<<<<<<<<<<<<<
@@ -72700,9 +78984,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_52getFileName(struct PyPetscV
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55setDrawInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_54setDrawInfo[] = "Viewer.setDrawInfo(self, display=None, title=None, position=None, size=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55setDrawInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_75setDrawInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_74setDrawInfo[] = "Viewer.setDrawInfo(self, display=None, title=None, position=None, size=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_75setDrawInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_display = 0;
PyObject *__pyx_v_title = 0;
PyObject *__pyx_v_position = 0;
@@ -72722,9 +79006,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55setDrawInfo(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -72735,16 +79023,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55setDrawInfo(PyObject *__pyx
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_display);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_title);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_position);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size);
@@ -72752,14 +79043,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55setDrawInfo(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDrawInfo") < 0)) __PYX_ERR(27, 299, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDrawInfo") < 0)) __PYX_ERR(27, 330, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -72771,20 +79066,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_55setDrawInfo(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDrawInfo", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 299, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDrawInfo", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 330, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.setDrawInfo", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_display, __pyx_v_title, __pyx_v_position, __pyx_v_size);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_74setDrawInfo(((struct PyPetscViewerObject *)__pyx_v_self), __pyx_v_display, __pyx_v_title, __pyx_v_position, __pyx_v_size);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_74setDrawInfo(struct PyPetscViewerObject *__pyx_v_self, PyObject *__pyx_v_display, PyObject *__pyx_v_title, PyObject *__pyx_v_position, PyObject *__pyx_v_size) {
const char *__pyx_v_cdisplay;
const char *__pyx_v_ctitle;
int __pyx_v_x;
@@ -72808,7 +79103,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__Pyx_INCREF(__pyx_v_display);
__Pyx_INCREF(__pyx_v_title);
- /* "PETSc/Viewer.pyx":300
+ /* "PETSc/Viewer.pyx":331
*
* def setDrawInfo(self, display=None, title=None, position=None, size=None):
* cdef const_char *cdisplay = NULL # <<<<<<<<<<<<<<
@@ -72817,7 +79112,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
__pyx_v_cdisplay = NULL;
- /* "PETSc/Viewer.pyx":301
+ /* "PETSc/Viewer.pyx":332
* def setDrawInfo(self, display=None, title=None, position=None, size=None):
* cdef const_char *cdisplay = NULL
* cdef const_char *ctitle = NULL # <<<<<<<<<<<<<<
@@ -72826,31 +79121,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
__pyx_v_ctitle = NULL;
- /* "PETSc/Viewer.pyx":302
+ /* "PETSc/Viewer.pyx":333
* cdef const_char *cdisplay = NULL
* cdef const_char *ctitle = NULL
* display = str2bytes(display, &cdisplay) # <<<<<<<<<<<<<<
* title = str2bytes(title, &ctitle)
* cdef int x, y, h, w
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_display, (&__pyx_v_cdisplay)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 302, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_display, (&__pyx_v_cdisplay)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 333, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_display, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Viewer.pyx":303
+ /* "PETSc/Viewer.pyx":334
* cdef const_char *ctitle = NULL
* display = str2bytes(display, &cdisplay)
* title = str2bytes(title, &ctitle) # <<<<<<<<<<<<<<
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_title, (&__pyx_v_ctitle)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 303, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_title, (&__pyx_v_ctitle)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 334, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_title, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Viewer.pyx":305
+ /* "PETSc/Viewer.pyx":336
* title = str2bytes(title, &ctitle)
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE # <<<<<<<<<<<<<<
@@ -72862,7 +79157,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__pyx_v_h = PETSC_DECIDE;
__pyx_v_w = PETSC_DECIDE;
- /* "PETSc/Viewer.pyx":306
+ /* "PETSc/Viewer.pyx":337
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE
* if position not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -72871,19 +79166,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
__Pyx_INCREF(__pyx_v_position);
__pyx_t_1 = __pyx_v_position;
- __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 306, __pyx_L1_error)
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(27, 306, __pyx_L1_error)
+ __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 337, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(27, 337, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
if (__pyx_t_4) {
} else {
__pyx_t_2 = __pyx_t_4;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_3 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 306, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 337, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 306, __pyx_L1_error)
+ __pyx_t_5 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 337, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(27, 306, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(27, 337, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_2 = __pyx_t_4;
__pyx_L4_bool_binop_done:;
@@ -72891,7 +79186,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__pyx_t_4 = (__pyx_t_2 != 0);
if (__pyx_t_4) {
- /* "PETSc/Viewer.pyx":307
+ /* "PETSc/Viewer.pyx":338
* x = y = h = w = PETSC_DECIDE
* if position not in (None, PETSC_DECIDE):
* x, y = position # <<<<<<<<<<<<<<
@@ -72900,7 +79195,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
if ((likely(PyTuple_CheckExact(__pyx_v_position))) || (PyList_CheckExact(__pyx_v_position))) {
PyObject* sequence = __pyx_v_position;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -72908,9 +79203,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(27, 307, __pyx_L1_error)
+ __PYX_ERR(27, 338, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -72921,21 +79216,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 307, __pyx_L1_error)
+ __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 307, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_3 = PyObject_GetIter(__pyx_v_position); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 307, __pyx_L1_error)
+ __pyx_t_3 = PyObject_GetIter(__pyx_v_position); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 338, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_6 = Py_TYPE(__pyx_t_3)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_6(__pyx_t_3); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_5 = __pyx_t_6(__pyx_t_3); if (unlikely(!__pyx_t_5)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_3), 2) < 0) __PYX_ERR(27, 307, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_3), 2) < 0) __PYX_ERR(27, 338, __pyx_L1_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
goto __pyx_L7_unpacking_done;
@@ -72943,17 +79238,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(27, 307, __pyx_L1_error)
+ __PYX_ERR(27, 338, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
- __pyx_t_7 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 307, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 338, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_5); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 307, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_5); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 338, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_x = __pyx_t_7;
__pyx_v_y = __pyx_t_8;
- /* "PETSc/Viewer.pyx":306
+ /* "PETSc/Viewer.pyx":337
* cdef int x, y, h, w
* x = y = h = w = PETSC_DECIDE
* if position not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -72962,7 +79257,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
}
- /* "PETSc/Viewer.pyx":308
+ /* "PETSc/Viewer.pyx":339
* if position not in (None, PETSC_DECIDE):
* x, y = position
* if size not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -72971,19 +79266,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
__Pyx_INCREF(__pyx_v_size);
__pyx_t_5 = __pyx_v_size;
- __pyx_t_1 = PyObject_RichCompare(__pyx_t_5, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 308, __pyx_L1_error)
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(27, 308, __pyx_L1_error)
+ __pyx_t_1 = PyObject_RichCompare(__pyx_t_5, Py_None, Py_NE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 339, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(27, 339, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_2) {
} else {
__pyx_t_4 = __pyx_t_2;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_1 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 308, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(PETSC_DECIDE); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PyObject_RichCompare(__pyx_t_5, __pyx_t_1, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 308, __pyx_L1_error)
+ __pyx_t_3 = PyObject_RichCompare(__pyx_t_5, __pyx_t_1, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 339, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(27, 308, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(27, 339, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_4 = __pyx_t_2;
__pyx_L9_bool_binop_done:;
@@ -72991,7 +79286,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__pyx_t_2 = (__pyx_t_4 != 0);
if (__pyx_t_2) {
- /* "PETSc/Viewer.pyx":309
+ /* "PETSc/Viewer.pyx":340
* x, y = position
* if size not in (None, PETSC_DECIDE):
* try: # <<<<<<<<<<<<<<
@@ -73007,7 +79302,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__Pyx_XGOTREF(__pyx_t_11);
/*try:*/ {
- /* "PETSc/Viewer.pyx":310
+ /* "PETSc/Viewer.pyx":341
* if size not in (None, PETSC_DECIDE):
* try:
* w, h = size # <<<<<<<<<<<<<<
@@ -73016,7 +79311,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
if ((likely(PyTuple_CheckExact(__pyx_v_size))) || (PyList_CheckExact(__pyx_v_size))) {
PyObject* sequence = __pyx_v_size;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -73024,9 +79319,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(27, 310, __pyx_L11_error)
+ __PYX_ERR(27, 341, __pyx_L11_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
@@ -73037,39 +79332,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_3);
#else
- __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 310, __pyx_L11_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 341, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 310, __pyx_L11_error)
+ __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 341, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_3);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_1 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 310, __pyx_L11_error)
+ __pyx_t_1 = PyObject_GetIter(__pyx_v_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 341, __pyx_L11_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = Py_TYPE(__pyx_t_1)->tp_iternext;
- index = 0; __pyx_t_5 = __pyx_t_6(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L19_unpacking_failed;
+ index = 0; __pyx_t_5 = __pyx_t_6(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L17_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- index = 1; __pyx_t_3 = __pyx_t_6(__pyx_t_1); if (unlikely(!__pyx_t_3)) goto __pyx_L19_unpacking_failed;
+ index = 1; __pyx_t_3 = __pyx_t_6(__pyx_t_1); if (unlikely(!__pyx_t_3)) goto __pyx_L17_unpacking_failed;
__Pyx_GOTREF(__pyx_t_3);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_1), 2) < 0) __PYX_ERR(27, 310, __pyx_L11_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_1), 2) < 0) __PYX_ERR(27, 341, __pyx_L11_error)
__pyx_t_6 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- goto __pyx_L20_unpacking_done;
- __pyx_L19_unpacking_failed:;
+ goto __pyx_L18_unpacking_done;
+ __pyx_L17_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(27, 310, __pyx_L11_error)
- __pyx_L20_unpacking_done:;
+ __PYX_ERR(27, 341, __pyx_L11_error)
+ __pyx_L18_unpacking_done:;
}
- __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_5); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 310, __pyx_L11_error)
+ __pyx_t_8 = __Pyx_PyInt_As_int(__pyx_t_5); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 341, __pyx_L11_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_7 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 310, __pyx_L11_error)
+ __pyx_t_7 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 341, __pyx_L11_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_w = __pyx_t_8;
__pyx_v_h = __pyx_t_7;
- /* "PETSc/Viewer.pyx":309
+ /* "PETSc/Viewer.pyx":340
* x, y = position
* if size not in (None, PETSC_DECIDE):
* try: # <<<<<<<<<<<<<<
@@ -73080,14 +79375,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
- goto __pyx_L18_try_end;
+ goto __pyx_L16_try_end;
__pyx_L11_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Viewer.pyx":311
+ /* "PETSc/Viewer.pyx":342
* try:
* w, h = size
* except TypeError: # <<<<<<<<<<<<<<
@@ -73097,19 +79391,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
__pyx_t_7 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError);
if (__pyx_t_7) {
__Pyx_AddTraceback("petsc4py.PETSc.Viewer.setDrawInfo", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_1) < 0) __PYX_ERR(27, 311, __pyx_L13_except_error)
+ if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_5, &__pyx_t_1) < 0) __PYX_ERR(27, 342, __pyx_L13_except_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Viewer.pyx":312
+ /* "PETSc/Viewer.pyx":343
* w, h = size
* except TypeError:
* w = h = size # <<<<<<<<<<<<<<
* CHKERR( PetscViewerDrawSetInfo(self.vwr,
* cdisplay, ctitle,
*/
- __pyx_t_7 = __Pyx_PyInt_As_int(__pyx_v_size); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 312, __pyx_L13_except_error)
+ __pyx_t_7 = __Pyx_PyInt_As_int(__pyx_v_size); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) __PYX_ERR(27, 343, __pyx_L13_except_error)
__pyx_v_w = __pyx_t_7;
__pyx_v_h = __pyx_t_7;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -73120,29 +79414,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
goto __pyx_L13_except_error;
__pyx_L13_except_error:;
- /* "PETSc/Viewer.pyx":309
+ /* "PETSc/Viewer.pyx":340
* x, y = position
* if size not in (None, PETSC_DECIDE):
* try: # <<<<<<<<<<<<<<
* w, h = size
* except TypeError:
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_9);
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
__Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
goto __pyx_L1_error;
__pyx_L12_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_9);
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
__Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
- __pyx_L18_try_end:;
+ __pyx_L16_try_end:;
}
- /* "PETSc/Viewer.pyx":308
+ /* "PETSc/Viewer.pyx":339
* if position not in (None, PETSC_DECIDE):
* x, y = position
* if size not in (None, PETSC_DECIDE): # <<<<<<<<<<<<<<
@@ -73151,16 +79443,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
}
- /* "PETSc/Viewer.pyx":313
+ /* "PETSc/Viewer.pyx":344
* except TypeError:
* w = h = size
* CHKERR( PetscViewerDrawSetInfo(self.vwr, # <<<<<<<<<<<<<<
* cdisplay, ctitle,
* x, y, w, h) )
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDrawSetInfo(__pyx_v_self->vwr, __pyx_v_cdisplay, __pyx_v_ctitle, __pyx_v_x, __pyx_v_y, __pyx_v_w, __pyx_v_h)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(27, 313, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDrawSetInfo(__pyx_v_self->vwr, __pyx_v_cdisplay, __pyx_v_ctitle, __pyx_v_x, __pyx_v_y, __pyx_v_w, __pyx_v_h)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(27, 344, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":299
+ /* "PETSc/Viewer.pyx":330
* # --- methods specific to draw viewers ---
*
* def setDrawInfo(self, display=None, title=None, position=None, size=None): # <<<<<<<<<<<<<<
@@ -73185,7 +79477,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":317
+/* "PETSc/Viewer.pyx":348
* x, y, w, h) )
*
* def clearDraw(self): # <<<<<<<<<<<<<<
@@ -73194,38 +79486,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_54setDrawInfo(struct PyPetscV
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_57clearDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6Viewer_56clearDraw[] = "Viewer.clearDraw(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_57clearDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_77clearDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6Viewer_76clearDraw[] = "Viewer.clearDraw(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6Viewer_77clearDraw(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("clearDraw (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("clearDraw", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "clearDraw", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_56clearDraw(((struct PyPetscViewerObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6Viewer_76clearDraw(((struct PyPetscViewerObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_56clearDraw(struct PyPetscViewerObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_76clearDraw(struct PyPetscViewerObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("clearDraw", 0);
- /* "PETSc/Viewer.pyx":318
+ /* "PETSc/Viewer.pyx":349
*
* def clearDraw(self):
* CHKERR( PetscViewerDrawClear(self.vwr) ) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDrawClear(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 318, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerDrawClear(__pyx_v_self->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 349, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":317
+ /* "PETSc/Viewer.pyx":348
* x, y, w, h) )
*
* def clearDraw(self): # <<<<<<<<<<<<<<
@@ -73245,7 +79537,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Viewer_56clearDraw(struct PyPetscVie
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":324
+/* "PETSc/Viewer.pyx":355
* cdef class ViewerHDF5(Viewer):
*
* def create(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -73273,8 +79565,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_1create(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -73283,11 +79578,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_1create(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -73295,12 +79592,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_1create(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(27, 324, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(27, 355, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -73312,7 +79611,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_1create(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 324, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 355, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.ViewerHDF5.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -73339,17 +79638,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_create(struct __pyx_obj_
__Pyx_RefNannySetupContext("create", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/Viewer.pyx":325
+ /* "PETSc/Viewer.pyx":356
*
* def create(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 325, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(27, 356, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Viewer.pyx":326
+ /* "PETSc/Viewer.pyx":357
* def create(self, name, mode=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -73358,29 +79657,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_create(struct __pyx_obj_
*/
__pyx_v_cname = NULL;
- /* "PETSc/Viewer.pyx":327
+ /* "PETSc/Viewer.pyx":358
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 327, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 358, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Viewer.pyx":328
+ /* "PETSc/Viewer.pyx":359
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode) # <<<<<<<<<<<<<<
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)-1L))) __PYX_ERR(27, 328, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_filemode(__pyx_v_mode); if (unlikely(__pyx_t_3 == ((PetscFileMode)((PetscFileMode)-1L)))) __PYX_ERR(27, 359, __pyx_L1_error)
__pyx_v_cmode = __pyx_t_3;
- /* "PETSc/Viewer.pyx":329
+ /* "PETSc/Viewer.pyx":360
* name = str2bytes(name, &cname)
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL # <<<<<<<<<<<<<<
@@ -73389,16 +79688,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_create(struct __pyx_obj_
*/
__pyx_v_newvwr = NULL;
- /* "PETSc/Viewer.pyx":330
+ /* "PETSc/Viewer.pyx":361
* cdef PetscFileMode cmode = filemode(mode)
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 330, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerCreate(__pyx_v_ccomm, (&__pyx_v_newvwr))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 361, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":331
+ /* "PETSc/Viewer.pyx":362
* cdef PetscViewer newvwr = NULL
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr # <<<<<<<<<<<<<<
@@ -73408,34 +79707,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_create(struct __pyx_obj_
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.vwr = __pyx_v_newvwr;
- /* "PETSc/Viewer.pyx":332
+ /* "PETSc/Viewer.pyx":363
* CHKERR( PetscViewerCreate(ccomm, &newvwr) )
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->__pyx_base.vwr, PETSCVIEWERHDF5)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 332, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerSetType(__pyx_v_self->__pyx_base.vwr, PETSCVIEWERHDF5)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 363, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":333
+ /* "PETSc/Viewer.pyx":364
* PetscCLEAR(self.obj); self.vwr = newvwr
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) ) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->__pyx_base.vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 333, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetMode(__pyx_v_self->__pyx_base.vwr, __pyx_v_cmode)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 364, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":334
+ /* "PETSc/Viewer.pyx":365
* CHKERR( PetscViewerSetType(self.vwr, PETSCVIEWERHDF5) )
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->__pyx_base.vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(27, 334, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerFileSetName(__pyx_v_self->__pyx_base.vwr, __pyx_v_cname)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(27, 365, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":335
+ /* "PETSc/Viewer.pyx":366
* CHKERR( PetscViewerFileSetMode(self.vwr, cmode) )
* CHKERR( PetscViewerFileSetName(self.vwr, cname) )
* return self # <<<<<<<<<<<<<<
@@ -73447,7 +79746,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_create(struct __pyx_obj_
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":324
+ /* "PETSc/Viewer.pyx":355
* cdef class ViewerHDF5(Viewer):
*
* def create(self, name, mode=None, comm=None): # <<<<<<<<<<<<<<
@@ -73467,7 +79766,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_create(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":337
+/* "PETSc/Viewer.pyx":368
* return self
*
* def getTimestep(self): # <<<<<<<<<<<<<<
@@ -73500,7 +79799,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_2getTimestep(struct __py
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getTimestep", 0);
- /* "PETSc/Viewer.pyx":338
+ /* "PETSc/Viewer.pyx":369
*
* def getTimestep(self):
* cdef PetscInt ctimestep = 0 # <<<<<<<<<<<<<<
@@ -73509,16 +79808,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_2getTimestep(struct __py
*/
__pyx_v_ctimestep = 0;
- /* "PETSc/Viewer.pyx":339
+ /* "PETSc/Viewer.pyx":370
* def getTimestep(self):
* cdef PetscInt ctimestep = 0
* CHKERR( PetscViewerHDF5GetTimestep(self.vwr, &ctimestep) ) # <<<<<<<<<<<<<<
* return toInt(ctimestep)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5GetTimestep(__pyx_v_self->__pyx_base.vwr, (&__pyx_v_ctimestep))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 339, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5GetTimestep(__pyx_v_self->__pyx_base.vwr, (&__pyx_v_ctimestep))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 370, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":340
+ /* "PETSc/Viewer.pyx":371
* cdef PetscInt ctimestep = 0
* CHKERR( PetscViewerHDF5GetTimestep(self.vwr, &ctimestep) )
* return toInt(ctimestep) # <<<<<<<<<<<<<<
@@ -73526,13 +79825,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_2getTimestep(struct __py
* def setTimestep(self, timestep):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ctimestep); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 340, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ctimestep); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 371, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":337
+ /* "PETSc/Viewer.pyx":368
* return self
*
* def getTimestep(self): # <<<<<<<<<<<<<<
@@ -73551,7 +79850,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_2getTimestep(struct __py
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":342
+/* "PETSc/Viewer.pyx":373
* return toInt(ctimestep)
*
* def setTimestep(self, timestep): # <<<<<<<<<<<<<<
@@ -73575,6 +79874,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_5setTimestep(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -73585,7 +79885,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_5setTimestep(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTimestep") < 0)) __PYX_ERR(27, 342, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTimestep") < 0)) __PYX_ERR(27, 373, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -73596,7 +79896,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_5setTimestep(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTimestep", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 342, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTimestep", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 373, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.ViewerHDF5.setTimestep", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -73616,17 +79916,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_4setTimestep(struct __py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setTimestep", 0);
- /* "PETSc/Viewer.pyx":343
+ /* "PETSc/Viewer.pyx":374
*
* def setTimestep(self, timestep):
* CHKERR( PetscViewerHDF5SetTimestep(self.vwr, asInt(timestep)) ) # <<<<<<<<<<<<<<
*
* def incrementTimestep(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_timestep); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(27, 343, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5SetTimestep(__pyx_v_self->__pyx_base.vwr, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(27, 343, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_timestep); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(27, 374, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5SetTimestep(__pyx_v_self->__pyx_base.vwr, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 374, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":342
+ /* "PETSc/Viewer.pyx":373
* return toInt(ctimestep)
*
* def setTimestep(self, timestep): # <<<<<<<<<<<<<<
@@ -73646,7 +79946,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_4setTimestep(struct __py
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":345
+/* "PETSc/Viewer.pyx":376
* CHKERR( PetscViewerHDF5SetTimestep(self.vwr, asInt(timestep)) )
*
* def incrementTimestep(self): # <<<<<<<<<<<<<<
@@ -73677,16 +79977,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_6incrementTimestep(struc
int __pyx_t_1;
__Pyx_RefNannySetupContext("incrementTimestep", 0);
- /* "PETSc/Viewer.pyx":346
+ /* "PETSc/Viewer.pyx":377
*
* def incrementTimestep(self):
* CHKERR( PetscViewerHDF5IncrementTimestep(self.vwr) ) # <<<<<<<<<<<<<<
*
* def pushGroup(self, group):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5IncrementTimestep(__pyx_v_self->__pyx_base.vwr)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 346, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5IncrementTimestep(__pyx_v_self->__pyx_base.vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 377, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":345
+ /* "PETSc/Viewer.pyx":376
* CHKERR( PetscViewerHDF5SetTimestep(self.vwr, asInt(timestep)) )
*
* def incrementTimestep(self): # <<<<<<<<<<<<<<
@@ -73706,7 +80006,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_6incrementTimestep(struc
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":348
+/* "PETSc/Viewer.pyx":379
* CHKERR( PetscViewerHDF5IncrementTimestep(self.vwr) )
*
* def pushGroup(self, group): # <<<<<<<<<<<<<<
@@ -73730,6 +80030,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_9pushGroup(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -73740,7 +80041,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_9pushGroup(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "pushGroup") < 0)) __PYX_ERR(27, 348, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "pushGroup") < 0)) __PYX_ERR(27, 379, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -73751,7 +80052,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_10ViewerHDF5_9pushGroup(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("pushGroup", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 348, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("pushGroup", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(27, 379, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.ViewerHDF5.pushGroup", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -73773,7 +80074,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_8pushGroup(struct __pyx_
__Pyx_RefNannySetupContext("pushGroup", 0);
__Pyx_INCREF(__pyx_v_group);
- /* "PETSc/Viewer.pyx":349
+ /* "PETSc/Viewer.pyx":380
*
* def pushGroup(self, group):
* cdef const_char *cgroup = NULL # <<<<<<<<<<<<<<
@@ -73782,28 +80083,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_8pushGroup(struct __pyx_
*/
__pyx_v_cgroup = NULL;
- /* "PETSc/Viewer.pyx":350
+ /* "PETSc/Viewer.pyx":381
* def pushGroup(self, group):
* cdef const_char *cgroup = NULL
* group = str2bytes(group, &cgroup) # <<<<<<<<<<<<<<
* CHKERR( PetscViewerHDF5PushGroup(self.vwr, cgroup) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_group, (&__pyx_v_cgroup)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 350, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_group, (&__pyx_v_cgroup)); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 381, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_group, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Viewer.pyx":351
+ /* "PETSc/Viewer.pyx":382
* cdef const_char *cgroup = NULL
* group = str2bytes(group, &cgroup)
* CHKERR( PetscViewerHDF5PushGroup(self.vwr, cgroup) ) # <<<<<<<<<<<<<<
*
* def popGroup(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5PushGroup(__pyx_v_self->__pyx_base.vwr, __pyx_v_cgroup)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(27, 351, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5PushGroup(__pyx_v_self->__pyx_base.vwr, __pyx_v_cgroup)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(27, 382, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":348
+ /* "PETSc/Viewer.pyx":379
* CHKERR( PetscViewerHDF5IncrementTimestep(self.vwr) )
*
* def pushGroup(self, group): # <<<<<<<<<<<<<<
@@ -73825,7 +80126,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_8pushGroup(struct __pyx_
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":353
+/* "PETSc/Viewer.pyx":384
* CHKERR( PetscViewerHDF5PushGroup(self.vwr, cgroup) )
*
* def popGroup(self): # <<<<<<<<<<<<<<
@@ -73856,16 +80157,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_10popGroup(struct __pyx_
int __pyx_t_1;
__Pyx_RefNannySetupContext("popGroup", 0);
- /* "PETSc/Viewer.pyx":354
+ /* "PETSc/Viewer.pyx":385
*
* def popGroup(self):
* CHKERR( PetscViewerHDF5PopGroup(self.vwr) ) # <<<<<<<<<<<<<<
*
* def getGroup(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5PopGroup(__pyx_v_self->__pyx_base.vwr)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 354, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5PopGroup(__pyx_v_self->__pyx_base.vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 385, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":353
+ /* "PETSc/Viewer.pyx":384
* CHKERR( PetscViewerHDF5PushGroup(self.vwr, cgroup) )
*
* def popGroup(self): # <<<<<<<<<<<<<<
@@ -73885,7 +80186,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_10popGroup(struct __pyx_
return __pyx_r;
}
-/* "PETSc/Viewer.pyx":356
+/* "PETSc/Viewer.pyx":387
* CHKERR( PetscViewerHDF5PopGroup(self.vwr) )
*
* def getGroup(self): # <<<<<<<<<<<<<<
@@ -73918,7 +80219,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_12getGroup(struct __pyx_
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getGroup", 0);
- /* "PETSc/Viewer.pyx":357
+ /* "PETSc/Viewer.pyx":388
*
* def getGroup(self):
* cdef const_char *cgroup = NULL # <<<<<<<<<<<<<<
@@ -73927,16 +80228,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_12getGroup(struct __pyx_
*/
__pyx_v_cgroup = NULL;
- /* "PETSc/Viewer.pyx":358
+ /* "PETSc/Viewer.pyx":389
* def getGroup(self):
* cdef const_char *cgroup = NULL
* CHKERR( PetscViewerHDF5GetGroup(self.vwr, &cgroup) ) # <<<<<<<<<<<<<<
* return bytes2str(cgroup)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5GetGroup(__pyx_v_self->__pyx_base.vwr, (&__pyx_v_cgroup))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(27, 358, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscViewerHDF5GetGroup(__pyx_v_self->__pyx_base.vwr, (&__pyx_v_cgroup))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(27, 389, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":359
+ /* "PETSc/Viewer.pyx":390
* cdef const_char *cgroup = NULL
* CHKERR( PetscViewerHDF5GetGroup(self.vwr, &cgroup) )
* return bytes2str(cgroup) # <<<<<<<<<<<<<<
@@ -73944,13 +80245,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_10ViewerHDF5_12getGroup(struct __pyx_
* # --------------------------------------------------------------------
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cgroup); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 359, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cgroup); if (unlikely(!__pyx_t_2)) __PYX_ERR(27, 390, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Viewer.pyx":356
+ /* "PETSc/Viewer.pyx":387
* CHKERR( PetscViewerHDF5PopGroup(self.vwr) )
*
* def getGroup(self): # <<<<<<<<<<<<<<
@@ -74073,7 +80374,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_2__call__(struct PyPetscRando
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getValue); if (unlikely(!__pyx_t_2)) __PYX_ERR(28, 20, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -74140,6 +80441,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_5view(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -74157,6 +80459,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_5view(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -74239,7 +80542,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_4view(struct PyPetscRandomObj
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomView(__pyx_v_self->rnd, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(28, 26, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomView(__pyx_v_self->rnd, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(28, 26, __pyx_L1_error)
/* "PETSc/Random.pyx":22
* return self.getValue()
@@ -74299,7 +80602,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_6destroy(struct PyPetscRandom
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomDestroy((&__pyx_v_self->rnd))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(28, 29, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomDestroy((&__pyx_v_self->rnd))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(28, 29, __pyx_L1_error)
/* "PETSc/Random.pyx":30
* def destroy(self):
@@ -74356,6 +80659,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_9create(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -74373,6 +80677,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_9create(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -74419,7 +80724,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_8create(struct PyPetscRandomO
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomCreate(__pyx_v_ccomm, (&__pyx_v_self->rnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(28, 34, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomCreate(__pyx_v_ccomm, (&__pyx_v_self->rnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(28, 34, __pyx_L1_error)
/* "PETSc/Random.pyx":35
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
@@ -74475,6 +80780,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_11setType(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -74546,7 +80852,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_10setType(struct PyPetscRando
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetType(__pyx_v_self->rnd, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(28, 40, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetType(__pyx_v_self->rnd, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(28, 40, __pyx_L1_error)
/* "PETSc/Random.pyx":37
* return self
@@ -74619,7 +80925,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_12getType(struct PyPetscRando
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetType(__pyx_v_self->rnd, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(28, 44, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetType(__pyx_v_self->rnd, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(28, 44, __pyx_L1_error)
/* "PETSc/Random.pyx":45
* cdef PetscRandomType cval = NULL
@@ -74692,7 +80998,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_14setFromOptions(struct PyPet
*
* def getValue(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetFromOptions(__pyx_v_self->rnd)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(28, 48, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetFromOptions(__pyx_v_self->rnd)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(28, 48, __pyx_L1_error)
/* "PETSc/Random.pyx":47
* return bytes2str(cval)
@@ -74763,7 +81069,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_16getValue(struct PyPetscRand
* return toScalar(sval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetValue(__pyx_v_self->rnd, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(28, 52, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetValue(__pyx_v_self->rnd, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(28, 52, __pyx_L1_error)
/* "PETSc/Random.pyx":53
* cdef PetscScalar sval = 0
@@ -74847,7 +81153,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_18getValueReal(struct PyPetsc
* return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetValueReal(__pyx_v_self->rnd, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(28, 57, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetValueReal(__pyx_v_self->rnd, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(28, 57, __pyx_L1_error)
/* "PETSc/Random.pyx":58
* cdef PetscReal rval = 0
@@ -74931,7 +81237,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_20getSeed(struct PyPetscRando
* return seed
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetSeed(__pyx_v_self->rnd, (&__pyx_v_seed))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(28, 62, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetSeed(__pyx_v_self->rnd, (&__pyx_v_seed))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(28, 62, __pyx_L1_error)
/* "PETSc/Random.pyx":63
* cdef unsigned long seed = 0
@@ -74991,6 +81297,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_23setSeed(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -75008,6 +81315,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_23setSeed(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -75057,7 +81365,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_22setSeed(struct PyPetscRando
*
*/
__pyx_t_3 = __Pyx_PyInt_As_unsigned_long(__pyx_v_seed); if (unlikely((__pyx_t_3 == (unsigned long)-1) && PyErr_Occurred())) __PYX_ERR(28, 67, __pyx_L1_error)
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetSeed(__pyx_v_self->rnd, __pyx_t_3)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(28, 67, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetSeed(__pyx_v_self->rnd, __pyx_t_3)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(28, 67, __pyx_L1_error)
/* "PETSc/Random.pyx":66
*
@@ -75075,7 +81383,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_22setSeed(struct PyPetscRando
*
* def getInterval(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSeed(__pyx_v_self->rnd)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(28, 68, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSeed(__pyx_v_self->rnd)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(28, 68, __pyx_L1_error)
/* "PETSc/Random.pyx":65
* return seed
@@ -75158,7 +81466,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_24getInterval(struct PyPetscR
* return (toScalar(sval1), toScalar(sval2))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetInterval(__pyx_v_self->rnd, (&__pyx_v_sval1), (&__pyx_v_sval2))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(28, 73, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomGetInterval(__pyx_v_self->rnd, (&__pyx_v_sval1), (&__pyx_v_sval2))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(28, 73, __pyx_L1_error)
/* "PETSc/Random.pyx":74
* cdef PetscScalar sval2 = 1
@@ -75229,6 +81537,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6Random_27setInterval(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -75305,7 +81614,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_26setInterval(struct PyPetscR
*/
if ((likely(PyTuple_CheckExact(__pyx_v_interval))) || (PyList_CheckExact(__pyx_v_interval))) {
PyObject* sequence = __pyx_v_interval;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -75315,7 +81624,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_26setInterval(struct PyPetscR
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(28, 79, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
@@ -75363,7 +81672,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_26setInterval(struct PyPetscR
* sval2 = asScalar(high)
* CHKERR( PetscRandomSetInterval(self.rnd, sval1, sval2) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_low); if (unlikely(PyErr_Occurred())) __PYX_ERR(28, 80, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_low); if (unlikely(__pyx_t_5 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(28, 80, __pyx_L1_error)
__pyx_v_sval1 = __pyx_t_5;
/* "PETSc/Random.pyx":81
@@ -75373,7 +81682,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_26setInterval(struct PyPetscR
* CHKERR( PetscRandomSetInterval(self.rnd, sval1, sval2) )
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_high); if (unlikely(PyErr_Occurred())) __PYX_ERR(28, 81, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_high); if (unlikely(__pyx_t_5 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(28, 81, __pyx_L1_error)
__pyx_v_sval2 = __pyx_t_5;
/* "PETSc/Random.pyx":82
@@ -75383,7 +81692,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_26setInterval(struct PyPetscR
*
* #
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetInterval(__pyx_v_self->rnd, __pyx_v_sval1, __pyx_v_sval2)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(28, 82, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscRandomSetInterval(__pyx_v_self->rnd, __pyx_v_sval1, __pyx_v_sval2)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(28, 82, __pyx_L1_error)
/* "PETSc/Random.pyx":76
* return (toScalar(sval1), toScalar(sval2))
@@ -75450,7 +81759,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_4seed___get__(struct PyPetscR
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSeed); if (unlikely(!__pyx_t_2)) __PYX_ERR(28, 88, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -75532,7 +81841,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Random_4seed_2__set__(struct PyPetscRandom
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setSeed); if (unlikely(!__pyx_t_2)) __PYX_ERR(28, 90, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -75545,15 +81854,33 @@ static int __pyx_pf_8petsc4py_5PETSc_6Random_4seed_2__set__(struct PyPetscRandom
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 90, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(28, 90, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 90, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 90, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 90, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(28, 90, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 90, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -75621,7 +81948,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6Random_8interval___get__(struct PyPe
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getInterval); if (unlikely(!__pyx_t_2)) __PYX_ERR(28, 94, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -75703,7 +82030,7 @@ static int __pyx_pf_8petsc4py_5PETSc_6Random_8interval_2__set__(struct PyPetscRa
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setInterval); if (unlikely(!__pyx_t_2)) __PYX_ERR(28, 96, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -75716,15 +82043,33 @@ static int __pyx_pf_8petsc4py_5PETSc_6Random_8interval_2__set__(struct PyPetscRa
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 96, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(28, 96, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 96, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 96, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 96, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(28, 96, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 96, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -75872,7 +82217,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2IS_2__getbuffer__(struct PyPetscISObject *
*
* def __releasebuffer__(self, Py_buffer *view):
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_buf->__pyx_vtab)->acquirebuffer(__pyx_v_buf, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(29, 24, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_buf->__pyx_vtab)->acquirebuffer(__pyx_v_buf, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(29, 24, __pyx_L1_error)
/* "PETSc/IS.pyx":22
* # buffer interface (PEP 3118)
@@ -75951,7 +82296,7 @@ static void __pyx_pf_8petsc4py_5PETSc_2IS_4__releasebuffer__(struct PyPetscISObj
* <void>self # unused
*
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_buf->__pyx_vtab)->releasebuffer(__pyx_v_buf, __pyx_v_view); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 28, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__IS_buffer *)__pyx_v_buf->__pyx_vtab)->releasebuffer(__pyx_v_buf, __pyx_v_view); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 28, __pyx_L1_error)
/* "PETSc/IS.pyx":29
* cdef _IS_buffer buf = <_IS_buffer>(view.obj)
@@ -75974,7 +82319,7 @@ static void __pyx_pf_8petsc4py_5PETSc_2IS_4__releasebuffer__(struct PyPetscISObj
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
- __Pyx_WriteUnraisable("petsc4py.PETSc.IS.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.IS.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_buf);
__Pyx_RefNannyFinishContext();
@@ -76194,6 +82539,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_11view(PyObject *__pyx_v_self, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -76211,6 +82557,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_11view(PyObject *__pyx_v_self, Py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -76277,7 +82624,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_10view(struct PyPetscISObject *__
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISView(__pyx_v_self->iset, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(29, 48, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISView(__pyx_v_self->iset, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(29, 48, __pyx_L1_error)
/* "PETSc/IS.pyx":45
* #
@@ -76337,7 +82684,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_12destroy(struct PyPetscISObject
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&__pyx_v_self->iset))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 51, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&__pyx_v_self->iset))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 51, __pyx_L1_error)
/* "PETSc/IS.pyx":52
* def destroy(self):
@@ -76394,6 +82741,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_15create(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -76411,6 +82759,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_15create(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -76467,7 +82816,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_14create(struct PyPetscISObject *
* PetscCLEAR(self.obj); self.iset = newiset
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreate(__pyx_v_ccomm, (&__pyx_v_newiset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 57, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreate(__pyx_v_ccomm, (&__pyx_v_newiset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 57, __pyx_L1_error)
/* "PETSc/IS.pyx":58
* cdef PetscIS newiset = NULL
@@ -76533,6 +82882,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_17setType(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -76604,7 +82954,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_16setType(struct PyPetscISObject
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetType(__pyx_v_self->iset, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 64, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetType(__pyx_v_self->iset, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 64, __pyx_L1_error)
/* "PETSc/IS.pyx":61
* return self
@@ -76677,7 +83027,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_18getType(struct PyPetscISObject
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetType(__pyx_v_self->iset, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 68, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetType(__pyx_v_self->iset, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 68, __pyx_L1_error)
/* "PETSc/IS.pyx":69
* cdef PetscISType cval = NULL
@@ -76738,7 +83088,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_21createGeneral(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -76747,6 +83099,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_21createGeneral(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -76759,6 +83112,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_21createGeneral(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -76853,7 +83207,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_20createGeneral(struct PyPetscISO
* PetscCLEAR(self.obj); self.iset = newiset
* return self
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreateGeneral(__pyx_v_ccomm, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm, (&__pyx_v_newiset))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(29, 77, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreateGeneral(__pyx_v_ccomm, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm, (&__pyx_v_newiset))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(29, 77, __pyx_L1_error)
/* "PETSc/IS.pyx":78
* indices = iarray_i(indices, &nidx, &idx)
@@ -76924,8 +83278,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_23createBlock(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -76934,11 +83291,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_23createBlock(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("createBlock", 0, 2, 3, 1); __PYX_ERR(29, 81, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -76951,6 +83310,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_23createBlock(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -77009,7 +83369,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_22createBlock(struct PyPetscISObj
* cdef PetscInt nidx = 0, *idx = NULL
* cdef PetscCopyMode cm = PETSC_COPY_VALUES
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(29, 83, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 83, __pyx_L1_error)
__pyx_v_bs = __pyx_t_2;
/* "PETSc/IS.pyx":84
@@ -77059,7 +83419,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_22createBlock(struct PyPetscISObj
* PetscCLEAR(self.obj); self.iset = newiset
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreateBlock(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm, (&__pyx_v_newiset))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(29, 88, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreateBlock(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm, (&__pyx_v_newiset))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(29, 88, __pyx_L1_error)
/* "PETSc/IS.pyx":89
* indices = iarray_i(indices, &nidx, &idx)
@@ -77133,9 +83493,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_25createStride(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -77144,16 +83508,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_25createStride(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_first);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_step);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -77166,8 +83533,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_25createStride(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -77223,7 +83593,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_24createStride(struct PyPetscISOb
* cdef PetscInt cfirst = asInt(first)
* cdef PetscInt cstep = asInt(step)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(29, 94, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 94, __pyx_L1_error)
__pyx_v_csize = __pyx_t_2;
/* "PETSc/IS.pyx":95
@@ -77233,7 +83603,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_24createStride(struct PyPetscISOb
* cdef PetscInt cstep = asInt(step)
* cdef PetscIS newiset = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_first); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(29, 95, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_first); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 95, __pyx_L1_error)
__pyx_v_cfirst = __pyx_t_2;
/* "PETSc/IS.pyx":96
@@ -77243,7 +83613,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_24createStride(struct PyPetscISOb
* cdef PetscIS newiset = NULL
* CHKERR( ISCreateStride(ccomm, csize, cfirst, cstep, &newiset) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(29, 96, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 96, __pyx_L1_error)
__pyx_v_cstep = __pyx_t_2;
/* "PETSc/IS.pyx":97
@@ -77262,7 +83632,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_24createStride(struct PyPetscISOb
* PetscCLEAR(self.obj); self.iset = newiset
* return self
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreateStride(__pyx_v_ccomm, __pyx_v_csize, __pyx_v_cfirst, __pyx_v_cstep, (&__pyx_v_newiset))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(29, 98, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreateStride(__pyx_v_ccomm, __pyx_v_csize, __pyx_v_cfirst, __pyx_v_cstep, (&__pyx_v_newiset))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(29, 98, __pyx_L1_error)
/* "PETSc/IS.pyx":99
* cdef PetscIS newiset = NULL
@@ -77348,7 +83718,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_26duplicate(struct PyPetscISObjec
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -77376,7 +83746,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_26duplicate(struct PyPetscISObjec
* return iset
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDuplicate(__pyx_v_self->iset, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(29, 104, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDuplicate(__pyx_v_self->iset, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(29, 104, __pyx_L1_error)
/* "PETSc/IS.pyx":105
* cdef IS iset = type(self)()
@@ -77437,6 +83807,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_29copy(PyObject *__pyx_v_self, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -77454,6 +83825,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_29copy(PyObject *__pyx_v_self, Py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -77512,7 +83884,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_28copy(struct PyPetscISObject *__
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_4 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -77559,7 +83931,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_28copy(struct PyPetscISObject *__
* CHKERR( ISCopy(self.iset, result.iset) )
* return result
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDuplicate(__pyx_v_self->iset, (&__pyx_v_result->iset))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(29, 111, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDuplicate(__pyx_v_self->iset, (&__pyx_v_result->iset))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(29, 111, __pyx_L1_error)
/* "PETSc/IS.pyx":110
* if result is None:
@@ -77577,14 +83949,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_28copy(struct PyPetscISObject *__
* return result
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCopy(__pyx_v_self->iset, __pyx_v_result->iset)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(29, 112, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCopy(__pyx_v_self->iset, __pyx_v_result->iset)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(29, 112, __pyx_L1_error)
/* "PETSc/IS.pyx":113
* CHKERR( ISDuplicate(self.iset, &result.iset) )
* CHKERR( ISCopy(self.iset, result.iset) )
* return result # <<<<<<<<<<<<<<
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
@@ -77616,7 +83988,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_28copy(struct PyPetscISObject *__
/* "PETSc/IS.pyx":115
* return result
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
*/
@@ -77637,6 +84009,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_31load(PyObject *__pyx_v_self, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -77687,7 +84060,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_30load(struct PyPetscISObject *__
/* "PETSc/IS.pyx":116
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
* cdef MPI_Comm comm = MPI_COMM_NULL # <<<<<<<<<<<<<<
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
* if self.iset == NULL:
@@ -77695,7 +84068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_30load(struct PyPetscISObject *__
__pyx_v_comm = MPI_COMM_NULL;
/* "PETSc/IS.pyx":117
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr) # <<<<<<<<<<<<<<
* if self.iset == NULL:
@@ -77720,7 +84093,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_30load(struct PyPetscISObject *__
* CHKERR( ISCreate(comm, &self.iset) )
* CHKERR( ISLoad(self.iset, viewer.vwr) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(__pyx_v_obj, (&__pyx_v_comm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 119, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(__pyx_v_obj, (&__pyx_v_comm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 119, __pyx_L1_error)
/* "PETSc/IS.pyx":120
* if self.iset == NULL:
@@ -77729,7 +84102,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_30load(struct PyPetscISObject *__
* CHKERR( ISLoad(self.iset, viewer.vwr) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreate(__pyx_v_comm, (&__pyx_v_self->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 120, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISCreate(__pyx_v_comm, (&__pyx_v_self->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 120, __pyx_L1_error)
/* "PETSc/IS.pyx":118
* cdef MPI_Comm comm = MPI_COMM_NULL
@@ -77747,7 +84120,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_30load(struct PyPetscISObject *__
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLoad(__pyx_v_self->iset, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 121, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLoad(__pyx_v_self->iset, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 121, __pyx_L1_error)
/* "PETSc/IS.pyx":122
* CHKERR( ISCreate(comm, &self.iset) )
@@ -77764,7 +84137,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_30load(struct PyPetscISObject *__
/* "PETSc/IS.pyx":115
* return result
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
*/
@@ -77831,7 +84204,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_32allGather(struct PyPetscISObjec
* return iset
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISAllGather(__pyx_v_self->iset, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 126, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISAllGather(__pyx_v_self->iset, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 126, __pyx_L1_error)
/* "PETSc/IS.pyx":127
* cdef IS iset = IS()
@@ -77903,7 +84276,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_34toGeneral(struct PyPetscISObjec
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISToGeneral(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 130, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISToGeneral(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 130, __pyx_L1_error)
/* "PETSc/IS.pyx":131
* def toGeneral(self):
@@ -77960,6 +84333,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_37invertPermutation(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -77977,6 +84351,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_37invertPermutation(PyObject *__p
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -78029,7 +84404,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_36invertPermutation(struct PyPets
__pyx_t_1 = (__pyx_v_nlocal != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nlocal); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(29, 135, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nlocal); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 135, __pyx_L1_error)
__pyx_v_cnlocal = __pyx_t_3;
}
@@ -78052,7 +84427,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_36invertPermutation(struct PyPets
* return iset
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISInvertPermutation(__pyx_v_self->iset, __pyx_v_cnlocal, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(29, 137, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISInvertPermutation(__pyx_v_self->iset, __pyx_v_cnlocal, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(29, 137, __pyx_L1_error)
/* "PETSc/IS.pyx":138
* cdef IS iset = IS()
@@ -78135,7 +84510,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_38getSize(struct PyPetscISObject
* return toInt(N)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetSize(__pyx_v_self->iset, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 142, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetSize(__pyx_v_self->iset, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 142, __pyx_L1_error)
/* "PETSc/IS.pyx":143
* cdef PetscInt N = 0
@@ -78219,7 +84594,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_40getLocalSize(struct PyPetscISOb
* return toInt(n)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 147, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 147, __pyx_L1_error)
/* "PETSc/IS.pyx":148
* cdef PetscInt n = 0
@@ -78307,7 +84682,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_42getSizes(struct PyPetscISObject
* CHKERR( ISGetSize(self.iset, &N) )
* return (toInt(n), toInt(N))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 152, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 152, __pyx_L1_error)
/* "PETSc/IS.pyx":153
* cdef PetscInt n = 0, N = 0
@@ -78316,7 +84691,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_42getSizes(struct PyPetscISObject
* return (toInt(n), toInt(N))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetSize(__pyx_v_self->iset, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 153, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetSize(__pyx_v_self->iset, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 153, __pyx_L1_error)
/* "PETSc/IS.pyx":154
* CHKERR( ISGetLocalSize(self.iset, &n) )
@@ -78412,7 +84787,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_44getBlockSize(struct PyPetscISOb
* return toInt(bs)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetBlockSize(__pyx_v_self->iset, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 158, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetBlockSize(__pyx_v_self->iset, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 158, __pyx_L1_error)
/* "PETSc/IS.pyx":159
* cdef PetscInt bs = 1
@@ -78471,6 +84846,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_47setBlockSize(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -78520,7 +84896,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_46setBlockSize(struct PyPetscISOb
* CHKERR( ISSetBlockSize(self.iset, cbs) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bs); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 162, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bs); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 162, __pyx_L1_error)
__pyx_v_cbs = __pyx_t_1;
/* "PETSc/IS.pyx":163
@@ -78530,7 +84906,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_46setBlockSize(struct PyPetscISOb
*
* def sort(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetBlockSize(__pyx_v_self->iset, __pyx_v_cbs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 163, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetBlockSize(__pyx_v_self->iset, __pyx_v_cbs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 163, __pyx_L1_error)
/* "PETSc/IS.pyx":161
* return toInt(bs)
@@ -78590,7 +84966,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_48sort(struct PyPetscISObject *__
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSort(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 166, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSort(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 166, __pyx_L1_error)
/* "PETSc/IS.pyx":167
* def sort(self):
@@ -78660,7 +85036,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_50isSorted(struct PyPetscISObject
* def isSorted(self):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( ISSorted(self.iset, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
@@ -78668,20 +85044,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_50isSorted(struct PyPetscISObject
* def isSorted(self):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISSorted(self.iset, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSorted(__pyx_v_self->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 171, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSorted(__pyx_v_self->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 171, __pyx_L1_error)
/* "PETSc/IS.pyx":172
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISSorted(self.iset, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setPermutation(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 172, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 172, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -78707,7 +85083,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_50isSorted(struct PyPetscISObject
}
/* "PETSc/IS.pyx":174
- * return <bint> flag
+ * return toBool(flag)
*
* def setPermutation(self): # <<<<<<<<<<<<<<
* CHKERR( ISSetPermutation(self.iset) )
@@ -78744,7 +85120,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_52setPermutation(struct PyPetscIS
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetPermutation(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 175, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetPermutation(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 175, __pyx_L1_error)
/* "PETSc/IS.pyx":176
* def setPermutation(self):
@@ -78759,7 +85135,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_52setPermutation(struct PyPetscIS
goto __pyx_L0;
/* "PETSc/IS.pyx":174
- * return <bint> flag
+ * return toBool(flag)
*
* def setPermutation(self): # <<<<<<<<<<<<<<
* CHKERR( ISSetPermutation(self.iset) )
@@ -78814,7 +85190,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_54isPermutation(struct PyPetscISO
* def isPermutation(self):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( ISPermutation(self.iset, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
@@ -78822,20 +85198,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_54isPermutation(struct PyPetscISO
* def isPermutation(self):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISPermutation(self.iset, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISPermutation(__pyx_v_self->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 180, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISPermutation(__pyx_v_self->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 180, __pyx_L1_error)
/* "PETSc/IS.pyx":181
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISPermutation(self.iset, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setIdentity(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 181, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -78861,7 +85237,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_54isPermutation(struct PyPetscISO
}
/* "PETSc/IS.pyx":183
- * return <bint> flag
+ * return toBool(flag)
*
* def setIdentity(self): # <<<<<<<<<<<<<<
* CHKERR( ISSetIdentity(self.iset) )
@@ -78898,7 +85274,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_56setIdentity(struct PyPetscISObj
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetIdentity(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 184, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSetIdentity(__pyx_v_self->iset)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 184, __pyx_L1_error)
/* "PETSc/IS.pyx":185
* def setIdentity(self):
@@ -78913,7 +85289,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_56setIdentity(struct PyPetscISObj
goto __pyx_L0;
/* "PETSc/IS.pyx":183
- * return <bint> flag
+ * return toBool(flag)
*
* def setIdentity(self): # <<<<<<<<<<<<<<
* CHKERR( ISSetIdentity(self.iset) )
@@ -78968,7 +85344,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_58isIdentity(struct PyPetscISObje
* def isIdentity(self):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( ISIdentity(self.iset, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
@@ -78976,20 +85352,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_58isIdentity(struct PyPetscISObje
* def isIdentity(self):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISIdentity(self.iset, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISIdentity(__pyx_v_self->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 189, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISIdentity(__pyx_v_self->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 189, __pyx_L1_error)
/* "PETSc/IS.pyx":190
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISIdentity(self.iset, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
- * def equal(self, IS iset not None):
+ * def equal(self, IS iset):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 190, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -79015,9 +85391,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_58isIdentity(struct PyPetscISObje
}
/* "PETSc/IS.pyx":192
- * return <bint> flag
+ * return toBool(flag)
*
- * def equal(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def equal(self, IS iset): # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISEqual(self.iset, iset.iset, &flag) )
*/
@@ -79038,6 +85414,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_61equal(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -79087,40 +85464,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_60equal(struct PyPetscISObject *_
/* "PETSc/IS.pyx":193
*
- * def equal(self, IS iset not None):
+ * def equal(self, IS iset):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( ISEqual(self.iset, iset.iset, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
/* "PETSc/IS.pyx":194
- * def equal(self, IS iset not None):
+ * def equal(self, IS iset):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISEqual(self.iset, iset.iset, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISEqual(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 194, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISEqual(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 194, __pyx_L1_error)
/* "PETSc/IS.pyx":195
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISEqual(self.iset, iset.iset, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
- * def sum(self, IS iset not None):
+ * def sum(self, IS iset):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 195, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
/* "PETSc/IS.pyx":192
- * return <bint> flag
+ * return toBool(flag)
*
- * def equal(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def equal(self, IS iset): # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( ISEqual(self.iset, iset.iset, &flag) )
*/
@@ -79137,9 +85514,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_60equal(struct PyPetscISObject *_
}
/* "PETSc/IS.pyx":197
- * return <bint> flag
+ * return toBool(flag)
*
- * def sum(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def sum(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS out = IS()
* CHKERR( ISSum(self.iset, iset.iset, &out.iset) )
*/
@@ -79160,6 +85537,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_63sum(PyObject *__pyx_v_self, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -79209,7 +85587,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_62sum(struct PyPetscISObject *__p
/* "PETSc/IS.pyx":198
*
- * def sum(self, IS iset not None):
+ * def sum(self, IS iset):
* cdef IS out = IS() # <<<<<<<<<<<<<<
* CHKERR( ISSum(self.iset, iset.iset, &out.iset) )
* return out
@@ -79220,20 +85598,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_62sum(struct PyPetscISObject *__p
__pyx_t_1 = 0;
/* "PETSc/IS.pyx":199
- * def sum(self, IS iset not None):
+ * def sum(self, IS iset):
* cdef IS out = IS()
* CHKERR( ISSum(self.iset, iset.iset, &out.iset) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSum(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 199, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSum(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 199, __pyx_L1_error)
/* "PETSc/IS.pyx":200
* cdef IS out = IS()
* CHKERR( ISSum(self.iset, iset.iset, &out.iset) )
* return out # <<<<<<<<<<<<<<
*
- * def expand(self, IS iset not None):
+ * def expand(self, IS iset):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_out));
@@ -79241,9 +85619,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_62sum(struct PyPetscISObject *__p
goto __pyx_L0;
/* "PETSc/IS.pyx":197
- * return <bint> flag
+ * return toBool(flag)
*
- * def sum(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def sum(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS out = IS()
* CHKERR( ISSum(self.iset, iset.iset, &out.iset) )
*/
@@ -79263,7 +85641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_62sum(struct PyPetscISObject *__p
/* "PETSc/IS.pyx":202
* return out
*
- * def expand(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def expand(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS out = IS()
* CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
*/
@@ -79284,6 +85662,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_65expand(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -79333,7 +85712,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_64expand(struct PyPetscISObject *
/* "PETSc/IS.pyx":203
*
- * def expand(self, IS iset not None):
+ * def expand(self, IS iset):
* cdef IS out = IS() # <<<<<<<<<<<<<<
* CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
* return out
@@ -79344,20 +85723,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_64expand(struct PyPetscISObject *
__pyx_t_1 = 0;
/* "PETSc/IS.pyx":204
- * def expand(self, IS iset not None):
+ * def expand(self, IS iset):
* cdef IS out = IS()
* CHKERR( ISExpand(self.iset, iset.iset, &out.iset) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISExpand(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 204, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISExpand(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 204, __pyx_L1_error)
/* "PETSc/IS.pyx":205
* cdef IS out = IS()
* CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
* return out # <<<<<<<<<<<<<<
*
- * def union(self, IS iset not None): # XXX review this
+ * def union(self, IS iset): # XXX review this
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_out));
@@ -79367,7 +85746,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_64expand(struct PyPetscISObject *
/* "PETSc/IS.pyx":202
* return out
*
- * def expand(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def expand(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS out = IS()
* CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
*/
@@ -79387,7 +85766,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_64expand(struct PyPetscISObject *
/* "PETSc/IS.pyx":207
* return out
*
- * def union(self, IS iset not None): # XXX review this # <<<<<<<<<<<<<<
+ * def union(self, IS iset): # XXX review this # <<<<<<<<<<<<<<
* cdef PetscBool flag1=PETSC_FALSE, flag2=PETSC_FALSE
* CHKERR( ISSorted(self.iset, &flag1) )
*/
@@ -79408,6 +85787,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_67union(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -79461,7 +85841,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
/* "PETSc/IS.pyx":208
*
- * def union(self, IS iset not None): # XXX review this
+ * def union(self, IS iset): # XXX review this
* cdef PetscBool flag1=PETSC_FALSE, flag2=PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( ISSorted(self.iset, &flag1) )
* CHKERR( ISSorted(iset.iset, &flag2) )
@@ -79470,13 +85850,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
__pyx_v_flag2 = PETSC_FALSE;
/* "PETSc/IS.pyx":209
- * def union(self, IS iset not None): # XXX review this
+ * def union(self, IS iset): # XXX review this
* cdef PetscBool flag1=PETSC_FALSE, flag2=PETSC_FALSE
* CHKERR( ISSorted(self.iset, &flag1) ) # <<<<<<<<<<<<<<
* CHKERR( ISSorted(iset.iset, &flag2) )
* cdef IS out = IS()
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSorted(__pyx_v_self->iset, (&__pyx_v_flag1))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 209, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSorted(__pyx_v_self->iset, (&__pyx_v_flag1))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 209, __pyx_L1_error)
/* "PETSc/IS.pyx":210
* cdef PetscBool flag1=PETSC_FALSE, flag2=PETSC_FALSE
@@ -79485,7 +85865,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
* cdef IS out = IS()
* if flag1==PETSC_TRUE and flag2==PETSC_TRUE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSorted(__pyx_v_iset->iset, (&__pyx_v_flag2))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 210, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSorted(__pyx_v_iset->iset, (&__pyx_v_flag2))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 210, __pyx_L1_error)
/* "PETSc/IS.pyx":211
* CHKERR( ISSorted(self.iset, &flag1) )
@@ -79524,7 +85904,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
* else:
* CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSum(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 213, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISSum(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 213, __pyx_L1_error)
/* "PETSc/IS.pyx":212
* CHKERR( ISSorted(iset.iset, &flag2) )
@@ -79544,7 +85924,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
*
*/
/*else*/ {
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISExpand(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 215, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISExpand(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 215, __pyx_L1_error)
}
__pyx_L3:;
@@ -79553,7 +85933,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
* CHKERR( ISExpand(self.iset, iset.iset, &out.iset) )
* return out # <<<<<<<<<<<<<<
*
- * def difference(self, IS iset not None):
+ * def difference(self, IS iset):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_out));
@@ -79563,7 +85943,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
/* "PETSc/IS.pyx":207
* return out
*
- * def union(self, IS iset not None): # XXX review this # <<<<<<<<<<<<<<
+ * def union(self, IS iset): # XXX review this # <<<<<<<<<<<<<<
* cdef PetscBool flag1=PETSC_FALSE, flag2=PETSC_FALSE
* CHKERR( ISSorted(self.iset, &flag1) )
*/
@@ -79583,7 +85963,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_66union(struct PyPetscISObject *_
/* "PETSc/IS.pyx":218
* return out
*
- * def difference(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def difference(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS out = IS()
* CHKERR( ISDifference(self.iset, iset.iset, &out.iset) )
*/
@@ -79604,6 +85984,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_69difference(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -79653,7 +86034,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_68difference(struct PyPetscISObje
/* "PETSc/IS.pyx":219
*
- * def difference(self, IS iset not None):
+ * def difference(self, IS iset):
* cdef IS out = IS() # <<<<<<<<<<<<<<
* CHKERR( ISDifference(self.iset, iset.iset, &out.iset) )
* return out
@@ -79664,13 +86045,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_68difference(struct PyPetscISObje
__pyx_t_1 = 0;
/* "PETSc/IS.pyx":220
- * def difference(self, IS iset not None):
+ * def difference(self, IS iset):
* cdef IS out = IS()
* CHKERR( ISDifference(self.iset, iset.iset, &out.iset) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDifference(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 220, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDifference(__pyx_v_self->iset, __pyx_v_iset->iset, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 220, __pyx_L1_error)
/* "PETSc/IS.pyx":221
* cdef IS out = IS()
@@ -79687,7 +86068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_68difference(struct PyPetscISObje
/* "PETSc/IS.pyx":218
* return out
*
- * def difference(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def difference(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS out = IS()
* CHKERR( ISDifference(self.iset, iset.iset, &out.iset) )
*/
@@ -79729,7 +86110,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_71complement(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -79738,6 +86121,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_71complement(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nmin)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nmax)) != 0)) kw_args--;
else {
@@ -79789,7 +86173,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_70complement(struct PyPetscISObje
* cdef PetscInt cnmax = asInt(nmax)
* cdef IS out = IS()
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nmin); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 224, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nmin); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 224, __pyx_L1_error)
__pyx_v_cnmin = __pyx_t_1;
/* "PETSc/IS.pyx":225
@@ -79799,7 +86183,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_70complement(struct PyPetscISObje
* cdef IS out = IS()
* CHKERR( ISComplement(self.iset, cnmin, cnmax, &out.iset) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nmax); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 225, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nmax); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 225, __pyx_L1_error)
__pyx_v_cnmax = __pyx_t_1;
/* "PETSc/IS.pyx":226
@@ -79821,14 +86205,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_70complement(struct PyPetscISObje
* return out
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISComplement(__pyx_v_self->iset, __pyx_v_cnmin, __pyx_v_cnmax, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(29, 227, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISComplement(__pyx_v_self->iset, __pyx_v_cnmin, __pyx_v_cnmax, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(29, 227, __pyx_L1_error)
/* "PETSc/IS.pyx":228
* cdef IS out = IS()
* CHKERR( ISComplement(self.iset, cnmin, cnmax, &out.iset) )
* return out # <<<<<<<<<<<<<<
*
- * def embed(self, IS iset not None, drop):
+ * def embed(self, IS iset, drop):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_out));
@@ -79858,7 +86242,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_70complement(struct PyPetscISObje
/* "PETSc/IS.pyx":230
* return out
*
- * def embed(self, IS iset not None, drop): # <<<<<<<<<<<<<<
+ * def embed(self, IS iset, drop): # <<<<<<<<<<<<<<
* cdef PetscBool bval = drop
* cdef IS out = IS()
*/
@@ -79880,7 +86264,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_73embed(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -79889,6 +86275,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_73embed(PyObject *__pyx_v_self, P
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iset)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_drop)) != 0)) kw_args--;
else {
@@ -79939,7 +86326,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_72embed(struct PyPetscISObject *_
/* "PETSc/IS.pyx":231
*
- * def embed(self, IS iset not None, drop):
+ * def embed(self, IS iset, drop):
* cdef PetscBool bval = drop # <<<<<<<<<<<<<<
* cdef IS out = IS()
* CHKERR( ISEmbed(self.iset, iset.iset, bval, &out.iset) )
@@ -79948,7 +86335,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_72embed(struct PyPetscISObject *_
__pyx_v_bval = __pyx_t_1;
/* "PETSc/IS.pyx":232
- * def embed(self, IS iset not None, drop):
+ * def embed(self, IS iset, drop):
* cdef PetscBool bval = drop
* cdef IS out = IS() # <<<<<<<<<<<<<<
* CHKERR( ISEmbed(self.iset, iset.iset, bval, &out.iset) )
@@ -79966,7 +86353,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_72embed(struct PyPetscISObject *_
* return out
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISEmbed(__pyx_v_self->iset, __pyx_v_iset->iset, __pyx_v_bval, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(29, 233, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISEmbed(__pyx_v_self->iset, __pyx_v_iset->iset, __pyx_v_bval, (&__pyx_v_out->iset))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(29, 233, __pyx_L1_error)
/* "PETSc/IS.pyx":234
* cdef IS out = IS()
@@ -79983,7 +86370,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_72embed(struct PyPetscISObject *_
/* "PETSc/IS.pyx":230
* return out
*
- * def embed(self, IS iset not None, drop): # <<<<<<<<<<<<<<
+ * def embed(self, IS iset, drop): # <<<<<<<<<<<<<<
* cdef PetscBool bval = drop
* cdef IS out = IS()
*/
@@ -80024,6 +86411,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_75setIndices(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -80107,7 +86495,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_74setIndices(struct PyPetscISObje
*
* def getIndices(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGeneralSetIndices(__pyx_v_self->iset, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 242, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGeneralSetIndices(__pyx_v_self->iset, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 242, __pyx_L1_error)
/* "PETSc/IS.pyx":238
* #
@@ -80200,7 +86588,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_76getIndices(struct PyPetscISObje
* CHKERR( ISGetIndices(self.iset, &indices) )
* cdef object oindices = None
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 247, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 247, __pyx_L1_error)
/* "PETSc/IS.pyx":248
* cdef const_PetscInt *indices = NULL
@@ -80209,7 +86597,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_76getIndices(struct PyPetscISObje
* cdef object oindices = None
* try:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 248, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 248, __pyx_L1_error)
/* "PETSc/IS.pyx":249
* CHKERR( ISGetLocalSize(self.iset, &size) )
@@ -80252,7 +86640,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_76getIndices(struct PyPetscISObje
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 253, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 253, __pyx_L1_error)
goto __pyx_L5;
}
/*exception exit:*/{
@@ -80271,9 +86659,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_76getIndices(struct PyPetscISObje
__Pyx_XGOTREF(__pyx_t_10);
__pyx_t_1 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
{
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(29, 253, __pyx_L7_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(29, 253, __pyx_L7_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -80288,7 +86675,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_76getIndices(struct PyPetscISObje
__pyx_lineno = __pyx_t_1; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
goto __pyx_L1_error;
__pyx_L7_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -80361,7 +86747,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_79setBlockIndices(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -80370,6 +86758,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_79setBlockIndices(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else {
@@ -80423,7 +86812,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_78setBlockIndices(struct PyPetscI
* cdef PetscInt nidx = 0, *idx = NULL
* cdef PetscCopyMode cm = PETSC_COPY_VALUES
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 257, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 257, __pyx_L1_error)
__pyx_v_bs = __pyx_t_1;
/* "PETSc/IS.pyx":258
@@ -80464,7 +86853,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_78setBlockIndices(struct PyPetscI
*
* def getBlockIndices(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockSetIndices(__pyx_v_self->iset, __pyx_v_bs, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(29, 261, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockSetIndices(__pyx_v_self->iset, __pyx_v_bs, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(29, 261, __pyx_L1_error)
/* "PETSc/IS.pyx":256
* return oindices
@@ -80559,7 +86948,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_80getBlockIndices(struct PyPetscI
* CHKERR( ISGetBlockSize(self.iset, &bs) )
* CHKERR( ISBlockGetIndices(self.iset, &indices) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 266, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 266, __pyx_L1_error)
/* "PETSc/IS.pyx":267
* cdef const_PetscInt *indices = NULL
@@ -80568,7 +86957,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_80getBlockIndices(struct PyPetscI
* CHKERR( ISBlockGetIndices(self.iset, &indices) )
* cdef object oindices = None
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetBlockSize(__pyx_v_self->iset, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 267, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetBlockSize(__pyx_v_self->iset, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 267, __pyx_L1_error)
/* "PETSc/IS.pyx":268
* CHKERR( ISGetLocalSize(self.iset, &size) )
@@ -80577,7 +86966,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_80getBlockIndices(struct PyPetscI
* cdef object oindices = None
* try:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockGetIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 268, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockGetIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 268, __pyx_L1_error)
/* "PETSc/IS.pyx":269
* CHKERR( ISGetBlockSize(self.iset, &bs) )
@@ -80620,7 +87009,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_80getBlockIndices(struct PyPetscI
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 273, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 273, __pyx_L1_error)
goto __pyx_L5;
}
/*exception exit:*/{
@@ -80639,9 +87028,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_80getBlockIndices(struct PyPetscI
__Pyx_XGOTREF(__pyx_t_10);
__pyx_t_1 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
{
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(29, 273, __pyx_L7_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISBlockRestoreIndices(__pyx_v_self->iset, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(29, 273, __pyx_L7_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -80656,7 +87044,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_80getBlockIndices(struct PyPetscI
__pyx_lineno = __pyx_t_1; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
goto __pyx_L1_error;
__pyx_L7_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -80732,8 +87119,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_83setStride(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -80742,11 +87132,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_83setStride(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_first);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_step);
@@ -80759,7 +87151,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2IS_83setStride(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -80801,7 +87195,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_82setStride(struct PyPetscISObjec
* cdef PetscInt cfirst = asInt(first)
* cdef PetscInt cstep = asInt(step)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 277, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 277, __pyx_L1_error)
__pyx_v_csize = __pyx_t_1;
/* "PETSc/IS.pyx":278
@@ -80811,7 +87205,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_82setStride(struct PyPetscISObjec
* cdef PetscInt cstep = asInt(step)
* CHKERR( ISStrideSetStride(self.iset, csize, cfirst, cstep) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_first); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 278, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_first); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 278, __pyx_L1_error)
__pyx_v_cfirst = __pyx_t_1;
/* "PETSc/IS.pyx":279
@@ -80821,7 +87215,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_82setStride(struct PyPetscISObjec
* CHKERR( ISStrideSetStride(self.iset, csize, cfirst, cstep) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 279, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 279, __pyx_L1_error)
__pyx_v_cstep = __pyx_t_1;
/* "PETSc/IS.pyx":280
@@ -80831,7 +87225,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_82setStride(struct PyPetscISObjec
*
* def getStride(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISStrideSetStride(__pyx_v_self->iset, __pyx_v_csize, __pyx_v_cfirst, __pyx_v_cstep)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 280, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISStrideSetStride(__pyx_v_self->iset, __pyx_v_csize, __pyx_v_cfirst, __pyx_v_cstep)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 280, __pyx_L1_error)
/* "PETSc/IS.pyx":276
* return oindices
@@ -80909,7 +87303,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_84getStride(struct PyPetscISObjec
* CHKERR( ISStrideGetInfo(self.iset, &first, &step) )
* return (toInt(size), toInt(first), toInt(step))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 284, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGetLocalSize(__pyx_v_self->iset, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 284, __pyx_L1_error)
/* "PETSc/IS.pyx":285
* cdef PetscInt size=0, first=0, step=0
@@ -80918,7 +87312,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_84getStride(struct PyPetscISObjec
* return (toInt(size), toInt(first), toInt(step))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISStrideGetInfo(__pyx_v_self->iset, (&__pyx_v_first), (&__pyx_v_step))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 285, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISStrideGetInfo(__pyx_v_self->iset, (&__pyx_v_first), (&__pyx_v_step))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 285, __pyx_L1_error)
/* "PETSc/IS.pyx":286
* CHKERR( ISGetLocalSize(self.iset, &size) )
@@ -81024,7 +87418,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_86getInfo(struct PyPetscISObject
* return (toInt(first), toInt(step))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISStrideGetInfo(__pyx_v_self->iset, (&__pyx_v_first), (&__pyx_v_step))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 290, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISStrideGetInfo(__pyx_v_self->iset, (&__pyx_v_first), (&__pyx_v_step))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 290, __pyx_L1_error)
/* "PETSc/IS.pyx":291
* cdef PetscInt first = 0, step = 0
@@ -81111,7 +87505,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_11permutation___get__(struct PyPe
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isPermutation); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81193,7 +87587,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_8identity___get__(struct PyPetscI
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isIdentity); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 301, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81275,7 +87669,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_6sorted___get__(struct PyPetscISO
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isSorted); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 305, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81357,7 +87751,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_5sizes___get__(struct PyPetscISOb
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 311, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81439,7 +87833,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_4size___get__(struct PyPetscISObj
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 315, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81521,7 +87915,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_10local_size___get__(struct PyPet
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getLocalSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 319, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81603,7 +87997,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_10block_size___get__(struct PyPet
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 323, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81685,7 +88079,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_7indices___get__(struct PyPetscIS
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIndices); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 327, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -81869,7 +88263,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2IS_19__array_interface_____get__(str
return __pyx_r;
}
-/* "PETSc/IS.pyx":356
+/* "PETSc/IS.pyx":362
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -81898,7 +88292,7 @@ static int __pyx_pf_8petsc4py_5PETSc_5LGMap___cinit__(struct PyPetscLGMapObject
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/IS.pyx":357
+ /* "PETSc/IS.pyx":363
*
* def __cinit__(self):
* self.obj = <PetscObject*> &self.lgm # <<<<<<<<<<<<<<
@@ -81907,7 +88301,7 @@ static int __pyx_pf_8petsc4py_5PETSc_5LGMap___cinit__(struct PyPetscLGMapObject
*/
__pyx_v_self->__pyx_base.obj = ((PetscObject *)(&__pyx_v_self->lgm));
- /* "PETSc/IS.pyx":358
+ /* "PETSc/IS.pyx":364
* def __cinit__(self):
* self.obj = <PetscObject*> &self.lgm
* self.lgm = NULL # <<<<<<<<<<<<<<
@@ -81916,7 +88310,7 @@ static int __pyx_pf_8petsc4py_5PETSc_5LGMap___cinit__(struct PyPetscLGMapObject
*/
__pyx_v_self->lgm = NULL;
- /* "PETSc/IS.pyx":356
+ /* "PETSc/IS.pyx":362
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -81930,7 +88324,7 @@ static int __pyx_pf_8petsc4py_5PETSc_5LGMap___cinit__(struct PyPetscLGMapObject
return __pyx_r;
}
-/* "PETSc/IS.pyx":360
+/* "PETSc/IS.pyx":366
* self.lgm = NULL
*
* def __call__(self, indices, result=None): # <<<<<<<<<<<<<<
@@ -81955,7 +88349,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_3__call__(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -81964,6 +88360,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_3__call__(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
@@ -81971,11 +88368,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_3__call__(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(29, 360, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(29, 366, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -81986,7 +88384,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_3__call__(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 360, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 366, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -82005,22 +88403,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_2__call__(struct PyPetscLGMapO
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
- Py_ssize_t __pyx_t_4;
+ int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("__call__", 0);
- /* "PETSc/IS.pyx":361
+ /* "PETSc/IS.pyx":367
*
* def __call__(self, indices, result=None):
* self.apply(indices, result) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_apply); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 361, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_apply); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 367, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
__pyx_t_4 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -82030,24 +88428,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_2__call__(struct PyPetscLGMapO
__pyx_t_4 = 1;
}
}
- __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(29, 361, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (__pyx_t_3) {
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_indices, __pyx_v_result};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 367, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_indices, __pyx_v_result};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 367, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(29, 367, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (__pyx_t_3) {
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_indices);
+ __Pyx_GIVEREF(__pyx_v_indices);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_indices);
+ __Pyx_INCREF(__pyx_v_result);
+ __Pyx_GIVEREF(__pyx_v_result);
+ PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_result);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 367, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- __Pyx_INCREF(__pyx_v_indices);
- __Pyx_GIVEREF(__pyx_v_indices);
- PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_indices);
- __Pyx_INCREF(__pyx_v_result);
- __Pyx_GIVEREF(__pyx_v_result);
- PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_result);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 361, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/IS.pyx":360
+ /* "PETSc/IS.pyx":366
* self.lgm = NULL
*
* def __call__(self, indices, result=None): # <<<<<<<<<<<<<<
@@ -82071,18 +88487,198 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_2__call__(struct PyPetscLGMapO
return __pyx_r;
}
-/* "PETSc/IS.pyx":365
+/* "PETSc/IS.pyx":371
* #
*
+ * def setType(self, lgmap_type): # <<<<<<<<<<<<<<
+ * cdef PetscISLocalToGlobalMappingType cval = NULL
+ * lgmap_type = str2bytes(lgmap_type, &cval)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5setType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_4setType[] = "LGMap.setType(self, lgmap_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5setType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_lgmap_type = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setType (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_lgmap_type,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lgmap_type)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(29, 371, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_lgmap_type = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 371, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.LGMap.setType", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_4setType(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_lgmap_type);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4setType(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_lgmap_type) {
+ const char* __pyx_v_cval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setType", 0);
+ __Pyx_INCREF(__pyx_v_lgmap_type);
+
+ /* "PETSc/IS.pyx":372
+ *
+ * def setType(self, lgmap_type):
+ * cdef PetscISLocalToGlobalMappingType cval = NULL # <<<<<<<<<<<<<<
+ * lgmap_type = str2bytes(lgmap_type, &cval)
+ * CHKERR( ISLocalToGlobalMappingSetType(self.lgm, cval) )
+ */
+ __pyx_v_cval = NULL;
+
+ /* "PETSc/IS.pyx":373
+ * def setType(self, lgmap_type):
+ * cdef PetscISLocalToGlobalMappingType cval = NULL
+ * lgmap_type = str2bytes(lgmap_type, &cval) # <<<<<<<<<<<<<<
+ * CHKERR( ISLocalToGlobalMappingSetType(self.lgm, cval) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_lgmap_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 373, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_lgmap_type, __pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/IS.pyx":374
+ * cdef PetscISLocalToGlobalMappingType cval = NULL
+ * lgmap_type = str2bytes(lgmap_type, &cval)
+ * CHKERR( ISLocalToGlobalMappingSetType(self.lgm, cval) ) # <<<<<<<<<<<<<<
+ *
+ * def setFromOptions(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingSetType(__pyx_v_self->lgm, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 374, __pyx_L1_error)
+
+ /* "PETSc/IS.pyx":371
+ * #
+ *
+ * def setType(self, lgmap_type): # <<<<<<<<<<<<<<
+ * cdef PetscISLocalToGlobalMappingType cval = NULL
+ * lgmap_type = str2bytes(lgmap_type, &cval)
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.LGMap.setType", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_lgmap_type);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/IS.pyx":376
+ * CHKERR( ISLocalToGlobalMappingSetType(self.lgm, cval) )
+ *
+ * def setFromOptions(self): # <<<<<<<<<<<<<<
+ * CHKERR( ISLocalToGlobalMappingSetFromOptions(self.lgm) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_7setFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_6setFromOptions[] = "LGMap.setFromOptions(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_7setFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setFromOptions (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("setFromOptions", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "setFromOptions", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_6setFromOptions(((struct PyPetscLGMapObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_6setFromOptions(struct PyPetscLGMapObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("setFromOptions", 0);
+
+ /* "PETSc/IS.pyx":377
+ *
+ * def setFromOptions(self):
+ * CHKERR( ISLocalToGlobalMappingSetFromOptions(self.lgm) ) # <<<<<<<<<<<<<<
+ *
+ * def view(self, Viewer viewer=None):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingSetFromOptions(__pyx_v_self->lgm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 377, __pyx_L1_error)
+
+ /* "PETSc/IS.pyx":376
+ * CHKERR( ISLocalToGlobalMappingSetType(self.lgm, cval) )
+ *
+ * def setFromOptions(self): # <<<<<<<<<<<<<<
+ * CHKERR( ISLocalToGlobalMappingSetFromOptions(self.lgm) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.LGMap.setFromOptions", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/IS.pyx":379
+ * CHKERR( ISLocalToGlobalMappingSetFromOptions(self.lgm) )
+ *
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
* cdef PetscViewer cviewer = NULL
* if viewer is not None: cviewer = viewer.vwr
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5view(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_4view[] = "LGMap.view(self, Viewer viewer=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5view(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9view(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_8view[] = "LGMap.view(self, Viewer viewer=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9view(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscViewerObject *__pyx_v_viewer = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -82096,6 +88692,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5view(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -82108,11 +88705,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5view(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(29, 365, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(29, 379, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -82121,14 +88719,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5view(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 365, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 379, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.view", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(29, 365, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_4view(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_viewer);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(29, 379, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_8view(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
goto __pyx_L0;
@@ -82139,7 +88737,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_5view(PyObject *__pyx_v_self,
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4view(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8view(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer) {
PetscViewer __pyx_v_cviewer;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -82149,7 +88747,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4view(struct PyPetscLGMapObjec
int __pyx_t_4;
__Pyx_RefNannySetupContext("view", 0);
- /* "PETSc/IS.pyx":366
+ /* "PETSc/IS.pyx":380
*
* def view(self, Viewer viewer=None):
* cdef PetscViewer cviewer = NULL # <<<<<<<<<<<<<<
@@ -82158,7 +88756,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4view(struct PyPetscLGMapObjec
*/
__pyx_v_cviewer = NULL;
- /* "PETSc/IS.pyx":367
+ /* "PETSc/IS.pyx":381
* def view(self, Viewer viewer=None):
* cdef PetscViewer cviewer = NULL
* if viewer is not None: cviewer = viewer.vwr # <<<<<<<<<<<<<<
@@ -82172,17 +88770,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4view(struct PyPetscLGMapObjec
__pyx_v_cviewer = __pyx_t_3;
}
- /* "PETSc/IS.pyx":368
+ /* "PETSc/IS.pyx":382
* cdef PetscViewer cviewer = NULL
* if viewer is not None: cviewer = viewer.vwr
* CHKERR( ISLocalToGlobalMappingView(self.lgm, cviewer) ) # <<<<<<<<<<<<<<
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingView(__pyx_v_self->lgm, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(29, 368, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingView(__pyx_v_self->lgm, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(29, 382, __pyx_L1_error)
- /* "PETSc/IS.pyx":365
- * #
+ /* "PETSc/IS.pyx":379
+ * CHKERR( ISLocalToGlobalMappingSetFromOptions(self.lgm) )
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
* cdef PetscViewer cviewer = NULL
@@ -82201,7 +88799,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4view(struct PyPetscLGMapObjec
return __pyx_r;
}
-/* "PETSc/IS.pyx":370
+/* "PETSc/IS.pyx":384
* CHKERR( ISLocalToGlobalMappingView(self.lgm, cviewer) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -82210,38 +88808,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4view(struct PyPetscLGMapObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_7destroy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_6destroy[] = "LGMap.destroy(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_7destroy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11destroy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_10destroy[] = "LGMap.destroy(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11destroy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("destroy (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("destroy", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "destroy", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_6destroy(((struct PyPetscLGMapObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_10destroy(((struct PyPetscLGMapObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_6destroy(struct PyPetscLGMapObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10destroy(struct PyPetscLGMapObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("destroy", 0);
- /* "PETSc/IS.pyx":371
+ /* "PETSc/IS.pyx":385
*
* def destroy(self):
* CHKERR( ISLocalToGlobalMappingDestroy(&self.lgm) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingDestroy((&__pyx_v_self->lgm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 371, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingDestroy((&__pyx_v_self->lgm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 385, __pyx_L1_error)
- /* "PETSc/IS.pyx":372
+ /* "PETSc/IS.pyx":386
* def destroy(self):
* CHKERR( ISLocalToGlobalMappingDestroy(&self.lgm) )
* return self # <<<<<<<<<<<<<<
@@ -82253,7 +88851,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_6destroy(struct PyPetscLGMapOb
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/IS.pyx":370
+ /* "PETSc/IS.pyx":384
* CHKERR( ISLocalToGlobalMappingView(self.lgm, cviewer) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -82271,7 +88869,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_6destroy(struct PyPetscLGMapOb
return __pyx_r;
}
-/* "PETSc/IS.pyx":374
+/* "PETSc/IS.pyx":388
* return self
*
* def create(self, indices, bsize=None, comm=None): # <<<<<<<<<<<<<<
@@ -82280,9 +88878,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_6destroy(struct PyPetscLGMapOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9create(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_8create[] = "LGMap.create(self, indices, bsize=None, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9create(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13create(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_12create[] = "LGMap.create(self, indices, bsize=None, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13create(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_indices = 0;
PyObject *__pyx_v_bsize = 0;
PyObject *__pyx_v_comm = 0;
@@ -82299,8 +88897,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9create(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -82309,11 +88910,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9create(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -82321,12 +88924,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9create(PyObject *__pyx_v_self
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(29, 374, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(29, 388, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -82338,20 +88943,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_9create(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 374, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 388, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_8create(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_bsize, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_12create(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_bsize, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_bsize, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12create(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_bsize, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
PetscInt __pyx_v_bs;
PetscInt __pyx_v_nidx;
@@ -82369,17 +88974,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
__Pyx_RefNannySetupContext("create", 0);
__Pyx_INCREF(__pyx_v_indices);
- /* "PETSc/IS.pyx":375
+ /* "PETSc/IS.pyx":389
*
* def create(self, indices, bsize=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscInt bs = 1, nidx = 0, *idx = NULL
* cdef PetscCopyMode cm = PETSC_COPY_VALUES
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(29, 375, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(29, 389, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/IS.pyx":376
+ /* "PETSc/IS.pyx":390
* def create(self, indices, bsize=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscInt bs = 1, nidx = 0, *idx = NULL # <<<<<<<<<<<<<<
@@ -82390,7 +88995,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
__pyx_v_nidx = 0;
__pyx_v_idx = NULL;
- /* "PETSc/IS.pyx":377
+ /* "PETSc/IS.pyx":391
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscInt bs = 1, nidx = 0, *idx = NULL
* cdef PetscCopyMode cm = PETSC_COPY_VALUES # <<<<<<<<<<<<<<
@@ -82399,7 +89004,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
*/
__pyx_v_cm = PETSC_COPY_VALUES;
- /* "PETSc/IS.pyx":378
+ /* "PETSc/IS.pyx":392
* cdef PetscInt bs = 1, nidx = 0, *idx = NULL
* cdef PetscCopyMode cm = PETSC_COPY_VALUES
* cdef PetscLGMap newlgm = NULL # <<<<<<<<<<<<<<
@@ -82408,7 +89013,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
*/
__pyx_v_newlgm = NULL;
- /* "PETSc/IS.pyx":379
+ /* "PETSc/IS.pyx":393
* cdef PetscCopyMode cm = PETSC_COPY_VALUES
* cdef PetscLGMap newlgm = NULL
* if bsize is not None: bs = asInt(bsize) # <<<<<<<<<<<<<<
@@ -82418,11 +89023,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
__pyx_t_2 = (__pyx_v_bsize != Py_None);
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(29, 379, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 393, __pyx_L1_error)
__pyx_v_bs = __pyx_t_4;
}
- /* "PETSc/IS.pyx":380
+ /* "PETSc/IS.pyx":394
* cdef PetscLGMap newlgm = NULL
* if bsize is not None: bs = asInt(bsize)
* if bs == PETSC_DECIDE: bs = 1 # <<<<<<<<<<<<<<
@@ -82434,28 +89039,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
__pyx_v_bs = 1;
}
- /* "PETSc/IS.pyx":381
+ /* "PETSc/IS.pyx":395
* if bsize is not None: bs = asInt(bsize)
* if bs == PETSC_DECIDE: bs = 1
* indices = iarray_i(indices, &nidx, &idx) # <<<<<<<<<<<<<<
* CHKERR( ISLocalToGlobalMappingCreate(
* ccomm, bs, nidx, idx, cm, &newlgm) )
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_nidx), (&__pyx_v_idx))); if (unlikely(!__pyx_t_5)) __PYX_ERR(29, 381, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_nidx), (&__pyx_v_idx))); if (unlikely(!__pyx_t_5)) __PYX_ERR(29, 395, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_indices, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/IS.pyx":382
+ /* "PETSc/IS.pyx":396
* if bs == PETSC_DECIDE: bs = 1
* indices = iarray_i(indices, &nidx, &idx)
* CHKERR( ISLocalToGlobalMappingCreate( # <<<<<<<<<<<<<<
* ccomm, bs, nidx, idx, cm, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingCreate(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm, (&__pyx_v_newlgm))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(29, 382, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingCreate(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_nidx, __pyx_v_idx, __pyx_v_cm, (&__pyx_v_newlgm))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(29, 396, __pyx_L1_error)
- /* "PETSc/IS.pyx":384
+ /* "PETSc/IS.pyx":398
* CHKERR( ISLocalToGlobalMappingCreate(
* ccomm, bs, nidx, idx, cm, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm # <<<<<<<<<<<<<<
@@ -82465,19 +89070,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->lgm = __pyx_v_newlgm;
- /* "PETSc/IS.pyx":385
+ /* "PETSc/IS.pyx":399
* ccomm, bs, nidx, idx, cm, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm
* return self # <<<<<<<<<<<<<<
*
- * def createIS(self, IS iset not None):
+ * def createIS(self, IS iset):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/IS.pyx":374
+ /* "PETSc/IS.pyx":388
* return self
*
* def create(self, indices, bsize=None, comm=None): # <<<<<<<<<<<<<<
@@ -82497,18 +89102,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_8create(struct PyPetscLGMapObj
return __pyx_r;
}
-/* "PETSc/IS.pyx":387
+/* "PETSc/IS.pyx":401
* return self
*
- * def createIS(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def createIS(self, IS iset): # <<<<<<<<<<<<<<
* cdef PetscLGMap newlgm = NULL
* CHKERR( ISLocalToGlobalMappingCreateIS(
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11createIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_10createIS[] = "LGMap.createIS(self, IS iset)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11createIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_15createIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_14createIS[] = "LGMap.createIS(self, IS iset)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_15createIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_iset = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -82521,6 +89126,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11createIS(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -82531,7 +89137,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11createIS(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createIS") < 0)) __PYX_ERR(29, 387, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createIS") < 0)) __PYX_ERR(29, 401, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -82542,14 +89148,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11createIS(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createIS", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 387, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createIS", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 401, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.createIS", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(29, 387, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_10createIS(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_iset);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(29, 401, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_14createIS(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_iset);
/* function exit code */
goto __pyx_L0;
@@ -82560,32 +89166,32 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_11createIS(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10createIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14createIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset) {
ISLocalToGlobalMapping __pyx_v_newlgm;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("createIS", 0);
- /* "PETSc/IS.pyx":388
+ /* "PETSc/IS.pyx":402
*
- * def createIS(self, IS iset not None):
+ * def createIS(self, IS iset):
* cdef PetscLGMap newlgm = NULL # <<<<<<<<<<<<<<
* CHKERR( ISLocalToGlobalMappingCreateIS(
* iset.iset, &newlgm) )
*/
__pyx_v_newlgm = NULL;
- /* "PETSc/IS.pyx":389
- * def createIS(self, IS iset not None):
+ /* "PETSc/IS.pyx":403
+ * def createIS(self, IS iset):
* cdef PetscLGMap newlgm = NULL
* CHKERR( ISLocalToGlobalMappingCreateIS( # <<<<<<<<<<<<<<
* iset.iset, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingCreateIS(__pyx_v_iset->iset, (&__pyx_v_newlgm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 389, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingCreateIS(__pyx_v_iset->iset, (&__pyx_v_newlgm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 403, __pyx_L1_error)
- /* "PETSc/IS.pyx":391
+ /* "PETSc/IS.pyx":405
* CHKERR( ISLocalToGlobalMappingCreateIS(
* iset.iset, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm # <<<<<<<<<<<<<<
@@ -82595,22 +89201,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10createIS(struct PyPetscLGMap
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->lgm = __pyx_v_newlgm;
- /* "PETSc/IS.pyx":392
+ /* "PETSc/IS.pyx":406
* iset.iset, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm
* return self # <<<<<<<<<<<<<<
*
- * def createSF(self, SF sf not None, start):
+ * def createSF(self, SF sf, start):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/IS.pyx":387
+ /* "PETSc/IS.pyx":401
* return self
*
- * def createIS(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def createIS(self, IS iset): # <<<<<<<<<<<<<<
* cdef PetscLGMap newlgm = NULL
* CHKERR( ISLocalToGlobalMappingCreateIS(
*/
@@ -82625,18 +89231,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10createIS(struct PyPetscLGMap
return __pyx_r;
}
-/* "PETSc/IS.pyx":394
+/* "PETSc/IS.pyx":408
* return self
*
- * def createSF(self, SF sf not None, start): # <<<<<<<<<<<<<<
+ * def createSF(self, SF sf, start): # <<<<<<<<<<<<<<
* cdef PetscLGMap newlgm = NULL
* cdef PetscInt cstart = asInt(start)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13createSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_12createSF[] = "LGMap.createSF(self, SF sf, start)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13createSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_17createSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_16createSF[] = "LGMap.createSF(self, SF sf, start)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_17createSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscSFObject *__pyx_v_sf = 0;
PyObject *__pyx_v_start = 0;
PyObject *__pyx_r = 0;
@@ -82650,7 +89256,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13createSF(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -82659,14 +89267,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13createSF(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sf)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createSF", 1, 2, 2, 1); __PYX_ERR(29, 394, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSF", 1, 2, 2, 1); __PYX_ERR(29, 408, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSF") < 0)) __PYX_ERR(29, 394, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSF") < 0)) __PYX_ERR(29, 408, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -82679,14 +89288,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13createSF(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createSF", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 394, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSF", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 408, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.createSF", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sf), __pyx_ptype_8petsc4py_5PETSc_SF, 0, "sf", 0))) __PYX_ERR(29, 394, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_sf, __pyx_v_start);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sf), __pyx_ptype_8petsc4py_5PETSc_SF, 0, "sf", 0))) __PYX_ERR(29, 408, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_16createSF(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_sf, __pyx_v_start);
/* function exit code */
goto __pyx_L0;
@@ -82697,7 +89306,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_13createSF(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, PyObject *__pyx_v_start) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16createSF(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, PyObject *__pyx_v_start) {
ISLocalToGlobalMapping __pyx_v_newlgm;
PetscInt __pyx_v_cstart;
PyObject *__pyx_r = NULL;
@@ -82706,35 +89315,35 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(struct PyPetscLGMap
int __pyx_t_2;
__Pyx_RefNannySetupContext("createSF", 0);
- /* "PETSc/IS.pyx":395
+ /* "PETSc/IS.pyx":409
*
- * def createSF(self, SF sf not None, start):
+ * def createSF(self, SF sf, start):
* cdef PetscLGMap newlgm = NULL # <<<<<<<<<<<<<<
* cdef PetscInt cstart = asInt(start)
* CHKERR( ISLocalToGlobalMappingCreateSF(sf.sf, cstart, &newlgm) )
*/
__pyx_v_newlgm = NULL;
- /* "PETSc/IS.pyx":396
- * def createSF(self, SF sf not None, start):
+ /* "PETSc/IS.pyx":410
+ * def createSF(self, SF sf, start):
* cdef PetscLGMap newlgm = NULL
* cdef PetscInt cstart = asInt(start) # <<<<<<<<<<<<<<
* CHKERR( ISLocalToGlobalMappingCreateSF(sf.sf, cstart, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_start); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(29, 396, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_start); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(29, 410, __pyx_L1_error)
__pyx_v_cstart = __pyx_t_1;
- /* "PETSc/IS.pyx":397
+ /* "PETSc/IS.pyx":411
* cdef PetscLGMap newlgm = NULL
* cdef PetscInt cstart = asInt(start)
* CHKERR( ISLocalToGlobalMappingCreateSF(sf.sf, cstart, &newlgm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.lgm = newlgm
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingCreateSF(__pyx_v_sf->sf, __pyx_v_cstart, (&__pyx_v_newlgm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 397, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingCreateSF(__pyx_v_sf->sf, __pyx_v_cstart, (&__pyx_v_newlgm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 411, __pyx_L1_error)
- /* "PETSc/IS.pyx":398
+ /* "PETSc/IS.pyx":412
* cdef PetscInt cstart = asInt(start)
* CHKERR( ISLocalToGlobalMappingCreateSF(sf.sf, cstart, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm # <<<<<<<<<<<<<<
@@ -82744,7 +89353,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(struct PyPetscLGMap
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->lgm = __pyx_v_newlgm;
- /* "PETSc/IS.pyx":399
+ /* "PETSc/IS.pyx":413
* CHKERR( ISLocalToGlobalMappingCreateSF(sf.sf, cstart, &newlgm) )
* PetscCLEAR(self.obj); self.lgm = newlgm
* return self # <<<<<<<<<<<<<<
@@ -82756,10 +89365,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(struct PyPetscLGMap
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/IS.pyx":394
+ /* "PETSc/IS.pyx":408
* return self
*
- * def createSF(self, SF sf not None, start): # <<<<<<<<<<<<<<
+ * def createSF(self, SF sf, start): # <<<<<<<<<<<<<<
* cdef PetscLGMap newlgm = NULL
* cdef PetscInt cstart = asInt(start)
*/
@@ -82774,7 +89383,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(struct PyPetscLGMap
return __pyx_r;
}
-/* "PETSc/IS.pyx":401
+/* "PETSc/IS.pyx":415
* return self
*
* def getSize(self): # <<<<<<<<<<<<<<
@@ -82783,23 +89392,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_12createSF(struct PyPetscLGMap
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_15getSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_14getSize[] = "LGMap.getSize(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_15getSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_19getSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_18getSize[] = "LGMap.getSize(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_19getSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getSize (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getSize", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSize", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(((struct PyPetscLGMapObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_18getSize(((struct PyPetscLGMapObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(struct PyPetscLGMapObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getSize(struct PyPetscLGMapObject *__pyx_v_self) {
PetscInt __pyx_v_n;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -82807,7 +89416,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(struct PyPetscLGMapO
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getSize", 0);
- /* "PETSc/IS.pyx":402
+ /* "PETSc/IS.pyx":416
*
* def getSize(self):
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -82816,16 +89425,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(struct PyPetscLGMapO
*/
__pyx_v_n = 0;
- /* "PETSc/IS.pyx":403
+ /* "PETSc/IS.pyx":417
* def getSize(self):
* cdef PetscInt n = 0
* CHKERR( ISLocalToGlobalMappingGetSize(self.lgm, &n) ) # <<<<<<<<<<<<<<
* return toInt(n)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetSize(__pyx_v_self->lgm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 403, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetSize(__pyx_v_self->lgm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 417, __pyx_L1_error)
- /* "PETSc/IS.pyx":404
+ /* "PETSc/IS.pyx":418
* cdef PetscInt n = 0
* CHKERR( ISLocalToGlobalMappingGetSize(self.lgm, &n) )
* return toInt(n) # <<<<<<<<<<<<<<
@@ -82833,13 +89442,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(struct PyPetscLGMapO
* def getBlockSize(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 404, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 418, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":401
+ /* "PETSc/IS.pyx":415
* return self
*
* def getSize(self): # <<<<<<<<<<<<<<
@@ -82858,7 +89467,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(struct PyPetscLGMapO
return __pyx_r;
}
-/* "PETSc/IS.pyx":406
+/* "PETSc/IS.pyx":420
* return toInt(n)
*
* def getBlockSize(self): # <<<<<<<<<<<<<<
@@ -82867,23 +89476,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_14getSize(struct PyPetscLGMapO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_17getBlockSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_16getBlockSize[] = "LGMap.getBlockSize(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_17getBlockSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_21getBlockSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_20getBlockSize[] = "LGMap.getBlockSize(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_21getBlockSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getBlockSize (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getBlockSize", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getBlockSize", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(((struct PyPetscLGMapObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockSize(((struct PyPetscLGMapObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(struct PyPetscLGMapObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockSize(struct PyPetscLGMapObject *__pyx_v_self) {
PetscInt __pyx_v_bs;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -82891,7 +89500,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(struct PyPetscL
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getBlockSize", 0);
- /* "PETSc/IS.pyx":407
+ /* "PETSc/IS.pyx":421
*
* def getBlockSize(self):
* cdef PetscInt bs = 1 # <<<<<<<<<<<<<<
@@ -82900,16 +89509,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(struct PyPetscL
*/
__pyx_v_bs = 1;
- /* "PETSc/IS.pyx":408
+ /* "PETSc/IS.pyx":422
* def getBlockSize(self):
* cdef PetscInt bs = 1
* CHKERR( ISLocalToGlobalMappingGetBlockSize(self.lgm, &bs) ) # <<<<<<<<<<<<<<
* return toInt(bs)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockSize(__pyx_v_self->lgm, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 408, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockSize(__pyx_v_self->lgm, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 422, __pyx_L1_error)
- /* "PETSc/IS.pyx":409
+ /* "PETSc/IS.pyx":423
* cdef PetscInt bs = 1
* CHKERR( ISLocalToGlobalMappingGetBlockSize(self.lgm, &bs) )
* return toInt(bs) # <<<<<<<<<<<<<<
@@ -82917,13 +89526,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(struct PyPetscL
* def getIndices(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 409, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":406
+ /* "PETSc/IS.pyx":420
* return toInt(n)
*
* def getBlockSize(self): # <<<<<<<<<<<<<<
@@ -82942,7 +89551,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(struct PyPetscL
return __pyx_r;
}
-/* "PETSc/IS.pyx":411
+/* "PETSc/IS.pyx":425
* return toInt(bs)
*
* def getIndices(self): # <<<<<<<<<<<<<<
@@ -82951,23 +89560,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_16getBlockSize(struct PyPetscL
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_19getIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_18getIndices[] = "LGMap.getIndices(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_19getIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_23getIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_22getIndices[] = "LGMap.getIndices(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_23getIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getIndices (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getIndices", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getIndices", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(((struct PyPetscLGMapObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_22getIndices(((struct PyPetscLGMapObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGMapObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getIndices(struct PyPetscLGMapObject *__pyx_v_self) {
PetscInt __pyx_v_size;
const PetscInt *__pyx_v_indices;
PyObject *__pyx_v_oindices = 0;
@@ -82986,7 +89595,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
int __pyx_t_11;
__Pyx_RefNannySetupContext("getIndices", 0);
- /* "PETSc/IS.pyx":412
+ /* "PETSc/IS.pyx":426
*
* def getIndices(self):
* cdef PetscInt size = 0 # <<<<<<<<<<<<<<
@@ -82995,7 +89604,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
*/
__pyx_v_size = 0;
- /* "PETSc/IS.pyx":413
+ /* "PETSc/IS.pyx":427
* def getIndices(self):
* cdef PetscInt size = 0
* cdef const_PetscInt *indices = NULL # <<<<<<<<<<<<<<
@@ -83004,25 +89613,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
*/
__pyx_v_indices = NULL;
- /* "PETSc/IS.pyx":414
+ /* "PETSc/IS.pyx":428
* cdef PetscInt size = 0
* cdef const_PetscInt *indices = NULL
* CHKERR( ISLocalToGlobalMappingGetSize( # <<<<<<<<<<<<<<
* self.lgm, &size) )
* CHKERR( ISLocalToGlobalMappingGetIndices(
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetSize(__pyx_v_self->lgm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 414, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetSize(__pyx_v_self->lgm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 428, __pyx_L1_error)
- /* "PETSc/IS.pyx":416
+ /* "PETSc/IS.pyx":430
* CHKERR( ISLocalToGlobalMappingGetSize(
* self.lgm, &size) )
* CHKERR( ISLocalToGlobalMappingGetIndices( # <<<<<<<<<<<<<<
* self.lgm, &indices) )
* cdef object oindices = None
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 416, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 430, __pyx_L1_error)
- /* "PETSc/IS.pyx":418
+ /* "PETSc/IS.pyx":432
* CHKERR( ISLocalToGlobalMappingGetIndices(
* self.lgm, &indices) )
* cdef object oindices = None # <<<<<<<<<<<<<<
@@ -83032,7 +89641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
__Pyx_INCREF(Py_None);
__pyx_v_oindices = Py_None;
- /* "PETSc/IS.pyx":419
+ /* "PETSc/IS.pyx":433
* self.lgm, &indices) )
* cdef object oindices = None
* try: # <<<<<<<<<<<<<<
@@ -83041,20 +89650,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
*/
/*try:*/ {
- /* "PETSc/IS.pyx":420
+ /* "PETSc/IS.pyx":434
* cdef object oindices = None
* try:
* oindices = array_i(size, indices) # <<<<<<<<<<<<<<
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreIndices(
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_size, __pyx_v_indices)); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 420, __pyx_L4_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_size, __pyx_v_indices)); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 434, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_oindices, __pyx_t_2);
__pyx_t_2 = 0;
}
- /* "PETSc/IS.pyx":422
+ /* "PETSc/IS.pyx":436
* oindices = array_i(size, indices)
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreIndices( # <<<<<<<<<<<<<<
@@ -83064,14 +89673,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
/*finally:*/ {
/*normal exit:*/{
- /* "PETSc/IS.pyx":423
+ /* "PETSc/IS.pyx":437
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreIndices(
* self.lgm, &indices) ) # <<<<<<<<<<<<<<
* return oindices
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 422, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 436, __pyx_L1_error)
goto __pyx_L5;
}
/*exception exit:*/{
@@ -83091,16 +89700,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
__pyx_t_1 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
{
- /* "PETSc/IS.pyx":422
+ /* "PETSc/IS.pyx":436
* oindices = array_i(size, indices)
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreIndices( # <<<<<<<<<<<<<<
* self.lgm, &indices) )
* return oindices
*/
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(29, 422, __pyx_L7_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(29, 436, __pyx_L7_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -83115,7 +89723,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
__pyx_lineno = __pyx_t_1; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
goto __pyx_L1_error;
__pyx_L7_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -83131,7 +89738,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
__pyx_L5:;
}
- /* "PETSc/IS.pyx":424
+ /* "PETSc/IS.pyx":438
* CHKERR( ISLocalToGlobalMappingRestoreIndices(
* self.lgm, &indices) )
* return oindices # <<<<<<<<<<<<<<
@@ -83143,7 +89750,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
__pyx_r = __pyx_v_oindices;
goto __pyx_L0;
- /* "PETSc/IS.pyx":411
+ /* "PETSc/IS.pyx":425
* return toInt(bs)
*
* def getIndices(self): # <<<<<<<<<<<<<<
@@ -83163,7 +89770,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
return __pyx_r;
}
-/* "PETSc/IS.pyx":426
+/* "PETSc/IS.pyx":440
* return oindices
*
* def getBlockIndices(self): # <<<<<<<<<<<<<<
@@ -83172,23 +89779,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_18getIndices(struct PyPetscLGM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_21getBlockIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_20getBlockIndices[] = "LGMap.getBlockIndices(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_21getBlockIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_25getBlockIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_24getBlockIndices[] = "LGMap.getBlockIndices(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_25getBlockIndices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getBlockIndices (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getBlockIndices", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getBlockIndices", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(((struct PyPetscLGMapObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockIndices(((struct PyPetscLGMapObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPetscLGMapObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockIndices(struct PyPetscLGMapObject *__pyx_v_self) {
PetscInt __pyx_v_size;
PetscInt __pyx_v_bs;
const PetscInt *__pyx_v_indices;
@@ -83208,7 +89815,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
int __pyx_t_11;
__Pyx_RefNannySetupContext("getBlockIndices", 0);
- /* "PETSc/IS.pyx":427
+ /* "PETSc/IS.pyx":441
*
* def getBlockIndices(self):
* cdef PetscInt size = 0, bs = 1 # <<<<<<<<<<<<<<
@@ -83218,7 +89825,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
__pyx_v_size = 0;
__pyx_v_bs = 1;
- /* "PETSc/IS.pyx":428
+ /* "PETSc/IS.pyx":442
* def getBlockIndices(self):
* cdef PetscInt size = 0, bs = 1
* cdef const_PetscInt *indices = NULL # <<<<<<<<<<<<<<
@@ -83227,34 +89834,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
*/
__pyx_v_indices = NULL;
- /* "PETSc/IS.pyx":429
+ /* "PETSc/IS.pyx":443
* cdef PetscInt size = 0, bs = 1
* cdef const_PetscInt *indices = NULL
* CHKERR( ISLocalToGlobalMappingGetSize( # <<<<<<<<<<<<<<
* self.lgm, &size) )
* CHKERR( ISLocalToGlobalMappingGetBlockSize(
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetSize(__pyx_v_self->lgm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 429, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetSize(__pyx_v_self->lgm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 443, __pyx_L1_error)
- /* "PETSc/IS.pyx":431
+ /* "PETSc/IS.pyx":445
* CHKERR( ISLocalToGlobalMappingGetSize(
* self.lgm, &size) )
* CHKERR( ISLocalToGlobalMappingGetBlockSize( # <<<<<<<<<<<<<<
* self.lgm, &bs) )
* CHKERR( ISLocalToGlobalMappingGetBlockIndices(
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockSize(__pyx_v_self->lgm, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 431, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockSize(__pyx_v_self->lgm, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 445, __pyx_L1_error)
- /* "PETSc/IS.pyx":433
+ /* "PETSc/IS.pyx":447
* CHKERR( ISLocalToGlobalMappingGetBlockSize(
* self.lgm, &bs) )
* CHKERR( ISLocalToGlobalMappingGetBlockIndices( # <<<<<<<<<<<<<<
* self.lgm, &indices) )
* cdef object oindices = None
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 433, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 447, __pyx_L1_error)
- /* "PETSc/IS.pyx":435
+ /* "PETSc/IS.pyx":449
* CHKERR( ISLocalToGlobalMappingGetBlockIndices(
* self.lgm, &indices) )
* cdef object oindices = None # <<<<<<<<<<<<<<
@@ -83264,7 +89871,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
__Pyx_INCREF(Py_None);
__pyx_v_oindices = Py_None;
- /* "PETSc/IS.pyx":436
+ /* "PETSc/IS.pyx":450
* self.lgm, &indices) )
* cdef object oindices = None
* try: # <<<<<<<<<<<<<<
@@ -83273,20 +89880,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
*/
/*try:*/ {
- /* "PETSc/IS.pyx":437
+ /* "PETSc/IS.pyx":451
* cdef object oindices = None
* try:
* oindices = array_i(size//bs, indices) # <<<<<<<<<<<<<<
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreBlockIndices(
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_size / __pyx_v_bs), __pyx_v_indices)); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 437, __pyx_L4_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_size / __pyx_v_bs), __pyx_v_indices)); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 451, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_oindices, __pyx_t_2);
__pyx_t_2 = 0;
}
- /* "PETSc/IS.pyx":439
+ /* "PETSc/IS.pyx":453
* oindices = array_i(size//bs, indices)
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreBlockIndices( # <<<<<<<<<<<<<<
@@ -83296,14 +89903,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
/*finally:*/ {
/*normal exit:*/{
- /* "PETSc/IS.pyx":440
+ /* "PETSc/IS.pyx":454
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreBlockIndices(
* self.lgm, &indices) ) # <<<<<<<<<<<<<<
* return oindices
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreBlockIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(29, 439, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreBlockIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(29, 453, __pyx_L1_error)
goto __pyx_L5;
}
/*exception exit:*/{
@@ -83323,16 +89930,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
__pyx_t_1 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
{
- /* "PETSc/IS.pyx":439
+ /* "PETSc/IS.pyx":453
* oindices = array_i(size//bs, indices)
* finally:
* CHKERR( ISLocalToGlobalMappingRestoreBlockIndices( # <<<<<<<<<<<<<<
* self.lgm, &indices) )
* return oindices
*/
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreBlockIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(29, 439, __pyx_L7_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingRestoreBlockIndices(__pyx_v_self->lgm, (&__pyx_v_indices))); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(29, 453, __pyx_L7_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -83347,7 +89953,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
__pyx_lineno = __pyx_t_1; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
goto __pyx_L1_error;
__pyx_L7_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -83363,7 +89968,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
__pyx_L5:;
}
- /* "PETSc/IS.pyx":441
+ /* "PETSc/IS.pyx":455
* CHKERR( ISLocalToGlobalMappingRestoreBlockIndices(
* self.lgm, &indices) )
* return oindices # <<<<<<<<<<<<<<
@@ -83375,7 +89980,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
__pyx_r = __pyx_v_oindices;
goto __pyx_L0;
- /* "PETSc/IS.pyx":426
+ /* "PETSc/IS.pyx":440
* return oindices
*
* def getBlockIndices(self): # <<<<<<<<<<<<<<
@@ -83395,7 +90000,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
return __pyx_r;
}
-/* "PETSc/IS.pyx":443
+/* "PETSc/IS.pyx":457
* return oindices
*
* def getInfo(self): # <<<<<<<<<<<<<<
@@ -83404,23 +90009,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_20getBlockIndices(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_23getInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_22getInfo[] = "LGMap.getInfo(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_23getInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27getInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_26getInfo[] = "LGMap.getInfo(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27getInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getInfo (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getInfo", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getInfo", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(((struct PyPetscLGMapObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_26getInfo(((struct PyPetscLGMapObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26getInfo(struct PyPetscLGMapObject *__pyx_v_self) {
PetscInt __pyx_v_i;
PetscInt __pyx_v_nproc;
PetscInt *__pyx_v_procs;
@@ -83443,7 +90048,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
PyObject *__pyx_t_12 = NULL;
__Pyx_RefNannySetupContext("getInfo", 0);
- /* "PETSc/IS.pyx":444
+ /* "PETSc/IS.pyx":458
*
* def getInfo(self):
* cdef PetscInt i, nproc = 0, *procs = NULL, # <<<<<<<<<<<<<<
@@ -83453,7 +90058,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
__pyx_v_nproc = 0;
__pyx_v_procs = NULL;
- /* "PETSc/IS.pyx":445
+ /* "PETSc/IS.pyx":459
* def getInfo(self):
* cdef PetscInt i, nproc = 0, *procs = NULL,
* cdef PetscInt *numprocs = NULL, **indices = NULL # <<<<<<<<<<<<<<
@@ -83463,28 +90068,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
__pyx_v_numprocs = NULL;
__pyx_v_indices = NULL;
- /* "PETSc/IS.pyx":446
+ /* "PETSc/IS.pyx":460
* cdef PetscInt i, nproc = 0, *procs = NULL,
* cdef PetscInt *numprocs = NULL, **indices = NULL
* cdef object neighs = { } # <<<<<<<<<<<<<<
* CHKERR( ISLocalToGlobalMappingGetInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices) )
*/
- __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 446, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 460, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_neighs = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/IS.pyx":447
+ /* "PETSc/IS.pyx":461
* cdef PetscInt *numprocs = NULL, **indices = NULL
* cdef object neighs = { }
* CHKERR( ISLocalToGlobalMappingGetInfo( # <<<<<<<<<<<<<<
* self.lgm, &nproc, &procs, &numprocs, &indices) )
* try:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetInfo(__pyx_v_self->lgm, (&__pyx_v_nproc), (&__pyx_v_procs), (&__pyx_v_numprocs), (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 447, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetInfo(__pyx_v_self->lgm, (&__pyx_v_nproc), (&__pyx_v_procs), (&__pyx_v_numprocs), (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 461, __pyx_L1_error)
- /* "PETSc/IS.pyx":449
+ /* "PETSc/IS.pyx":463
* CHKERR( ISLocalToGlobalMappingGetInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices) )
* try: # <<<<<<<<<<<<<<
@@ -83493,7 +90098,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
*/
/*try:*/ {
- /* "PETSc/IS.pyx":450
+ /* "PETSc/IS.pyx":464
* self.lgm, &nproc, &procs, &numprocs, &indices) )
* try:
* for i from 0 <= i < nproc: # <<<<<<<<<<<<<<
@@ -83503,24 +90108,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
__pyx_t_3 = __pyx_v_nproc;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
- /* "PETSc/IS.pyx":451
+ /* "PETSc/IS.pyx":465
* try:
* for i from 0 <= i < nproc:
* neighs[toInt(procs[i])] = array_i(numprocs[i], indices[i]) # <<<<<<<<<<<<<<
* finally:
* ISLocalToGlobalMappingRestoreInfo(
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_numprocs[__pyx_v_i]), (__pyx_v_indices[__pyx_v_i]))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 451, __pyx_L4_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_numprocs[__pyx_v_i]), (__pyx_v_indices[__pyx_v_i]))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 465, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_procs[__pyx_v_i])); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 451, __pyx_L4_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_procs[__pyx_v_i])); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 465, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_4);
- if (unlikely(PyObject_SetItem(__pyx_v_neighs, __pyx_t_4, __pyx_t_1) < 0)) __PYX_ERR(29, 451, __pyx_L4_error)
+ if (unlikely(PyObject_SetItem(__pyx_v_neighs, __pyx_t_4, __pyx_t_1) < 0)) __PYX_ERR(29, 465, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
}
- /* "PETSc/IS.pyx":453
+ /* "PETSc/IS.pyx":467
* neighs[toInt(procs[i])] = array_i(numprocs[i], indices[i])
* finally:
* ISLocalToGlobalMappingRestoreInfo( # <<<<<<<<<<<<<<
@@ -83530,7 +90135,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
/*finally:*/ {
/*normal exit:*/{
- /* "PETSc/IS.pyx":454
+ /* "PETSc/IS.pyx":468
* finally:
* ISLocalToGlobalMappingRestoreInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices) # <<<<<<<<<<<<<<
@@ -83558,7 +90163,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
__pyx_t_2 = __pyx_lineno; __pyx_t_5 = __pyx_clineno; __pyx_t_6 = __pyx_filename;
{
- /* "PETSc/IS.pyx":453
+ /* "PETSc/IS.pyx":467
* neighs[toInt(procs[i])] = array_i(numprocs[i], indices[i])
* finally:
* ISLocalToGlobalMappingRestoreInfo( # <<<<<<<<<<<<<<
@@ -83567,7 +90172,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
*/
ISLocalToGlobalMappingRestoreInfo(__pyx_v_self->lgm, (&__pyx_v_nproc), (&__pyx_v_procs), (&__pyx_v_numprocs), (&__pyx_v_indices));
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
@@ -83585,7 +90189,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
__pyx_L5:;
}
- /* "PETSc/IS.pyx":455
+ /* "PETSc/IS.pyx":469
* ISLocalToGlobalMappingRestoreInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices)
* return neighs # <<<<<<<<<<<<<<
@@ -83597,7 +90201,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
__pyx_r = __pyx_v_neighs;
goto __pyx_L0;
- /* "PETSc/IS.pyx":443
+ /* "PETSc/IS.pyx":457
* return oindices
*
* def getInfo(self): # <<<<<<<<<<<<<<
@@ -83618,7 +90222,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
return __pyx_r;
}
-/* "PETSc/IS.pyx":457
+/* "PETSc/IS.pyx":471
* return neighs
*
* def getBlockInfo(self): # <<<<<<<<<<<<<<
@@ -83627,23 +90231,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_22getInfo(struct PyPetscLGMapO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_25getBlockInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_24getBlockInfo[] = "LGMap.getBlockInfo(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_25getBlockInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29getBlockInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_28getBlockInfo[] = "LGMap.getBlockInfo(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29getBlockInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getBlockInfo (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getBlockInfo", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getBlockInfo", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(((struct PyPetscLGMapObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_28getBlockInfo(((struct PyPetscLGMapObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscLGMapObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28getBlockInfo(struct PyPetscLGMapObject *__pyx_v_self) {
PetscInt __pyx_v_i;
PetscInt __pyx_v_nproc;
PetscInt *__pyx_v_procs;
@@ -83666,7 +90270,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
PyObject *__pyx_t_12 = NULL;
__Pyx_RefNannySetupContext("getBlockInfo", 0);
- /* "PETSc/IS.pyx":458
+ /* "PETSc/IS.pyx":472
*
* def getBlockInfo(self):
* cdef PetscInt i, nproc = 0, *procs = NULL, # <<<<<<<<<<<<<<
@@ -83676,7 +90280,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
__pyx_v_nproc = 0;
__pyx_v_procs = NULL;
- /* "PETSc/IS.pyx":459
+ /* "PETSc/IS.pyx":473
* def getBlockInfo(self):
* cdef PetscInt i, nproc = 0, *procs = NULL,
* cdef PetscInt *numprocs = NULL, **indices = NULL # <<<<<<<<<<<<<<
@@ -83686,28 +90290,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
__pyx_v_numprocs = NULL;
__pyx_v_indices = NULL;
- /* "PETSc/IS.pyx":460
+ /* "PETSc/IS.pyx":474
* cdef PetscInt i, nproc = 0, *procs = NULL,
* cdef PetscInt *numprocs = NULL, **indices = NULL
* cdef object neighs = { } # <<<<<<<<<<<<<<
* CHKERR( ISLocalToGlobalMappingGetBlockInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices) )
*/
- __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 460, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 474, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_neighs = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/IS.pyx":461
+ /* "PETSc/IS.pyx":475
* cdef PetscInt *numprocs = NULL, **indices = NULL
* cdef object neighs = { }
* CHKERR( ISLocalToGlobalMappingGetBlockInfo( # <<<<<<<<<<<<<<
* self.lgm, &nproc, &procs, &numprocs, &indices) )
* try:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockInfo(__pyx_v_self->lgm, (&__pyx_v_nproc), (&__pyx_v_procs), (&__pyx_v_numprocs), (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 461, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingGetBlockInfo(__pyx_v_self->lgm, (&__pyx_v_nproc), (&__pyx_v_procs), (&__pyx_v_numprocs), (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 475, __pyx_L1_error)
- /* "PETSc/IS.pyx":463
+ /* "PETSc/IS.pyx":477
* CHKERR( ISLocalToGlobalMappingGetBlockInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices) )
* try: # <<<<<<<<<<<<<<
@@ -83716,7 +90320,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
*/
/*try:*/ {
- /* "PETSc/IS.pyx":464
+ /* "PETSc/IS.pyx":478
* self.lgm, &nproc, &procs, &numprocs, &indices) )
* try:
* for i from 0 <= i < nproc: # <<<<<<<<<<<<<<
@@ -83726,24 +90330,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
__pyx_t_3 = __pyx_v_nproc;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
- /* "PETSc/IS.pyx":465
+ /* "PETSc/IS.pyx":479
* try:
* for i from 0 <= i < nproc:
* neighs[toInt(procs[i])] = array_i(numprocs[i], indices[i]) # <<<<<<<<<<<<<<
* finally:
* ISLocalToGlobalMappingRestoreBlockInfo(
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_numprocs[__pyx_v_i]), (__pyx_v_indices[__pyx_v_i]))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 465, __pyx_L4_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_numprocs[__pyx_v_i]), (__pyx_v_indices[__pyx_v_i]))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 479, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_procs[__pyx_v_i])); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 465, __pyx_L4_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_procs[__pyx_v_i])); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 479, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_4);
- if (unlikely(PyObject_SetItem(__pyx_v_neighs, __pyx_t_4, __pyx_t_1) < 0)) __PYX_ERR(29, 465, __pyx_L4_error)
+ if (unlikely(PyObject_SetItem(__pyx_v_neighs, __pyx_t_4, __pyx_t_1) < 0)) __PYX_ERR(29, 479, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
}
- /* "PETSc/IS.pyx":467
+ /* "PETSc/IS.pyx":481
* neighs[toInt(procs[i])] = array_i(numprocs[i], indices[i])
* finally:
* ISLocalToGlobalMappingRestoreBlockInfo( # <<<<<<<<<<<<<<
@@ -83753,7 +90357,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
/*finally:*/ {
/*normal exit:*/{
- /* "PETSc/IS.pyx":468
+ /* "PETSc/IS.pyx":482
* finally:
* ISLocalToGlobalMappingRestoreBlockInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices) # <<<<<<<<<<<<<<
@@ -83781,7 +90385,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
__pyx_t_2 = __pyx_lineno; __pyx_t_5 = __pyx_clineno; __pyx_t_6 = __pyx_filename;
{
- /* "PETSc/IS.pyx":467
+ /* "PETSc/IS.pyx":481
* neighs[toInt(procs[i])] = array_i(numprocs[i], indices[i])
* finally:
* ISLocalToGlobalMappingRestoreBlockInfo( # <<<<<<<<<<<<<<
@@ -83790,7 +90394,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
*/
ISLocalToGlobalMappingRestoreBlockInfo(__pyx_v_self->lgm, (&__pyx_v_nproc), (&__pyx_v_procs), (&__pyx_v_numprocs), (&__pyx_v_indices));
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
@@ -83808,7 +90411,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
__pyx_L5:;
}
- /* "PETSc/IS.pyx":469
+ /* "PETSc/IS.pyx":483
* ISLocalToGlobalMappingRestoreBlockInfo(
* self.lgm, &nproc, &procs, &numprocs, &indices)
* return neighs # <<<<<<<<<<<<<<
@@ -83820,7 +90423,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
__pyx_r = __pyx_v_neighs;
goto __pyx_L0;
- /* "PETSc/IS.pyx":457
+ /* "PETSc/IS.pyx":471
* return neighs
*
* def getBlockInfo(self): # <<<<<<<<<<<<<<
@@ -83841,7 +90444,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
return __pyx_r;
}
-/* "PETSc/IS.pyx":473
+/* "PETSc/IS.pyx":487
* #
*
* def apply(self, indices, result=None): # <<<<<<<<<<<<<<
@@ -83850,9 +90453,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_24getBlockInfo(struct PyPetscL
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27apply(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_26apply[] = "LGMap.apply(self, indices, result=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27apply(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31apply(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_30apply[] = "LGMap.apply(self, indices, result=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31apply(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_indices = 0;
PyObject *__pyx_v_result = 0;
PyObject *__pyx_r = 0;
@@ -83867,7 +90470,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27apply(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -83876,6 +90481,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27apply(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
@@ -83883,11 +90489,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27apply(PyObject *__pyx_v_self
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "apply") < 0)) __PYX_ERR(29, 473, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "apply") < 0)) __PYX_ERR(29, 487, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -83898,20 +90505,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_27apply(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("apply", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 473, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("apply", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 487, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_result);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_30apply(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_result);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_30apply(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result) {
PetscInt __pyx_v_niidx;
PetscInt *__pyx_v_iidx;
PetscInt __pyx_v_noidx;
@@ -83926,7 +90533,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
__Pyx_INCREF(__pyx_v_indices);
__Pyx_INCREF(__pyx_v_result);
- /* "PETSc/IS.pyx":474
+ /* "PETSc/IS.pyx":488
*
* def apply(self, indices, result=None):
* cdef PetscInt niidx = 0, *iidx = NULL # <<<<<<<<<<<<<<
@@ -83936,7 +90543,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
__pyx_v_niidx = 0;
__pyx_v_iidx = NULL;
- /* "PETSc/IS.pyx":475
+ /* "PETSc/IS.pyx":489
* def apply(self, indices, result=None):
* cdef PetscInt niidx = 0, *iidx = NULL
* cdef PetscInt noidx = 0, *oidx = NULL # <<<<<<<<<<<<<<
@@ -83946,19 +90553,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
__pyx_v_noidx = 0;
__pyx_v_oidx = NULL;
- /* "PETSc/IS.pyx":476
+ /* "PETSc/IS.pyx":490
* cdef PetscInt niidx = 0, *iidx = NULL
* cdef PetscInt noidx = 0, *oidx = NULL
* indices = iarray_i(indices, &niidx, &iidx) # <<<<<<<<<<<<<<
* if result is None: result = empty_i(niidx)
* result = oarray_i(result, &noidx, &oidx)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_niidx), (&__pyx_v_iidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 476, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_niidx), (&__pyx_v_iidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 490, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_indices, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/IS.pyx":477
+ /* "PETSc/IS.pyx":491
* cdef PetscInt noidx = 0, *oidx = NULL
* indices = iarray_i(indices, &niidx, &iidx)
* if result is None: result = empty_i(niidx) # <<<<<<<<<<<<<<
@@ -83968,25 +90575,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
__pyx_t_2 = (__pyx_v_result == Py_None);
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_niidx)); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 477, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_niidx)); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 491, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
__pyx_t_1 = 0;
}
- /* "PETSc/IS.pyx":478
+ /* "PETSc/IS.pyx":492
* indices = iarray_i(indices, &niidx, &iidx)
* if result is None: result = empty_i(niidx)
* result = oarray_i(result, &noidx, &oidx) # <<<<<<<<<<<<<<
* assert niidx == noidx, "incompatible array sizes"
* CHKERR( ISLocalToGlobalMappingApply(
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_v_result, (&__pyx_v_noidx), (&__pyx_v_oidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 478, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_v_result, (&__pyx_v_noidx), (&__pyx_v_oidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 492, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/IS.pyx":479
+ /* "PETSc/IS.pyx":493
* if result is None: result = empty_i(niidx)
* result = oarray_i(result, &noidx, &oidx)
* assert niidx == noidx, "incompatible array sizes" # <<<<<<<<<<<<<<
@@ -83997,21 +90604,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_niidx == __pyx_v_noidx) != 0))) {
PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_incompatible_array_sizes);
- __PYX_ERR(29, 479, __pyx_L1_error)
+ __PYX_ERR(29, 493, __pyx_L1_error)
}
}
#endif
- /* "PETSc/IS.pyx":480
+ /* "PETSc/IS.pyx":494
* result = oarray_i(result, &noidx, &oidx)
* assert niidx == noidx, "incompatible array sizes"
* CHKERR( ISLocalToGlobalMappingApply( # <<<<<<<<<<<<<<
* self.lgm, niidx, iidx, oidx) )
* return result
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingApply(__pyx_v_self->lgm, __pyx_v_niidx, __pyx_v_iidx, __pyx_v_oidx)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(29, 480, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingApply(__pyx_v_self->lgm, __pyx_v_niidx, __pyx_v_iidx, __pyx_v_oidx)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(29, 494, __pyx_L1_error)
- /* "PETSc/IS.pyx":482
+ /* "PETSc/IS.pyx":496
* CHKERR( ISLocalToGlobalMappingApply(
* self.lgm, niidx, iidx, oidx) )
* return result # <<<<<<<<<<<<<<
@@ -84023,7 +90630,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
__pyx_r = __pyx_v_result;
goto __pyx_L0;
- /* "PETSc/IS.pyx":473
+ /* "PETSc/IS.pyx":487
* #
*
* def apply(self, indices, result=None): # <<<<<<<<<<<<<<
@@ -84044,7 +90651,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
return __pyx_r;
}
-/* "PETSc/IS.pyx":484
+/* "PETSc/IS.pyx":498
* return result
*
* def applyBlock(self, indices, result=None): # <<<<<<<<<<<<<<
@@ -84053,9 +90660,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_26apply(struct PyPetscLGMapObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29applyBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_28applyBlock[] = "LGMap.applyBlock(self, indices, result=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29applyBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_32applyBlock[] = "LGMap.applyBlock(self, indices, result=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_indices = 0;
PyObject *__pyx_v_result = 0;
PyObject *__pyx_r = 0;
@@ -84070,7 +90677,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29applyBlock(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -84079,6 +90688,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29applyBlock(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
@@ -84086,11 +90696,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29applyBlock(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyBlock") < 0)) __PYX_ERR(29, 484, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyBlock") < 0)) __PYX_ERR(29, 498, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -84101,20 +90712,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_29applyBlock(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("applyBlock", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 484, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applyBlock", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 498, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.applyBlock", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_result);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_32applyBlock(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_result);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_32applyBlock(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_result) {
PetscInt __pyx_v_niidx;
PetscInt *__pyx_v_iidx;
PetscInt __pyx_v_noidx;
@@ -84129,7 +90740,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGM
__Pyx_INCREF(__pyx_v_indices);
__Pyx_INCREF(__pyx_v_result);
- /* "PETSc/IS.pyx":485
+ /* "PETSc/IS.pyx":499
*
* def applyBlock(self, indices, result=None):
* cdef PetscInt niidx = 0, *iidx = NULL # <<<<<<<<<<<<<<
@@ -84139,7 +90750,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGM
__pyx_v_niidx = 0;
__pyx_v_iidx = NULL;
- /* "PETSc/IS.pyx":486
+ /* "PETSc/IS.pyx":500
* def applyBlock(self, indices, result=None):
* cdef PetscInt niidx = 0, *iidx = NULL
* cdef PetscInt noidx = 0, *oidx = NULL # <<<<<<<<<<<<<<
@@ -84149,19 +90760,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGM
__pyx_v_noidx = 0;
__pyx_v_oidx = NULL;
- /* "PETSc/IS.pyx":487
+ /* "PETSc/IS.pyx":501
* cdef PetscInt niidx = 0, *iidx = NULL
* cdef PetscInt noidx = 0, *oidx = NULL
* indices = iarray_i(indices, &niidx, &iidx) # <<<<<<<<<<<<<<
* if result is None: result = empty_i(niidx)
* result = oarray_i(result, &noidx, &oidx)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_niidx), (&__pyx_v_iidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 487, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_niidx), (&__pyx_v_iidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 501, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_indices, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/IS.pyx":488
+ /* "PETSc/IS.pyx":502
* cdef PetscInt noidx = 0, *oidx = NULL
* indices = iarray_i(indices, &niidx, &iidx)
* if result is None: result = empty_i(niidx) # <<<<<<<<<<<<<<
@@ -84171,25 +90782,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGM
__pyx_t_2 = (__pyx_v_result == Py_None);
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_niidx)); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 488, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_niidx)); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 502, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
__pyx_t_1 = 0;
}
- /* "PETSc/IS.pyx":489
+ /* "PETSc/IS.pyx":503
* indices = iarray_i(indices, &niidx, &iidx)
* if result is None: result = empty_i(niidx)
* result = oarray_i(result, &noidx, &oidx) # <<<<<<<<<<<<<<
* assert niidx == noidx, "incompatible array sizes"
* CHKERR( ISLocalToGlobalMappingApplyBlock(
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_v_result, (&__pyx_v_noidx), (&__pyx_v_oidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 489, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_v_result, (&__pyx_v_noidx), (&__pyx_v_oidx))); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 503, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/IS.pyx":490
+ /* "PETSc/IS.pyx":504
* if result is None: result = empty_i(niidx)
* result = oarray_i(result, &noidx, &oidx)
* assert niidx == noidx, "incompatible array sizes" # <<<<<<<<<<<<<<
@@ -84200,33 +90811,33 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGM
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_niidx == __pyx_v_noidx) != 0))) {
PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_incompatible_array_sizes);
- __PYX_ERR(29, 490, __pyx_L1_error)
+ __PYX_ERR(29, 504, __pyx_L1_error)
}
}
#endif
- /* "PETSc/IS.pyx":491
+ /* "PETSc/IS.pyx":505
* result = oarray_i(result, &noidx, &oidx)
* assert niidx == noidx, "incompatible array sizes"
* CHKERR( ISLocalToGlobalMappingApplyBlock( # <<<<<<<<<<<<<<
* self.lgm, niidx, iidx, oidx) )
* return result
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingApplyBlock(__pyx_v_self->lgm, __pyx_v_niidx, __pyx_v_iidx, __pyx_v_oidx)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(29, 491, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingApplyBlock(__pyx_v_self->lgm, __pyx_v_niidx, __pyx_v_iidx, __pyx_v_oidx)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(29, 505, __pyx_L1_error)
- /* "PETSc/IS.pyx":493
+ /* "PETSc/IS.pyx":507
* CHKERR( ISLocalToGlobalMappingApplyBlock(
* self.lgm, niidx, iidx, oidx) )
* return result # <<<<<<<<<<<<<<
*
- * def applyIS(self, IS iset not None):
+ * def applyIS(self, IS iset):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_result);
__pyx_r = __pyx_v_result;
goto __pyx_L0;
- /* "PETSc/IS.pyx":484
+ /* "PETSc/IS.pyx":498
* return result
*
* def applyBlock(self, indices, result=None): # <<<<<<<<<<<<<<
@@ -84247,18 +90858,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_28applyBlock(struct PyPetscLGM
return __pyx_r;
}
-/* "PETSc/IS.pyx":495
+/* "PETSc/IS.pyx":509
* return result
*
- * def applyIS(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def applyIS(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS result = IS()
* CHKERR( ISLocalToGlobalMappingApplyIS(
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31applyIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_30applyIS[] = "LGMap.applyIS(self, IS iset)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31applyIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_34applyIS[] = "LGMap.applyIS(self, IS iset)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_iset = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -84271,6 +90882,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31applyIS(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -84281,7 +90893,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31applyIS(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyIS") < 0)) __PYX_ERR(29, 495, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyIS") < 0)) __PYX_ERR(29, 509, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -84292,14 +90904,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31applyIS(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("applyIS", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 495, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applyIS", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 509, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.applyIS", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(29, 495, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_30applyIS(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_iset);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(29, 509, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_34applyIS(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_iset);
/* function exit code */
goto __pyx_L0;
@@ -84310,7 +90922,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_31applyIS(PyObject *__pyx_v_se
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_30applyIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyIS(struct PyPetscLGMapObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset) {
struct PyPetscISObject *__pyx_v_result = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -84318,43 +90930,43 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_30applyIS(struct PyPetscLGMapO
int __pyx_t_2;
__Pyx_RefNannySetupContext("applyIS", 0);
- /* "PETSc/IS.pyx":496
+ /* "PETSc/IS.pyx":510
*
- * def applyIS(self, IS iset not None):
+ * def applyIS(self, IS iset):
* cdef IS result = IS() # <<<<<<<<<<<<<<
* CHKERR( ISLocalToGlobalMappingApplyIS(
* self.lgm, iset.iset, &result.iset) )
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 496, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 510, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_result = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/IS.pyx":497
- * def applyIS(self, IS iset not None):
+ /* "PETSc/IS.pyx":511
+ * def applyIS(self, IS iset):
* cdef IS result = IS()
* CHKERR( ISLocalToGlobalMappingApplyIS( # <<<<<<<<<<<<<<
* self.lgm, iset.iset, &result.iset) )
* return result
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingApplyIS(__pyx_v_self->lgm, __pyx_v_iset->iset, (&__pyx_v_result->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(29, 497, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingApplyIS(__pyx_v_self->lgm, __pyx_v_iset->iset, (&__pyx_v_result->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(29, 511, __pyx_L1_error)
- /* "PETSc/IS.pyx":499
+ /* "PETSc/IS.pyx":513
* CHKERR( ISLocalToGlobalMappingApplyIS(
* self.lgm, iset.iset, &result.iset) )
* return result # <<<<<<<<<<<<<<
*
- * def applyInverse(self, indices, map_type=None):
+ * def applyInverse(self, indices, mode=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/IS.pyx":495
+ /* "PETSc/IS.pyx":509
* return result
*
- * def applyIS(self, IS iset not None): # <<<<<<<<<<<<<<
+ * def applyIS(self, IS iset): # <<<<<<<<<<<<<<
* cdef IS result = IS()
* CHKERR( ISLocalToGlobalMappingApplyIS(
*/
@@ -84371,25 +90983,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_30applyIS(struct PyPetscLGMapO
return __pyx_r;
}
-/* "PETSc/IS.pyx":501
+/* "PETSc/IS.pyx":515
* return result
*
- * def applyInverse(self, indices, map_type=None): # <<<<<<<<<<<<<<
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type
+ * def applyInverse(self, indices, mode=None): # <<<<<<<<<<<<<<
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_32applyInverse[] = "LGMap.applyInverse(self, indices, map_type=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_37applyInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_36applyInverse[] = "LGMap.applyInverse(self, indices, mode=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_37applyInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_indices = 0;
- PyObject *__pyx_v_map_type = 0;
+ PyObject *__pyx_v_mode = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("applyInverse (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_indices,&__pyx_n_s_map_type,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_indices,&__pyx_n_s_mode,0};
PyObject* values[2] = {0,0};
values[1] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
@@ -84397,7 +91009,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyInverse(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -84406,43 +91020,45 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyInverse(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_map_type);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyInverse") < 0)) __PYX_ERR(29, 501, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyInverse") < 0)) __PYX_ERR(29, 515, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
}
__pyx_v_indices = values[0];
- __pyx_v_map_type = values[1];
+ __pyx_v_mode = values[1];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("applyInverse", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 501, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applyInverse", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 515, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.applyInverse", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_32applyInverse(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_map_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_36applyInverse(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_mode);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_32applyInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_map_type) {
- ISGlobalToLocalMappingType __pyx_v_cmtype;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_36applyInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_mode) {
+ ISGlobalToLocalMappingMode __pyx_v_cmode;
PetscInt __pyx_v_n;
PetscInt *__pyx_v_idx;
PetscInt __pyx_v_nout;
@@ -84452,39 +91068,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_32applyInverse(struct PyPetscL
__Pyx_RefNannyDeclarations
int __pyx_t_1;
int __pyx_t_2;
- ISGlobalToLocalMappingType __pyx_t_3;
+ ISGlobalToLocalMappingMode __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
int __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("applyInverse", 0);
__Pyx_INCREF(__pyx_v_indices);
- /* "PETSc/IS.pyx":502
+ /* "PETSc/IS.pyx":516
*
- * def applyInverse(self, indices, map_type=None):
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK # <<<<<<<<<<<<<<
- * if map_type is not None: cmtype = map_type
+ * def applyInverse(self, indices, mode=None):
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK # <<<<<<<<<<<<<<
+ * if mode is not None: cmode = mode
* cdef PetscInt n = 0, *idx = NULL
*/
- __pyx_v_cmtype = IS_GTOLM_MASK;
+ __pyx_v_cmode = IS_GTOLM_MASK;
- /* "PETSc/IS.pyx":503
- * def applyInverse(self, indices, map_type=None):
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type # <<<<<<<<<<<<<<
+ /* "PETSc/IS.pyx":517
+ * def applyInverse(self, indices, mode=None):
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode # <<<<<<<<<<<<<<
* cdef PetscInt n = 0, *idx = NULL
* indices = iarray_i(indices, &n, &idx)
*/
- __pyx_t_1 = (__pyx_v_map_type != Py_None);
+ __pyx_t_1 = (__pyx_v_mode != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = ((ISGlobalToLocalMappingType)__Pyx_PyInt_As_ISGlobalToLocalMappingType(__pyx_v_map_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(29, 503, __pyx_L1_error)
- __pyx_v_cmtype = __pyx_t_3;
+ __pyx_t_3 = ((ISGlobalToLocalMappingMode)__Pyx_PyInt_As_ISGlobalToLocalMappingMode(__pyx_v_mode)); if (unlikely(PyErr_Occurred())) __PYX_ERR(29, 517, __pyx_L1_error)
+ __pyx_v_cmode = __pyx_t_3;
}
- /* "PETSc/IS.pyx":504
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type
+ /* "PETSc/IS.pyx":518
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode
* cdef PetscInt n = 0, *idx = NULL # <<<<<<<<<<<<<<
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL
@@ -84492,98 +91108,98 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_32applyInverse(struct PyPetscL
__pyx_v_n = 0;
__pyx_v_idx = NULL;
- /* "PETSc/IS.pyx":505
- * if map_type is not None: cmtype = map_type
+ /* "PETSc/IS.pyx":519
+ * if mode is not None: cmode = mode
* cdef PetscInt n = 0, *idx = NULL
* indices = iarray_i(indices, &n, &idx) # <<<<<<<<<<<<<<
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK:
+ * if cmode != PETSC_IS_GTOLM_MASK:
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_n), (&__pyx_v_idx))); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 505, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_n), (&__pyx_v_idx))); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 519, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_indices, __pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/IS.pyx":506
+ /* "PETSc/IS.pyx":520
* cdef PetscInt n = 0, *idx = NULL
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL # <<<<<<<<<<<<<<
- * if cmtype != PETSC_IS_GTOLM_MASK:
+ * if cmode != PETSC_IS_GTOLM_MASK:
* CHKERR( ISGlobalToLocalMappingApply(
*/
__pyx_v_nout = __pyx_v_n;
__pyx_v_idxout = NULL;
- /* "PETSc/IS.pyx":507
+ /* "PETSc/IS.pyx":521
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
+ * if cmode != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
*/
- __pyx_t_2 = ((__pyx_v_cmtype != IS_GTOLM_MASK) != 0);
+ __pyx_t_2 = ((__pyx_v_cmode != IS_GTOLM_MASK) != 0);
if (__pyx_t_2) {
- /* "PETSc/IS.pyx":508
+ /* "PETSc/IS.pyx":522
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK:
+ * if cmode != PETSC_IS_GTOLM_MASK:
* CHKERR( ISGlobalToLocalMappingApply( # <<<<<<<<<<<<<<
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
* result = oarray_i(empty_i(nout), &nout, &idxout)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApply(__pyx_v_self->lgm, __pyx_v_cmtype, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(29, 508, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApply(__pyx_v_self->lgm, __pyx_v_cmode, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(29, 522, __pyx_L1_error)
- /* "PETSc/IS.pyx":507
+ /* "PETSc/IS.pyx":521
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
+ * if cmode != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
*/
}
- /* "PETSc/IS.pyx":510
+ /* "PETSc/IS.pyx":524
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
* result = oarray_i(empty_i(nout), &nout, &idxout) # <<<<<<<<<<<<<<
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, idxout) )
+ * self.lgm, cmode, n, idx, &nout, idxout) )
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_nout)); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 510, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_nout)); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_4, (&__pyx_v_nout), (&__pyx_v_idxout))); if (unlikely(!__pyx_t_6)) __PYX_ERR(29, 510, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_4, (&__pyx_v_nout), (&__pyx_v_idxout))); if (unlikely(!__pyx_t_6)) __PYX_ERR(29, 524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_result = ((PyArrayObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/IS.pyx":511
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ /* "PETSc/IS.pyx":525
+ * self.lgm, cmode, n, idx, &nout, NULL) )
* result = oarray_i(empty_i(nout), &nout, &idxout)
* CHKERR( ISGlobalToLocalMappingApply( # <<<<<<<<<<<<<<
- * self.lgm, cmtype, n, idx, &nout, idxout) )
+ * self.lgm, cmode, n, idx, &nout, idxout) )
* return result
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApply(__pyx_v_self->lgm, __pyx_v_cmtype, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), __pyx_v_idxout)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(29, 511, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApply(__pyx_v_self->lgm, __pyx_v_cmode, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), __pyx_v_idxout)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(29, 525, __pyx_L1_error)
- /* "PETSc/IS.pyx":513
+ /* "PETSc/IS.pyx":527
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, idxout) )
+ * self.lgm, cmode, n, idx, &nout, idxout) )
* return result # <<<<<<<<<<<<<<
*
- * def applyBlockInverse(self, indices, map_type=None):
+ * def applyBlockInverse(self, indices, mode=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/IS.pyx":501
+ /* "PETSc/IS.pyx":515
* return result
*
- * def applyInverse(self, indices, map_type=None): # <<<<<<<<<<<<<<
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type
+ * def applyInverse(self, indices, mode=None): # <<<<<<<<<<<<<<
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode
*/
/* function exit code */
@@ -84600,25 +91216,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_32applyInverse(struct PyPetscL
return __pyx_r;
}
-/* "PETSc/IS.pyx":515
+/* "PETSc/IS.pyx":529
* return result
*
- * def applyBlockInverse(self, indices, map_type=None): # <<<<<<<<<<<<<<
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type
+ * def applyBlockInverse(self, indices, mode=None): # <<<<<<<<<<<<<<
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyBlockInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_5LGMap_34applyBlockInverse[] = "LGMap.applyBlockInverse(self, indices, map_type=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyBlockInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_39applyBlockInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_5LGMap_38applyBlockInverse[] = "LGMap.applyBlockInverse(self, indices, mode=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_39applyBlockInverse(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_indices = 0;
- PyObject *__pyx_v_map_type = 0;
+ PyObject *__pyx_v_mode = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("applyBlockInverse (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_indices,&__pyx_n_s_map_type,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_indices,&__pyx_n_s_mode,0};
PyObject* values[2] = {0,0};
values[1] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
@@ -84626,7 +91242,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyBlockInverse(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -84635,43 +91253,45 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyBlockInverse(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_map_type);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
if (value) { values[1] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyBlockInverse") < 0)) __PYX_ERR(29, 515, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyBlockInverse") < 0)) __PYX_ERR(29, 529, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
}
__pyx_v_indices = values[0];
- __pyx_v_map_type = values[1];
+ __pyx_v_mode = values[1];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("applyBlockInverse", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 515, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applyBlockInverse", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(29, 529, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.LGMap.applyBlockInverse", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_34applyBlockInverse(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_map_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_5LGMap_38applyBlockInverse(((struct PyPetscLGMapObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_mode);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyBlockInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_map_type) {
- ISGlobalToLocalMappingType __pyx_v_cmtype;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_38applyBlockInverse(struct PyPetscLGMapObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_mode) {
+ ISGlobalToLocalMappingMode __pyx_v_cmode;
PetscInt __pyx_v_n;
PetscInt *__pyx_v_idx;
PetscInt __pyx_v_nout;
@@ -84681,39 +91301,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyBlockInverse(struct PyP
__Pyx_RefNannyDeclarations
int __pyx_t_1;
int __pyx_t_2;
- ISGlobalToLocalMappingType __pyx_t_3;
+ ISGlobalToLocalMappingMode __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
int __pyx_t_5;
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("applyBlockInverse", 0);
__Pyx_INCREF(__pyx_v_indices);
- /* "PETSc/IS.pyx":516
+ /* "PETSc/IS.pyx":530
*
- * def applyBlockInverse(self, indices, map_type=None):
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK # <<<<<<<<<<<<<<
- * if map_type is not None: cmtype = map_type
+ * def applyBlockInverse(self, indices, mode=None):
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK # <<<<<<<<<<<<<<
+ * if mode is not None: cmode = mode
* cdef PetscInt n = 0, *idx = NULL
*/
- __pyx_v_cmtype = IS_GTOLM_MASK;
+ __pyx_v_cmode = IS_GTOLM_MASK;
- /* "PETSc/IS.pyx":517
- * def applyBlockInverse(self, indices, map_type=None):
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type # <<<<<<<<<<<<<<
+ /* "PETSc/IS.pyx":531
+ * def applyBlockInverse(self, indices, mode=None):
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode # <<<<<<<<<<<<<<
* cdef PetscInt n = 0, *idx = NULL
* indices = iarray_i(indices, &n, &idx)
*/
- __pyx_t_1 = (__pyx_v_map_type != Py_None);
+ __pyx_t_1 = (__pyx_v_mode != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = ((ISGlobalToLocalMappingType)__Pyx_PyInt_As_ISGlobalToLocalMappingType(__pyx_v_map_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(29, 517, __pyx_L1_error)
- __pyx_v_cmtype = __pyx_t_3;
+ __pyx_t_3 = ((ISGlobalToLocalMappingMode)__Pyx_PyInt_As_ISGlobalToLocalMappingMode(__pyx_v_mode)); if (unlikely(PyErr_Occurred())) __PYX_ERR(29, 531, __pyx_L1_error)
+ __pyx_v_cmode = __pyx_t_3;
}
- /* "PETSc/IS.pyx":518
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type
+ /* "PETSc/IS.pyx":532
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode
* cdef PetscInt n = 0, *idx = NULL # <<<<<<<<<<<<<<
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL
@@ -84721,83 +91341,83 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyBlockInverse(struct PyP
__pyx_v_n = 0;
__pyx_v_idx = NULL;
- /* "PETSc/IS.pyx":519
- * if map_type is not None: cmtype = map_type
+ /* "PETSc/IS.pyx":533
+ * if mode is not None: cmode = mode
* cdef PetscInt n = 0, *idx = NULL
* indices = iarray_i(indices, &n, &idx) # <<<<<<<<<<<<<<
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK:
+ * if cmode != PETSC_IS_GTOLM_MASK:
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_n), (&__pyx_v_idx))); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 519, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_indices, (&__pyx_v_n), (&__pyx_v_idx))); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 533, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_indices, __pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/IS.pyx":520
+ /* "PETSc/IS.pyx":534
* cdef PetscInt n = 0, *idx = NULL
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL # <<<<<<<<<<<<<<
- * if cmtype != PETSC_IS_GTOLM_MASK:
+ * if cmode != PETSC_IS_GTOLM_MASK:
* CHKERR( ISGlobalToLocalMappingApply(
*/
__pyx_v_nout = __pyx_v_n;
__pyx_v_idxout = NULL;
- /* "PETSc/IS.pyx":521
+ /* "PETSc/IS.pyx":535
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
+ * if cmode != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
*/
- __pyx_t_2 = ((__pyx_v_cmtype != IS_GTOLM_MASK) != 0);
+ __pyx_t_2 = ((__pyx_v_cmode != IS_GTOLM_MASK) != 0);
if (__pyx_t_2) {
- /* "PETSc/IS.pyx":522
+ /* "PETSc/IS.pyx":536
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK:
+ * if cmode != PETSC_IS_GTOLM_MASK:
* CHKERR( ISGlobalToLocalMappingApply( # <<<<<<<<<<<<<<
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
* result = oarray_i(empty_i(nout), &nout, &idxout)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApply(__pyx_v_self->lgm, __pyx_v_cmtype, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(29, 522, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApply(__pyx_v_self->lgm, __pyx_v_cmode, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(29, 536, __pyx_L1_error)
- /* "PETSc/IS.pyx":521
+ /* "PETSc/IS.pyx":535
* indices = iarray_i(indices, &n, &idx)
* cdef PetscInt nout = n, *idxout = NULL
- * if cmtype != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
+ * if cmode != PETSC_IS_GTOLM_MASK: # <<<<<<<<<<<<<<
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
*/
}
- /* "PETSc/IS.pyx":524
+ /* "PETSc/IS.pyx":538
* CHKERR( ISGlobalToLocalMappingApply(
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ * self.lgm, cmode, n, idx, &nout, NULL) )
* result = oarray_i(empty_i(nout), &nout, &idxout) # <<<<<<<<<<<<<<
* CHKERR( ISGlobalToLocalMappingApplyBlock(
- * self.lgm, cmtype, n, idx, &nout, idxout) )
+ * self.lgm, cmode, n, idx, &nout, idxout) )
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_nout)); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 524, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_nout)); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 538, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_4, (&__pyx_v_nout), (&__pyx_v_idxout))); if (unlikely(!__pyx_t_6)) __PYX_ERR(29, 524, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_4, (&__pyx_v_nout), (&__pyx_v_idxout))); if (unlikely(!__pyx_t_6)) __PYX_ERR(29, 538, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_result = ((PyArrayObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/IS.pyx":525
- * self.lgm, cmtype, n, idx, &nout, NULL) )
+ /* "PETSc/IS.pyx":539
+ * self.lgm, cmode, n, idx, &nout, NULL) )
* result = oarray_i(empty_i(nout), &nout, &idxout)
* CHKERR( ISGlobalToLocalMappingApplyBlock( # <<<<<<<<<<<<<<
- * self.lgm, cmtype, n, idx, &nout, idxout) )
+ * self.lgm, cmode, n, idx, &nout, idxout) )
* return result
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApplyBlock(__pyx_v_self->lgm, __pyx_v_cmtype, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), __pyx_v_idxout)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(29, 525, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISGlobalToLocalMappingApplyBlock(__pyx_v_self->lgm, __pyx_v_cmode, __pyx_v_n, __pyx_v_idx, (&__pyx_v_nout), __pyx_v_idxout)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(29, 539, __pyx_L1_error)
- /* "PETSc/IS.pyx":527
+ /* "PETSc/IS.pyx":541
* CHKERR( ISGlobalToLocalMappingApplyBlock(
- * self.lgm, cmtype, n, idx, &nout, idxout) )
+ * self.lgm, cmode, n, idx, &nout, idxout) )
* return result # <<<<<<<<<<<<<<
* #
*
@@ -84807,12 +91427,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyBlockInverse(struct PyP
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/IS.pyx":515
+ /* "PETSc/IS.pyx":529
* return result
*
- * def applyBlockInverse(self, indices, map_type=None): # <<<<<<<<<<<<<<
- * cdef PetscGLMapType cmtype = PETSC_IS_GTOLM_MASK
- * if map_type is not None: cmtype = map_type
+ * def applyBlockInverse(self, indices, mode=None): # <<<<<<<<<<<<<<
+ * cdef PetscGLMapMode cmode = PETSC_IS_GTOLM_MASK
+ * if mode is not None: cmode = mode
*/
/* function exit code */
@@ -84829,7 +91449,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_34applyBlockInverse(struct PyP
return __pyx_r;
}
-/* "PETSc/IS.pyx":531
+/* "PETSc/IS.pyx":545
*
* property size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -84858,7 +91478,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4size___get__(struct PyPetscLG
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/IS.pyx":532
+ /* "PETSc/IS.pyx":546
* property size:
* def __get__(self):
* return self.getSize() # <<<<<<<<<<<<<<
@@ -84866,10 +91486,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4size___get__(struct PyPetscLG
* property block_size:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 532, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 546, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -84879,10 +91499,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4size___get__(struct PyPetscLG
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 532, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 546, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 532, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 546, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -84890,7 +91510,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4size___get__(struct PyPetscLG
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":531
+ /* "PETSc/IS.pyx":545
*
* property size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -84911,7 +91531,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4size___get__(struct PyPetscLG
return __pyx_r;
}
-/* "PETSc/IS.pyx":535
+/* "PETSc/IS.pyx":549
*
* property block_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -84940,7 +91560,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_size___get__(struct Py
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/IS.pyx":536
+ /* "PETSc/IS.pyx":550
* property block_size:
* def __get__(self):
* return self.getBlockSize() # <<<<<<<<<<<<<<
@@ -84948,10 +91568,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_size___get__(struct Py
* property indices:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 536, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 550, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -84961,10 +91581,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_size___get__(struct Py
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 536, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 550, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 536, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 550, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -84972,7 +91592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_size___get__(struct Py
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":535
+ /* "PETSc/IS.pyx":549
*
* property block_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -84993,7 +91613,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_size___get__(struct Py
return __pyx_r;
}
-/* "PETSc/IS.pyx":539
+/* "PETSc/IS.pyx":553
*
* property indices:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85022,7 +91642,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_7indices___get__(struct PyPets
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/IS.pyx":540
+ /* "PETSc/IS.pyx":554
* property indices:
* def __get__(self):
* return self.getIndices() # <<<<<<<<<<<<<<
@@ -85030,10 +91650,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_7indices___get__(struct PyPets
* property block_indices:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIndices); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 540, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIndices); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -85043,10 +91663,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_7indices___get__(struct PyPets
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 540, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 554, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 540, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 554, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -85054,7 +91674,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_7indices___get__(struct PyPets
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":539
+ /* "PETSc/IS.pyx":553
*
* property indices:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85075,7 +91695,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_7indices___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/IS.pyx":543
+/* "PETSc/IS.pyx":557
*
* property block_indices:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85104,7 +91724,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_13block_indices___get__(struct
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/IS.pyx":544
+ /* "PETSc/IS.pyx":558
* property block_indices:
* def __get__(self):
* return self.getBlockIndices() # <<<<<<<<<<<<<<
@@ -85112,10 +91732,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_13block_indices___get__(struct
* property info:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockIndices); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 544, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockIndices); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 558, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -85125,10 +91745,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_13block_indices___get__(struct
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 544, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 558, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 544, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 558, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -85136,7 +91756,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_13block_indices___get__(struct
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":543
+ /* "PETSc/IS.pyx":557
*
* property block_indices:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85157,7 +91777,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_13block_indices___get__(struct
return __pyx_r;
}
-/* "PETSc/IS.pyx":547
+/* "PETSc/IS.pyx":561
*
* property info:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85186,7 +91806,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4info___get__(struct PyPetscLG
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/IS.pyx":548
+ /* "PETSc/IS.pyx":562
* property info:
* def __get__(self):
* return self.getInfo() # <<<<<<<<<<<<<<
@@ -85194,10 +91814,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4info___get__(struct PyPetscLG
* property block_info:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getInfo); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 548, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getInfo); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -85207,10 +91827,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4info___get__(struct PyPetscLG
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 548, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 562, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 548, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 562, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -85218,7 +91838,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4info___get__(struct PyPetscLG
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":547
+ /* "PETSc/IS.pyx":561
*
* property info:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85239,7 +91859,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_4info___get__(struct PyPetscLG
return __pyx_r;
}
-/* "PETSc/IS.pyx":551
+/* "PETSc/IS.pyx":565
*
* property block_info:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85268,7 +91888,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_info___get__(struct Py
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/IS.pyx":552
+ /* "PETSc/IS.pyx":566
* property block_info:
* def __get__(self):
* return self.getBlockInfo() # <<<<<<<<<<<<<<
@@ -85276,10 +91896,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_info___get__(struct Py
* # --------------------------------------------------------------------
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockInfo); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 552, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockInfo); if (unlikely(!__pyx_t_2)) __PYX_ERR(29, 566, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -85289,10 +91909,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_info___get__(struct Py
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 552, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 566, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 552, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 566, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -85300,7 +91920,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_5LGMap_10block_info___get__(struct Py
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/IS.pyx":551
+ /* "PETSc/IS.pyx":565
*
* property block_info:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -85751,7 +92371,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_12__imul__(struct PyPetscVecObje
*/
/* Python wrapper */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_15__idiv__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_15__idiv__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = 0;
@@ -85763,9 +92383,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_15__idiv__(PyObject *__pyx_v_sel
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_14__idiv__(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -85804,7 +92424,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_14__idiv__(struct PyPetscVecObje
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
/* "PETSc/Vec.pyx":61
* return vec_idiv(self, other)
@@ -86175,7 +92795,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_22__mul__(PyObject *__pyx_v_self
*/
/* Python wrapper */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_25__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_25__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = 0;
@@ -86187,9 +92807,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_25__div__(PyObject *__pyx_v_self
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_24__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -86268,7 +92888,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_24__div__(PyObject *__pyx_v_self
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
/* "PETSc/Vec.pyx":90
* return vec_rdiv(other, self)
@@ -86464,7 +93084,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_30__setitem__(struct PyPetscVecObject
*
* # buffer interface (PEP 3118)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vec_setitem(__pyx_v_self, __pyx_v_i, __pyx_v_v); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 107, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vec_setitem(__pyx_v_self, __pyx_v_i, __pyx_v_v); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 107, __pyx_L1_error)
/* "PETSc/Vec.pyx":106
* return vec_getitem(self, i)
@@ -86544,7 +93164,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_32__getbuffer__(struct PyPetscVecObjec
*
* def __releasebuffer__(self, Py_buffer *view):
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_buf->__pyx_vtab)->acquirebuffer(__pyx_v_buf, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 113, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_buf->__pyx_vtab)->acquirebuffer(__pyx_v_buf, __pyx_v_view, __pyx_v_flags); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 113, __pyx_L1_error)
/* "PETSc/Vec.pyx":111
* # buffer interface (PEP 3118)
@@ -86623,7 +93243,7 @@ static void __pyx_pf_8petsc4py_5PETSc_3Vec_34__releasebuffer__(struct PyPetscVec
* <void>self # unused
*
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_buf->__pyx_vtab)->releasebuffer(__pyx_v_buf, __pyx_v_view); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 117, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc__Vec_buffer *)__pyx_v_buf->__pyx_vtab)->releasebuffer(__pyx_v_buf, __pyx_v_view); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 117, __pyx_L1_error)
/* "PETSc/Vec.pyx":118
* cdef _Vec_buffer buf = <_Vec_buffer>(view.obj)
@@ -86646,7 +93266,7 @@ static void __pyx_pf_8petsc4py_5PETSc_3Vec_34__releasebuffer__(struct PyPetscVec
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
- __Pyx_WriteUnraisable("petsc4py.PETSc.Vec.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.Vec.__releasebuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_buf);
__Pyx_RefNannyFinishContext();
@@ -86866,6 +93486,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_41view(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -86883,6 +93504,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_41view(PyObject *__pyx_v_self, P
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -86949,7 +93571,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_40view(struct PyPetscVecObject *
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecView(__pyx_v_self->vec, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 137, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecView(__pyx_v_self->vec, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 137, __pyx_L1_error)
/* "PETSc/Vec.pyx":134
* #
@@ -87009,7 +93631,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_42destroy(struct PyPetscVecObjec
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_self->vec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 140, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_self->vec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 140, __pyx_L1_error)
/* "PETSc/Vec.pyx":141
* def destroy(self):
@@ -87066,6 +93688,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_45create(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -87083,6 +93706,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_45create(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -87139,7 +93763,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_44create(struct PyPetscVecObject
* PetscCLEAR(self.obj); self.vec = newvec
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 146, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 146, __pyx_L1_error)
/* "PETSc/Vec.pyx":147
* cdef PetscVec newvec = NULL
@@ -87205,6 +93829,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_47setType(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -87276,7 +93901,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_46setType(struct PyPetscVecObjec
*
* def setSizes(self, size, bsize=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetType(__pyx_v_self->vec, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 153, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetType(__pyx_v_self->vec, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 153, __pyx_L1_error)
/* "PETSc/Vec.pyx":150
* return self
@@ -87326,7 +93951,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_49setSizes(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -87335,6 +93962,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_49setSizes(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
@@ -87347,6 +93975,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_49setSizes(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -87398,7 +94027,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_48setSizes(struct PyPetscVecObje
* CHKERR( VecSetSizes(self.vec, n, N) )
* if bs != PETSC_DECIDE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 157, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 157, __pyx_L1_error)
/* "PETSc/Vec.pyx":158
* cdef PetscInt bs=0, n=0, N=0
@@ -87407,7 +94036,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_48setSizes(struct PyPetscVecObje
* if bs != PETSC_DECIDE:
* CHKERR( VecSetBlockSize(self.vec, bs) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetSizes(__pyx_v_self->vec, __pyx_v_n, __pyx_v_N)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 158, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetSizes(__pyx_v_self->vec, __pyx_v_n, __pyx_v_N)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 158, __pyx_L1_error)
/* "PETSc/Vec.pyx":159
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -87426,7 +94055,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_48setSizes(struct PyPetscVecObje
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_self->vec, __pyx_v_bs)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 160, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_self->vec, __pyx_v_bs)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 160, __pyx_L1_error)
/* "PETSc/Vec.pyx":159
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -87485,8 +94114,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_51createSeq(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -87495,11 +94127,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_51createSeq(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -87512,7 +94146,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_51createSeq(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -87578,7 +94214,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_50createSeq(struct PyPetscVecObj
* Sys_Layout(ccomm, bs, &n, &N)
* if bs == PETSC_DECIDE: bs = 1
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 167, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 167, __pyx_L1_error)
/* "PETSc/Vec.pyx":168
* cdef PetscInt bs=0, n=0, N=0
@@ -87587,7 +94223,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_50createSeq(struct PyPetscVecObj
* if bs == PETSC_DECIDE: bs = 1
* cdef PetscVec newvec = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 168, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 168, __pyx_L1_error)
/* "PETSc/Vec.pyx":169
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -87617,7 +94253,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_50createSeq(struct PyPetscVecObj
* CHKERR( VecSetSizes(newvec, n, N) )
* CHKERR( VecSetBlockSize(newvec, bs) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 171, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 171, __pyx_L1_error)
/* "PETSc/Vec.pyx":172
* cdef PetscVec newvec = NULL
@@ -87626,7 +94262,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_50createSeq(struct PyPetscVecObj
* CHKERR( VecSetBlockSize(newvec, bs) )
* CHKERR( VecSetType(newvec, VECSEQ) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetSizes(__pyx_v_newvec, __pyx_v_n, __pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 172, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetSizes(__pyx_v_newvec, __pyx_v_n, __pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 172, __pyx_L1_error)
/* "PETSc/Vec.pyx":173
* CHKERR( VecCreate(ccomm,&newvec) )
@@ -87635,7 +94271,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_50createSeq(struct PyPetscVecObj
* CHKERR( VecSetType(newvec, VECSEQ) )
* PetscCLEAR(self.obj); self.vec = newvec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_newvec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 173, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_newvec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 173, __pyx_L1_error)
/* "PETSc/Vec.pyx":174
* CHKERR( VecSetSizes(newvec, n, N) )
@@ -87644,7 +94280,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_50createSeq(struct PyPetscVecObj
* PetscCLEAR(self.obj); self.vec = newvec
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetType(__pyx_v_newvec, VECSEQ)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 174, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetType(__pyx_v_newvec, VECSEQ)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 174, __pyx_L1_error)
/* "PETSc/Vec.pyx":175
* CHKERR( VecSetBlockSize(newvec, bs) )
@@ -87714,8 +94350,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_53createMPI(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -87724,11 +94363,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_53createMPI(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -87741,7 +94382,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_53createMPI(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -87807,7 +94450,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_52createMPI(struct PyPetscVecObj
* Sys_Layout(ccomm, bs, &n, &N)
* if bs == PETSC_DECIDE: bs = 1
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 181, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 181, __pyx_L1_error)
/* "PETSc/Vec.pyx":182
* cdef PetscInt bs=0, n=0, N=0
@@ -87816,7 +94459,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_52createMPI(struct PyPetscVecObj
* if bs == PETSC_DECIDE: bs = 1
* cdef PetscVec newvec = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 182, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 182, __pyx_L1_error)
/* "PETSc/Vec.pyx":183
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -87846,7 +94489,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_52createMPI(struct PyPetscVecObj
* CHKERR( VecSetSizes(newvec, n, N) )
* CHKERR( VecSetBlockSize(newvec, bs) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 185, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 185, __pyx_L1_error)
/* "PETSc/Vec.pyx":186
* cdef PetscVec newvec = NULL
@@ -87855,7 +94498,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_52createMPI(struct PyPetscVecObj
* CHKERR( VecSetBlockSize(newvec, bs) )
* CHKERR( VecSetType(newvec, VECMPI) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetSizes(__pyx_v_newvec, __pyx_v_n, __pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 186, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetSizes(__pyx_v_newvec, __pyx_v_n, __pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 186, __pyx_L1_error)
/* "PETSc/Vec.pyx":187
* CHKERR( VecCreate(ccomm, &newvec) )
@@ -87864,7 +94507,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_52createMPI(struct PyPetscVecObj
* CHKERR( VecSetType(newvec, VECMPI) )
* PetscCLEAR(self.obj); self.vec = newvec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_newvec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 187, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_newvec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 187, __pyx_L1_error)
/* "PETSc/Vec.pyx":188
* CHKERR( VecSetSizes(newvec, n, N) )
@@ -87873,7 +94516,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_52createMPI(struct PyPetscVecObj
* PetscCLEAR(self.obj); self.vec = newvec
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetType(__pyx_v_newvec, VECMPI)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 188, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetType(__pyx_v_newvec, VECMPI)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 188, __pyx_L1_error)
/* "PETSc/Vec.pyx":189
* CHKERR( VecSetBlockSize(newvec, bs) )
@@ -87945,9 +94588,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_55createWithArray(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -87956,16 +94603,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_55createWithArray(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_array)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -87978,8 +94628,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_55createWithArray(PyObject *__py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -88111,7 +94764,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_54createWithArray(struct PyPetsc
* Sys_Layout(ccomm, bs, &n, &N)
* if bs == PETSC_DECIDE: bs = 1
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(30, 199, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(30, 199, __pyx_L1_error)
/* "PETSc/Vec.pyx":200
* cdef PetscInt bs=0, n=0, N=0
@@ -88120,7 +94773,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_54createWithArray(struct PyPetsc
* if bs == PETSC_DECIDE: bs = 1
* if na < n: raise ValueError(
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(30, 200, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(30, 200, __pyx_L1_error)
/* "PETSc/Vec.pyx":201
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -88216,7 +94869,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_54createWithArray(struct PyPetsc
* CHKERR( VecCreateSeqWithArray(ccomm,bs,N,sa,&newvec) )
* else:
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_comm_size(__pyx_v_ccomm); if (unlikely(__pyx_t_7 == -1 && PyErr_Occurred())) __PYX_ERR(30, 206, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_comm_size(__pyx_v_ccomm); if (unlikely(__pyx_t_7 == ((int)-1) && PyErr_Occurred())) __PYX_ERR(30, 206, __pyx_L1_error)
__pyx_t_3 = ((__pyx_t_7 == 1) != 0);
if (__pyx_t_3) {
@@ -88227,7 +94880,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_54createWithArray(struct PyPetsc
* else:
* CHKERR( VecCreateMPIWithArray(ccomm,bs,n,N,sa,&newvec) )
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateSeqWithArray(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_N, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(30, 207, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateSeqWithArray(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_N, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(30, 207, __pyx_L1_error)
/* "PETSc/Vec.pyx":206
* (toInt(na), toInt(n), toInt(bs)))
@@ -88247,7 +94900,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_54createWithArray(struct PyPetsc
* self.set_attr('__array__', array)
*/
/*else*/ {
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateMPIWithArray(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_n, __pyx_v_N, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(30, 209, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateMPIWithArray(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_n, __pyx_v_N, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(30, 209, __pyx_L1_error)
}
__pyx_L6:;
@@ -88337,9 +94990,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_57createGhost(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -88348,16 +95005,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_57createGhost(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ghosts)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("createGhost", 0, 2, 4, 1); __PYX_ERR(30, 214, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -88370,7 +95030,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_57createGhost(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -88464,7 +95126,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_56createGhost(struct PyPetscVecO
* Sys_Layout(ccomm, bs, &n, &N)
* cdef PetscVec newvec = NULL
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 219, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 219, __pyx_L1_error)
/* "PETSc/Vec.pyx":220
* cdef PetscInt bs=0, n=0, N=0
@@ -88473,7 +95135,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_56createGhost(struct PyPetscVecO
* cdef PetscVec newvec = NULL
* if bs == PETSC_DECIDE:
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 220, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 220, __pyx_L1_error)
/* "PETSc/Vec.pyx":221
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -88501,7 +95163,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_56createGhost(struct PyPetscVecO
* ccomm, n, N, ng, ig, &newvec) )
* else:
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhost(__pyx_v_ccomm, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, (&__pyx_v_newvec))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 223, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhost(__pyx_v_ccomm, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, (&__pyx_v_newvec))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 223, __pyx_L1_error)
/* "PETSc/Vec.pyx":222
* Sys_Layout(ccomm, bs, &n, &N)
@@ -88529,7 +95191,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_56createGhost(struct PyPetscVecO
* PetscCLEAR(self.obj); self.vec = newvec
* return self
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhostBlock(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, (&__pyx_v_newvec))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 226, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhostBlock(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, (&__pyx_v_newvec))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 226, __pyx_L1_error)
}
__pyx_L3:;
@@ -88614,10 +95276,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_59createGhostWithArray(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -88626,21 +95293,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_59createGhostWithArray(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ghosts)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_array)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("createGhostWithArray", 0, 2, 5, 1); __PYX_ERR(30, 231, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -88653,8 +95324,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_59createGhostWithArray(PyObject
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -88792,7 +95466,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_58createGhostWithArray(struct Py
if ((__pyx_t_4 != 0)) {
__pyx_t_3 = 1;
} else {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_5 == -1L && PyErr_Occurred())) __PYX_ERR(30, 239, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_5 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 239, __pyx_L1_error)
__pyx_t_3 = __pyx_t_5;
}
__pyx_v_b = __pyx_t_3;
@@ -88841,7 +95515,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_58createGhostWithArray(struct Py
* Sys_Layout(ccomm, bs, &n, &N)
* if na < (n+ng*b): raise ValueError(
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(30, 242, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(30, 242, __pyx_L1_error)
/* "PETSc/Vec.pyx":243
* cdef PetscInt bs=0, n=0, N=0
@@ -88850,7 +95524,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_58createGhostWithArray(struct Py
* if na < (n+ng*b): raise ValueError(
* "ghosts size %d, array size %d, and "
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(30, 243, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(30, 243, __pyx_L1_error)
/* "PETSc/Vec.pyx":244
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -88949,7 +95623,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_58createGhostWithArray(struct Py
* ccomm, n, N, ng, ig, sa, &newvec) )
* else:
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhostWithArray(__pyx_v_ccomm, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(30, 250, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhostWithArray(__pyx_v_ccomm, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(30, 250, __pyx_L1_error)
/* "PETSc/Vec.pyx":249
* (toInt(ng), toInt(na), toInt(n), toInt(b)))
@@ -88977,7 +95651,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_58createGhostWithArray(struct Py
* PetscCLEAR(self.obj); self.vec = newvec
* self.set_attr('__array__', array)
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhostBlockWithArray(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(30, 253, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateGhostBlockWithArray(__pyx_v_ccomm, __pyx_v_bs, __pyx_v_n, __pyx_v_N, __pyx_v_ng, __pyx_v_ig, __pyx_v_sa, (&__pyx_v_newvec))); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(30, 253, __pyx_L1_error)
}
__pyx_L5:;
@@ -89068,8 +95742,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_61createShared(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -89078,11 +95755,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_61createShared(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -89095,7 +95774,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_61createShared(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -89161,7 +95842,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_60createShared(struct PyPetscVec
* Sys_Layout(ccomm, bs, &n, &N)
* cdef PetscVec newvec = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 262, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Vec_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_bs), (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 262, __pyx_L1_error)
/* "PETSc/Vec.pyx":263
* cdef PetscInt bs=0, n=0, N=0
@@ -89170,7 +95851,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_60createShared(struct PyPetscVec
* cdef PetscVec newvec = NULL
* CHKERR( VecCreateShared(ccomm, n, N, &newvec) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 263, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_bs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 263, __pyx_L1_error)
/* "PETSc/Vec.pyx":264
* Vec_Sizes(size, bsize, &bs, &n, &N)
@@ -89188,7 +95869,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_60createShared(struct PyPetscVec
* PetscCLEAR(self.obj); self.vec = newvec
* if bs != PETSC_DECIDE:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateShared(__pyx_v_ccomm, __pyx_v_n, __pyx_v_N, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 265, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateShared(__pyx_v_ccomm, __pyx_v_n, __pyx_v_N, (&__pyx_v_newvec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 265, __pyx_L1_error)
/* "PETSc/Vec.pyx":266
* cdef PetscVec newvec = NULL
@@ -89217,7 +95898,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_60createShared(struct PyPetscVec
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_self->vec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 268, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_self->vec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 268, __pyx_L1_error)
/* "PETSc/Vec.pyx":267
* CHKERR( VecCreateShared(ccomm, n, N, &newvec) )
@@ -89286,8 +95967,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_63createNest(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -89296,11 +95980,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_63createNest(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isets);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -89313,7 +95999,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_63createNest(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -89407,8 +96095,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_62createNest(struct PyPetscVecOb
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_3 = PyObject_Length(__pyx_v_isets); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 275, __pyx_L1_error)
- __pyx_t_4 = PyObject_Length(__pyx_v_vecs); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 275, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_v_isets); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(30, 275, __pyx_L1_error)
+ __pyx_t_4 = PyObject_Length(__pyx_v_vecs); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(30, 275, __pyx_L1_error)
if (unlikely(!((__pyx_t_3 == __pyx_t_4) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
__PYX_ERR(30, 275, __pyx_L1_error)
@@ -89456,7 +96144,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_62createNest(struct PyPetscVecOb
* cdef PetscInt n = <PetscInt>m
* cdef PetscVec *cvecs = NULL
*/
- __pyx_t_4 = PyObject_Length(__pyx_v_vecs); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 279, __pyx_L1_error)
+ __pyx_t_4 = PyObject_Length(__pyx_v_vecs); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(30, 279, __pyx_L1_error)
__pyx_v_m = __pyx_t_4;
/* "PETSc/Vec.pyx":280
@@ -89586,7 +96274,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_62createNest(struct PyPetscVecOb
* PetscCLEAR(self.obj); self.vec = newvec
* return self
*/
- __pyx_t_10 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateNest(__pyx_v_ccomm, __pyx_v_n, __pyx_v_cisets, __pyx_v_cvecs, (&__pyx_v_newvec))); if (unlikely(__pyx_t_10 == -1)) __PYX_ERR(30, 290, __pyx_L1_error)
+ __pyx_t_10 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreateNest(__pyx_v_ccomm, __pyx_v_n, __pyx_v_cisets, __pyx_v_cvecs, (&__pyx_v_newvec))); if (unlikely(__pyx_t_10 == ((int)-1))) __PYX_ERR(30, 290, __pyx_L1_error)
/* "PETSc/Vec.pyx":291
* cdef PetscVec newvec = NULL
@@ -89658,6 +96346,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_65setOptionsPrefix(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -89729,7 +96418,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_64setOptionsPrefix(struct PyPets
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetOptionsPrefix(__pyx_v_self->vec, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 299, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetOptionsPrefix(__pyx_v_self->vec, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 299, __pyx_L1_error)
/* "PETSc/Vec.pyx":296
* #
@@ -89802,7 +96491,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_66getOptionsPrefix(struct PyPets
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetOptionsPrefix(__pyx_v_self->vec, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 303, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetOptionsPrefix(__pyx_v_self->vec, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 303, __pyx_L1_error)
/* "PETSc/Vec.pyx":304
* cdef const_char *cval = NULL
@@ -89875,7 +96564,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_68setFromOptions(struct PyPetscV
*
* def setUp(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetFromOptions(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 307, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetFromOptions(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 307, __pyx_L1_error)
/* "PETSc/Vec.pyx":306
* return bytes2str(cval)
@@ -89935,7 +96624,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_70setUp(struct PyPetscVecObject
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetUp(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 310, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetUp(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 310, __pyx_L1_error)
/* "PETSc/Vec.pyx":311
* def setUp(self):
@@ -89992,7 +96681,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_73setOption(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -90001,6 +96692,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_73setOption(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_option)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_flag)) != 0)) kw_args--;
else {
@@ -90051,7 +96743,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_72setOption(struct PyPetscVecObj
*/
__pyx_t_1 = ((VecOption)__Pyx_PyInt_As_VecOption(__pyx_v_option)); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 314, __pyx_L1_error)
__pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 314, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetOption(__pyx_v_self->vec, __pyx_t_1, __pyx_t_2)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 314, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetOption(__pyx_v_self->vec, __pyx_t_1, __pyx_t_2)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 314, __pyx_L1_error)
/* "PETSc/Vec.pyx":313
* return self
@@ -90122,7 +96814,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_74getType(struct PyPetscVecObjec
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetType(__pyx_v_self->vec, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 318, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetType(__pyx_v_self->vec, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 318, __pyx_L1_error)
/* "PETSc/Vec.pyx":319
* cdef PetscVecType cval = NULL
@@ -90206,7 +96898,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_76getSize(struct PyPetscVecObjec
* return toInt(N)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 323, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 323, __pyx_L1_error)
/* "PETSc/Vec.pyx":324
* cdef PetscInt N = 0
@@ -90290,7 +96982,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_78getLocalSize(struct PyPetscVec
* return toInt(n)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 328, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 328, __pyx_L1_error)
/* "PETSc/Vec.pyx":329
* cdef PetscInt n = 0
@@ -90378,7 +97070,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_80getSizes(struct PyPetscVecObje
* CHKERR( VecGetSize(self.vec, &N) )
* return (toInt(n), toInt(N))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 333, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 333, __pyx_L1_error)
/* "PETSc/Vec.pyx":334
* cdef PetscInt n = 0, N = 0
@@ -90387,7 +97079,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_80getSizes(struct PyPetscVecObje
* return (toInt(n), toInt(N))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 334, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSize(__pyx_v_self->vec, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 334, __pyx_L1_error)
/* "PETSc/Vec.pyx":335
* CHKERR( VecGetLocalSize(self.vec, &n) )
@@ -90458,6 +97150,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_83setBlockSize(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -90507,7 +97200,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_82setBlockSize(struct PyPetscVec
* CHKERR( VecSetBlockSize(self.vec, bs) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 338, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 338, __pyx_L1_error)
__pyx_v_bs = __pyx_t_1;
/* "PETSc/Vec.pyx":339
@@ -90517,7 +97210,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_82setBlockSize(struct PyPetscVec
*
* def getBlockSize(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_self->vec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 339, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetBlockSize(__pyx_v_self->vec, __pyx_v_bs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 339, __pyx_L1_error)
/* "PETSc/Vec.pyx":337
* return (toInt(n), toInt(N))
@@ -90588,7 +97281,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_84getBlockSize(struct PyPetscVec
* return toInt(bs)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetBlockSize(__pyx_v_self->vec, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 343, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetBlockSize(__pyx_v_self->vec, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 343, __pyx_L1_error)
/* "PETSc/Vec.pyx":344
* cdef PetscInt bs=0
@@ -90676,7 +97369,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_86getOwnershipRange(struct PyPet
* return (toInt(low), toInt(high))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetOwnershipRange(__pyx_v_self->vec, (&__pyx_v_low), (&__pyx_v_high))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 348, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetOwnershipRange(__pyx_v_self->vec, (&__pyx_v_low), (&__pyx_v_high))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 348, __pyx_L1_error)
/* "PETSc/Vec.pyx":349
* cdef PetscInt low=0, high=0
@@ -90774,7 +97467,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_88getOwnershipRanges(struct PyPe
* cdef MPI_Comm comm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.vec, &comm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetOwnershipRanges(__pyx_v_self->vec, (&__pyx_v_rng))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 353, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetOwnershipRanges(__pyx_v_self->vec, (&__pyx_v_rng))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 353, __pyx_L1_error)
/* "PETSc/Vec.pyx":354
* cdef const_PetscInt *rng = NULL
@@ -90792,7 +97485,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_88getOwnershipRanges(struct PyPe
* cdef int size = -1
* CHKERR( MPI_Comm_size(comm, &size) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->vec), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 355, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->vec), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 355, __pyx_L1_error)
/* "PETSc/Vec.pyx":356
* cdef MPI_Comm comm = MPI_COMM_NULL
@@ -90810,7 +97503,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_88getOwnershipRanges(struct PyPe
* return array_i(size+1, rng)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 357, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 357, __pyx_L1_error)
/* "PETSc/Vec.pyx":358
* cdef int size = -1
@@ -90870,6 +97563,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_91getBuffer(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -90887,6 +97581,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_91getBuffer(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91008,6 +97703,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_93getArray(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91025,6 +97721,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_93getArray(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91145,6 +97842,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_95setArray(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91192,7 +97890,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_94setArray(struct PyPetscVecObje
*
* def placeArray(self, array):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vec_setarray(__pyx_v_self, __pyx_v_array); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 373, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vec_setarray(__pyx_v_self, __pyx_v_array); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 373, __pyx_L1_error)
/* "PETSc/Vec.pyx":372
* return vec_getarray_w(self)
@@ -91238,6 +97936,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_97placeArray(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91320,7 +98019,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_96placeArray(struct PyPetscVecOb
* array = oarray_s(array, &na, &a)
* if (na != nv): raise ValueError(
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_nv))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 379, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalSize(__pyx_v_self->vec, (&__pyx_v_nv))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 379, __pyx_L1_error)
/* "PETSc/Vec.pyx":380
* cdef PetscScalar *a = NULL
@@ -91402,7 +98101,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_96placeArray(struct PyPetscVecOb
* self.set_attr('__placed_array__', array)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPlaceArray(__pyx_v_self->vec, __pyx_v_a)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 384, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPlaceArray(__pyx_v_self->vec, __pyx_v_a)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 384, __pyx_L1_error)
/* "PETSc/Vec.pyx":385
* (toInt(na), toInt(nv)))
@@ -91464,6 +98163,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_99resetArray(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91481,6 +98181,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_99resetArray(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91567,7 +98268,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_98resetArray(struct PyPetscVecOb
* self.set_attr('__placed_array__', None)
* return array
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecResetArray(__pyx_v_self->vec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(30, 391, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecResetArray(__pyx_v_self->vec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(30, 391, __pyx_L1_error)
/* "PETSc/Vec.pyx":392
* if array is None and not force: return None
@@ -91637,6 +98338,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_101getCUDAHandle(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91654,6 +98356,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_101getCUDAHandle(PyObject *__pyx
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91752,7 +98455,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_100getCUDAHandle(struct PyPetscV
* elif m[0] == c'r':
* CHKERR( VecCUSPGetCUDAArrayRead(self.vec, &hdl) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPGetCUDAArrayReadWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 400, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPGetCUDAArrayReadWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 400, __pyx_L1_error)
/* "PETSc/Vec.pyx":399
* cdef const_char *m = NULL
@@ -91781,7 +98484,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_100getCUDAHandle(struct PyPetscV
* elif m[0] == c'w':
* CHKERR( VecCUSPGetCUDAArrayWrite(self.vec, &hdl) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPGetCUDAArrayRead(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 402, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPGetCUDAArrayRead(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 402, __pyx_L1_error)
/* "PETSc/Vec.pyx":401
* if m == NULL or (m[0] == c'r' and m[1] == c'w'):
@@ -91810,7 +98513,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_100getCUDAHandle(struct PyPetscV
* else:
* raise ValueError("Invalid mode: expected 'rw', 'r', or 'w'")
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPGetCUDAArrayWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 404, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPGetCUDAArrayWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 404, __pyx_L1_error)
/* "PETSc/Vec.pyx":403
* elif m[0] == c'r':
@@ -91830,7 +98533,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_100getCUDAHandle(struct PyPetscV
*
*/
/*else*/ {
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__52, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 406, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__55, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 406, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
@@ -91898,7 +98601,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_103restoreCUDAHandle(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -91907,6 +98612,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_103restoreCUDAHandle(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_handle)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -91919,6 +98625,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_103restoreCUDAHandle(PyObject *_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -91962,7 +98669,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_102restoreCUDAHandle(struct PyPe
* cdef const_char *m = NULL
* if mode is not None: mode = str2bytes(mode, &m)
*/
- __pyx_t_1 = __Pyx_PyInt_As_size_t(__pyx_v_handle); if (unlikely((__pyx_t_1 == (Py_uintptr_t)-1) && PyErr_Occurred())) __PYX_ERR(30, 410, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_As_size_t(__pyx_v_handle); if (unlikely((__pyx_t_1 == ((Py_uintptr_t)-1)) && PyErr_Occurred())) __PYX_ERR(30, 410, __pyx_L1_error)
__pyx_v_hdl = ((PetscScalar *)((Py_uintptr_t)__pyx_t_1));
/* "PETSc/Vec.pyx":411
@@ -92021,7 +98728,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_102restoreCUDAHandle(struct PyPe
* elif m[0] == c'r':
* CHKERR( VecCUSPRestoreCUDAArrayRead(self.vec, &hdl) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPRestoreCUDAArrayReadWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(30, 414, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPRestoreCUDAArrayReadWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(30, 414, __pyx_L1_error)
/* "PETSc/Vec.pyx":413
* cdef const_char *m = NULL
@@ -92050,7 +98757,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_102restoreCUDAHandle(struct PyPe
* elif m[0] == c'w':
* CHKERR( VecCUSPRestoreCUDAArrayWrite(self.vec, &hdl) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPRestoreCUDAArrayRead(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(30, 416, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPRestoreCUDAArrayRead(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(30, 416, __pyx_L1_error)
/* "PETSc/Vec.pyx":415
* if m == NULL or (m[0] == c'r' and m[1] == c'w'):
@@ -92079,7 +98786,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_102restoreCUDAHandle(struct PyPe
* else:
* raise ValueError("Invalid mode: expected 'rw', 'r', or 'w'")
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPRestoreCUDAArrayWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(30, 418, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCUSPRestoreCUDAArrayWrite(__pyx_v_self->vec, (&__pyx_v_hdl))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(30, 418, __pyx_L1_error)
/* "PETSc/Vec.pyx":417
* elif m[0] == c'r':
@@ -92099,7 +98806,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_102restoreCUDAHandle(struct PyPe
* def duplicate(self, array=None):
*/
/*else*/ {
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__53, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 420, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__56, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 420, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -92154,6 +98861,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_105duplicate(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92171,6 +98879,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_105duplicate(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92213,7 +98922,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_104duplicate(struct PyPetscVecOb
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -92241,7 +98950,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_104duplicate(struct PyPetscVecOb
* if array is not None:
* vec_setarray(vec, array)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_self->vec, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 424, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_self->vec, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 424, __pyx_L1_error)
/* "PETSc/Vec.pyx":425
* cdef Vec vec = type(self)()
@@ -92261,7 +98970,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_104duplicate(struct PyPetscVecOb
* return vec
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_vec_setarray(__pyx_v_vec, __pyx_v_array); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 426, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_vec_setarray(__pyx_v_vec, __pyx_v_array); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 426, __pyx_L1_error)
/* "PETSc/Vec.pyx":425
* cdef Vec vec = type(self)()
@@ -92331,6 +99040,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_107copy(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92348,6 +99058,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_107copy(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92406,7 +99117,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_106copy(struct PyPetscVecObject
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_4 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -92453,7 +99164,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_106copy(struct PyPetscVecObject
* CHKERR( VecCopy(self.vec, result.vec) )
* return result
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_self->vec, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(30, 433, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_self->vec, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(30, 433, __pyx_L1_error)
/* "PETSc/Vec.pyx":432
* if result is None:
@@ -92471,7 +99182,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_106copy(struct PyPetscVecObject
* return result
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_self->vec, __pyx_v_result->vec)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(30, 434, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_self->vec, __pyx_v_result->vec)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(30, 434, __pyx_L1_error)
/* "PETSc/Vec.pyx":435
* CHKERR( VecDuplicate(self.vec, &result.vec) )
@@ -92531,6 +99242,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_109chop(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92580,7 +99292,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_108chop(struct PyPetscVecObject
* CHKERR( VecChop(self.vec, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(30, 438, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(30, 438, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
/* "PETSc/Vec.pyx":439
@@ -92588,9 +99300,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_108chop(struct PyPetscVecObject
* cdef PetscReal rval = asReal(tol)
* CHKERR( VecChop(self.vec, rval) ) # <<<<<<<<<<<<<<
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecChop(__pyx_v_self->vec, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 439, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecChop(__pyx_v_self->vec, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 439, __pyx_L1_error)
/* "PETSc/Vec.pyx":437
* return result
@@ -92615,7 +99327,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_108chop(struct PyPetscVecObject
/* "PETSc/Vec.pyx":441
* CHKERR( VecChop(self.vec, rval) )
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
*/
@@ -92636,6 +99348,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_111load(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92686,7 +99399,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_110load(struct PyPetscVecObject
/* "PETSc/Vec.pyx":442
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
* cdef MPI_Comm comm = MPI_COMM_NULL # <<<<<<<<<<<<<<
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
* if self.vec == NULL:
@@ -92694,7 +99407,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_110load(struct PyPetscVecObject
__pyx_v_comm = MPI_COMM_NULL;
/* "PETSc/Vec.pyx":443
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr) # <<<<<<<<<<<<<<
* if self.vec == NULL:
@@ -92719,7 +99432,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_110load(struct PyPetscVecObject
* CHKERR( VecCreate(comm, &self.vec) )
* CHKERR( VecLoad(self.vec, viewer.vwr) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(__pyx_v_obj, (&__pyx_v_comm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 445, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(__pyx_v_obj, (&__pyx_v_comm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 445, __pyx_L1_error)
/* "PETSc/Vec.pyx":446
* if self.vec == NULL:
@@ -92728,7 +99441,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_110load(struct PyPetscVecObject
* CHKERR( VecLoad(self.vec, viewer.vwr) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_comm, (&__pyx_v_self->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 446, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_comm, (&__pyx_v_self->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 446, __pyx_L1_error)
/* "PETSc/Vec.pyx":444
* cdef MPI_Comm comm = MPI_COMM_NULL
@@ -92746,14 +99459,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_110load(struct PyPetscVecObject
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecLoad(__pyx_v_self->vec, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 447, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecLoad(__pyx_v_self->vec, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 447, __pyx_L1_error)
/* "PETSc/Vec.pyx":448
* CHKERR( VecCreate(comm, &self.vec) )
* CHKERR( VecLoad(self.vec, viewer.vwr) )
* return self # <<<<<<<<<<<<<<
*
- * def equal(self, Vec vec not None):
+ * def equal(self, Vec vec):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
@@ -92763,7 +99476,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_110load(struct PyPetscVecObject
/* "PETSc/Vec.pyx":441
* CHKERR( VecChop(self.vec, rval) )
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
*/
@@ -92781,7 +99494,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_110load(struct PyPetscVecObject
/* "PETSc/Vec.pyx":450
* return self
*
- * def equal(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def equal(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( VecEqual(self.vec, vec.vec, &flag) )
*/
@@ -92802,6 +99515,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_113equal(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92851,31 +99565,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_112equal(struct PyPetscVecObject
/* "PETSc/Vec.pyx":451
*
- * def equal(self, Vec vec not None):
+ * def equal(self, Vec vec):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( VecEqual(self.vec, vec.vec, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
/* "PETSc/Vec.pyx":452
- * def equal(self, Vec vec not None):
+ * def equal(self, Vec vec):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( VecEqual(self.vec, vec.vec, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecEqual(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 452, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecEqual(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 452, __pyx_L1_error)
/* "PETSc/Vec.pyx":453
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( VecEqual(self.vec, vec.vec, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
- * def dot(self, Vec vec not None):
+ * def dot(self, Vec vec):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 453, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 453, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -92884,7 +99598,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_112equal(struct PyPetscVecObject
/* "PETSc/Vec.pyx":450
* return self
*
- * def equal(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def equal(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( VecEqual(self.vec, vec.vec, &flag) )
*/
@@ -92901,9 +99615,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_112equal(struct PyPetscVecObject
}
/* "PETSc/Vec.pyx":455
- * return <bint> flag
+ * return toBool(flag)
*
- * def dot(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def dot(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecDot(self.vec, vec.vec, &sval) )
*/
@@ -92924,6 +99638,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_115dot(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -92973,7 +99688,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_114dot(struct PyPetscVecObject *
/* "PETSc/Vec.pyx":456
*
- * def dot(self, Vec vec not None):
+ * def dot(self, Vec vec):
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
* CHKERR( VecDot(self.vec, vec.vec, &sval) )
* return toScalar(sval)
@@ -92981,20 +99696,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_114dot(struct PyPetscVecObject *
__pyx_v_sval = 0.0;
/* "PETSc/Vec.pyx":457
- * def dot(self, Vec vec not None):
+ * def dot(self, Vec vec):
* cdef PetscScalar sval = 0
* CHKERR( VecDot(self.vec, vec.vec, &sval) ) # <<<<<<<<<<<<<<
* return toScalar(sval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDot(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 457, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDot(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 457, __pyx_L1_error)
/* "PETSc/Vec.pyx":458
* cdef PetscScalar sval = 0
* CHKERR( VecDot(self.vec, vec.vec, &sval) )
* return toScalar(sval) # <<<<<<<<<<<<<<
*
- * def dotBegin(self, Vec vec not None):
+ * def dotBegin(self, Vec vec):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toScalar(__pyx_v_sval); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 458, __pyx_L1_error)
@@ -93004,9 +99719,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_114dot(struct PyPetscVecObject *
goto __pyx_L0;
/* "PETSc/Vec.pyx":455
- * return <bint> flag
+ * return toBool(flag)
*
- * def dot(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def dot(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecDot(self.vec, vec.vec, &sval) )
*/
@@ -93025,7 +99740,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_114dot(struct PyPetscVecObject *
/* "PETSc/Vec.pyx":460
* return toScalar(sval)
*
- * def dotBegin(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def dotBegin(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecDotBegin(self.vec, vec.vec, &sval) )
*/
@@ -93046,6 +99761,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_117dotBegin(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93094,7 +99810,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_116dotBegin(struct PyPetscVecObj
/* "PETSc/Vec.pyx":461
*
- * def dotBegin(self, Vec vec not None):
+ * def dotBegin(self, Vec vec):
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
* CHKERR( VecDotBegin(self.vec, vec.vec, &sval) )
*
@@ -93102,18 +99818,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_116dotBegin(struct PyPetscVecObj
__pyx_v_sval = 0.0;
/* "PETSc/Vec.pyx":462
- * def dotBegin(self, Vec vec not None):
+ * def dotBegin(self, Vec vec):
* cdef PetscScalar sval = 0
* CHKERR( VecDotBegin(self.vec, vec.vec, &sval) ) # <<<<<<<<<<<<<<
*
- * def dotEnd(self, Vec vec not None):
+ * def dotEnd(self, Vec vec):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDotBegin(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 462, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDotBegin(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 462, __pyx_L1_error)
/* "PETSc/Vec.pyx":460
* return toScalar(sval)
*
- * def dotBegin(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def dotBegin(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecDotBegin(self.vec, vec.vec, &sval) )
*/
@@ -93133,7 +99849,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_116dotBegin(struct PyPetscVecObj
/* "PETSc/Vec.pyx":464
* CHKERR( VecDotBegin(self.vec, vec.vec, &sval) )
*
- * def dotEnd(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def dotEnd(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecDotEnd(self.vec, vec.vec, &sval) )
*/
@@ -93154,6 +99870,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_119dotEnd(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93203,7 +99920,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_118dotEnd(struct PyPetscVecObjec
/* "PETSc/Vec.pyx":465
*
- * def dotEnd(self, Vec vec not None):
+ * def dotEnd(self, Vec vec):
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
* CHKERR( VecDotEnd(self.vec, vec.vec, &sval) )
* return toScalar(sval)
@@ -93211,20 +99928,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_118dotEnd(struct PyPetscVecObjec
__pyx_v_sval = 0.0;
/* "PETSc/Vec.pyx":466
- * def dotEnd(self, Vec vec not None):
+ * def dotEnd(self, Vec vec):
* cdef PetscScalar sval = 0
* CHKERR( VecDotEnd(self.vec, vec.vec, &sval) ) # <<<<<<<<<<<<<<
* return toScalar(sval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDotEnd(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 466, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDotEnd(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 466, __pyx_L1_error)
/* "PETSc/Vec.pyx":467
* cdef PetscScalar sval = 0
* CHKERR( VecDotEnd(self.vec, vec.vec, &sval) )
* return toScalar(sval) # <<<<<<<<<<<<<<
*
- * def tDot(self, Vec vec not None):
+ * def tDot(self, Vec vec):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toScalar(__pyx_v_sval); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 467, __pyx_L1_error)
@@ -93236,7 +99953,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_118dotEnd(struct PyPetscVecObjec
/* "PETSc/Vec.pyx":464
* CHKERR( VecDotBegin(self.vec, vec.vec, &sval) )
*
- * def dotEnd(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def dotEnd(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecDotEnd(self.vec, vec.vec, &sval) )
*/
@@ -93255,7 +99972,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_118dotEnd(struct PyPetscVecObjec
/* "PETSc/Vec.pyx":469
* return toScalar(sval)
*
- * def tDot(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def tDot(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecTDot(self.vec, vec.vec, &sval) )
*/
@@ -93276,6 +99993,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_121tDot(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93325,7 +100043,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_120tDot(struct PyPetscVecObject
/* "PETSc/Vec.pyx":470
*
- * def tDot(self, Vec vec not None):
+ * def tDot(self, Vec vec):
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
* CHKERR( VecTDot(self.vec, vec.vec, &sval) )
* return toScalar(sval)
@@ -93333,20 +100051,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_120tDot(struct PyPetscVecObject
__pyx_v_sval = 0.0;
/* "PETSc/Vec.pyx":471
- * def tDot(self, Vec vec not None):
+ * def tDot(self, Vec vec):
* cdef PetscScalar sval = 0
* CHKERR( VecTDot(self.vec, vec.vec, &sval) ) # <<<<<<<<<<<<<<
* return toScalar(sval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecTDot(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 471, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecTDot(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 471, __pyx_L1_error)
/* "PETSc/Vec.pyx":472
* cdef PetscScalar sval = 0
* CHKERR( VecTDot(self.vec, vec.vec, &sval) )
* return toScalar(sval) # <<<<<<<<<<<<<<
*
- * def tDotBegin(self, Vec vec not None):
+ * def tDotBegin(self, Vec vec):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toScalar(__pyx_v_sval); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 472, __pyx_L1_error)
@@ -93358,7 +100076,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_120tDot(struct PyPetscVecObject
/* "PETSc/Vec.pyx":469
* return toScalar(sval)
*
- * def tDot(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def tDot(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecTDot(self.vec, vec.vec, &sval) )
*/
@@ -93377,7 +100095,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_120tDot(struct PyPetscVecObject
/* "PETSc/Vec.pyx":474
* return toScalar(sval)
*
- * def tDotBegin(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def tDotBegin(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecTDotBegin(self.vec, vec.vec, &sval) )
*/
@@ -93398,6 +100116,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_123tDotBegin(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93446,7 +100165,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_122tDotBegin(struct PyPetscVecOb
/* "PETSc/Vec.pyx":475
*
- * def tDotBegin(self, Vec vec not None):
+ * def tDotBegin(self, Vec vec):
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
* CHKERR( VecTDotBegin(self.vec, vec.vec, &sval) )
*
@@ -93454,18 +100173,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_122tDotBegin(struct PyPetscVecOb
__pyx_v_sval = 0.0;
/* "PETSc/Vec.pyx":476
- * def tDotBegin(self, Vec vec not None):
+ * def tDotBegin(self, Vec vec):
* cdef PetscScalar sval = 0
* CHKERR( VecTDotBegin(self.vec, vec.vec, &sval) ) # <<<<<<<<<<<<<<
*
- * def tDotEnd(self, Vec vec not None):
+ * def tDotEnd(self, Vec vec):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecTDotBegin(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 476, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecTDotBegin(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 476, __pyx_L1_error)
/* "PETSc/Vec.pyx":474
* return toScalar(sval)
*
- * def tDotBegin(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def tDotBegin(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecTDotBegin(self.vec, vec.vec, &sval) )
*/
@@ -93485,7 +100204,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_122tDotBegin(struct PyPetscVecOb
/* "PETSc/Vec.pyx":478
* CHKERR( VecTDotBegin(self.vec, vec.vec, &sval) )
*
- * def tDotEnd(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def tDotEnd(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecTDotEnd(self.vec, vec.vec, &sval) )
*/
@@ -93506,6 +100225,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_125tDotEnd(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93555,7 +100275,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_124tDotEnd(struct PyPetscVecObje
/* "PETSc/Vec.pyx":479
*
- * def tDotEnd(self, Vec vec not None):
+ * def tDotEnd(self, Vec vec):
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
* CHKERR( VecTDotEnd(self.vec, vec.vec, &sval) )
* return toScalar(sval)
@@ -93563,13 +100283,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_124tDotEnd(struct PyPetscVecObje
__pyx_v_sval = 0.0;
/* "PETSc/Vec.pyx":480
- * def tDotEnd(self, Vec vec not None):
+ * def tDotEnd(self, Vec vec):
* cdef PetscScalar sval = 0
* CHKERR( VecTDotEnd(self.vec, vec.vec, &sval) ) # <<<<<<<<<<<<<<
* return toScalar(sval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecTDotEnd(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 480, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecTDotEnd(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 480, __pyx_L1_error)
/* "PETSc/Vec.pyx":481
* cdef PetscScalar sval = 0
@@ -93588,7 +100308,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_124tDotEnd(struct PyPetscVecObje
/* "PETSc/Vec.pyx":478
* CHKERR( VecTDotBegin(self.vec, vec.vec, &sval) )
*
- * def tDotEnd(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def tDotEnd(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecTDotEnd(self.vec, vec.vec, &sval) )
*/
@@ -93630,7 +100350,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_127mDot(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93639,6 +100361,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_127mDot(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -93651,6 +100374,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_127mDot(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -93743,7 +100467,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_129mDotBegin(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93752,6 +100478,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_129mDotBegin(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -93764,6 +100491,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_129mDotBegin(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -93856,7 +100584,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_131mDotEnd(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93865,6 +100595,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_131mDotEnd(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -93877,6 +100608,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_131mDotEnd(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -93969,7 +100701,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_133mtDot(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -93978,6 +100712,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_133mtDot(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -93990,6 +100725,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_133mtDot(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -94082,7 +100818,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_135mtDotBegin(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94091,6 +100829,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_135mtDotBegin(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -94103,6 +100842,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_135mtDotBegin(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -94195,7 +100935,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_137mtDotEnd(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94204,6 +100946,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_137mtDotEnd(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -94216,6 +100959,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_137mtDotEnd(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -94307,6 +101051,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_139norm(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94324,6 +101069,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_139norm(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94399,7 +101145,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_138norm(struct PyPetscVecObject
* if ntype != norm_1_2: return toReal(rval[0])
* else: return (toReal(rval[0]), toReal(rval[1]))
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNorm(__pyx_v_self->vec, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 512, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNorm(__pyx_v_self->vec, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 512, __pyx_L1_error)
/* "PETSc/Vec.pyx":513
* cdef PetscReal rval[2]
@@ -94490,6 +101236,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_141normBegin(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94507,6 +101254,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_141normBegin(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94569,7 +101317,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_140normBegin(struct PyPetscVecOb
*
* def normEnd(self, norm_type=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNormBegin(__pyx_v_self->vec, __pyx_v_ntype, __pyx_v_dummy)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 520, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNormBegin(__pyx_v_self->vec, __pyx_v_ntype, __pyx_v_dummy)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 520, __pyx_L1_error)
/* "PETSc/Vec.pyx":516
* else: return (toReal(rval[0]), toReal(rval[1]))
@@ -94616,6 +101364,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_143normEnd(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94633,6 +101382,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_143normEnd(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -94708,7 +101458,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_142normEnd(struct PyPetscVecObje
* if ntype != norm_1_2: return toReal(rval[0])
* else: return (toReal(rval[0]), toReal(rval[1]))
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNormEnd(__pyx_v_self->vec, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 527, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNormEnd(__pyx_v_self->vec, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 527, __pyx_L1_error)
/* "PETSc/Vec.pyx":528
* cdef PetscReal rval[2]
@@ -94823,7 +101573,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_144sum(struct PyPetscVecObject *
* return toScalar(sval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSum(__pyx_v_self->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 533, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSum(__pyx_v_self->vec, (&__pyx_v_sval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 533, __pyx_L1_error)
/* "PETSc/Vec.pyx":534
* cdef PetscScalar sval = 0
@@ -94919,7 +101669,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_146min(struct PyPetscVecObject *
* return (toInt(ival), toReal(rval))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMin(__pyx_v_self->vec, (&__pyx_v_ival), (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 539, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMin(__pyx_v_self->vec, (&__pyx_v_ival), (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 539, __pyx_L1_error)
/* "PETSc/Vec.pyx":540
* cdef PetscReal rval = 0
@@ -95027,7 +101777,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_148max(struct PyPetscVecObject *
* return (toInt(ival), toReal(rval))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMax(__pyx_v_self->vec, (&__pyx_v_ival), (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 545, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMax(__pyx_v_self->vec, (&__pyx_v_ival), (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 545, __pyx_L1_error)
/* "PETSc/Vec.pyx":546
* cdef PetscReal rval = 0
@@ -95123,7 +101873,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_150normalize(struct PyPetscVecOb
* return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNormalize(__pyx_v_self->vec, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 550, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNormalize(__pyx_v_self->vec, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 550, __pyx_L1_error)
/* "PETSc/Vec.pyx":551
* cdef PetscReal rval = 0
@@ -95196,7 +101946,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_152reciprocal(struct PyPetscVecO
*
* def exp(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecReciprocal(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 554, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecReciprocal(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 554, __pyx_L1_error)
/* "PETSc/Vec.pyx":553
* return toReal(rval)
@@ -95256,7 +102006,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_154exp(struct PyPetscVecObject *
*
* def log(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecExp(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 557, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecExp(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 557, __pyx_L1_error)
/* "PETSc/Vec.pyx":556
* CHKERR( VecReciprocal(self.vec) )
@@ -95316,7 +102066,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_156log(struct PyPetscVecObject *
*
* def sqrtabs(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecLog(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 560, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecLog(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 560, __pyx_L1_error)
/* "PETSc/Vec.pyx":559
* CHKERR( VecExp(self.vec) )
@@ -95376,7 +102126,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_158sqrtabs(struct PyPetscVecObje
*
* def abs(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSqrtAbs(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 563, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSqrtAbs(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 563, __pyx_L1_error)
/* "PETSc/Vec.pyx":562
* CHKERR( VecLog(self.vec) )
@@ -95436,7 +102186,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_160abs(struct PyPetscVecObject *
*
* def conjugate(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAbs(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 566, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAbs(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 566, __pyx_L1_error)
/* "PETSc/Vec.pyx":565
* CHKERR( VecSqrtAbs(self.vec) )
@@ -95496,7 +102246,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_162conjugate(struct PyPetscVecOb
*
* def setRandom(self, Random random=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecConjugate(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 569, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecConjugate(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 569, __pyx_L1_error)
/* "PETSc/Vec.pyx":568
* CHKERR( VecAbs(self.vec) )
@@ -95543,6 +102293,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_165setRandom(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -95560,6 +102311,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_165setRandom(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -95624,9 +102376,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_164setRandom(struct PyPetscVecOb
* if random is not None: rnd = random.rnd
* CHKERR( VecSetRandom(self.vec, rnd) ) # <<<<<<<<<<<<<<
*
- * def permute(self, IS order not None, invert=False):
+ * def permute(self, IS order, invert=False):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetRandom(__pyx_v_self->vec, __pyx_v_rnd)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 574, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetRandom(__pyx_v_self->vec, __pyx_v_rnd)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 574, __pyx_L1_error)
/* "PETSc/Vec.pyx":571
* CHKERR( VecConjugate(self.vec) )
@@ -95651,7 +102403,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_164setRandom(struct PyPetscVecOb
/* "PETSc/Vec.pyx":576
* CHKERR( VecSetRandom(self.vec, rnd) )
*
- * def permute(self, IS order not None, invert=False): # <<<<<<<<<<<<<<
+ * def permute(self, IS order, invert=False): # <<<<<<<<<<<<<<
* cdef PetscBool cinvert = PETSC_FALSE
* if invert: cinvert = PETSC_TRUE
*/
@@ -95674,7 +102426,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_167permute(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -95683,6 +102437,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_167permute(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_order)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_invert);
@@ -95695,6 +102450,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_167permute(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -95733,7 +102489,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_166permute(struct PyPetscVecObje
/* "PETSc/Vec.pyx":577
*
- * def permute(self, IS order not None, invert=False):
+ * def permute(self, IS order, invert=False):
* cdef PetscBool cinvert = PETSC_FALSE # <<<<<<<<<<<<<<
* if invert: cinvert = PETSC_TRUE
* CHKERR( VecPermute(self.vec, order.iset, cinvert) )
@@ -95741,7 +102497,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_166permute(struct PyPetscVecObje
__pyx_v_cinvert = PETSC_FALSE;
/* "PETSc/Vec.pyx":578
- * def permute(self, IS order not None, invert=False):
+ * def permute(self, IS order, invert=False):
* cdef PetscBool cinvert = PETSC_FALSE
* if invert: cinvert = PETSC_TRUE # <<<<<<<<<<<<<<
* CHKERR( VecPermute(self.vec, order.iset, cinvert) )
@@ -95759,12 +102515,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_166permute(struct PyPetscVecObje
*
* def zeroEntries(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPermute(__pyx_v_self->vec, __pyx_v_order->iset, __pyx_v_cinvert)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 579, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPermute(__pyx_v_self->vec, __pyx_v_order->iset, __pyx_v_cinvert)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 579, __pyx_L1_error)
/* "PETSc/Vec.pyx":576
* CHKERR( VecSetRandom(self.vec, rnd) )
*
- * def permute(self, IS order not None, invert=False): # <<<<<<<<<<<<<<
+ * def permute(self, IS order, invert=False): # <<<<<<<<<<<<<<
* cdef PetscBool cinvert = PETSC_FALSE
* if invert: cinvert = PETSC_TRUE
*/
@@ -95819,7 +102575,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_168zeroEntries(struct PyPetscVec
*
* def set(self, alpha):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecZeroEntries(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 582, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecZeroEntries(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 582, __pyx_L1_error)
/* "PETSc/Vec.pyx":581
* CHKERR( VecPermute(self.vec, order.iset, cinvert) )
@@ -95865,6 +102621,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_171set(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -95914,7 +102671,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_170set(struct PyPetscVecObject *
* CHKERR( VecSet(self.vec, sval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 585, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 585, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
/* "PETSc/Vec.pyx":586
@@ -95922,9 +102679,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_170set(struct PyPetscVecObject *
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecSet(self.vec, sval) ) # <<<<<<<<<<<<<<
*
- * def isset(self, IS idx not None, alpha):
+ * def isset(self, IS idx, alpha):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSet(__pyx_v_self->vec, __pyx_v_sval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 586, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSet(__pyx_v_self->vec, __pyx_v_sval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 586, __pyx_L1_error)
/* "PETSc/Vec.pyx":584
* CHKERR( VecZeroEntries(self.vec) )
@@ -95949,7 +102706,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_170set(struct PyPetscVecObject *
/* "PETSc/Vec.pyx":588
* CHKERR( VecSet(self.vec, sval) )
*
- * def isset(self, IS idx not None, alpha): # <<<<<<<<<<<<<<
+ * def isset(self, IS idx, alpha): # <<<<<<<<<<<<<<
* cdef PetscScalar aval = asScalar(alpha)
* CHKERR( VecISSet(self.vec, idx.iset, aval) )
*/
@@ -95971,7 +102728,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_173isset(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -95980,6 +102739,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_173isset(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_idx)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else {
@@ -96028,27 +102788,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_172isset(struct PyPetscVecObject
/* "PETSc/Vec.pyx":589
*
- * def isset(self, IS idx not None, alpha):
+ * def isset(self, IS idx, alpha):
* cdef PetscScalar aval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( VecISSet(self.vec, idx.iset, aval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 589, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 589, __pyx_L1_error)
__pyx_v_aval = __pyx_t_1;
/* "PETSc/Vec.pyx":590
- * def isset(self, IS idx not None, alpha):
+ * def isset(self, IS idx, alpha):
* cdef PetscScalar aval = asScalar(alpha)
* CHKERR( VecISSet(self.vec, idx.iset, aval) ) # <<<<<<<<<<<<<<
*
* def scale(self, alpha):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecISSet(__pyx_v_self->vec, __pyx_v_idx->iset, __pyx_v_aval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 590, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecISSet(__pyx_v_self->vec, __pyx_v_idx->iset, __pyx_v_aval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 590, __pyx_L1_error)
/* "PETSc/Vec.pyx":588
* CHKERR( VecSet(self.vec, sval) )
*
- * def isset(self, IS idx not None, alpha): # <<<<<<<<<<<<<<
+ * def isset(self, IS idx, alpha): # <<<<<<<<<<<<<<
* cdef PetscScalar aval = asScalar(alpha)
* CHKERR( VecISSet(self.vec, idx.iset, aval) )
*/
@@ -96089,6 +102849,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_175scale(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96138,7 +102899,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_174scale(struct PyPetscVecObject
* CHKERR( VecScale(self.vec, sval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 593, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 593, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
/* "PETSc/Vec.pyx":594
@@ -96148,7 +102909,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_174scale(struct PyPetscVecObject
*
* def shift(self, alpha):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_self->vec, __pyx_v_sval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 594, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScale(__pyx_v_self->vec, __pyx_v_sval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 594, __pyx_L1_error)
/* "PETSc/Vec.pyx":592
* CHKERR( VecISSet(self.vec, idx.iset, aval) )
@@ -96194,6 +102955,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_177shift(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96243,7 +103005,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_176shift(struct PyPetscVecObject
* CHKERR( VecShift(self.vec, sval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 597, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 597, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
/* "PETSc/Vec.pyx":598
@@ -96253,7 +103015,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_176shift(struct PyPetscVecObject
*
* def chop(self, tol):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecShift(__pyx_v_self->vec, __pyx_v_sval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 598, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecShift(__pyx_v_self->vec, __pyx_v_sval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 598, __pyx_L1_error)
/* "PETSc/Vec.pyx":596
* CHKERR( VecScale(self.vec, sval) )
@@ -96299,6 +103061,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_179chop(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96348,7 +103111,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_178chop(struct PyPetscVecObject
* CHKERR( VecChop(self.vec, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(30, 601, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(30, 601, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
/* "PETSc/Vec.pyx":602
@@ -96356,9 +103119,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_178chop(struct PyPetscVecObject
* cdef PetscReal rval = asReal(tol)
* CHKERR( VecChop(self.vec, rval) ) # <<<<<<<<<<<<<<
*
- * def swap(self, Vec vec not None):
+ * def swap(self, Vec vec):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecChop(__pyx_v_self->vec, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 602, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecChop(__pyx_v_self->vec, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 602, __pyx_L1_error)
/* "PETSc/Vec.pyx":600
* CHKERR( VecShift(self.vec, sval) )
@@ -96383,7 +103146,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_178chop(struct PyPetscVecObject
/* "PETSc/Vec.pyx":604
* CHKERR( VecChop(self.vec, rval) )
*
- * def swap(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def swap(self, Vec vec): # <<<<<<<<<<<<<<
* CHKERR( VecSwap(self.vec, vec.vec) )
*
*/
@@ -96404,6 +103167,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_181swap(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96451,17 +103215,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_180swap(struct PyPetscVecObject
/* "PETSc/Vec.pyx":605
*
- * def swap(self, Vec vec not None):
+ * def swap(self, Vec vec):
* CHKERR( VecSwap(self.vec, vec.vec) ) # <<<<<<<<<<<<<<
*
- * def axpy(self, alpha, Vec x not None):
+ * def axpy(self, alpha, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSwap(__pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 605, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSwap(__pyx_v_self->vec, __pyx_v_vec->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 605, __pyx_L1_error)
/* "PETSc/Vec.pyx":604
* CHKERR( VecChop(self.vec, rval) )
*
- * def swap(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def swap(self, Vec vec): # <<<<<<<<<<<<<<
* CHKERR( VecSwap(self.vec, vec.vec) )
*
*/
@@ -96481,7 +103245,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_180swap(struct PyPetscVecObject
/* "PETSc/Vec.pyx":607
* CHKERR( VecSwap(self.vec, vec.vec) )
*
- * def axpy(self, alpha, Vec x not None): # <<<<<<<<<<<<<<
+ * def axpy(self, alpha, Vec x): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecAXPY(self.vec, sval, x.vec) )
*/
@@ -96503,7 +103267,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_183axpy(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96512,6 +103278,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_183axpy(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
@@ -96560,27 +103327,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_182axpy(struct PyPetscVecObject
/* "PETSc/Vec.pyx":608
*
- * def axpy(self, alpha, Vec x not None):
+ * def axpy(self, alpha, Vec x):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( VecAXPY(self.vec, sval, x.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 608, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 608, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
/* "PETSc/Vec.pyx":609
- * def axpy(self, alpha, Vec x not None):
+ * def axpy(self, alpha, Vec x):
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecAXPY(self.vec, sval, x.vec) ) # <<<<<<<<<<<<<<
*
- * def isaxpy(self, IS idx not None, alpha, Vec x not None):
+ * def isaxpy(self, IS idx, alpha, Vec x):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, __pyx_v_sval, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 609, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPY(__pyx_v_self->vec, __pyx_v_sval, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 609, __pyx_L1_error)
/* "PETSc/Vec.pyx":607
* CHKERR( VecSwap(self.vec, vec.vec) )
*
- * def axpy(self, alpha, Vec x not None): # <<<<<<<<<<<<<<
+ * def axpy(self, alpha, Vec x): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecAXPY(self.vec, sval, x.vec) )
*/
@@ -96600,7 +103367,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_182axpy(struct PyPetscVecObject
/* "PETSc/Vec.pyx":611
* CHKERR( VecAXPY(self.vec, sval, x.vec) )
*
- * def isaxpy(self, IS idx not None, alpha, Vec x not None): # <<<<<<<<<<<<<<
+ * def isaxpy(self, IS idx, alpha, Vec x): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecISAXPY(self.vec, idx.iset, sval, x.vec) )
*/
@@ -96623,8 +103390,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_185isaxpy(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96633,11 +103403,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_185isaxpy(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_idx)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("isaxpy", 1, 3, 3, 1); __PYX_ERR(30, 611, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
@@ -96689,27 +103461,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_184isaxpy(struct PyPetscVecObjec
/* "PETSc/Vec.pyx":612
*
- * def isaxpy(self, IS idx not None, alpha, Vec x not None):
+ * def isaxpy(self, IS idx, alpha, Vec x):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( VecISAXPY(self.vec, idx.iset, sval, x.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 612, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 612, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
/* "PETSc/Vec.pyx":613
- * def isaxpy(self, IS idx not None, alpha, Vec x not None):
+ * def isaxpy(self, IS idx, alpha, Vec x):
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecISAXPY(self.vec, idx.iset, sval, x.vec) ) # <<<<<<<<<<<<<<
*
- * def aypx(self, alpha, Vec x not None):
+ * def aypx(self, alpha, Vec x):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecISAXPY(__pyx_v_self->vec, __pyx_v_idx->iset, __pyx_v_sval, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 613, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecISAXPY(__pyx_v_self->vec, __pyx_v_idx->iset, __pyx_v_sval, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 613, __pyx_L1_error)
/* "PETSc/Vec.pyx":611
* CHKERR( VecAXPY(self.vec, sval, x.vec) )
*
- * def isaxpy(self, IS idx not None, alpha, Vec x not None): # <<<<<<<<<<<<<<
+ * def isaxpy(self, IS idx, alpha, Vec x): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecISAXPY(self.vec, idx.iset, sval, x.vec) )
*/
@@ -96729,7 +103501,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_184isaxpy(struct PyPetscVecObjec
/* "PETSc/Vec.pyx":615
* CHKERR( VecISAXPY(self.vec, idx.iset, sval, x.vec) )
*
- * def aypx(self, alpha, Vec x not None): # <<<<<<<<<<<<<<
+ * def aypx(self, alpha, Vec x): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecAYPX(self.vec, sval, x.vec) )
*/
@@ -96751,7 +103523,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_187aypx(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96760,6 +103534,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_187aypx(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
@@ -96808,27 +103583,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_186aypx(struct PyPetscVecObject
/* "PETSc/Vec.pyx":616
*
- * def aypx(self, alpha, Vec x not None):
+ * def aypx(self, alpha, Vec x):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( VecAYPX(self.vec, sval, x.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 616, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 616, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
/* "PETSc/Vec.pyx":617
- * def aypx(self, alpha, Vec x not None):
+ * def aypx(self, alpha, Vec x):
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecAYPX(self.vec, sval, x.vec) ) # <<<<<<<<<<<<<<
*
- * def axpby(self, alpha, beta, Vec y not None):
+ * def axpby(self, alpha, beta, Vec y):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAYPX(__pyx_v_self->vec, __pyx_v_sval, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 617, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAYPX(__pyx_v_self->vec, __pyx_v_sval, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 617, __pyx_L1_error)
/* "PETSc/Vec.pyx":615
* CHKERR( VecISAXPY(self.vec, idx.iset, sval, x.vec) )
*
- * def aypx(self, alpha, Vec x not None): # <<<<<<<<<<<<<<
+ * def aypx(self, alpha, Vec x): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecAYPX(self.vec, sval, x.vec) )
*/
@@ -96848,7 +103623,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_186aypx(struct PyPetscVecObject
/* "PETSc/Vec.pyx":619
* CHKERR( VecAYPX(self.vec, sval, x.vec) )
*
- * def axpby(self, alpha, beta, Vec y not None): # <<<<<<<<<<<<<<
+ * def axpby(self, alpha, beta, Vec y): # <<<<<<<<<<<<<<
* cdef PetscScalar sval1 = asScalar(alpha)
* cdef PetscScalar sval2 = asScalar(beta)
*/
@@ -96871,8 +103646,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_189axpby(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -96881,11 +103659,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_189axpby(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_beta)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("axpby", 1, 3, 3, 1); __PYX_ERR(30, 619, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
@@ -96937,22 +103717,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_188axpby(struct PyPetscVecObject
/* "PETSc/Vec.pyx":620
*
- * def axpby(self, alpha, beta, Vec y not None):
+ * def axpby(self, alpha, beta, Vec y):
* cdef PetscScalar sval1 = asScalar(alpha) # <<<<<<<<<<<<<<
* cdef PetscScalar sval2 = asScalar(beta)
* CHKERR( VecAXPBY(self.vec, sval1, sval2, y.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 620, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 620, __pyx_L1_error)
__pyx_v_sval1 = __pyx_t_1;
/* "PETSc/Vec.pyx":621
- * def axpby(self, alpha, beta, Vec y not None):
+ * def axpby(self, alpha, beta, Vec y):
* cdef PetscScalar sval1 = asScalar(alpha)
* cdef PetscScalar sval2 = asScalar(beta) # <<<<<<<<<<<<<<
* CHKERR( VecAXPBY(self.vec, sval1, sval2, y.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_beta); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 621, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_beta); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 621, __pyx_L1_error)
__pyx_v_sval2 = __pyx_t_1;
/* "PETSc/Vec.pyx":622
@@ -96960,14 +103740,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_188axpby(struct PyPetscVecObject
* cdef PetscScalar sval2 = asScalar(beta)
* CHKERR( VecAXPBY(self.vec, sval1, sval2, y.vec) ) # <<<<<<<<<<<<<<
*
- * def waxpy(self, alpha, Vec x not None, Vec y not None):
+ * def waxpy(self, alpha, Vec x, Vec y):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPBY(__pyx_v_self->vec, __pyx_v_sval1, __pyx_v_sval2, __pyx_v_y->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 622, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAXPBY(__pyx_v_self->vec, __pyx_v_sval1, __pyx_v_sval2, __pyx_v_y->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 622, __pyx_L1_error)
/* "PETSc/Vec.pyx":619
* CHKERR( VecAYPX(self.vec, sval, x.vec) )
*
- * def axpby(self, alpha, beta, Vec y not None): # <<<<<<<<<<<<<<
+ * def axpby(self, alpha, beta, Vec y): # <<<<<<<<<<<<<<
* cdef PetscScalar sval1 = asScalar(alpha)
* cdef PetscScalar sval2 = asScalar(beta)
*/
@@ -96987,7 +103767,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_188axpby(struct PyPetscVecObject
/* "PETSc/Vec.pyx":624
* CHKERR( VecAXPBY(self.vec, sval1, sval2, y.vec) )
*
- * def waxpy(self, alpha, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def waxpy(self, alpha, Vec x, Vec y): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecWAXPY(self.vec, sval, x.vec, y.vec) )
*/
@@ -97010,8 +103790,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_191waxpy(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97020,11 +103803,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_191waxpy(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("waxpy", 1, 3, 3, 1); __PYX_ERR(30, 624, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
@@ -97076,27 +103861,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_190waxpy(struct PyPetscVecObject
/* "PETSc/Vec.pyx":625
*
- * def waxpy(self, alpha, Vec x not None, Vec y not None):
+ * def waxpy(self, alpha, Vec x, Vec y):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( VecWAXPY(self.vec, sval, x.vec, y.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 625, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 625, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
/* "PETSc/Vec.pyx":626
- * def waxpy(self, alpha, Vec x not None, Vec y not None):
+ * def waxpy(self, alpha, Vec x, Vec y):
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecWAXPY(self.vec, sval, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
* def maxpy(self, alphas, vecs):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecWAXPY(__pyx_v_self->vec, __pyx_v_sval, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 626, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecWAXPY(__pyx_v_self->vec, __pyx_v_sval, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 626, __pyx_L1_error)
/* "PETSc/Vec.pyx":624
* CHKERR( VecAXPBY(self.vec, sval1, sval2, y.vec) )
*
- * def waxpy(self, alpha, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def waxpy(self, alpha, Vec x, Vec y): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecWAXPY(self.vec, sval, x.vec, y.vec) )
*/
@@ -97138,7 +103923,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_193maxpy(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97147,6 +103934,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_193maxpy(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alphas)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vecs)) != 0)) kw_args--;
else {
@@ -97260,7 +104048,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_192maxpy(struct PyPetscVecObject
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_3 = PyObject_Length(__pyx_v_vecs); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 634, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_v_vecs); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(30, 634, __pyx_L1_error)
if (unlikely(!((__pyx_v_n == __pyx_t_3) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
__PYX_ERR(30, 634, __pyx_L1_error)
@@ -97307,9 +104095,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_192maxpy(struct PyPetscVecObject
* v[i] = (<Vec?>(vecs[i])).vec
* CHKERR( VecMAXPY(self.vec, n, a, v) ) # <<<<<<<<<<<<<<
*
- * def pointwiseMult(self, Vec x not None, Vec y not None):
+ * def pointwiseMult(self, Vec x, Vec y):
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMAXPY(__pyx_v_self->vec, __pyx_v_n, __pyx_v_a, __pyx_v_v)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(30, 638, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMAXPY(__pyx_v_self->vec, __pyx_v_n, __pyx_v_a, __pyx_v_v)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(30, 638, __pyx_L1_error)
/* "PETSc/Vec.pyx":628
* CHKERR( VecWAXPY(self.vec, sval, x.vec, y.vec) )
@@ -97338,7 +104126,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_192maxpy(struct PyPetscVecObject
/* "PETSc/Vec.pyx":640
* CHKERR( VecMAXPY(self.vec, n, a, v) )
*
- * def pointwiseMult(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMult(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMult(self.vec, x.vec, y.vec) )
*
*/
@@ -97360,7 +104148,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_195pointwiseMult(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97369,6 +104159,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_195pointwiseMult(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
@@ -97416,17 +104207,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_194pointwiseMult(struct PyPetscV
/* "PETSc/Vec.pyx":641
*
- * def pointwiseMult(self, Vec x not None, Vec y not None):
+ * def pointwiseMult(self, Vec x, Vec y):
* CHKERR( VecPointwiseMult(self.vec, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def pointwiseDivide(self, Vec x not None, Vec y not None):
+ * def pointwiseDivide(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMult(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 641, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMult(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 641, __pyx_L1_error)
/* "PETSc/Vec.pyx":640
* CHKERR( VecMAXPY(self.vec, n, a, v) )
*
- * def pointwiseMult(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMult(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMult(self.vec, x.vec, y.vec) )
*
*/
@@ -97446,7 +104237,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_194pointwiseMult(struct PyPetscV
/* "PETSc/Vec.pyx":643
* CHKERR( VecPointwiseMult(self.vec, x.vec, y.vec) )
*
- * def pointwiseDivide(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseDivide(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseDivide(self.vec, x.vec, y.vec) )
*
*/
@@ -97468,7 +104259,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_197pointwiseDivide(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97477,6 +104270,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_197pointwiseDivide(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
@@ -97524,17 +104318,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_196pointwiseDivide(struct PyPets
/* "PETSc/Vec.pyx":644
*
- * def pointwiseDivide(self, Vec x not None, Vec y not None):
+ * def pointwiseDivide(self, Vec x, Vec y):
* CHKERR( VecPointwiseDivide(self.vec, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def pointwiseMin(self, Vec x not None, Vec y not None):
+ * def pointwiseMin(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseDivide(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 644, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseDivide(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 644, __pyx_L1_error)
/* "PETSc/Vec.pyx":643
* CHKERR( VecPointwiseMult(self.vec, x.vec, y.vec) )
*
- * def pointwiseDivide(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseDivide(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseDivide(self.vec, x.vec, y.vec) )
*
*/
@@ -97554,7 +104348,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_196pointwiseDivide(struct PyPets
/* "PETSc/Vec.pyx":646
* CHKERR( VecPointwiseDivide(self.vec, x.vec, y.vec) )
*
- * def pointwiseMin(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMin(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMin(self.vec, x.vec, y.vec) )
*
*/
@@ -97576,7 +104370,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_199pointwiseMin(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97585,6 +104381,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_199pointwiseMin(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
@@ -97632,17 +104429,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_198pointwiseMin(struct PyPetscVe
/* "PETSc/Vec.pyx":647
*
- * def pointwiseMin(self, Vec x not None, Vec y not None):
+ * def pointwiseMin(self, Vec x, Vec y):
* CHKERR( VecPointwiseMin(self.vec, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def pointwiseMax(self, Vec x not None, Vec y not None):
+ * def pointwiseMax(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMin(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 647, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMin(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 647, __pyx_L1_error)
/* "PETSc/Vec.pyx":646
* CHKERR( VecPointwiseDivide(self.vec, x.vec, y.vec) )
*
- * def pointwiseMin(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMin(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMin(self.vec, x.vec, y.vec) )
*
*/
@@ -97662,7 +104459,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_198pointwiseMin(struct PyPetscVe
/* "PETSc/Vec.pyx":649
* CHKERR( VecPointwiseMin(self.vec, x.vec, y.vec) )
*
- * def pointwiseMax(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMax(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMax(self.vec, x.vec, y.vec) )
*
*/
@@ -97684,7 +104481,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_201pointwiseMax(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97693,6 +104492,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_201pointwiseMax(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
@@ -97740,17 +104540,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_200pointwiseMax(struct PyPetscVe
/* "PETSc/Vec.pyx":650
*
- * def pointwiseMax(self, Vec x not None, Vec y not None):
+ * def pointwiseMax(self, Vec x, Vec y):
* CHKERR( VecPointwiseMax(self.vec, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def pointwiseMaxAbs(self, Vec x not None, Vec y not None):
+ * def pointwiseMaxAbs(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMax(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 650, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMax(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 650, __pyx_L1_error)
/* "PETSc/Vec.pyx":649
* CHKERR( VecPointwiseMin(self.vec, x.vec, y.vec) )
*
- * def pointwiseMax(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMax(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMax(self.vec, x.vec, y.vec) )
*
*/
@@ -97770,7 +104570,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_200pointwiseMax(struct PyPetscVe
/* "PETSc/Vec.pyx":652
* CHKERR( VecPointwiseMax(self.vec, x.vec, y.vec) )
*
- * def pointwiseMaxAbs(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMaxAbs(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMaxAbs(self.vec, x.vec, y.vec) )
*
*/
@@ -97792,7 +104592,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_203pointwiseMaxAbs(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97801,6 +104603,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_203pointwiseMaxAbs(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
@@ -97848,17 +104651,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_202pointwiseMaxAbs(struct PyPets
/* "PETSc/Vec.pyx":653
*
- * def pointwiseMaxAbs(self, Vec x not None, Vec y not None):
+ * def pointwiseMaxAbs(self, Vec x, Vec y):
* CHKERR( VecPointwiseMaxAbs(self.vec, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def maxPointwiseDivide(self, Vec vec not None):
+ * def maxPointwiseDivide(self, Vec vec):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMaxAbs(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 653, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecPointwiseMaxAbs(__pyx_v_self->vec, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 653, __pyx_L1_error)
/* "PETSc/Vec.pyx":652
* CHKERR( VecPointwiseMax(self.vec, x.vec, y.vec) )
*
- * def pointwiseMaxAbs(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def pointwiseMaxAbs(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( VecPointwiseMaxAbs(self.vec, x.vec, y.vec) )
*
*/
@@ -97878,7 +104681,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_202pointwiseMaxAbs(struct PyPets
/* "PETSc/Vec.pyx":655
* CHKERR( VecPointwiseMaxAbs(self.vec, x.vec, y.vec) )
*
- * def maxPointwiseDivide(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def maxPointwiseDivide(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscReal rval = 0
* CHKERR( VecMaxPointwiseDivide(self.vec, vec.vec, &rval) )
*/
@@ -97899,6 +104702,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_205maxPointwiseDivide(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -97948,7 +104752,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_204maxPointwiseDivide(struct PyP
/* "PETSc/Vec.pyx":656
*
- * def maxPointwiseDivide(self, Vec vec not None):
+ * def maxPointwiseDivide(self, Vec vec):
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
* CHKERR( VecMaxPointwiseDivide(self.vec, vec.vec, &rval) )
* return toReal(rval)
@@ -97956,13 +104760,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_204maxPointwiseDivide(struct PyP
__pyx_v_rval = 0.0;
/* "PETSc/Vec.pyx":657
- * def maxPointwiseDivide(self, Vec vec not None):
+ * def maxPointwiseDivide(self, Vec vec):
* cdef PetscReal rval = 0
* CHKERR( VecMaxPointwiseDivide(self.vec, vec.vec, &rval) ) # <<<<<<<<<<<<<<
* return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMaxPointwiseDivide(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 657, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMaxPointwiseDivide(__pyx_v_self->vec, __pyx_v_vec->vec, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 657, __pyx_L1_error)
/* "PETSc/Vec.pyx":658
* cdef PetscReal rval = 0
@@ -97981,7 +104785,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_204maxPointwiseDivide(struct PyP
/* "PETSc/Vec.pyx":655
* CHKERR( VecPointwiseMaxAbs(self.vec, x.vec, y.vec) )
*
- * def maxPointwiseDivide(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def maxPointwiseDivide(self, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscReal rval = 0
* CHKERR( VecMaxPointwiseDivide(self.vec, vec.vec, &rval) )
*/
@@ -98021,6 +104825,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_207getValue(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98072,7 +104877,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_206getValue(struct PyPetscVecObj
* cdef PetscScalar sval = 0
* CHKERR( VecGetValues(self.vec, 1, &ival, &sval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 661, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 661, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/Vec.pyx":662
@@ -98091,7 +104896,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_206getValue(struct PyPetscVecObj
* return toScalar(sval)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetValues(__pyx_v_self->vec, 1, (&__pyx_v_ival), (&__pyx_v_sval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 663, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetValues(__pyx_v_self->vec, 1, (&__pyx_v_ival), (&__pyx_v_sval))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 663, __pyx_L1_error)
/* "PETSc/Vec.pyx":664
* cdef PetscScalar sval = 0
@@ -98152,7 +104957,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_209getValues(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98161,6 +104968,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_209getValues(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values);
@@ -98173,6 +104981,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_209getValues(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -98262,8 +105071,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_211setValue(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98272,11 +105084,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_211setValue(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_index)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setValue", 0, 2, 3, 1); __PYX_ERR(30, 669, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -98289,6 +105103,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_211setValue(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -98333,7 +105148,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_210setValue(struct PyPetscVecObj
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 670, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 670, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/Vec.pyx":671
@@ -98343,7 +105158,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_210setValue(struct PyPetscVecObj
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( VecSetValues(self.vec, 1, &ival, &sval, caddv) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 671, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(__pyx_t_2 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 671, __pyx_L1_error)
__pyx_v_sval = __pyx_t_2;
/* "PETSc/Vec.pyx":672
@@ -98353,7 +105168,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_210setValue(struct PyPetscVecObj
* CHKERR( VecSetValues(self.vec, 1, &ival, &sval, caddv) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)-1L))) __PYX_ERR(30, 672, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(30, 672, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_3;
/* "PETSc/Vec.pyx":673
@@ -98363,7 +105178,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_210setValue(struct PyPetscVecObj
*
* def setValues(self, indices, values, addv=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetValues(__pyx_v_self->vec, 1, (&__pyx_v_ival), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 673, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetValues(__pyx_v_self->vec, 1, (&__pyx_v_ival), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 673, __pyx_L1_error)
/* "PETSc/Vec.pyx":669
* return vecgetvalues(self.vec, indices, values)
@@ -98412,8 +105227,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_213setValues(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98422,11 +105240,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_213setValues(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setValues", 0, 2, 3, 1); __PYX_ERR(30, 675, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -98439,6 +105259,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_213setValues(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -98477,7 +105298,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_212setValues(struct PyPetscVecOb
*
* def setValuesBlocked(self, indices, values, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 676, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 676, __pyx_L1_error)
/* "PETSc/Vec.pyx":675
* CHKERR( VecSetValues(self.vec, 1, &ival, &sval, caddv) )
@@ -98526,8 +105347,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_215setValuesBlocked(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98536,11 +105360,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_215setValuesBlocked(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setValuesBlocked", 0, 2, 3, 1); __PYX_ERR(30, 678, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -98553,6 +105379,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_215setValuesBlocked(PyObject *__
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -98589,9 +105416,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_214setValuesBlocked(struct PyPet
* def setValuesBlocked(self, indices, values, addv=None):
* vecsetvalues(self.vec, indices, values, addv, 1, 0) # <<<<<<<<<<<<<<
*
- * def setLGMap(self, LGMap lgmap not None):
+ * def setLGMap(self, LGMap lgmap):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 679, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 679, __pyx_L1_error)
/* "PETSc/Vec.pyx":678
* vecsetvalues(self.vec, indices, values, addv, 0, 0)
@@ -98616,7 +105443,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_214setValuesBlocked(struct PyPet
/* "PETSc/Vec.pyx":681
* vecsetvalues(self.vec, indices, values, addv, 1, 0)
*
- * def setLGMap(self, LGMap lgmap not None): # <<<<<<<<<<<<<<
+ * def setLGMap(self, LGMap lgmap): # <<<<<<<<<<<<<<
* CHKERR( VecSetLocalToGlobalMapping(self.vec, lgmap.lgm) )
*
*/
@@ -98637,6 +105464,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_217setLGMap(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98684,17 +105512,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_216setLGMap(struct PyPetscVecObj
/* "PETSc/Vec.pyx":682
*
- * def setLGMap(self, LGMap lgmap not None):
+ * def setLGMap(self, LGMap lgmap):
* CHKERR( VecSetLocalToGlobalMapping(self.vec, lgmap.lgm) ) # <<<<<<<<<<<<<<
*
- * def setValueLocal(self, index, value, addv=None):
+ * def getLGMap(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetLocalToGlobalMapping(__pyx_v_self->vec, __pyx_v_lgmap->lgm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 682, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetLocalToGlobalMapping(__pyx_v_self->vec, __pyx_v_lgmap->lgm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 682, __pyx_L1_error)
/* "PETSc/Vec.pyx":681
* vecsetvalues(self.vec, indices, values, addv, 1, 0)
*
- * def setLGMap(self, LGMap lgmap not None): # <<<<<<<<<<<<<<
+ * def setLGMap(self, LGMap lgmap): # <<<<<<<<<<<<<<
* CHKERR( VecSetLocalToGlobalMapping(self.vec, lgmap.lgm) )
*
*/
@@ -98714,15 +105542,110 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_216setLGMap(struct PyPetscVecObj
/* "PETSc/Vec.pyx":684
* CHKERR( VecSetLocalToGlobalMapping(self.vec, lgmap.lgm) )
*
+ * def getLGMap(self): # <<<<<<<<<<<<<<
+ * cdef LGMap cmap = LGMap()
+ * CHKERR( VecGetLocalToGlobalMapping(self.vec, &cmap.lgm) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_218getLGMap[] = "Vec.getLGMap(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getLGMap (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getLGMap", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getLGMap", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_218getLGMap(((struct PyPetscVecObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_218getLGMap(struct PyPetscVecObject *__pyx_v_self) {
+ struct PyPetscLGMapObject *__pyx_v_cmap = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getLGMap", 0);
+
+ /* "PETSc/Vec.pyx":685
+ *
+ * def getLGMap(self):
+ * cdef LGMap cmap = LGMap() # <<<<<<<<<<<<<<
+ * CHKERR( VecGetLocalToGlobalMapping(self.vec, &cmap.lgm) )
+ * PetscINCREF(cmap.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 685, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_cmap = ((struct PyPetscLGMapObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Vec.pyx":686
+ * def getLGMap(self):
+ * cdef LGMap cmap = LGMap()
+ * CHKERR( VecGetLocalToGlobalMapping(self.vec, &cmap.lgm) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(cmap.obj)
+ * return cmap
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetLocalToGlobalMapping(__pyx_v_self->vec, (&__pyx_v_cmap->lgm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 686, __pyx_L1_error)
+
+ /* "PETSc/Vec.pyx":687
+ * cdef LGMap cmap = LGMap()
+ * CHKERR( VecGetLocalToGlobalMapping(self.vec, &cmap.lgm) )
+ * PetscINCREF(cmap.obj) # <<<<<<<<<<<<<<
+ * return cmap
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_cmap->__pyx_base.obj);
+
+ /* "PETSc/Vec.pyx":688
+ * CHKERR( VecGetLocalToGlobalMapping(self.vec, &cmap.lgm) )
+ * PetscINCREF(cmap.obj)
+ * return cmap # <<<<<<<<<<<<<<
+ *
+ * def setValueLocal(self, index, value, addv=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_cmap));
+ __pyx_r = ((PyObject *)__pyx_v_cmap);
+ goto __pyx_L0;
+
+ /* "PETSc/Vec.pyx":684
+ * CHKERR( VecSetLocalToGlobalMapping(self.vec, lgmap.lgm) )
+ *
+ * def getLGMap(self): # <<<<<<<<<<<<<<
+ * cdef LGMap cmap = LGMap()
+ * CHKERR( VecGetLocalToGlobalMapping(self.vec, &cmap.lgm) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.Vec.getLGMap", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_cmap);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Vec.pyx":690
+ * return cmap
+ *
* def setValueLocal(self, index, value, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(index)
* cdef PetscScalar sval = asScalar(value)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_218setValueLocal[] = "Vec.setValueLocal(self, index, value, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_220setValueLocal[] = "Vec.setValueLocal(self, index, value, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_index = 0;
PyObject *__pyx_v_value = 0;
PyObject *__pyx_v_addv = 0;
@@ -98738,8 +105661,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219setValueLocal(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98748,11 +105674,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219setValueLocal(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_index)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 2, 3, 1); __PYX_ERR(30, 684, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 2, 3, 1); __PYX_ERR(30, 690, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -98760,11 +105688,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219setValueLocal(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueLocal") < 0)) __PYX_ERR(30, 684, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueLocal") < 0)) __PYX_ERR(30, 690, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -98777,20 +105706,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_219setValueLocal(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 684, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 690, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.setValueLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_218setValueLocal(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_index, __pyx_v_value, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_220setValueLocal(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_index, __pyx_v_value, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_218setValueLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_220setValueLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
PetscInt __pyx_v_ival;
PetscScalar __pyx_v_sval;
InsertMode __pyx_v_caddv;
@@ -98802,47 +105731,47 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_218setValueLocal(struct PyPetscV
int __pyx_t_4;
__Pyx_RefNannySetupContext("setValueLocal", 0);
- /* "PETSc/Vec.pyx":685
+ /* "PETSc/Vec.pyx":691
*
* def setValueLocal(self, index, value, addv=None):
* cdef PetscInt ival = asInt(index) # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 685, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 691, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Vec.pyx":686
+ /* "PETSc/Vec.pyx":692
* def setValueLocal(self, index, value, addv=None):
* cdef PetscInt ival = asInt(index)
* cdef PetscScalar sval = asScalar(value) # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( VecSetValuesLocal(self.vec, 1, &ival, &sval, caddv) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 686, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(__pyx_t_2 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 692, __pyx_L1_error)
__pyx_v_sval = __pyx_t_2;
- /* "PETSc/Vec.pyx":687
+ /* "PETSc/Vec.pyx":693
* cdef PetscInt ival = asInt(index)
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( VecSetValuesLocal(self.vec, 1, &ival, &sval, caddv) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)-1L))) __PYX_ERR(30, 687, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(30, 693, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_3;
- /* "PETSc/Vec.pyx":688
+ /* "PETSc/Vec.pyx":694
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( VecSetValuesLocal(self.vec, 1, &ival, &sval, caddv) ) # <<<<<<<<<<<<<<
*
* def setValuesLocal(self, indices, values, addv=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetValuesLocal(__pyx_v_self->vec, 1, (&__pyx_v_ival), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 688, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSetValuesLocal(__pyx_v_self->vec, 1, (&__pyx_v_ival), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 694, __pyx_L1_error)
- /* "PETSc/Vec.pyx":684
- * CHKERR( VecSetLocalToGlobalMapping(self.vec, lgmap.lgm) )
+ /* "PETSc/Vec.pyx":690
+ * return cmap
*
* def setValueLocal(self, index, value, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(index)
@@ -98861,7 +105790,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_218setValueLocal(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Vec.pyx":690
+/* "PETSc/Vec.pyx":696
* CHKERR( VecSetValuesLocal(self.vec, 1, &ival, &sval, caddv) )
*
* def setValuesLocal(self, indices, values, addv=None): # <<<<<<<<<<<<<<
@@ -98870,9 +105799,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_218setValueLocal(struct PyPetscV
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_220setValuesLocal[] = "Vec.setValuesLocal(self, indices, values, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_222setValuesLocal[] = "Vec.setValuesLocal(self, indices, values, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_indices = 0;
PyObject *__pyx_v_values = 0;
PyObject *__pyx_v_addv = 0;
@@ -98888,8 +105817,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValuesLocal(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -98898,11 +105830,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValuesLocal(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 2, 3, 1); __PYX_ERR(30, 690, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 2, 3, 1); __PYX_ERR(30, 696, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -98910,11 +105844,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValuesLocal(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocal") < 0)) __PYX_ERR(30, 690, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocal") < 0)) __PYX_ERR(30, 696, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -98927,35 +105862,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_221setValuesLocal(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 690, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 696, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.setValuesLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_220setValuesLocal(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_values, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesLocal(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_values, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_220setValuesLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesLocal", 0);
- /* "PETSc/Vec.pyx":691
+ /* "PETSc/Vec.pyx":697
*
* def setValuesLocal(self, indices, values, addv=None):
* vecsetvalues(self.vec, indices, values, addv, 0, 1) # <<<<<<<<<<<<<<
*
* def setValuesBlockedLocal(self, indices, values, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 691, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 697, __pyx_L1_error)
- /* "PETSc/Vec.pyx":690
+ /* "PETSc/Vec.pyx":696
* CHKERR( VecSetValuesLocal(self.vec, 1, &ival, &sval, caddv) )
*
* def setValuesLocal(self, indices, values, addv=None): # <<<<<<<<<<<<<<
@@ -98975,7 +105910,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_220setValuesLocal(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Vec.pyx":693
+/* "PETSc/Vec.pyx":699
* vecsetvalues(self.vec, indices, values, addv, 0, 1)
*
* def setValuesBlockedLocal(self, indices, values, addv=None): # <<<<<<<<<<<<<<
@@ -98984,9 +105919,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_220setValuesLocal(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_222setValuesBlockedLocal[] = "Vec.setValuesBlockedLocal(self, indices, values, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_225setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_224setValuesBlockedLocal[] = "Vec.setValuesBlockedLocal(self, indices, values, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_225setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_indices = 0;
PyObject *__pyx_v_values = 0;
PyObject *__pyx_v_addv = 0;
@@ -99002,8 +105937,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesBlockedLocal(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -99012,11 +105950,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesBlockedLocal(PyObjec
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 2, 3, 1); __PYX_ERR(30, 693, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 2, 3, 1); __PYX_ERR(30, 699, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -99024,11 +105964,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesBlockedLocal(PyObjec
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocal") < 0)) __PYX_ERR(30, 693, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocal") < 0)) __PYX_ERR(30, 699, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -99041,35 +105982,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesBlockedLocal(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 693, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 699, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.setValuesBlockedLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesBlockedLocal(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_values, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_224setValuesBlockedLocal(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_indices, __pyx_v_values, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesBlockedLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_224setValuesBlockedLocal(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_indices, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedLocal", 0);
- /* "PETSc/Vec.pyx":694
+ /* "PETSc/Vec.pyx":700
*
* def setValuesBlockedLocal(self, indices, values, addv=None):
* vecsetvalues(self.vec, indices, values, addv, 1, 1) # <<<<<<<<<<<<<<
*
* def assemblyBegin(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 694, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_vecsetvalues(__pyx_v_self->vec, __pyx_v_indices, __pyx_v_values, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 700, __pyx_L1_error)
- /* "PETSc/Vec.pyx":693
+ /* "PETSc/Vec.pyx":699
* vecsetvalues(self.vec, indices, values, addv, 0, 1)
*
* def setValuesBlockedLocal(self, indices, values, addv=None): # <<<<<<<<<<<<<<
@@ -99089,7 +106030,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesBlockedLocal(struct
return __pyx_r;
}
-/* "PETSc/Vec.pyx":696
+/* "PETSc/Vec.pyx":702
* vecsetvalues(self.vec, indices, values, addv, 1, 1)
*
* def assemblyBegin(self): # <<<<<<<<<<<<<<
@@ -99098,38 +106039,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_222setValuesBlockedLocal(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_225assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_224assemblyBegin[] = "Vec.assemblyBegin(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_225assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_227assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_226assemblyBegin[] = "Vec.assemblyBegin(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_227assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("assemblyBegin (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("assemblyBegin", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "assemblyBegin", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_224assemblyBegin(((struct PyPetscVecObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyBegin(((struct PyPetscVecObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_224assemblyBegin(struct PyPetscVecObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyBegin(struct PyPetscVecObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("assemblyBegin", 0);
- /* "PETSc/Vec.pyx":697
+ /* "PETSc/Vec.pyx":703
*
* def assemblyBegin(self):
* CHKERR( VecAssemblyBegin(self.vec) ) # <<<<<<<<<<<<<<
*
* def assemblyEnd(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyBegin(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 697, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyBegin(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 703, __pyx_L1_error)
- /* "PETSc/Vec.pyx":696
+ /* "PETSc/Vec.pyx":702
* vecsetvalues(self.vec, indices, values, addv, 1, 1)
*
* def assemblyBegin(self): # <<<<<<<<<<<<<<
@@ -99149,7 +106090,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_224assemblyBegin(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Vec.pyx":699
+/* "PETSc/Vec.pyx":705
* CHKERR( VecAssemblyBegin(self.vec) )
*
* def assemblyEnd(self): # <<<<<<<<<<<<<<
@@ -99158,38 +106099,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_224assemblyBegin(struct PyPetscV
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_227assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_226assemblyEnd[] = "Vec.assemblyEnd(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_227assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_229assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_228assemblyEnd[] = "Vec.assemblyEnd(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_229assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("assemblyEnd (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("assemblyEnd", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "assemblyEnd", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyEnd(((struct PyPetscVecObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_228assemblyEnd(((struct PyPetscVecObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyEnd(struct PyPetscVecObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_228assemblyEnd(struct PyPetscVecObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("assemblyEnd", 0);
- /* "PETSc/Vec.pyx":700
+ /* "PETSc/Vec.pyx":706
*
* def assemblyEnd(self):
* CHKERR( VecAssemblyEnd(self.vec) ) # <<<<<<<<<<<<<<
*
* def assemble(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyEnd(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 700, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyEnd(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 706, __pyx_L1_error)
- /* "PETSc/Vec.pyx":699
+ /* "PETSc/Vec.pyx":705
* CHKERR( VecAssemblyBegin(self.vec) )
*
* def assemblyEnd(self): # <<<<<<<<<<<<<<
@@ -99209,7 +106150,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyEnd(struct PyPetscVec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":702
+/* "PETSc/Vec.pyx":708
* CHKERR( VecAssemblyEnd(self.vec) )
*
* def assemble(self): # <<<<<<<<<<<<<<
@@ -99218,47 +106159,47 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_226assemblyEnd(struct PyPetscVec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_229assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_228assemble[] = "Vec.assemble(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_229assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_231assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_230assemble[] = "Vec.assemble(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_231assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("assemble (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("assemble", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "assemble", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_228assemble(((struct PyPetscVecObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_230assemble(((struct PyPetscVecObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_228assemble(struct PyPetscVecObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_230assemble(struct PyPetscVecObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("assemble", 0);
- /* "PETSc/Vec.pyx":703
+ /* "PETSc/Vec.pyx":709
*
* def assemble(self):
* CHKERR( VecAssemblyBegin(self.vec) ) # <<<<<<<<<<<<<<
* CHKERR( VecAssemblyEnd(self.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyBegin(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 703, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyBegin(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 709, __pyx_L1_error)
- /* "PETSc/Vec.pyx":704
+ /* "PETSc/Vec.pyx":710
* def assemble(self):
* CHKERR( VecAssemblyBegin(self.vec) )
* CHKERR( VecAssemblyEnd(self.vec) ) # <<<<<<<<<<<<<<
*
* # --- methods for strided vectors ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyEnd(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 704, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecAssemblyEnd(__pyx_v_self->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 710, __pyx_L1_error)
- /* "PETSc/Vec.pyx":702
+ /* "PETSc/Vec.pyx":708
* CHKERR( VecAssemblyEnd(self.vec) )
*
* def assemble(self): # <<<<<<<<<<<<<<
@@ -99278,7 +106219,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_228assemble(struct PyPetscVecObj
return __pyx_r;
}
-/* "PETSc/Vec.pyx":708
+/* "PETSc/Vec.pyx":714
* # --- methods for strided vectors ---
*
* def strideScale(self, field, alpha): # <<<<<<<<<<<<<<
@@ -99287,9 +106228,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_228assemble(struct PyPetscVecObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_231strideScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_230strideScale[] = "Vec.strideScale(self, field, alpha)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_231strideScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_233strideScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_232strideScale[] = "Vec.strideScale(self, field, alpha)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_233strideScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_field = 0;
PyObject *__pyx_v_alpha = 0;
PyObject *__pyx_r = 0;
@@ -99303,7 +106244,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_231strideScale(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -99312,14 +106255,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_231strideScale(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("strideScale", 1, 2, 2, 1); __PYX_ERR(30, 708, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideScale", 1, 2, 2, 1); __PYX_ERR(30, 714, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideScale") < 0)) __PYX_ERR(30, 708, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideScale") < 0)) __PYX_ERR(30, 714, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -99332,20 +106276,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_231strideScale(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("strideScale", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 708, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideScale", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 714, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.strideScale", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_230strideScale(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_alpha);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_232strideScale(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_alpha);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_230strideScale(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_alpha) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideScale(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_alpha) {
PetscInt __pyx_v_ival;
PetscScalar __pyx_v_sval;
PyObject *__pyx_r = NULL;
@@ -99355,36 +106299,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_230strideScale(struct PyPetscVec
int __pyx_t_3;
__Pyx_RefNannySetupContext("strideScale", 0);
- /* "PETSc/Vec.pyx":709
+ /* "PETSc/Vec.pyx":715
*
* def strideScale(self, field, alpha):
* cdef PetscInt ival = asInt(field) # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecStrideScale(self.vec, ival, sval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 709, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 715, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Vec.pyx":710
+ /* "PETSc/Vec.pyx":716
* def strideScale(self, field, alpha):
* cdef PetscInt ival = asInt(field)
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( VecStrideScale(self.vec, ival, sval) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 710, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_2 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(30, 716, __pyx_L1_error)
__pyx_v_sval = __pyx_t_2;
- /* "PETSc/Vec.pyx":711
+ /* "PETSc/Vec.pyx":717
* cdef PetscInt ival = asInt(field)
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( VecStrideScale(self.vec, ival, sval) ) # <<<<<<<<<<<<<<
*
* def strideSum(self, field):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideScale(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_sval)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 711, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideScale(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_sval)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 717, __pyx_L1_error)
- /* "PETSc/Vec.pyx":708
+ /* "PETSc/Vec.pyx":714
* # --- methods for strided vectors ---
*
* def strideScale(self, field, alpha): # <<<<<<<<<<<<<<
@@ -99404,7 +106348,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_230strideScale(struct PyPetscVec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":713
+/* "PETSc/Vec.pyx":719
* CHKERR( VecStrideScale(self.vec, ival, sval) )
*
* def strideSum(self, field): # <<<<<<<<<<<<<<
@@ -99413,9 +106357,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_230strideScale(struct PyPetscVec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_233strideSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_232strideSum[] = "Vec.strideSum(self, field)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_233strideSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_235strideSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_234strideSum[] = "Vec.strideSum(self, field)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_235strideSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_field = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -99428,6 +106372,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_233strideSum(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -99438,7 +106383,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_233strideSum(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideSum") < 0)) __PYX_ERR(30, 713, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideSum") < 0)) __PYX_ERR(30, 719, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -99449,20 +106394,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_233strideSum(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("strideSum", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 713, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideSum", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 719, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.strideSum", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_234strideSum(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideSum(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field) {
PetscInt __pyx_v_ival;
PetscScalar __pyx_v_sval;
PyObject *__pyx_r = NULL;
@@ -99472,17 +106417,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(struct PyPetscVecOb
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("strideSum", 0);
- /* "PETSc/Vec.pyx":714
+ /* "PETSc/Vec.pyx":720
*
* def strideSum(self, field):
* cdef PetscInt ival = asInt(field) # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( VecStrideSum(self.vec, ival, &sval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 714, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 720, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Vec.pyx":715
+ /* "PETSc/Vec.pyx":721
* def strideSum(self, field):
* cdef PetscInt ival = asInt(field)
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
@@ -99491,16 +106436,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(struct PyPetscVecOb
*/
__pyx_v_sval = 0.0;
- /* "PETSc/Vec.pyx":716
+ /* "PETSc/Vec.pyx":722
* cdef PetscInt ival = asInt(field)
* cdef PetscScalar sval = 0
* CHKERR( VecStrideSum(self.vec, ival, &sval) ) # <<<<<<<<<<<<<<
* return toScalar(sval)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideSum(__pyx_v_self->vec, __pyx_v_ival, (&__pyx_v_sval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 716, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideSum(__pyx_v_self->vec, __pyx_v_ival, (&__pyx_v_sval))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 722, __pyx_L1_error)
- /* "PETSc/Vec.pyx":717
+ /* "PETSc/Vec.pyx":723
* cdef PetscScalar sval = 0
* CHKERR( VecStrideSum(self.vec, ival, &sval) )
* return toScalar(sval) # <<<<<<<<<<<<<<
@@ -99508,13 +106453,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(struct PyPetscVecOb
* def strideMin(self, field):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toScalar(__pyx_v_sval); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 717, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toScalar(__pyx_v_sval); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 723, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":713
+ /* "PETSc/Vec.pyx":719
* CHKERR( VecStrideScale(self.vec, ival, sval) )
*
* def strideSum(self, field): # <<<<<<<<<<<<<<
@@ -99533,7 +106478,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(struct PyPetscVecOb
return __pyx_r;
}
-/* "PETSc/Vec.pyx":719
+/* "PETSc/Vec.pyx":725
* return toScalar(sval)
*
* def strideMin(self, field): # <<<<<<<<<<<<<<
@@ -99542,9 +106487,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_232strideSum(struct PyPetscVecOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_235strideMin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_234strideMin[] = "Vec.strideMin(self, field)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_235strideMin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_236strideMin[] = "Vec.strideMin(self, field)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_field = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -99557,6 +106502,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_235strideMin(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -99567,7 +106513,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_235strideMin(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideMin") < 0)) __PYX_ERR(30, 719, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideMin") < 0)) __PYX_ERR(30, 725, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -99578,20 +106524,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_235strideMin(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("strideMin", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 719, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideMin", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 725, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.strideMin", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_236strideMin(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field) {
PetscInt __pyx_v_ival1;
PetscInt __pyx_v_ival2;
PetscReal __pyx_v_rval;
@@ -99604,17 +106550,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecOb
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("strideMin", 0);
- /* "PETSc/Vec.pyx":720
+ /* "PETSc/Vec.pyx":726
*
* def strideMin(self, field):
* cdef PetscInt ival1 = asInt(field) # <<<<<<<<<<<<<<
* cdef PetscInt ival2 = 0
* cdef PetscReal rval = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 720, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 726, __pyx_L1_error)
__pyx_v_ival1 = __pyx_t_1;
- /* "PETSc/Vec.pyx":721
+ /* "PETSc/Vec.pyx":727
* def strideMin(self, field):
* cdef PetscInt ival1 = asInt(field)
* cdef PetscInt ival2 = 0 # <<<<<<<<<<<<<<
@@ -99623,7 +106569,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecOb
*/
__pyx_v_ival2 = 0;
- /* "PETSc/Vec.pyx":722
+ /* "PETSc/Vec.pyx":728
* cdef PetscInt ival1 = asInt(field)
* cdef PetscInt ival2 = 0
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
@@ -99632,16 +106578,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecOb
*/
__pyx_v_rval = 0.0;
- /* "PETSc/Vec.pyx":723
+ /* "PETSc/Vec.pyx":729
* cdef PetscInt ival2 = 0
* cdef PetscReal rval = 0
* CHKERR( VecStrideMin(self.vec, ival1, &ival2, &rval) ) # <<<<<<<<<<<<<<
* return (toInt(ival2), toReal(rval))
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideMin(__pyx_v_self->vec, __pyx_v_ival1, (&__pyx_v_ival2), (&__pyx_v_rval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 723, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideMin(__pyx_v_self->vec, __pyx_v_ival1, (&__pyx_v_ival2), (&__pyx_v_rval))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 729, __pyx_L1_error)
- /* "PETSc/Vec.pyx":724
+ /* "PETSc/Vec.pyx":730
* cdef PetscReal rval = 0
* CHKERR( VecStrideMin(self.vec, ival1, &ival2, &rval) )
* return (toInt(ival2), toReal(rval)) # <<<<<<<<<<<<<<
@@ -99649,11 +106595,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecOb
* def strideMax(self, field):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival2); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 724, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival2); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 730, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 724, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 730, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 724, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 730, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -99665,7 +106611,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecOb
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":719
+ /* "PETSc/Vec.pyx":725
* return toScalar(sval)
*
* def strideMin(self, field): # <<<<<<<<<<<<<<
@@ -99686,7 +106632,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecOb
return __pyx_r;
}
-/* "PETSc/Vec.pyx":726
+/* "PETSc/Vec.pyx":732
* return (toInt(ival2), toReal(rval))
*
* def strideMax(self, field): # <<<<<<<<<<<<<<
@@ -99695,9 +106641,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_234strideMin(struct PyPetscVecOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMax(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_236strideMax[] = "Vec.strideMax(self, field)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMax(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideMax(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_238strideMax[] = "Vec.strideMax(self, field)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideMax(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_field = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -99710,6 +106656,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMax(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -99720,7 +106667,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMax(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideMax") < 0)) __PYX_ERR(30, 726, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideMax") < 0)) __PYX_ERR(30, 732, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -99731,20 +106678,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMax(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("strideMax", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 726, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideMax", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 732, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.strideMax", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_238strideMax(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideMax(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field) {
PetscInt __pyx_v_ival1;
PetscInt __pyx_v_ival2;
PetscReal __pyx_v_rval;
@@ -99757,17 +106704,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecOb
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("strideMax", 0);
- /* "PETSc/Vec.pyx":727
+ /* "PETSc/Vec.pyx":733
*
* def strideMax(self, field):
* cdef PetscInt ival1 = asInt(field) # <<<<<<<<<<<<<<
* cdef PetscInt ival2 = 0
* cdef PetscReal rval = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 727, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 733, __pyx_L1_error)
__pyx_v_ival1 = __pyx_t_1;
- /* "PETSc/Vec.pyx":728
+ /* "PETSc/Vec.pyx":734
* def strideMax(self, field):
* cdef PetscInt ival1 = asInt(field)
* cdef PetscInt ival2 = 0 # <<<<<<<<<<<<<<
@@ -99776,7 +106723,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecOb
*/
__pyx_v_ival2 = 0;
- /* "PETSc/Vec.pyx":729
+ /* "PETSc/Vec.pyx":735
* cdef PetscInt ival1 = asInt(field)
* cdef PetscInt ival2 = 0
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
@@ -99785,16 +106732,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecOb
*/
__pyx_v_rval = 0.0;
- /* "PETSc/Vec.pyx":730
+ /* "PETSc/Vec.pyx":736
* cdef PetscInt ival2 = 0
* cdef PetscReal rval = 0
* CHKERR( VecStrideMax(self.vec, ival1, &ival2, &rval) ) # <<<<<<<<<<<<<<
* return (toInt(ival2), toReal(rval))
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideMax(__pyx_v_self->vec, __pyx_v_ival1, (&__pyx_v_ival2), (&__pyx_v_rval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 730, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideMax(__pyx_v_self->vec, __pyx_v_ival1, (&__pyx_v_ival2), (&__pyx_v_rval))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 736, __pyx_L1_error)
- /* "PETSc/Vec.pyx":731
+ /* "PETSc/Vec.pyx":737
* cdef PetscReal rval = 0
* CHKERR( VecStrideMax(self.vec, ival1, &ival2, &rval) )
* return (toInt(ival2), toReal(rval)) # <<<<<<<<<<<<<<
@@ -99802,11 +106749,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecOb
* def strideNorm(self, field, norm_type=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival2); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 731, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival2); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 731, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 731, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -99818,7 +106765,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecOb
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":726
+ /* "PETSc/Vec.pyx":732
* return (toInt(ival2), toReal(rval))
*
* def strideMax(self, field): # <<<<<<<<<<<<<<
@@ -99839,7 +106786,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecOb
return __pyx_r;
}
-/* "PETSc/Vec.pyx":733
+/* "PETSc/Vec.pyx":739
* return (toInt(ival2), toReal(rval))
*
* def strideNorm(self, field, norm_type=None): # <<<<<<<<<<<<<<
@@ -99848,9 +106795,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_236strideMax(struct PyPetscVecOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_238strideNorm[] = "Vec.strideNorm(self, field, norm_type=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_240strideNorm[] = "Vec.strideNorm(self, field, norm_type=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_field = 0;
PyObject *__pyx_v_norm_type = 0;
PyObject *__pyx_r = 0;
@@ -99865,7 +106812,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideNorm(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -99874,6 +106823,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideNorm(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_norm_type);
@@ -99881,11 +106831,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideNorm(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideNorm") < 0)) __PYX_ERR(30, 733, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideNorm") < 0)) __PYX_ERR(30, 739, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -99896,20 +106847,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_239strideNorm(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("strideNorm", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 733, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideNorm", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 739, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.strideNorm", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_norm_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_240strideNorm(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_norm_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_norm_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_240strideNorm(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, PyObject *__pyx_v_norm_type) {
PetscInt __pyx_v_ival;
NormType __pyx_v_norm_1_2;
NormType __pyx_v_ntype;
@@ -99926,17 +106877,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecO
PyObject *__pyx_t_8 = NULL;
__Pyx_RefNannySetupContext("strideNorm", 0);
- /* "PETSc/Vec.pyx":734
+ /* "PETSc/Vec.pyx":740
*
* def strideNorm(self, field, norm_type=None):
* cdef PetscInt ival = asInt(field) # <<<<<<<<<<<<<<
* cdef PetscNormType norm_1_2 = PETSC_NORM_1_AND_2
* cdef PetscNormType ntype = PETSC_NORM_2
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 734, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 740, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Vec.pyx":735
+ /* "PETSc/Vec.pyx":741
* def strideNorm(self, field, norm_type=None):
* cdef PetscInt ival = asInt(field)
* cdef PetscNormType norm_1_2 = PETSC_NORM_1_AND_2 # <<<<<<<<<<<<<<
@@ -99945,7 +106896,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecO
*/
__pyx_v_norm_1_2 = NORM_1_AND_2;
- /* "PETSc/Vec.pyx":736
+ /* "PETSc/Vec.pyx":742
* cdef PetscInt ival = asInt(field)
* cdef PetscNormType norm_1_2 = PETSC_NORM_1_AND_2
* cdef PetscNormType ntype = PETSC_NORM_2 # <<<<<<<<<<<<<<
@@ -99954,7 +106905,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecO
*/
__pyx_v_ntype = NORM_2;
- /* "PETSc/Vec.pyx":737
+ /* "PETSc/Vec.pyx":743
* cdef PetscNormType norm_1_2 = PETSC_NORM_1_AND_2
* cdef PetscNormType ntype = PETSC_NORM_2
* if norm_type is not None: ntype = norm_type # <<<<<<<<<<<<<<
@@ -99964,20 +106915,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecO
__pyx_t_2 = (__pyx_v_norm_type != Py_None);
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- __pyx_t_4 = ((NormType)__Pyx_PyInt_As_NormType(__pyx_v_norm_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 737, __pyx_L1_error)
+ __pyx_t_4 = ((NormType)__Pyx_PyInt_As_NormType(__pyx_v_norm_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(30, 743, __pyx_L1_error)
__pyx_v_ntype = __pyx_t_4;
}
- /* "PETSc/Vec.pyx":739
+ /* "PETSc/Vec.pyx":745
* if norm_type is not None: ntype = norm_type
* cdef PetscReal rval[2]
* CHKERR( VecStrideNorm(self.vec, ival, ntype, rval) ) # <<<<<<<<<<<<<<
* if ntype != norm_1_2: return toReal(rval[0])
* else: return (toReal(rval[0]), toReal(rval[1]))
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideNorm(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(30, 739, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideNorm(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(30, 745, __pyx_L1_error)
- /* "PETSc/Vec.pyx":740
+ /* "PETSc/Vec.pyx":746
* cdef PetscReal rval[2]
* CHKERR( VecStrideNorm(self.vec, ival, ntype, rval) )
* if ntype != norm_1_2: return toReal(rval[0]) # <<<<<<<<<<<<<<
@@ -99987,27 +106938,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecO
__pyx_t_3 = ((__pyx_v_ntype != __pyx_v_norm_1_2) != 0);
if (__pyx_t_3) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_6)) __PYX_ERR(30, 740, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_6)) __PYX_ERR(30, 746, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_r = __pyx_t_6;
__pyx_t_6 = 0;
goto __pyx_L0;
}
- /* "PETSc/Vec.pyx":741
+ /* "PETSc/Vec.pyx":747
* CHKERR( VecStrideNorm(self.vec, ival, ntype, rval) )
* if ntype != norm_1_2: return toReal(rval[0])
* else: return (toReal(rval[0]), toReal(rval[1])) # <<<<<<<<<<<<<<
*
- * def strideScatter(self, field, Vec vec not None, addv=None):
+ * def strideScatter(self, field, Vec vec, addv=None):
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_6)) __PYX_ERR(30, 741, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_6)) __PYX_ERR(30, 747, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[1])); if (unlikely(!__pyx_t_7)) __PYX_ERR(30, 741, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[1])); if (unlikely(!__pyx_t_7)) __PYX_ERR(30, 747, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(30, 741, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(30, 747, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6);
@@ -100020,7 +106971,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecO
goto __pyx_L0;
}
- /* "PETSc/Vec.pyx":733
+ /* "PETSc/Vec.pyx":739
* return (toInt(ival2), toReal(rval))
*
* def strideNorm(self, field, norm_type=None): # <<<<<<<<<<<<<<
@@ -100041,18 +106992,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_238strideNorm(struct PyPetscVecO
return __pyx_r;
}
-/* "PETSc/Vec.pyx":743
+/* "PETSc/Vec.pyx":749
* else: return (toReal(rval[0]), toReal(rval[1]))
*
- * def strideScatter(self, field, Vec vec not None, addv=None): # <<<<<<<<<<<<<<
+ * def strideScatter(self, field, Vec vec, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_240strideScatter[] = "Vec.strideScatter(self, field, Vec vec, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideScatter(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_242strideScatter[] = "Vec.strideScatter(self, field, Vec vec, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideScatter(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_field = 0;
struct PyPetscVecObject *__pyx_v_vec = 0;
PyObject *__pyx_v_addv = 0;
@@ -100068,8 +107019,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100078,11 +107032,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("strideScatter", 0, 2, 3, 1); __PYX_ERR(30, 743, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideScatter", 0, 2, 3, 1); __PYX_ERR(30, 749, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -100090,11 +107046,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideScatter") < 0)) __PYX_ERR(30, 743, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideScatter") < 0)) __PYX_ERR(30, 749, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -100107,14 +107064,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("strideScatter", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 743, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideScatter", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 749, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.strideScatter", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(30, 743, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_240strideScatter(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_vec, __pyx_v_addv);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(30, 749, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_242strideScatter(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_vec, __pyx_v_addv);
/* function exit code */
goto __pyx_L0;
@@ -100125,7 +107082,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_240strideScatter(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_242strideScatter(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv) {
PetscInt __pyx_v_ival;
InsertMode __pyx_v_caddv;
PyObject *__pyx_r = NULL;
@@ -100135,39 +107092,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_240strideScatter(struct PyPetscV
int __pyx_t_3;
__Pyx_RefNannySetupContext("strideScatter", 0);
- /* "PETSc/Vec.pyx":744
+ /* "PETSc/Vec.pyx":750
*
- * def strideScatter(self, field, Vec vec not None, addv=None):
+ * def strideScatter(self, field, Vec vec, addv=None):
* cdef PetscInt ival = asInt(field) # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( VecStrideScatter(self.vec, ival, vec.vec, caddv) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 744, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 750, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Vec.pyx":745
- * def strideScatter(self, field, Vec vec not None, addv=None):
+ /* "PETSc/Vec.pyx":751
+ * def strideScatter(self, field, Vec vec, addv=None):
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( VecStrideScatter(self.vec, ival, vec.vec, caddv) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)-1L))) __PYX_ERR(30, 745, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(30, 751, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_2;
- /* "PETSc/Vec.pyx":746
+ /* "PETSc/Vec.pyx":752
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( VecStrideScatter(self.vec, ival, vec.vec, caddv) ) # <<<<<<<<<<<<<<
*
- * def strideGather(self, field, Vec vec not None, addv=None):
+ * def strideGather(self, field, Vec vec, addv=None):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideScatter(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_vec->vec, __pyx_v_caddv)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 746, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideScatter(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_vec->vec, __pyx_v_caddv)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 752, __pyx_L1_error)
- /* "PETSc/Vec.pyx":743
+ /* "PETSc/Vec.pyx":749
* else: return (toReal(rval[0]), toReal(rval[1]))
*
- * def strideScatter(self, field, Vec vec not None, addv=None): # <<<<<<<<<<<<<<
+ * def strideScatter(self, field, Vec vec, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
@@ -100184,18 +107141,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_240strideScatter(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Vec.pyx":748
+/* "PETSc/Vec.pyx":754
* CHKERR( VecStrideScatter(self.vec, ival, vec.vec, caddv) )
*
- * def strideGather(self, field, Vec vec not None, addv=None): # <<<<<<<<<<<<<<
+ * def strideGather(self, field, Vec vec, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_242strideGather[] = "Vec.strideGather(self, field, Vec vec, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_245strideGather(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_244strideGather[] = "Vec.strideGather(self, field, Vec vec, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_245strideGather(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_field = 0;
struct PyPetscVecObject *__pyx_v_vec = 0;
PyObject *__pyx_v_addv = 0;
@@ -100211,8 +107168,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100221,11 +107181,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("strideGather", 0, 2, 3, 1); __PYX_ERR(30, 748, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideGather", 0, 2, 3, 1); __PYX_ERR(30, 754, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -100233,11 +107195,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideGather") < 0)) __PYX_ERR(30, 748, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "strideGather") < 0)) __PYX_ERR(30, 754, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -100250,14 +107213,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("strideGather", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 748, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("strideGather", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 754, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.strideGather", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(30, 748, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_242strideGather(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_vec, __pyx_v_addv);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(30, 754, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_244strideGather(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_field, __pyx_v_vec, __pyx_v_addv);
/* function exit code */
goto __pyx_L0;
@@ -100268,7 +107231,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_242strideGather(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_244strideGather(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_field, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_addv) {
PetscInt __pyx_v_ival;
InsertMode __pyx_v_caddv;
PyObject *__pyx_r = NULL;
@@ -100278,39 +107241,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_242strideGather(struct PyPetscVe
int __pyx_t_3;
__Pyx_RefNannySetupContext("strideGather", 0);
- /* "PETSc/Vec.pyx":749
+ /* "PETSc/Vec.pyx":755
*
- * def strideGather(self, field, Vec vec not None, addv=None):
+ * def strideGather(self, field, Vec vec, addv=None):
* cdef PetscInt ival = asInt(field) # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( VecStrideGather(self.vec, ival, vec.vec, caddv) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(30, 749, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(30, 755, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Vec.pyx":750
- * def strideGather(self, field, Vec vec not None, addv=None):
+ /* "PETSc/Vec.pyx":756
+ * def strideGather(self, field, Vec vec, addv=None):
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( VecStrideGather(self.vec, ival, vec.vec, caddv) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)-1L))) __PYX_ERR(30, 750, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(30, 756, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_2;
- /* "PETSc/Vec.pyx":751
+ /* "PETSc/Vec.pyx":757
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( VecStrideGather(self.vec, ival, vec.vec, caddv) ) # <<<<<<<<<<<<<<
*
* # --- methods for vectors with ghost values ---
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideGather(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_vec->vec, __pyx_v_caddv)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 751, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecStrideGather(__pyx_v_self->vec, __pyx_v_ival, __pyx_v_vec->vec, __pyx_v_caddv)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 757, __pyx_L1_error)
- /* "PETSc/Vec.pyx":748
+ /* "PETSc/Vec.pyx":754
* CHKERR( VecStrideScatter(self.vec, ival, vec.vec, caddv) )
*
- * def strideGather(self, field, Vec vec not None, addv=None): # <<<<<<<<<<<<<<
+ * def strideGather(self, field, Vec vec, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(field)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
@@ -100327,7 +107290,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_242strideGather(struct PyPetscVe
return __pyx_r;
}
-/* "PETSc/Vec.pyx":755
+/* "PETSc/Vec.pyx":761
* # --- methods for vectors with ghost values ---
*
* def localForm(self): # <<<<<<<<<<<<<<
@@ -100336,30 +107299,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_242strideGather(struct PyPetscVe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_245localForm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_244localForm[] = "Vec.localForm(self)\n\n Intended for use in context manager::\n\n with vec.localForm() as lf:\n use(lf)\n ";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_245localForm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247localForm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_246localForm[] = "Vec.localForm(self)\n\n Intended for use in context manager::\n\n with vec.localForm() as lf:\n use(lf)\n ";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247localForm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("localForm (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("localForm", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "localForm", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_244localForm(((struct PyPetscVecObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_246localForm(((struct PyPetscVecObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_244localForm(struct PyPetscVecObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_246localForm(struct PyPetscVecObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("localForm", 0);
- /* "PETSc/Vec.pyx":762
+ /* "PETSc/Vec.pyx":768
* use(lf)
* """
* return _Vec_LocalForm(self) # <<<<<<<<<<<<<<
@@ -100367,19 +107330,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_244localForm(struct PyPetscVecOb
* def ghostUpdateBegin(self, addv=None, mode=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 762, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 768, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__Pyx_GIVEREF(((PyObject *)__pyx_v_self));
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_self));
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc__Vec_LocalForm), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 762, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc__Vec_LocalForm), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 768, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":755
+ /* "PETSc/Vec.pyx":761
* # --- methods for vectors with ghost values ---
*
* def localForm(self): # <<<<<<<<<<<<<<
@@ -100399,7 +107362,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_244localForm(struct PyPetscVecOb
return __pyx_r;
}
-/* "PETSc/Vec.pyx":764
+/* "PETSc/Vec.pyx":770
* return _Vec_LocalForm(self)
*
* def ghostUpdateBegin(self, addv=None, mode=None): # <<<<<<<<<<<<<<
@@ -100408,9 +107371,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_244localForm(struct PyPetscVecOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247ghostUpdateBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin[] = "Vec.ghostUpdateBegin(self, addv=None, mode=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247ghostUpdateBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_248ghostUpdateBegin[] = "Vec.ghostUpdateBegin(self, addv=None, mode=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_addv = 0;
PyObject *__pyx_v_mode = 0;
PyObject *__pyx_r = 0;
@@ -100426,7 +107389,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247ghostUpdateBegin(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100437,6 +107402,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247ghostUpdateBegin(PyObject *__
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -100444,12 +107410,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247ghostUpdateBegin(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ghostUpdateBegin") < 0)) __PYX_ERR(30, 764, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ghostUpdateBegin") < 0)) __PYX_ERR(30, 770, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100459,20 +107427,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_247ghostUpdateBegin(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("ghostUpdateBegin", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 764, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("ghostUpdateBegin", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 770, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.ghostUpdateBegin", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_addv, __pyx_v_mode);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateBegin(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_addv, __pyx_v_mode);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateBegin(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode) {
InsertMode __pyx_v_caddv;
ScatterMode __pyx_v_csctm;
PyObject *__pyx_r = NULL;
@@ -100482,36 +107450,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin(struct PyPet
int __pyx_t_3;
__Pyx_RefNannySetupContext("ghostUpdateBegin", 0);
- /* "PETSc/Vec.pyx":765
+ /* "PETSc/Vec.pyx":771
*
* def ghostUpdateBegin(self, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(30, 765, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(30, 771, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Vec.pyx":766
+ /* "PETSc/Vec.pyx":772
* def ghostUpdateBegin(self, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(30, 766, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(30, 772, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Vec.pyx":767
+ /* "PETSc/Vec.pyx":773
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) ) # <<<<<<<<<<<<<<
*
* def ghostUpdateEnd(self, addv=None, mode=None):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateBegin(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 767, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateBegin(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 773, __pyx_L1_error)
- /* "PETSc/Vec.pyx":764
+ /* "PETSc/Vec.pyx":770
* return _Vec_LocalForm(self)
*
* def ghostUpdateBegin(self, addv=None, mode=None): # <<<<<<<<<<<<<<
@@ -100531,7 +107499,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin(struct PyPet
return __pyx_r;
}
-/* "PETSc/Vec.pyx":769
+/* "PETSc/Vec.pyx":775
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) )
*
* def ghostUpdateEnd(self, addv=None, mode=None): # <<<<<<<<<<<<<<
@@ -100540,9 +107508,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd[] = "Vec.ghostUpdateEnd(self, addv=None, mode=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdateEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_250ghostUpdateEnd[] = "Vec.ghostUpdateEnd(self, addv=None, mode=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdateEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_addv = 0;
PyObject *__pyx_v_mode = 0;
PyObject *__pyx_r = 0;
@@ -100558,7 +107526,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateEnd(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100569,6 +107539,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateEnd(PyObject *__py
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -100576,12 +107547,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateEnd(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ghostUpdateEnd") < 0)) __PYX_ERR(30, 769, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ghostUpdateEnd") < 0)) __PYX_ERR(30, 775, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100591,20 +107564,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateEnd(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("ghostUpdateEnd", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 769, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("ghostUpdateEnd", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 775, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.ghostUpdateEnd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_addv, __pyx_v_mode);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdateEnd(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_addv, __pyx_v_mode);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdateEnd(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode) {
InsertMode __pyx_v_caddv;
ScatterMode __pyx_v_csctm;
PyObject *__pyx_r = NULL;
@@ -100614,36 +107587,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd(struct PyPetsc
int __pyx_t_3;
__Pyx_RefNannySetupContext("ghostUpdateEnd", 0);
- /* "PETSc/Vec.pyx":770
+ /* "PETSc/Vec.pyx":776
*
* def ghostUpdateEnd(self, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(30, 770, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(30, 776, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Vec.pyx":771
+ /* "PETSc/Vec.pyx":777
* def ghostUpdateEnd(self, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(30, 771, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(30, 777, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Vec.pyx":772
+ /* "PETSc/Vec.pyx":778
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) ) # <<<<<<<<<<<<<<
*
* def ghostUpdate(self, addv=None, mode=None):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateEnd(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 772, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateEnd(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 778, __pyx_L1_error)
- /* "PETSc/Vec.pyx":769
+ /* "PETSc/Vec.pyx":775
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) )
*
* def ghostUpdateEnd(self, addv=None, mode=None): # <<<<<<<<<<<<<<
@@ -100663,7 +107636,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Vec.pyx":774
+/* "PETSc/Vec.pyx":780
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*
* def ghostUpdate(self, addv=None, mode=None): # <<<<<<<<<<<<<<
@@ -100672,9 +107645,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_250ghostUpdate[] = "Vec.ghostUpdate(self, addv=None, mode=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_253ghostUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_252ghostUpdate[] = "Vec.ghostUpdate(self, addv=None, mode=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_253ghostUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_addv = 0;
PyObject *__pyx_v_mode = 0;
PyObject *__pyx_r = 0;
@@ -100690,7 +107663,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdate(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100701,6 +107676,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdate(PyObject *__pyx_v
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -100708,12 +107684,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdate(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ghostUpdate") < 0)) __PYX_ERR(30, 774, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ghostUpdate") < 0)) __PYX_ERR(30, 780, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100723,20 +107701,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdate(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("ghostUpdate", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 774, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("ghostUpdate", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 780, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.ghostUpdate", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdate(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_addv, __pyx_v_mode);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_252ghostUpdate(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_addv, __pyx_v_mode);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdate(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_252ghostUpdate(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_addv, PyObject *__pyx_v_mode) {
InsertMode __pyx_v_caddv;
ScatterMode __pyx_v_csctm;
PyObject *__pyx_r = NULL;
@@ -100746,45 +107724,45 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdate(struct PyPetscVec
int __pyx_t_3;
__Pyx_RefNannySetupContext("ghostUpdate", 0);
- /* "PETSc/Vec.pyx":775
+ /* "PETSc/Vec.pyx":781
*
* def ghostUpdate(self, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(30, 775, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(30, 781, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Vec.pyx":776
+ /* "PETSc/Vec.pyx":782
* def ghostUpdate(self, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) )
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(30, 776, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(30, 782, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Vec.pyx":777
+ /* "PETSc/Vec.pyx":783
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) ) # <<<<<<<<<<<<<<
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateBegin(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 777, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateBegin(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 783, __pyx_L1_error)
- /* "PETSc/Vec.pyx":778
+ /* "PETSc/Vec.pyx":784
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecGhostUpdateBegin(self.vec, caddv, csctm) )
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) ) # <<<<<<<<<<<<<<
*
* def setMPIGhost(self, ghosts):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateEnd(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 778, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGhostUpdateEnd(__pyx_v_self->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(30, 784, __pyx_L1_error)
- /* "PETSc/Vec.pyx":774
+ /* "PETSc/Vec.pyx":780
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*
* def ghostUpdate(self, addv=None, mode=None): # <<<<<<<<<<<<<<
@@ -100804,7 +107782,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdate(struct PyPetscVec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":780
+/* "PETSc/Vec.pyx":786
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*
* def setMPIGhost(self, ghosts): # <<<<<<<<<<<<<<
@@ -100813,9 +107791,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_250ghostUpdate(struct PyPetscVec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_253setMPIGhost(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_252setMPIGhost[] = "Vec.setMPIGhost(self, ghosts)\nAlternative to createGhost()";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_253setMPIGhost(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255setMPIGhost(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_254setMPIGhost[] = "Vec.setMPIGhost(self, ghosts)\nAlternative to createGhost()";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255setMPIGhost(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_ghosts = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -100828,6 +107806,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_253setMPIGhost(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100838,7 +107817,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_253setMPIGhost(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMPIGhost") < 0)) __PYX_ERR(30, 780, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMPIGhost") < 0)) __PYX_ERR(30, 786, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -100849,20 +107828,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_253setMPIGhost(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMPIGhost", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 780, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMPIGhost", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 786, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.setMPIGhost", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_252setMPIGhost(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_ghosts);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_254setMPIGhost(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_ghosts);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_252setMPIGhost(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_ghosts) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_254setMPIGhost(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_ghosts) {
PetscInt __pyx_v_ng;
PetscInt *__pyx_v_ig;
PyObject *__pyx_r = NULL;
@@ -100872,7 +107851,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_252setMPIGhost(struct PyPetscVec
__Pyx_RefNannySetupContext("setMPIGhost", 0);
__Pyx_INCREF(__pyx_v_ghosts);
- /* "PETSc/Vec.pyx":782
+ /* "PETSc/Vec.pyx":788
* def setMPIGhost(self, ghosts):
* "Alternative to createGhost()"
* cdef PetscInt ng=0, *ig=NULL # <<<<<<<<<<<<<<
@@ -100882,28 +107861,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_252setMPIGhost(struct PyPetscVec
__pyx_v_ng = 0;
__pyx_v_ig = NULL;
- /* "PETSc/Vec.pyx":783
+ /* "PETSc/Vec.pyx":789
* "Alternative to createGhost()"
* cdef PetscInt ng=0, *ig=NULL
* ghosts = iarray_i(ghosts, &ng, &ig) # <<<<<<<<<<<<<<
* CHKERR( VecMPISetGhost(self.vec, ng, ig) )
*
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_ghosts, (&__pyx_v_ng), (&__pyx_v_ig))); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 783, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_ghosts, (&__pyx_v_ng), (&__pyx_v_ig))); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 789, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_ghosts, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Vec.pyx":784
+ /* "PETSc/Vec.pyx":790
* cdef PetscInt ng=0, *ig=NULL
* ghosts = iarray_i(ghosts, &ng, &ig)
* CHKERR( VecMPISetGhost(self.vec, ng, ig) ) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMPISetGhost(__pyx_v_self->vec, __pyx_v_ng, __pyx_v_ig)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(30, 784, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecMPISetGhost(__pyx_v_self->vec, __pyx_v_ng, __pyx_v_ig)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(30, 790, __pyx_L1_error)
- /* "PETSc/Vec.pyx":780
+ /* "PETSc/Vec.pyx":786
* CHKERR( VecGhostUpdateEnd(self.vec, caddv, csctm) )
*
* def setMPIGhost(self, ghosts): # <<<<<<<<<<<<<<
@@ -100925,18 +107904,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_252setMPIGhost(struct PyPetscVec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":788
+/* "PETSc/Vec.pyx":794
* #
*
- * def getSubVector(self, IS iset not None, Vec subvec=None): # <<<<<<<<<<<<<<
+ * def getSubVector(self, IS iset, Vec subvec=None): # <<<<<<<<<<<<<<
* if subvec is None: subvec = Vec()
* else: CHKERR( VecDestroy(&subvec.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_254getSubVector[] = "Vec.getSubVector(self, IS iset, Vec subvec=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257getSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_256getSubVector[] = "Vec.getSubVector(self, IS iset, Vec subvec=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257getSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_iset = 0;
struct PyPetscVecObject *__pyx_v_subvec = 0;
PyObject *__pyx_r = 0;
@@ -100951,7 +107930,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -100960,6 +107941,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iset)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_subvec);
@@ -100967,11 +107949,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSubVector") < 0)) __PYX_ERR(30, 788, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSubVector") < 0)) __PYX_ERR(30, 794, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -100982,15 +107965,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getSubVector", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 788, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getSubVector", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 794, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.getSubVector", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(30, 788, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_subvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "subvec", 0))) __PYX_ERR(30, 788, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_254getSubVector(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_iset, __pyx_v_subvec);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(30, 794, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_subvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "subvec", 0))) __PYX_ERR(30, 794, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_256getSubVector(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_iset, __pyx_v_subvec);
/* function exit code */
goto __pyx_L0;
@@ -101001,7 +107984,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_254getSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_256getSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -101011,9 +107994,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_254getSubVector(struct PyPetscVe
__Pyx_RefNannySetupContext("getSubVector", 0);
__Pyx_INCREF((PyObject *)__pyx_v_subvec);
- /* "PETSc/Vec.pyx":789
+ /* "PETSc/Vec.pyx":795
*
- * def getSubVector(self, IS iset not None, Vec subvec=None):
+ * def getSubVector(self, IS iset, Vec subvec=None):
* if subvec is None: subvec = Vec() # <<<<<<<<<<<<<<
* else: CHKERR( VecDestroy(&subvec.vec) )
* CHKERR( VecGetSubVector(self.vec, iset.iset, &subvec.vec) )
@@ -101021,50 +108004,50 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_254getSubVector(struct PyPetscVe
__pyx_t_1 = (((PyObject *)__pyx_v_subvec) == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 789, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(30, 795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_subvec, ((struct PyPetscVecObject *)__pyx_t_3));
__pyx_t_3 = 0;
goto __pyx_L3;
}
- /* "PETSc/Vec.pyx":790
- * def getSubVector(self, IS iset not None, Vec subvec=None):
+ /* "PETSc/Vec.pyx":796
+ * def getSubVector(self, IS iset, Vec subvec=None):
* if subvec is None: subvec = Vec()
* else: CHKERR( VecDestroy(&subvec.vec) ) # <<<<<<<<<<<<<<
* CHKERR( VecGetSubVector(self.vec, iset.iset, &subvec.vec) )
* return subvec
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_subvec->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 790, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDestroy((&__pyx_v_subvec->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 796, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/Vec.pyx":791
+ /* "PETSc/Vec.pyx":797
* if subvec is None: subvec = Vec()
* else: CHKERR( VecDestroy(&subvec.vec) )
* CHKERR( VecGetSubVector(self.vec, iset.iset, &subvec.vec) ) # <<<<<<<<<<<<<<
* return subvec
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSubVector(__pyx_v_self->vec, __pyx_v_iset->iset, (&__pyx_v_subvec->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(30, 791, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecGetSubVector(__pyx_v_self->vec, __pyx_v_iset->iset, (&__pyx_v_subvec->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(30, 797, __pyx_L1_error)
- /* "PETSc/Vec.pyx":792
+ /* "PETSc/Vec.pyx":798
* else: CHKERR( VecDestroy(&subvec.vec) )
* CHKERR( VecGetSubVector(self.vec, iset.iset, &subvec.vec) )
* return subvec # <<<<<<<<<<<<<<
*
- * def restoreSubVector(self, IS iset not None, Vec subvec not None):
+ * def restoreSubVector(self, IS iset, Vec subvec):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_subvec));
__pyx_r = ((PyObject *)__pyx_v_subvec);
goto __pyx_L0;
- /* "PETSc/Vec.pyx":788
+ /* "PETSc/Vec.pyx":794
* #
*
- * def getSubVector(self, IS iset not None, Vec subvec=None): # <<<<<<<<<<<<<<
+ * def getSubVector(self, IS iset, Vec subvec=None): # <<<<<<<<<<<<<<
* if subvec is None: subvec = Vec()
* else: CHKERR( VecDestroy(&subvec.vec) )
*/
@@ -101081,18 +108064,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_254getSubVector(struct PyPetscVe
return __pyx_r;
}
-/* "PETSc/Vec.pyx":794
+/* "PETSc/Vec.pyx":800
* return subvec
*
- * def restoreSubVector(self, IS iset not None, Vec subvec not None): # <<<<<<<<<<<<<<
+ * def restoreSubVector(self, IS iset, Vec subvec): # <<<<<<<<<<<<<<
* CHKERR( VecRestoreSubVector(self.vec, iset.iset, &subvec.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257restoreSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_256restoreSubVector[] = "Vec.restoreSubVector(self, IS iset, Vec subvec)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257restoreSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_259restoreSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_258restoreSubVector[] = "Vec.restoreSubVector(self, IS iset, Vec subvec)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_259restoreSubVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_iset = 0;
struct PyPetscVecObject *__pyx_v_subvec = 0;
PyObject *__pyx_r = 0;
@@ -101106,7 +108089,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257restoreSubVector(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -101115,14 +108100,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257restoreSubVector(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iset)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_subvec)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("restoreSubVector", 1, 2, 2, 1); __PYX_ERR(30, 794, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("restoreSubVector", 1, 2, 2, 1); __PYX_ERR(30, 800, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "restoreSubVector") < 0)) __PYX_ERR(30, 794, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "restoreSubVector") < 0)) __PYX_ERR(30, 800, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -101135,15 +108121,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257restoreSubVector(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("restoreSubVector", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 794, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("restoreSubVector", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 800, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.restoreSubVector", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(30, 794, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_subvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "subvec", 0))) __PYX_ERR(30, 794, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_256restoreSubVector(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_iset, __pyx_v_subvec);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(30, 800, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_subvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "subvec", 0))) __PYX_ERR(30, 800, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_258restoreSubVector(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_iset, __pyx_v_subvec);
/* function exit code */
goto __pyx_L0;
@@ -101154,25 +108140,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_257restoreSubVector(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_256restoreSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258restoreSubVector(struct PyPetscVecObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, struct PyPetscVecObject *__pyx_v_subvec) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("restoreSubVector", 0);
- /* "PETSc/Vec.pyx":795
+ /* "PETSc/Vec.pyx":801
*
- * def restoreSubVector(self, IS iset not None, Vec subvec not None):
+ * def restoreSubVector(self, IS iset, Vec subvec):
* CHKERR( VecRestoreSubVector(self.vec, iset.iset, &subvec.vec) ) # <<<<<<<<<<<<<<
*
* def getNestSubVecs(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreSubVector(__pyx_v_self->vec, __pyx_v_iset->iset, (&__pyx_v_subvec->vec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 795, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecRestoreSubVector(__pyx_v_self->vec, __pyx_v_iset->iset, (&__pyx_v_subvec->vec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 801, __pyx_L1_error)
- /* "PETSc/Vec.pyx":794
+ /* "PETSc/Vec.pyx":800
* return subvec
*
- * def restoreSubVector(self, IS iset not None, Vec subvec not None): # <<<<<<<<<<<<<<
+ * def restoreSubVector(self, IS iset, Vec subvec): # <<<<<<<<<<<<<<
* CHKERR( VecRestoreSubVector(self.vec, iset.iset, &subvec.vec) )
*
*/
@@ -101189,7 +108175,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_256restoreSubVector(struct PyPet
return __pyx_r;
}
-/* "PETSc/Vec.pyx":797
+/* "PETSc/Vec.pyx":803
* CHKERR( VecRestoreSubVector(self.vec, iset.iset, &subvec.vec) )
*
* def getNestSubVecs(self): # <<<<<<<<<<<<<<
@@ -101198,23 +108184,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_256restoreSubVector(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_259getNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_258getNestSubVecs[] = "Vec.getNestSubVecs(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_259getNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261getNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_260getNestSubVecs[] = "Vec.getNestSubVecs(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261getNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getNestSubVecs (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getNestSubVecs", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getNestSubVecs", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(((struct PyPetscVecObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_260getNestSubVecs(((struct PyPetscVecObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetscVecObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260getNestSubVecs(struct PyPetscVecObject *__pyx_v_self) {
PetscInt __pyx_v_N;
Vec *__pyx_v_sx;
PyObject *__pyx_v_output = NULL;
@@ -101229,7 +108215,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
int __pyx_t_5;
__Pyx_RefNannySetupContext("getNestSubVecs", 0);
- /* "PETSc/Vec.pyx":798
+ /* "PETSc/Vec.pyx":804
*
* def getNestSubVecs(self):
* cdef PetscInt N=0 # <<<<<<<<<<<<<<
@@ -101238,7 +108224,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
*/
__pyx_v_N = 0;
- /* "PETSc/Vec.pyx":799
+ /* "PETSc/Vec.pyx":805
* def getNestSubVecs(self):
* cdef PetscInt N=0
* cdef PetscVec* sx=NULL # <<<<<<<<<<<<<<
@@ -101247,28 +108233,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
*/
__pyx_v_sx = NULL;
- /* "PETSc/Vec.pyx":800
+ /* "PETSc/Vec.pyx":806
* cdef PetscInt N=0
* cdef PetscVec* sx=NULL
* CHKERR( VecNestGetSubVecs(self.vec, &N, &sx) ) # <<<<<<<<<<<<<<
* output = []
* for i in range(N):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNestGetSubVecs(__pyx_v_self->vec, (&__pyx_v_N), (&__pyx_v_sx))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 800, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNestGetSubVecs(__pyx_v_self->vec, (&__pyx_v_N), (&__pyx_v_sx))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 806, __pyx_L1_error)
- /* "PETSc/Vec.pyx":801
+ /* "PETSc/Vec.pyx":807
* cdef PetscVec* sx=NULL
* CHKERR( VecNestGetSubVecs(self.vec, &N, &sx) )
* output = [] # <<<<<<<<<<<<<<
* for i in range(N):
* pyvec = Vec()
*/
- __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 801, __pyx_L1_error)
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 807, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_output = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Vec.pyx":802
+ /* "PETSc/Vec.pyx":808
* CHKERR( VecNestGetSubVecs(self.vec, &N, &sx) )
* output = []
* for i in range(N): # <<<<<<<<<<<<<<
@@ -101279,19 +108265,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
__pyx_v_i = __pyx_t_4;
- /* "PETSc/Vec.pyx":803
+ /* "PETSc/Vec.pyx":809
* output = []
* for i in range(N):
* pyvec = Vec() # <<<<<<<<<<<<<<
* pyvec.vec = sx[i]
* CHKERR( PetscObjectReference(<PetscObject> pyvec.vec) )
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 803, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 809, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_XDECREF_SET(__pyx_v_pyvec, ((struct PyPetscVecObject *)__pyx_t_2));
__pyx_t_2 = 0;
- /* "PETSc/Vec.pyx":804
+ /* "PETSc/Vec.pyx":810
* for i in range(N):
* pyvec = Vec()
* pyvec.vec = sx[i] # <<<<<<<<<<<<<<
@@ -101300,26 +108286,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
*/
__pyx_v_pyvec->vec = (__pyx_v_sx[__pyx_v_i]);
- /* "PETSc/Vec.pyx":805
+ /* "PETSc/Vec.pyx":811
* pyvec = Vec()
* pyvec.vec = sx[i]
* CHKERR( PetscObjectReference(<PetscObject> pyvec.vec) ) # <<<<<<<<<<<<<<
* output.append(pyvec)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectReference(((PetscObject)__pyx_v_pyvec->vec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(30, 805, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectReference(((PetscObject)__pyx_v_pyvec->vec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(30, 811, __pyx_L1_error)
- /* "PETSc/Vec.pyx":806
+ /* "PETSc/Vec.pyx":812
* pyvec.vec = sx[i]
* CHKERR( PetscObjectReference(<PetscObject> pyvec.vec) )
* output.append(pyvec) # <<<<<<<<<<<<<<
*
* return output
*/
- __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_output, ((PyObject *)__pyx_v_pyvec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(30, 806, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_output, ((PyObject *)__pyx_v_pyvec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(30, 812, __pyx_L1_error)
}
- /* "PETSc/Vec.pyx":808
+ /* "PETSc/Vec.pyx":814
* output.append(pyvec)
*
* return output # <<<<<<<<<<<<<<
@@ -101331,7 +108317,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
__pyx_r = __pyx_v_output;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":797
+ /* "PETSc/Vec.pyx":803
* CHKERR( VecRestoreSubVector(self.vec, iset.iset, &subvec.vec) )
*
* def getNestSubVecs(self): # <<<<<<<<<<<<<<
@@ -101352,7 +108338,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Vec.pyx":810
+/* "PETSc/Vec.pyx":816
* return output
*
* def setNestSubVecs(self, sx, idxm=None): # <<<<<<<<<<<<<<
@@ -101361,9 +108347,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_258getNestSubVecs(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261setNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Vec_260setNestSubVecs[] = "Vec.setNestSubVecs(self, sx, idxm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261setNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_263setNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Vec_262setNestSubVecs[] = "Vec.setNestSubVecs(self, sx, idxm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_263setNestSubVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_sx = 0;
PyObject *__pyx_v_idxm = 0;
PyObject *__pyx_r = 0;
@@ -101378,7 +108364,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261setNestSubVecs(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -101387,6 +108375,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261setNestSubVecs(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sx)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_idxm);
@@ -101394,11 +108383,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261setNestSubVecs(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNestSubVecs") < 0)) __PYX_ERR(30, 810, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNestSubVecs") < 0)) __PYX_ERR(30, 816, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -101409,20 +108399,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Vec_261setNestSubVecs(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setNestSubVecs", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 810, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setNestSubVecs", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(30, 816, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Vec.setNestSubVecs", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_sx, __pyx_v_idxm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Vec_262setNestSubVecs(((struct PyPetscVecObject *)__pyx_v_self), __pyx_v_sx, __pyx_v_idxm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_sx, PyObject *__pyx_v_idxm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_262setNestSubVecs(struct PyPetscVecObject *__pyx_v_self, PyObject *__pyx_v_sx, PyObject *__pyx_v_idxm) {
PetscInt __pyx_v_N;
PetscInt *__pyx_v_cidxm;
Vec *__pyx_v_csx;
@@ -101442,7 +108432,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
__Pyx_RefNannySetupContext("setNestSubVecs", 0);
__Pyx_INCREF(__pyx_v_idxm);
- /* "PETSc/Vec.pyx":811
+ /* "PETSc/Vec.pyx":817
*
* def setNestSubVecs(self, sx, idxm=None):
* if idxm is None: idxm = range(len(sx)) # <<<<<<<<<<<<<<
@@ -101452,15 +108442,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
__pyx_t_1 = (__pyx_v_idxm == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyObject_Length(__pyx_v_sx); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 811, __pyx_L1_error)
- __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 811, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_v_sx); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(30, 817, __pyx_L1_error)
+ __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 817, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 811, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 817, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
__pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_range, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 811, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_range, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 817, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_idxm, __pyx_t_4);
@@ -101468,7 +108458,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
goto __pyx_L3;
}
- /* "PETSc/Vec.pyx":812
+ /* "PETSc/Vec.pyx":818
* def setNestSubVecs(self, sx, idxm=None):
* if idxm is None: idxm = range(len(sx))
* else: assert len(idxm) == len(sx) # <<<<<<<<<<<<<<
@@ -101478,18 +108468,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
/*else*/ {
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_3 = PyObject_Length(__pyx_v_idxm); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(30, 812, __pyx_L1_error)
- __pyx_t_6 = PyObject_Length(__pyx_v_sx); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(30, 812, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_v_idxm); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(30, 818, __pyx_L1_error)
+ __pyx_t_6 = PyObject_Length(__pyx_v_sx); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(30, 818, __pyx_L1_error)
if (unlikely(!((__pyx_t_3 == __pyx_t_6) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(30, 812, __pyx_L1_error)
+ __PYX_ERR(30, 818, __pyx_L1_error)
}
}
#endif
}
__pyx_L3:;
- /* "PETSc/Vec.pyx":813
+ /* "PETSc/Vec.pyx":819
* if idxm is None: idxm = range(len(sx))
* else: assert len(idxm) == len(sx)
* cdef PetscInt N = 0 # <<<<<<<<<<<<<<
@@ -101498,7 +108488,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
*/
__pyx_v_N = 0;
- /* "PETSc/Vec.pyx":814
+ /* "PETSc/Vec.pyx":820
* else: assert len(idxm) == len(sx)
* cdef PetscInt N = 0
* cdef PetscInt* cidxm = NULL # <<<<<<<<<<<<<<
@@ -101507,19 +108497,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
*/
__pyx_v_cidxm = NULL;
- /* "PETSc/Vec.pyx":815
+ /* "PETSc/Vec.pyx":821
* cdef PetscInt N = 0
* cdef PetscInt* cidxm = NULL
* idxm = iarray_i(idxm, &N, &cidxm) # <<<<<<<<<<<<<<
*
*
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_idxm, (&__pyx_v_N), (&__pyx_v_cidxm))); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 815, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_idxm, (&__pyx_v_N), (&__pyx_v_cidxm))); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 821, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_idxm, __pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/Vec.pyx":818
+ /* "PETSc/Vec.pyx":824
*
*
* cdef PetscVec* csx = NULL # <<<<<<<<<<<<<<
@@ -101528,22 +108518,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
*/
__pyx_v_csx = NULL;
- /* "PETSc/Vec.pyx":819
+ /* "PETSc/Vec.pyx":825
*
* cdef PetscVec* csx = NULL
* tmp = oarray_p(empty_p(N), NULL, <void**>&csx) # <<<<<<<<<<<<<<
* for i from 0 <= i < N: csx[i] = (<Vec?>sx[i]).vec
*
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_N)); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 819, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_N)); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 825, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_4, NULL, ((void **)(&__pyx_v_csx)))); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 819, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_4, NULL, ((void **)(&__pyx_v_csx)))); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 825, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_tmp = ((PyArrayObject *)__pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/Vec.pyx":820
+ /* "PETSc/Vec.pyx":826
* cdef PetscVec* csx = NULL
* tmp = oarray_p(empty_p(N), NULL, <void**>&csx)
* for i from 0 <= i < N: csx[i] = (<Vec?>sx[i]).vec # <<<<<<<<<<<<<<
@@ -101552,24 +108542,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
*/
__pyx_t_7 = __pyx_v_N;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_7; __pyx_v_i++) {
- __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_sx, __pyx_v_i, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 820, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_sx, __pyx_v_i, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(30, 826, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- if (!(likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(30, 820, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(30, 826, __pyx_L1_error)
__pyx_t_8 = ((struct PyPetscVecObject *)__pyx_t_5)->vec;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
(__pyx_v_csx[__pyx_v_i]) = __pyx_t_8;
}
- /* "PETSc/Vec.pyx":822
+ /* "PETSc/Vec.pyx":828
* for i from 0 <= i < N: csx[i] = (<Vec?>sx[i]).vec
*
* CHKERR( VecNestSetSubVecs(self.vec, N, cidxm, csx) ) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNestSetSubVecs(__pyx_v_self->vec, __pyx_v_N, __pyx_v_cidxm, __pyx_v_csx)); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(30, 822, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecNestSetSubVecs(__pyx_v_self->vec, __pyx_v_N, __pyx_v_cidxm, __pyx_v_csx)); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(30, 828, __pyx_L1_error)
- /* "PETSc/Vec.pyx":810
+ /* "PETSc/Vec.pyx":816
* return output
*
* def setNestSubVecs(self, sx, idxm=None): # <<<<<<<<<<<<<<
@@ -101593,7 +108583,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_260setNestSubVecs(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Vec.pyx":827
+/* "PETSc/Vec.pyx":833
*
* property sizes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -101622,7 +108612,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5sizes___get__(struct PyPetscVec
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":828
+ /* "PETSc/Vec.pyx":834
* property sizes:
* def __get__(self):
* return self.getSizes() # <<<<<<<<<<<<<<
@@ -101630,10 +108620,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5sizes___get__(struct PyPetscVec
* self.setSizes(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 828, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 834, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -101643,10 +108633,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5sizes___get__(struct PyPetscVec
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 828, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 834, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 828, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 834, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -101654,7 +108644,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5sizes___get__(struct PyPetscVec
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":827
+ /* "PETSc/Vec.pyx":833
*
* property sizes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -101675,7 +108665,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5sizes___get__(struct PyPetscVec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":829
+/* "PETSc/Vec.pyx":835
* def __get__(self):
* return self.getSizes()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -101705,17 +108695,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_5sizes_2__set__(struct PyPetscVecObjec
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/Vec.pyx":830
+ /* "PETSc/Vec.pyx":836
* return self.getSizes()
* def __set__(self, value):
* self.setSizes(value) # <<<<<<<<<<<<<<
*
* property size:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 830, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 836, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -101725,23 +108715,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_5sizes_2__set__(struct PyPetscVecObjec
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 830, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 836, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 830, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 830, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 836, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 836, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 836, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 836, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Vec.pyx":829
+ /* "PETSc/Vec.pyx":835
* def __get__(self):
* return self.getSizes()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -101764,7 +108772,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_5sizes_2__set__(struct PyPetscVecObjec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":833
+/* "PETSc/Vec.pyx":839
*
* property size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -101793,7 +108801,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_4size___get__(struct PyPetscVecO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":834
+ /* "PETSc/Vec.pyx":840
* property size:
* def __get__(self):
* return self.getSize() # <<<<<<<<<<<<<<
@@ -101801,10 +108809,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_4size___get__(struct PyPetscVecO
* property local_size:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 834, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 840, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -101814,10 +108822,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_4size___get__(struct PyPetscVecO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 834, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 840, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 834, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 840, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -101825,7 +108833,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_4size___get__(struct PyPetscVecO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":833
+ /* "PETSc/Vec.pyx":839
*
* property size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -101846,7 +108854,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_4size___get__(struct PyPetscVecO
return __pyx_r;
}
-/* "PETSc/Vec.pyx":837
+/* "PETSc/Vec.pyx":843
*
* property local_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -101875,7 +108883,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10local_size___get__(struct PyPe
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":838
+ /* "PETSc/Vec.pyx":844
* property local_size:
* def __get__(self):
* return self.getLocalSize() # <<<<<<<<<<<<<<
@@ -101883,10 +108891,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10local_size___get__(struct PyPe
* property block_size:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getLocalSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 838, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getLocalSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 844, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -101896,10 +108904,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10local_size___get__(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 838, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 844, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 838, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 844, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -101907,7 +108915,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10local_size___get__(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":837
+ /* "PETSc/Vec.pyx":843
*
* property local_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -101928,7 +108936,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10local_size___get__(struct PyPe
return __pyx_r;
}
-/* "PETSc/Vec.pyx":841
+/* "PETSc/Vec.pyx":847
*
* property block_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -101957,7 +108965,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10block_size___get__(struct PyPe
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":842
+ /* "PETSc/Vec.pyx":848
* property block_size:
* def __get__(self):
* return self.getBlockSize() # <<<<<<<<<<<<<<
@@ -101965,10 +108973,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10block_size___get__(struct PyPe
* property owner_range:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 842, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 848, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -101978,10 +108986,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10block_size___get__(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 842, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 848, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 842, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 848, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -101989,7 +108997,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10block_size___get__(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":841
+ /* "PETSc/Vec.pyx":847
*
* property block_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102010,7 +109018,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_10block_size___get__(struct PyPe
return __pyx_r;
}
-/* "PETSc/Vec.pyx":845
+/* "PETSc/Vec.pyx":851
*
* property owner_range:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102039,7 +109047,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_11owner_range___get__(struct PyP
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":846
+ /* "PETSc/Vec.pyx":852
* property owner_range:
* def __get__(self):
* return self.getOwnershipRange() # <<<<<<<<<<<<<<
@@ -102047,10 +109055,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_11owner_range___get__(struct PyP
* property owner_ranges:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRange); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 846, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRange); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 852, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -102060,10 +109068,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_11owner_range___get__(struct PyP
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 846, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 852, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 846, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 852, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -102071,7 +109079,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_11owner_range___get__(struct PyP
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":845
+ /* "PETSc/Vec.pyx":851
*
* property owner_range:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102092,7 +109100,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_11owner_range___get__(struct PyP
return __pyx_r;
}
-/* "PETSc/Vec.pyx":849
+/* "PETSc/Vec.pyx":855
*
* property owner_ranges:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102121,7 +109129,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_12owner_ranges___get__(struct Py
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":850
+ /* "PETSc/Vec.pyx":856
* property owner_ranges:
* def __get__(self):
* return self.getOwnershipRanges() # <<<<<<<<<<<<<<
@@ -102129,10 +109137,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_12owner_ranges___get__(struct Py
* property buffer_w:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRanges); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 850, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRanges); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 856, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -102142,10 +109150,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_12owner_ranges___get__(struct Py
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 850, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 856, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 850, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 856, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -102153,7 +109161,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_12owner_ranges___get__(struct Py
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":849
+ /* "PETSc/Vec.pyx":855
*
* property owner_ranges:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102174,7 +109182,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_12owner_ranges___get__(struct Py
return __pyx_r;
}
-/* "PETSc/Vec.pyx":854
+/* "PETSc/Vec.pyx":860
* property buffer_w:
* "Vec buffer (writable)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102203,7 +109211,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_w___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":855
+ /* "PETSc/Vec.pyx":861
* "Vec buffer (writable)"
* def __get__(self):
* return self.getBuffer() # <<<<<<<<<<<<<<
@@ -102211,10 +109219,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_w___get__(struct PyPetsc
* property buffer_r:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 855, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 861, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -102224,10 +109232,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_w___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 855, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 861, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 855, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 861, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -102235,7 +109243,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_w___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":854
+ /* "PETSc/Vec.pyx":860
* property buffer_w:
* "Vec buffer (writable)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102256,7 +109264,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_w___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Vec.pyx":859
+/* "PETSc/Vec.pyx":865
* property buffer_r:
* "Vec buffer (read-only)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102284,7 +109292,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_r___get__(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":860
+ /* "PETSc/Vec.pyx":866
* "Vec buffer (read-only)"
* def __get__(self):
* return self.getBuffer(True) # <<<<<<<<<<<<<<
@@ -102292,16 +109300,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_r___get__(struct PyPetsc
* property array_w:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 860, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__54, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 860, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__57, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":859
+ /* "PETSc/Vec.pyx":865
* property buffer_r:
* "Vec buffer (read-only)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102321,7 +109329,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_8buffer_r___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Vec.pyx":864
+/* "PETSc/Vec.pyx":870
* property array_w:
* "Vec array (writable)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102350,7 +109358,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_w___get__(struct PyPetscV
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":865
+ /* "PETSc/Vec.pyx":871
* "Vec array (writable)"
* def __get__(self):
* return self.getArray() # <<<<<<<<<<<<<<
@@ -102358,10 +109366,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_w___get__(struct PyPetscV
* cdef buf = self.getBuffer()
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getArray); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 865, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getArray); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 871, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -102371,10 +109379,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_w___get__(struct PyPetscV
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 865, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 871, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 865, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 871, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -102382,7 +109390,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_w___get__(struct PyPetscV
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":864
+ /* "PETSc/Vec.pyx":870
* property array_w:
* "Vec array (writable)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102403,7 +109411,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_w___get__(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Vec.pyx":866
+/* "PETSc/Vec.pyx":872
* def __get__(self):
* return self.getArray()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -102442,17 +109450,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
int __pyx_t_11;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/Vec.pyx":867
+ /* "PETSc/Vec.pyx":873
* return self.getArray()
* def __set__(self, value):
* cdef buf = self.getBuffer() # <<<<<<<<<<<<<<
* with buf as array: array[:] = value
*
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 867, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 873, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -102462,17 +109470,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 867, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 873, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 867, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 873, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_buf = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Vec.pyx":868
+ /* "PETSc/Vec.pyx":874
* def __set__(self, value):
* cdef buf = self.getBuffer()
* with buf as array: array[:] = value # <<<<<<<<<<<<<<
@@ -102480,12 +109488,12 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
* property array_r:
*/
/*with:*/ {
- __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_v_buf, __pyx_n_s_exit); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 868, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_LookupSpecial(__pyx_v_buf, __pyx_n_s_exit); if (unlikely(!__pyx_t_4)) __PYX_ERR(30, 874, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_v_buf, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 868, __pyx_L3_error)
+ __pyx_t_2 = __Pyx_PyObject_LookupSpecial(__pyx_v_buf, __pyx_n_s_enter); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 874, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -102495,10 +109503,10 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 868, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 874, __pyx_L3_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 868, __pyx_L3_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 874, __pyx_L3_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -102515,33 +109523,32 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
/*try:*/ {
__pyx_v_array = __pyx_t_2;
__pyx_t_2 = 0;
- if (__Pyx_PyObject_SetSlice(__pyx_v_array, __pyx_v_value, 0, 0, NULL, NULL, &__pyx_slice__55, 0, 0, 1) < 0) __PYX_ERR(30, 868, __pyx_L7_error)
+ if (__Pyx_PyObject_SetSlice(__pyx_v_array, __pyx_v_value, 0, 0, NULL, NULL, &__pyx_slice__58, 0, 0, 1) < 0) __PYX_ERR(30, 874, __pyx_L7_error)
}
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- goto __pyx_L14_try_end;
+ goto __pyx_L12_try_end;
__pyx_L7_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
/*except:*/ {
__Pyx_AddTraceback("petsc4py.PETSc.Vec.array_w.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_1, &__pyx_t_3) < 0) __PYX_ERR(30, 868, __pyx_L9_except_error)
+ if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_1, &__pyx_t_3) < 0) __PYX_ERR(30, 874, __pyx_L9_except_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_8 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_8)) __PYX_ERR(30, 868, __pyx_L9_except_error)
+ __pyx_t_8 = PyTuple_Pack(3, __pyx_t_2, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_8)) __PYX_ERR(30, 874, __pyx_L9_except_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_8, NULL);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(!__pyx_t_9)) __PYX_ERR(30, 868, __pyx_L9_except_error)
+ if (unlikely(!__pyx_t_9)) __PYX_ERR(30, 874, __pyx_L9_except_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_9);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- if (__pyx_t_10 < 0) __PYX_ERR(30, 868, __pyx_L9_except_error)
+ if (__pyx_t_10 < 0) __PYX_ERR(30, 874, __pyx_L9_except_error)
__pyx_t_11 = ((!(__pyx_t_10 != 0)) != 0);
if (__pyx_t_11) {
__Pyx_GIVEREF(__pyx_t_2);
@@ -102549,7 +109556,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ErrRestoreWithState(__pyx_t_2, __pyx_t_1, __pyx_t_3);
__pyx_t_2 = 0; __pyx_t_1 = 0; __pyx_t_3 = 0;
- __PYX_ERR(30, 868, __pyx_L9_except_error)
+ __PYX_ERR(30, 874, __pyx_L9_except_error)
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -102557,27 +109564,25 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
goto __pyx_L8_exception_handled;
}
__pyx_L9_except_error:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_XGIVEREF(__pyx_t_7);
__Pyx_ExceptionReset(__pyx_t_5, __pyx_t_6, __pyx_t_7);
goto __pyx_L1_error;
__pyx_L8_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_XGIVEREF(__pyx_t_7);
__Pyx_ExceptionReset(__pyx_t_5, __pyx_t_6, __pyx_t_7);
- __pyx_L14_try_end:;
+ __pyx_L12_try_end:;
}
}
/*finally:*/ {
/*normal exit:*/{
if (__pyx_t_4) {
- __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__56, NULL);
+ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_tuple__59, NULL);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- if (unlikely(!__pyx_t_7)) __PYX_ERR(30, 868, __pyx_L1_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(30, 874, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
@@ -102585,14 +109590,14 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
}
__pyx_L6:;
}
- goto __pyx_L18;
+ goto __pyx_L16;
__pyx_L3_error:;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
goto __pyx_L1_error;
- __pyx_L18:;
+ __pyx_L16:;
}
- /* "PETSc/Vec.pyx":866
+ /* "PETSc/Vec.pyx":872
* def __get__(self):
* return self.getArray()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -102617,7 +109622,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_7array_w_2__set__(struct PyPetscVecObj
return __pyx_r;
}
-/* "PETSc/Vec.pyx":872
+/* "PETSc/Vec.pyx":878
* property array_r:
* "Vec array (read-only)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102645,7 +109650,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_r___get__(struct PyPetscV
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":873
+ /* "PETSc/Vec.pyx":879
* "Vec array (read-only)"
* def __get__(self):
* return self.getArray(True) # <<<<<<<<<<<<<<
@@ -102653,16 +109658,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_r___get__(struct PyPetscV
* property buffer:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getArray); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 873, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getArray); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__57, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 873, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__60, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 879, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":872
+ /* "PETSc/Vec.pyx":878
* property array_r:
* "Vec array (read-only)"
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102682,7 +109687,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_7array_r___get__(struct PyPetscV
return __pyx_r;
}
-/* "PETSc/Vec.pyx":876
+/* "PETSc/Vec.pyx":882
*
* property buffer:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102709,7 +109714,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_6buffer___get__(struct PyPetscVe
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":877
+ /* "PETSc/Vec.pyx":883
* property buffer:
* def __get__(self):
* return self.buffer_w # <<<<<<<<<<<<<<
@@ -102717,13 +109722,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_6buffer___get__(struct PyPetscVe
* property array:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_buffer_w); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 877, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_buffer_w); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 883, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":876
+ /* "PETSc/Vec.pyx":882
*
* property buffer:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102742,7 +109747,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_6buffer___get__(struct PyPetscVe
return __pyx_r;
}
-/* "PETSc/Vec.pyx":880
+/* "PETSc/Vec.pyx":886
*
* property array:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102769,7 +109774,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5array___get__(struct PyPetscVec
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":881
+ /* "PETSc/Vec.pyx":887
* property array:
* def __get__(self):
* return self.array_w # <<<<<<<<<<<<<<
@@ -102777,13 +109782,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5array___get__(struct PyPetscVec
* self.array_w = value
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_array_w); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 881, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_array_w); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 887, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":880
+ /* "PETSc/Vec.pyx":886
*
* property array:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102802,7 +109807,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_5array___get__(struct PyPetscVec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":882
+/* "PETSc/Vec.pyx":888
* def __get__(self):
* return self.array_w
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -102828,16 +109833,16 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_5array_2__set__(struct PyPetscVecObjec
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/Vec.pyx":883
+ /* "PETSc/Vec.pyx":889
* return self.array_w
* def __set__(self, value):
* self.array_w = value # <<<<<<<<<<<<<<
*
* # --- NumPy array interface (legacy) ---
*/
- if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_array_w, __pyx_v_value) < 0) __PYX_ERR(30, 883, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_array_w, __pyx_v_value) < 0) __PYX_ERR(30, 889, __pyx_L1_error)
- /* "PETSc/Vec.pyx":882
+ /* "PETSc/Vec.pyx":888
* def __get__(self):
* return self.array_w
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -102856,7 +109861,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Vec_5array_2__set__(struct PyPetscVecObjec
return __pyx_r;
}
-/* "PETSc/Vec.pyx":888
+/* "PETSc/Vec.pyx":894
*
* property __array_interface__:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -102886,17 +109891,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_19__array_interface_____get__(st
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Vec.pyx":889
+ /* "PETSc/Vec.pyx":895
* property __array_interface__:
* def __get__(self):
* cdef buf = self.getBuffer() # <<<<<<<<<<<<<<
* return buf.__array_interface__
*
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 889, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBuffer); if (unlikely(!__pyx_t_2)) __PYX_ERR(30, 895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -102906,17 +109911,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_19__array_interface_____get__(st
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 889, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 895, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 889, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 895, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_buf = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/Vec.pyx":890
+ /* "PETSc/Vec.pyx":896
* def __get__(self):
* cdef buf = self.getBuffer()
* return buf.__array_interface__ # <<<<<<<<<<<<<<
@@ -102924,13 +109929,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Vec_19__array_interface_____get__(st
* # --------------------------------------------------------------------
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_buf, __pyx_n_s_array_interface); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 890, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_buf, __pyx_n_s_array_interface); if (unlikely(!__pyx_t_1)) __PYX_ERR(30, 896, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Vec.pyx":888
+ /* "PETSc/Vec.pyx":894
*
* property __array_interface__:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -103041,9 +110046,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_3__call__(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -103052,16 +110061,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_3__call__(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("__call__", 0, 2, 4, 1); __PYX_ERR(31, 13, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -103074,7 +110086,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_3__call__(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -103107,7 +110121,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_2__call__(struct PyPetscScat
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
- Py_ssize_t __pyx_t_4;
+ int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("__call__", 0);
@@ -103122,7 +110136,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_2__call__(struct PyPetscScat
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
__pyx_t_4 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -103132,26 +110146,44 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_2__call__(struct PyPetscScat
__pyx_t_4 = 1;
}
}
- __pyx_t_5 = PyTuple_New(4+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(31, 14, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (__pyx_t_3) {
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_3, __pyx_v_x, __pyx_v_y, __pyx_v_addv, __pyx_v_mode};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 4+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(31, 14, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[5] = {__pyx_t_3, __pyx_v_x, __pyx_v_y, __pyx_v_addv, __pyx_v_mode};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 4+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(31, 14, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(4+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(31, 14, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (__pyx_t_3) {
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_x);
+ __Pyx_GIVEREF(__pyx_v_x);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_x);
+ __Pyx_INCREF(__pyx_v_y);
+ __Pyx_GIVEREF(__pyx_v_y);
+ PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_y);
+ __Pyx_INCREF(__pyx_v_addv);
+ __Pyx_GIVEREF(__pyx_v_addv);
+ PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_4, __pyx_v_addv);
+ __Pyx_INCREF(__pyx_v_mode);
+ __Pyx_GIVEREF(__pyx_v_mode);
+ PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_4, __pyx_v_mode);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(31, 14, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- __Pyx_INCREF(__pyx_v_x);
- __Pyx_GIVEREF(__pyx_v_x);
- PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_v_x);
- __Pyx_INCREF(__pyx_v_y);
- __Pyx_GIVEREF(__pyx_v_y);
- PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_y);
- __Pyx_INCREF(__pyx_v_addv);
- __Pyx_GIVEREF(__pyx_v_addv);
- PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_4, __pyx_v_addv);
- __Pyx_INCREF(__pyx_v_mode);
- __Pyx_GIVEREF(__pyx_v_mode);
- PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_4, __pyx_v_mode);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(31, 14, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -103204,6 +110236,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_5view(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -103221,6 +110254,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_5view(PyObject *__pyx_v_self
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -103287,7 +110321,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_4view(struct PyPetscScatterO
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterView(__pyx_v_self->sct, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(31, 21, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterView(__pyx_v_self->sct, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(31, 21, __pyx_L1_error)
/* "PETSc/Scatter.pyx":18
* #
@@ -103347,14 +110381,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_6destroy(struct PyPetscScatt
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterDestroy((&__pyx_v_self->sct))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(31, 24, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterDestroy((&__pyx_v_self->sct))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(31, 24, __pyx_L1_error)
/* "PETSc/Scatter.pyx":25
* def destroy(self):
* CHKERR( VecScatterDestroy(&self.sct) )
* return self # <<<<<<<<<<<<<<
*
- * def create(self, Vec vec_from not None, IS is_from,
+ * def create(self, Vec vec_from, IS is_from or None,
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
@@ -103382,8 +110416,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_6destroy(struct PyPetscScatt
/* "PETSc/Scatter.pyx":27
* return self
*
- * def create(self, Vec vec_from not None, IS is_from, # <<<<<<<<<<<<<<
- * Vec vec_to not None, IS is_to):
+ * def create(self, Vec vec_from, IS is_from or None, # <<<<<<<<<<<<<<
+ * Vec vec_to, IS is_to or None):
* cdef PetscIS cisfrom = NULL, cisto = NULL
*/
@@ -103406,9 +110440,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_9create(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -103417,16 +110455,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_9create(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_from)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_is_from)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("create", 1, 4, 4, 1); __PYX_ERR(31, 27, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_to)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("create", 1, 4, 4, 2); __PYX_ERR(31, 27, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_is_to)) != 0)) kw_args--;
else {
@@ -103485,8 +110526,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_8create(struct PyPetscScatte
__Pyx_RefNannySetupContext("create", 0);
/* "PETSc/Scatter.pyx":29
- * def create(self, Vec vec_from not None, IS is_from,
- * Vec vec_to not None, IS is_to):
+ * def create(self, Vec vec_from, IS is_from or None,
+ * Vec vec_to, IS is_to or None):
* cdef PetscIS cisfrom = NULL, cisto = NULL # <<<<<<<<<<<<<<
* if is_from is not None: cisfrom = is_from.iset
* if is_to is not None: cisto = is_to.iset
@@ -103495,7 +110536,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_8create(struct PyPetscScatte
__pyx_v_cisto = NULL;
/* "PETSc/Scatter.pyx":30
- * Vec vec_to not None, IS is_to):
+ * Vec vec_to, IS is_to or None):
* cdef PetscIS cisfrom = NULL, cisto = NULL
* if is_from is not None: cisfrom = is_from.iset # <<<<<<<<<<<<<<
* if is_to is not None: cisto = is_to.iset
@@ -103538,7 +110579,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_8create(struct PyPetscScatte
* vec_from.vec, cisfrom, vec_to.vec, cisto, &newsct) )
* PetscCLEAR(self.obj); self.sct = newsct
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCreate(__pyx_v_vec_from->vec, __pyx_v_cisfrom, __pyx_v_vec_to->vec, __pyx_v_cisto, (&__pyx_v_newsct))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(31, 33, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCreate(__pyx_v_vec_from->vec, __pyx_v_cisfrom, __pyx_v_vec_to->vec, __pyx_v_cisto, (&__pyx_v_newsct))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(31, 33, __pyx_L1_error)
/* "PETSc/Scatter.pyx":35
* CHKERR( VecScatterCreate(
@@ -103565,8 +110606,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_8create(struct PyPetscScatte
/* "PETSc/Scatter.pyx":27
* return self
*
- * def create(self, Vec vec_from not None, IS is_from, # <<<<<<<<<<<<<<
- * Vec vec_to not None, IS is_to):
+ * def create(self, Vec vec_from, IS is_from or None, # <<<<<<<<<<<<<<
+ * Vec vec_to, IS is_to or None):
* cdef PetscIS cisfrom = NULL, cisto = NULL
*/
@@ -103632,7 +110673,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_10copy(struct PyPetscScatter
* return scatter
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCopy(__pyx_v_self->sct, (&__pyx_v_scatter->sct))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(31, 40, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCopy(__pyx_v_self->sct, (&__pyx_v_scatter->sct))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(31, 40, __pyx_L1_error)
/* "PETSc/Scatter.pyx":41
* cdef Scatter scatter = Scatter()
@@ -103669,7 +110710,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_10copy(struct PyPetscScatter
/* "PETSc/Scatter.pyx":44
*
* @classmethod
- * def toAll(cls, Vec vec not None): # <<<<<<<<<<<<<<
+ * def toAll(cls, Vec vec): # <<<<<<<<<<<<<<
* cdef Scatter scatter = Scatter()
* cdef Vec ovec = Vec()
*/
@@ -103690,6 +110731,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_13toAll(PyObject *__pyx_v_cl
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -103740,7 +110782,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_12toAll(CYTHON_UNUSED PyType
/* "PETSc/Scatter.pyx":45
* @classmethod
- * def toAll(cls, Vec vec not None):
+ * def toAll(cls, Vec vec):
* cdef Scatter scatter = Scatter() # <<<<<<<<<<<<<<
* cdef Vec ovec = Vec()
* CHKERR( VecScatterCreateToAll(
@@ -103751,7 +110793,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_12toAll(CYTHON_UNUSED PyType
__pyx_t_1 = 0;
/* "PETSc/Scatter.pyx":46
- * def toAll(cls, Vec vec not None):
+ * def toAll(cls, Vec vec):
* cdef Scatter scatter = Scatter()
* cdef Vec ovec = Vec() # <<<<<<<<<<<<<<
* CHKERR( VecScatterCreateToAll(
@@ -103769,7 +110811,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_12toAll(CYTHON_UNUSED PyType
* vec.vec, &scatter.sct, &ovec.vec) )
* return (scatter, ovec)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCreateToAll(__pyx_v_vec->vec, (&__pyx_v_scatter->sct), (&__pyx_v_ovec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(31, 47, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCreateToAll(__pyx_v_vec->vec, (&__pyx_v_scatter->sct), (&__pyx_v_ovec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(31, 47, __pyx_L1_error)
/* "PETSc/Scatter.pyx":49
* CHKERR( VecScatterCreateToAll(
@@ -103794,7 +110836,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_12toAll(CYTHON_UNUSED PyType
/* "PETSc/Scatter.pyx":44
*
* @classmethod
- * def toAll(cls, Vec vec not None): # <<<<<<<<<<<<<<
+ * def toAll(cls, Vec vec): # <<<<<<<<<<<<<<
* cdef Scatter scatter = Scatter()
* cdef Vec ovec = Vec()
*/
@@ -103815,7 +110857,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_12toAll(CYTHON_UNUSED PyType
/* "PETSc/Scatter.pyx":52
*
* @classmethod
- * def toZero(cls, Vec vec not None): # <<<<<<<<<<<<<<
+ * def toZero(cls, Vec vec): # <<<<<<<<<<<<<<
* cdef Scatter scatter = Scatter()
* cdef Vec ovec = Vec()
*/
@@ -103836,6 +110878,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_15toZero(PyObject *__pyx_v_c
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -103886,7 +110929,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_14toZero(CYTHON_UNUSED PyTyp
/* "PETSc/Scatter.pyx":53
* @classmethod
- * def toZero(cls, Vec vec not None):
+ * def toZero(cls, Vec vec):
* cdef Scatter scatter = Scatter() # <<<<<<<<<<<<<<
* cdef Vec ovec = Vec()
* CHKERR( VecScatterCreateToZero(
@@ -103897,7 +110940,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_14toZero(CYTHON_UNUSED PyTyp
__pyx_t_1 = 0;
/* "PETSc/Scatter.pyx":54
- * def toZero(cls, Vec vec not None):
+ * def toZero(cls, Vec vec):
* cdef Scatter scatter = Scatter()
* cdef Vec ovec = Vec() # <<<<<<<<<<<<<<
* CHKERR( VecScatterCreateToZero(
@@ -103915,7 +110958,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_14toZero(CYTHON_UNUSED PyTyp
* vec.vec, &scatter.sct, &ovec.vec) )
* return (scatter, ovec)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCreateToZero(__pyx_v_vec->vec, (&__pyx_v_scatter->sct), (&__pyx_v_ovec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(31, 55, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterCreateToZero(__pyx_v_vec->vec, (&__pyx_v_scatter->sct), (&__pyx_v_ovec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(31, 55, __pyx_L1_error)
/* "PETSc/Scatter.pyx":57
* CHKERR( VecScatterCreateToZero(
@@ -103940,7 +110983,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_14toZero(CYTHON_UNUSED PyTyp
/* "PETSc/Scatter.pyx":52
*
* @classmethod
- * def toZero(cls, Vec vec not None): # <<<<<<<<<<<<<<
+ * def toZero(cls, Vec vec): # <<<<<<<<<<<<<<
* cdef Scatter scatter = Scatter()
* cdef Vec ovec = Vec()
*/
@@ -103961,9 +111004,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_14toZero(CYTHON_UNUSED PyTyp
/* "PETSc/Scatter.pyx":60
* #
*
- * def begin(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def begin(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* Python wrapper */
@@ -103980,14 +111023,6 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_17begin(PyObject *__pyx_v_se
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vec_from,&__pyx_n_s_vec_to,&__pyx_n_s_addv,&__pyx_n_s_mode,0};
PyObject* values[4] = {0,0,0,0};
-
- /* "PETSc/Scatter.pyx":61
- *
- * def begin(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None): # <<<<<<<<<<<<<<
- * cdef PetscInsertMode caddv = insertmode(addv)
- * cdef PetscScatterMode csctm = scattermode(mode)
- */
values[2] = ((PyObject *)Py_None);
values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
@@ -103995,9 +111030,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_17begin(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -104006,16 +111045,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_17begin(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_from)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_to)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("begin", 0, 2, 4, 1); __PYX_ERR(31, 60, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -104028,7 +111070,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_17begin(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -104052,14 +111096,6 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_17begin(PyObject *__pyx_v_se
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 60, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_7Scatter_16begin(((struct PyPetscScatterObject *)__pyx_v_self), __pyx_v_vec_from, __pyx_v_vec_to, __pyx_v_addv, __pyx_v_mode);
- /* "PETSc/Scatter.pyx":60
- * #
- *
- * def begin(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
- * cdef PetscInsertMode caddv = insertmode(addv)
- */
-
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
@@ -104079,41 +111115,41 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_16begin(struct PyPetscScatte
int __pyx_t_3;
__Pyx_RefNannySetupContext("begin", 0);
- /* "PETSc/Scatter.pyx":62
- * def begin(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":61
+ *
+ * def begin(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(31, 62, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(31, 61, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Scatter.pyx":63
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":62
+ * def begin(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
* caddv, csctm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(31, 63, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(31, 62, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Scatter.pyx":64
+ /* "PETSc/Scatter.pyx":63
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec, # <<<<<<<<<<<<<<
* caddv, csctm) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterBegin(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(31, 64, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterBegin(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(31, 63, __pyx_L1_error)
/* "PETSc/Scatter.pyx":60
* #
*
- * def begin(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def begin(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* function exit code */
@@ -104128,12 +111164,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_16begin(struct PyPetscScatte
return __pyx_r;
}
-/* "PETSc/Scatter.pyx":67
+/* "PETSc/Scatter.pyx":66
* caddv, csctm) )
*
- * def end(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def end(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* Python wrapper */
@@ -104150,14 +111186,6 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_19end(PyObject *__pyx_v_self
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vec_from,&__pyx_n_s_vec_to,&__pyx_n_s_addv,&__pyx_n_s_mode,0};
PyObject* values[4] = {0,0,0,0};
-
- /* "PETSc/Scatter.pyx":68
- *
- * def end(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None): # <<<<<<<<<<<<<<
- * cdef PetscInsertMode caddv = insertmode(addv)
- * cdef PetscScatterMode csctm = scattermode(mode)
- */
values[2] = ((PyObject *)Py_None);
values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
@@ -104165,9 +111193,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_19end(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -104176,16 +111208,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_19end(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_from)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_to)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("end", 0, 2, 4, 1); __PYX_ERR(31, 67, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("end", 0, 2, 4, 1); __PYX_ERR(31, 66, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -104193,12 +111228,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_19end(PyObject *__pyx_v_self
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "end") < 0)) __PYX_ERR(31, 67, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "end") < 0)) __PYX_ERR(31, 66, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -104212,24 +111249,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_19end(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("end", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 67, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("end", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 66, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Scatter.end", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 67, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 67, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 66, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 66, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_7Scatter_18end(((struct PyPetscScatterObject *)__pyx_v_self), __pyx_v_vec_from, __pyx_v_vec_to, __pyx_v_addv, __pyx_v_mode);
- /* "PETSc/Scatter.pyx":67
- * caddv, csctm) )
- *
- * def end(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
- * cdef PetscInsertMode caddv = insertmode(addv)
- */
-
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
@@ -104249,41 +111278,41 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_18end(struct PyPetscScatterO
int __pyx_t_3;
__Pyx_RefNannySetupContext("end", 0);
- /* "PETSc/Scatter.pyx":69
- * def end(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":67
+ *
+ * def end(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(31, 69, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(31, 67, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Scatter.pyx":70
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":68
+ * def end(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec,
* caddv, csctm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(31, 70, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(31, 68, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Scatter.pyx":71
+ /* "PETSc/Scatter.pyx":69
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec, # <<<<<<<<<<<<<<
* caddv, csctm) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterEnd(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(31, 71, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterEnd(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(31, 69, __pyx_L1_error)
- /* "PETSc/Scatter.pyx":67
+ /* "PETSc/Scatter.pyx":66
* caddv, csctm) )
*
- * def end(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def end(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* function exit code */
@@ -104298,12 +111327,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_18end(struct PyPetscScatterO
return __pyx_r;
}
-/* "PETSc/Scatter.pyx":76
+/* "PETSc/Scatter.pyx":74
* #
*
- * def scatterBegin(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def scatterBegin(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* Python wrapper */
@@ -104320,14 +111349,6 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_21scatterBegin(PyObject *__p
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vec_from,&__pyx_n_s_vec_to,&__pyx_n_s_addv,&__pyx_n_s_mode,0};
PyObject* values[4] = {0,0,0,0};
-
- /* "PETSc/Scatter.pyx":77
- *
- * def scatterBegin(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None): # <<<<<<<<<<<<<<
- * cdef PetscInsertMode caddv = insertmode(addv)
- * cdef PetscScatterMode csctm = scattermode(mode)
- */
values[2] = ((PyObject *)Py_None);
values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
@@ -104335,9 +111356,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_21scatterBegin(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -104346,16 +111371,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_21scatterBegin(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_from)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_to)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("scatterBegin", 0, 2, 4, 1); __PYX_ERR(31, 76, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("scatterBegin", 0, 2, 4, 1); __PYX_ERR(31, 74, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -104363,12 +111391,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_21scatterBegin(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scatterBegin") < 0)) __PYX_ERR(31, 76, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scatterBegin") < 0)) __PYX_ERR(31, 74, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -104382,24 +111412,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_21scatterBegin(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("scatterBegin", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 76, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("scatterBegin", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 74, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Scatter.scatterBegin", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 76, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 76, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 74, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 74, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_7Scatter_20scatterBegin(((struct PyPetscScatterObject *)__pyx_v_self), __pyx_v_vec_from, __pyx_v_vec_to, __pyx_v_addv, __pyx_v_mode);
- /* "PETSc/Scatter.pyx":76
- * #
- *
- * def scatterBegin(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
- * cdef PetscInsertMode caddv = insertmode(addv)
- */
-
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
@@ -104419,41 +111441,41 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_20scatterBegin(struct PyPets
int __pyx_t_3;
__Pyx_RefNannySetupContext("scatterBegin", 0);
- /* "PETSc/Scatter.pyx":78
- * def scatterBegin(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":75
+ *
+ * def scatterBegin(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(31, 78, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(31, 75, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Scatter.pyx":79
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":76
+ * def scatterBegin(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
* caddv, csctm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(31, 79, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(31, 76, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Scatter.pyx":80
+ /* "PETSc/Scatter.pyx":77
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec, # <<<<<<<<<<<<<<
* caddv, csctm) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterBegin(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(31, 80, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterBegin(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(31, 77, __pyx_L1_error)
- /* "PETSc/Scatter.pyx":76
+ /* "PETSc/Scatter.pyx":74
* #
*
- * def scatterBegin(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def scatterBegin(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* function exit code */
@@ -104468,12 +111490,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_20scatterBegin(struct PyPets
return __pyx_r;
}
-/* "PETSc/Scatter.pyx":83
+/* "PETSc/Scatter.pyx":80
* caddv, csctm) )
*
- * def scatterEnd(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def scatterEnd(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* Python wrapper */
@@ -104490,14 +111512,6 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_23scatterEnd(PyObject *__pyx
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vec_from,&__pyx_n_s_vec_to,&__pyx_n_s_addv,&__pyx_n_s_mode,0};
PyObject* values[4] = {0,0,0,0};
-
- /* "PETSc/Scatter.pyx":84
- *
- * def scatterEnd(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None): # <<<<<<<<<<<<<<
- * cdef PetscInsertMode caddv = insertmode(addv)
- * cdef PetscScatterMode csctm = scattermode(mode)
- */
values[2] = ((PyObject *)Py_None);
values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
@@ -104505,9 +111519,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_23scatterEnd(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -104516,16 +111534,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_23scatterEnd(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_from)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_to)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("scatterEnd", 0, 2, 4, 1); __PYX_ERR(31, 83, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("scatterEnd", 0, 2, 4, 1); __PYX_ERR(31, 80, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -104533,12 +111554,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_23scatterEnd(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scatterEnd") < 0)) __PYX_ERR(31, 83, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scatterEnd") < 0)) __PYX_ERR(31, 80, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -104552,24 +111575,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_23scatterEnd(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("scatterEnd", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 83, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("scatterEnd", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 80, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Scatter.scatterEnd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 83, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 83, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 80, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 80, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_7Scatter_22scatterEnd(((struct PyPetscScatterObject *)__pyx_v_self), __pyx_v_vec_from, __pyx_v_vec_to, __pyx_v_addv, __pyx_v_mode);
- /* "PETSc/Scatter.pyx":83
- * caddv, csctm) )
- *
- * def scatterEnd(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
- * cdef PetscInsertMode caddv = insertmode(addv)
- */
-
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
@@ -104589,41 +111604,41 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_22scatterEnd(struct PyPetscS
int __pyx_t_3;
__Pyx_RefNannySetupContext("scatterEnd", 0);
- /* "PETSc/Scatter.pyx":85
- * def scatterEnd(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":81
+ *
+ * def scatterEnd(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(31, 85, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(31, 81, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Scatter.pyx":86
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":82
+ * def scatterEnd(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec,
* caddv, csctm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(31, 86, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(31, 82, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Scatter.pyx":87
+ /* "PETSc/Scatter.pyx":83
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec, # <<<<<<<<<<<<<<
* caddv, csctm) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterEnd(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(31, 87, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterEnd(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(31, 83, __pyx_L1_error)
- /* "PETSc/Scatter.pyx":83
+ /* "PETSc/Scatter.pyx":80
* caddv, csctm) )
*
- * def scatterEnd(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def scatterEnd(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* function exit code */
@@ -104638,12 +111653,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_22scatterEnd(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/Scatter.pyx":90
+/* "PETSc/Scatter.pyx":86
* caddv, csctm) )
*
- * def scatter(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def scatter(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* Python wrapper */
@@ -104660,14 +111675,6 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_25scatter(PyObject *__pyx_v_
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vec_from,&__pyx_n_s_vec_to,&__pyx_n_s_addv,&__pyx_n_s_mode,0};
PyObject* values[4] = {0,0,0,0};
-
- /* "PETSc/Scatter.pyx":91
- *
- * def scatter(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None): # <<<<<<<<<<<<<<
- * cdef PetscInsertMode caddv = insertmode(addv)
- * cdef PetscScatterMode csctm = scattermode(mode)
- */
values[2] = ((PyObject *)Py_None);
values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
@@ -104675,9 +111682,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_25scatter(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -104686,16 +111697,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_25scatter(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_from)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec_to)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("scatter", 0, 2, 4, 1); __PYX_ERR(31, 90, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("scatter", 0, 2, 4, 1); __PYX_ERR(31, 86, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mode);
@@ -104703,12 +111717,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_25scatter(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scatter") < 0)) __PYX_ERR(31, 90, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scatter") < 0)) __PYX_ERR(31, 86, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -104722,24 +111738,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Scatter_25scatter(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("scatter", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 90, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("scatter", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(31, 86, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Scatter.scatter", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 90, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 90, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_from), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_from", 0))) __PYX_ERR(31, 86, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec_to), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec_to", 0))) __PYX_ERR(31, 86, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_7Scatter_24scatter(((struct PyPetscScatterObject *)__pyx_v_self), __pyx_v_vec_from, __pyx_v_vec_to, __pyx_v_addv, __pyx_v_mode);
- /* "PETSc/Scatter.pyx":90
- * caddv, csctm) )
- *
- * def scatter(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
- * cdef PetscInsertMode caddv = insertmode(addv)
- */
-
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
@@ -104759,50 +111767,50 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Scatter_24scatter(struct PyPetscScat
int __pyx_t_3;
__Pyx_RefNannySetupContext("scatter", 0);
- /* "PETSc/Scatter.pyx":92
- * def scatter(self, Vec vec_from not None, Vec vec_to not None,
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":87
+ *
+ * def scatter(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(31, 92, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(31, 87, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Scatter.pyx":93
- * addv=None, mode=None):
+ /* "PETSc/Scatter.pyx":88
+ * def scatter(self, Vec vec_from, Vec vec_to, addv=None, mode=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode) # <<<<<<<<<<<<<<
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
* caddv, csctm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)-1L))) __PYX_ERR(31, 93, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_scattermode(__pyx_v_mode); if (unlikely(__pyx_t_2 == ((ScatterMode)((ScatterMode)-1L)))) __PYX_ERR(31, 88, __pyx_L1_error)
__pyx_v_csctm = __pyx_t_2;
- /* "PETSc/Scatter.pyx":94
+ /* "PETSc/Scatter.pyx":89
* cdef PetscInsertMode caddv = insertmode(addv)
* cdef PetscScatterMode csctm = scattermode(mode)
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec, # <<<<<<<<<<<<<<
* caddv, csctm) )
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec,
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterBegin(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(31, 94, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterBegin(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(31, 89, __pyx_L1_error)
- /* "PETSc/Scatter.pyx":96
+ /* "PETSc/Scatter.pyx":91
* CHKERR( VecScatterBegin(self.sct, vec_from.vec, vec_to.vec,
* caddv, csctm) )
* CHKERR( VecScatterEnd(self.sct, vec_from.vec, vec_to.vec, # <<<<<<<<<<<<<<
* caddv, csctm) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterEnd(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(31, 96, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecScatterEnd(__pyx_v_self->sct, __pyx_v_vec_from->vec, __pyx_v_vec_to->vec, __pyx_v_caddv, __pyx_v_csctm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(31, 91, __pyx_L1_error)
- /* "PETSc/Scatter.pyx":90
+ /* "PETSc/Scatter.pyx":86
* caddv, csctm) )
*
- * def scatter(self, Vec vec_from not None, Vec vec_to not None, # <<<<<<<<<<<<<<
- * addv=None, mode=None):
+ * def scatter(self, Vec vec_from, Vec vec_to, addv=None, mode=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
+ * cdef PetscScatterMode csctm = scattermode(mode)
*/
/* function exit code */
@@ -104909,7 +111917,7 @@ static void __pyx_pf_8petsc4py_5PETSc_7Section_2__dealloc__(struct PyPetscSectio
* self.sec = NULL
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionDestroy((&__pyx_v_self->sec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 10, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionDestroy((&__pyx_v_self->sec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 10, __pyx_L1_error)
/* "PETSc/Section.pyx":11
* def __dealloc__(self):
@@ -104931,7 +111939,7 @@ static void __pyx_pf_8petsc4py_5PETSc_7Section_2__dealloc__(struct PyPetscSectio
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc.Section.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.Section.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
@@ -104961,6 +111969,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_5view(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -104978,6 +111987,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_5view(PyObject *__pyx_v_self
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -105044,7 +112054,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_4view(struct PyPetscSectionO
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionView(__pyx_v_self->sec, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(32, 16, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionView(__pyx_v_self->sec, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(32, 16, __pyx_L1_error)
/* "PETSc/Section.pyx":13
* self.sec = NULL
@@ -105104,7 +112114,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_6destroy(struct PyPetscSecti
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionDestroy((&__pyx_v_self->sec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 19, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionDestroy((&__pyx_v_self->sec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 19, __pyx_L1_error)
/* "PETSc/Section.pyx":20
* def destroy(self):
@@ -105161,6 +112171,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_9create(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -105178,6 +112189,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_9create(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -105234,7 +112246,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_8create(struct PyPetscSectio
* PetscCLEAR(self.obj); self.sec = newsec
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionCreate(__pyx_v_ccomm, (&__pyx_v_newsec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 25, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionCreate(__pyx_v_ccomm, (&__pyx_v_newsec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 25, __pyx_L1_error)
/* "PETSc/Section.pyx":26
* cdef PetscSection newsec = NULL
@@ -105320,7 +112332,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_10clone(struct PyPetscSectio
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -105350,7 +112362,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_10clone(struct PyPetscSectio
* return sec
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionClone(__pyx_v_self->sec, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(32, 31, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionClone(__pyx_v_self->sec, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(32, 31, __pyx_L1_error)
/* "PETSc/Section.pyx":32
* cdef Section sec = <Section>type(self)()
@@ -105424,7 +112436,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_12setUp(struct PyPetscSectio
*
* def reset(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetUp(__pyx_v_self->sec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 35, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetUp(__pyx_v_self->sec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 35, __pyx_L1_error)
/* "PETSc/Section.pyx":34
* return sec
@@ -105484,7 +112496,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_14reset(struct PyPetscSectio
*
* def getNumFields(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionReset(__pyx_v_self->sec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 38, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionReset(__pyx_v_self->sec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 38, __pyx_L1_error)
/* "PETSc/Section.pyx":37
* CHKERR( PetscSectionSetUp(self.sec) )
@@ -105555,7 +112567,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_16getNumFields(struct PyPets
* return toInt(numFields)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetNumFields(__pyx_v_self->sec, (&__pyx_v_numFields))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 42, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetNumFields(__pyx_v_self->sec, (&__pyx_v_numFields))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 42, __pyx_L1_error)
/* "PETSc/Section.pyx":43
* cdef PetscInt numFields = 0
@@ -105614,6 +112626,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_19setNumFields(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -105663,7 +112676,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_18setNumFields(struct PyPets
* CHKERR( PetscSectionSetNumFields(self.sec, cnumFields) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numFields); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 46, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numFields); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 46, __pyx_L1_error)
__pyx_v_cnumFields = __pyx_t_1;
/* "PETSc/Section.pyx":47
@@ -105673,7 +112686,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_18setNumFields(struct PyPets
*
* def getFieldName(self,field):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetNumFields(__pyx_v_self->sec, __pyx_v_cnumFields)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 47, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetNumFields(__pyx_v_self->sec, __pyx_v_cnumFields)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 47, __pyx_L1_error)
/* "PETSc/Section.pyx":45
* return toInt(numFields)
@@ -105719,6 +112732,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_21getFieldName(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -105770,7 +112784,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_20getFieldName(struct PyPets
* cdef const_char *fieldName = NULL
* CHKERR( PetscSectionGetFieldName(self.sec,cfield,&fieldName) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 50, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 50, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":51
@@ -105789,7 +112803,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_20getFieldName(struct PyPets
* return bytes2str(fieldName)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldName(__pyx_v_self->sec, __pyx_v_cfield, (&__pyx_v_fieldName))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 52, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldName(__pyx_v_self->sec, __pyx_v_cfield, (&__pyx_v_fieldName))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 52, __pyx_L1_error)
/* "PETSc/Section.pyx":53
* cdef const_char *fieldName = NULL
@@ -105849,7 +112863,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_23setFieldName(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -105858,6 +112874,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_23setFieldName(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fieldName)) != 0)) kw_args--;
else {
@@ -105909,7 +112926,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_22setFieldName(struct PyPets
* cdef const_char *cname = NULL
* fieldName = str2bytes(fieldName, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 56, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 56, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":57
@@ -105940,7 +112957,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_22setFieldName(struct PyPets
*
* def getFieldComponents(self,field):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldName(__pyx_v_self->sec, __pyx_v_cfield, __pyx_v_cname)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(32, 59, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldName(__pyx_v_self->sec, __pyx_v_cfield, __pyx_v_cname)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(32, 59, __pyx_L1_error)
/* "PETSc/Section.pyx":55
* return bytes2str(fieldName)
@@ -105988,6 +113005,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_25getFieldComponents(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106039,7 +113057,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_24getFieldComponents(struct
* CHKERR( PetscSectionGetFieldComponents(self.sec,cfield,&cnumComp) )
* return toInt(cnumComp)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 62, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 62, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
__pyx_v_cnumComp = 0;
@@ -106050,7 +113068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_24getFieldComponents(struct
* return toInt(cnumComp)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldComponents(__pyx_v_self->sec, __pyx_v_cfield, (&__pyx_v_cnumComp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 63, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldComponents(__pyx_v_self->sec, __pyx_v_cfield, (&__pyx_v_cnumComp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 63, __pyx_L1_error)
/* "PETSc/Section.pyx":64
* cdef PetscInt cfield = asInt(field), cnumComp = 0
@@ -106110,7 +113128,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_27setFieldComponents(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106119,6 +113139,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_27setFieldComponents(PyObjec
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numComp)) != 0)) kw_args--;
else {
@@ -106168,7 +113189,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_26setFieldComponents(struct
* cdef PetscInt cnumComp = asInt(numComp)
* CHKERR( PetscSectionSetFieldComponents(self.sec,cfield,cnumComp) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 67, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 67, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":68
@@ -106178,7 +113199,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_26setFieldComponents(struct
* CHKERR( PetscSectionSetFieldComponents(self.sec,cfield,cnumComp) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numComp); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 68, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numComp); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 68, __pyx_L1_error)
__pyx_v_cnumComp = __pyx_t_1;
/* "PETSc/Section.pyx":69
@@ -106188,7 +113209,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_26setFieldComponents(struct
*
* def getChart(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldComponents(__pyx_v_self->sec, __pyx_v_cfield, __pyx_v_cnumComp)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 69, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldComponents(__pyx_v_self->sec, __pyx_v_cfield, __pyx_v_cnumComp)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 69, __pyx_L1_error)
/* "PETSc/Section.pyx":66
* return toInt(cnumComp)
@@ -106263,7 +113284,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_28getChart(struct PyPetscSec
* return toInt(pStart), toInt(pEnd)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetChart(__pyx_v_self->sec, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 73, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetChart(__pyx_v_self->sec, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 73, __pyx_L1_error)
/* "PETSc/Section.pyx":74
* cdef PetscInt pStart = 0, pEnd = 0
@@ -106335,7 +113356,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_31setChart(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106344,6 +113367,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_31setChart(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pStart)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pEnd)) != 0)) kw_args--;
else {
@@ -106393,7 +113417,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_30setChart(struct PyPetscSec
* cdef PetscInt cEnd = asInt(pEnd)
* CHKERR( PetscSectionSetChart(self.sec, cStart, cEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pStart); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 77, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pStart); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 77, __pyx_L1_error)
__pyx_v_cStart = __pyx_t_1;
/* "PETSc/Section.pyx":78
@@ -106403,7 +113427,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_30setChart(struct PyPetscSec
* CHKERR( PetscSectionSetChart(self.sec, cStart, cEnd) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pEnd); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 78, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pEnd); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 78, __pyx_L1_error)
__pyx_v_cEnd = __pyx_t_1;
/* "PETSc/Section.pyx":79
@@ -106413,7 +113437,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_30setChart(struct PyPetscSec
*
* def getDof(self,point):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetChart(__pyx_v_self->sec, __pyx_v_cStart, __pyx_v_cEnd)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 79, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetChart(__pyx_v_self->sec, __pyx_v_cStart, __pyx_v_cEnd)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 79, __pyx_L1_error)
/* "PETSc/Section.pyx":76
* return toInt(pStart), toInt(pEnd)
@@ -106459,6 +113483,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_33getDof(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106510,7 +113535,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_32getDof(struct PyPetscSecti
* CHKERR( PetscSectionGetDof(self.sec,cpoint,&cnumDof) )
* return toInt(cnumDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 82, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 82, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
__pyx_v_cnumDof = 0;
@@ -106521,7 +113546,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_32getDof(struct PyPetscSecti
* return toInt(cnumDof)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetDof(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 83, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetDof(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 83, __pyx_L1_error)
/* "PETSc/Section.pyx":84
* cdef PetscInt cpoint = asInt(point), cnumDof = 0
@@ -106581,7 +113606,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_35setDof(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106590,6 +113617,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_35setDof(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -106639,7 +113667,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_34setDof(struct PyPetscSecti
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionSetDof(self.sec,cpoint,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 87, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 87, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":88
@@ -106649,7 +113677,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_34setDof(struct PyPetscSecti
* CHKERR( PetscSectionSetDof(self.sec,cpoint,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 88, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 88, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":89
@@ -106659,7 +113687,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_34setDof(struct PyPetscSecti
*
* def addDof(self,point,numDof):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 89, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 89, __pyx_L1_error)
/* "PETSc/Section.pyx":86
* return toInt(cnumDof)
@@ -106706,7 +113734,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_37addDof(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106715,6 +113745,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_37addDof(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -106764,7 +113795,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_36addDof(struct PyPetscSecti
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionAddDof(self.sec,cpoint,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 92, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 92, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":93
@@ -106774,7 +113805,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_36addDof(struct PyPetscSecti
* CHKERR( PetscSectionAddDof(self.sec,cpoint,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 93, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 93, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":94
@@ -106784,7 +113815,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_36addDof(struct PyPetscSecti
*
* def getFieldDof(self,point,field):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 94, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 94, __pyx_L1_error)
/* "PETSc/Section.pyx":91
* CHKERR( PetscSectionSetDof(self.sec,cpoint,cnumDof) )
@@ -106831,7 +113862,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_39getFieldDof(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106840,6 +113873,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_39getFieldDof(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
@@ -106891,7 +113925,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_38getFieldDof(struct PyPetsc
* cdef PetscInt cfield = asInt(field)
* CHKERR( PetscSectionGetFieldDof(self.sec,cpoint,cfield,&cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 97, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 97, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
__pyx_v_cnumDof = 0;
@@ -106902,7 +113936,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_38getFieldDof(struct PyPetsc
* CHKERR( PetscSectionGetFieldDof(self.sec,cpoint,cfield,&cnumDof) )
* return toInt(cnumDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 98, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 98, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":99
@@ -106912,7 +113946,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_38getFieldDof(struct PyPetsc
* return toInt(cnumDof)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 99, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 99, __pyx_L1_error)
/* "PETSc/Section.pyx":100
* cdef PetscInt cfield = asInt(field)
@@ -106973,8 +114007,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_41setFieldDof(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -106983,11 +114020,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_41setFieldDof(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setFieldDof", 1, 3, 3, 1); __PYX_ERR(32, 102, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -107040,7 +114079,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_40setFieldDof(struct PyPetsc
* cdef PetscInt cfield = asInt(field)
* cdef PetscInt cnumDof = asInt(numDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 103, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 103, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":104
@@ -107050,7 +114089,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_40setFieldDof(struct PyPetsc
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionSetFieldDof(self.sec,cpoint,cfield,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 104, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 104, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":105
@@ -107060,7 +114099,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_40setFieldDof(struct PyPetsc
* CHKERR( PetscSectionSetFieldDof(self.sec,cpoint,cfield,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 105, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 105, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":106
@@ -107070,7 +114109,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_40setFieldDof(struct PyPetsc
*
* def addFieldDof(self,point,field,numDof):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 106, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 106, __pyx_L1_error)
/* "PETSc/Section.pyx":102
* return toInt(cnumDof)
@@ -107118,8 +114157,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_43addFieldDof(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -107128,11 +114170,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_43addFieldDof(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("addFieldDof", 1, 3, 3, 1); __PYX_ERR(32, 108, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -107185,7 +114229,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_42addFieldDof(struct PyPetsc
* cdef PetscInt cfield = asInt(field)
* cdef PetscInt cnumDof = asInt(numDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 109, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 109, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":110
@@ -107195,7 +114239,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_42addFieldDof(struct PyPetsc
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionAddFieldDof(self.sec,cpoint,cfield,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 110, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 110, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":111
@@ -107205,7 +114249,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_42addFieldDof(struct PyPetsc
* CHKERR( PetscSectionAddFieldDof(self.sec,cpoint,cfield,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 111, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 111, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":112
@@ -107215,7 +114259,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_42addFieldDof(struct PyPetsc
*
* def getConstraintDof(self,point):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddFieldDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 112, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddFieldDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 112, __pyx_L1_error)
/* "PETSc/Section.pyx":108
* CHKERR( PetscSectionSetFieldDof(self.sec,cpoint,cfield,cnumDof) )
@@ -107261,6 +114305,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_45getConstraintDof(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -107312,7 +114357,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_44getConstraintDof(struct Py
* CHKERR( PetscSectionGetConstraintDof(self.sec,cpoint,&cnumDof) )
* return toInt(cnumDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 115, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 115, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
__pyx_v_cnumDof = 0;
@@ -107323,7 +114368,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_44getConstraintDof(struct Py
* return toInt(cnumDof)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 116, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 116, __pyx_L1_error)
/* "PETSc/Section.pyx":117
* cdef PetscInt cpoint = asInt(point), cnumDof = 0
@@ -107383,7 +114428,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_47setConstraintDof(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -107392,6 +114439,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_47setConstraintDof(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -107441,7 +114489,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_46setConstraintDof(struct Py
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionSetConstraintDof(self.sec,cpoint,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 120, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 120, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":121
@@ -107451,7 +114499,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_46setConstraintDof(struct Py
* CHKERR( PetscSectionSetConstraintDof(self.sec,cpoint,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 121, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 121, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":122
@@ -107461,7 +114509,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_46setConstraintDof(struct Py
*
* def addConstraintDof(self,point,numDof):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 122, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 122, __pyx_L1_error)
/* "PETSc/Section.pyx":119
* return toInt(cnumDof)
@@ -107508,7 +114556,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_49addConstraintDof(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -107517,6 +114567,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_49addConstraintDof(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -107566,7 +114617,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_48addConstraintDof(struct Py
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionAddConstraintDof(self.sec,cpoint,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 125, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 125, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":126
@@ -107576,7 +114627,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_48addConstraintDof(struct Py
* CHKERR( PetscSectionAddConstraintDof(self.sec,cpoint,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 126, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 126, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":127
@@ -107586,7 +114637,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_48addConstraintDof(struct Py
*
* def getFieldConstraintDof(self,point,field):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 127, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 127, __pyx_L1_error)
/* "PETSc/Section.pyx":124
* CHKERR( PetscSectionSetConstraintDof(self.sec,cpoint,cnumDof) )
@@ -107633,7 +114684,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_51getFieldConstraintDof(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -107642,6 +114695,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_51getFieldConstraintDof(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
@@ -107693,7 +114747,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_50getFieldConstraintDof(stru
* cdef PetscInt cfield = asInt(field)
* CHKERR( PetscSectionGetFieldConstraintDof(self.sec,cpoint,cfield,&cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 130, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 130, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
__pyx_v_cnumDof = 0;
@@ -107704,7 +114758,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_50getFieldConstraintDof(stru
* CHKERR( PetscSectionGetFieldConstraintDof(self.sec,cpoint,cfield,&cnumDof) )
* return toInt(cnumDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 131, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 131, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":132
@@ -107714,7 +114768,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_50getFieldConstraintDof(stru
* return toInt(cnumDof)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 132, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_cnumDof))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 132, __pyx_L1_error)
/* "PETSc/Section.pyx":133
* cdef PetscInt cfield = asInt(field)
@@ -107775,8 +114829,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_53setFieldConstraintDof(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -107785,11 +114842,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_53setFieldConstraintDof(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setFieldConstraintDof", 1, 3, 3, 1); __PYX_ERR(32, 135, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -107842,7 +114901,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_52setFieldConstraintDof(stru
* cdef PetscInt cfield = asInt(field)
* cdef PetscInt cnumDof = asInt(numDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 136, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 136, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":137
@@ -107852,7 +114911,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_52setFieldConstraintDof(stru
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionSetFieldConstraintDof(self.sec,cpoint,cfield,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 137, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 137, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":138
@@ -107862,7 +114921,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_52setFieldConstraintDof(stru
* CHKERR( PetscSectionSetFieldConstraintDof(self.sec,cpoint,cfield,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 138, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 138, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":139
@@ -107872,7 +114931,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_52setFieldConstraintDof(stru
*
* def addFieldConstraintDof(self,point,field,numDof):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 139, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 139, __pyx_L1_error)
/* "PETSc/Section.pyx":135
* return toInt(cnumDof)
@@ -107920,8 +114979,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_55addFieldConstraintDof(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -107930,11 +114992,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_55addFieldConstraintDof(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("addFieldConstraintDof", 1, 3, 3, 1); __PYX_ERR(32, 141, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
@@ -107987,7 +115051,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_54addFieldConstraintDof(stru
* cdef PetscInt cfield = asInt(field)
* cdef PetscInt cnumDof = asInt(numDof)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 142, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 142, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":143
@@ -107997,7 +115061,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_54addFieldConstraintDof(stru
* cdef PetscInt cnumDof = asInt(numDof)
* CHKERR( PetscSectionAddFieldConstraintDof(self.sec,cpoint,cfield,cnumDof) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 143, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 143, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":144
@@ -108007,7 +115071,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_54addFieldConstraintDof(stru
* CHKERR( PetscSectionAddFieldConstraintDof(self.sec,cpoint,cfield,cnumDof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 144, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numDof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 144, __pyx_L1_error)
__pyx_v_cnumDof = __pyx_t_1;
/* "PETSc/Section.pyx":145
@@ -108017,7 +115081,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_54addFieldConstraintDof(stru
*
* def getConstraintIndices(self,point):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 145, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionAddFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cnumDof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 145, __pyx_L1_error)
/* "PETSc/Section.pyx":141
* CHKERR( PetscSectionSetFieldConstraintDof(self.sec,cpoint,cfield,cnumDof) )
@@ -108063,6 +115127,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_57getConstraintIndices(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -108115,7 +115180,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_56getConstraintIndices(struc
* cdef PetscInt nindex = 0
* cdef const_PetscInt *indices = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 148, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 148, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":149
@@ -108143,7 +115208,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_56getConstraintIndices(struc
* CHKERR( PetscSectionGetConstraintIndices(self.sec, cpoint, &indices) )
* return array_i(nindex, indices)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_nindex))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 151, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_nindex))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 151, __pyx_L1_error)
/* "PETSc/Section.pyx":152
* cdef const_PetscInt *indices = NULL
@@ -108152,7 +115217,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_56getConstraintIndices(struc
* return array_i(nindex, indices)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 152, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 152, __pyx_L1_error)
/* "PETSc/Section.pyx":153
* CHKERR( PetscSectionGetConstraintDof(self.sec, cpoint, &nindex) )
@@ -108212,7 +115277,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_59setConstraintIndices(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -108221,6 +115288,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_59setConstraintIndices(PyObj
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else {
@@ -108273,7 +115341,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_58setConstraintIndices(struc
* cdef PetscInt nindex = 0
* cdef PetscInt *cindices = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 156, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 156, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":157
@@ -108313,7 +115381,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_58setConstraintIndices(struc
* CHKERR( PetscSectionSetConstraintIndices(self.sec,cpoint,cindices) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_nindex)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(32, 160, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_nindex)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(32, 160, __pyx_L1_error)
/* "PETSc/Section.pyx":161
* indices = iarray_i(indices, &nindex, &cindices)
@@ -108322,7 +115390,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_58setConstraintIndices(struc
*
* def getFieldConstraintIndices(self,point,field):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cindices)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(32, 161, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cindices)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(32, 161, __pyx_L1_error)
/* "PETSc/Section.pyx":155
* return array_i(nindex, indices)
@@ -108371,7 +115439,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_61getFieldConstraintIndices(
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -108380,6 +115450,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_61getFieldConstraintIndices(
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
@@ -108432,7 +115503,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_60getFieldConstraintIndices(
* cdef PetscInt cfield = asInt(field)
* cdef PetscInt nindex = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 164, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 164, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":165
@@ -108442,7 +115513,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_60getFieldConstraintIndices(
* cdef PetscInt nindex = 0
* cdef const_PetscInt *indices = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 165, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 165, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":166
@@ -108470,7 +115541,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_60getFieldConstraintIndices(
* CHKERR( PetscSectionGetFieldConstraintIndices(self.sec,cpoint,cfield,&indices) )
* return array_i(nindex, indices)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_nindex))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 168, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_nindex))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 168, __pyx_L1_error)
/* "PETSc/Section.pyx":169
* cdef const_PetscInt *indices = NULL
@@ -108479,7 +115550,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_60getFieldConstraintIndices(
* return array_i(nindex, indices)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 169, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetFieldConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_indices))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 169, __pyx_L1_error)
/* "PETSc/Section.pyx":170
* CHKERR( PetscSectionGetFieldConstraintDof(self.sec,cpoint,cfield,&nindex) )
@@ -108540,8 +115611,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_63setFieldConstraintIndices(
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -108550,11 +115624,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_63setFieldConstraintIndices(
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setFieldConstraintIndices", 1, 3, 3, 1); __PYX_ERR(32, 172, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indices)) != 0)) kw_args--;
else {
@@ -108610,7 +115686,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_62setFieldConstraintIndices(
* cdef PetscInt cfield = asInt(field)
* cdef PetscInt nindex = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 173, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 173, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":174
@@ -108620,7 +115696,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_62setFieldConstraintIndices(
* cdef PetscInt nindex = 0
* cdef PetscInt *cindices = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 174, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 174, __pyx_L1_error)
__pyx_v_cfield = __pyx_t_1;
/* "PETSc/Section.pyx":175
@@ -108660,7 +115736,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_62setFieldConstraintIndices(
* CHKERR( PetscSectionSetFieldConstraintIndices(self.sec,cpoint,cfield,cindices) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_nindex)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(32, 178, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldConstraintDof(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_nindex)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(32, 178, __pyx_L1_error)
/* "PETSc/Section.pyx":179
* indices = iarray_i(indices, &nindex, &cindices)
@@ -108669,7 +115745,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_62setFieldConstraintIndices(
*
* def getMaxDof(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cindices)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(32, 179, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetFieldConstraintIndices(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_cfield, __pyx_v_cindices)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(32, 179, __pyx_L1_error)
/* "PETSc/Section.pyx":172
* return array_i(nindex, indices)
@@ -108742,7 +115818,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_64getMaxDof(struct PyPetscSe
* return toInt(maxDof)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetMaxDof(__pyx_v_self->sec, (&__pyx_v_maxDof))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 183, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetMaxDof(__pyx_v_self->sec, (&__pyx_v_maxDof))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 183, __pyx_L1_error)
/* "PETSc/Section.pyx":184
* cdef PetscInt maxDof = 0
@@ -108826,7 +115902,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_66getStorageSize(struct PyPe
* return toInt(size)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetStorageSize(__pyx_v_self->sec, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 188, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetStorageSize(__pyx_v_self->sec, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 188, __pyx_L1_error)
/* "PETSc/Section.pyx":189
* cdef PetscInt size = 0
@@ -108910,7 +115986,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_68getConstrainedStorageSize(
* return toInt(size)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstrainedStorageSize(__pyx_v_self->sec, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 193, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetConstrainedStorageSize(__pyx_v_self->sec, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 193, __pyx_L1_error)
/* "PETSc/Section.pyx":194
* cdef PetscInt size = 0
@@ -108969,6 +116045,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_71getOffset(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -109020,7 +116097,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_70getOffset(struct PyPetscSe
* CHKERR( PetscSectionGetOffset(self.sec,cpoint,&offset) )
* return toInt(offset)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 197, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 197, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
__pyx_v_offset = 0;
@@ -109031,7 +116108,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_70getOffset(struct PyPetscSe
* return toInt(offset)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetOffset(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_offset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 198, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetOffset(__pyx_v_self->sec, __pyx_v_cpoint, (&__pyx_v_offset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 198, __pyx_L1_error)
/* "PETSc/Section.pyx":199
* cdef PetscInt cpoint = asInt(point), offset = 0
@@ -109091,7 +116168,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_73setOffset(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -109100,6 +116179,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_73setOffset(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_offset)) != 0)) kw_args--;
else {
@@ -109149,7 +116229,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_72setOffset(struct PyPetscSe
* cdef PetscInt coffset = asInt(offset)
* CHKERR( PetscSectionSetOffset(self.sec,cpoint,coffset) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 202, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 202, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
/* "PETSc/Section.pyx":203
@@ -109159,7 +116239,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_72setOffset(struct PyPetscSe
* CHKERR( PetscSectionSetOffset(self.sec,cpoint,coffset) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_offset); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(32, 203, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_offset); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(32, 203, __pyx_L1_error)
__pyx_v_coffset = __pyx_t_1;
/* "PETSc/Section.pyx":204
@@ -109169,7 +116249,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_72setOffset(struct PyPetscSe
*
* def getOffsetRange(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetOffset(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_coffset)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 204, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionSetOffset(__pyx_v_self->sec, __pyx_v_cpoint, __pyx_v_coffset)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 204, __pyx_L1_error)
/* "PETSc/Section.pyx":201
* return toInt(offset)
@@ -109244,14 +116324,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_74getOffsetRange(struct PyPe
* return toInt(oStart),toInt(oEnd)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetOffsetRange(__pyx_v_self->sec, (&__pyx_v_oStart), (&__pyx_v_oEnd))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(32, 208, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionGetOffsetRange(__pyx_v_self->sec, (&__pyx_v_oStart), (&__pyx_v_oEnd))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(32, 208, __pyx_L1_error)
/* "PETSc/Section.pyx":209
* cdef PetscInt oStart = 0, oEnd = 0
* CHKERR( PetscSectionGetOffsetRange(self.sec,&oStart,&oEnd) )
* return toInt(oStart),toInt(oEnd) # <<<<<<<<<<<<<<
*
- * def createGlobalSection(self, SF sf not None):
+ * def createGlobalSection(self, SF sf):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_oStart); if (unlikely(!__pyx_t_2)) __PYX_ERR(32, 209, __pyx_L1_error)
@@ -109294,7 +116374,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_74getOffsetRange(struct PyPe
/* "PETSc/Section.pyx":211
* return toInt(oStart),toInt(oEnd)
*
- * def createGlobalSection(self, SF sf not None): # <<<<<<<<<<<<<<
+ * def createGlobalSection(self, SF sf): # <<<<<<<<<<<<<<
* cdef Section gsec = Section()
* CHKERR( PetscSectionCreateGlobalSection(self.sec,sf.sf,PETSC_FALSE,PETSC_FALSE,&gsec.sec) )
*/
@@ -109315,6 +116395,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7Section_77createGlobalSection(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -109364,7 +116445,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_76createGlobalSection(struct
/* "PETSc/Section.pyx":212
*
- * def createGlobalSection(self, SF sf not None):
+ * def createGlobalSection(self, SF sf):
* cdef Section gsec = Section() # <<<<<<<<<<<<<<
* CHKERR( PetscSectionCreateGlobalSection(self.sec,sf.sf,PETSC_FALSE,PETSC_FALSE,&gsec.sec) )
* return gsec
@@ -109375,12 +116456,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_76createGlobalSection(struct
__pyx_t_1 = 0;
/* "PETSc/Section.pyx":213
- * def createGlobalSection(self, SF sf not None):
+ * def createGlobalSection(self, SF sf):
* cdef Section gsec = Section()
* CHKERR( PetscSectionCreateGlobalSection(self.sec,sf.sf,PETSC_FALSE,PETSC_FALSE,&gsec.sec) ) # <<<<<<<<<<<<<<
* return gsec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionCreateGlobalSection(__pyx_v_self->sec, __pyx_v_sf->sf, PETSC_FALSE, PETSC_FALSE, (&__pyx_v_gsec->sec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(32, 213, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionCreateGlobalSection(__pyx_v_self->sec, __pyx_v_sf->sf, PETSC_FALSE, PETSC_FALSE, (&__pyx_v_gsec->sec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(32, 213, __pyx_L1_error)
/* "PETSc/Section.pyx":214
* cdef Section gsec = Section()
@@ -109395,7 +116476,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_76createGlobalSection(struct
/* "PETSc/Section.pyx":211
* return toInt(oStart),toInt(oEnd)
*
- * def createGlobalSection(self, SF sf not None): # <<<<<<<<<<<<<<
+ * def createGlobalSection(self, SF sf): # <<<<<<<<<<<<<<
* cdef Section gsec = Section()
* CHKERR( PetscSectionCreateGlobalSection(self.sec,sf.sf,PETSC_FALSE,PETSC_FALSE,&gsec.sec) )
*/
@@ -109412,7 +116493,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7Section_76createGlobalSection(struct
return __pyx_r;
}
-/* "PETSc/Mat.pyx":160
+/* "PETSc/Mat.pyx":154
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -109441,7 +116522,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat___cinit__(struct PyPetscMatObject *__p
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/Mat.pyx":161
+ /* "PETSc/Mat.pyx":155
*
* def __cinit__(self):
* self.obj = <PetscObject*> &self.mat # <<<<<<<<<<<<<<
@@ -109450,7 +116531,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat___cinit__(struct PyPetscMatObject *__p
*/
__pyx_v_self->__pyx_base.obj = ((PetscObject *)(&__pyx_v_self->mat));
- /* "PETSc/Mat.pyx":162
+ /* "PETSc/Mat.pyx":156
* def __cinit__(self):
* self.obj = <PetscObject*> &self.mat
* self.mat = NULL # <<<<<<<<<<<<<<
@@ -109459,7 +116540,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat___cinit__(struct PyPetscMatObject *__p
*/
__pyx_v_self->mat = NULL;
- /* "PETSc/Mat.pyx":160
+ /* "PETSc/Mat.pyx":154
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -109473,7 +116554,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat___cinit__(struct PyPetscMatObject *__p
return __pyx_r;
}
-/* "PETSc/Mat.pyx":166
+/* "PETSc/Mat.pyx":160
* # unary operations
*
* def __pos__(self): # <<<<<<<<<<<<<<
@@ -109500,7 +116581,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_2__pos__(struct PyPetscMatObject
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__pos__", 0);
- /* "PETSc/Mat.pyx":167
+ /* "PETSc/Mat.pyx":161
*
* def __pos__(self):
* return mat_pos(self) # <<<<<<<<<<<<<<
@@ -109508,13 +116589,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_2__pos__(struct PyPetscMatObject
* def __neg__(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 167, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_pos(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 161, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":166
+ /* "PETSc/Mat.pyx":160
* # unary operations
*
* def __pos__(self): # <<<<<<<<<<<<<<
@@ -109533,7 +116614,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_2__pos__(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":169
+/* "PETSc/Mat.pyx":163
* return mat_pos(self)
*
* def __neg__(self): # <<<<<<<<<<<<<<
@@ -109560,7 +116641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4__neg__(struct PyPetscMatObject
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__neg__", 0);
- /* "PETSc/Mat.pyx":170
+ /* "PETSc/Mat.pyx":164
*
* def __neg__(self):
* return mat_neg(self) # <<<<<<<<<<<<<<
@@ -109568,13 +116649,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4__neg__(struct PyPetscMatObject
* # inplace binary operations
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_neg(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 170, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_neg(__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 164, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":169
+ /* "PETSc/Mat.pyx":163
* return mat_pos(self)
*
* def __neg__(self): # <<<<<<<<<<<<<<
@@ -109593,7 +116674,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4__neg__(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":174
+/* "PETSc/Mat.pyx":168
* # inplace binary operations
*
* def __iadd__(self, other): # <<<<<<<<<<<<<<
@@ -109620,7 +116701,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_6__iadd__(struct PyPetscMatObjec
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__iadd__", 0);
- /* "PETSc/Mat.pyx":175
+ /* "PETSc/Mat.pyx":169
*
* def __iadd__(self, other):
* return mat_iadd(self, other) # <<<<<<<<<<<<<<
@@ -109628,13 +116709,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_6__iadd__(struct PyPetscMatObjec
* def __isub__(self, other):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_iadd(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 175, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_iadd(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 169, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":174
+ /* "PETSc/Mat.pyx":168
* # inplace binary operations
*
* def __iadd__(self, other): # <<<<<<<<<<<<<<
@@ -109653,7 +116734,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_6__iadd__(struct PyPetscMatObjec
return __pyx_r;
}
-/* "PETSc/Mat.pyx":177
+/* "PETSc/Mat.pyx":171
* return mat_iadd(self, other)
*
* def __isub__(self, other): # <<<<<<<<<<<<<<
@@ -109680,7 +116761,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_8__isub__(struct PyPetscMatObjec
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__isub__", 0);
- /* "PETSc/Mat.pyx":178
+ /* "PETSc/Mat.pyx":172
*
* def __isub__(self, other):
* return mat_isub(self, other) # <<<<<<<<<<<<<<
@@ -109688,13 +116769,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_8__isub__(struct PyPetscMatObjec
* def __imul__(self, other):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_isub(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 178, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_isub(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 172, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":177
+ /* "PETSc/Mat.pyx":171
* return mat_iadd(self, other)
*
* def __isub__(self, other): # <<<<<<<<<<<<<<
@@ -109713,7 +116794,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_8__isub__(struct PyPetscMatObjec
return __pyx_r;
}
-/* "PETSc/Mat.pyx":180
+/* "PETSc/Mat.pyx":174
* return mat_isub(self, other)
*
* def __imul__(self, other): # <<<<<<<<<<<<<<
@@ -109740,7 +116821,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10__imul__(struct PyPetscMatObje
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__imul__", 0);
- /* "PETSc/Mat.pyx":181
+ /* "PETSc/Mat.pyx":175
*
* def __imul__(self, other):
* return mat_imul(self, other) # <<<<<<<<<<<<<<
@@ -109748,13 +116829,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10__imul__(struct PyPetscMatObje
* def __idiv__(self, other):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_imul(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 181, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_imul(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":180
+ /* "PETSc/Mat.pyx":174
* return mat_isub(self, other)
*
* def __imul__(self, other): # <<<<<<<<<<<<<<
@@ -109773,7 +116854,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10__imul__(struct PyPetscMatObje
return __pyx_r;
}
-/* "PETSc/Mat.pyx":183
+/* "PETSc/Mat.pyx":177
* return mat_imul(self, other)
*
* def __idiv__(self, other): # <<<<<<<<<<<<<<
@@ -109782,7 +116863,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10__imul__(struct PyPetscMatObje
*/
/* Python wrapper */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_13__idiv__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_13__idiv__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = 0;
@@ -109794,16 +116875,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_13__idiv__(PyObject *__pyx_v_sel
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12__idiv__(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__idiv__", 0);
- /* "PETSc/Mat.pyx":184
+ /* "PETSc/Mat.pyx":178
*
* def __idiv__(self, other):
* return mat_idiv(self, other) # <<<<<<<<<<<<<<
@@ -109811,13 +116892,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12__idiv__(struct PyPetscMatObje
* def __itruediv__(self, other):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_idiv(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 184, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_idiv(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 178, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":183
+ /* "PETSc/Mat.pyx":177
* return mat_imul(self, other)
*
* def __idiv__(self, other): # <<<<<<<<<<<<<<
@@ -109835,9 +116916,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12__idiv__(struct PyPetscMatObje
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
-/* "PETSc/Mat.pyx":186
+/* "PETSc/Mat.pyx":180
* return mat_idiv(self, other)
*
* def __itruediv__(self, other): # <<<<<<<<<<<<<<
@@ -109864,7 +116945,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_14__itruediv__(struct PyPetscMat
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__itruediv__", 0);
- /* "PETSc/Mat.pyx":187
+ /* "PETSc/Mat.pyx":181
*
* def __itruediv__(self, other):
* return mat_idiv(self, other) # <<<<<<<<<<<<<<
@@ -109872,13 +116953,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_14__itruediv__(struct PyPetscMat
* # binary operations
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_idiv(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 187, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_idiv(__pyx_v_self, __pyx_v_other)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 181, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":186
+ /* "PETSc/Mat.pyx":180
* return mat_idiv(self, other)
*
* def __itruediv__(self, other): # <<<<<<<<<<<<<<
@@ -109897,7 +116978,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_14__itruediv__(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":191
+/* "PETSc/Mat.pyx":185
* # binary operations
*
* def __add__(self, other): # <<<<<<<<<<<<<<
@@ -109926,7 +117007,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_16__add__(PyObject *__pyx_v_self
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__add__", 0);
- /* "PETSc/Mat.pyx":192
+ /* "PETSc/Mat.pyx":186
*
* def __add__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -109937,7 +117018,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_16__add__(PyObject *__pyx_v_self
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":193
+ /* "PETSc/Mat.pyx":187
* def __add__(self, other):
* if isinstance(self, Mat):
* return mat_add(self, other) # <<<<<<<<<<<<<<
@@ -109945,14 +117026,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_16__add__(PyObject *__pyx_v_self
* return mat_radd(other, self)
*/
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 193, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_add(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 193, __pyx_L1_error)
+ if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 187, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_add(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 187, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":192
+ /* "PETSc/Mat.pyx":186
*
* def __add__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -109961,7 +117042,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_16__add__(PyObject *__pyx_v_self
*/
}
- /* "PETSc/Mat.pyx":195
+ /* "PETSc/Mat.pyx":189
* return mat_add(self, other)
* else:
* return mat_radd(other, self) # <<<<<<<<<<<<<<
@@ -109970,15 +117051,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_16__add__(PyObject *__pyx_v_self
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 195, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_radd(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 195, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 189, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_radd(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 189, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":191
+ /* "PETSc/Mat.pyx":185
* # binary operations
*
* def __add__(self, other): # <<<<<<<<<<<<<<
@@ -109997,7 +117078,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_16__add__(PyObject *__pyx_v_self
return __pyx_r;
}
-/* "PETSc/Mat.pyx":197
+/* "PETSc/Mat.pyx":191
* return mat_radd(other, self)
*
* def __sub__(self, other): # <<<<<<<<<<<<<<
@@ -110026,7 +117107,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_18__sub__(PyObject *__pyx_v_self
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__sub__", 0);
- /* "PETSc/Mat.pyx":198
+ /* "PETSc/Mat.pyx":192
*
* def __sub__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110037,7 +117118,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_18__sub__(PyObject *__pyx_v_self
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":199
+ /* "PETSc/Mat.pyx":193
* def __sub__(self, other):
* if isinstance(self, Mat):
* return mat_sub(self, other) # <<<<<<<<<<<<<<
@@ -110045,14 +117126,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_18__sub__(PyObject *__pyx_v_self
* return mat_rsub(other, self)
*/
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 199, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_sub(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 199, __pyx_L1_error)
+ if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 193, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_sub(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 193, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":198
+ /* "PETSc/Mat.pyx":192
*
* def __sub__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110061,7 +117142,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_18__sub__(PyObject *__pyx_v_self
*/
}
- /* "PETSc/Mat.pyx":201
+ /* "PETSc/Mat.pyx":195
* return mat_sub(self, other)
* else:
* return mat_rsub(other, self) # <<<<<<<<<<<<<<
@@ -110070,15 +117151,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_18__sub__(PyObject *__pyx_v_self
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 201, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rsub(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 201, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 195, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rsub(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":197
+ /* "PETSc/Mat.pyx":191
* return mat_radd(other, self)
*
* def __sub__(self, other): # <<<<<<<<<<<<<<
@@ -110097,7 +117178,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_18__sub__(PyObject *__pyx_v_self
return __pyx_r;
}
-/* "PETSc/Mat.pyx":203
+/* "PETSc/Mat.pyx":197
* return mat_rsub(other, self)
*
* def __mul__(self, other): # <<<<<<<<<<<<<<
@@ -110126,7 +117207,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__mul__", 0);
- /* "PETSc/Mat.pyx":204
+ /* "PETSc/Mat.pyx":198
*
* def __mul__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110137,7 +117218,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":205
+ /* "PETSc/Mat.pyx":199
* def __mul__(self, other):
* if isinstance(self, Mat):
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -110148,7 +117229,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/Mat.pyx":206
+ /* "PETSc/Mat.pyx":200
* if isinstance(self, Mat):
* if isinstance(other, Vec):
* return mat_mul_vec(self, other) # <<<<<<<<<<<<<<
@@ -110156,15 +117237,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
* return mat_mul(self, other)
*/
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 206, __pyx_L1_error)
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(33, 206, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_mul_vec(((struct PyPetscMatObject *)__pyx_v_self), ((struct PyPetscVecObject *)__pyx_v_other))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 206, __pyx_L1_error)
+ if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 200, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Vec))))) __PYX_ERR(33, 200, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_mul_vec(((struct PyPetscMatObject *)__pyx_v_self), ((struct PyPetscVecObject *)__pyx_v_other))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 200, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":205
+ /* "PETSc/Mat.pyx":199
* def __mul__(self, other):
* if isinstance(self, Mat):
* if isinstance(other, Vec): # <<<<<<<<<<<<<<
@@ -110173,7 +117254,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
*/
}
- /* "PETSc/Mat.pyx":208
+ /* "PETSc/Mat.pyx":202
* return mat_mul_vec(self, other)
* else:
* return mat_mul(self, other) # <<<<<<<<<<<<<<
@@ -110182,15 +117263,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 208, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_mul(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 208, __pyx_L1_error)
+ if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 202, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_mul(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 202, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":204
+ /* "PETSc/Mat.pyx":198
*
* def __mul__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110199,7 +117280,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
*/
}
- /* "PETSc/Mat.pyx":210
+ /* "PETSc/Mat.pyx":204
* return mat_mul(self, other)
* else:
* return mat_rmul(other, self) # <<<<<<<<<<<<<<
@@ -110208,15 +117289,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 210, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rmul(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 210, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 204, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rmul(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 204, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":203
+ /* "PETSc/Mat.pyx":197
* return mat_rsub(other, self)
*
* def __mul__(self, other): # <<<<<<<<<<<<<<
@@ -110235,7 +117316,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
return __pyx_r;
}
-/* "PETSc/Mat.pyx":212
+/* "PETSc/Mat.pyx":206
* return mat_rmul(other, self)
*
* def __div__(self, other): # <<<<<<<<<<<<<<
@@ -110244,7 +117325,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_20__mul__(PyObject *__pyx_v_self
*/
/* Python wrapper */
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_23__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_23__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = 0;
@@ -110256,9 +117337,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_23__div__(PyObject *__pyx_v_self
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
-#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -110267,7 +117348,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__div__", 0);
- /* "PETSc/Mat.pyx":213
+ /* "PETSc/Mat.pyx":207
*
* def __div__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110278,7 +117359,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":214
+ /* "PETSc/Mat.pyx":208
* def __div__(self, other):
* if isinstance(self, Mat):
* return mat_div(self, other) # <<<<<<<<<<<<<<
@@ -110286,14 +117367,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self
* return mat_rdiv(other, self)
*/
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 214, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_div(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 214, __pyx_L1_error)
+ if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 208, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_div(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 208, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":213
+ /* "PETSc/Mat.pyx":207
*
* def __div__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110302,7 +117383,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self
*/
}
- /* "PETSc/Mat.pyx":216
+ /* "PETSc/Mat.pyx":210
* return mat_div(self, other)
* else:
* return mat_rdiv(other, self) # <<<<<<<<<<<<<<
@@ -110311,15 +117392,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 216, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rdiv(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 216, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 210, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rdiv(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":212
+ /* "PETSc/Mat.pyx":206
* return mat_rmul(other, self)
*
* def __div__(self, other): # <<<<<<<<<<<<<<
@@ -110337,9 +117418,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_22__div__(PyObject *__pyx_v_self
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-#endif /*!(#if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY)*/
+#endif /*!(#if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000))*/
-/* "PETSc/Mat.pyx":218
+/* "PETSc/Mat.pyx":212
* return mat_rdiv(other, self)
*
* def __truediv__(self, other): # <<<<<<<<<<<<<<
@@ -110368,7 +117449,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_24__truediv__(PyObject *__pyx_v_
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__truediv__", 0);
- /* "PETSc/Mat.pyx":219
+ /* "PETSc/Mat.pyx":213
*
* def __truediv__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110379,7 +117460,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_24__truediv__(PyObject *__pyx_v_
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":220
+ /* "PETSc/Mat.pyx":214
* def __truediv__(self, other):
* if isinstance(self, Mat):
* return mat_div(self, other) # <<<<<<<<<<<<<<
@@ -110387,14 +117468,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_24__truediv__(PyObject *__pyx_v_
* return mat_rdiv(other, self)
*/
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 220, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_div(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 220, __pyx_L1_error)
+ if (!(likely(((__pyx_v_self) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_self, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 214, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_div(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_other)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 214, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":219
+ /* "PETSc/Mat.pyx":213
*
* def __truediv__(self, other):
* if isinstance(self, Mat): # <<<<<<<<<<<<<<
@@ -110403,7 +117484,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_24__truediv__(PyObject *__pyx_v_
*/
}
- /* "PETSc/Mat.pyx":222
+ /* "PETSc/Mat.pyx":216
* return mat_div(self, other)
* else:
* return mat_rdiv(other, self) # <<<<<<<<<<<<<<
@@ -110412,15 +117493,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_24__truediv__(PyObject *__pyx_v_
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 222, __pyx_L1_error)
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rdiv(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 222, __pyx_L1_error)
+ if (!(likely(((__pyx_v_other) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_other, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 216, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_mat_rdiv(((struct PyPetscMatObject *)__pyx_v_other), __pyx_v_self)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 216, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":218
+ /* "PETSc/Mat.pyx":212
* return mat_rdiv(other, self)
*
* def __truediv__(self, other): # <<<<<<<<<<<<<<
@@ -110439,7 +117520,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_24__truediv__(PyObject *__pyx_v_
return __pyx_r;
}
-/* "PETSc/Mat.pyx":226
+/* "PETSc/Mat.pyx":220
* #
*
* def __getitem__(self, ij): # <<<<<<<<<<<<<<
@@ -110466,7 +117547,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_26__getitem__(struct PyPetscMatO
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("__getitem__", 0);
- /* "PETSc/Mat.pyx":227
+ /* "PETSc/Mat.pyx":221
*
* def __getitem__(self, ij):
* return mat_getitem(self, ij) # <<<<<<<<<<<<<<
@@ -110474,13 +117555,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_26__getitem__(struct PyPetscMatO
* def __setitem__(self, ij, v):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_mat_getitem(__pyx_v_self, __pyx_v_ij); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 227, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_mat_getitem(__pyx_v_self, __pyx_v_ij); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 221, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":226
+ /* "PETSc/Mat.pyx":220
* #
*
* def __getitem__(self, ij): # <<<<<<<<<<<<<<
@@ -110499,7 +117580,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_26__getitem__(struct PyPetscMatO
return __pyx_r;
}
-/* "PETSc/Mat.pyx":229
+/* "PETSc/Mat.pyx":223
* return mat_getitem(self, ij)
*
* def __setitem__(self, ij, v): # <<<<<<<<<<<<<<
@@ -110526,16 +117607,16 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat_28__setitem__(struct PyPetscMatObject
int __pyx_t_1;
__Pyx_RefNannySetupContext("__setitem__", 0);
- /* "PETSc/Mat.pyx":230
+ /* "PETSc/Mat.pyx":224
*
* def __setitem__(self, ij, v):
* mat_setitem(self, ij, v) # <<<<<<<<<<<<<<
*
* def __call__(self, x, y=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_mat_setitem(__pyx_v_self, __pyx_v_ij, __pyx_v_v); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 230, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_mat_setitem(__pyx_v_self, __pyx_v_ij, __pyx_v_v); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 224, __pyx_L1_error)
- /* "PETSc/Mat.pyx":229
+ /* "PETSc/Mat.pyx":223
* return mat_getitem(self, ij)
*
* def __setitem__(self, ij, v): # <<<<<<<<<<<<<<
@@ -110554,7 +117635,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat_28__setitem__(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":232
+/* "PETSc/Mat.pyx":226
* mat_setitem(self, ij, v)
*
* def __call__(self, x, y=None): # <<<<<<<<<<<<<<
@@ -110579,7 +117660,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_31__call__(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -110588,6 +117671,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_31__call__(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y);
@@ -110595,11 +117679,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_31__call__(PyObject *__pyx_v_sel
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(33, 232, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(33, 226, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -110610,7 +117695,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_31__call__(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 232, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 226, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -110631,12 +117716,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_30__call__(struct PyPetscMatObje
PyObject *__pyx_t_3 = NULL;
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
- Py_ssize_t __pyx_t_6;
+ int __pyx_t_6;
PyObject *__pyx_t_7 = NULL;
__Pyx_RefNannySetupContext("__call__", 0);
__Pyx_INCREF(__pyx_v_y);
- /* "PETSc/Mat.pyx":233
+ /* "PETSc/Mat.pyx":227
*
* def __call__(self, x, y=None):
* if y is None: # <<<<<<<<<<<<<<
@@ -110647,17 +117732,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_30__call__(struct PyPetscMatObje
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":234
+ /* "PETSc/Mat.pyx":228
* def __call__(self, x, y=None):
* if y is None:
* y = self.createVecLeft() # <<<<<<<<<<<<<<
* self.mult(x, y)
* return y
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 234, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 228, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -110667,17 +117752,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_30__call__(struct PyPetscMatObje
}
}
if (__pyx_t_5) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 234, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 228, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
- __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 234, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 228, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_y, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":233
+ /* "PETSc/Mat.pyx":227
*
* def __call__(self, x, y=None):
* if y is None: # <<<<<<<<<<<<<<
@@ -110686,18 +117771,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_30__call__(struct PyPetscMatObje
*/
}
- /* "PETSc/Mat.pyx":235
+ /* "PETSc/Mat.pyx":229
* if y is None:
* y = self.createVecLeft()
* self.mult(x, y) # <<<<<<<<<<<<<<
* return y
* #
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mult); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 235, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mult); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 229, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
__pyx_t_6 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -110707,24 +117792,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_30__call__(struct PyPetscMatObje
__pyx_t_6 = 1;
}
}
- __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 235, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_7);
- if (__pyx_t_5) {
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_x, __pyx_v_y};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 229, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_x, __pyx_v_y};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 229, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ {
+ __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 229, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (__pyx_t_5) {
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_x);
+ __Pyx_GIVEREF(__pyx_v_x);
+ PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_v_x);
+ __Pyx_INCREF(__pyx_v_y);
+ __Pyx_GIVEREF(__pyx_v_y);
+ PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_v_y);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 229, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
- __Pyx_INCREF(__pyx_v_x);
- __Pyx_GIVEREF(__pyx_v_x);
- PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_v_x);
- __Pyx_INCREF(__pyx_v_y);
- __Pyx_GIVEREF(__pyx_v_y);
- PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_v_y);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 235, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":236
+ /* "PETSc/Mat.pyx":230
* y = self.createVecLeft()
* self.mult(x, y)
* return y # <<<<<<<<<<<<<<
@@ -110736,7 +117839,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_30__call__(struct PyPetscMatObje
__pyx_r = __pyx_v_y;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":232
+ /* "PETSc/Mat.pyx":226
* mat_setitem(self, ij, v)
*
* def __call__(self, x, y=None): # <<<<<<<<<<<<<<
@@ -110759,7 +117862,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_30__call__(struct PyPetscMatObje
return __pyx_r;
}
-/* "PETSc/Mat.pyx":239
+/* "PETSc/Mat.pyx":233
* #
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -110784,6 +117887,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_33view(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -110796,11 +117900,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_33view(PyObject *__pyx_v_self, P
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(33, 239, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(33, 233, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -110809,13 +117914,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_33view(PyObject *__pyx_v_self, P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 239, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 233, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.view", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(33, 239, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(33, 233, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_32view(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
@@ -110837,7 +117942,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_32view(struct PyPetscMatObject *
int __pyx_t_4;
__Pyx_RefNannySetupContext("view", 0);
- /* "PETSc/Mat.pyx":240
+ /* "PETSc/Mat.pyx":234
*
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL # <<<<<<<<<<<<<<
@@ -110846,7 +117951,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_32view(struct PyPetscMatObject *
*/
__pyx_v_vwr = NULL;
- /* "PETSc/Mat.pyx":241
+ /* "PETSc/Mat.pyx":235
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr # <<<<<<<<<<<<<<
@@ -110860,16 +117965,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_32view(struct PyPetscMatObject *
__pyx_v_vwr = __pyx_t_3;
}
- /* "PETSc/Mat.pyx":242
+ /* "PETSc/Mat.pyx":236
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr
* CHKERR( MatView(self.mat, vwr) ) # <<<<<<<<<<<<<<
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatView(__pyx_v_self->mat, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 242, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatView(__pyx_v_self->mat, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 236, __pyx_L1_error)
- /* "PETSc/Mat.pyx":239
+ /* "PETSc/Mat.pyx":233
* #
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -110889,7 +117994,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_32view(struct PyPetscMatObject *
return __pyx_r;
}
-/* "PETSc/Mat.pyx":244
+/* "PETSc/Mat.pyx":238
* CHKERR( MatView(self.mat, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -110920,16 +118025,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_34destroy(struct PyPetscMatObjec
int __pyx_t_1;
__Pyx_RefNannySetupContext("destroy", 0);
- /* "PETSc/Mat.pyx":245
+ /* "PETSc/Mat.pyx":239
*
* def destroy(self):
* CHKERR( MatDestroy(&self.mat) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDestroy((&__pyx_v_self->mat))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 245, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDestroy((&__pyx_v_self->mat))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 239, __pyx_L1_error)
- /* "PETSc/Mat.pyx":246
+ /* "PETSc/Mat.pyx":240
* def destroy(self):
* CHKERR( MatDestroy(&self.mat) )
* return self # <<<<<<<<<<<<<<
@@ -110941,7 +118046,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_34destroy(struct PyPetscMatObjec
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":244
+ /* "PETSc/Mat.pyx":238
* CHKERR( MatView(self.mat, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -110959,7 +118064,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_34destroy(struct PyPetscMatObjec
return __pyx_r;
}
-/* "PETSc/Mat.pyx":248
+/* "PETSc/Mat.pyx":242
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -110984,6 +118089,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_37create(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -110996,11 +118102,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_37create(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(33, 248, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(33, 242, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -111009,7 +118116,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_37create(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 248, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 242, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -111031,17 +118138,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_36create(struct PyPetscMatObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("create", 0);
- /* "PETSc/Mat.pyx":249
+ /* "PETSc/Mat.pyx":243
*
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscMat newmat = NULL
* CHKERR( MatCreate(ccomm, &newmat) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 249, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 243, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Mat.pyx":250
+ /* "PETSc/Mat.pyx":244
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -111050,16 +118157,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_36create(struct PyPetscMatObject
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":251
+ /* "PETSc/Mat.pyx":245
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscMat newmat = NULL
* CHKERR( MatCreate(ccomm, &newmat) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_ccomm, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 251, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_ccomm, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 245, __pyx_L1_error)
- /* "PETSc/Mat.pyx":252
+ /* "PETSc/Mat.pyx":246
* cdef PetscMat newmat = NULL
* CHKERR( MatCreate(ccomm, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -111069,7 +118176,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_36create(struct PyPetscMatObject
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":253
+ /* "PETSc/Mat.pyx":247
* CHKERR( MatCreate(ccomm, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
* return self # <<<<<<<<<<<<<<
@@ -111081,7 +118188,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_36create(struct PyPetscMatObject
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":248
+ /* "PETSc/Mat.pyx":242
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -111099,7 +118206,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_36create(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":255
+/* "PETSc/Mat.pyx":249
* return self
*
* def setType(self, mat_type): # <<<<<<<<<<<<<<
@@ -111123,6 +118230,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_39setType(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -111133,7 +118241,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_39setType(PyObject *__pyx_v_self
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(33, 255, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(33, 249, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -111144,7 +118252,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_39setType(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 255, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 249, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -111166,7 +118274,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_38setType(struct PyPetscMatObjec
__Pyx_RefNannySetupContext("setType", 0);
__Pyx_INCREF(__pyx_v_mat_type);
- /* "PETSc/Mat.pyx":256
+ /* "PETSc/Mat.pyx":250
*
* def setType(self, mat_type):
* cdef PetscMatType cval = NULL # <<<<<<<<<<<<<<
@@ -111175,28 +118283,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_38setType(struct PyPetscMatObjec
*/
__pyx_v_cval = NULL;
- /* "PETSc/Mat.pyx":257
+ /* "PETSc/Mat.pyx":251
* def setType(self, mat_type):
* cdef PetscMatType cval = NULL
* mat_type = str2bytes(mat_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( MatSetType(self.mat, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_mat_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 257, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_mat_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 251, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_mat_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":258
+ /* "PETSc/Mat.pyx":252
* cdef PetscMatType cval = NULL
* mat_type = str2bytes(mat_type, &cval)
* CHKERR( MatSetType(self.mat, cval) ) # <<<<<<<<<<<<<<
*
* def setSizes(self, size, bsize=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetType(__pyx_v_self->mat, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 258, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetType(__pyx_v_self->mat, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 252, __pyx_L1_error)
- /* "PETSc/Mat.pyx":255
+ /* "PETSc/Mat.pyx":249
* return self
*
* def setType(self, mat_type): # <<<<<<<<<<<<<<
@@ -111218,7 +118326,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_38setType(struct PyPetscMatObjec
return __pyx_r;
}
-/* "PETSc/Mat.pyx":260
+/* "PETSc/Mat.pyx":254
* CHKERR( MatSetType(self.mat, cval) )
*
* def setSizes(self, size, bsize=None): # <<<<<<<<<<<<<<
@@ -111244,7 +118352,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_41setSizes(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -111253,6 +118363,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_41setSizes(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
@@ -111260,11 +118371,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_41setSizes(PyObject *__pyx_v_sel
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSizes") < 0)) __PYX_ERR(33, 260, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSizes") < 0)) __PYX_ERR(33, 254, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -111275,7 +118387,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_41setSizes(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setSizes", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 260, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSizes", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 254, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setSizes", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -111301,7 +118413,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
int __pyx_t_2;
__Pyx_RefNannySetupContext("setSizes", 0);
- /* "PETSc/Mat.pyx":261
+ /* "PETSc/Mat.pyx":255
*
* def setSizes(self, size, bsize=None):
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0 # <<<<<<<<<<<<<<
@@ -111315,25 +118427,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
__pyx_v_M = 0;
__pyx_v_N = 0;
- /* "PETSc/Mat.pyx":262
+ /* "PETSc/Mat.pyx":256
* def setSizes(self, size, bsize=None):
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N) # <<<<<<<<<<<<<<
* CHKERR( MatSetSizes(self.mat, m, n, M, N) )
* if rbs != PETSC_DECIDE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 262, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 256, __pyx_L1_error)
- /* "PETSc/Mat.pyx":263
+ /* "PETSc/Mat.pyx":257
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N)
* CHKERR( MatSetSizes(self.mat, m, n, M, N) ) # <<<<<<<<<<<<<<
* if rbs != PETSC_DECIDE:
* if cbs != PETSC_DECIDE:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetSizes(__pyx_v_self->mat, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 263, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetSizes(__pyx_v_self->mat, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 257, __pyx_L1_error)
- /* "PETSc/Mat.pyx":264
+ /* "PETSc/Mat.pyx":258
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N)
* CHKERR( MatSetSizes(self.mat, m, n, M, N) )
* if rbs != PETSC_DECIDE: # <<<<<<<<<<<<<<
@@ -111343,7 +118455,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
__pyx_t_2 = ((__pyx_v_rbs != PETSC_DECIDE) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":265
+ /* "PETSc/Mat.pyx":259
* CHKERR( MatSetSizes(self.mat, m, n, M, N) )
* if rbs != PETSC_DECIDE:
* if cbs != PETSC_DECIDE: # <<<<<<<<<<<<<<
@@ -111353,16 +118465,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
__pyx_t_2 = ((__pyx_v_cbs != PETSC_DECIDE) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":266
+ /* "PETSc/Mat.pyx":260
* if rbs != PETSC_DECIDE:
* if cbs != PETSC_DECIDE:
* CHKERR( MatSetBlockSizes(self.mat, rbs, cbs) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( MatSetBlockSize(self.mat, rbs) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSizes(__pyx_v_self->mat, __pyx_v_rbs, __pyx_v_cbs)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 266, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSizes(__pyx_v_self->mat, __pyx_v_rbs, __pyx_v_cbs)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 260, __pyx_L1_error)
- /* "PETSc/Mat.pyx":265
+ /* "PETSc/Mat.pyx":259
* CHKERR( MatSetSizes(self.mat, m, n, M, N) )
* if rbs != PETSC_DECIDE:
* if cbs != PETSC_DECIDE: # <<<<<<<<<<<<<<
@@ -111372,7 +118484,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
goto __pyx_L4;
}
- /* "PETSc/Mat.pyx":268
+ /* "PETSc/Mat.pyx":262
* CHKERR( MatSetBlockSizes(self.mat, rbs, cbs) )
* else:
* CHKERR( MatSetBlockSize(self.mat, rbs) ) # <<<<<<<<<<<<<<
@@ -111380,11 +118492,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
* def setBlockSize(self, bsize):
*/
/*else*/ {
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSize(__pyx_v_self->mat, __pyx_v_rbs)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 268, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSize(__pyx_v_self->mat, __pyx_v_rbs)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 262, __pyx_L1_error)
}
__pyx_L4:;
- /* "PETSc/Mat.pyx":264
+ /* "PETSc/Mat.pyx":258
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N)
* CHKERR( MatSetSizes(self.mat, m, n, M, N) )
* if rbs != PETSC_DECIDE: # <<<<<<<<<<<<<<
@@ -111393,7 +118505,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
*/
}
- /* "PETSc/Mat.pyx":260
+ /* "PETSc/Mat.pyx":254
* CHKERR( MatSetType(self.mat, cval) )
*
* def setSizes(self, size, bsize=None): # <<<<<<<<<<<<<<
@@ -111413,7 +118525,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_40setSizes(struct PyPetscMatObje
return __pyx_r;
}
-/* "PETSc/Mat.pyx":270
+/* "PETSc/Mat.pyx":264
* CHKERR( MatSetBlockSize(self.mat, rbs) )
*
* def setBlockSize(self, bsize): # <<<<<<<<<<<<<<
@@ -111437,6 +118549,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_43setBlockSize(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -111447,7 +118560,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_43setBlockSize(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setBlockSize") < 0)) __PYX_ERR(33, 270, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setBlockSize") < 0)) __PYX_ERR(33, 264, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -111458,7 +118571,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_43setBlockSize(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setBlockSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 270, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setBlockSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 264, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setBlockSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -111479,26 +118592,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_42setBlockSize(struct PyPetscMat
int __pyx_t_2;
__Pyx_RefNannySetupContext("setBlockSize", 0);
- /* "PETSc/Mat.pyx":271
+ /* "PETSc/Mat.pyx":265
*
* def setBlockSize(self, bsize):
* cdef PetscInt bs = asInt(bsize) # <<<<<<<<<<<<<<
* CHKERR( MatSetBlockSize(self.mat, bs) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 271, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 265, __pyx_L1_error)
__pyx_v_bs = __pyx_t_1;
- /* "PETSc/Mat.pyx":272
+ /* "PETSc/Mat.pyx":266
* def setBlockSize(self, bsize):
* cdef PetscInt bs = asInt(bsize)
* CHKERR( MatSetBlockSize(self.mat, bs) ) # <<<<<<<<<<<<<<
*
* def setBlockSizes(self, row_bsize, col_bsize):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSize(__pyx_v_self->mat, __pyx_v_bs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 272, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSize(__pyx_v_self->mat, __pyx_v_bs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 266, __pyx_L1_error)
- /* "PETSc/Mat.pyx":270
+ /* "PETSc/Mat.pyx":264
* CHKERR( MatSetBlockSize(self.mat, rbs) )
*
* def setBlockSize(self, bsize): # <<<<<<<<<<<<<<
@@ -111518,7 +118631,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_42setBlockSize(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":274
+/* "PETSc/Mat.pyx":268
* CHKERR( MatSetBlockSize(self.mat, bs) )
*
* def setBlockSizes(self, row_bsize, col_bsize): # <<<<<<<<<<<<<<
@@ -111543,7 +118656,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_45setBlockSizes(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -111552,14 +118667,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_45setBlockSizes(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_row_bsize)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_col_bsize)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setBlockSizes", 1, 2, 2, 1); __PYX_ERR(33, 274, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setBlockSizes", 1, 2, 2, 1); __PYX_ERR(33, 268, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setBlockSizes") < 0)) __PYX_ERR(33, 274, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setBlockSizes") < 0)) __PYX_ERR(33, 268, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -111572,7 +118688,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_45setBlockSizes(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setBlockSizes", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 274, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setBlockSizes", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 268, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setBlockSizes", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -111594,36 +118710,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_44setBlockSizes(struct PyPetscMa
int __pyx_t_2;
__Pyx_RefNannySetupContext("setBlockSizes", 0);
- /* "PETSc/Mat.pyx":275
+ /* "PETSc/Mat.pyx":269
*
* def setBlockSizes(self, row_bsize, col_bsize):
* cdef PetscInt rbs = asInt(row_bsize) # <<<<<<<<<<<<<<
* cdef PetscInt cbs = asInt(col_bsize)
* CHKERR( MatSetBlockSizes(self.mat, rbs, cbs) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row_bsize); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 275, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row_bsize); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 269, __pyx_L1_error)
__pyx_v_rbs = __pyx_t_1;
- /* "PETSc/Mat.pyx":276
+ /* "PETSc/Mat.pyx":270
* def setBlockSizes(self, row_bsize, col_bsize):
* cdef PetscInt rbs = asInt(row_bsize)
* cdef PetscInt cbs = asInt(col_bsize) # <<<<<<<<<<<<<<
* CHKERR( MatSetBlockSizes(self.mat, rbs, cbs) )
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col_bsize); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 276, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col_bsize); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 270, __pyx_L1_error)
__pyx_v_cbs = __pyx_t_1;
- /* "PETSc/Mat.pyx":277
+ /* "PETSc/Mat.pyx":271
* cdef PetscInt rbs = asInt(row_bsize)
* cdef PetscInt cbs = asInt(col_bsize)
* CHKERR( MatSetBlockSizes(self.mat, rbs, cbs) ) # <<<<<<<<<<<<<<
* #
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSizes(__pyx_v_self->mat, __pyx_v_rbs, __pyx_v_cbs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 277, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetBlockSizes(__pyx_v_self->mat, __pyx_v_rbs, __pyx_v_cbs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 271, __pyx_L1_error)
- /* "PETSc/Mat.pyx":274
+ /* "PETSc/Mat.pyx":268
* CHKERR( MatSetBlockSize(self.mat, bs) )
*
* def setBlockSizes(self, row_bsize, col_bsize): # <<<<<<<<<<<<<<
@@ -111643,7 +118759,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_44setBlockSizes(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":280
+/* "PETSc/Mat.pyx":274
* #
*
* def createAIJ(self, size, bsize=None, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -111675,10 +118791,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_47createAIJ(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -111687,21 +118808,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_47createAIJ(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nnz);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_csr);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -111709,14 +118834,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_47createAIJ(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAIJ") < 0)) __PYX_ERR(33, 280, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAIJ") < 0)) __PYX_ERR(33, 274, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -111730,7 +118859,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_47createAIJ(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createAIJ", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 280, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createAIJ", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 274, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createAIJ", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -111750,7 +118879,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_46createAIJ(struct PyPetscMatObj
int __pyx_t_1;
__Pyx_RefNannySetupContext("createAIJ", 0);
- /* "PETSc/Mat.pyx":282
+ /* "PETSc/Mat.pyx":276
* def createAIJ(self, size, bsize=None, nnz=None, csr=None, comm=None):
* # create matrix
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -111759,16 +118888,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_46createAIJ(struct PyPetscMatObj
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":283
+ /* "PETSc/Mat.pyx":277
* # create matrix
* cdef PetscMat newmat = NULL
* Mat_Create(MATAIJ, comm, size, bsize, &newmat) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATAIJ, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 283, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATAIJ, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 277, __pyx_L1_error)
- /* "PETSc/Mat.pyx":284
+ /* "PETSc/Mat.pyx":278
* cdef PetscMat newmat = NULL
* Mat_Create(MATAIJ, comm, size, bsize, &newmat)
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -111778,16 +118907,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_46createAIJ(struct PyPetscMatObj
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":286
+ /* "PETSc/Mat.pyx":280
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 286, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 280, __pyx_L1_error)
- /* "PETSc/Mat.pyx":287
+ /* "PETSc/Mat.pyx":281
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr)
* return self # <<<<<<<<<<<<<<
@@ -111799,7 +118928,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_46createAIJ(struct PyPetscMatObj
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":280
+ /* "PETSc/Mat.pyx":274
* #
*
* def createAIJ(self, size, bsize=None, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -111817,7 +118946,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_46createAIJ(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":289
+/* "PETSc/Mat.pyx":283
* return self
*
* def createBAIJ(self, size, bsize, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -111848,10 +118977,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_49createBAIJ(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -111860,21 +118994,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_49createBAIJ(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createBAIJ", 0, 2, 5, 1); __PYX_ERR(33, 289, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createBAIJ", 0, 2, 5, 1); __PYX_ERR(33, 283, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nnz);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_csr);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -111882,13 +119020,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_49createBAIJ(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createBAIJ") < 0)) __PYX_ERR(33, 289, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createBAIJ") < 0)) __PYX_ERR(33, 283, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -111903,7 +119044,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_49createBAIJ(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createBAIJ", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 289, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createBAIJ", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 283, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createBAIJ", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -111923,7 +119064,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_48createBAIJ(struct PyPetscMatOb
int __pyx_t_1;
__Pyx_RefNannySetupContext("createBAIJ", 0);
- /* "PETSc/Mat.pyx":291
+ /* "PETSc/Mat.pyx":285
* def createBAIJ(self, size, bsize, nnz=None, csr=None, comm=None):
* # create matrix
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -111932,16 +119073,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_48createBAIJ(struct PyPetscMatOb
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":292
+ /* "PETSc/Mat.pyx":286
* # create matrix
* cdef PetscMat newmat = NULL
* Mat_Create(MATBAIJ, comm, size, bsize, &newmat) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATBAIJ, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 292, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATBAIJ, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 286, __pyx_L1_error)
- /* "PETSc/Mat.pyx":293
+ /* "PETSc/Mat.pyx":287
* cdef PetscMat newmat = NULL
* Mat_Create(MATBAIJ, comm, size, bsize, &newmat)
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -111951,16 +119092,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_48createBAIJ(struct PyPetscMatOb
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":295
+ /* "PETSc/Mat.pyx":289
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 295, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 289, __pyx_L1_error)
- /* "PETSc/Mat.pyx":296
+ /* "PETSc/Mat.pyx":290
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr)
* return self # <<<<<<<<<<<<<<
@@ -111972,7 +119113,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_48createBAIJ(struct PyPetscMatOb
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":289
+ /* "PETSc/Mat.pyx":283
* return self
*
* def createBAIJ(self, size, bsize, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -111990,7 +119131,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_48createBAIJ(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":298
+/* "PETSc/Mat.pyx":292
* return self
*
* def createSBAIJ(self, size, bsize, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -112021,10 +119162,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_51createSBAIJ(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -112033,21 +119179,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_51createSBAIJ(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createSBAIJ", 0, 2, 5, 1); __PYX_ERR(33, 298, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSBAIJ", 0, 2, 5, 1); __PYX_ERR(33, 292, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nnz);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_csr);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -112055,13 +119205,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_51createSBAIJ(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSBAIJ") < 0)) __PYX_ERR(33, 298, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSBAIJ") < 0)) __PYX_ERR(33, 292, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -112076,7 +119229,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_51createSBAIJ(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createSBAIJ", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 298, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSBAIJ", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 292, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createSBAIJ", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -112096,7 +119249,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_50createSBAIJ(struct PyPetscMatO
int __pyx_t_1;
__Pyx_RefNannySetupContext("createSBAIJ", 0);
- /* "PETSc/Mat.pyx":300
+ /* "PETSc/Mat.pyx":294
* def createSBAIJ(self, size, bsize, nnz=None, csr=None, comm=None):
* # create matrix
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -112105,16 +119258,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_50createSBAIJ(struct PyPetscMatO
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":301
+ /* "PETSc/Mat.pyx":295
* # create matrix
* cdef PetscMat newmat = NULL
* Mat_Create(MATSBAIJ, comm, size, bsize, &newmat) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATSBAIJ, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 301, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATSBAIJ, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 295, __pyx_L1_error)
- /* "PETSc/Mat.pyx":302
+ /* "PETSc/Mat.pyx":296
* cdef PetscMat newmat = NULL
* Mat_Create(MATSBAIJ, comm, size, bsize, &newmat)
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -112124,16 +119277,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_50createSBAIJ(struct PyPetscMatO
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":304
+ /* "PETSc/Mat.pyx":298
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 304, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 298, __pyx_L1_error)
- /* "PETSc/Mat.pyx":305
+ /* "PETSc/Mat.pyx":299
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr)
* return self # <<<<<<<<<<<<<<
@@ -112145,7 +119298,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_50createSBAIJ(struct PyPetscMatO
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":298
+ /* "PETSc/Mat.pyx":292
* return self
*
* def createSBAIJ(self, size, bsize, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -112163,7 +119316,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_50createSBAIJ(struct PyPetscMatO
return __pyx_r;
}
-/* "PETSc/Mat.pyx":307
+/* "PETSc/Mat.pyx":301
* return self
*
* def createAIJCRL(self, size, bsize=None, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -112195,10 +119348,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_53createAIJCRL(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -112207,21 +119365,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_53createAIJCRL(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nnz);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_csr);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -112229,14 +119391,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_53createAIJCRL(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAIJCRL") < 0)) __PYX_ERR(33, 307, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAIJCRL") < 0)) __PYX_ERR(33, 301, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -112250,7 +119416,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_53createAIJCRL(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createAIJCRL", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 307, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createAIJCRL", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 301, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createAIJCRL", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -112270,7 +119436,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_52createAIJCRL(struct PyPetscMat
int __pyx_t_1;
__Pyx_RefNannySetupContext("createAIJCRL", 0);
- /* "PETSc/Mat.pyx":309
+ /* "PETSc/Mat.pyx":303
* def createAIJCRL(self, size, bsize=None, nnz=None, csr=None, comm=None):
* # create matrix
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -112279,16 +119445,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_52createAIJCRL(struct PyPetscMat
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":310
+ /* "PETSc/Mat.pyx":304
* # create matrix
* cdef PetscMat newmat = NULL
* Mat_Create(MATAIJCRL, comm, size, bsize, &newmat) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATAIJCRL, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 310, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATAIJCRL, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 304, __pyx_L1_error)
- /* "PETSc/Mat.pyx":311
+ /* "PETSc/Mat.pyx":305
* cdef PetscMat newmat = NULL
* Mat_Create(MATAIJCRL, comm, size, bsize, &newmat)
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -112298,16 +119464,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_52createAIJCRL(struct PyPetscMat
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":313
+ /* "PETSc/Mat.pyx":307
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 313, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ(__pyx_v_self->mat, __pyx_v_nnz, __pyx_v_csr); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 307, __pyx_L1_error)
- /* "PETSc/Mat.pyx":314
+ /* "PETSc/Mat.pyx":308
* # preallocate matrix
* Mat_AllocAIJ(self.mat, nnz, csr)
* return self # <<<<<<<<<<<<<<
@@ -112319,7 +119485,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_52createAIJCRL(struct PyPetscMat
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":307
+ /* "PETSc/Mat.pyx":301
* return self
*
* def createAIJCRL(self, size, bsize=None, nnz=None, csr=None, comm=None): # <<<<<<<<<<<<<<
@@ -112337,7 +119503,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_52createAIJCRL(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":316
+/* "PETSc/Mat.pyx":310
* return self
*
* def setPreallocationNNZ(self, nnz): # <<<<<<<<<<<<<<
@@ -112361,6 +119527,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_55setPreallocationNNZ(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -112371,7 +119538,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_55setPreallocationNNZ(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreallocationNNZ") < 0)) __PYX_ERR(33, 316, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreallocationNNZ") < 0)) __PYX_ERR(33, 310, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -112382,7 +119549,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_55setPreallocationNNZ(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPreallocationNNZ", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 316, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPreallocationNNZ", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 310, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setPreallocationNNZ", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -112402,7 +119569,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_54setPreallocationNNZ(struct PyP
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPreallocationNNZ", 0);
- /* "PETSc/Mat.pyx":317
+ /* "PETSc/Mat.pyx":311
*
* def setPreallocationNNZ(self, nnz):
* cdef PetscBool done = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -112411,25 +119578,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_54setPreallocationNNZ(struct PyP
*/
__pyx_v_done = PETSC_FALSE;
- /* "PETSc/Mat.pyx":318
+ /* "PETSc/Mat.pyx":312
* def setPreallocationNNZ(self, nnz):
* cdef PetscBool done = PETSC_FALSE
* CHKERR( MatIsPreallocated(self.mat, &done) ) # <<<<<<<<<<<<<<
* # if done: raise Error(PETSC_ERR_ORDER)
* Mat_AllocAIJ_NNZ(self.mat, nnz)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsPreallocated(__pyx_v_self->mat, (&__pyx_v_done))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 318, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsPreallocated(__pyx_v_self->mat, (&__pyx_v_done))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 312, __pyx_L1_error)
- /* "PETSc/Mat.pyx":320
+ /* "PETSc/Mat.pyx":314
* CHKERR( MatIsPreallocated(self.mat, &done) )
* # if done: raise Error(PETSC_ERR_ORDER)
* Mat_AllocAIJ_NNZ(self.mat, nnz) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(__pyx_v_self->mat, __pyx_v_nnz); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 320, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_NNZ(__pyx_v_self->mat, __pyx_v_nnz); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 314, __pyx_L1_error)
- /* "PETSc/Mat.pyx":321
+ /* "PETSc/Mat.pyx":315
* # if done: raise Error(PETSC_ERR_ORDER)
* Mat_AllocAIJ_NNZ(self.mat, nnz)
* return self # <<<<<<<<<<<<<<
@@ -112441,7 +119608,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_54setPreallocationNNZ(struct PyP
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":316
+ /* "PETSc/Mat.pyx":310
* return self
*
* def setPreallocationNNZ(self, nnz): # <<<<<<<<<<<<<<
@@ -112459,7 +119626,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_54setPreallocationNNZ(struct PyP
return __pyx_r;
}
-/* "PETSc/Mat.pyx":323
+/* "PETSc/Mat.pyx":317
* return self
*
* def setPreallocationCSR(self, csr): # <<<<<<<<<<<<<<
@@ -112483,6 +119650,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_57setPreallocationCSR(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -112493,7 +119661,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_57setPreallocationCSR(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreallocationCSR") < 0)) __PYX_ERR(33, 323, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreallocationCSR") < 0)) __PYX_ERR(33, 317, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -112504,7 +119672,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_57setPreallocationCSR(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPreallocationCSR", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 323, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPreallocationCSR", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 317, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setPreallocationCSR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -112524,7 +119692,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_56setPreallocationCSR(struct PyP
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPreallocationCSR", 0);
- /* "PETSc/Mat.pyx":324
+ /* "PETSc/Mat.pyx":318
*
* def setPreallocationCSR(self, csr):
* cdef PetscBool done = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -112533,25 +119701,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_56setPreallocationCSR(struct PyP
*/
__pyx_v_done = PETSC_FALSE;
- /* "PETSc/Mat.pyx":325
+ /* "PETSc/Mat.pyx":319
* def setPreallocationCSR(self, csr):
* cdef PetscBool done = PETSC_FALSE
* CHKERR( MatIsPreallocated(self.mat, &done) ) # <<<<<<<<<<<<<<
* # if done: raise Error(PETSC_ERR_ORDER)
* Mat_AllocAIJ_CSR(self.mat, csr)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsPreallocated(__pyx_v_self->mat, (&__pyx_v_done))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 325, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsPreallocated(__pyx_v_self->mat, (&__pyx_v_done))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 319, __pyx_L1_error)
- /* "PETSc/Mat.pyx":327
+ /* "PETSc/Mat.pyx":321
* CHKERR( MatIsPreallocated(self.mat, &done) )
* # if done: raise Error(PETSC_ERR_ORDER)
* Mat_AllocAIJ_CSR(self.mat, csr) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(__pyx_v_self->mat, __pyx_v_csr); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 327, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_AllocAIJ_CSR(__pyx_v_self->mat, __pyx_v_csr); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 321, __pyx_L1_error)
- /* "PETSc/Mat.pyx":328
+ /* "PETSc/Mat.pyx":322
* # if done: raise Error(PETSC_ERR_ORDER)
* Mat_AllocAIJ_CSR(self.mat, csr)
* return self # <<<<<<<<<<<<<<
@@ -112563,7 +119731,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_56setPreallocationCSR(struct PyP
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":323
+ /* "PETSc/Mat.pyx":317
* return self
*
* def setPreallocationCSR(self, csr): # <<<<<<<<<<<<<<
@@ -112581,7 +119749,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_56setPreallocationCSR(struct PyP
return __pyx_r;
}
-/* "PETSc/Mat.pyx":330
+/* "PETSc/Mat.pyx":324
* return self
*
* def createAIJWithArrays(self, size, csr, bsize=None, comm=None): # <<<<<<<<<<<<<<
@@ -112610,9 +119778,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_59createAIJWithArrays(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -112621,16 +119793,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_59createAIJWithArrays(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_csr)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createAIJWithArrays", 0, 2, 4, 1); __PYX_ERR(33, 330, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createAIJWithArrays", 0, 2, 4, 1); __PYX_ERR(33, 324, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -112638,12 +119813,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_59createAIJWithArrays(PyObject *
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAIJWithArrays") < 0)) __PYX_ERR(33, 330, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAIJWithArrays") < 0)) __PYX_ERR(33, 324, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -112657,7 +119834,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_59createAIJWithArrays(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createAIJWithArrays", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 330, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createAIJWithArrays", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 324, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createAIJWithArrays", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -112718,17 +119895,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_RefNannySetupContext("createAIJWithArrays", 0);
__Pyx_INCREF(__pyx_v_csr);
- /* "PETSc/Mat.pyx":332
+ /* "PETSc/Mat.pyx":326
* def createAIJWithArrays(self, size, csr, bsize=None, comm=None):
* # communicator
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* # sizes and block sizes
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 332, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 326, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Mat.pyx":334
+ /* "PETSc/Mat.pyx":328
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* # sizes and block sizes
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0 # <<<<<<<<<<<<<<
@@ -112742,16 +119919,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_M = 0;
__pyx_v_N = 0;
- /* "PETSc/Mat.pyx":335
+ /* "PETSc/Mat.pyx":329
* # sizes and block sizes
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N) # <<<<<<<<<<<<<<
* if rbs == PETSC_DECIDE: rbs = 1
* if cbs == PETSC_DECIDE: cbs = rbs
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 335, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, __pyx_v_bsize, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 329, __pyx_L1_error)
- /* "PETSc/Mat.pyx":336
+ /* "PETSc/Mat.pyx":330
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N)
* if rbs == PETSC_DECIDE: rbs = 1 # <<<<<<<<<<<<<<
@@ -112763,7 +119940,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_rbs = 1;
}
- /* "PETSc/Mat.pyx":337
+ /* "PETSc/Mat.pyx":331
* Mat_Sizes(size, bsize, &rbs, &cbs, &m, &n, &M, &N)
* if rbs == PETSC_DECIDE: rbs = 1
* if cbs == PETSC_DECIDE: cbs = rbs # <<<<<<<<<<<<<<
@@ -112775,25 +119952,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_cbs = __pyx_v_rbs;
}
- /* "PETSc/Mat.pyx":338
+ /* "PETSc/Mat.pyx":332
* if rbs == PETSC_DECIDE: rbs = 1
* if cbs == PETSC_DECIDE: cbs = rbs
* Sys_Layout(ccomm, rbs, &m, &M) # <<<<<<<<<<<<<<
* Sys_Layout(ccomm, cbs, &n, &N)
* # unpack CSR argument
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_rbs, (&__pyx_v_m), (&__pyx_v_M)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 338, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_rbs, (&__pyx_v_m), (&__pyx_v_M)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 332, __pyx_L1_error)
- /* "PETSc/Mat.pyx":339
+ /* "PETSc/Mat.pyx":333
* if cbs == PETSC_DECIDE: cbs = rbs
* Sys_Layout(ccomm, rbs, &m, &M)
* Sys_Layout(ccomm, cbs, &n, &N) # <<<<<<<<<<<<<<
* # unpack CSR argument
* cdef object pi, pj, pv, poi, poj, pov
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_cbs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 339, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_cbs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 333, __pyx_L1_error)
- /* "PETSc/Mat.pyx":342
+ /* "PETSc/Mat.pyx":336
* # unpack CSR argument
* cdef object pi, pj, pv, poi, poj, pov
* try: # <<<<<<<<<<<<<<
@@ -112809,7 +119986,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_XGOTREF(__pyx_t_6);
/*try:*/ {
- /* "PETSc/Mat.pyx":343
+ /* "PETSc/Mat.pyx":337
* cdef object pi, pj, pv, poi, poj, pov
* try:
* (pi, pj, pv), (poi, poj, pov) = csr # <<<<<<<<<<<<<<
@@ -112818,7 +119995,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
*/
if ((likely(PyTuple_CheckExact(__pyx_v_csr))) || (PyList_CheckExact(__pyx_v_csr))) {
PyObject* sequence = __pyx_v_csr;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -112826,9 +120003,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(33, 343, __pyx_L5_error)
+ __PYX_ERR(33, 337, __pyx_L5_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
@@ -112839,34 +120016,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_8);
#else
- __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_9 = PyObject_GetIter(__pyx_v_csr); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_9 = PyObject_GetIter(__pyx_v_csr); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext;
- index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L13_unpacking_failed;
+ index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L13_unpacking_failed;
+ index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L11_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) __PYX_ERR(33, 343, __pyx_L5_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) __PYX_ERR(33, 337, __pyx_L5_error)
__pyx_t_10 = NULL;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
- goto __pyx_L14_unpacking_done;
- __pyx_L13_unpacking_failed:;
+ goto __pyx_L12_unpacking_done;
+ __pyx_L11_unpacking_failed:;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_10 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(33, 343, __pyx_L5_error)
- __pyx_L14_unpacking_done:;
+ __PYX_ERR(33, 337, __pyx_L5_error)
+ __pyx_L12_unpacking_done:;
}
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -112874,9 +120051,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(33, 343, __pyx_L5_error)
+ __PYX_ERR(33, 337, __pyx_L5_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_9 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
@@ -112890,36 +120067,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_INCREF(__pyx_t_11);
__Pyx_INCREF(__pyx_t_12);
#else
- __pyx_t_9 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_12 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_12)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_12);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_13 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_13 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_10 = Py_TYPE(__pyx_t_13)->tp_iternext;
- index = 0; __pyx_t_9 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_9)) goto __pyx_L15_unpacking_failed;
+ index = 0; __pyx_t_9 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_9)) goto __pyx_L13_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- index = 1; __pyx_t_11 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_11)) goto __pyx_L15_unpacking_failed;
+ index = 1; __pyx_t_11 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_11)) goto __pyx_L13_unpacking_failed;
__Pyx_GOTREF(__pyx_t_11);
- index = 2; __pyx_t_12 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L15_unpacking_failed;
+ index = 2; __pyx_t_12 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L13_unpacking_failed;
__Pyx_GOTREF(__pyx_t_12);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_13), 3) < 0) __PYX_ERR(33, 343, __pyx_L5_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_13), 3) < 0) __PYX_ERR(33, 337, __pyx_L5_error)
__pyx_t_10 = NULL;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
- goto __pyx_L16_unpacking_done;
- __pyx_L15_unpacking_failed:;
+ goto __pyx_L14_unpacking_done;
+ __pyx_L13_unpacking_failed:;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__pyx_t_10 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(33, 343, __pyx_L5_error)
- __pyx_L16_unpacking_done:;
+ __PYX_ERR(33, 337, __pyx_L5_error)
+ __pyx_L14_unpacking_done:;
}
__pyx_v_pi = __pyx_t_9;
__pyx_t_9 = 0;
@@ -112929,7 +120106,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_t_12 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) {
PyObject* sequence = __pyx_t_8;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -112937,9 +120114,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(33, 343, __pyx_L5_error)
+ __PYX_ERR(33, 337, __pyx_L5_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_12 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
@@ -112953,36 +120130,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_INCREF(__pyx_t_11);
__Pyx_INCREF(__pyx_t_9);
#else
- __pyx_t_12 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_12)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_12 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_12)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_12);
- __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_9 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_9);
#endif
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_13 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 343, __pyx_L5_error)
+ __pyx_t_13 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 337, __pyx_L5_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_10 = Py_TYPE(__pyx_t_13)->tp_iternext;
- index = 0; __pyx_t_12 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L17_unpacking_failed;
+ index = 0; __pyx_t_12 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_12)) goto __pyx_L15_unpacking_failed;
__Pyx_GOTREF(__pyx_t_12);
- index = 1; __pyx_t_11 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_11)) goto __pyx_L17_unpacking_failed;
+ index = 1; __pyx_t_11 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_11)) goto __pyx_L15_unpacking_failed;
__Pyx_GOTREF(__pyx_t_11);
- index = 2; __pyx_t_9 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_9)) goto __pyx_L17_unpacking_failed;
+ index = 2; __pyx_t_9 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_9)) goto __pyx_L15_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_13), 3) < 0) __PYX_ERR(33, 343, __pyx_L5_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_13), 3) < 0) __PYX_ERR(33, 337, __pyx_L5_error)
__pyx_t_10 = NULL;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
- goto __pyx_L18_unpacking_done;
- __pyx_L17_unpacking_failed:;
+ goto __pyx_L16_unpacking_done;
+ __pyx_L15_unpacking_failed:;
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__pyx_t_10 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(33, 343, __pyx_L5_error)
- __pyx_L18_unpacking_done:;
+ __PYX_ERR(33, 337, __pyx_L5_error)
+ __pyx_L16_unpacking_done:;
}
__pyx_v_poi = __pyx_t_12;
__pyx_t_12 = 0;
@@ -112991,7 +120168,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_pov = __pyx_t_9;
__pyx_t_9 = 0;
- /* "PETSc/Mat.pyx":342
+ /* "PETSc/Mat.pyx":336
* # unpack CSR argument
* cdef object pi, pj, pv, poi, poj, pov
* try: # <<<<<<<<<<<<<<
@@ -113002,9 +120179,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- goto __pyx_L12_try_end;
+ goto __pyx_L10_try_end;
__pyx_L5_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
@@ -113012,7 +120188,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/Mat.pyx":344
+ /* "PETSc/Mat.pyx":338
* try:
* (pi, pj, pv), (poi, poj, pov) = csr
* except (TypeError, ValueError): # <<<<<<<<<<<<<<
@@ -113022,12 +120198,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_t_2 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError) || __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError);
if (__pyx_t_2) {
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createAIJWithArrays", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_9) < 0) __PYX_ERR(33, 344, __pyx_L7_except_error)
+ if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_7, &__pyx_t_9) < 0) __PYX_ERR(33, 338, __pyx_L7_except_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GOTREF(__pyx_t_9);
- /* "PETSc/Mat.pyx":345
+ /* "PETSc/Mat.pyx":339
* (pi, pj, pv), (poi, poj, pov) = csr
* except (TypeError, ValueError):
* pi, pj, pv = csr # <<<<<<<<<<<<<<
@@ -113036,7 +120212,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
*/
if ((likely(PyTuple_CheckExact(__pyx_v_csr))) || (PyList_CheckExact(__pyx_v_csr))) {
PyObject* sequence = __pyx_v_csr;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -113044,9 +120220,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
if (unlikely(size != 3)) {
if (size > 3) __Pyx_RaiseTooManyValuesError(3);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(33, 345, __pyx_L7_except_error)
+ __PYX_ERR(33, 339, __pyx_L7_except_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_11 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_12 = PyTuple_GET_ITEM(sequence, 1);
@@ -113060,34 +120236,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_INCREF(__pyx_t_12);
__Pyx_INCREF(__pyx_t_13);
#else
- __pyx_t_11 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_11)) __PYX_ERR(33, 345, __pyx_L7_except_error)
+ __pyx_t_11 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_11)) __PYX_ERR(33, 339, __pyx_L7_except_error)
__Pyx_GOTREF(__pyx_t_11);
- __pyx_t_12 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_12)) __PYX_ERR(33, 345, __pyx_L7_except_error)
+ __pyx_t_12 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_12)) __PYX_ERR(33, 339, __pyx_L7_except_error)
__Pyx_GOTREF(__pyx_t_12);
- __pyx_t_13 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 345, __pyx_L7_except_error)
+ __pyx_t_13 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 339, __pyx_L7_except_error)
__Pyx_GOTREF(__pyx_t_13);
#endif
} else {
Py_ssize_t index = -1;
- __pyx_t_14 = PyObject_GetIter(__pyx_v_csr); if (unlikely(!__pyx_t_14)) __PYX_ERR(33, 345, __pyx_L7_except_error)
+ __pyx_t_14 = PyObject_GetIter(__pyx_v_csr); if (unlikely(!__pyx_t_14)) __PYX_ERR(33, 339, __pyx_L7_except_error)
__Pyx_GOTREF(__pyx_t_14);
__pyx_t_10 = Py_TYPE(__pyx_t_14)->tp_iternext;
- index = 0; __pyx_t_11 = __pyx_t_10(__pyx_t_14); if (unlikely(!__pyx_t_11)) goto __pyx_L21_unpacking_failed;
+ index = 0; __pyx_t_11 = __pyx_t_10(__pyx_t_14); if (unlikely(!__pyx_t_11)) goto __pyx_L19_unpacking_failed;
__Pyx_GOTREF(__pyx_t_11);
- index = 1; __pyx_t_12 = __pyx_t_10(__pyx_t_14); if (unlikely(!__pyx_t_12)) goto __pyx_L21_unpacking_failed;
+ index = 1; __pyx_t_12 = __pyx_t_10(__pyx_t_14); if (unlikely(!__pyx_t_12)) goto __pyx_L19_unpacking_failed;
__Pyx_GOTREF(__pyx_t_12);
- index = 2; __pyx_t_13 = __pyx_t_10(__pyx_t_14); if (unlikely(!__pyx_t_13)) goto __pyx_L21_unpacking_failed;
+ index = 2; __pyx_t_13 = __pyx_t_10(__pyx_t_14); if (unlikely(!__pyx_t_13)) goto __pyx_L19_unpacking_failed;
__Pyx_GOTREF(__pyx_t_13);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_14), 3) < 0) __PYX_ERR(33, 345, __pyx_L7_except_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_14), 3) < 0) __PYX_ERR(33, 339, __pyx_L7_except_error)
__pyx_t_10 = NULL;
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
- goto __pyx_L22_unpacking_done;
- __pyx_L21_unpacking_failed:;
+ goto __pyx_L20_unpacking_done;
+ __pyx_L19_unpacking_failed:;
__Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
__pyx_t_10 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(33, 345, __pyx_L7_except_error)
- __pyx_L22_unpacking_done:;
+ __PYX_ERR(33, 339, __pyx_L7_except_error)
+ __pyx_L20_unpacking_done:;
}
__Pyx_XDECREF_SET(__pyx_v_pi, __pyx_t_11);
__pyx_t_11 = 0;
@@ -113096,7 +120272,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_XDECREF_SET(__pyx_v_pv, __pyx_t_13);
__pyx_t_13 = 0;
- /* "PETSc/Mat.pyx":346
+ /* "PETSc/Mat.pyx":340
* except (TypeError, ValueError):
* pi, pj, pv = csr
* poi = poj = pov = None # <<<<<<<<<<<<<<
@@ -113117,29 +120293,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
goto __pyx_L7_except_error;
__pyx_L7_except_error:;
- /* "PETSc/Mat.pyx":342
+ /* "PETSc/Mat.pyx":336
* # unpack CSR argument
* cdef object pi, pj, pv, poi, poj, pov
* try: # <<<<<<<<<<<<<<
* (pi, pj, pv), (poi, poj, pov) = csr
* except (TypeError, ValueError):
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
goto __pyx_L1_error;
__pyx_L6_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_4);
__Pyx_XGIVEREF(__pyx_t_5);
__Pyx_XGIVEREF(__pyx_t_6);
__Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
- __pyx_L12_try_end:;
+ __pyx_L10_try_end:;
}
- /* "PETSc/Mat.pyx":348
+ /* "PETSc/Mat.pyx":342
* poi = poj = pov = None
* # rows, cols, and values
* cdef PetscInt ni=0, noi=0, *i=NULL, *oi=NULL # <<<<<<<<<<<<<<
@@ -113151,7 +120325,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_i = NULL;
__pyx_v_oi = NULL;
- /* "PETSc/Mat.pyx":349
+ /* "PETSc/Mat.pyx":343
* # rows, cols, and values
* cdef PetscInt ni=0, noi=0, *i=NULL, *oi=NULL
* cdef PetscInt nj=0, noj=0, *j=NULL, *oj=NULL # <<<<<<<<<<<<<<
@@ -113163,31 +120337,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_j = NULL;
__pyx_v_oj = NULL;
- /* "PETSc/Mat.pyx":350
+ /* "PETSc/Mat.pyx":344
* cdef PetscInt ni=0, noi=0, *i=NULL, *oi=NULL
* cdef PetscInt nj=0, noj=0, *j=NULL, *oj=NULL
* pi = iarray_i(pi, &ni, &i) # Row pointers (diagonal) # <<<<<<<<<<<<<<
* pj = iarray_i(pj, &nj, &j) # Column indices (diagonal)
* if ni != m+1: raise ValueError(
*/
- __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_pi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 350, __pyx_L1_error)
+ __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_pi, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 344, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF_SET(__pyx_v_pi, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/Mat.pyx":351
+ /* "PETSc/Mat.pyx":345
* cdef PetscInt nj=0, noj=0, *j=NULL, *oj=NULL
* pi = iarray_i(pi, &ni, &i) # Row pointers (diagonal)
* pj = iarray_i(pj, &nj, &j) # Column indices (diagonal) # <<<<<<<<<<<<<<
* if ni != m+1: raise ValueError(
* "A matrix with %d rows requires a row pointer of length %d (given: %d)" %
*/
- __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_pj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 351, __pyx_L1_error)
+ __pyx_t_9 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_pj, (&__pyx_v_nj), (&__pyx_v_j))); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 345, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF_SET(__pyx_v_pj, __pyx_t_9);
__pyx_t_9 = 0;
- /* "PETSc/Mat.pyx":352
+ /* "PETSc/Mat.pyx":346
* pi = iarray_i(pi, &ni, &i) # Row pointers (diagonal)
* pj = iarray_i(pj, &nj, &j) # Column indices (diagonal)
* if ni != m+1: raise ValueError( # <<<<<<<<<<<<<<
@@ -113197,20 +120371,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_t_3 = ((__pyx_v_ni != (__pyx_v_m + 1)) != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":354
+ /* "PETSc/Mat.pyx":348
* if ni != m+1: raise ValueError(
* "A matrix with %d rows requires a row pointer of length %d (given: %d)" %
* (toInt(m), toInt(m+1), toInt(ni))) # <<<<<<<<<<<<<<
* if poi is not None and poj is not None:
* poi = iarray_i(poi, &noi, &oi) # Row pointers (off-diagonal)
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_m); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 354, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_m); if (unlikely(!__pyx_t_9)) __PYX_ERR(33, 348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 354, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 354, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ni); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 354, __pyx_L1_error)
+ __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 348, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_GIVEREF(__pyx_t_9);
PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_9);
@@ -113222,38 +120396,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_t_7 = 0;
__pyx_t_8 = 0;
- /* "PETSc/Mat.pyx":353
+ /* "PETSc/Mat.pyx":347
* pj = iarray_i(pj, &nj, &j) # Column indices (diagonal)
* if ni != m+1: raise ValueError(
* "A matrix with %d rows requires a row pointer of length %d (given: %d)" % # <<<<<<<<<<<<<<
* (toInt(m), toInt(m+1), toInt(ni)))
* if poi is not None and poj is not None:
*/
- __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_A_matrix_with_d_rows_requires_a, __pyx_t_13); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 353, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_A_matrix_with_d_rows_requires_a, __pyx_t_13); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 347, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
- /* "PETSc/Mat.pyx":352
+ /* "PETSc/Mat.pyx":346
* pi = iarray_i(pi, &ni, &i) # Row pointers (diagonal)
* pj = iarray_i(pj, &nj, &j) # Column indices (diagonal)
* if ni != m+1: raise ValueError( # <<<<<<<<<<<<<<
* "A matrix with %d rows requires a row pointer of length %d (given: %d)" %
* (toInt(m), toInt(m+1), toInt(ni)))
*/
- __pyx_t_13 = PyTuple_New(1); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 352, __pyx_L1_error)
+ __pyx_t_13 = PyTuple_New(1); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 346, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_8);
__pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_13, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 352, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_13, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 346, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
__Pyx_Raise(__pyx_t_8, 0, 0, 0);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __PYX_ERR(33, 352, __pyx_L1_error)
+ __PYX_ERR(33, 346, __pyx_L1_error)
}
- /* "PETSc/Mat.pyx":355
+ /* "PETSc/Mat.pyx":349
* "A matrix with %d rows requires a row pointer of length %d (given: %d)" %
* (toInt(m), toInt(m+1), toInt(ni)))
* if poi is not None and poj is not None: # <<<<<<<<<<<<<<
@@ -113265,39 +120439,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
if (__pyx_t_16) {
} else {
__pyx_t_3 = __pyx_t_16;
- goto __pyx_L25_bool_binop_done;
+ goto __pyx_L23_bool_binop_done;
}
__pyx_t_16 = (__pyx_v_poj != Py_None);
__pyx_t_15 = (__pyx_t_16 != 0);
__pyx_t_3 = __pyx_t_15;
- __pyx_L25_bool_binop_done:;
+ __pyx_L23_bool_binop_done:;
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":356
+ /* "PETSc/Mat.pyx":350
* (toInt(m), toInt(m+1), toInt(ni)))
* if poi is not None and poj is not None:
* poi = iarray_i(poi, &noi, &oi) # Row pointers (off-diagonal) # <<<<<<<<<<<<<<
* poj = iarray_i(poj, &noj, &oj) # Column indices (off-diagonal)
* cdef PetscInt nv=0, nov=0
*/
- __pyx_t_8 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_poi, (&__pyx_v_noi), (&__pyx_v_oi))); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 356, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_poi, (&__pyx_v_noi), (&__pyx_v_oi))); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 350, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF_SET(__pyx_v_poi, __pyx_t_8);
__pyx_t_8 = 0;
- /* "PETSc/Mat.pyx":357
+ /* "PETSc/Mat.pyx":351
* if poi is not None and poj is not None:
* poi = iarray_i(poi, &noi, &oi) # Row pointers (off-diagonal)
* poj = iarray_i(poj, &noj, &oj) # Column indices (off-diagonal) # <<<<<<<<<<<<<<
* cdef PetscInt nv=0, nov=0
* cdef PetscScalar *v=NULL, *ov=NULL
*/
- __pyx_t_8 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_poj, (&__pyx_v_noj), (&__pyx_v_oj))); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 357, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_poj, (&__pyx_v_noj), (&__pyx_v_oj))); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 351, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF_SET(__pyx_v_poj, __pyx_t_8);
__pyx_t_8 = 0;
- /* "PETSc/Mat.pyx":355
+ /* "PETSc/Mat.pyx":349
* "A matrix with %d rows requires a row pointer of length %d (given: %d)" %
* (toInt(m), toInt(m+1), toInt(ni)))
* if poi is not None and poj is not None: # <<<<<<<<<<<<<<
@@ -113306,7 +120480,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
*/
}
- /* "PETSc/Mat.pyx":358
+ /* "PETSc/Mat.pyx":352
* poi = iarray_i(poi, &noi, &oi) # Row pointers (off-diagonal)
* poj = iarray_i(poj, &noj, &oj) # Column indices (off-diagonal)
* cdef PetscInt nv=0, nov=0 # <<<<<<<<<<<<<<
@@ -113316,7 +120490,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_nv = 0;
__pyx_v_nov = 0;
- /* "PETSc/Mat.pyx":359
+ /* "PETSc/Mat.pyx":353
* poj = iarray_i(poj, &noj, &oj) # Column indices (off-diagonal)
* cdef PetscInt nv=0, nov=0
* cdef PetscScalar *v=NULL, *ov=NULL # <<<<<<<<<<<<<<
@@ -113326,19 +120500,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_v_v = NULL;
__pyx_v_ov = NULL;
- /* "PETSc/Mat.pyx":360
+ /* "PETSc/Mat.pyx":354
* cdef PetscInt nv=0, nov=0
* cdef PetscScalar *v=NULL, *ov=NULL
* pv = iarray_s(pv, &nv, &v) # Non-zero values (diagonal) # <<<<<<<<<<<<<<
* if nj != nv: raise ValueError(
* "Given %d column indices but %d non-zero values" %
*/
- __pyx_t_8 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_pv, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 360, __pyx_L1_error)
+ __pyx_t_8 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_pv, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 354, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF_SET(__pyx_v_pv, __pyx_t_8);
__pyx_t_8 = 0;
- /* "PETSc/Mat.pyx":361
+ /* "PETSc/Mat.pyx":355
* cdef PetscScalar *v=NULL, *ov=NULL
* pv = iarray_s(pv, &nv, &v) # Non-zero values (diagonal)
* if nj != nv: raise ValueError( # <<<<<<<<<<<<<<
@@ -113348,18 +120522,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_t_3 = ((__pyx_v_nj != __pyx_v_nv) != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":363
+ /* "PETSc/Mat.pyx":357
* if nj != nv: raise ValueError(
* "Given %d column indices but %d non-zero values" %
* (toInt(nj), toInt(nv))) # <<<<<<<<<<<<<<
* if pov is not None:
* pov = iarray_s(pov, &nov, &ov) # Non-zero values (off-diagonal)
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 363, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nj); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
- __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 363, __pyx_L1_error)
+ __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nv); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
- __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 363, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8);
@@ -113368,38 +120542,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_t_8 = 0;
__pyx_t_13 = 0;
- /* "PETSc/Mat.pyx":362
+ /* "PETSc/Mat.pyx":356
* pv = iarray_s(pv, &nv, &v) # Non-zero values (diagonal)
* if nj != nv: raise ValueError(
* "Given %d column indices but %d non-zero values" % # <<<<<<<<<<<<<<
* (toInt(nj), toInt(nv)))
* if pov is not None:
*/
- __pyx_t_13 = __Pyx_PyString_Format(__pyx_kp_s_Given_d_column_indices_but_d_non, __pyx_t_7); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 362, __pyx_L1_error)
+ __pyx_t_13 = __Pyx_PyString_Format(__pyx_kp_s_Given_d_column_indices_but_d_non, __pyx_t_7); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Mat.pyx":361
+ /* "PETSc/Mat.pyx":355
* cdef PetscScalar *v=NULL, *ov=NULL
* pv = iarray_s(pv, &nv, &v) # Non-zero values (diagonal)
* if nj != nv: raise ValueError( # <<<<<<<<<<<<<<
* "Given %d column indices but %d non-zero values" %
* (toInt(nj), toInt(nv)))
*/
- __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 361, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_13);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_13);
__pyx_t_13 = 0;
- __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 361, __pyx_L1_error)
+ __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 355, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_Raise(__pyx_t_13, 0, 0, 0);
__Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
- __PYX_ERR(33, 361, __pyx_L1_error)
+ __PYX_ERR(33, 355, __pyx_L1_error)
}
- /* "PETSc/Mat.pyx":364
+ /* "PETSc/Mat.pyx":358
* "Given %d column indices but %d non-zero values" %
* (toInt(nj), toInt(nv)))
* if pov is not None: # <<<<<<<<<<<<<<
@@ -113410,19 +120584,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_t_15 = (__pyx_t_3 != 0);
if (__pyx_t_15) {
- /* "PETSc/Mat.pyx":365
+ /* "PETSc/Mat.pyx":359
* (toInt(nj), toInt(nv)))
* if pov is not None:
* pov = iarray_s(pov, &nov, &ov) # Non-zero values (off-diagonal) # <<<<<<<<<<<<<<
* # create matrix
* cdef PetscMat newmat = NULL
*/
- __pyx_t_13 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_pov, (&__pyx_v_nov), (&__pyx_v_ov))); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 365, __pyx_L1_error)
+ __pyx_t_13 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_pov, (&__pyx_v_nov), (&__pyx_v_ov))); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 359, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_DECREF_SET(__pyx_v_pov, __pyx_t_13);
__pyx_t_13 = 0;
- /* "PETSc/Mat.pyx":364
+ /* "PETSc/Mat.pyx":358
* "Given %d column indices but %d non-zero values" %
* (toInt(nj), toInt(nv)))
* if pov is not None: # <<<<<<<<<<<<<<
@@ -113431,7 +120605,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
*/
}
- /* "PETSc/Mat.pyx":367
+ /* "PETSc/Mat.pyx":361
* pov = iarray_s(pov, &nov, &ov) # Non-zero values (off-diagonal)
* # create matrix
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -113440,34 +120614,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":368
+ /* "PETSc/Mat.pyx":362
* # create matrix
* cdef PetscMat newmat = NULL
* if comm_size(ccomm) == 1: # <<<<<<<<<<<<<<
* CHKERR( MatCreateSeqAIJWithArrays(
* ccomm, m, n, i, j, v, &newmat) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_comm_size(__pyx_v_ccomm); if (unlikely(__pyx_t_2 == -1 && PyErr_Occurred())) __PYX_ERR(33, 368, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_comm_size(__pyx_v_ccomm); if (unlikely(__pyx_t_2 == ((int)-1) && PyErr_Occurred())) __PYX_ERR(33, 362, __pyx_L1_error)
__pyx_t_15 = ((__pyx_t_2 == 1) != 0);
if (__pyx_t_15) {
- /* "PETSc/Mat.pyx":369
+ /* "PETSc/Mat.pyx":363
* cdef PetscMat newmat = NULL
* if comm_size(ccomm) == 1:
* CHKERR( MatCreateSeqAIJWithArrays( # <<<<<<<<<<<<<<
* ccomm, m, n, i, j, v, &newmat) )
* csr = (pi, pj, pv)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateSeqAIJWithArrays(__pyx_v_ccomm, __pyx_v_m, __pyx_v_n, __pyx_v_i, __pyx_v_j, __pyx_v_v, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 369, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateSeqAIJWithArrays(__pyx_v_ccomm, __pyx_v_m, __pyx_v_n, __pyx_v_i, __pyx_v_j, __pyx_v_v, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 363, __pyx_L1_error)
- /* "PETSc/Mat.pyx":371
+ /* "PETSc/Mat.pyx":365
* CHKERR( MatCreateSeqAIJWithArrays(
* ccomm, m, n, i, j, v, &newmat) )
* csr = (pi, pj, pv) # <<<<<<<<<<<<<<
* else:
* if oi != NULL and oj != NULL and ov != NULL:
*/
- __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 371, __pyx_L1_error)
+ __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 365, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_INCREF(__pyx_v_pi);
__Pyx_GIVEREF(__pyx_v_pi);
@@ -113481,17 +120655,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_DECREF_SET(__pyx_v_csr, __pyx_t_13);
__pyx_t_13 = 0;
- /* "PETSc/Mat.pyx":368
+ /* "PETSc/Mat.pyx":362
* # create matrix
* cdef PetscMat newmat = NULL
* if comm_size(ccomm) == 1: # <<<<<<<<<<<<<<
* CHKERR( MatCreateSeqAIJWithArrays(
* ccomm, m, n, i, j, v, &newmat) )
*/
- goto __pyx_L29;
+ goto __pyx_L27;
}
- /* "PETSc/Mat.pyx":373
+ /* "PETSc/Mat.pyx":367
* csr = (pi, pj, pv)
* else:
* if oi != NULL and oj != NULL and ov != NULL: # <<<<<<<<<<<<<<
@@ -113503,36 +120677,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
if (__pyx_t_3) {
} else {
__pyx_t_15 = __pyx_t_3;
- goto __pyx_L31_bool_binop_done;
+ goto __pyx_L29_bool_binop_done;
}
__pyx_t_3 = ((__pyx_v_oj != NULL) != 0);
if (__pyx_t_3) {
} else {
__pyx_t_15 = __pyx_t_3;
- goto __pyx_L31_bool_binop_done;
+ goto __pyx_L29_bool_binop_done;
}
__pyx_t_3 = ((__pyx_v_ov != NULL) != 0);
__pyx_t_15 = __pyx_t_3;
- __pyx_L31_bool_binop_done:;
+ __pyx_L29_bool_binop_done:;
if (__pyx_t_15) {
- /* "PETSc/Mat.pyx":374
+ /* "PETSc/Mat.pyx":368
* else:
* if oi != NULL and oj != NULL and ov != NULL:
* CHKERR( MatCreateMPIAIJWithSplitArrays( # <<<<<<<<<<<<<<
* ccomm, m, n, M, N, i, j, v, oi, oj, ov, &newmat) )
* csr = ((pi, pj, pv), (poi, poj, pov))
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateMPIAIJWithSplitArrays(__pyx_v_ccomm, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N, __pyx_v_i, __pyx_v_j, __pyx_v_v, __pyx_v_oi, __pyx_v_oj, __pyx_v_ov, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 374, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateMPIAIJWithSplitArrays(__pyx_v_ccomm, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N, __pyx_v_i, __pyx_v_j, __pyx_v_v, __pyx_v_oi, __pyx_v_oj, __pyx_v_ov, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 368, __pyx_L1_error)
- /* "PETSc/Mat.pyx":376
+ /* "PETSc/Mat.pyx":370
* CHKERR( MatCreateMPIAIJWithSplitArrays(
* ccomm, m, n, M, N, i, j, v, oi, oj, ov, &newmat) )
* csr = ((pi, pj, pv), (poi, poj, pov)) # <<<<<<<<<<<<<<
* else:
* CHKERR( MatCreateMPIAIJWithArrays(
*/
- __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 376, __pyx_L1_error)
+ __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(33, 370, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_13);
__Pyx_INCREF(__pyx_v_pi);
__Pyx_GIVEREF(__pyx_v_pi);
@@ -113543,7 +120717,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_INCREF(__pyx_v_pv);
__Pyx_GIVEREF(__pyx_v_pv);
PyTuple_SET_ITEM(__pyx_t_13, 2, __pyx_v_pv);
- __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 376, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 370, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_poi);
__Pyx_GIVEREF(__pyx_v_poi);
@@ -113554,7 +120728,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_INCREF(__pyx_v_pov);
__Pyx_GIVEREF(__pyx_v_pov);
PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_pov);
- __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 376, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 370, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_GIVEREF(__pyx_t_13);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_13);
@@ -113565,17 +120739,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_DECREF_SET(__pyx_v_csr, __pyx_t_8);
__pyx_t_8 = 0;
- /* "PETSc/Mat.pyx":373
+ /* "PETSc/Mat.pyx":367
* csr = (pi, pj, pv)
* else:
* if oi != NULL and oj != NULL and ov != NULL: # <<<<<<<<<<<<<<
* CHKERR( MatCreateMPIAIJWithSplitArrays(
* ccomm, m, n, M, N, i, j, v, oi, oj, ov, &newmat) )
*/
- goto __pyx_L30;
+ goto __pyx_L28;
}
- /* "PETSc/Mat.pyx":378
+ /* "PETSc/Mat.pyx":372
* csr = ((pi, pj, pv), (poi, poj, pov))
* else:
* CHKERR( MatCreateMPIAIJWithArrays( # <<<<<<<<<<<<<<
@@ -113584,16 +120758,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
*/
/*else*/ {
- /* "PETSc/Mat.pyx":379
+ /* "PETSc/Mat.pyx":373
* else:
* CHKERR( MatCreateMPIAIJWithArrays(
* ccomm, m, n, M, N, i, j, v, &newmat) ) # <<<<<<<<<<<<<<
* csr = None
* PetscCLEAR(self.obj); self.mat = newmat
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateMPIAIJWithArrays(__pyx_v_ccomm, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N, __pyx_v_i, __pyx_v_j, __pyx_v_v, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 378, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateMPIAIJWithArrays(__pyx_v_ccomm, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N, __pyx_v_i, __pyx_v_j, __pyx_v_v, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 372, __pyx_L1_error)
- /* "PETSc/Mat.pyx":380
+ /* "PETSc/Mat.pyx":374
* CHKERR( MatCreateMPIAIJWithArrays(
* ccomm, m, n, M, N, i, j, v, &newmat) )
* csr = None # <<<<<<<<<<<<<<
@@ -113603,11 +120777,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__Pyx_INCREF(Py_None);
__Pyx_DECREF_SET(__pyx_v_csr, Py_None);
}
- __pyx_L30:;
+ __pyx_L28:;
}
- __pyx_L29:;
+ __pyx_L27:;
- /* "PETSc/Mat.pyx":381
+ /* "PETSc/Mat.pyx":375
* ccomm, m, n, M, N, i, j, v, &newmat) )
* csr = None
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -113617,18 +120791,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":382
+ /* "PETSc/Mat.pyx":376
* csr = None
* PetscCLEAR(self.obj); self.mat = newmat
* self.set_attr('__csr__', csr) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_8 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__csr__"), __pyx_v_csr); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 382, __pyx_L1_error)
+ __pyx_t_8 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__csr__"), __pyx_v_csr); if (unlikely(!__pyx_t_8)) __PYX_ERR(33, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/Mat.pyx":383
+ /* "PETSc/Mat.pyx":377
* PetscCLEAR(self.obj); self.mat = newmat
* self.set_attr('__csr__', csr)
* return self # <<<<<<<<<<<<<<
@@ -113640,7 +120814,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":330
+ /* "PETSc/Mat.pyx":324
* return self
*
* def createAIJWithArrays(self, size, csr, bsize=None, comm=None): # <<<<<<<<<<<<<<
@@ -113672,7 +120846,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_58createAIJWithArrays(struct PyP
return __pyx_r;
}
-/* "PETSc/Mat.pyx":387
+/* "PETSc/Mat.pyx":381
* #
*
* def createDense(self, size, bsize=None, array=None, comm=None): # <<<<<<<<<<<<<<
@@ -113702,9 +120876,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_61createDense(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -113713,16 +120891,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_61createDense(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bsize);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_array);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -113730,13 +120911,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_61createDense(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createDense") < 0)) __PYX_ERR(33, 387, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createDense") < 0)) __PYX_ERR(33, 381, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -113749,7 +120933,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_61createDense(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createDense", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 387, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createDense", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 381, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createDense", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -113773,7 +120957,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_60createDense(struct PyPetscMatO
__Pyx_RefNannySetupContext("createDense", 0);
__Pyx_INCREF(__pyx_v_array);
- /* "PETSc/Mat.pyx":389
+ /* "PETSc/Mat.pyx":383
* def createDense(self, size, bsize=None, array=None, comm=None):
* # create matrix
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -113782,16 +120966,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_60createDense(struct PyPetscMatO
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":390
+ /* "PETSc/Mat.pyx":384
* # create matrix
* cdef PetscMat newmat = NULL
* Mat_Create(MATDENSE, comm, size, bsize, &newmat) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATDENSE, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 390, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_Mat_Create(MATDENSE, __pyx_v_comm, __pyx_v_size, __pyx_v_bsize, (&__pyx_v_newmat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 384, __pyx_L1_error)
- /* "PETSc/Mat.pyx":391
+ /* "PETSc/Mat.pyx":385
* cdef PetscMat newmat = NULL
* Mat_Create(MATDENSE, comm, size, bsize, &newmat)
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -113801,7 +120985,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_60createDense(struct PyPetscMatO
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":393
+ /* "PETSc/Mat.pyx":387
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
* if array is not None: # <<<<<<<<<<<<<<
@@ -113812,30 +120996,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_60createDense(struct PyPetscMatO
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":394
+ /* "PETSc/Mat.pyx":388
* # preallocate matrix
* if array is not None:
* array = Mat_AllocDense(self.mat, array) # <<<<<<<<<<<<<<
* self.set_attr('__array__', array)
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_Mat_AllocDense(__pyx_v_self->mat, __pyx_v_array); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 394, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_Mat_AllocDense(__pyx_v_self->mat, __pyx_v_array); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 388, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_array, __pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/Mat.pyx":395
+ /* "PETSc/Mat.pyx":389
* if array is not None:
* array = Mat_AllocDense(self.mat, array)
* self.set_attr('__array__', array) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__array__"), __pyx_v_array); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 395, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__array__"), __pyx_v_array); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Mat.pyx":393
+ /* "PETSc/Mat.pyx":387
* PetscCLEAR(self.obj); self.mat = newmat
* # preallocate matrix
* if array is not None: # <<<<<<<<<<<<<<
@@ -113844,7 +121028,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_60createDense(struct PyPetscMatO
*/
}
- /* "PETSc/Mat.pyx":396
+ /* "PETSc/Mat.pyx":390
* array = Mat_AllocDense(self.mat, array)
* self.set_attr('__array__', array)
* return self # <<<<<<<<<<<<<<
@@ -113856,7 +121040,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_60createDense(struct PyPetscMatO
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":387
+ /* "PETSc/Mat.pyx":381
* #
*
* def createDense(self, size, bsize=None, array=None, comm=None): # <<<<<<<<<<<<<<
@@ -113876,7 +121060,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_60createDense(struct PyPetscMatO
return __pyx_r;
}
-/* "PETSc/Mat.pyx":398
+/* "PETSc/Mat.pyx":392
* return self
*
* def setPreallocationDense(self, array): # <<<<<<<<<<<<<<
@@ -113900,6 +121084,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_63setPreallocationDense(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -113910,7 +121095,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_63setPreallocationDense(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreallocationDense") < 0)) __PYX_ERR(33, 398, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreallocationDense") < 0)) __PYX_ERR(33, 392, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -113921,7 +121106,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_63setPreallocationDense(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPreallocationDense", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 398, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPreallocationDense", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 392, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setPreallocationDense", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -113943,7 +121128,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_62setPreallocationDense(struct P
__Pyx_RefNannySetupContext("setPreallocationDense", 0);
__Pyx_INCREF(__pyx_v_array);
- /* "PETSc/Mat.pyx":399
+ /* "PETSc/Mat.pyx":393
*
* def setPreallocationDense(self, array):
* cdef PetscBool done = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -113952,39 +121137,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_62setPreallocationDense(struct P
*/
__pyx_v_done = PETSC_FALSE;
- /* "PETSc/Mat.pyx":400
+ /* "PETSc/Mat.pyx":394
* def setPreallocationDense(self, array):
* cdef PetscBool done = PETSC_FALSE
* CHKERR( MatIsPreallocated(self.mat, &done) ) # <<<<<<<<<<<<<<
* # if done: raise Error(PETSC_ERR_ORDER)
* array = Mat_AllocDense(self.mat, array)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsPreallocated(__pyx_v_self->mat, (&__pyx_v_done))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 400, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsPreallocated(__pyx_v_self->mat, (&__pyx_v_done))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 394, __pyx_L1_error)
- /* "PETSc/Mat.pyx":402
+ /* "PETSc/Mat.pyx":396
* CHKERR( MatIsPreallocated(self.mat, &done) )
* # if done: raise Error(PETSC_ERR_ORDER)
* array = Mat_AllocDense(self.mat, array) # <<<<<<<<<<<<<<
* self.set_attr('__array__', array)
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_AllocDense(__pyx_v_self->mat, __pyx_v_array); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 402, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_AllocDense(__pyx_v_self->mat, __pyx_v_array); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 396, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_array, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Mat.pyx":403
+ /* "PETSc/Mat.pyx":397
* # if done: raise Error(PETSC_ERR_ORDER)
* array = Mat_AllocDense(self.mat, array)
* self.set_attr('__array__', array) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__array__"), __pyx_v_array); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 403, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_Mat *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__array__"), __pyx_v_array); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 397, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "PETSc/Mat.pyx":404
+ /* "PETSc/Mat.pyx":398
* array = Mat_AllocDense(self.mat, array)
* self.set_attr('__array__', array)
* return self # <<<<<<<<<<<<<<
@@ -113996,7 +121181,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_62setPreallocationDense(struct P
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":398
+ /* "PETSc/Mat.pyx":392
* return self
*
* def setPreallocationDense(self, array): # <<<<<<<<<<<<<<
@@ -114016,10 +121201,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_62setPreallocationDense(struct P
return __pyx_r;
}
-/* "PETSc/Mat.pyx":408
+/* "PETSc/Mat.pyx":402
* #
*
- * def createScatter(self, Scatter scatter not None, comm=None): # <<<<<<<<<<<<<<
+ * def createScatter(self, Scatter scatter, comm=None): # <<<<<<<<<<<<<<
* if comm is None: comm = scatter.getComm()
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
@@ -114042,7 +121227,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_65createScatter(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -114051,6 +121238,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_65createScatter(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_scatter)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -114058,11 +121246,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_65createScatter(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createScatter") < 0)) __PYX_ERR(33, 408, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createScatter") < 0)) __PYX_ERR(33, 402, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -114073,13 +121262,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_65createScatter(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createScatter", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 408, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createScatter", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 402, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createScatter", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_scatter), __pyx_ptype_8petsc4py_5PETSc_Scatter, 0, "scatter", 0))) __PYX_ERR(33, 408, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_scatter), __pyx_ptype_8petsc4py_5PETSc_Scatter, 0, "scatter", 0))) __PYX_ERR(33, 402, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_scatter, __pyx_v_comm);
/* function exit code */
@@ -114106,9 +121295,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMa
__Pyx_RefNannySetupContext("createScatter", 0);
__Pyx_INCREF(__pyx_v_comm);
- /* "PETSc/Mat.pyx":409
+ /* "PETSc/Mat.pyx":403
*
- * def createScatter(self, Scatter scatter not None, comm=None):
+ * def createScatter(self, Scatter scatter, comm=None):
* if comm is None: comm = scatter.getComm() # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscMat newmat = NULL
@@ -114116,10 +121305,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMa
__pyx_t_1 = (__pyx_v_comm == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_scatter), __pyx_n_s_getComm); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 409, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_scatter), __pyx_n_s_getComm); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 403, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -114129,10 +121318,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMa
}
}
if (__pyx_t_5) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 409, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 403, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
- __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 409, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 403, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -114140,17 +121329,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMa
__pyx_t_3 = 0;
}
- /* "PETSc/Mat.pyx":410
- * def createScatter(self, Scatter scatter not None, comm=None):
+ /* "PETSc/Mat.pyx":404
+ * def createScatter(self, Scatter scatter, comm=None):
* if comm is None: comm = scatter.getComm()
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateScatter(ccomm, scatter.sct, &newmat) )
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 410, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 404, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_6;
- /* "PETSc/Mat.pyx":411
+ /* "PETSc/Mat.pyx":405
* if comm is None: comm = scatter.getComm()
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
@@ -114159,16 +121348,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMa
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":412
+ /* "PETSc/Mat.pyx":406
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateScatter(ccomm, scatter.sct, &newmat) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* return self
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateScatter(__pyx_v_ccomm, __pyx_v_scatter->sct, (&__pyx_v_newmat))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(33, 412, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateScatter(__pyx_v_ccomm, __pyx_v_scatter->sct, (&__pyx_v_newmat))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(33, 406, __pyx_L1_error)
- /* "PETSc/Mat.pyx":413
+ /* "PETSc/Mat.pyx":407
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateScatter(ccomm, scatter.sct, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -114178,22 +121367,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMa
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":414
+ /* "PETSc/Mat.pyx":408
* CHKERR( MatCreateScatter(ccomm, scatter.sct, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
* return self # <<<<<<<<<<<<<<
*
- * def createNormal(self, Mat mat not None):
+ * def createNormal(self, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":408
+ /* "PETSc/Mat.pyx":402
* #
*
- * def createScatter(self, Scatter scatter not None, comm=None): # <<<<<<<<<<<<<<
+ * def createScatter(self, Scatter scatter, comm=None): # <<<<<<<<<<<<<<
* if comm is None: comm = scatter.getComm()
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
@@ -114212,10 +121401,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_64createScatter(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":416
+/* "PETSc/Mat.pyx":410
* return self
*
- * def createNormal(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def createNormal(self, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateNormal(mat.mat, &newmat) )
*/
@@ -114236,6 +121425,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_67createNormal(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -114246,7 +121436,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_67createNormal(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createNormal") < 0)) __PYX_ERR(33, 416, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createNormal") < 0)) __PYX_ERR(33, 410, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -114257,13 +121447,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_67createNormal(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createNormal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 416, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createNormal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 410, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createNormal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 416, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 410, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_66createNormal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -114282,25 +121472,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_66createNormal(struct PyPetscMat
int __pyx_t_1;
__Pyx_RefNannySetupContext("createNormal", 0);
- /* "PETSc/Mat.pyx":417
+ /* "PETSc/Mat.pyx":411
*
- * def createNormal(self, Mat mat not None):
+ * def createNormal(self, Mat mat):
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
* CHKERR( MatCreateNormal(mat.mat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":418
- * def createNormal(self, Mat mat not None):
+ /* "PETSc/Mat.pyx":412
+ * def createNormal(self, Mat mat):
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateNormal(mat.mat, &newmat) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* return self
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateNormal(__pyx_v_mat->mat, (&__pyx_v_newmat))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 418, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateNormal(__pyx_v_mat->mat, (&__pyx_v_newmat))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 412, __pyx_L1_error)
- /* "PETSc/Mat.pyx":419
+ /* "PETSc/Mat.pyx":413
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateNormal(mat.mat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -114310,22 +121500,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_66createNormal(struct PyPetscMat
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":420
+ /* "PETSc/Mat.pyx":414
* CHKERR( MatCreateNormal(mat.mat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
* return self # <<<<<<<<<<<<<<
*
- * def createTranspose(self, Mat mat not None):
+ * def createTranspose(self, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":416
+ /* "PETSc/Mat.pyx":410
* return self
*
- * def createNormal(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def createNormal(self, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateNormal(mat.mat, &newmat) )
*/
@@ -114340,10 +121530,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_66createNormal(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":422
+/* "PETSc/Mat.pyx":416
* return self
*
- * def createTranspose(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def createTranspose(self, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateTranspose(mat.mat, &newmat) )
*/
@@ -114364,6 +121554,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_69createTranspose(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -114374,7 +121565,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_69createTranspose(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createTranspose") < 0)) __PYX_ERR(33, 422, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createTranspose") < 0)) __PYX_ERR(33, 416, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -114385,13 +121576,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_69createTranspose(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createTranspose", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 422, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createTranspose", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 416, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createTranspose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 422, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 416, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_68createTranspose(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -114410,25 +121601,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_68createTranspose(struct PyPetsc
int __pyx_t_1;
__Pyx_RefNannySetupContext("createTranspose", 0);
- /* "PETSc/Mat.pyx":423
+ /* "PETSc/Mat.pyx":417
*
- * def createTranspose(self, Mat mat not None):
+ * def createTranspose(self, Mat mat):
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
* CHKERR( MatCreateTranspose(mat.mat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":424
- * def createTranspose(self, Mat mat not None):
+ /* "PETSc/Mat.pyx":418
+ * def createTranspose(self, Mat mat):
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateTranspose(mat.mat, &newmat) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* return self
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateTranspose(__pyx_v_mat->mat, (&__pyx_v_newmat))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 424, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateTranspose(__pyx_v_mat->mat, (&__pyx_v_newmat))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 418, __pyx_L1_error)
- /* "PETSc/Mat.pyx":425
+ /* "PETSc/Mat.pyx":419
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateTranspose(mat.mat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
@@ -114438,22 +121629,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_68createTranspose(struct PyPetsc
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":426
+ /* "PETSc/Mat.pyx":420
* CHKERR( MatCreateTranspose(mat.mat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
* return self # <<<<<<<<<<<<<<
*
- * def createLRC(self, Mat A not None, Mat U not None, Mat V not None):
+ * def createLRC(self, Mat A or None, Mat U, Vec c or None, Mat V or None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":422
+ /* "PETSc/Mat.pyx":416
* return self
*
- * def createTranspose(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def createTranspose(self, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscMat newmat = NULL
* CHKERR( MatCreateTranspose(mat.mat, &newmat) )
*/
@@ -114468,34 +121659,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_68createTranspose(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":428
+/* "PETSc/Mat.pyx":422
* return self
*
- * def createLRC(self, Mat A not None, Mat U not None, Mat V not None): # <<<<<<<<<<<<<<
- * cdef PetscMat newmat = NULL
- * CHKERR( MatCreateLRC(A.mat, U.mat, V.mat, &newmat) )
+ * def createLRC(self, Mat A or None, Mat U, Vec c or None, Mat V or None): # <<<<<<<<<<<<<<
+ * cdef PetscMat Amat = NULL
+ * cdef PetscMat Umat = U.mat
*/
/* Python wrapper */
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_71createLRC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_70createLRC[] = "Mat.createLRC(self, Mat A, Mat U, Mat V)";
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_70createLRC[] = "Mat.createLRC(self, Mat A, Mat U, Vec c, Mat V)";
static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_71createLRC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_A = 0;
struct PyPetscMatObject *__pyx_v_U = 0;
+ struct PyPetscVecObject *__pyx_v_c = 0;
struct PyPetscMatObject *__pyx_v_V = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("createLRC (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_A,&__pyx_n_s_U,&__pyx_n_s_V,0};
- PyObject* values[3] = {0,0,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_A,&__pyx_n_s_U,&__pyx_n_s_c,&__pyx_n_s_V,0};
+ PyObject* values[4] = {0,0,0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -114504,43 +121701,54 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_71createLRC(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_A)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_U)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createLRC", 1, 3, 3, 1); __PYX_ERR(33, 428, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createLRC", 1, 4, 4, 1); __PYX_ERR(33, 422, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
- if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_c)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createLRC", 1, 3, 3, 2); __PYX_ERR(33, 428, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createLRC", 1, 4, 4, 2); __PYX_ERR(33, 422, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("createLRC", 1, 4, 4, 3); __PYX_ERR(33, 422, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createLRC") < 0)) __PYX_ERR(33, 428, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createLRC") < 0)) __PYX_ERR(33, 422, __pyx_L3_error)
}
- } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
}
__pyx_v_A = ((struct PyPetscMatObject *)values[0]);
__pyx_v_U = ((struct PyPetscMatObject *)values[1]);
- __pyx_v_V = ((struct PyPetscMatObject *)values[2]);
+ __pyx_v_c = ((struct PyPetscVecObject *)values[2]);
+ __pyx_v_V = ((struct PyPetscMatObject *)values[3]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createLRC", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 428, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createLRC", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 422, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createLRC", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "A", 0))) __PYX_ERR(33, 428, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_U), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "U", 0))) __PYX_ERR(33, 428, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_V), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "V", 0))) __PYX_ERR(33, 428, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_A, __pyx_v_U, __pyx_v_V);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "A", 0))) __PYX_ERR(33, 422, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_U), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "U", 0))) __PYX_ERR(33, 422, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_c), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "c", 0))) __PYX_ERR(33, 422, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_V), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "V", 0))) __PYX_ERR(33, 422, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_A, __pyx_v_U, __pyx_v_c, __pyx_v_V);
/* function exit code */
goto __pyx_L0;
@@ -114551,34 +121759,121 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_71createLRC(PyObject *__pyx_v_se
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscMatObject *__pyx_v_U, struct PyPetscMatObject *__pyx_v_V) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscMatObject *__pyx_v_U, struct PyPetscVecObject *__pyx_v_c, struct PyPetscMatObject *__pyx_v_V) {
+ Mat __pyx_v_Amat;
+ Mat __pyx_v_Umat;
+ Vec __pyx_v_cvec;
+ Mat __pyx_v_Vmat;
Mat __pyx_v_newmat;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
+ Mat __pyx_t_1;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ Vec __pyx_t_4;
+ int __pyx_t_5;
__Pyx_RefNannySetupContext("createLRC", 0);
- /* "PETSc/Mat.pyx":429
+ /* "PETSc/Mat.pyx":423
*
- * def createLRC(self, Mat A not None, Mat U not None, Mat V not None):
+ * def createLRC(self, Mat A or None, Mat U, Vec c or None, Mat V or None):
+ * cdef PetscMat Amat = NULL # <<<<<<<<<<<<<<
+ * cdef PetscMat Umat = U.mat
+ * cdef PetscVec cvec = NULL
+ */
+ __pyx_v_Amat = NULL;
+
+ /* "PETSc/Mat.pyx":424
+ * def createLRC(self, Mat A or None, Mat U, Vec c or None, Mat V or None):
+ * cdef PetscMat Amat = NULL
+ * cdef PetscMat Umat = U.mat # <<<<<<<<<<<<<<
+ * cdef PetscVec cvec = NULL
+ * cdef PetscMat Vmat = NULL
+ */
+ __pyx_t_1 = __pyx_v_U->mat;
+ __pyx_v_Umat = __pyx_t_1;
+
+ /* "PETSc/Mat.pyx":425
+ * cdef PetscMat Amat = NULL
+ * cdef PetscMat Umat = U.mat
+ * cdef PetscVec cvec = NULL # <<<<<<<<<<<<<<
+ * cdef PetscMat Vmat = NULL
+ * cdef PetscMat newmat = NULL
+ */
+ __pyx_v_cvec = NULL;
+
+ /* "PETSc/Mat.pyx":426
+ * cdef PetscMat Umat = U.mat
+ * cdef PetscVec cvec = NULL
+ * cdef PetscMat Vmat = NULL # <<<<<<<<<<<<<<
+ * cdef PetscMat newmat = NULL
+ * if A is not None: Amat = A.mat
+ */
+ __pyx_v_Vmat = NULL;
+
+ /* "PETSc/Mat.pyx":427
+ * cdef PetscVec cvec = NULL
+ * cdef PetscMat Vmat = NULL
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
- * CHKERR( MatCreateLRC(A.mat, U.mat, V.mat, &newmat) )
- * PetscCLEAR(self.obj); self.mat = newmat
+ * if A is not None: Amat = A.mat
+ * if c is not None: cvec = c.vec
*/
__pyx_v_newmat = NULL;
- /* "PETSc/Mat.pyx":430
- * def createLRC(self, Mat A not None, Mat U not None, Mat V not None):
+ /* "PETSc/Mat.pyx":428
+ * cdef PetscMat Vmat = NULL
* cdef PetscMat newmat = NULL
- * CHKERR( MatCreateLRC(A.mat, U.mat, V.mat, &newmat) ) # <<<<<<<<<<<<<<
+ * if A is not None: Amat = A.mat # <<<<<<<<<<<<<<
+ * if c is not None: cvec = c.vec
+ * if V is not None: Vmat = V.mat
+ */
+ __pyx_t_2 = (((PyObject *)__pyx_v_A) != Py_None);
+ __pyx_t_3 = (__pyx_t_2 != 0);
+ if (__pyx_t_3) {
+ __pyx_t_1 = __pyx_v_A->mat;
+ __pyx_v_Amat = __pyx_t_1;
+ }
+
+ /* "PETSc/Mat.pyx":429
+ * cdef PetscMat newmat = NULL
+ * if A is not None: Amat = A.mat
+ * if c is not None: cvec = c.vec # <<<<<<<<<<<<<<
+ * if V is not None: Vmat = V.mat
+ * CHKERR( MatCreateLRC(Amat, Umat, cvec, Vmat, &newmat) )
+ */
+ __pyx_t_3 = (((PyObject *)__pyx_v_c) != Py_None);
+ __pyx_t_2 = (__pyx_t_3 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_4 = __pyx_v_c->vec;
+ __pyx_v_cvec = __pyx_t_4;
+ }
+
+ /* "PETSc/Mat.pyx":430
+ * if A is not None: Amat = A.mat
+ * if c is not None: cvec = c.vec
+ * if V is not None: Vmat = V.mat # <<<<<<<<<<<<<<
+ * CHKERR( MatCreateLRC(Amat, Umat, cvec, Vmat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
- * return self
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateLRC(__pyx_v_A->mat, __pyx_v_U->mat, __pyx_v_V->mat, (&__pyx_v_newmat))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 430, __pyx_L1_error)
+ __pyx_t_2 = (((PyObject *)__pyx_v_V) != Py_None);
+ __pyx_t_3 = (__pyx_t_2 != 0);
+ if (__pyx_t_3) {
+ __pyx_t_1 = __pyx_v_V->mat;
+ __pyx_v_Vmat = __pyx_t_1;
+ }
/* "PETSc/Mat.pyx":431
- * cdef PetscMat newmat = NULL
- * CHKERR( MatCreateLRC(A.mat, U.mat, V.mat, &newmat) )
+ * if c is not None: cvec = c.vec
+ * if V is not None: Vmat = V.mat
+ * CHKERR( MatCreateLRC(Amat, Umat, cvec, Vmat, &newmat) ) # <<<<<<<<<<<<<<
+ * PetscCLEAR(self.obj); self.mat = newmat
+ * return self
+ */
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateLRC(__pyx_v_Amat, __pyx_v_Umat, __pyx_v_cvec, __pyx_v_Vmat, (&__pyx_v_newmat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 431, __pyx_L1_error)
+
+ /* "PETSc/Mat.pyx":432
+ * if V is not None: Vmat = V.mat
+ * CHKERR( MatCreateLRC(Amat, Umat, cvec, Vmat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
* return self
*
@@ -114586,24 +121881,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(struct PyPetscMatObj
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->mat = __pyx_v_newmat;
- /* "PETSc/Mat.pyx":432
- * CHKERR( MatCreateLRC(A.mat, U.mat, V.mat, &newmat) )
+ /* "PETSc/Mat.pyx":433
+ * CHKERR( MatCreateLRC(Amat, Umat, cvec, Vmat, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
* return self # <<<<<<<<<<<<<<
*
- * def createSubMatrix(self, Mat A not None,
+ * def createSubMatrixVirtual(self, Mat A, IS isrow, IS iscol=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":428
+ /* "PETSc/Mat.pyx":422
* return self
*
- * def createLRC(self, Mat A not None, Mat U not None, Mat V not None): # <<<<<<<<<<<<<<
- * cdef PetscMat newmat = NULL
- * CHKERR( MatCreateLRC(A.mat, U.mat, V.mat, &newmat) )
+ * def createLRC(self, Mat A or None, Mat U, Vec c or None, Mat V or None): # <<<<<<<<<<<<<<
+ * cdef PetscMat Amat = NULL
+ * cdef PetscMat Umat = U.mat
*/
/* function exit code */
@@ -114616,43 +121911,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_70createLRC(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":434
+/* "PETSc/Mat.pyx":435
* return self
*
- * def createSubMatrix(self, Mat A not None, # <<<<<<<<<<<<<<
- * IS isrow not None, IS iscol=None):
+ * def createSubMatrixVirtual(self, Mat A, IS isrow, IS iscol=None): # <<<<<<<<<<<<<<
* if iscol is None: iscol = isrow
+ * cdef PetscMat newmat = NULL
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_72createSubMatrix[] = "Mat.createSubMatrix(self, Mat A, IS isrow, IS iscol=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrixVirtual(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_72createSubMatrixVirtual[] = "Mat.createSubMatrixVirtual(self, Mat A, IS isrow, IS iscol=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrixVirtual(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_A = 0;
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("createSubMatrix (wrapper)", 0);
+ __Pyx_RefNannySetupContext("createSubMatrixVirtual (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_A,&__pyx_n_s_isrow,&__pyx_n_s_iscol,0};
PyObject* values[3] = {0,0,0};
-
- /* "PETSc/Mat.pyx":435
- *
- * def createSubMatrix(self, Mat A not None,
- * IS isrow not None, IS iscol=None): # <<<<<<<<<<<<<<
- * if iscol is None: iscol = isrow
- * cdef PetscMat newmat = NULL
- */
values[2] = (PyObject *)((struct PyPetscISObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -114661,11 +121951,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrix(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_A)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createSubMatrix", 0, 2, 3, 1); __PYX_ERR(33, 434, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSubMatrixVirtual", 0, 2, 3, 1); __PYX_ERR(33, 435, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol);
@@ -114673,11 +121965,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrix(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSubMatrix") < 0)) __PYX_ERR(33, 434, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSubMatrixVirtual") < 0)) __PYX_ERR(33, 435, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -114690,24 +121983,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrix(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createSubMatrix", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 434, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSubMatrixVirtual", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 435, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrixVirtual", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "A", 0))) __PYX_ERR(33, 434, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "A", 0))) __PYX_ERR(33, 435, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 435, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 1, "iscol", 0))) __PYX_ERR(33, 435, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_A, __pyx_v_isrow, __pyx_v_iscol);
-
- /* "PETSc/Mat.pyx":434
- * return self
- *
- * def createSubMatrix(self, Mat A not None, # <<<<<<<<<<<<<<
- * IS isrow not None, IS iscol=None):
- * if iscol is None: iscol = isrow
- */
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrixVirtual(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_A, __pyx_v_isrow, __pyx_v_iscol);
/* function exit code */
goto __pyx_L0;
@@ -114718,22 +122003,22 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrix(PyObject *__py
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrixVirtual(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_A, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol) {
Mat __pyx_v_newmat;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
int __pyx_t_2;
int __pyx_t_3;
- __Pyx_RefNannySetupContext("createSubMatrix", 0);
+ __Pyx_RefNannySetupContext("createSubMatrixVirtual", 0);
__Pyx_INCREF((PyObject *)__pyx_v_iscol);
/* "PETSc/Mat.pyx":436
- * def createSubMatrix(self, Mat A not None,
- * IS isrow not None, IS iscol=None):
+ *
+ * def createSubMatrixVirtual(self, Mat A, IS isrow, IS iscol=None):
* if iscol is None: iscol = isrow # <<<<<<<<<<<<<<
* cdef PetscMat newmat = NULL
- * CHKERR( MatCreateSubMatrix(A.mat, isrow.iset, iscol.iset, &newmat) )
+ * CHKERR( MatCreateSubMatrixVirtual(A.mat, isrow.iset, iscol.iset, &newmat) )
*/
__pyx_t_1 = (((PyObject *)__pyx_v_iscol) == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
@@ -114743,10 +122028,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrix(struct PyPetsc
}
/* "PETSc/Mat.pyx":437
- * IS isrow not None, IS iscol=None):
+ * def createSubMatrixVirtual(self, Mat A, IS isrow, IS iscol=None):
* if iscol is None: iscol = isrow
* cdef PetscMat newmat = NULL # <<<<<<<<<<<<<<
- * CHKERR( MatCreateSubMatrix(A.mat, isrow.iset, iscol.iset, &newmat) )
+ * CHKERR( MatCreateSubMatrixVirtual(A.mat, isrow.iset, iscol.iset, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
*/
__pyx_v_newmat = NULL;
@@ -114754,15 +122039,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrix(struct PyPetsc
/* "PETSc/Mat.pyx":438
* if iscol is None: iscol = isrow
* cdef PetscMat newmat = NULL
- * CHKERR( MatCreateSubMatrix(A.mat, isrow.iset, iscol.iset, &newmat) ) # <<<<<<<<<<<<<<
+ * CHKERR( MatCreateSubMatrixVirtual(A.mat, isrow.iset, iscol.iset, &newmat) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.mat = newmat
* return self
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateSubMatrix(__pyx_v_A->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_newmat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 438, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateSubMatrixVirtual(__pyx_v_A->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_newmat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 438, __pyx_L1_error)
/* "PETSc/Mat.pyx":439
* cdef PetscMat newmat = NULL
- * CHKERR( MatCreateSubMatrix(A.mat, isrow.iset, iscol.iset, &newmat) )
+ * CHKERR( MatCreateSubMatrixVirtual(A.mat, isrow.iset, iscol.iset, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat # <<<<<<<<<<<<<<
* return self
*
@@ -114771,7 +122056,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrix(struct PyPetsc
__pyx_v_self->mat = __pyx_v_newmat;
/* "PETSc/Mat.pyx":440
- * CHKERR( MatCreateSubMatrix(A.mat, isrow.iset, iscol.iset, &newmat) )
+ * CHKERR( MatCreateSubMatrixVirtual(A.mat, isrow.iset, iscol.iset, &newmat) )
* PetscCLEAR(self.obj); self.mat = newmat
* return self # <<<<<<<<<<<<<<
*
@@ -114782,17 +122067,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_72createSubMatrix(struct PyPetsc
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":434
+ /* "PETSc/Mat.pyx":435
* return self
*
- * def createSubMatrix(self, Mat A not None, # <<<<<<<<<<<<<<
- * IS isrow not None, IS iscol=None):
+ * def createSubMatrixVirtual(self, Mat A, IS isrow, IS iscol=None): # <<<<<<<<<<<<<<
* if iscol is None: iscol = isrow
+ * cdef PetscMat newmat = NULL
*/
/* function exit code */
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrixVirtual", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_iscol);
@@ -114831,9 +122116,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_75createNest(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -114842,16 +122131,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_75createNest(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mats)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrows);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscols);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -114864,8 +122156,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_75createNest(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -114947,7 +122242,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
if (likely(!__pyx_t_4)) {
if (likely(PyList_CheckExact(__pyx_t_2))) {
if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_5 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(33, 444, __pyx_L1_error)
#else
__pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 444, __pyx_L1_error)
@@ -114955,7 +122250,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
#endif
} else {
if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(33, 444, __pyx_L1_error)
#else
__pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 444, __pyx_L1_error)
@@ -114967,7 +122262,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
if (unlikely(!__pyx_t_5)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(33, 444, __pyx_L1_error)
}
break;
@@ -115016,8 +122311,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_3 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 447, __pyx_L1_error)
- __pyx_t_7 = PyObject_Length(__pyx_v_mats); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(33, 447, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(33, 447, __pyx_L1_error)
+ __pyx_t_7 = PyObject_Length(__pyx_v_mats); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(33, 447, __pyx_L1_error)
if (unlikely(!((__pyx_t_3 == __pyx_t_7) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
__PYX_ERR(33, 447, __pyx_L1_error)
@@ -115079,10 +122374,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_7 = PyObject_Length(__pyx_v_iscols); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(33, 452, __pyx_L1_error)
+ __pyx_t_7 = PyObject_Length(__pyx_v_iscols); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(33, 452, __pyx_L1_error)
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_mats, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 452, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 452, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(33, 452, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (unlikely(!((__pyx_t_7 == __pyx_t_3) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
@@ -115131,7 +122426,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
* cdef Py_ssize_t j, mc = len(mats[0])
* cdef PetscInt nr = <PetscInt>mr
*/
- __pyx_t_3 = PyObject_Length(__pyx_v_mats); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 456, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_v_mats); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(33, 456, __pyx_L1_error)
__pyx_v_mr = __pyx_t_3;
/* "PETSc/Mat.pyx":457
@@ -115143,7 +122438,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
*/
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_mats, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 457, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 457, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(33, 457, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_v_mc = __pyx_t_3;
@@ -115380,7 +122675,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
* PetscCLEAR(self.obj); self.mat = newmat
* return self
*/
- __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateNest(__pyx_v_ccomm, __pyx_v_nr, __pyx_v_cisrows, __pyx_v_nc, __pyx_v_ciscols, __pyx_v_cmats, (&__pyx_v_newmat))); if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(33, 476, __pyx_L1_error)
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateNest(__pyx_v_ccomm, __pyx_v_nr, __pyx_v_cisrows, __pyx_v_nc, __pyx_v_ciscols, __pyx_v_cmats, (&__pyx_v_newmat))); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(33, 476, __pyx_L1_error)
/* "PETSc/Mat.pyx":477
* cdef PetscMat newmat = NULL
@@ -115397,7 +122692,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_74createNest(struct PyPetscMatOb
* PetscCLEAR(self.obj); self.mat = newmat
* return self # <<<<<<<<<<<<<<
*
- * ##def createIS(self, size, LGMap lgmap not None, comm=None):
+ * ##def createIS(self, size, LGMap lgmap, comm=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
@@ -115460,8 +122755,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_77createPython(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -115470,11 +122768,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_77createPython(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_context);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -115487,7 +122787,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_77createPython(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -115558,7 +122860,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMat
* Sys_Layout(ccomm, rbs, &m, &M)
* Sys_Layout(ccomm, cbs, &n, &N)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, Py_None, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 498, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Mat_Sizes(__pyx_v_size, Py_None, (&__pyx_v_rbs), (&__pyx_v_cbs), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_M), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 498, __pyx_L1_error)
/* "PETSc/Mat.pyx":499
* cdef PetscInt rbs = 0, cbs = 0, m = 0, n = 0, M = 0, N = 0
@@ -115567,7 +122869,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMat
* Sys_Layout(ccomm, cbs, &n, &N)
* # create matrix
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_rbs, (&__pyx_v_m), (&__pyx_v_M)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 499, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_rbs, (&__pyx_v_m), (&__pyx_v_M)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 499, __pyx_L1_error)
/* "PETSc/Mat.pyx":500
* Mat_Sizes(size, None, &rbs, &cbs, &m, &n, &M, &N)
@@ -115576,7 +122878,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMat
* # create matrix
* cdef PetscMat newmat = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_cbs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 500, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_Sys_Layout(__pyx_v_ccomm, __pyx_v_cbs, (&__pyx_v_n), (&__pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 500, __pyx_L1_error)
/* "PETSc/Mat.pyx":502
* Sys_Layout(ccomm, cbs, &n, &N)
@@ -115594,7 +122896,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMat
* PetscCLEAR(self.obj); self.mat = newmat
* CHKERR( MatSetSizes(self.mat, m, n, M, N) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_ccomm, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 503, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_ccomm, (&__pyx_v_newmat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 503, __pyx_L1_error)
/* "PETSc/Mat.pyx":504
* cdef PetscMat newmat = NULL
@@ -115613,7 +122915,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMat
* CHKERR( MatSetType(self.mat, MATPYTHON) )
* CHKERR( MatPythonSetContext(self.mat, <void*>context) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetSizes(__pyx_v_self->mat, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 505, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetSizes(__pyx_v_self->mat, __pyx_v_m, __pyx_v_n, __pyx_v_M, __pyx_v_N)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 505, __pyx_L1_error)
/* "PETSc/Mat.pyx":506
* PetscCLEAR(self.obj); self.mat = newmat
@@ -115622,7 +122924,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMat
* CHKERR( MatPythonSetContext(self.mat, <void*>context) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetType(__pyx_v_self->mat, MATPYTHON)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 506, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetType(__pyx_v_self->mat, MATPYTHON)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 506, __pyx_L1_error)
/* "PETSc/Mat.pyx":507
* CHKERR( MatSetSizes(self.mat, m, n, M, N) )
@@ -115631,7 +122933,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_76createPython(struct PyPetscMat
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonSetContext(__pyx_v_self->mat, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 507, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonSetContext(__pyx_v_self->mat, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 507, __pyx_L1_error)
/* "PETSc/Mat.pyx":508
* CHKERR( MatSetType(self.mat, MATPYTHON) )
@@ -115687,6 +122989,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_79setPythonContext(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -115734,7 +123037,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_78setPythonContext(struct PyPets
*
* def getPythonContext(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonSetContext(__pyx_v_self->mat, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 511, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonSetContext(__pyx_v_self->mat, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 511, __pyx_L1_error)
/* "PETSc/Mat.pyx":510
* return self
@@ -115805,7 +123108,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_80getPythonContext(struct PyPets
* if context == NULL: return None
* else: return <object> context
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonGetContext(__pyx_v_self->mat, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 515, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonGetContext(__pyx_v_self->mat, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 515, __pyx_L1_error)
/* "PETSc/Mat.pyx":516
* cdef void *context = NULL
@@ -115878,6 +123181,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_83setPythonType(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -115949,7 +123253,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_82setPythonType(struct PyPetscMa
*
* #
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonSetType(__pyx_v_self->mat, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 522, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPythonSetType(__pyx_v_self->mat, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 522, __pyx_L1_error)
/* "PETSc/Mat.pyx":519
* else: return <object> context
@@ -115997,6 +123301,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_85setOptionsPrefix(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -116068,7 +123373,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_84setOptionsPrefix(struct PyPets
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetOptionsPrefix(__pyx_v_self->mat, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 529, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetOptionsPrefix(__pyx_v_self->mat, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 529, __pyx_L1_error)
/* "PETSc/Mat.pyx":526
* #
@@ -116141,7 +123446,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_86getOptionsPrefix(struct PyPets
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOptionsPrefix(__pyx_v_self->mat, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 533, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOptionsPrefix(__pyx_v_self->mat, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 533, __pyx_L1_error)
/* "PETSc/Mat.pyx":534
* cdef const_char *cval = NULL
@@ -116214,7 +123519,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_88setFromOptions(struct PyPetscM
*
* def setUp(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetFromOptions(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 537, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetFromOptions(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 537, __pyx_L1_error)
/* "PETSc/Mat.pyx":536
* return bytes2str(cval)
@@ -116274,7 +123579,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_90setUp(struct PyPetscMatObject
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetUp(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 540, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetUp(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 540, __pyx_L1_error)
/* "PETSc/Mat.pyx":541
* def setUp(self):
@@ -116331,7 +123636,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_93setOption(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -116340,6 +123647,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_93setOption(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_option)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_flag)) != 0)) kw_args--;
else {
@@ -116390,7 +123698,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_92setOption(struct PyPetscMatObj
*/
__pyx_t_1 = ((MatOption)__Pyx_PyInt_As_MatOption(__pyx_v_option)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 544, __pyx_L1_error)
__pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 544, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetOption(__pyx_v_self->mat, __pyx_t_1, __pyx_t_2)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 544, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetOption(__pyx_v_self->mat, __pyx_t_1, __pyx_t_2)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 544, __pyx_L1_error)
/* "PETSc/Mat.pyx":543
* return self
@@ -116461,7 +123769,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_94getType(struct PyPetscMatObjec
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetType(__pyx_v_self->mat, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 548, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetType(__pyx_v_self->mat, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 548, __pyx_L1_error)
/* "PETSc/Mat.pyx":549
* cdef PetscMatType cval = NULL
@@ -116549,7 +123857,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_96getSize(struct PyPetscMatObjec
* return (toInt(M), toInt(N))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 553, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 553, __pyx_L1_error)
/* "PETSc/Mat.pyx":554
* cdef PetscInt M = 0, N = 0
@@ -116649,7 +123957,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_98getLocalSize(struct PyPetscMat
* return (toInt(m), toInt(n))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 558, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 558, __pyx_L1_error)
/* "PETSc/Mat.pyx":559
* cdef PetscInt m = 0, n = 0
@@ -116762,7 +124070,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_100getSizes(struct PyPetscMatObj
* CHKERR( MatGetSize(self.mat, &M, &N) )
* return ((toInt(m), toInt(M)), (toInt(n), toInt(N)))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 564, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 564, __pyx_L1_error)
/* "PETSc/Mat.pyx":565
* cdef PetscInt M = 0, N = 0
@@ -116771,7 +124079,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_100getSizes(struct PyPetscMatObj
* return ((toInt(m), toInt(M)), (toInt(n), toInt(N)))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 565, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, (&__pyx_v_M), (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 565, __pyx_L1_error)
/* "PETSc/Mat.pyx":566
* CHKERR( MatGetLocalSize(self.mat, &m, &n) )
@@ -116888,7 +124196,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_102getBlockSize(struct PyPetscMa
* return toInt(bs)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_self->mat, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 570, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_self->mat, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 570, __pyx_L1_error)
/* "PETSc/Mat.pyx":571
* cdef PetscInt bs = 0
@@ -116976,7 +124284,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_104getBlockSizes(struct PyPetscM
* return (toInt(rbs), toInt(cbs))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_self->mat, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 575, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSizes(__pyx_v_self->mat, (&__pyx_v_rbs), (&__pyx_v_cbs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 575, __pyx_L1_error)
/* "PETSc/Mat.pyx":576
* cdef PetscInt rbs = 0, cbs = 0
@@ -117076,7 +124384,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_106getOwnershipRange(struct PyPe
* return (toInt(ival1), toInt(ival2))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRange(__pyx_v_self->mat, (&__pyx_v_ival1), (&__pyx_v_ival2))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 580, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRange(__pyx_v_self->mat, (&__pyx_v_ival1), (&__pyx_v_ival2))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 580, __pyx_L1_error)
/* "PETSc/Mat.pyx":581
* cdef PetscInt ival1 = 0, ival2 = 0
@@ -117174,7 +124482,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_108getOwnershipRanges(struct PyP
* cdef MPI_Comm comm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.mat, &comm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRanges(__pyx_v_self->mat, (&__pyx_v_rowrng))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 585, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRanges(__pyx_v_self->mat, (&__pyx_v_rowrng))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 585, __pyx_L1_error)
/* "PETSc/Mat.pyx":586
* cdef const_PetscInt *rowrng = NULL
@@ -117192,7 +124500,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_108getOwnershipRanges(struct PyP
* cdef int size = -1
* CHKERR( MPI_Comm_size(comm, &size) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->mat), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 587, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->mat), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 587, __pyx_L1_error)
/* "PETSc/Mat.pyx":588
* cdef MPI_Comm comm = MPI_COMM_NULL
@@ -117210,7 +124518,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_108getOwnershipRanges(struct PyP
* return array_i(size+1, rowrng)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 589, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 589, __pyx_L1_error)
/* "PETSc/Mat.pyx":590
* cdef int size = -1
@@ -117298,7 +124606,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_110getOwnershipRangeColumn(struc
* return (toInt(ival1), toInt(ival2))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRangeColumn(__pyx_v_self->mat, (&__pyx_v_ival1), (&__pyx_v_ival2))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 594, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRangeColumn(__pyx_v_self->mat, (&__pyx_v_ival1), (&__pyx_v_ival2))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 594, __pyx_L1_error)
/* "PETSc/Mat.pyx":595
* cdef PetscInt ival1 = 0, ival2 = 0
@@ -117396,7 +124704,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_112getOwnershipRangesColumn(stru
* cdef MPI_Comm comm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.mat, &comm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRangesColumn(__pyx_v_self->mat, (&__pyx_v_colrng))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 599, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRangesColumn(__pyx_v_self->mat, (&__pyx_v_colrng))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 599, __pyx_L1_error)
/* "PETSc/Mat.pyx":600
* cdef const_PetscInt *colrng = NULL
@@ -117414,7 +124722,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_112getOwnershipRangesColumn(stru
* cdef int size = -1
* CHKERR( MPI_Comm_size(comm, &size) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->mat), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 601, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->mat), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 601, __pyx_L1_error)
/* "PETSc/Mat.pyx":602
* cdef MPI_Comm comm = MPI_COMM_NULL
@@ -117432,7 +124740,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_112getOwnershipRangesColumn(stru
* return array_i(size+1, colrng)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 603, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MPI_Comm_size(__pyx_v_comm, (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 603, __pyx_L1_error)
/* "PETSc/Mat.pyx":604
* cdef int size = -1
@@ -117532,7 +124840,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_114getOwnershipIS(struct PyPetsc
* return (rows, cols)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipIS(__pyx_v_self->mat, (&__pyx_v_rows->iset), (&__pyx_v_cols->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 609, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipIS(__pyx_v_self->mat, (&__pyx_v_rows->iset), (&__pyx_v_cols->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 609, __pyx_L1_error)
/* "PETSc/Mat.pyx":610
* cdef IS cols = IS()
@@ -117600,6 +124908,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_117getInfo(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -117617,6 +124926,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_117getInfo(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -117655,7 +124965,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_116getInfo(struct PyPetscMatObje
* cdef PetscMatInfo cinfo
* CHKERR( MatGetInfo(self.mat, itype, &cinfo) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_infotype(__pyx_v_info); if (unlikely(__pyx_t_1 == ((MatInfoType)-1L))) __PYX_ERR(33, 613, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_infotype(__pyx_v_info); if (unlikely(__pyx_t_1 == ((MatInfoType)((MatInfoType)-1L)))) __PYX_ERR(33, 613, __pyx_L1_error)
__pyx_v_itype = __pyx_t_1;
/* "PETSc/Mat.pyx":615
@@ -117665,7 +124975,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_116getInfo(struct PyPetscMatObje
* return cinfo
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetInfo(__pyx_v_self->mat, __pyx_v_itype, (&__pyx_v_cinfo))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 615, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetInfo(__pyx_v_self->mat, __pyx_v_itype, (&__pyx_v_cinfo))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 615, __pyx_L1_error)
/* "PETSc/Mat.pyx":616
* cdef PetscMatInfo cinfo
@@ -117725,6 +125035,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_119duplicate(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -117742,6 +125053,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_119duplicate(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -117780,7 +125092,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_118duplicate(struct PyPetscMatOb
* def duplicate(self, copy=False):
* cdef PetscMatDuplicateOption flag = MAT_DO_NOT_COPY_VALUES # <<<<<<<<<<<<<<
* if copy: flag = MAT_COPY_VALUES
- * cdef Mat mat = type(self)()
+ * if copy > MAT_COPY_VALUES: flag = MAT_SHARE_NONZERO_PATTERN
*/
__pyx_v_flag = MAT_DO_NOT_COPY_VALUES;
@@ -117788,8 +125100,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_118duplicate(struct PyPetscMatOb
* def duplicate(self, copy=False):
* cdef PetscMatDuplicateOption flag = MAT_DO_NOT_COPY_VALUES
* if copy: flag = MAT_COPY_VALUES # <<<<<<<<<<<<<<
+ * if copy > MAT_COPY_VALUES: flag = MAT_SHARE_NONZERO_PATTERN
* cdef Mat mat = type(self)()
- * CHKERR( MatDuplicate(self.mat, flag, &mat.mat) )
*/
__pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 620, __pyx_L1_error)
if (__pyx_t_1) {
@@ -117799,43 +125111,60 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_118duplicate(struct PyPetscMatOb
/* "PETSc/Mat.pyx":621
* cdef PetscMatDuplicateOption flag = MAT_DO_NOT_COPY_VALUES
* if copy: flag = MAT_COPY_VALUES
+ * if copy > MAT_COPY_VALUES: flag = MAT_SHARE_NONZERO_PATTERN # <<<<<<<<<<<<<<
+ * cdef Mat mat = type(self)()
+ * CHKERR( MatDuplicate(self.mat, flag, &mat.mat) )
+ */
+ __pyx_t_2 = __Pyx_PyInt_From_MatDuplicateOption(MAT_COPY_VALUES); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 621, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = PyObject_RichCompare(__pyx_v_copy, __pyx_t_2, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 621, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 621, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (__pyx_t_1) {
+ __pyx_v_flag = MAT_SHARE_NONZERO_PATTERN;
+ }
+
+ /* "PETSc/Mat.pyx":622
+ * if copy: flag = MAT_COPY_VALUES
+ * if copy > MAT_COPY_VALUES: flag = MAT_SHARE_NONZERO_PATTERN
* cdef Mat mat = type(self)() # <<<<<<<<<<<<<<
* CHKERR( MatDuplicate(self.mat, flag, &mat.mat) )
* return mat
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
- __pyx_t_3 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_4 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) {
- __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3);
+ __pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_4 = NULL;
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
+ __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_4)) {
- PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3);
+ PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
- __Pyx_DECREF_SET(__pyx_t_3, function);
+ __Pyx_DECREF_SET(__pyx_t_2, function);
}
}
if (__pyx_t_4) {
- __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 621, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 622, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
- __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 621, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 622, __pyx_L1_error)
}
- __Pyx_GOTREF(__pyx_t_2);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 621, __pyx_L1_error)
- __pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_2);
- __pyx_t_2 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 622, __pyx_L1_error)
+ __pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_3);
+ __pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":622
- * if copy: flag = MAT_COPY_VALUES
+ /* "PETSc/Mat.pyx":623
+ * if copy > MAT_COPY_VALUES: flag = MAT_SHARE_NONZERO_PATTERN
* cdef Mat mat = type(self)()
* CHKERR( MatDuplicate(self.mat, flag, &mat.mat) ) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, __pyx_v_flag, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 622, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, __pyx_v_flag, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 623, __pyx_L1_error)
- /* "PETSc/Mat.pyx":623
+ /* "PETSc/Mat.pyx":624
* cdef Mat mat = type(self)()
* CHKERR( MatDuplicate(self.mat, flag, &mat.mat) )
* return mat # <<<<<<<<<<<<<<
@@ -117869,7 +125198,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_118duplicate(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":625
+/* "PETSc/Mat.pyx":626
* return mat
*
* def copy(self, Mat result=None, structure=None): # <<<<<<<<<<<<<<
@@ -117896,7 +125225,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_121copy(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -117907,6 +125238,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_121copy(PyObject *__pyx_v_self,
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_structure);
@@ -117914,12 +125246,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_121copy(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "copy") < 0)) __PYX_ERR(33, 625, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "copy") < 0)) __PYX_ERR(33, 626, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -117929,13 +125263,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_121copy(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("copy", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 625, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("copy", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 626, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 625, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 626, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_120copy(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_result, __pyx_v_structure);
/* function exit code */
@@ -117962,7 +125296,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
__Pyx_RefNannySetupContext("copy", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":626
+ /* "PETSc/Mat.pyx":627
*
* def copy(self, Mat result=None, structure=None):
* cdef PetscMatDuplicateOption copy = MAT_COPY_VALUES # <<<<<<<<<<<<<<
@@ -117971,17 +125305,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
*/
__pyx_v_copy = MAT_COPY_VALUES;
- /* "PETSc/Mat.pyx":627
+ /* "PETSc/Mat.pyx":628
* def copy(self, Mat result=None, structure=None):
* cdef PetscMatDuplicateOption copy = MAT_COPY_VALUES
* cdef PetscMatStructure mstr = matstructure(structure) # <<<<<<<<<<<<<<
* if result is None:
* result = type(self)()
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matstructure(__pyx_v_structure); if (unlikely(__pyx_t_1 == ((MatStructure)-1L))) __PYX_ERR(33, 627, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matstructure(__pyx_v_structure); if (unlikely(__pyx_t_1 == ((MatStructure)((MatStructure)-1L)))) __PYX_ERR(33, 628, __pyx_L1_error)
__pyx_v_mstr = __pyx_t_1;
- /* "PETSc/Mat.pyx":628
+ /* "PETSc/Mat.pyx":629
* cdef PetscMatDuplicateOption copy = MAT_COPY_VALUES
* cdef PetscMatStructure mstr = matstructure(structure)
* if result is None: # <<<<<<<<<<<<<<
@@ -117992,7 +125326,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":629
+ /* "PETSc/Mat.pyx":630
* cdef PetscMatStructure mstr = matstructure(structure)
* if result is None:
* result = type(self)() # <<<<<<<<<<<<<<
@@ -118001,7 +125335,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_5 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -118011,18 +125345,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
}
}
if (__pyx_t_6) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 629, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 630, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 629, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 630, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 629, __pyx_L1_error)
+ if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 630, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscMatObject *)__pyx_t_4));
__pyx_t_4 = 0;
- /* "PETSc/Mat.pyx":628
+ /* "PETSc/Mat.pyx":629
* cdef PetscMatDuplicateOption copy = MAT_COPY_VALUES
* cdef PetscMatStructure mstr = matstructure(structure)
* if result is None: # <<<<<<<<<<<<<<
@@ -118031,7 +125365,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
*/
}
- /* "PETSc/Mat.pyx":630
+ /* "PETSc/Mat.pyx":631
* if result is None:
* result = type(self)()
* if result.mat == NULL: # <<<<<<<<<<<<<<
@@ -118041,16 +125375,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
__pyx_t_3 = ((__pyx_v_result->mat == NULL) != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":631
+ /* "PETSc/Mat.pyx":632
* result = type(self)()
* if result.mat == NULL:
* CHKERR( MatDuplicate(self.mat, copy, &result.mat) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( MatCopy(self.mat, result.mat, mstr) )
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, __pyx_v_copy, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(33, 631, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, __pyx_v_copy, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(33, 632, __pyx_L1_error)
- /* "PETSc/Mat.pyx":630
+ /* "PETSc/Mat.pyx":631
* if result is None:
* result = type(self)()
* if result.mat == NULL: # <<<<<<<<<<<<<<
@@ -118060,7 +125394,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
goto __pyx_L4;
}
- /* "PETSc/Mat.pyx":633
+ /* "PETSc/Mat.pyx":634
* CHKERR( MatDuplicate(self.mat, copy, &result.mat) )
* else:
* CHKERR( MatCopy(self.mat, result.mat, mstr) ) # <<<<<<<<<<<<<<
@@ -118068,23 +125402,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
*
*/
/*else*/ {
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCopy(__pyx_v_self->mat, __pyx_v_result->mat, __pyx_v_mstr)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(33, 633, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCopy(__pyx_v_self->mat, __pyx_v_result->mat, __pyx_v_mstr)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(33, 634, __pyx_L1_error)
}
__pyx_L4:;
- /* "PETSc/Mat.pyx":634
+ /* "PETSc/Mat.pyx":635
* else:
* CHKERR( MatCopy(self.mat, result.mat, mstr) )
* return result # <<<<<<<<<<<<<<
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":625
+ /* "PETSc/Mat.pyx":626
* return mat
*
* def copy(self, Mat result=None, structure=None): # <<<<<<<<<<<<<<
@@ -118106,10 +125440,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_120copy(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":636
+/* "PETSc/Mat.pyx":637
* return result
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
*/
@@ -118130,6 +125464,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_123load(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118140,7 +125475,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_123load(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "load") < 0)) __PYX_ERR(33, 636, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "load") < 0)) __PYX_ERR(33, 637, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -118151,13 +125486,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_123load(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("load", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 636, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("load", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 637, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.load", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 0, "viewer", 0))) __PYX_ERR(33, 636, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 0, "viewer", 0))) __PYX_ERR(33, 637, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_122load(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
@@ -118178,17 +125513,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_122load(struct PyPetscMatObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("load", 0);
- /* "PETSc/Mat.pyx":637
+ /* "PETSc/Mat.pyx":638
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
* cdef MPI_Comm comm = MPI_COMM_NULL # <<<<<<<<<<<<<<
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
* if self.mat == NULL:
*/
__pyx_v_comm = MPI_COMM_NULL;
- /* "PETSc/Mat.pyx":638
- * def load(self, Viewer viewer not None):
+ /* "PETSc/Mat.pyx":639
+ * def load(self, Viewer viewer):
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr) # <<<<<<<<<<<<<<
* if self.mat == NULL:
@@ -118196,7 +125531,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_122load(struct PyPetscMatObject
*/
__pyx_v_obj = ((PetscObject)__pyx_v_viewer->vwr);
- /* "PETSc/Mat.pyx":639
+ /* "PETSc/Mat.pyx":640
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
* if self.mat == NULL: # <<<<<<<<<<<<<<
@@ -118206,25 +125541,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_122load(struct PyPetscMatObject
__pyx_t_1 = ((__pyx_v_self->mat == NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/Mat.pyx":640
+ /* "PETSc/Mat.pyx":641
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
* if self.mat == NULL:
* CHKERR( PetscObjectGetComm(obj, &comm) ) # <<<<<<<<<<<<<<
* CHKERR( MatCreate(comm, &self.mat) )
* CHKERR( MatLoad(self.mat, viewer.vwr) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(__pyx_v_obj, (&__pyx_v_comm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 640, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(__pyx_v_obj, (&__pyx_v_comm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 641, __pyx_L1_error)
- /* "PETSc/Mat.pyx":641
+ /* "PETSc/Mat.pyx":642
* if self.mat == NULL:
* CHKERR( PetscObjectGetComm(obj, &comm) )
* CHKERR( MatCreate(comm, &self.mat) ) # <<<<<<<<<<<<<<
* CHKERR( MatLoad(self.mat, viewer.vwr) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_comm, (&__pyx_v_self->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 641, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreate(__pyx_v_comm, (&__pyx_v_self->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 642, __pyx_L1_error)
- /* "PETSc/Mat.pyx":639
+ /* "PETSc/Mat.pyx":640
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
* if self.mat == NULL: # <<<<<<<<<<<<<<
@@ -118233,16 +125568,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_122load(struct PyPetscMatObject
*/
}
- /* "PETSc/Mat.pyx":642
+ /* "PETSc/Mat.pyx":643
* CHKERR( PetscObjectGetComm(obj, &comm) )
* CHKERR( MatCreate(comm, &self.mat) )
* CHKERR( MatLoad(self.mat, viewer.vwr) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatLoad(__pyx_v_self->mat, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 642, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatLoad(__pyx_v_self->mat, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 643, __pyx_L1_error)
- /* "PETSc/Mat.pyx":643
+ /* "PETSc/Mat.pyx":644
* CHKERR( MatCreate(comm, &self.mat) )
* CHKERR( MatLoad(self.mat, viewer.vwr) )
* return self # <<<<<<<<<<<<<<
@@ -118254,10 +125589,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_122load(struct PyPetscMatObject
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":636
+ /* "PETSc/Mat.pyx":637
* return result
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* cdef MPI_Comm comm = MPI_COMM_NULL
* cdef PetscObject obj = <PetscObject>(viewer.vwr)
*/
@@ -118272,7 +125607,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_122load(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":645
+/* "PETSc/Mat.pyx":646
* return self
*
* def convert(self, mat_type=None, Mat out=None): # <<<<<<<<<<<<<<
@@ -118299,7 +125634,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_125convert(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118310,6 +125647,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_125convert(PyObject *__pyx_v_sel
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat_type);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -118317,12 +125655,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_125convert(PyObject *__pyx_v_sel
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "convert") < 0)) __PYX_ERR(33, 645, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "convert") < 0)) __PYX_ERR(33, 646, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118332,13 +125672,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_125convert(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("convert", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 645, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("convert", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 646, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 645, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 646, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_124convert(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat_type, __pyx_v_out);
/* function exit code */
@@ -118363,7 +125703,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
__Pyx_INCREF(__pyx_v_mat_type);
__Pyx_INCREF((PyObject *)__pyx_v_out);
- /* "PETSc/Mat.pyx":646
+ /* "PETSc/Mat.pyx":647
*
* def convert(self, mat_type=None, Mat out=None):
* cdef PetscMatType mtype = MATSAME # <<<<<<<<<<<<<<
@@ -118372,7 +125712,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
*/
__pyx_v_mtype = MATSAME;
- /* "PETSc/Mat.pyx":647
+ /* "PETSc/Mat.pyx":648
* def convert(self, mat_type=None, Mat out=None):
* cdef PetscMatType mtype = MATSAME
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
@@ -118381,19 +125721,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":648
+ /* "PETSc/Mat.pyx":649
* cdef PetscMatType mtype = MATSAME
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* mat_type = str2bytes(mat_type, &mtype) # <<<<<<<<<<<<<<
* if mtype == NULL: mtype = MATSAME
* if out is None: out = self
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_mat_type, (&__pyx_v_mtype)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 648, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_mat_type, (&__pyx_v_mtype)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 649, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_mat_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":649
+ /* "PETSc/Mat.pyx":650
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* mat_type = str2bytes(mat_type, &mtype)
* if mtype == NULL: mtype = MATSAME # <<<<<<<<<<<<<<
@@ -118405,7 +125745,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
__pyx_v_mtype = MATSAME;
}
- /* "PETSc/Mat.pyx":650
+ /* "PETSc/Mat.pyx":651
* mat_type = str2bytes(mat_type, &mtype)
* if mtype == NULL: mtype = MATSAME
* if out is None: out = self # <<<<<<<<<<<<<<
@@ -118419,7 +125759,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
__Pyx_DECREF_SET(__pyx_v_out, __pyx_v_self);
}
- /* "PETSc/Mat.pyx":651
+ /* "PETSc/Mat.pyx":652
* if mtype == NULL: mtype = MATSAME
* if out is None: out = self
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
@@ -118431,16 +125771,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
__pyx_v_reuse = MAT_REUSE_MATRIX;
}
- /* "PETSc/Mat.pyx":652
+ /* "PETSc/Mat.pyx":653
* if out is None: out = self
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX
* CHKERR( MatConvert(self.mat, mtype, reuse, &out.mat) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatConvert(__pyx_v_self->mat, __pyx_v_mtype, __pyx_v_reuse, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 652, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatConvert(__pyx_v_self->mat, __pyx_v_mtype, __pyx_v_reuse, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 653, __pyx_L1_error)
- /* "PETSc/Mat.pyx":653
+ /* "PETSc/Mat.pyx":654
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX
* CHKERR( MatConvert(self.mat, mtype, reuse, &out.mat) )
* return out # <<<<<<<<<<<<<<
@@ -118452,7 +125792,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
__pyx_r = ((PyObject *)__pyx_v_out);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":645
+ /* "PETSc/Mat.pyx":646
* return self
*
* def convert(self, mat_type=None, Mat out=None): # <<<<<<<<<<<<<<
@@ -118473,7 +125813,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_124convert(struct PyPetscMatObje
return __pyx_r;
}
-/* "PETSc/Mat.pyx":655
+/* "PETSc/Mat.pyx":656
* return out
*
* def transpose(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -118498,6 +125838,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_127transpose(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118510,11 +125851,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_127transpose(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "transpose") < 0)) __PYX_ERR(33, 655, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "transpose") < 0)) __PYX_ERR(33, 656, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118523,13 +125865,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_127transpose(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("transpose", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 655, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("transpose", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 656, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.transpose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 655, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 656, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_126transpose(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_out);
/* function exit code */
@@ -118551,7 +125893,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_126transpose(struct PyPetscMatOb
__Pyx_RefNannySetupContext("transpose", 0);
__Pyx_INCREF((PyObject *)__pyx_v_out);
- /* "PETSc/Mat.pyx":656
+ /* "PETSc/Mat.pyx":657
*
* def transpose(self, Mat out=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
@@ -118560,7 +125902,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_126transpose(struct PyPetscMatOb
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":657
+ /* "PETSc/Mat.pyx":658
* def transpose(self, Mat out=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* if out is None: out = self # <<<<<<<<<<<<<<
@@ -118574,7 +125916,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_126transpose(struct PyPetscMatOb
__Pyx_DECREF_SET(__pyx_v_out, __pyx_v_self);
}
- /* "PETSc/Mat.pyx":658
+ /* "PETSc/Mat.pyx":659
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* if out is None: out = self
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
@@ -118586,16 +125928,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_126transpose(struct PyPetscMatOb
__pyx_v_reuse = MAT_REUSE_MATRIX;
}
- /* "PETSc/Mat.pyx":659
+ /* "PETSc/Mat.pyx":660
* if out is None: out = self
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX
* CHKERR( MatTranspose(self.mat, reuse, &out.mat) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatTranspose(__pyx_v_self->mat, __pyx_v_reuse, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 659, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatTranspose(__pyx_v_self->mat, __pyx_v_reuse, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 660, __pyx_L1_error)
- /* "PETSc/Mat.pyx":660
+ /* "PETSc/Mat.pyx":661
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX
* CHKERR( MatTranspose(self.mat, reuse, &out.mat) )
* return out # <<<<<<<<<<<<<<
@@ -118607,7 +125949,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_126transpose(struct PyPetscMatOb
__pyx_r = ((PyObject *)__pyx_v_out);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":655
+ /* "PETSc/Mat.pyx":656
* return out
*
* def transpose(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -118626,7 +125968,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_126transpose(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":662
+/* "PETSc/Mat.pyx":663
* return out
*
* def realPart(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -118651,6 +125993,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_129realPart(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118663,11 +126006,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_129realPart(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "realPart") < 0)) __PYX_ERR(33, 662, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "realPart") < 0)) __PYX_ERR(33, 663, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118676,13 +126020,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_129realPart(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("realPart", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 662, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("realPart", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 663, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.realPart", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 662, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 663, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_out);
/* function exit code */
@@ -118703,7 +126047,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
__Pyx_RefNannySetupContext("realPart", 0);
__Pyx_INCREF((PyObject *)__pyx_v_out);
- /* "PETSc/Mat.pyx":663
+ /* "PETSc/Mat.pyx":664
*
* def realPart(self, Mat out=None):
* if out is None: # <<<<<<<<<<<<<<
@@ -118714,7 +126058,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":664
+ /* "PETSc/Mat.pyx":665
* def realPart(self, Mat out=None):
* if out is None:
* out = self # <<<<<<<<<<<<<<
@@ -118724,7 +126068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__Pyx_DECREF_SET(__pyx_v_out, __pyx_v_self);
- /* "PETSc/Mat.pyx":663
+ /* "PETSc/Mat.pyx":664
*
* def realPart(self, Mat out=None):
* if out is None: # <<<<<<<<<<<<<<
@@ -118734,7 +126078,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":665
+ /* "PETSc/Mat.pyx":666
* if out is None:
* out = self
* elif out.mat == NULL: # <<<<<<<<<<<<<<
@@ -118744,16 +126088,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
__pyx_t_2 = ((__pyx_v_out->mat == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":666
+ /* "PETSc/Mat.pyx":667
* out = self
* elif out.mat == NULL:
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) ) # <<<<<<<<<<<<<<
* CHKERR( MatRealPart(out.mat) )
* return out
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 666, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 667, __pyx_L1_error)
- /* "PETSc/Mat.pyx":665
+ /* "PETSc/Mat.pyx":666
* if out is None:
* out = self
* elif out.mat == NULL: # <<<<<<<<<<<<<<
@@ -118763,16 +126107,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":667
+ /* "PETSc/Mat.pyx":668
* elif out.mat == NULL:
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) )
* CHKERR( MatRealPart(out.mat) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRealPart(__pyx_v_out->mat)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 667, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRealPart(__pyx_v_out->mat)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 668, __pyx_L1_error)
- /* "PETSc/Mat.pyx":668
+ /* "PETSc/Mat.pyx":669
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) )
* CHKERR( MatRealPart(out.mat) )
* return out # <<<<<<<<<<<<<<
@@ -118784,7 +126128,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
__pyx_r = ((PyObject *)__pyx_v_out);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":662
+ /* "PETSc/Mat.pyx":663
* return out
*
* def realPart(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -118803,7 +126147,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_128realPart(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":670
+/* "PETSc/Mat.pyx":671
* return out
*
* def imagPart(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -118828,6 +126172,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_131imagPart(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118840,11 +126185,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_131imagPart(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "imagPart") < 0)) __PYX_ERR(33, 670, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "imagPart") < 0)) __PYX_ERR(33, 671, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -118853,13 +126199,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_131imagPart(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("imagPart", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 670, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("imagPart", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 671, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.imagPart", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 670, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 671, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_out);
/* function exit code */
@@ -118880,7 +126226,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
__Pyx_RefNannySetupContext("imagPart", 0);
__Pyx_INCREF((PyObject *)__pyx_v_out);
- /* "PETSc/Mat.pyx":671
+ /* "PETSc/Mat.pyx":672
*
* def imagPart(self, Mat out=None):
* if out is None: # <<<<<<<<<<<<<<
@@ -118891,7 +126237,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":672
+ /* "PETSc/Mat.pyx":673
* def imagPart(self, Mat out=None):
* if out is None:
* out = self # <<<<<<<<<<<<<<
@@ -118901,7 +126247,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__Pyx_DECREF_SET(__pyx_v_out, __pyx_v_self);
- /* "PETSc/Mat.pyx":671
+ /* "PETSc/Mat.pyx":672
*
* def imagPart(self, Mat out=None):
* if out is None: # <<<<<<<<<<<<<<
@@ -118911,7 +126257,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":673
+ /* "PETSc/Mat.pyx":674
* if out is None:
* out = self
* elif out.mat == NULL: # <<<<<<<<<<<<<<
@@ -118921,16 +126267,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
__pyx_t_2 = ((__pyx_v_out->mat == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":674
+ /* "PETSc/Mat.pyx":675
* out = self
* elif out.mat == NULL:
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) ) # <<<<<<<<<<<<<<
* CHKERR( MatImaginaryPart(out.mat) )
* return out
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 674, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 675, __pyx_L1_error)
- /* "PETSc/Mat.pyx":673
+ /* "PETSc/Mat.pyx":674
* if out is None:
* out = self
* elif out.mat == NULL: # <<<<<<<<<<<<<<
@@ -118940,16 +126286,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":675
+ /* "PETSc/Mat.pyx":676
* elif out.mat == NULL:
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) )
* CHKERR( MatImaginaryPart(out.mat) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatImaginaryPart(__pyx_v_out->mat)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 675, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatImaginaryPart(__pyx_v_out->mat)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 676, __pyx_L1_error)
- /* "PETSc/Mat.pyx":676
+ /* "PETSc/Mat.pyx":677
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) )
* CHKERR( MatImaginaryPart(out.mat) )
* return out # <<<<<<<<<<<<<<
@@ -118961,7 +126307,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
__pyx_r = ((PyObject *)__pyx_v_out);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":670
+ /* "PETSc/Mat.pyx":671
* return out
*
* def imagPart(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -118980,7 +126326,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_130imagPart(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":678
+/* "PETSc/Mat.pyx":679
* return out
*
* def conjugate(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -119005,6 +126351,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_133conjugate(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119017,11 +126364,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_133conjugate(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "conjugate") < 0)) __PYX_ERR(33, 678, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "conjugate") < 0)) __PYX_ERR(33, 679, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119030,13 +126378,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_133conjugate(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("conjugate", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 678, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("conjugate", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 679, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.conjugate", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 678, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 679, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_out);
/* function exit code */
@@ -119057,7 +126405,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(struct PyPetscMatOb
__Pyx_RefNannySetupContext("conjugate", 0);
__Pyx_INCREF((PyObject *)__pyx_v_out);
- /* "PETSc/Mat.pyx":679
+ /* "PETSc/Mat.pyx":680
*
* def conjugate(self, Mat out=None):
* if out is None: # <<<<<<<<<<<<<<
@@ -119068,7 +126416,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(struct PyPetscMatOb
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":680
+ /* "PETSc/Mat.pyx":681
* def conjugate(self, Mat out=None):
* if out is None:
* out = self # <<<<<<<<<<<<<<
@@ -119078,7 +126426,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(struct PyPetscMatOb
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__Pyx_DECREF_SET(__pyx_v_out, __pyx_v_self);
- /* "PETSc/Mat.pyx":679
+ /* "PETSc/Mat.pyx":680
*
* def conjugate(self, Mat out=None):
* if out is None: # <<<<<<<<<<<<<<
@@ -119088,7 +126436,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(struct PyPetscMatOb
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":681
+ /* "PETSc/Mat.pyx":682
* if out is None:
* out = self
* elif out.mat == NULL: # <<<<<<<<<<<<<<
@@ -119098,16 +126446,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(struct PyPetscMatOb
__pyx_t_2 = ((__pyx_v_out->mat == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":682
+ /* "PETSc/Mat.pyx":683
* out = self
* elif out.mat == NULL:
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) ) # <<<<<<<<<<<<<<
* CHKERR( MatConjugate(out.mat) )
* return out
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 682, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDuplicate(__pyx_v_self->mat, MAT_COPY_VALUES, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 683, __pyx_L1_error)
- /* "PETSc/Mat.pyx":681
+ /* "PETSc/Mat.pyx":682
* if out is None:
* out = self
* elif out.mat == NULL: # <<<<<<<<<<<<<<
@@ -119117,28 +126465,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(struct PyPetscMatOb
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":683
+ /* "PETSc/Mat.pyx":684
* elif out.mat == NULL:
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) )
* CHKERR( MatConjugate(out.mat) ) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatConjugate(__pyx_v_out->mat)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 683, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatConjugate(__pyx_v_out->mat)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 684, __pyx_L1_error)
- /* "PETSc/Mat.pyx":684
+ /* "PETSc/Mat.pyx":685
* CHKERR( MatDuplicate(self.mat, MAT_COPY_VALUES, &out.mat) )
* CHKERR( MatConjugate(out.mat) )
* return out # <<<<<<<<<<<<<<
*
- * def permute(self, IS row not None, IS col not None):
+ * def permute(self, IS row, IS col):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_out));
__pyx_r = ((PyObject *)__pyx_v_out);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":678
+ /* "PETSc/Mat.pyx":679
* return out
*
* def conjugate(self, Mat out=None): # <<<<<<<<<<<<<<
@@ -119157,10 +126505,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_132conjugate(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":686
+/* "PETSc/Mat.pyx":687
* return out
*
- * def permute(self, IS row not None, IS col not None): # <<<<<<<<<<<<<<
+ * def permute(self, IS row, IS col): # <<<<<<<<<<<<<<
* cdef Mat mat = Mat()
* CHKERR( MatPermute(self.mat, row.iset, col.iset, &mat.mat) )
*/
@@ -119182,7 +126530,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_135permute(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119191,14 +126541,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_135permute(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_row)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_col)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("permute", 1, 2, 2, 1); __PYX_ERR(33, 686, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("permute", 1, 2, 2, 1); __PYX_ERR(33, 687, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "permute") < 0)) __PYX_ERR(33, 686, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "permute") < 0)) __PYX_ERR(33, 687, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -119211,14 +126562,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_135permute(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("permute", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 686, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("permute", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 687, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.permute", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_row), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "row", 0))) __PYX_ERR(33, 686, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_col), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "col", 0))) __PYX_ERR(33, 686, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_row), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "row", 0))) __PYX_ERR(33, 687, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_col), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "col", 0))) __PYX_ERR(33, 687, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_134permute(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_row, __pyx_v_col);
/* function exit code */
@@ -119238,43 +126589,43 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_134permute(struct PyPetscMatObje
int __pyx_t_2;
__Pyx_RefNannySetupContext("permute", 0);
- /* "PETSc/Mat.pyx":687
+ /* "PETSc/Mat.pyx":688
*
- * def permute(self, IS row not None, IS col not None):
+ * def permute(self, IS row, IS col):
* cdef Mat mat = Mat() # <<<<<<<<<<<<<<
* CHKERR( MatPermute(self.mat, row.iset, col.iset, &mat.mat) )
* return mat
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 687, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 688, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":688
- * def permute(self, IS row not None, IS col not None):
+ /* "PETSc/Mat.pyx":689
+ * def permute(self, IS row, IS col):
* cdef Mat mat = Mat()
* CHKERR( MatPermute(self.mat, row.iset, col.iset, &mat.mat) ) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPermute(__pyx_v_self->mat, __pyx_v_row->iset, __pyx_v_col->iset, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 688, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPermute(__pyx_v_self->mat, __pyx_v_row->iset, __pyx_v_col->iset, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 689, __pyx_L1_error)
- /* "PETSc/Mat.pyx":689
+ /* "PETSc/Mat.pyx":690
* cdef Mat mat = Mat()
* CHKERR( MatPermute(self.mat, row.iset, col.iset, &mat.mat) )
* return mat # <<<<<<<<<<<<<<
*
- * def equal(self, Mat mat not None):
+ * def equal(self, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_mat));
__pyx_r = ((PyObject *)__pyx_v_mat);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":686
+ /* "PETSc/Mat.pyx":687
* return out
*
- * def permute(self, IS row not None, IS col not None): # <<<<<<<<<<<<<<
+ * def permute(self, IS row, IS col): # <<<<<<<<<<<<<<
* cdef Mat mat = Mat()
* CHKERR( MatPermute(self.mat, row.iset, col.iset, &mat.mat) )
*/
@@ -119291,10 +126642,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_134permute(struct PyPetscMatObje
return __pyx_r;
}
-/* "PETSc/Mat.pyx":691
+/* "PETSc/Mat.pyx":692
* return mat
*
- * def equal(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def equal(self, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatEqual(self.mat, mat.mat, &flag) )
*/
@@ -119315,6 +126666,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_137equal(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119325,7 +126677,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_137equal(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "equal") < 0)) __PYX_ERR(33, 691, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "equal") < 0)) __PYX_ERR(33, 692, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -119336,13 +126688,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_137equal(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("equal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 691, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("equal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 692, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.equal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 691, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 692, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_136equal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -119359,54 +126711,52 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_136equal(struct PyPetscMatObject
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- int __pyx_t_2;
- PyObject *__pyx_t_3 = NULL;
+ PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("equal", 0);
- /* "PETSc/Mat.pyx":692
+ /* "PETSc/Mat.pyx":693
*
- * def equal(self, Mat mat not None):
+ * def equal(self, Mat mat):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( MatEqual(self.mat, mat.mat, &flag) )
- * return <bint> mat
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/Mat.pyx":693
- * def equal(self, Mat mat not None):
+ /* "PETSc/Mat.pyx":694
+ * def equal(self, Mat mat):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatEqual(self.mat, mat.mat, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> mat
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatEqual(__pyx_v_self->mat, __pyx_v_mat->mat, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 693, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatEqual(__pyx_v_self->mat, __pyx_v_mat->mat, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 694, __pyx_L1_error)
- /* "PETSc/Mat.pyx":694
+ /* "PETSc/Mat.pyx":695
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatEqual(self.mat, mat.mat, &flag) )
- * return <bint> mat # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def isTranspose(self, Mat mat=None, tol=0):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_v_mat)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 694, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 694, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __pyx_r = __pyx_t_3;
- __pyx_t_3 = 0;
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 695, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":691
+ /* "PETSc/Mat.pyx":692
* return mat
*
- * def equal(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def equal(self, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatEqual(self.mat, mat.mat, &flag) )
*/
/* function exit code */
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_2);
__Pyx_AddTraceback("petsc4py.PETSc.Mat.equal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
@@ -119415,8 +126765,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_136equal(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":696
- * return <bint> mat
+/* "PETSc/Mat.pyx":697
+ * return toBool(flag)
*
* def isTranspose(self, Mat mat=None, tol=0): # <<<<<<<<<<<<<<
* if mat is None: mat = self
@@ -119442,7 +126792,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_139isTranspose(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119453,6 +126805,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_139isTranspose(PyObject *__pyx_v
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tol);
@@ -119460,12 +126813,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_139isTranspose(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "isTranspose") < 0)) __PYX_ERR(33, 696, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "isTranspose") < 0)) __PYX_ERR(33, 697, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119475,13 +126830,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_139isTranspose(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("isTranspose", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 696, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("isTranspose", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 697, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.isTranspose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "mat", 0))) __PYX_ERR(33, 696, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "mat", 0))) __PYX_ERR(33, 697, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_138isTranspose(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_tol);
/* function exit code */
@@ -119506,7 +126861,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_138isTranspose(struct PyPetscMat
__Pyx_RefNannySetupContext("isTranspose", 0);
__Pyx_INCREF((PyObject *)__pyx_v_mat);
- /* "PETSc/Mat.pyx":697
+ /* "PETSc/Mat.pyx":698
*
* def isTranspose(self, Mat mat=None, tol=0):
* if mat is None: mat = self # <<<<<<<<<<<<<<
@@ -119520,50 +126875,50 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_138isTranspose(struct PyPetscMat
__Pyx_DECREF_SET(__pyx_v_mat, __pyx_v_self);
}
- /* "PETSc/Mat.pyx":698
+ /* "PETSc/Mat.pyx":699
* def isTranspose(self, Mat mat=None, tol=0):
* if mat is None: mat = self
* cdef PetscReal rval = asReal(tol) # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatIsTranspose(self.mat, mat.mat, rval, &flag) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 698, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 699, __pyx_L1_error)
__pyx_v_rval = __pyx_t_3;
- /* "PETSc/Mat.pyx":699
+ /* "PETSc/Mat.pyx":700
* if mat is None: mat = self
* cdef PetscReal rval = asReal(tol)
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( MatIsTranspose(self.mat, mat.mat, rval, &flag) )
- * return <bint>flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/Mat.pyx":700
+ /* "PETSc/Mat.pyx":701
* cdef PetscReal rval = asReal(tol)
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatIsTranspose(self.mat, mat.mat, rval, &flag) ) # <<<<<<<<<<<<<<
- * return <bint>flag
+ * return toBool(flag)
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsTranspose(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_rval, (&__pyx_v_flag))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 700, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsTranspose(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_rval, (&__pyx_v_flag))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 701, __pyx_L1_error)
- /* "PETSc/Mat.pyx":701
+ /* "PETSc/Mat.pyx":702
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatIsTranspose(self.mat, mat.mat, rval, &flag) )
- * return <bint>flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def isSymmetric(self, tol=0):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 701, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 702, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":696
- * return <bint> mat
+ /* "PETSc/Mat.pyx":697
+ * return toBool(flag)
*
* def isTranspose(self, Mat mat=None, tol=0): # <<<<<<<<<<<<<<
* if mat is None: mat = self
@@ -119582,8 +126937,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_138isTranspose(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":703
- * return <bint>flag
+/* "PETSc/Mat.pyx":704
+ * return toBool(flag)
*
* def isSymmetric(self, tol=0): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(tol)
@@ -119607,6 +126962,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_141isSymmetric(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119619,11 +126975,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_141isSymmetric(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "isSymmetric") < 0)) __PYX_ERR(33, 703, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "isSymmetric") < 0)) __PYX_ERR(33, 704, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119632,7 +126989,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_141isSymmetric(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("isSymmetric", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 703, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("isSymmetric", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 704, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.isSymmetric", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -119655,50 +127012,50 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_140isSymmetric(struct PyPetscMat
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("isSymmetric", 0);
- /* "PETSc/Mat.pyx":704
+ /* "PETSc/Mat.pyx":705
*
* def isSymmetric(self, tol=0):
* cdef PetscReal rval = asReal(tol) # <<<<<<<<<<<<<<
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatIsSymmetric(self.mat, rval, &flag) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 704, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 705, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/Mat.pyx":705
+ /* "PETSc/Mat.pyx":706
* def isSymmetric(self, tol=0):
* cdef PetscReal rval = asReal(tol)
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( MatIsSymmetric(self.mat, rval, &flag) )
- * return <bint>flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/Mat.pyx":706
+ /* "PETSc/Mat.pyx":707
* cdef PetscReal rval = asReal(tol)
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatIsSymmetric(self.mat, rval, &flag) ) # <<<<<<<<<<<<<<
- * return <bint>flag
+ * return toBool(flag)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsSymmetric(__pyx_v_self->mat, __pyx_v_rval, (&__pyx_v_flag))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 706, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsSymmetric(__pyx_v_self->mat, __pyx_v_rval, (&__pyx_v_flag))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 707, __pyx_L1_error)
- /* "PETSc/Mat.pyx":707
+ /* "PETSc/Mat.pyx":708
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatIsSymmetric(self.mat, rval, &flag) )
- * return <bint>flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def isSymmetricKnown(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 707, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 708, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":703
- * return <bint>flag
+ /* "PETSc/Mat.pyx":704
+ * return toBool(flag)
*
* def isSymmetric(self, tol=0): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(tol)
@@ -119716,8 +127073,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_140isSymmetric(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":709
- * return <bint>flag
+/* "PETSc/Mat.pyx":710
+ * return toBool(flag)
*
* def isSymmetricKnown(self): # <<<<<<<<<<<<<<
* cdef PetscBool flag1 = PETSC_FALSE
@@ -119752,7 +127109,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_142isSymmetricKnown(struct PyPet
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("isSymmetricKnown", 0);
- /* "PETSc/Mat.pyx":710
+ /* "PETSc/Mat.pyx":711
*
* def isSymmetricKnown(self):
* cdef PetscBool flag1 = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -119761,37 +127118,37 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_142isSymmetricKnown(struct PyPet
*/
__pyx_v_flag1 = PETSC_FALSE;
- /* "PETSc/Mat.pyx":711
+ /* "PETSc/Mat.pyx":712
* def isSymmetricKnown(self):
* cdef PetscBool flag1 = PETSC_FALSE
* cdef PetscBool flag2 = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( MatIsSymmetricKnown(self.mat, &flag1, &flag2) )
- * return (<bint>flag1, <bint>flag2)
+ * return (toBool(flag1), toBool(flag2))
*/
__pyx_v_flag2 = PETSC_FALSE;
- /* "PETSc/Mat.pyx":712
+ /* "PETSc/Mat.pyx":713
* cdef PetscBool flag1 = PETSC_FALSE
* cdef PetscBool flag2 = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(self.mat, &flag1, &flag2) ) # <<<<<<<<<<<<<<
- * return (<bint>flag1, <bint>flag2)
+ * return (toBool(flag1), toBool(flag2))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsSymmetricKnown(__pyx_v_self->mat, (&__pyx_v_flag1), (&__pyx_v_flag2))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 712, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsSymmetricKnown(__pyx_v_self->mat, (&__pyx_v_flag1), (&__pyx_v_flag2))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 713, __pyx_L1_error)
- /* "PETSc/Mat.pyx":713
+ /* "PETSc/Mat.pyx":714
* cdef PetscBool flag2 = PETSC_FALSE
* CHKERR( MatIsSymmetricKnown(self.mat, &flag1, &flag2) )
- * return (<bint>flag1, <bint>flag2) # <<<<<<<<<<<<<<
+ * return (toBool(flag1), toBool(flag2)) # <<<<<<<<<<<<<<
*
* def isHermitian(self, tol=0):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag1); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 713, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag1); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 714, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 713, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 714, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 713, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 714, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
@@ -119803,8 +127160,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_142isSymmetricKnown(struct PyPet
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":709
- * return <bint>flag
+ /* "PETSc/Mat.pyx":710
+ * return toBool(flag)
*
* def isSymmetricKnown(self): # <<<<<<<<<<<<<<
* cdef PetscBool flag1 = PETSC_FALSE
@@ -119824,12 +127181,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_142isSymmetricKnown(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":715
- * return (<bint>flag1, <bint>flag2)
+/* "PETSc/Mat.pyx":716
+ * return (toBool(flag1), toBool(flag2))
*
* def isHermitian(self, tol=0): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(tol)
- * cdef PetscBool bval = PETSC_FALSE
+ * cdef PetscBool flag = PETSC_FALSE
*/
/* Python wrapper */
@@ -119849,6 +127206,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_145isHermitian(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119861,11 +127219,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_145isHermitian(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "isHermitian") < 0)) __PYX_ERR(33, 715, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "isHermitian") < 0)) __PYX_ERR(33, 716, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -119874,7 +127233,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_145isHermitian(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("isHermitian", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 715, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("isHermitian", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 716, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.isHermitian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -119889,7 +127248,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_145isHermitian(PyObject *__pyx_v
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_144isHermitian(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_tol) {
PetscReal __pyx_v_rval;
- PetscBool __pyx_v_bval;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PetscReal __pyx_t_1;
@@ -119897,54 +127256,54 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_144isHermitian(struct PyPetscMat
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("isHermitian", 0);
- /* "PETSc/Mat.pyx":716
+ /* "PETSc/Mat.pyx":717
*
* def isHermitian(self, tol=0):
* cdef PetscReal rval = asReal(tol) # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( MatIsHermitian(self.mat, rval, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatIsHermitian(self.mat, rval, &flag) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 716, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 717, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/Mat.pyx":717
+ /* "PETSc/Mat.pyx":718
* def isHermitian(self, tol=0):
* cdef PetscReal rval = asReal(tol)
- * cdef PetscBool bval = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( MatIsHermitian(self.mat, rval, &bval) )
- * return <bint>bval
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( MatIsHermitian(self.mat, rval, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_bval = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/Mat.pyx":718
+ /* "PETSc/Mat.pyx":719
* cdef PetscReal rval = asReal(tol)
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( MatIsHermitian(self.mat, rval, &bval) ) # <<<<<<<<<<<<<<
- * return <bint>bval
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatIsHermitian(self.mat, rval, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsHermitian(__pyx_v_self->mat, __pyx_v_rval, (&__pyx_v_bval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 718, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsHermitian(__pyx_v_self->mat, __pyx_v_rval, (&__pyx_v_flag))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 719, __pyx_L1_error)
- /* "PETSc/Mat.pyx":719
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( MatIsHermitian(self.mat, rval, &bval) )
- * return <bint>bval # <<<<<<<<<<<<<<
+ /* "PETSc/Mat.pyx":720
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatIsHermitian(self.mat, rval, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def isHermitianKnown(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __Pyx_PyInt_From_PetscBool(__pyx_v_bval); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 719, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 720, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":715
- * return (<bint>flag1, <bint>flag2)
+ /* "PETSc/Mat.pyx":716
+ * return (toBool(flag1), toBool(flag2))
*
* def isHermitian(self, tol=0): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(tol)
- * cdef PetscBool bval = PETSC_FALSE
+ * cdef PetscBool flag = PETSC_FALSE
*/
/* function exit code */
@@ -119958,12 +127317,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_144isHermitian(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":721
- * return <bint>bval
+/* "PETSc/Mat.pyx":722
+ * return toBool(flag)
*
* def isHermitianKnown(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval1 = PETSC_FALSE
- * cdef PetscBool bval2 = PETSC_FALSE
+ * cdef PetscBool flag1 = PETSC_FALSE
+ * cdef PetscBool flag2 = PETSC_FALSE
*/
/* Python wrapper */
@@ -119984,8 +127343,8 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_147isHermitianKnown(PyObject *__
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_146isHermitianKnown(struct PyPetscMatObject *__pyx_v_self) {
- PetscBool __pyx_v_bval1;
- PetscBool __pyx_v_bval2;
+ PetscBool __pyx_v_flag1;
+ PetscBool __pyx_v_flag2;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -119994,46 +127353,46 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_146isHermitianKnown(struct PyPet
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("isHermitianKnown", 0);
- /* "PETSc/Mat.pyx":722
+ /* "PETSc/Mat.pyx":723
*
* def isHermitianKnown(self):
- * cdef PetscBool bval1 = PETSC_FALSE # <<<<<<<<<<<<<<
- * cdef PetscBool bval2 = PETSC_FALSE
- * CHKERR( MatIsHermitianKnown(self.mat, &bval1, &bval2) )
+ * cdef PetscBool flag1 = PETSC_FALSE # <<<<<<<<<<<<<<
+ * cdef PetscBool flag2 = PETSC_FALSE
+ * CHKERR( MatIsHermitianKnown(self.mat, &flag1, &flag2) )
*/
- __pyx_v_bval1 = PETSC_FALSE;
+ __pyx_v_flag1 = PETSC_FALSE;
- /* "PETSc/Mat.pyx":723
+ /* "PETSc/Mat.pyx":724
* def isHermitianKnown(self):
- * cdef PetscBool bval1 = PETSC_FALSE
- * cdef PetscBool bval2 = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( MatIsHermitianKnown(self.mat, &bval1, &bval2) )
- * return (<bint>bval1, <bint>bval2)
+ * cdef PetscBool flag1 = PETSC_FALSE
+ * cdef PetscBool flag2 = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( MatIsHermitianKnown(self.mat, &flag1, &flag2) )
+ * return (toBool(flag1), toBool(flag2))
*/
- __pyx_v_bval2 = PETSC_FALSE;
+ __pyx_v_flag2 = PETSC_FALSE;
- /* "PETSc/Mat.pyx":724
- * cdef PetscBool bval1 = PETSC_FALSE
- * cdef PetscBool bval2 = PETSC_FALSE
- * CHKERR( MatIsHermitianKnown(self.mat, &bval1, &bval2) ) # <<<<<<<<<<<<<<
- * return (<bint>bval1, <bint>bval2)
+ /* "PETSc/Mat.pyx":725
+ * cdef PetscBool flag1 = PETSC_FALSE
+ * cdef PetscBool flag2 = PETSC_FALSE
+ * CHKERR( MatIsHermitianKnown(self.mat, &flag1, &flag2) ) # <<<<<<<<<<<<<<
+ * return (toBool(flag1), toBool(flag2))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsHermitianKnown(__pyx_v_self->mat, (&__pyx_v_bval1), (&__pyx_v_bval2))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 724, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsHermitianKnown(__pyx_v_self->mat, (&__pyx_v_flag1), (&__pyx_v_flag2))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 725, __pyx_L1_error)
- /* "PETSc/Mat.pyx":725
- * cdef PetscBool bval2 = PETSC_FALSE
- * CHKERR( MatIsHermitianKnown(self.mat, &bval1, &bval2) )
- * return (<bint>bval1, <bint>bval2) # <<<<<<<<<<<<<<
+ /* "PETSc/Mat.pyx":726
+ * cdef PetscBool flag2 = PETSC_FALSE
+ * CHKERR( MatIsHermitianKnown(self.mat, &flag1, &flag2) )
+ * return (toBool(flag1), toBool(flag2)) # <<<<<<<<<<<<<<
*
* def isStructurallySymmetric(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_bval1); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 725, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag1); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyInt_From_PetscBool(__pyx_v_bval2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 725, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 725, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
@@ -120045,12 +127404,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_146isHermitianKnown(struct PyPet
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":721
- * return <bint>bval
+ /* "PETSc/Mat.pyx":722
+ * return toBool(flag)
*
* def isHermitianKnown(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval1 = PETSC_FALSE
- * cdef PetscBool bval2 = PETSC_FALSE
+ * cdef PetscBool flag1 = PETSC_FALSE
+ * cdef PetscBool flag2 = PETSC_FALSE
*/
/* function exit code */
@@ -120066,12 +127425,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_146isHermitianKnown(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":727
- * return (<bint>bval1, <bint>bval2)
+/* "PETSc/Mat.pyx":728
+ * return (toBool(flag1), toBool(flag2))
*
* def isStructurallySymmetric(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( MatIsStructurallySymmetric(self.mat, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatIsStructurallySymmetric(self.mat, &flag) )
*/
/* Python wrapper */
@@ -120092,51 +127451,51 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_149isStructurallySymmetric(PyObj
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_148isStructurallySymmetric(struct PyPetscMatObject *__pyx_v_self) {
- PetscBool __pyx_v_bval;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("isStructurallySymmetric", 0);
- /* "PETSc/Mat.pyx":728
+ /* "PETSc/Mat.pyx":729
*
* def isStructurallySymmetric(self):
- * cdef PetscBool bval = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( MatIsStructurallySymmetric(self.mat, &bval) )
- * return <bint>bval
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( MatIsStructurallySymmetric(self.mat, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_bval = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/Mat.pyx":729
+ /* "PETSc/Mat.pyx":730
* def isStructurallySymmetric(self):
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( MatIsStructurallySymmetric(self.mat, &bval) ) # <<<<<<<<<<<<<<
- * return <bint>bval
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatIsStructurallySymmetric(self.mat, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsStructurallySymmetric(__pyx_v_self->mat, (&__pyx_v_bval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 729, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIsStructurallySymmetric(__pyx_v_self->mat, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 730, __pyx_L1_error)
- /* "PETSc/Mat.pyx":730
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( MatIsStructurallySymmetric(self.mat, &bval) )
- * return <bint>bval # <<<<<<<<<<<<<<
+ /* "PETSc/Mat.pyx":731
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatIsStructurallySymmetric(self.mat, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def zeroEntries(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_bval); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 730, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 731, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":727
- * return (<bint>bval1, <bint>bval2)
+ /* "PETSc/Mat.pyx":728
+ * return (toBool(flag1), toBool(flag2))
*
* def isStructurallySymmetric(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( MatIsStructurallySymmetric(self.mat, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatIsStructurallySymmetric(self.mat, &flag) )
*/
/* function exit code */
@@ -120150,8 +127509,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_148isStructurallySymmetric(struc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":732
- * return <bint>bval
+/* "PETSc/Mat.pyx":733
+ * return toBool(flag)
*
* def zeroEntries(self): # <<<<<<<<<<<<<<
* CHKERR( MatZeroEntries(self.mat) )
@@ -120181,17 +127540,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_150zeroEntries(struct PyPetscMat
int __pyx_t_1;
__Pyx_RefNannySetupContext("zeroEntries", 0);
- /* "PETSc/Mat.pyx":733
+ /* "PETSc/Mat.pyx":734
*
* def zeroEntries(self):
* CHKERR( MatZeroEntries(self.mat) ) # <<<<<<<<<<<<<<
*
* def getValue(self, row, col):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroEntries(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 733, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroEntries(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 734, __pyx_L1_error)
- /* "PETSc/Mat.pyx":732
- * return <bint>bval
+ /* "PETSc/Mat.pyx":733
+ * return toBool(flag)
*
* def zeroEntries(self): # <<<<<<<<<<<<<<
* CHKERR( MatZeroEntries(self.mat) )
@@ -120210,7 +127569,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_150zeroEntries(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":735
+/* "PETSc/Mat.pyx":736
* CHKERR( MatZeroEntries(self.mat) )
*
* def getValue(self, row, col): # <<<<<<<<<<<<<<
@@ -120235,7 +127594,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_153getValue(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -120244,14 +127605,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_153getValue(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_row)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_col)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("getValue", 1, 2, 2, 1); __PYX_ERR(33, 735, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getValue", 1, 2, 2, 1); __PYX_ERR(33, 736, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getValue") < 0)) __PYX_ERR(33, 735, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getValue") < 0)) __PYX_ERR(33, 736, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -120264,7 +127626,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_153getValue(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getValue", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 735, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getValue", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 736, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getValue", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -120288,27 +127650,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_152getValue(struct PyPetscMatObj
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getValue", 0);
- /* "PETSc/Mat.pyx":736
+ /* "PETSc/Mat.pyx":737
*
* def getValue(self, row, col):
* cdef PetscInt ival1 = asInt(row) # <<<<<<<<<<<<<<
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 736, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 737, __pyx_L1_error)
__pyx_v_ival1 = __pyx_t_1;
- /* "PETSc/Mat.pyx":737
+ /* "PETSc/Mat.pyx":738
* def getValue(self, row, col):
* cdef PetscInt ival1 = asInt(row)
* cdef PetscInt ival2 = asInt(col) # <<<<<<<<<<<<<<
* cdef PetscScalar sval = 0
* CHKERR( MatGetValues(self.mat, 1, &ival1, 1, &ival2, &sval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 737, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 738, __pyx_L1_error)
__pyx_v_ival2 = __pyx_t_1;
- /* "PETSc/Mat.pyx":738
+ /* "PETSc/Mat.pyx":739
* cdef PetscInt ival1 = asInt(row)
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = 0 # <<<<<<<<<<<<<<
@@ -120317,16 +127679,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_152getValue(struct PyPetscMatObj
*/
__pyx_v_sval = 0.0;
- /* "PETSc/Mat.pyx":739
+ /* "PETSc/Mat.pyx":740
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = 0
* CHKERR( MatGetValues(self.mat, 1, &ival1, 1, &ival2, &sval) ) # <<<<<<<<<<<<<<
* return toScalar(sval)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetValues(__pyx_v_self->mat, 1, (&__pyx_v_ival1), 1, (&__pyx_v_ival2), (&__pyx_v_sval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 739, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetValues(__pyx_v_self->mat, 1, (&__pyx_v_ival1), 1, (&__pyx_v_ival2), (&__pyx_v_sval))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 740, __pyx_L1_error)
- /* "PETSc/Mat.pyx":740
+ /* "PETSc/Mat.pyx":741
* cdef PetscScalar sval = 0
* CHKERR( MatGetValues(self.mat, 1, &ival1, 1, &ival2, &sval) )
* return toScalar(sval) # <<<<<<<<<<<<<<
@@ -120334,13 +127696,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_152getValue(struct PyPetscMatObj
* def getValues(self, rows, cols, values=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toScalar(__pyx_v_sval); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 740, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toScalar(__pyx_v_sval); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 741, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":735
+ /* "PETSc/Mat.pyx":736
* CHKERR( MatZeroEntries(self.mat) )
*
* def getValue(self, row, col): # <<<<<<<<<<<<<<
@@ -120359,7 +127721,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_152getValue(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":742
+/* "PETSc/Mat.pyx":743
* return toScalar(sval)
*
* def getValues(self, rows, cols, values=None): # <<<<<<<<<<<<<<
@@ -120386,8 +127748,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_155getValues(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -120396,11 +127761,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_155getValues(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cols)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("getValues", 0, 2, 3, 1); __PYX_ERR(33, 742, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getValues", 0, 2, 3, 1); __PYX_ERR(33, 743, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values);
@@ -120408,11 +127775,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_155getValues(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getValues") < 0)) __PYX_ERR(33, 742, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getValues") < 0)) __PYX_ERR(33, 743, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -120425,7 +127793,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_155getValues(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getValues", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 742, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getValues", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 743, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -120444,7 +127812,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_154getValues(struct PyPetscMatOb
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getValues", 0);
- /* "PETSc/Mat.pyx":743
+ /* "PETSc/Mat.pyx":744
*
* def getValues(self, rows, cols, values=None):
* return matgetvalues(self.mat, rows, cols, values) # <<<<<<<<<<<<<<
@@ -120452,13 +127820,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_154getValues(struct PyPetscMatOb
* def getValuesCSR(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matgetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 743, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matgetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 744, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":742
+ /* "PETSc/Mat.pyx":743
* return toScalar(sval)
*
* def getValues(self, rows, cols, values=None): # <<<<<<<<<<<<<<
@@ -120477,7 +127845,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_154getValues(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":745
+/* "PETSc/Mat.pyx":746
* return matgetvalues(self.mat, rows, cols, values)
*
* def getValuesCSR(self): # <<<<<<<<<<<<<<
@@ -120524,7 +127892,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
PetscInt __pyx_t_4;
__Pyx_RefNannySetupContext("getValuesCSR", 0);
- /* "PETSc/Mat.pyx":747
+ /* "PETSc/Mat.pyx":748
* def getValuesCSR(self):
* # row ownership
* cdef PetscInt rstart=0, rend=0, nrows=0 # <<<<<<<<<<<<<<
@@ -120535,16 +127903,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
__pyx_v_rend = 0;
__pyx_v_nrows = 0;
- /* "PETSc/Mat.pyx":748
+ /* "PETSc/Mat.pyx":749
* # row ownership
* cdef PetscInt rstart=0, rend=0, nrows=0
* CHKERR( MatGetOwnershipRange(self.mat, &rstart, &rend) ) # <<<<<<<<<<<<<<
* nrows = rend - rstart
* # first pass: row pointer array
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRange(__pyx_v_self->mat, (&__pyx_v_rstart), (&__pyx_v_rend))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 748, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOwnershipRange(__pyx_v_self->mat, (&__pyx_v_rstart), (&__pyx_v_rend))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 749, __pyx_L1_error)
- /* "PETSc/Mat.pyx":749
+ /* "PETSc/Mat.pyx":750
* cdef PetscInt rstart=0, rend=0, nrows=0
* CHKERR( MatGetOwnershipRange(self.mat, &rstart, &rend) )
* nrows = rend - rstart # <<<<<<<<<<<<<<
@@ -120553,7 +127921,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
__pyx_v_nrows = (__pyx_v_rend - __pyx_v_rstart);
- /* "PETSc/Mat.pyx":751
+ /* "PETSc/Mat.pyx":752
* nrows = rend - rstart
* # first pass: row pointer array
* cdef PetscInt *AI = NULL # <<<<<<<<<<<<<<
@@ -120562,22 +127930,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
__pyx_v_AI = NULL;
- /* "PETSc/Mat.pyx":752
+ /* "PETSc/Mat.pyx":753
* # first pass: row pointer array
* cdef PetscInt *AI = NULL
* cdef ndarray ai = oarray_i(empty_i(nrows+1), NULL, &AI) # <<<<<<<<<<<<<<
* cdef PetscInt irow=0, ncols=0
* AI[0] = 0
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i((__pyx_v_nrows + 1))); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 752, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i((__pyx_v_nrows + 1))); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 753, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_2, NULL, (&__pyx_v_AI))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 752, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_2, NULL, (&__pyx_v_AI))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 753, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_ai = ((PyArrayObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":753
+ /* "PETSc/Mat.pyx":754
* cdef PetscInt *AI = NULL
* cdef ndarray ai = oarray_i(empty_i(nrows+1), NULL, &AI)
* cdef PetscInt irow=0, ncols=0 # <<<<<<<<<<<<<<
@@ -120587,7 +127955,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
__pyx_v_irow = 0;
__pyx_v_ncols = 0;
- /* "PETSc/Mat.pyx":754
+ /* "PETSc/Mat.pyx":755
* cdef ndarray ai = oarray_i(empty_i(nrows+1), NULL, &AI)
* cdef PetscInt irow=0, ncols=0
* AI[0] = 0 # <<<<<<<<<<<<<<
@@ -120596,7 +127964,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
(__pyx_v_AI[0]) = 0;
- /* "PETSc/Mat.pyx":755
+ /* "PETSc/Mat.pyx":756
* cdef PetscInt irow=0, ncols=0
* AI[0] = 0
* for irow from 0 <= irow < nrows: # <<<<<<<<<<<<<<
@@ -120606,16 +127974,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
__pyx_t_4 = __pyx_v_nrows;
for (__pyx_v_irow = 0; __pyx_v_irow < __pyx_t_4; __pyx_v_irow++) {
- /* "PETSc/Mat.pyx":756
+ /* "PETSc/Mat.pyx":757
* AI[0] = 0
* for irow from 0 <= irow < nrows:
* CHKERR( MatGetRow(self.mat, irow+rstart, &ncols, NULL, NULL) ) # <<<<<<<<<<<<<<
* AI[irow+1] = AI[irow] + ncols
* CHKERR( MatRestoreRow(self.mat, irow+rstart, &ncols, NULL, NULL) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 756, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 757, __pyx_L1_error)
- /* "PETSc/Mat.pyx":757
+ /* "PETSc/Mat.pyx":758
* for irow from 0 <= irow < nrows:
* CHKERR( MatGetRow(self.mat, irow+rstart, &ncols, NULL, NULL) )
* AI[irow+1] = AI[irow] + ncols # <<<<<<<<<<<<<<
@@ -120624,17 +127992,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
(__pyx_v_AI[(__pyx_v_irow + 1)]) = ((__pyx_v_AI[__pyx_v_irow]) + __pyx_v_ncols);
- /* "PETSc/Mat.pyx":758
+ /* "PETSc/Mat.pyx":759
* CHKERR( MatGetRow(self.mat, irow+rstart, &ncols, NULL, NULL) )
* AI[irow+1] = AI[irow] + ncols
* CHKERR( MatRestoreRow(self.mat, irow+rstart, &ncols, NULL, NULL) ) # <<<<<<<<<<<<<<
* # second pass: column indices and values
* cdef PetscInt *AJ = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 758, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 759, __pyx_L1_error)
}
- /* "PETSc/Mat.pyx":760
+ /* "PETSc/Mat.pyx":761
* CHKERR( MatRestoreRow(self.mat, irow+rstart, &ncols, NULL, NULL) )
* # second pass: column indices and values
* cdef PetscInt *AJ = NULL # <<<<<<<<<<<<<<
@@ -120643,22 +128011,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
__pyx_v_AJ = NULL;
- /* "PETSc/Mat.pyx":761
+ /* "PETSc/Mat.pyx":762
* # second pass: column indices and values
* cdef PetscInt *AJ = NULL
* cdef ndarray aj = oarray_i(empty_i(AI[nrows]), NULL, &AJ) # <<<<<<<<<<<<<<
* cdef PetscScalar *AV = NULL
* cdef ndarray av = oarray_s(empty_s(AI[nrows]), NULL, &AV)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i((__pyx_v_AI[__pyx_v_nrows]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 761, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i((__pyx_v_AI[__pyx_v_nrows]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 762, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_3, NULL, (&__pyx_v_AJ))); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 761, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_3, NULL, (&__pyx_v_AJ))); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 762, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_aj = ((PyArrayObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Mat.pyx":762
+ /* "PETSc/Mat.pyx":763
* cdef PetscInt *AJ = NULL
* cdef ndarray aj = oarray_i(empty_i(AI[nrows]), NULL, &AJ)
* cdef PetscScalar *AV = NULL # <<<<<<<<<<<<<<
@@ -120667,22 +128035,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
__pyx_v_AV = NULL;
- /* "PETSc/Mat.pyx":763
+ /* "PETSc/Mat.pyx":764
* cdef ndarray aj = oarray_i(empty_i(AI[nrows]), NULL, &AJ)
* cdef PetscScalar *AV = NULL
* cdef ndarray av = oarray_s(empty_s(AI[nrows]), NULL, &AV) # <<<<<<<<<<<<<<
* cdef const_PetscInt *cols = NULL
* cdef const_PetscScalar *vals = NULL
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_s((__pyx_v_AI[__pyx_v_nrows]))); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 763, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_s((__pyx_v_AI[__pyx_v_nrows]))); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 764, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_s(__pyx_t_2, NULL, (&__pyx_v_AV))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 763, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_s(__pyx_t_2, NULL, (&__pyx_v_AV))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 764, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_av = ((PyArrayObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":764
+ /* "PETSc/Mat.pyx":765
* cdef PetscScalar *AV = NULL
* cdef ndarray av = oarray_s(empty_s(AI[nrows]), NULL, &AV)
* cdef const_PetscInt *cols = NULL # <<<<<<<<<<<<<<
@@ -120691,7 +128059,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
__pyx_v_cols = NULL;
- /* "PETSc/Mat.pyx":765
+ /* "PETSc/Mat.pyx":766
* cdef ndarray av = oarray_s(empty_s(AI[nrows]), NULL, &AV)
* cdef const_PetscInt *cols = NULL
* cdef const_PetscScalar *vals = NULL # <<<<<<<<<<<<<<
@@ -120700,7 +128068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
*/
__pyx_v_vals = NULL;
- /* "PETSc/Mat.pyx":766
+ /* "PETSc/Mat.pyx":767
* cdef const_PetscInt *cols = NULL
* cdef const_PetscScalar *vals = NULL
* for irow from 0 <= irow < nrows: # <<<<<<<<<<<<<<
@@ -120710,44 +128078,44 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
__pyx_t_4 = __pyx_v_nrows;
for (__pyx_v_irow = 0; __pyx_v_irow < __pyx_t_4; __pyx_v_irow++) {
- /* "PETSc/Mat.pyx":767
+ /* "PETSc/Mat.pyx":768
* cdef const_PetscScalar *vals = NULL
* for irow from 0 <= irow < nrows:
* CHKERR( MatGetRow(self.mat, irow+rstart, &ncols, &cols, &vals) ) # <<<<<<<<<<<<<<
* CHKERR( PetscMemcpy(AJ+AI[irow], cols, <size_t>ncols*sizeof(PetscInt)) )
* CHKERR( PetscMemcpy(AV+AI[irow], vals, <size_t>ncols*sizeof(PetscScalar)) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), (&__pyx_v_cols), (&__pyx_v_vals))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 767, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), (&__pyx_v_cols), (&__pyx_v_vals))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 768, __pyx_L1_error)
- /* "PETSc/Mat.pyx":768
+ /* "PETSc/Mat.pyx":769
* for irow from 0 <= irow < nrows:
* CHKERR( MatGetRow(self.mat, irow+rstart, &ncols, &cols, &vals) )
* CHKERR( PetscMemcpy(AJ+AI[irow], cols, <size_t>ncols*sizeof(PetscInt)) ) # <<<<<<<<<<<<<<
* CHKERR( PetscMemcpy(AV+AI[irow], vals, <size_t>ncols*sizeof(PetscScalar)) )
* CHKERR( MatRestoreRow(self.mat, irow+rstart, &ncols, &cols, &vals) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMemcpy((__pyx_v_AJ + (__pyx_v_AI[__pyx_v_irow])), __pyx_v_cols, (((size_t)__pyx_v_ncols) * (sizeof(PetscInt))))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 768, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMemcpy((__pyx_v_AJ + (__pyx_v_AI[__pyx_v_irow])), __pyx_v_cols, (((size_t)__pyx_v_ncols) * (sizeof(PetscInt))))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 769, __pyx_L1_error)
- /* "PETSc/Mat.pyx":769
+ /* "PETSc/Mat.pyx":770
* CHKERR( MatGetRow(self.mat, irow+rstart, &ncols, &cols, &vals) )
* CHKERR( PetscMemcpy(AJ+AI[irow], cols, <size_t>ncols*sizeof(PetscInt)) )
* CHKERR( PetscMemcpy(AV+AI[irow], vals, <size_t>ncols*sizeof(PetscScalar)) ) # <<<<<<<<<<<<<<
* CHKERR( MatRestoreRow(self.mat, irow+rstart, &ncols, &cols, &vals) )
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMemcpy((__pyx_v_AV + (__pyx_v_AI[__pyx_v_irow])), __pyx_v_vals, (((size_t)__pyx_v_ncols) * (sizeof(PetscScalar))))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 769, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMemcpy((__pyx_v_AV + (__pyx_v_AI[__pyx_v_irow])), __pyx_v_vals, (((size_t)__pyx_v_ncols) * (sizeof(PetscScalar))))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 770, __pyx_L1_error)
- /* "PETSc/Mat.pyx":770
+ /* "PETSc/Mat.pyx":771
* CHKERR( PetscMemcpy(AJ+AI[irow], cols, <size_t>ncols*sizeof(PetscInt)) )
* CHKERR( PetscMemcpy(AV+AI[irow], vals, <size_t>ncols*sizeof(PetscScalar)) )
* CHKERR( MatRestoreRow(self.mat, irow+rstart, &ncols, &cols, &vals) ) # <<<<<<<<<<<<<<
* #
* return (ai, aj, av)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), (&__pyx_v_cols), (&__pyx_v_vals))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 770, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRow(__pyx_v_self->mat, (__pyx_v_irow + __pyx_v_rstart), (&__pyx_v_ncols), (&__pyx_v_cols), (&__pyx_v_vals))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 771, __pyx_L1_error)
}
- /* "PETSc/Mat.pyx":772
+ /* "PETSc/Mat.pyx":773
* CHKERR( MatRestoreRow(self.mat, irow+rstart, &ncols, &cols, &vals) )
* #
* return (ai, aj, av) # <<<<<<<<<<<<<<
@@ -120755,7 +128123,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
* def getRow(self, row):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 772, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 773, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)__pyx_v_ai));
__Pyx_GIVEREF(((PyObject *)__pyx_v_ai));
@@ -120770,7 +128138,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":745
+ /* "PETSc/Mat.pyx":746
* return matgetvalues(self.mat, rows, cols, values)
*
* def getValuesCSR(self): # <<<<<<<<<<<<<<
@@ -120793,7 +128161,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_156getValuesCSR(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":774
+/* "PETSc/Mat.pyx":775
* return (ai, aj, av)
*
* def getRow(self, row): # <<<<<<<<<<<<<<
@@ -120817,6 +128185,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_159getRow(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -120827,7 +128196,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_159getRow(PyObject *__pyx_v_self
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRow") < 0)) __PYX_ERR(33, 774, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRow") < 0)) __PYX_ERR(33, 775, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -120838,7 +128207,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_159getRow(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getRow", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 774, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getRow", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 775, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getRow", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -120865,17 +128234,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_158getRow(struct PyPetscMatObjec
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getRow", 0);
- /* "PETSc/Mat.pyx":775
+ /* "PETSc/Mat.pyx":776
*
* def getRow(self, row):
* cdef PetscInt irow = asInt(row) # <<<<<<<<<<<<<<
* cdef PetscInt ncols = 0
* cdef const_PetscInt *icols=NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 775, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 776, __pyx_L1_error)
__pyx_v_irow = __pyx_t_1;
- /* "PETSc/Mat.pyx":776
+ /* "PETSc/Mat.pyx":777
* def getRow(self, row):
* cdef PetscInt irow = asInt(row)
* cdef PetscInt ncols = 0 # <<<<<<<<<<<<<<
@@ -120884,7 +128253,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_158getRow(struct PyPetscMatObjec
*/
__pyx_v_ncols = 0;
- /* "PETSc/Mat.pyx":777
+ /* "PETSc/Mat.pyx":778
* cdef PetscInt irow = asInt(row)
* cdef PetscInt ncols = 0
* cdef const_PetscInt *icols=NULL # <<<<<<<<<<<<<<
@@ -120893,7 +128262,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_158getRow(struct PyPetscMatObjec
*/
__pyx_v_icols = NULL;
- /* "PETSc/Mat.pyx":778
+ /* "PETSc/Mat.pyx":779
* cdef PetscInt ncols = 0
* cdef const_PetscInt *icols=NULL
* cdef const_PetscScalar *svals=NULL # <<<<<<<<<<<<<<
@@ -120902,49 +128271,49 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_158getRow(struct PyPetscMatObjec
*/
__pyx_v_svals = NULL;
- /* "PETSc/Mat.pyx":779
+ /* "PETSc/Mat.pyx":780
* cdef const_PetscInt *icols=NULL
* cdef const_PetscScalar *svals=NULL
* CHKERR( MatGetRow(self.mat, irow, &ncols, &icols, &svals) ) # <<<<<<<<<<<<<<
* cdef object cols = array_i(ncols, icols)
* cdef object vals = array_s(ncols, svals)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRow(__pyx_v_self->mat, __pyx_v_irow, (&__pyx_v_ncols), (&__pyx_v_icols), (&__pyx_v_svals))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 779, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRow(__pyx_v_self->mat, __pyx_v_irow, (&__pyx_v_ncols), (&__pyx_v_icols), (&__pyx_v_svals))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 780, __pyx_L1_error)
- /* "PETSc/Mat.pyx":780
+ /* "PETSc/Mat.pyx":781
* cdef const_PetscScalar *svals=NULL
* CHKERR( MatGetRow(self.mat, irow, &ncols, &icols, &svals) )
* cdef object cols = array_i(ncols, icols) # <<<<<<<<<<<<<<
* cdef object vals = array_s(ncols, svals)
* CHKERR( MatRestoreRow(self.mat, irow, &ncols, &icols, &svals) )
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_ncols, __pyx_v_icols)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 780, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_ncols, __pyx_v_icols)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 781, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_cols = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":781
+ /* "PETSc/Mat.pyx":782
* CHKERR( MatGetRow(self.mat, irow, &ncols, &icols, &svals) )
* cdef object cols = array_i(ncols, icols)
* cdef object vals = array_s(ncols, svals) # <<<<<<<<<<<<<<
* CHKERR( MatRestoreRow(self.mat, irow, &ncols, &icols, &svals) )
* return (cols, vals)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_s(__pyx_v_ncols, __pyx_v_svals)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 781, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_s(__pyx_v_ncols, __pyx_v_svals)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_vals = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":782
+ /* "PETSc/Mat.pyx":783
* cdef object cols = array_i(ncols, icols)
* cdef object vals = array_s(ncols, svals)
* CHKERR( MatRestoreRow(self.mat, irow, &ncols, &icols, &svals) ) # <<<<<<<<<<<<<<
* return (cols, vals)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRow(__pyx_v_self->mat, __pyx_v_irow, (&__pyx_v_ncols), (&__pyx_v_icols), (&__pyx_v_svals))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 782, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRow(__pyx_v_self->mat, __pyx_v_irow, (&__pyx_v_ncols), (&__pyx_v_icols), (&__pyx_v_svals))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 783, __pyx_L1_error)
- /* "PETSc/Mat.pyx":783
+ /* "PETSc/Mat.pyx":784
* cdef object vals = array_s(ncols, svals)
* CHKERR( MatRestoreRow(self.mat, irow, &ncols, &icols, &svals) )
* return (cols, vals) # <<<<<<<<<<<<<<
@@ -120952,7 +128321,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_158getRow(struct PyPetscMatObjec
* def getRowIJ(self, symmetric=False, compressed=False):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 783, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 784, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_cols);
__Pyx_GIVEREF(__pyx_v_cols);
@@ -120964,7 +128333,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_158getRow(struct PyPetscMatObjec
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":774
+ /* "PETSc/Mat.pyx":775
* return (ai, aj, av)
*
* def getRow(self, row): # <<<<<<<<<<<<<<
@@ -120985,7 +128354,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_158getRow(struct PyPetscMatObjec
return __pyx_r;
}
-/* "PETSc/Mat.pyx":785
+/* "PETSc/Mat.pyx":786
* return (cols, vals)
*
* def getRowIJ(self, symmetric=False, compressed=False): # <<<<<<<<<<<<<<
@@ -121012,7 +128381,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_161getRowIJ(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121023,6 +128394,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_161getRowIJ(PyObject *__pyx_v_se
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_symmetric);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_compressed);
@@ -121030,12 +128402,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_161getRowIJ(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRowIJ") < 0)) __PYX_ERR(33, 785, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRowIJ") < 0)) __PYX_ERR(33, 786, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121045,7 +128419,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_161getRowIJ(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getRowIJ", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 785, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getRowIJ", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 786, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getRowIJ", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -121076,7 +128450,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("getRowIJ", 0);
- /* "PETSc/Mat.pyx":786
+ /* "PETSc/Mat.pyx":787
*
* def getRowIJ(self, symmetric=False, compressed=False):
* cdef PetscInt shift=0 # <<<<<<<<<<<<<<
@@ -121085,27 +128459,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
*/
__pyx_v_shift = 0;
- /* "PETSc/Mat.pyx":787
+ /* "PETSc/Mat.pyx":788
* def getRowIJ(self, symmetric=False, compressed=False):
* cdef PetscInt shift=0
* cdef PetscBool symm=symmetric # <<<<<<<<<<<<<<
* cdef PetscBool bcmp=compressed
* cdef PetscInt n=0
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_symmetric)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 787, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_symmetric)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 788, __pyx_L1_error)
__pyx_v_symm = __pyx_t_1;
- /* "PETSc/Mat.pyx":788
+ /* "PETSc/Mat.pyx":789
* cdef PetscInt shift=0
* cdef PetscBool symm=symmetric
* cdef PetscBool bcmp=compressed # <<<<<<<<<<<<<<
* cdef PetscInt n=0
* cdef const_PetscInt *ia=NULL
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_compressed)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 788, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_compressed)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 789, __pyx_L1_error)
__pyx_v_bcmp = __pyx_t_1;
- /* "PETSc/Mat.pyx":789
+ /* "PETSc/Mat.pyx":790
* cdef PetscBool symm=symmetric
* cdef PetscBool bcmp=compressed
* cdef PetscInt n=0 # <<<<<<<<<<<<<<
@@ -121114,7 +128488,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
*/
__pyx_v_n = 0;
- /* "PETSc/Mat.pyx":790
+ /* "PETSc/Mat.pyx":791
* cdef PetscBool bcmp=compressed
* cdef PetscInt n=0
* cdef const_PetscInt *ia=NULL # <<<<<<<<<<<<<<
@@ -121123,7 +128497,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
*/
__pyx_v_ia = NULL;
- /* "PETSc/Mat.pyx":791
+ /* "PETSc/Mat.pyx":792
* cdef PetscInt n=0
* cdef const_PetscInt *ia=NULL
* cdef const_PetscInt *ja=NULL # <<<<<<<<<<<<<<
@@ -121132,7 +128506,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
*/
__pyx_v_ja = NULL;
- /* "PETSc/Mat.pyx":792
+ /* "PETSc/Mat.pyx":793
* cdef const_PetscInt *ia=NULL
* cdef const_PetscInt *ja=NULL
* cdef PetscBool done=PETSC_FALSE # <<<<<<<<<<<<<<
@@ -121141,16 +128515,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
*/
__pyx_v_done = PETSC_FALSE;
- /* "PETSc/Mat.pyx":793
+ /* "PETSc/Mat.pyx":794
* cdef const_PetscInt *ja=NULL
* cdef PetscBool done=PETSC_FALSE
* CHKERR( MatGetRowIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) ) # <<<<<<<<<<<<<<
* cdef object ai=None, aj=None
* if done != PETSC_FALSE: ai = array_i( n+1, ia)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRowIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 793, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRowIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 794, __pyx_L1_error)
- /* "PETSc/Mat.pyx":794
+ /* "PETSc/Mat.pyx":795
* cdef PetscBool done=PETSC_FALSE
* CHKERR( MatGetRowIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) )
* cdef object ai=None, aj=None # <<<<<<<<<<<<<<
@@ -121162,7 +128536,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
__Pyx_INCREF(Py_None);
__pyx_v_aj = Py_None;
- /* "PETSc/Mat.pyx":795
+ /* "PETSc/Mat.pyx":796
* CHKERR( MatGetRowIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) )
* cdef object ai=None, aj=None
* if done != PETSC_FALSE: ai = array_i( n+1, ia) # <<<<<<<<<<<<<<
@@ -121171,13 +128545,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
*/
__pyx_t_3 = ((__pyx_v_done != PETSC_FALSE) != 0);
if (__pyx_t_3) {
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_n + 1), __pyx_v_ia)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 795, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_n + 1), __pyx_v_ia)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 796, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_ai, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/Mat.pyx":796
+ /* "PETSc/Mat.pyx":797
* cdef object ai=None, aj=None
* if done != PETSC_FALSE: ai = array_i( n+1, ia)
* if done != PETSC_FALSE: aj = array_i(ia[n], ja) # <<<<<<<<<<<<<<
@@ -121186,22 +128560,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
*/
__pyx_t_3 = ((__pyx_v_done != PETSC_FALSE) != 0);
if (__pyx_t_3) {
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_ia[__pyx_v_n]), __pyx_v_ja)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 796, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_ia[__pyx_v_n]), __pyx_v_ja)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 797, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_aj, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/Mat.pyx":797
+ /* "PETSc/Mat.pyx":798
* if done != PETSC_FALSE: ai = array_i( n+1, ia)
* if done != PETSC_FALSE: aj = array_i(ia[n], ja)
* CHKERR( MatRestoreRowIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) ) # <<<<<<<<<<<<<<
* return (ai, aj)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRowIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 797, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreRowIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 798, __pyx_L1_error)
- /* "PETSc/Mat.pyx":798
+ /* "PETSc/Mat.pyx":799
* if done != PETSC_FALSE: aj = array_i(ia[n], ja)
* CHKERR( MatRestoreRowIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) )
* return (ai, aj) # <<<<<<<<<<<<<<
@@ -121209,7 +128583,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
* def getColumnIJ(self, symmetric=False, compressed=False):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 798, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 799, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_ai);
__Pyx_GIVEREF(__pyx_v_ai);
@@ -121221,7 +128595,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":785
+ /* "PETSc/Mat.pyx":786
* return (cols, vals)
*
* def getRowIJ(self, symmetric=False, compressed=False): # <<<<<<<<<<<<<<
@@ -121242,7 +128616,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_160getRowIJ(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":800
+/* "PETSc/Mat.pyx":801
* return (ai, aj)
*
* def getColumnIJ(self, symmetric=False, compressed=False): # <<<<<<<<<<<<<<
@@ -121269,7 +128643,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_163getColumnIJ(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121280,6 +128656,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_163getColumnIJ(PyObject *__pyx_v
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_symmetric);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_compressed);
@@ -121287,12 +128664,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_163getColumnIJ(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getColumnIJ") < 0)) __PYX_ERR(33, 800, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getColumnIJ") < 0)) __PYX_ERR(33, 801, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121302,7 +128681,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_163getColumnIJ(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getColumnIJ", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 800, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getColumnIJ", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 801, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getColumnIJ", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -121333,7 +128712,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("getColumnIJ", 0);
- /* "PETSc/Mat.pyx":801
+ /* "PETSc/Mat.pyx":802
*
* def getColumnIJ(self, symmetric=False, compressed=False):
* cdef PetscInt shift=0 # <<<<<<<<<<<<<<
@@ -121342,19 +128721,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
*/
__pyx_v_shift = 0;
- /* "PETSc/Mat.pyx":802
+ /* "PETSc/Mat.pyx":803
* def getColumnIJ(self, symmetric=False, compressed=False):
* cdef PetscInt shift=0
* cdef PetscBool symm=symmetric, bcmp=compressed # <<<<<<<<<<<<<<
* cdef PetscInt n=0
* cdef const_PetscInt *ia=NULL
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_symmetric)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 802, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_symmetric)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 803, __pyx_L1_error)
__pyx_v_symm = __pyx_t_1;
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_compressed)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 802, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_compressed)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 803, __pyx_L1_error)
__pyx_v_bcmp = __pyx_t_1;
- /* "PETSc/Mat.pyx":803
+ /* "PETSc/Mat.pyx":804
* cdef PetscInt shift=0
* cdef PetscBool symm=symmetric, bcmp=compressed
* cdef PetscInt n=0 # <<<<<<<<<<<<<<
@@ -121363,7 +128742,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
*/
__pyx_v_n = 0;
- /* "PETSc/Mat.pyx":804
+ /* "PETSc/Mat.pyx":805
* cdef PetscBool symm=symmetric, bcmp=compressed
* cdef PetscInt n=0
* cdef const_PetscInt *ia=NULL # <<<<<<<<<<<<<<
@@ -121372,7 +128751,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
*/
__pyx_v_ia = NULL;
- /* "PETSc/Mat.pyx":805
+ /* "PETSc/Mat.pyx":806
* cdef PetscInt n=0
* cdef const_PetscInt *ia=NULL
* cdef const_PetscInt *ja=NULL # <<<<<<<<<<<<<<
@@ -121381,7 +128760,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
*/
__pyx_v_ja = NULL;
- /* "PETSc/Mat.pyx":806
+ /* "PETSc/Mat.pyx":807
* cdef const_PetscInt *ia=NULL
* cdef const_PetscInt *ja=NULL
* cdef PetscBool done=PETSC_FALSE # <<<<<<<<<<<<<<
@@ -121390,16 +128769,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
*/
__pyx_v_done = PETSC_FALSE;
- /* "PETSc/Mat.pyx":807
+ /* "PETSc/Mat.pyx":808
* cdef const_PetscInt *ja=NULL
* cdef PetscBool done=PETSC_FALSE
* CHKERR( MatGetColumnIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) ) # <<<<<<<<<<<<<<
* cdef object ai=None, aj=None
* if done != PETSC_FALSE: ai = array_i( n+1, ia)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetColumnIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 807, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetColumnIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 808, __pyx_L1_error)
- /* "PETSc/Mat.pyx":808
+ /* "PETSc/Mat.pyx":809
* cdef PetscBool done=PETSC_FALSE
* CHKERR( MatGetColumnIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) )
* cdef object ai=None, aj=None # <<<<<<<<<<<<<<
@@ -121411,7 +128790,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
__Pyx_INCREF(Py_None);
__pyx_v_aj = Py_None;
- /* "PETSc/Mat.pyx":809
+ /* "PETSc/Mat.pyx":810
* CHKERR( MatGetColumnIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) )
* cdef object ai=None, aj=None
* if done != PETSC_FALSE: ai = array_i( n+1, ia) # <<<<<<<<<<<<<<
@@ -121420,13 +128799,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
*/
__pyx_t_3 = ((__pyx_v_done != PETSC_FALSE) != 0);
if (__pyx_t_3) {
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_n + 1), __pyx_v_ia)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 809, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_n + 1), __pyx_v_ia)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 810, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_ai, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/Mat.pyx":810
+ /* "PETSc/Mat.pyx":811
* cdef object ai=None, aj=None
* if done != PETSC_FALSE: ai = array_i( n+1, ia)
* if done != PETSC_FALSE: aj = array_i(ia[n], ja) # <<<<<<<<<<<<<<
@@ -121435,22 +128814,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
*/
__pyx_t_3 = ((__pyx_v_done != PETSC_FALSE) != 0);
if (__pyx_t_3) {
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_ia[__pyx_v_n]), __pyx_v_ja)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 810, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((__pyx_v_ia[__pyx_v_n]), __pyx_v_ja)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 811, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_aj, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/Mat.pyx":811
+ /* "PETSc/Mat.pyx":812
* if done != PETSC_FALSE: ai = array_i( n+1, ia)
* if done != PETSC_FALSE: aj = array_i(ia[n], ja)
* CHKERR( MatRestoreColumnIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) ) # <<<<<<<<<<<<<<
* return (ai, aj)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreColumnIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 811, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreColumnIJ(__pyx_v_self->mat, __pyx_v_shift, __pyx_v_symm, __pyx_v_bcmp, (&__pyx_v_n), (&__pyx_v_ia), (&__pyx_v_ja), (&__pyx_v_done))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 812, __pyx_L1_error)
- /* "PETSc/Mat.pyx":812
+ /* "PETSc/Mat.pyx":813
* if done != PETSC_FALSE: aj = array_i(ia[n], ja)
* CHKERR( MatRestoreColumnIJ(self.mat, shift, symm, bcmp, &n, &ia, &ja, &done) )
* return (ai, aj) # <<<<<<<<<<<<<<
@@ -121458,7 +128837,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
* def setValue(self, row, col, value, addv=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 812, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 813, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_ai);
__Pyx_GIVEREF(__pyx_v_ai);
@@ -121470,7 +128849,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":800
+ /* "PETSc/Mat.pyx":801
* return (ai, aj)
*
* def getColumnIJ(self, symmetric=False, compressed=False): # <<<<<<<<<<<<<<
@@ -121491,7 +128870,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_162getColumnIJ(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":814
+/* "PETSc/Mat.pyx":815
* return (ai, aj)
*
* def setValue(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
@@ -121519,9 +128898,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_165setValue(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121530,16 +128913,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_165setValue(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_row)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_col)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValue", 0, 3, 4, 1); __PYX_ERR(33, 814, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValue", 0, 3, 4, 1); __PYX_ERR(33, 815, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValue", 0, 3, 4, 2); __PYX_ERR(33, 814, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValue", 0, 3, 4, 2); __PYX_ERR(33, 815, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -121547,11 +128933,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_165setValue(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValue") < 0)) __PYX_ERR(33, 814, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValue") < 0)) __PYX_ERR(33, 815, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -121566,7 +128953,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_165setValue(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValue", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 814, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValue", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 815, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValue", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -121592,56 +128979,56 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_164setValue(struct PyPetscMatObj
int __pyx_t_4;
__Pyx_RefNannySetupContext("setValue", 0);
- /* "PETSc/Mat.pyx":815
+ /* "PETSc/Mat.pyx":816
*
* def setValue(self, row, col, value, addv=None):
* cdef PetscInt ival1 = asInt(row) # <<<<<<<<<<<<<<
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = asScalar(value)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 815, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 816, __pyx_L1_error)
__pyx_v_ival1 = __pyx_t_1;
- /* "PETSc/Mat.pyx":816
+ /* "PETSc/Mat.pyx":817
* def setValue(self, row, col, value, addv=None):
* cdef PetscInt ival1 = asInt(row)
* cdef PetscInt ival2 = asInt(col) # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 816, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 817, __pyx_L1_error)
__pyx_v_ival2 = __pyx_t_1;
- /* "PETSc/Mat.pyx":817
+ /* "PETSc/Mat.pyx":818
* cdef PetscInt ival1 = asInt(row)
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = asScalar(value) # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( MatSetValues(self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 817, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(__pyx_t_2 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 818, __pyx_L1_error)
__pyx_v_sval = __pyx_t_2;
- /* "PETSc/Mat.pyx":818
+ /* "PETSc/Mat.pyx":819
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( MatSetValues(self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)-1L))) __PYX_ERR(33, 818, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(33, 819, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_3;
- /* "PETSc/Mat.pyx":819
+ /* "PETSc/Mat.pyx":820
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( MatSetValues(self.mat, 1, &ival1, 1, &ival2, &sval, caddv) ) # <<<<<<<<<<<<<<
*
* def setValues(self, rows, cols, values, addv=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValues(__pyx_v_self->mat, 1, (&__pyx_v_ival1), 1, (&__pyx_v_ival2), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 819, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValues(__pyx_v_self->mat, 1, (&__pyx_v_ival1), 1, (&__pyx_v_ival2), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 820, __pyx_L1_error)
- /* "PETSc/Mat.pyx":814
+ /* "PETSc/Mat.pyx":815
* return (ai, aj)
*
* def setValue(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
@@ -121661,7 +129048,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_164setValue(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":821
+/* "PETSc/Mat.pyx":822
* CHKERR( MatSetValues(self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*
* def setValues(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -121689,9 +129076,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_167setValues(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121700,16 +129091,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_167setValues(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cols)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValues", 0, 3, 4, 1); __PYX_ERR(33, 821, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValues", 0, 3, 4, 1); __PYX_ERR(33, 822, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValues", 0, 3, 4, 2); __PYX_ERR(33, 821, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValues", 0, 3, 4, 2); __PYX_ERR(33, 822, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -121717,11 +129111,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_167setValues(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValues") < 0)) __PYX_ERR(33, 821, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValues") < 0)) __PYX_ERR(33, 822, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -121736,7 +129131,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_167setValues(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValues", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 821, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValues", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 822, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -121755,16 +129150,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_166setValues(struct PyPetscMatOb
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValues", 0);
- /* "PETSc/Mat.pyx":822
+ /* "PETSc/Mat.pyx":823
*
* def setValues(self, rows, cols, values, addv=None):
* matsetvalues(self.mat, rows, cols, values, addv, 0, 0) # <<<<<<<<<<<<<<
*
* def setValuesRCV(self, R, C, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 822, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 823, __pyx_L1_error)
- /* "PETSc/Mat.pyx":821
+ /* "PETSc/Mat.pyx":822
* CHKERR( MatSetValues(self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*
* def setValues(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -121784,7 +129179,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_166setValues(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":824
+/* "PETSc/Mat.pyx":825
* matsetvalues(self.mat, rows, cols, values, addv, 0, 0)
*
* def setValuesRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -121812,9 +129207,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_169setValuesRCV(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121823,16 +129222,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_169setValuesRCV(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_R)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_C)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesRCV", 0, 3, 4, 1); __PYX_ERR(33, 824, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesRCV", 0, 3, 4, 1); __PYX_ERR(33, 825, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesRCV", 0, 3, 4, 2); __PYX_ERR(33, 824, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesRCV", 0, 3, 4, 2); __PYX_ERR(33, 825, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -121840,11 +129242,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_169setValuesRCV(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesRCV") < 0)) __PYX_ERR(33, 824, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesRCV") < 0)) __PYX_ERR(33, 825, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -121859,7 +129262,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_169setValuesRCV(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 824, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 825, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesRCV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -121878,16 +129281,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_168setValuesRCV(struct PyPetscMa
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesRCV", 0);
- /* "PETSc/Mat.pyx":825
+ /* "PETSc/Mat.pyx":826
*
* def setValuesRCV(self, R, C, V, addv=None):
* matsetvalues_rcv(self.mat, R, C, V, addv, 0, 0) # <<<<<<<<<<<<<<
*
* def setValuesIJV(self, I, J, V, addv=None, rowmap=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 825, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 826, __pyx_L1_error)
- /* "PETSc/Mat.pyx":824
+ /* "PETSc/Mat.pyx":825
* matsetvalues(self.mat, rows, cols, values, addv, 0, 0)
*
* def setValuesRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -121907,7 +129310,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_168setValuesRCV(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":827
+/* "PETSc/Mat.pyx":828
* matsetvalues_rcv(self.mat, R, C, V, addv, 0, 0)
*
* def setValuesIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -121937,10 +129340,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_171setValuesIJV(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -121949,21 +129357,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_171setValuesIJV(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesIJV", 0, 3, 5, 1); __PYX_ERR(33, 827, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesIJV", 0, 3, 5, 1); __PYX_ERR(33, 828, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesIJV", 0, 3, 5, 2); __PYX_ERR(33, 827, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesIJV", 0, 3, 5, 2); __PYX_ERR(33, 828, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rowmap);
@@ -121971,12 +129383,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_171setValuesIJV(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesIJV") < 0)) __PYX_ERR(33, 827, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesIJV") < 0)) __PYX_ERR(33, 828, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -121992,7 +129406,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_171setValuesIJV(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 827, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 828, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesIJV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -122011,16 +129425,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_170setValuesIJV(struct PyPetscMa
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesIJV", 0);
- /* "PETSc/Mat.pyx":828
+ /* "PETSc/Mat.pyx":829
*
* def setValuesIJV(self, I, J, V, addv=None, rowmap=None):
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 0, 0) # <<<<<<<<<<<<<<
*
* def setValuesCSR(self, I, J, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 0, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 828, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 0, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 829, __pyx_L1_error)
- /* "PETSc/Mat.pyx":827
+ /* "PETSc/Mat.pyx":828
* matsetvalues_rcv(self.mat, R, C, V, addv, 0, 0)
*
* def setValuesIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -122040,7 +129454,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_170setValuesIJV(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":830
+/* "PETSc/Mat.pyx":831
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 0, 0)
*
* def setValuesCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -122068,9 +129482,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_173setValuesCSR(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -122079,16 +129497,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_173setValuesCSR(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesCSR", 0, 3, 4, 1); __PYX_ERR(33, 830, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesCSR", 0, 3, 4, 1); __PYX_ERR(33, 831, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesCSR", 0, 3, 4, 2); __PYX_ERR(33, 830, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesCSR", 0, 3, 4, 2); __PYX_ERR(33, 831, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -122096,11 +129517,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_173setValuesCSR(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesCSR") < 0)) __PYX_ERR(33, 830, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesCSR") < 0)) __PYX_ERR(33, 831, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -122115,7 +129537,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_173setValuesCSR(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 830, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 831, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesCSR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -122134,16 +129556,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_172setValuesCSR(struct PyPetscMa
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesCSR", 0);
- /* "PETSc/Mat.pyx":831
+ /* "PETSc/Mat.pyx":832
*
* def setValuesCSR(self, I, J, V, addv=None):
* matsetvalues_csr(self.mat, I, J, V, addv, 0, 0) # <<<<<<<<<<<<<<
*
* def setValuesBlocked(self, rows, cols, values, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 831, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 0, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 832, __pyx_L1_error)
- /* "PETSc/Mat.pyx":830
+ /* "PETSc/Mat.pyx":831
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 0, 0)
*
* def setValuesCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -122163,7 +129585,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_172setValuesCSR(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":833
+/* "PETSc/Mat.pyx":834
* matsetvalues_csr(self.mat, I, J, V, addv, 0, 0)
*
* def setValuesBlocked(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -122191,9 +129613,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_175setValuesBlocked(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -122202,16 +129628,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_175setValuesBlocked(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cols)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlocked", 0, 3, 4, 1); __PYX_ERR(33, 833, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlocked", 0, 3, 4, 1); __PYX_ERR(33, 834, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlocked", 0, 3, 4, 2); __PYX_ERR(33, 833, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlocked", 0, 3, 4, 2); __PYX_ERR(33, 834, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -122219,11 +129648,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_175setValuesBlocked(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlocked") < 0)) __PYX_ERR(33, 833, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlocked") < 0)) __PYX_ERR(33, 834, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -122238,7 +129668,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_175setValuesBlocked(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlocked", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 833, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlocked", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 834, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlocked", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -122257,16 +129687,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_174setValuesBlocked(struct PyPet
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlocked", 0);
- /* "PETSc/Mat.pyx":834
+ /* "PETSc/Mat.pyx":835
*
* def setValuesBlocked(self, rows, cols, values, addv=None):
* matsetvalues(self.mat, rows, cols, values, addv, 1, 0) # <<<<<<<<<<<<<<
*
* def setValuesBlockedRCV(self, R, C, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 834, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 835, __pyx_L1_error)
- /* "PETSc/Mat.pyx":833
+ /* "PETSc/Mat.pyx":834
* matsetvalues_csr(self.mat, I, J, V, addv, 0, 0)
*
* def setValuesBlocked(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -122286,7 +129716,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_174setValuesBlocked(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":836
+/* "PETSc/Mat.pyx":837
* matsetvalues(self.mat, rows, cols, values, addv, 1, 0)
*
* def setValuesBlockedRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -122314,9 +129744,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_177setValuesBlockedRCV(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -122325,16 +129759,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_177setValuesBlockedRCV(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_R)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_C)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedRCV", 0, 3, 4, 1); __PYX_ERR(33, 836, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedRCV", 0, 3, 4, 1); __PYX_ERR(33, 837, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedRCV", 0, 3, 4, 2); __PYX_ERR(33, 836, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedRCV", 0, 3, 4, 2); __PYX_ERR(33, 837, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -122342,11 +129779,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_177setValuesBlockedRCV(PyObject
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedRCV") < 0)) __PYX_ERR(33, 836, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedRCV") < 0)) __PYX_ERR(33, 837, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -122361,7 +129799,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_177setValuesBlockedRCV(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 836, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 837, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlockedRCV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -122380,16 +129818,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_176setValuesBlockedRCV(struct Py
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedRCV", 0);
- /* "PETSc/Mat.pyx":837
+ /* "PETSc/Mat.pyx":838
*
* def setValuesBlockedRCV(self, R, C, V, addv=None):
* matsetvalues_rcv(self.mat, R, C, V, addv, 1, 0) # <<<<<<<<<<<<<<
*
* def setValuesBlockedIJV(self, I, J, V, addv=None, rowmap=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 837, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 838, __pyx_L1_error)
- /* "PETSc/Mat.pyx":836
+ /* "PETSc/Mat.pyx":837
* matsetvalues(self.mat, rows, cols, values, addv, 1, 0)
*
* def setValuesBlockedRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -122409,7 +129847,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_176setValuesBlockedRCV(struct Py
return __pyx_r;
}
-/* "PETSc/Mat.pyx":839
+/* "PETSc/Mat.pyx":840
* matsetvalues_rcv(self.mat, R, C, V, addv, 1, 0)
*
* def setValuesBlockedIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -122439,10 +129877,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_179setValuesBlockedIJV(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -122451,21 +129894,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_179setValuesBlockedIJV(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedIJV", 0, 3, 5, 1); __PYX_ERR(33, 839, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedIJV", 0, 3, 5, 1); __PYX_ERR(33, 840, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedIJV", 0, 3, 5, 2); __PYX_ERR(33, 839, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedIJV", 0, 3, 5, 2); __PYX_ERR(33, 840, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rowmap);
@@ -122473,12 +129920,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_179setValuesBlockedIJV(PyObject
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedIJV") < 0)) __PYX_ERR(33, 839, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedIJV") < 0)) __PYX_ERR(33, 840, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -122494,7 +129943,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_179setValuesBlockedIJV(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 839, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 840, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlockedIJV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -122513,16 +129962,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_178setValuesBlockedIJV(struct Py
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedIJV", 0);
- /* "PETSc/Mat.pyx":840
+ /* "PETSc/Mat.pyx":841
*
* def setValuesBlockedIJV(self, I, J, V, addv=None, rowmap=None):
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 1, 0) # <<<<<<<<<<<<<<
*
* def setValuesBlockedCSR(self, I, J, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 1, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 840, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 1, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 841, __pyx_L1_error)
- /* "PETSc/Mat.pyx":839
+ /* "PETSc/Mat.pyx":840
* matsetvalues_rcv(self.mat, R, C, V, addv, 1, 0)
*
* def setValuesBlockedIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -122542,7 +129991,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_178setValuesBlockedIJV(struct Py
return __pyx_r;
}
-/* "PETSc/Mat.pyx":842
+/* "PETSc/Mat.pyx":843
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 1, 0)
*
* def setValuesBlockedCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -122570,9 +130019,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_181setValuesBlockedCSR(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -122581,16 +130034,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_181setValuesBlockedCSR(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedCSR", 0, 3, 4, 1); __PYX_ERR(33, 842, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedCSR", 0, 3, 4, 1); __PYX_ERR(33, 843, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedCSR", 0, 3, 4, 2); __PYX_ERR(33, 842, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedCSR", 0, 3, 4, 2); __PYX_ERR(33, 843, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -122598,11 +130054,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_181setValuesBlockedCSR(PyObject
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedCSR") < 0)) __PYX_ERR(33, 842, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedCSR") < 0)) __PYX_ERR(33, 843, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -122617,7 +130074,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_181setValuesBlockedCSR(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 842, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 843, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlockedCSR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -122636,16 +130093,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_180setValuesBlockedCSR(struct Py
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedCSR", 0);
- /* "PETSc/Mat.pyx":843
+ /* "PETSc/Mat.pyx":844
*
* def setValuesBlockedCSR(self, I, J, V, addv=None):
* matsetvalues_csr(self.mat, I, J, V, addv, 1, 0) # <<<<<<<<<<<<<<
*
- * def setLGMap(self, LGMap rmap not None, LGMap cmap=None):
+ * def setLGMap(self, LGMap rmap, LGMap cmap=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 843, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 1, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 844, __pyx_L1_error)
- /* "PETSc/Mat.pyx":842
+ /* "PETSc/Mat.pyx":843
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 1, 0)
*
* def setValuesBlockedCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -122665,10 +130122,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_180setValuesBlockedCSR(struct Py
return __pyx_r;
}
-/* "PETSc/Mat.pyx":845
+/* "PETSc/Mat.pyx":846
* matsetvalues_csr(self.mat, I, J, V, addv, 1, 0)
*
- * def setLGMap(self, LGMap rmap not None, LGMap cmap=None): # <<<<<<<<<<<<<<
+ * def setLGMap(self, LGMap rmap, LGMap cmap=None): # <<<<<<<<<<<<<<
* if cmap is None: cmap = rmap
* CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) )
*/
@@ -122691,7 +130148,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_183setLGMap(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -122700,6 +130159,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_183setLGMap(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rmap)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cmap);
@@ -122707,11 +130167,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_183setLGMap(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setLGMap") < 0)) __PYX_ERR(33, 845, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setLGMap") < 0)) __PYX_ERR(33, 846, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -122722,14 +130183,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_183setLGMap(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setLGMap", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 845, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setLGMap", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 846, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setLGMap", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rmap), __pyx_ptype_8petsc4py_5PETSc_LGMap, 0, "rmap", 0))) __PYX_ERR(33, 845, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_cmap), __pyx_ptype_8petsc4py_5PETSc_LGMap, 1, "cmap", 0))) __PYX_ERR(33, 845, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rmap), __pyx_ptype_8petsc4py_5PETSc_LGMap, 0, "rmap", 0))) __PYX_ERR(33, 846, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_cmap), __pyx_ptype_8petsc4py_5PETSc_LGMap, 1, "cmap", 0))) __PYX_ERR(33, 846, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_182setLGMap(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rmap, __pyx_v_cmap);
/* function exit code */
@@ -122750,9 +130211,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_182setLGMap(struct PyPetscMatObj
__Pyx_RefNannySetupContext("setLGMap", 0);
__Pyx_INCREF((PyObject *)__pyx_v_cmap);
- /* "PETSc/Mat.pyx":846
+ /* "PETSc/Mat.pyx":847
*
- * def setLGMap(self, LGMap rmap not None, LGMap cmap=None):
+ * def setLGMap(self, LGMap rmap, LGMap cmap=None):
* if cmap is None: cmap = rmap # <<<<<<<<<<<<<<
* CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) )
*
@@ -122764,19 +130225,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_182setLGMap(struct PyPetscMatObj
__Pyx_DECREF_SET(__pyx_v_cmap, __pyx_v_rmap);
}
- /* "PETSc/Mat.pyx":847
- * def setLGMap(self, LGMap rmap not None, LGMap cmap=None):
+ /* "PETSc/Mat.pyx":848
+ * def setLGMap(self, LGMap rmap, LGMap cmap=None):
* if cmap is None: cmap = rmap
* CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) ) # <<<<<<<<<<<<<<
*
- * def setValueLocal(self, row, col, value, addv=None):
+ * def getLGMap(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetLocalToGlobalMapping(__pyx_v_self->mat, __pyx_v_rmap->lgm, __pyx_v_cmap->lgm)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 847, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetLocalToGlobalMapping(__pyx_v_self->mat, __pyx_v_rmap->lgm, __pyx_v_cmap->lgm)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 848, __pyx_L1_error)
- /* "PETSc/Mat.pyx":845
+ /* "PETSc/Mat.pyx":846
* matsetvalues_csr(self.mat, I, J, V, addv, 1, 0)
*
- * def setLGMap(self, LGMap rmap not None, LGMap cmap=None): # <<<<<<<<<<<<<<
+ * def setLGMap(self, LGMap rmap, LGMap cmap=None): # <<<<<<<<<<<<<<
* if cmap is None: cmap = rmap
* CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) )
*/
@@ -122794,18 +130255,144 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_182setLGMap(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":849
+/* "PETSc/Mat.pyx":850
* CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) )
*
+ * def getLGMap(self): # <<<<<<<<<<<<<<
+ * cdef LGMap cmap = LGMap()
+ * cdef LGMap rmap = LGMap()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_184getLGMap[] = "Mat.getLGMap(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getLGMap (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getLGMap", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getLGMap", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_184getLGMap(((struct PyPetscMatObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_184getLGMap(struct PyPetscMatObject *__pyx_v_self) {
+ struct PyPetscLGMapObject *__pyx_v_cmap = 0;
+ struct PyPetscLGMapObject *__pyx_v_rmap = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getLGMap", 0);
+
+ /* "PETSc/Mat.pyx":851
+ *
+ * def getLGMap(self):
+ * cdef LGMap cmap = LGMap() # <<<<<<<<<<<<<<
+ * cdef LGMap rmap = LGMap()
+ * CHKERR( MatGetLocalToGlobalMapping(self.mat, &rmap.lgm, &cmap.lgm) )
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 851, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_cmap = ((struct PyPetscLGMapObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Mat.pyx":852
+ * def getLGMap(self):
+ * cdef LGMap cmap = LGMap()
+ * cdef LGMap rmap = LGMap() # <<<<<<<<<<<<<<
+ * CHKERR( MatGetLocalToGlobalMapping(self.mat, &rmap.lgm, &cmap.lgm) )
+ * PetscINCREF(cmap.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 852, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_rmap = ((struct PyPetscLGMapObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Mat.pyx":853
+ * cdef LGMap cmap = LGMap()
+ * cdef LGMap rmap = LGMap()
+ * CHKERR( MatGetLocalToGlobalMapping(self.mat, &rmap.lgm, &cmap.lgm) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(cmap.obj)
+ * PetscINCREF(rmap.obj)
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalToGlobalMapping(__pyx_v_self->mat, (&__pyx_v_rmap->lgm), (&__pyx_v_cmap->lgm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 853, __pyx_L1_error)
+
+ /* "PETSc/Mat.pyx":854
+ * cdef LGMap rmap = LGMap()
+ * CHKERR( MatGetLocalToGlobalMapping(self.mat, &rmap.lgm, &cmap.lgm) )
+ * PetscINCREF(cmap.obj) # <<<<<<<<<<<<<<
+ * PetscINCREF(rmap.obj)
+ * return (rmap, cmap)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_cmap->__pyx_base.obj);
+
+ /* "PETSc/Mat.pyx":855
+ * CHKERR( MatGetLocalToGlobalMapping(self.mat, &rmap.lgm, &cmap.lgm) )
+ * PetscINCREF(cmap.obj)
+ * PetscINCREF(rmap.obj) # <<<<<<<<<<<<<<
+ * return (rmap, cmap)
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_rmap->__pyx_base.obj);
+
+ /* "PETSc/Mat.pyx":856
+ * PetscINCREF(cmap.obj)
+ * PetscINCREF(rmap.obj)
+ * return (rmap, cmap) # <<<<<<<<<<<<<<
+ *
+ * def setValueLocal(self, row, col, value, addv=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 856, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_INCREF(((PyObject *)__pyx_v_rmap));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_rmap));
+ PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_rmap));
+ __Pyx_INCREF(((PyObject *)__pyx_v_cmap));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_cmap));
+ PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_cmap));
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/Mat.pyx":850
+ * CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) )
+ *
+ * def getLGMap(self): # <<<<<<<<<<<<<<
+ * cdef LGMap cmap = LGMap()
+ * cdef LGMap rmap = LGMap()
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.getLGMap", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_cmap);
+ __Pyx_XDECREF((PyObject *)__pyx_v_rmap);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Mat.pyx":858
+ * return (rmap, cmap)
+ *
* def setValueLocal(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival1 = asInt(row)
* cdef PetscInt ival2 = asInt(col)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_184setValueLocal[] = "Mat.setValueLocal(self, row, col, value, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_186setValueLocal[] = "Mat.setValueLocal(self, row, col, value, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValueLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_row = 0;
PyObject *__pyx_v_col = 0;
PyObject *__pyx_v_value = 0;
@@ -122822,9 +130409,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185setValueLocal(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -122833,16 +130424,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185setValueLocal(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_row)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_col)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 3, 4, 1); __PYX_ERR(33, 849, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 3, 4, 1); __PYX_ERR(33, 858, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 3, 4, 2); __PYX_ERR(33, 849, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 3, 4, 2); __PYX_ERR(33, 858, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -122850,11 +130444,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185setValueLocal(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueLocal") < 0)) __PYX_ERR(33, 849, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueLocal") < 0)) __PYX_ERR(33, 858, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -122869,20 +130464,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_185setValueLocal(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 849, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueLocal", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 858, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValueLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_184setValueLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_row, __pyx_v_col, __pyx_v_value, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_186setValueLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_row, __pyx_v_col, __pyx_v_value, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_184setValueLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_186setValueLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
PetscInt __pyx_v_ival1;
PetscInt __pyx_v_ival2;
PetscScalar __pyx_v_sval;
@@ -122895,57 +130490,57 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_184setValueLocal(struct PyPetscM
int __pyx_t_4;
__Pyx_RefNannySetupContext("setValueLocal", 0);
- /* "PETSc/Mat.pyx":850
+ /* "PETSc/Mat.pyx":859
*
* def setValueLocal(self, row, col, value, addv=None):
* cdef PetscInt ival1 = asInt(row) # <<<<<<<<<<<<<<
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = asScalar(value)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 850, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_row); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 859, __pyx_L1_error)
__pyx_v_ival1 = __pyx_t_1;
- /* "PETSc/Mat.pyx":851
+ /* "PETSc/Mat.pyx":860
* def setValueLocal(self, row, col, value, addv=None):
* cdef PetscInt ival1 = asInt(row)
* cdef PetscInt ival2 = asInt(col) # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 851, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_col); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 860, __pyx_L1_error)
__pyx_v_ival2 = __pyx_t_1;
- /* "PETSc/Mat.pyx":852
+ /* "PETSc/Mat.pyx":861
* cdef PetscInt ival1 = asInt(row)
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = asScalar(value) # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( MatSetValuesLocal(
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 852, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_value); if (unlikely(__pyx_t_2 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 861, __pyx_L1_error)
__pyx_v_sval = __pyx_t_2;
- /* "PETSc/Mat.pyx":853
+ /* "PETSc/Mat.pyx":862
* cdef PetscInt ival2 = asInt(col)
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( MatSetValuesLocal(
* self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)-1L))) __PYX_ERR(33, 853, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_3 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(33, 862, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_3;
- /* "PETSc/Mat.pyx":854
+ /* "PETSc/Mat.pyx":863
* cdef PetscScalar sval = asScalar(value)
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( MatSetValuesLocal( # <<<<<<<<<<<<<<
* self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValuesLocal(__pyx_v_self->mat, 1, (&__pyx_v_ival1), 1, (&__pyx_v_ival2), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 854, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetValuesLocal(__pyx_v_self->mat, 1, (&__pyx_v_ival1), 1, (&__pyx_v_ival2), (&__pyx_v_sval), __pyx_v_caddv)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 863, __pyx_L1_error)
- /* "PETSc/Mat.pyx":849
- * CHKERR( MatSetLocalToGlobalMapping(self.mat, rmap.lgm, cmap.lgm) )
+ /* "PETSc/Mat.pyx":858
+ * return (rmap, cmap)
*
* def setValueLocal(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInt ival1 = asInt(row)
@@ -122964,7 +130559,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_184setValueLocal(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":857
+/* "PETSc/Mat.pyx":866
* self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*
* def setValuesLocal(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -122973,9 +130568,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_184setValueLocal(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_186setValuesLocal[] = "Mat.setValuesLocal(self, rows, cols, values, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_188setValuesLocal[] = "Mat.setValuesLocal(self, rows, cols, values, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_rows = 0;
PyObject *__pyx_v_cols = 0;
PyObject *__pyx_v_values = 0;
@@ -122992,9 +130587,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValuesLocal(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123003,16 +130602,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValuesLocal(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cols)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 3, 4, 1); __PYX_ERR(33, 857, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 3, 4, 1); __PYX_ERR(33, 866, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 3, 4, 2); __PYX_ERR(33, 857, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 3, 4, 2); __PYX_ERR(33, 866, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -123020,11 +130622,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValuesLocal(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocal") < 0)) __PYX_ERR(33, 857, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocal") < 0)) __PYX_ERR(33, 866, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123039,35 +130642,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_187setValuesLocal(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 857, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocal", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 866, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_186setValuesLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_186setValuesLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesLocal", 0);
- /* "PETSc/Mat.pyx":858
+ /* "PETSc/Mat.pyx":867
*
* def setValuesLocal(self, rows, cols, values, addv=None):
* matsetvalues(self.mat, rows, cols, values, addv, 0, 1) # <<<<<<<<<<<<<<
*
* def setValuesLocalRCV(self, R, C, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 858, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 867, __pyx_L1_error)
- /* "PETSc/Mat.pyx":857
+ /* "PETSc/Mat.pyx":866
* self.mat, 1, &ival1, 1, &ival2, &sval, caddv) )
*
* def setValuesLocal(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -123087,7 +130690,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_186setValuesLocal(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":860
+/* "PETSc/Mat.pyx":869
* matsetvalues(self.mat, rows, cols, values, addv, 0, 1)
*
* def setValuesLocalRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -123096,9 +130699,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_186setValuesLocal(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_188setValuesLocalRCV[] = "Mat.setValuesLocalRCV(self, R, C, V, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_190setValuesLocalRCV[] = "Mat.setValuesLocalRCV(self, R, C, V, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_R = 0;
PyObject *__pyx_v_C = 0;
PyObject *__pyx_v_V = 0;
@@ -123115,9 +130718,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocalRCV(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123126,16 +130733,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocalRCV(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_R)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_C)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocalRCV", 0, 3, 4, 1); __PYX_ERR(33, 860, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalRCV", 0, 3, 4, 1); __PYX_ERR(33, 869, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocalRCV", 0, 3, 4, 2); __PYX_ERR(33, 860, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalRCV", 0, 3, 4, 2); __PYX_ERR(33, 869, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -123143,11 +130753,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocalRCV(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocalRCV") < 0)) __PYX_ERR(33, 860, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocalRCV") < 0)) __PYX_ERR(33, 869, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123162,35 +130773,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocalRCV(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesLocalRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 860, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 869, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesLocalRCV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocalRCV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalRCV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesLocalRCV", 0);
- /* "PETSc/Mat.pyx":861
+ /* "PETSc/Mat.pyx":870
*
* def setValuesLocalRCV(self, R, C, V, addv=None):
* matsetvalues_rcv(self.mat, R, C, V, addv, 0, 1) # <<<<<<<<<<<<<<
*
* def setValuesLocalIJV(self, I, J, V, addv=None, rowmap=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 861, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 870, __pyx_L1_error)
- /* "PETSc/Mat.pyx":860
+ /* "PETSc/Mat.pyx":869
* matsetvalues(self.mat, rows, cols, values, addv, 0, 1)
*
* def setValuesLocalRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -123210,7 +130821,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocalRCV(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":863
+/* "PETSc/Mat.pyx":872
* matsetvalues_rcv(self.mat, R, C, V, addv, 0, 1)
*
* def setValuesLocalIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -123219,9 +130830,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_188setValuesLocalRCV(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_190setValuesLocalIJV[] = "Mat.setValuesLocalIJV(self, I, J, V, addv=None, rowmap=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_192setValuesLocalIJV[] = "Mat.setValuesLocalIJV(self, I, J, V, addv=None, rowmap=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_I = 0;
PyObject *__pyx_v_J = 0;
PyObject *__pyx_v_V = 0;
@@ -123240,10 +130851,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalIJV(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123252,21 +130868,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalIJV(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocalIJV", 0, 3, 5, 1); __PYX_ERR(33, 863, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalIJV", 0, 3, 5, 1); __PYX_ERR(33, 872, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocalIJV", 0, 3, 5, 2); __PYX_ERR(33, 863, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalIJV", 0, 3, 5, 2); __PYX_ERR(33, 872, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rowmap);
@@ -123274,12 +130894,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalIJV(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocalIJV") < 0)) __PYX_ERR(33, 863, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocalIJV") < 0)) __PYX_ERR(33, 872, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123295,35 +130917,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalIJV(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesLocalIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 863, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 872, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesLocalIJV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalIJV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalIJV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesLocalIJV", 0);
- /* "PETSc/Mat.pyx":864
+ /* "PETSc/Mat.pyx":873
*
* def setValuesLocalIJV(self, I, J, V, addv=None, rowmap=None):
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 0, 1) # <<<<<<<<<<<<<<
*
* def setValuesLocalCSR(self, I, J, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 0, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 864, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 0, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 873, __pyx_L1_error)
- /* "PETSc/Mat.pyx":863
+ /* "PETSc/Mat.pyx":872
* matsetvalues_rcv(self.mat, R, C, V, addv, 0, 1)
*
* def setValuesLocalIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -123343,7 +130965,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalIJV(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":866
+/* "PETSc/Mat.pyx":875
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 0, 1)
*
* def setValuesLocalCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -123352,9 +130974,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_190setValuesLocalIJV(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_192setValuesLocalCSR[] = "Mat.setValuesLocalCSR(self, I, J, V, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_194setValuesLocalCSR[] = "Mat.setValuesLocalCSR(self, I, J, V, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_I = 0;
PyObject *__pyx_v_J = 0;
PyObject *__pyx_v_V = 0;
@@ -123371,9 +130993,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalCSR(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123382,16 +131008,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalCSR(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocalCSR", 0, 3, 4, 1); __PYX_ERR(33, 866, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalCSR", 0, 3, 4, 1); __PYX_ERR(33, 875, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesLocalCSR", 0, 3, 4, 2); __PYX_ERR(33, 866, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalCSR", 0, 3, 4, 2); __PYX_ERR(33, 875, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -123399,11 +131028,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalCSR(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocalCSR") < 0)) __PYX_ERR(33, 866, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesLocalCSR") < 0)) __PYX_ERR(33, 875, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123418,35 +131048,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalCSR(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesLocalCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 866, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesLocalCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 875, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesLocalCSR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalCSR(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesLocalCSR(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesLocalCSR", 0);
- /* "PETSc/Mat.pyx":867
+ /* "PETSc/Mat.pyx":876
*
* def setValuesLocalCSR(self, I, J, V, addv=None):
* matsetvalues_csr(self.mat, I, J, V, addv, 0, 1) # <<<<<<<<<<<<<<
*
* def setValuesBlockedLocal(self, rows, cols, values, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 867, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 0, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 876, __pyx_L1_error)
- /* "PETSc/Mat.pyx":866
+ /* "PETSc/Mat.pyx":875
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 0, 1)
*
* def setValuesLocalCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -123466,7 +131096,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalCSR(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":869
+/* "PETSc/Mat.pyx":878
* matsetvalues_csr(self.mat, I, J, V, addv, 0, 1)
*
* def setValuesBlockedLocal(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -123475,9 +131105,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_192setValuesLocalCSR(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_194setValuesBlockedLocal[] = "Mat.setValuesBlockedLocal(self, rows, cols, values, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocal[] = "Mat.setValuesBlockedLocal(self, rows, cols, values, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_rows = 0;
PyObject *__pyx_v_cols = 0;
PyObject *__pyx_v_values = 0;
@@ -123494,9 +131124,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesBlockedLocal(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123505,16 +131139,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesBlockedLocal(PyObjec
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cols)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 3, 4, 1); __PYX_ERR(33, 869, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 3, 4, 1); __PYX_ERR(33, 878, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 3, 4, 2); __PYX_ERR(33, 869, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 3, 4, 2); __PYX_ERR(33, 878, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -123522,11 +131159,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesBlockedLocal(PyObjec
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocal") < 0)) __PYX_ERR(33, 869, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocal") < 0)) __PYX_ERR(33, 878, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123541,35 +131179,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesBlockedLocal(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 869, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocal", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 878, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlockedLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesBlockedLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesBlockedLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_cols, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedLocal", 0);
- /* "PETSc/Mat.pyx":870
+ /* "PETSc/Mat.pyx":879
*
* def setValuesBlockedLocal(self, rows, cols, values, addv=None):
* matsetvalues(self.mat, rows, cols, values, addv, 1, 1) # <<<<<<<<<<<<<<
*
* def setValuesBlockedLocalRCV(self, R, C, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 870, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues(__pyx_v_self->mat, __pyx_v_rows, __pyx_v_cols, __pyx_v_values, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 879, __pyx_L1_error)
- /* "PETSc/Mat.pyx":869
+ /* "PETSc/Mat.pyx":878
* matsetvalues_csr(self.mat, I, J, V, addv, 0, 1)
*
* def setValuesBlockedLocal(self, rows, cols, values, addv=None): # <<<<<<<<<<<<<<
@@ -123589,7 +131227,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesBlockedLocal(struct
return __pyx_r;
}
-/* "PETSc/Mat.pyx":872
+/* "PETSc/Mat.pyx":881
* matsetvalues(self.mat, rows, cols, values, addv, 1, 1)
*
* def setValuesBlockedLocalRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -123598,9 +131236,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_194setValuesBlockedLocal(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocalRCV[] = "Mat.setValuesBlockedLocalRCV(self, R, C, V, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalRCV[] = "Mat.setValuesBlockedLocalRCV(self, R, C, V, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalRCV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_R = 0;
PyObject *__pyx_v_C = 0;
PyObject *__pyx_v_V = 0;
@@ -123617,9 +131255,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocalRCV(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123628,16 +131270,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocalRCV(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_R)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_C)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalRCV", 0, 3, 4, 1); __PYX_ERR(33, 872, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalRCV", 0, 3, 4, 1); __PYX_ERR(33, 881, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalRCV", 0, 3, 4, 2); __PYX_ERR(33, 872, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalRCV", 0, 3, 4, 2); __PYX_ERR(33, 881, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -123645,11 +131290,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocalRCV(PyOb
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocalRCV") < 0)) __PYX_ERR(33, 872, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocalRCV") < 0)) __PYX_ERR(33, 881, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123664,35 +131310,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocalRCV(PyOb
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 872, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalRCV", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 881, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlockedLocalRCV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocalRCV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalRCV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalRCV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_R, PyObject *__pyx_v_C, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedLocalRCV", 0);
- /* "PETSc/Mat.pyx":873
+ /* "PETSc/Mat.pyx":882
*
* def setValuesBlockedLocalRCV(self, R, C, V, addv=None):
* matsetvalues_rcv(self.mat, R, C, V, addv, 1, 1) # <<<<<<<<<<<<<<
*
* def setValuesBlockedLocalIJV(self, I, J, V, addv=None, rowmap=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 873, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_rcv(__pyx_v_self->mat, __pyx_v_R, __pyx_v_C, __pyx_v_V, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 882, __pyx_L1_error)
- /* "PETSc/Mat.pyx":872
+ /* "PETSc/Mat.pyx":881
* matsetvalues(self.mat, rows, cols, values, addv, 1, 1)
*
* def setValuesBlockedLocalRCV(self, R, C, V, addv=None): # <<<<<<<<<<<<<<
@@ -123712,7 +131358,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocalRCV(stru
return __pyx_r;
}
-/* "PETSc/Mat.pyx":875
+/* "PETSc/Mat.pyx":884
* matsetvalues_rcv(self.mat, R, C, V, addv, 1, 1)
*
* def setValuesBlockedLocalIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -123721,9 +131367,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocalRCV(stru
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalIJV[] = "Mat.setValuesBlockedLocalIJV(self, I, J, V, addv=None, rowmap=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalIJV[] = "Mat.setValuesBlockedLocalIJV(self, I, J, V, addv=None, rowmap=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalIJV(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_I = 0;
PyObject *__pyx_v_J = 0;
PyObject *__pyx_v_V = 0;
@@ -123742,10 +131388,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalIJV(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123754,21 +131405,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalIJV(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalIJV", 0, 3, 5, 1); __PYX_ERR(33, 875, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalIJV", 0, 3, 5, 1); __PYX_ERR(33, 884, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalIJV", 0, 3, 5, 2); __PYX_ERR(33, 875, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalIJV", 0, 3, 5, 2); __PYX_ERR(33, 884, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rowmap);
@@ -123776,12 +131431,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalIJV(PyOb
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocalIJV") < 0)) __PYX_ERR(33, 875, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocalIJV") < 0)) __PYX_ERR(33, 884, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123797,35 +131454,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalIJV(PyOb
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 875, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalIJV", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 884, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlockedLocalIJV", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalIJV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalIJV(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalIJV(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv, PyObject *__pyx_v_rowmap) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedLocalIJV", 0);
- /* "PETSc/Mat.pyx":876
+ /* "PETSc/Mat.pyx":885
*
* def setValuesBlockedLocalIJV(self, I, J, V, addv=None, rowmap=None):
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 1, 1) # <<<<<<<<<<<<<<
*
* def setValuesBlockedLocalCSR(self, I, J, V, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 1, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 876, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_ijv(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, __pyx_v_rowmap, 1, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 885, __pyx_L1_error)
- /* "PETSc/Mat.pyx":875
+ /* "PETSc/Mat.pyx":884
* matsetvalues_rcv(self.mat, R, C, V, addv, 1, 1)
*
* def setValuesBlockedLocalIJV(self, I, J, V, addv=None, rowmap=None): # <<<<<<<<<<<<<<
@@ -123845,7 +131502,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalIJV(stru
return __pyx_r;
}
-/* "PETSc/Mat.pyx":878
+/* "PETSc/Mat.pyx":887
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 1, 1)
*
* def setValuesBlockedLocalCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -123854,9 +131511,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalIJV(stru
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalCSR[] = "Mat.setValuesBlockedLocalCSR(self, I, J, V, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setValuesBlockedLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_202setValuesBlockedLocalCSR[] = "Mat.setValuesBlockedLocalCSR(self, I, J, V, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setValuesBlockedLocalCSR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_I = 0;
PyObject *__pyx_v_J = 0;
PyObject *__pyx_v_V = 0;
@@ -123873,9 +131530,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalCSR(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -123884,16 +131545,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalCSR(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalCSR", 0, 3, 4, 1); __PYX_ERR(33, 878, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalCSR", 0, 3, 4, 1); __PYX_ERR(33, 887, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_V)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalCSR", 0, 3, 4, 2); __PYX_ERR(33, 878, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalCSR", 0, 3, 4, 2); __PYX_ERR(33, 887, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -123901,11 +131565,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalCSR(PyOb
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocalCSR") < 0)) __PYX_ERR(33, 878, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValuesBlockedLocalCSR") < 0)) __PYX_ERR(33, 887, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -123920,35 +131585,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalCSR(PyOb
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 878, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValuesBlockedLocalCSR", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 887, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValuesBlockedLocalCSR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalCSR(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_202setValuesBlockedLocalCSR(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setValuesBlockedLocalCSR(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_I, PyObject *__pyx_v_J, PyObject *__pyx_v_V, PyObject *__pyx_v_addv) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setValuesBlockedLocalCSR", 0);
- /* "PETSc/Mat.pyx":879
+ /* "PETSc/Mat.pyx":888
*
* def setValuesBlockedLocalCSR(self, I, J, V, addv=None):
* matsetvalues_csr(self.mat, I, J, V, addv, 1, 1) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 879, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvalues_csr(__pyx_v_self->mat, __pyx_v_I, __pyx_v_J, __pyx_v_V, __pyx_v_addv, 1, 1); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 888, __pyx_L1_error)
- /* "PETSc/Mat.pyx":878
+ /* "PETSc/Mat.pyx":887
* matsetvalues_ijv(self.mat, I, J, V, addv, rowmap, 1, 1)
*
* def setValuesBlockedLocalCSR(self, I, J, V, addv=None): # <<<<<<<<<<<<<<
@@ -123968,7 +131633,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalCSR(stru
return __pyx_r;
}
-/* "PETSc/Mat.pyx":885
+/* "PETSc/Mat.pyx":894
* Stencil = _Mat_Stencil
*
* def setStencil(self, dims, starts=None, dof=1): # <<<<<<<<<<<<<<
@@ -123977,9 +131642,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalCSR(stru
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_202setStencil[] = "Mat.setStencil(self, dims, starts=None, dof=1)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_204setStencil[] = "Mat.setStencil(self, dims, starts=None, dof=1)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_dims = 0;
PyObject *__pyx_v_starts = 0;
PyObject *__pyx_v_dof = 0;
@@ -123996,8 +131661,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setStencil(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -124006,11 +131674,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setStencil(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dims)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_starts);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dof);
@@ -124018,12 +131688,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setStencil(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setStencil") < 0)) __PYX_ERR(33, 885, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setStencil") < 0)) __PYX_ERR(33, 894, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -124035,20 +131707,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_203setStencil(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setStencil", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 885, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setStencil", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 894, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setStencil", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_dims, __pyx_v_starts, __pyx_v_dof);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_204setStencil(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_dims, __pyx_v_starts, __pyx_v_dof);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_dims, PyObject *__pyx_v_starts, PyObject *__pyx_v_dof) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_204setStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_dims, PyObject *__pyx_v_starts, PyObject *__pyx_v_dof) {
PetscInt __pyx_v_ndim;
PetscInt __pyx_v_ndof;
PetscInt __pyx_v_cdims[3];
@@ -124061,7 +131733,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatO
int __pyx_t_4;
__Pyx_RefNannySetupContext("setStencil", 0);
- /* "PETSc/Mat.pyx":888
+ /* "PETSc/Mat.pyx":897
* cdef PetscInt ndim, ndof
* cdef PetscInt cdims[3], cstarts[3]
* cdims[0] = cdims[1] = cdims[2] = 1 # <<<<<<<<<<<<<<
@@ -124072,7 +131744,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatO
(__pyx_v_cdims[1]) = 1;
(__pyx_v_cdims[2]) = 1;
- /* "PETSc/Mat.pyx":889
+ /* "PETSc/Mat.pyx":898
* cdef PetscInt cdims[3], cstarts[3]
* cdims[0] = cdims[1] = cdims[2] = 1
* cstarts[0] = cstarts[1] = cstarts[2] = 0 # <<<<<<<<<<<<<<
@@ -124083,27 +131755,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatO
(__pyx_v_cstarts[1]) = 0;
(__pyx_v_cstarts[2]) = 0;
- /* "PETSc/Mat.pyx":890
+ /* "PETSc/Mat.pyx":899
* cdims[0] = cdims[1] = cdims[2] = 1
* cstarts[0] = cstarts[1] = cstarts[2] = 0
* ndim = asDims(dims, &cdims[0], &cdims[1], &cdims[2]) # <<<<<<<<<<<<<<
* ndof = asInt(dof)
* if starts is not None:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_dims, (&(__pyx_v_cdims[0])), (&(__pyx_v_cdims[1])), (&(__pyx_v_cdims[2]))); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 890, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_dims, (&(__pyx_v_cdims[0])), (&(__pyx_v_cdims[1])), (&(__pyx_v_cdims[2]))); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 899, __pyx_L1_error)
__pyx_v_ndim = __pyx_t_1;
- /* "PETSc/Mat.pyx":891
+ /* "PETSc/Mat.pyx":900
* cstarts[0] = cstarts[1] = cstarts[2] = 0
* ndim = asDims(dims, &cdims[0], &cdims[1], &cdims[2])
* ndof = asInt(dof) # <<<<<<<<<<<<<<
* if starts is not None:
* asDims(dims, &cstarts[0], &cstarts[1], &cstarts[2])
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 891, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 900, __pyx_L1_error)
__pyx_v_ndof = __pyx_t_1;
- /* "PETSc/Mat.pyx":892
+ /* "PETSc/Mat.pyx":901
* ndim = asDims(dims, &cdims[0], &cdims[1], &cdims[2])
* ndof = asInt(dof)
* if starts is not None: # <<<<<<<<<<<<<<
@@ -124114,16 +131786,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatO
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":893
+ /* "PETSc/Mat.pyx":902
* ndof = asInt(dof)
* if starts is not None:
* asDims(dims, &cstarts[0], &cstarts[1], &cstarts[2]) # <<<<<<<<<<<<<<
* CHKERR( MatSetStencil(self.mat, ndim, cdims, cstarts, ndof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_dims, (&(__pyx_v_cstarts[0])), (&(__pyx_v_cstarts[1])), (&(__pyx_v_cstarts[2]))); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 893, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_dims, (&(__pyx_v_cstarts[0])), (&(__pyx_v_cstarts[1])), (&(__pyx_v_cstarts[2]))); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 902, __pyx_L1_error)
- /* "PETSc/Mat.pyx":892
+ /* "PETSc/Mat.pyx":901
* ndim = asDims(dims, &cdims[0], &cdims[1], &cdims[2])
* ndof = asInt(dof)
* if starts is not None: # <<<<<<<<<<<<<<
@@ -124132,16 +131804,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatO
*/
}
- /* "PETSc/Mat.pyx":894
+ /* "PETSc/Mat.pyx":903
* if starts is not None:
* asDims(dims, &cstarts[0], &cstarts[1], &cstarts[2])
* CHKERR( MatSetStencil(self.mat, ndim, cdims, cstarts, ndof) ) # <<<<<<<<<<<<<<
*
* def setValueStencil(self, row, col, value, addv=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetStencil(__pyx_v_self->mat, __pyx_v_ndim, __pyx_v_cdims, __pyx_v_cstarts, __pyx_v_ndof)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 894, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetStencil(__pyx_v_self->mat, __pyx_v_ndim, __pyx_v_cdims, __pyx_v_cstarts, __pyx_v_ndof)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 903, __pyx_L1_error)
- /* "PETSc/Mat.pyx":885
+ /* "PETSc/Mat.pyx":894
* Stencil = _Mat_Stencil
*
* def setStencil(self, dims, starts=None, dof=1): # <<<<<<<<<<<<<<
@@ -124161,7 +131833,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatO
return __pyx_r;
}
-/* "PETSc/Mat.pyx":896
+/* "PETSc/Mat.pyx":905
* CHKERR( MatSetStencil(self.mat, ndim, cdims, cstarts, ndof) )
*
* def setValueStencil(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
@@ -124170,9 +131842,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_202setStencil(struct PyPetscMatO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setValueStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_204setValueStencil[] = "Mat.setValueStencil(self, row, col, value, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setValueStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_206setValueStencil[] = "Mat.setValueStencil(self, row, col, value, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_row = 0;
PyObject *__pyx_v_col = 0;
PyObject *__pyx_v_value = 0;
@@ -124189,9 +131861,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setValueStencil(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -124200,16 +131876,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setValueStencil(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_row)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_col)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValueStencil", 0, 3, 4, 1); __PYX_ERR(33, 896, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueStencil", 0, 3, 4, 1); __PYX_ERR(33, 905, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValueStencil", 0, 3, 4, 2); __PYX_ERR(33, 896, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueStencil", 0, 3, 4, 2); __PYX_ERR(33, 905, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -124217,11 +131896,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setValueStencil(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueStencil") < 0)) __PYX_ERR(33, 896, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueStencil") < 0)) __PYX_ERR(33, 905, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -124236,20 +131916,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_205setValueStencil(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValueStencil", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 896, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueStencil", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 905, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValueStencil", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_204setValueStencil(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_row, __pyx_v_col, __pyx_v_value, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_206setValueStencil(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_row, __pyx_v_col, __pyx_v_value, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_204setValueStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_206setValueStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *__pyx_v_r = 0;
struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *__pyx_v_c = 0;
InsertMode __pyx_v_im;
@@ -124259,46 +131939,46 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_204setValueStencil(struct PyPets
InsertMode __pyx_t_2;
__Pyx_RefNannySetupContext("setValueStencil", 0);
- /* "PETSc/Mat.pyx":897
+ /* "PETSc/Mat.pyx":906
*
* def setValueStencil(self, row, col, value, addv=None):
* cdef _Mat_Stencil r = row, c = col # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* matsetvaluestencil(self.mat, r, c, value, im, 0)
*/
- if (!(likely(((__pyx_v_row) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_row, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 897, __pyx_L1_error)
+ if (!(likely(((__pyx_v_row) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_row, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 906, __pyx_L1_error)
__pyx_t_1 = __pyx_v_row;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_r = ((struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *)__pyx_t_1);
__pyx_t_1 = 0;
- if (!(likely(((__pyx_v_col) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_col, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 897, __pyx_L1_error)
+ if (!(likely(((__pyx_v_col) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_col, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 906, __pyx_L1_error)
__pyx_t_1 = __pyx_v_col;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_c = ((struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":898
+ /* "PETSc/Mat.pyx":907
* def setValueStencil(self, row, col, value, addv=None):
* cdef _Mat_Stencil r = row, c = col
* cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
* matsetvaluestencil(self.mat, r, c, value, im, 0)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)-1L))) __PYX_ERR(33, 898, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(33, 907, __pyx_L1_error)
__pyx_v_im = __pyx_t_2;
- /* "PETSc/Mat.pyx":899
+ /* "PETSc/Mat.pyx":908
* cdef _Mat_Stencil r = row, c = col
* cdef PetscInsertMode im = insertmode(addv)
* matsetvaluestencil(self.mat, r, c, value, im, 0) # <<<<<<<<<<<<<<
*
* def setValueBlockedStencil(self, row, col, value, addv=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvaluestencil(__pyx_v_self->mat, __pyx_v_r, __pyx_v_c, __pyx_v_value, __pyx_v_im, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 899, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvaluestencil(__pyx_v_self->mat, __pyx_v_r, __pyx_v_c, __pyx_v_value, __pyx_v_im, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 908, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":896
+ /* "PETSc/Mat.pyx":905
* CHKERR( MatSetStencil(self.mat, ndim, cdims, cstarts, ndof) )
*
* def setValueStencil(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
@@ -124321,7 +132001,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_204setValueStencil(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":901
+/* "PETSc/Mat.pyx":910
* matsetvaluestencil(self.mat, r, c, value, im, 0)
*
* def setValueBlockedStencil(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
@@ -124330,9 +132010,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_204setValueStencil(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueBlockedStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil[] = "Mat.setValueBlockedStencil(self, row, col, value, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueBlockedStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209setValueBlockedStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_208setValueBlockedStencil[] = "Mat.setValueBlockedStencil(self, row, col, value, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209setValueBlockedStencil(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_row = 0;
PyObject *__pyx_v_col = 0;
PyObject *__pyx_v_value = 0;
@@ -124349,9 +132029,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueBlockedStencil(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -124360,16 +132044,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueBlockedStencil(PyObje
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_row)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_col)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValueBlockedStencil", 0, 3, 4, 1); __PYX_ERR(33, 901, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueBlockedStencil", 0, 3, 4, 1); __PYX_ERR(33, 910, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setValueBlockedStencil", 0, 3, 4, 2); __PYX_ERR(33, 901, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueBlockedStencil", 0, 3, 4, 2); __PYX_ERR(33, 910, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -124377,11 +132064,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueBlockedStencil(PyObje
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueBlockedStencil") < 0)) __PYX_ERR(33, 901, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setValueBlockedStencil") < 0)) __PYX_ERR(33, 910, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -124396,20 +132084,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueBlockedStencil(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setValueBlockedStencil", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 901, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setValueBlockedStencil", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 910, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setValueBlockedStencil", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_row, __pyx_v_col, __pyx_v_value, __pyx_v_addv);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_208setValueBlockedStencil(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_row, __pyx_v_col, __pyx_v_value, __pyx_v_addv);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208setValueBlockedStencil(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_row, PyObject *__pyx_v_col, PyObject *__pyx_v_value, PyObject *__pyx_v_addv) {
struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *__pyx_v_r = 0;
struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *__pyx_v_c = 0;
InsertMode __pyx_v_im;
@@ -124419,46 +132107,46 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil(struct
InsertMode __pyx_t_2;
__Pyx_RefNannySetupContext("setValueBlockedStencil", 0);
- /* "PETSc/Mat.pyx":902
+ /* "PETSc/Mat.pyx":911
*
* def setValueBlockedStencil(self, row, col, value, addv=None):
* cdef _Mat_Stencil r = row, c = col # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* matsetvaluestencil(self.mat, r, c, value, im, 1)
*/
- if (!(likely(((__pyx_v_row) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_row, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 902, __pyx_L1_error)
+ if (!(likely(((__pyx_v_row) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_row, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 911, __pyx_L1_error)
__pyx_t_1 = __pyx_v_row;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_r = ((struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *)__pyx_t_1);
__pyx_t_1 = 0;
- if (!(likely(((__pyx_v_col) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_col, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 902, __pyx_L1_error)
+ if (!(likely(((__pyx_v_col) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_col, __pyx_ptype_8petsc4py_5PETSc__Mat_Stencil))))) __PYX_ERR(33, 911, __pyx_L1_error)
__pyx_t_1 = __pyx_v_col;
__Pyx_INCREF(__pyx_t_1);
__pyx_v_c = ((struct __pyx_obj_8petsc4py_5PETSc__Mat_Stencil *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":903
+ /* "PETSc/Mat.pyx":912
* def setValueBlockedStencil(self, row, col, value, addv=None):
* cdef _Mat_Stencil r = row, c = col
* cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
* matsetvaluestencil(self.mat, r, c, value, im, 1)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)-1L))) __PYX_ERR(33, 903, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_2 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(33, 912, __pyx_L1_error)
__pyx_v_im = __pyx_t_2;
- /* "PETSc/Mat.pyx":904
+ /* "PETSc/Mat.pyx":913
* cdef _Mat_Stencil r = row, c = col
* cdef PetscInsertMode im = insertmode(addv)
* matsetvaluestencil(self.mat, r, c, value, im, 1) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvaluestencil(__pyx_v_self->mat, __pyx_v_r, __pyx_v_c, __pyx_v_value, __pyx_v_im, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 904, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matsetvaluestencil(__pyx_v_self->mat, __pyx_v_r, __pyx_v_c, __pyx_v_value, __pyx_v_im, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 913, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":901
+ /* "PETSc/Mat.pyx":910
* matsetvaluestencil(self.mat, r, c, value, im, 0)
*
* def setValueBlockedStencil(self, row, col, value, addv=None): # <<<<<<<<<<<<<<
@@ -124481,7 +132169,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil(struct
return __pyx_r;
}
-/* "PETSc/Mat.pyx":908
+/* "PETSc/Mat.pyx":917
* #
*
* def zeroRows(self, rows, diag=1, Vec x=None, Vec b=None): # <<<<<<<<<<<<<<
@@ -124490,9 +132178,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_208zeroRows[] = "Mat.zeroRows(self, rows, diag=1, Vec x=None, Vec b=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRows(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_210zeroRows[] = "Mat.zeroRows(self, rows, diag=1, Vec x=None, Vec b=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRows(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_rows = 0;
PyObject *__pyx_v_diag = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
@@ -124511,9 +132199,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -124522,16 +132214,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_diag);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b);
@@ -124539,13 +132234,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeroRows") < 0)) __PYX_ERR(33, 908, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeroRows") < 0)) __PYX_ERR(33, 917, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -124558,15 +132256,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("zeroRows", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 908, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("zeroRows", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 917, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.zeroRows", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(33, 908, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(33, 908, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_diag, __pyx_v_x, __pyx_v_b);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(33, 917, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(33, 917, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRows(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_diag, __pyx_v_x, __pyx_v_b);
/* function exit code */
goto __pyx_L0;
@@ -124577,7 +132275,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows(PyObject *__pyx_v_se
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRows(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b) {
PetscInt __pyx_v_ni;
PetscInt *__pyx_v_i;
PetscScalar __pyx_v_sval;
@@ -124594,7 +132292,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
__Pyx_RefNannySetupContext("zeroRows", 0);
__Pyx_INCREF(__pyx_v_rows);
- /* "PETSc/Mat.pyx":909
+ /* "PETSc/Mat.pyx":918
*
* def zeroRows(self, rows, diag=1, Vec x=None, Vec b=None):
* cdef PetscInt ni=0, *i=NULL # <<<<<<<<<<<<<<
@@ -124604,17 +132302,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
__pyx_v_ni = 0;
__pyx_v_i = NULL;
- /* "PETSc/Mat.pyx":910
+ /* "PETSc/Mat.pyx":919
* def zeroRows(self, rows, diag=1, Vec x=None, Vec b=None):
* cdef PetscInt ni=0, *i=NULL
* cdef PetscScalar sval = asScalar(diag) # <<<<<<<<<<<<<<
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_diag); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 910, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_diag); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 919, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
- /* "PETSc/Mat.pyx":911
+ /* "PETSc/Mat.pyx":920
* cdef PetscInt ni=0, *i=NULL
* cdef PetscScalar sval = asScalar(diag)
* cdef PetscVec xvec=NULL, bvec=NULL # <<<<<<<<<<<<<<
@@ -124624,7 +132322,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
__pyx_v_xvec = NULL;
__pyx_v_bvec = NULL;
- /* "PETSc/Mat.pyx":912
+ /* "PETSc/Mat.pyx":921
* cdef PetscScalar sval = asScalar(diag)
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec # <<<<<<<<<<<<<<
@@ -124638,7 +132336,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
__pyx_v_xvec = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":913
+ /* "PETSc/Mat.pyx":922
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec # <<<<<<<<<<<<<<
@@ -124652,7 +132350,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
__pyx_v_bvec = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":914
+ /* "PETSc/Mat.pyx":923
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec
* if isinstance(rows, IS): # <<<<<<<<<<<<<<
@@ -124663,16 +132361,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":915
+ /* "PETSc/Mat.pyx":924
* if b is not None: bvec = b.vec
* if isinstance(rows, IS):
* CHKERR( MatZeroRowsIS(self.mat, (<IS>rows).iset, sval, xvec, bvec) ) # <<<<<<<<<<<<<<
* else:
* rows = iarray_i(rows, &ni, &i)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsIS(__pyx_v_self->mat, ((struct PyPetscISObject *)__pyx_v_rows)->iset, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 915, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsIS(__pyx_v_self->mat, ((struct PyPetscISObject *)__pyx_v_rows)->iset, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 924, __pyx_L1_error)
- /* "PETSc/Mat.pyx":914
+ /* "PETSc/Mat.pyx":923
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec
* if isinstance(rows, IS): # <<<<<<<<<<<<<<
@@ -124682,7 +132380,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
goto __pyx_L5;
}
- /* "PETSc/Mat.pyx":917
+ /* "PETSc/Mat.pyx":926
* CHKERR( MatZeroRowsIS(self.mat, (<IS>rows).iset, sval, xvec, bvec) )
* else:
* rows = iarray_i(rows, &ni, &i) # <<<<<<<<<<<<<<
@@ -124690,23 +132388,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
*
*/
/*else*/ {
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_rows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 917, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_rows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 926, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF_SET(__pyx_v_rows, __pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/Mat.pyx":918
+ /* "PETSc/Mat.pyx":927
* else:
* rows = iarray_i(rows, &ni, &i)
* CHKERR( MatZeroRows(self.mat, ni, i, sval, xvec, bvec) ) # <<<<<<<<<<<<<<
*
* def zeroRowsLocal(self, rows, diag=1, Vec x=None, Vec b=None):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRows(__pyx_v_self->mat, __pyx_v_ni, __pyx_v_i, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 918, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRows(__pyx_v_self->mat, __pyx_v_ni, __pyx_v_i, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 927, __pyx_L1_error)
}
__pyx_L5:;
- /* "PETSc/Mat.pyx":908
+ /* "PETSc/Mat.pyx":917
* #
*
* def zeroRows(self, rows, diag=1, Vec x=None, Vec b=None): # <<<<<<<<<<<<<<
@@ -124728,7 +132426,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":920
+/* "PETSc/Mat.pyx":929
* CHKERR( MatZeroRows(self.mat, ni, i, sval, xvec, bvec) )
*
* def zeroRowsLocal(self, rows, diag=1, Vec x=None, Vec b=None): # <<<<<<<<<<<<<<
@@ -124737,9 +132435,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_208zeroRows(struct PyPetscMatObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_210zeroRowsLocal[] = "Mat.zeroRowsLocal(self, rows, diag=1, Vec x=None, Vec b=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_212zeroRowsLocal[] = "Mat.zeroRowsLocal(self, rows, diag=1, Vec x=None, Vec b=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_rows = 0;
PyObject *__pyx_v_diag = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
@@ -124758,9 +132456,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -124769,16 +132471,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_diag);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b);
@@ -124786,13 +132491,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeroRowsLocal") < 0)) __PYX_ERR(33, 920, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeroRowsLocal") < 0)) __PYX_ERR(33, 929, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -124805,15 +132513,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("zeroRowsLocal", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 920, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("zeroRowsLocal", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 929, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.zeroRowsLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(33, 920, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(33, 920, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_diag, __pyx_v_x, __pyx_v_b);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(33, 929, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(33, 929, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsLocal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_diag, __pyx_v_x, __pyx_v_b);
/* function exit code */
goto __pyx_L0;
@@ -124824,7 +132532,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsLocal(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b) {
PetscInt __pyx_v_ni;
PetscInt *__pyx_v_i;
PetscScalar __pyx_v_sval;
@@ -124841,7 +132549,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
__Pyx_RefNannySetupContext("zeroRowsLocal", 0);
__Pyx_INCREF(__pyx_v_rows);
- /* "PETSc/Mat.pyx":921
+ /* "PETSc/Mat.pyx":930
*
* def zeroRowsLocal(self, rows, diag=1, Vec x=None, Vec b=None):
* cdef PetscInt ni=0, *i=NULL # <<<<<<<<<<<<<<
@@ -124851,17 +132559,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
__pyx_v_ni = 0;
__pyx_v_i = NULL;
- /* "PETSc/Mat.pyx":922
+ /* "PETSc/Mat.pyx":931
* def zeroRowsLocal(self, rows, diag=1, Vec x=None, Vec b=None):
* cdef PetscInt ni=0, *i=NULL
* cdef PetscScalar sval = asScalar(diag) # <<<<<<<<<<<<<<
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_diag); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 922, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_diag); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 931, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
- /* "PETSc/Mat.pyx":923
+ /* "PETSc/Mat.pyx":932
* cdef PetscInt ni=0, *i=NULL
* cdef PetscScalar sval = asScalar(diag)
* cdef PetscVec xvec=NULL, bvec=NULL # <<<<<<<<<<<<<<
@@ -124871,7 +132579,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
__pyx_v_xvec = NULL;
__pyx_v_bvec = NULL;
- /* "PETSc/Mat.pyx":924
+ /* "PETSc/Mat.pyx":933
* cdef PetscScalar sval = asScalar(diag)
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec # <<<<<<<<<<<<<<
@@ -124885,7 +132593,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
__pyx_v_xvec = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":925
+ /* "PETSc/Mat.pyx":934
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec # <<<<<<<<<<<<<<
@@ -124899,7 +132607,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
__pyx_v_bvec = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":926
+ /* "PETSc/Mat.pyx":935
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec
* if isinstance(rows, IS): # <<<<<<<<<<<<<<
@@ -124910,16 +132618,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":927
+ /* "PETSc/Mat.pyx":936
* if b is not None: bvec = b.vec
* if isinstance(rows, IS):
* CHKERR( MatZeroRowsLocalIS(self.mat, (<IS>rows).iset, sval, xvec, bvec) ) # <<<<<<<<<<<<<<
* else:
* rows = iarray_i(rows, &ni, &i)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsLocalIS(__pyx_v_self->mat, ((struct PyPetscISObject *)__pyx_v_rows)->iset, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 927, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsLocalIS(__pyx_v_self->mat, ((struct PyPetscISObject *)__pyx_v_rows)->iset, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 936, __pyx_L1_error)
- /* "PETSc/Mat.pyx":926
+ /* "PETSc/Mat.pyx":935
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec
* if isinstance(rows, IS): # <<<<<<<<<<<<<<
@@ -124929,7 +132637,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
goto __pyx_L5;
}
- /* "PETSc/Mat.pyx":929
+ /* "PETSc/Mat.pyx":938
* CHKERR( MatZeroRowsLocalIS(self.mat, (<IS>rows).iset, sval, xvec, bvec) )
* else:
* rows = iarray_i(rows, &ni, &i) # <<<<<<<<<<<<<<
@@ -124937,23 +132645,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
*
*/
/*else*/ {
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_rows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 929, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_rows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 938, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF_SET(__pyx_v_rows, __pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/Mat.pyx":930
+ /* "PETSc/Mat.pyx":939
* else:
* rows = iarray_i(rows, &ni, &i)
* CHKERR( MatZeroRowsLocal(self.mat, ni, i, sval, xvec, bvec) ) # <<<<<<<<<<<<<<
*
* def zeroRowsColumns(self, rows, diag=1, Vec x=None, Vec b=None):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsLocal(__pyx_v_self->mat, __pyx_v_ni, __pyx_v_i, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 930, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsLocal(__pyx_v_self->mat, __pyx_v_ni, __pyx_v_i, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 939, __pyx_L1_error)
}
__pyx_L5:;
- /* "PETSc/Mat.pyx":920
+ /* "PETSc/Mat.pyx":929
* CHKERR( MatZeroRows(self.mat, ni, i, sval, xvec, bvec) )
*
* def zeroRowsLocal(self, rows, diag=1, Vec x=None, Vec b=None): # <<<<<<<<<<<<<<
@@ -124975,7 +132683,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":932
+/* "PETSc/Mat.pyx":941
* CHKERR( MatZeroRowsLocal(self.mat, ni, i, sval, xvec, bvec) )
*
* def zeroRowsColumns(self, rows, diag=1, Vec x=None, Vec b=None): # <<<<<<<<<<<<<<
@@ -124984,9 +132692,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_210zeroRowsLocal(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_212zeroRowsColumns[] = "Mat.zeroRowsColumns(self, rows, diag=1, Vec x=None, Vec b=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_215zeroRowsColumns(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_214zeroRowsColumns[] = "Mat.zeroRowsColumns(self, rows, diag=1, Vec x=None, Vec b=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_215zeroRowsColumns(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_rows = 0;
PyObject *__pyx_v_diag = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
@@ -125005,9 +132713,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125016,16 +132728,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_diag);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b);
@@ -125033,13 +132748,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeroRowsColumns") < 0)) __PYX_ERR(33, 932, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeroRowsColumns") < 0)) __PYX_ERR(33, 941, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -125052,15 +132770,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("zeroRowsColumns", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 932, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("zeroRowsColumns", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 941, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.zeroRowsColumns", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(33, 932, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(33, 932, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_diag, __pyx_v_x, __pyx_v_b);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(33, 941, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(33, 941, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_214zeroRowsColumns(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_rows, __pyx_v_diag, __pyx_v_x, __pyx_v_b);
/* function exit code */
goto __pyx_L0;
@@ -125071,7 +132789,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns(PyObject *__p
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_214zeroRowsColumns(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_rows, PyObject *__pyx_v_diag, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b) {
PetscInt __pyx_v_ni;
PetscInt *__pyx_v_i;
PetscScalar __pyx_v_sval;
@@ -125088,7 +132806,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
__Pyx_RefNannySetupContext("zeroRowsColumns", 0);
__Pyx_INCREF(__pyx_v_rows);
- /* "PETSc/Mat.pyx":933
+ /* "PETSc/Mat.pyx":942
*
* def zeroRowsColumns(self, rows, diag=1, Vec x=None, Vec b=None):
* cdef PetscInt ni=0, *i=NULL # <<<<<<<<<<<<<<
@@ -125098,17 +132816,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
__pyx_v_ni = 0;
__pyx_v_i = NULL;
- /* "PETSc/Mat.pyx":934
+ /* "PETSc/Mat.pyx":943
* def zeroRowsColumns(self, rows, diag=1, Vec x=None, Vec b=None):
* cdef PetscInt ni=0, *i=NULL
* cdef PetscScalar sval = asScalar(diag) # <<<<<<<<<<<<<<
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_diag); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 934, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_diag); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 943, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
- /* "PETSc/Mat.pyx":935
+ /* "PETSc/Mat.pyx":944
* cdef PetscInt ni=0, *i=NULL
* cdef PetscScalar sval = asScalar(diag)
* cdef PetscVec xvec=NULL, bvec=NULL # <<<<<<<<<<<<<<
@@ -125118,7 +132836,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
__pyx_v_xvec = NULL;
__pyx_v_bvec = NULL;
- /* "PETSc/Mat.pyx":936
+ /* "PETSc/Mat.pyx":945
* cdef PetscScalar sval = asScalar(diag)
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec # <<<<<<<<<<<<<<
@@ -125132,7 +132850,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
__pyx_v_xvec = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":937
+ /* "PETSc/Mat.pyx":946
* cdef PetscVec xvec=NULL, bvec=NULL
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec # <<<<<<<<<<<<<<
@@ -125146,7 +132864,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
__pyx_v_bvec = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":938
+ /* "PETSc/Mat.pyx":947
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec
* if isinstance(rows, IS): # <<<<<<<<<<<<<<
@@ -125157,16 +132875,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":939
+ /* "PETSc/Mat.pyx":948
* if b is not None: bvec = b.vec
* if isinstance(rows, IS):
* CHKERR( MatZeroRowsColumnsIS(self.mat, (<IS>rows).iset, sval, xvec, bvec) ) # <<<<<<<<<<<<<<
* else:
* rows = iarray_i(rows, &ni, &i)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsColumnsIS(__pyx_v_self->mat, ((struct PyPetscISObject *)__pyx_v_rows)->iset, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 939, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsColumnsIS(__pyx_v_self->mat, ((struct PyPetscISObject *)__pyx_v_rows)->iset, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 948, __pyx_L1_error)
- /* "PETSc/Mat.pyx":938
+ /* "PETSc/Mat.pyx":947
* if x is not None: xvec = x.vec
* if b is not None: bvec = b.vec
* if isinstance(rows, IS): # <<<<<<<<<<<<<<
@@ -125176,7 +132894,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
goto __pyx_L5;
}
- /* "PETSc/Mat.pyx":941
+ /* "PETSc/Mat.pyx":950
* CHKERR( MatZeroRowsColumnsIS(self.mat, (<IS>rows).iset, sval, xvec, bvec) )
* else:
* rows = iarray_i(rows, &ni, &i) # <<<<<<<<<<<<<<
@@ -125184,23 +132902,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
*
*/
/*else*/ {
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_rows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 941, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_rows, (&__pyx_v_ni), (&__pyx_v_i))); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 950, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF_SET(__pyx_v_rows, __pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/Mat.pyx":942
+ /* "PETSc/Mat.pyx":951
* else:
* rows = iarray_i(rows, &ni, &i)
* CHKERR( MatZeroRowsColumns(self.mat, ni, i, sval, xvec, bvec) ) # <<<<<<<<<<<<<<
*
* def storeValues(self):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsColumns(__pyx_v_self->mat, __pyx_v_ni, __pyx_v_i, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 942, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatZeroRowsColumns(__pyx_v_self->mat, __pyx_v_ni, __pyx_v_i, __pyx_v_sval, __pyx_v_xvec, __pyx_v_bvec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 951, __pyx_L1_error)
}
__pyx_L5:;
- /* "PETSc/Mat.pyx":932
+ /* "PETSc/Mat.pyx":941
* CHKERR( MatZeroRowsLocal(self.mat, ni, i, sval, xvec, bvec) )
*
* def zeroRowsColumns(self, rows, diag=1, Vec x=None, Vec b=None): # <<<<<<<<<<<<<<
@@ -125222,7 +132940,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":944
+/* "PETSc/Mat.pyx":953
* CHKERR( MatZeroRowsColumns(self.mat, ni, i, sval, xvec, bvec) )
*
* def storeValues(self): # <<<<<<<<<<<<<<
@@ -125231,38 +132949,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_212zeroRowsColumns(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_215storeValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_214storeValues[] = "Mat.storeValues(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_215storeValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_217storeValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_216storeValues[] = "Mat.storeValues(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_217storeValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("storeValues (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("storeValues", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "storeValues", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_214storeValues(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_216storeValues(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_214storeValues(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_216storeValues(struct PyPetscMatObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("storeValues", 0);
- /* "PETSc/Mat.pyx":945
+ /* "PETSc/Mat.pyx":954
*
* def storeValues(self):
* CHKERR( MatStoreValues(self.mat) ) # <<<<<<<<<<<<<<
*
* def retrieveValues(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatStoreValues(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 945, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatStoreValues(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 954, __pyx_L1_error)
- /* "PETSc/Mat.pyx":944
+ /* "PETSc/Mat.pyx":953
* CHKERR( MatZeroRowsColumns(self.mat, ni, i, sval, xvec, bvec) )
*
* def storeValues(self): # <<<<<<<<<<<<<<
@@ -125282,7 +133000,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_214storeValues(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":947
+/* "PETSc/Mat.pyx":956
* CHKERR( MatStoreValues(self.mat) )
*
* def retrieveValues(self): # <<<<<<<<<<<<<<
@@ -125291,38 +133009,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_214storeValues(struct PyPetscMat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_217retrieveValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_216retrieveValues[] = "Mat.retrieveValues(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_217retrieveValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_219retrieveValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_218retrieveValues[] = "Mat.retrieveValues(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_219retrieveValues(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("retrieveValues (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("retrieveValues", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "retrieveValues", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_216retrieveValues(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_218retrieveValues(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_216retrieveValues(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_218retrieveValues(struct PyPetscMatObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("retrieveValues", 0);
- /* "PETSc/Mat.pyx":948
+ /* "PETSc/Mat.pyx":957
*
* def retrieveValues(self):
* CHKERR( MatRetrieveValues(self.mat) ) # <<<<<<<<<<<<<<
*
* def assemblyBegin(self, assembly=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRetrieveValues(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 948, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRetrieveValues(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 957, __pyx_L1_error)
- /* "PETSc/Mat.pyx":947
+ /* "PETSc/Mat.pyx":956
* CHKERR( MatStoreValues(self.mat) )
*
* def retrieveValues(self): # <<<<<<<<<<<<<<
@@ -125342,7 +133060,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_216retrieveValues(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":950
+/* "PETSc/Mat.pyx":959
* CHKERR( MatRetrieveValues(self.mat) )
*
* def assemblyBegin(self, assembly=None): # <<<<<<<<<<<<<<
@@ -125351,9 +133069,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_216retrieveValues(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_219assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_218assemblyBegin[] = "Mat.assemblyBegin(self, assembly=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_219assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_220assemblyBegin[] = "Mat.assemblyBegin(self, assembly=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyBegin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_assembly = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -125367,6 +133085,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_219assemblyBegin(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125379,11 +133098,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_219assemblyBegin(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "assemblyBegin") < 0)) __PYX_ERR(33, 950, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "assemblyBegin") < 0)) __PYX_ERR(33, 959, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125392,20 +133112,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_219assemblyBegin(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("assemblyBegin", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 950, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("assemblyBegin", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 959, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.assemblyBegin", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_218assemblyBegin(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_assembly);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyBegin(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_assembly);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_218assemblyBegin(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyBegin(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly) {
MatAssemblyType __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -125413,26 +133133,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_218assemblyBegin(struct PyPetscM
int __pyx_t_2;
__Pyx_RefNannySetupContext("assemblyBegin", 0);
- /* "PETSc/Mat.pyx":951
+ /* "PETSc/Mat.pyx":960
*
* def assemblyBegin(self, assembly=None):
* cdef PetscMatAssemblyType flag = assemblytype(assembly) # <<<<<<<<<<<<<<
* CHKERR( MatAssemblyBegin(self.mat, flag) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_assemblytype(__pyx_v_assembly); if (unlikely(__pyx_t_1 == ((MatAssemblyType)-1L))) __PYX_ERR(33, 951, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_assemblytype(__pyx_v_assembly); if (unlikely(__pyx_t_1 == ((MatAssemblyType)((MatAssemblyType)-1L)))) __PYX_ERR(33, 960, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/Mat.pyx":952
+ /* "PETSc/Mat.pyx":961
* def assemblyBegin(self, assembly=None):
* cdef PetscMatAssemblyType flag = assemblytype(assembly)
* CHKERR( MatAssemblyBegin(self.mat, flag) ) # <<<<<<<<<<<<<<
*
* def assemblyEnd(self, assembly=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyBegin(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 952, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyBegin(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 961, __pyx_L1_error)
- /* "PETSc/Mat.pyx":950
+ /* "PETSc/Mat.pyx":959
* CHKERR( MatRetrieveValues(self.mat) )
*
* def assemblyBegin(self, assembly=None): # <<<<<<<<<<<<<<
@@ -125452,7 +133172,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_218assemblyBegin(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":954
+/* "PETSc/Mat.pyx":963
* CHKERR( MatAssemblyBegin(self.mat, flag) )
*
* def assemblyEnd(self, assembly=None): # <<<<<<<<<<<<<<
@@ -125461,9 +133181,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_218assemblyBegin(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_220assemblyEnd[] = "Mat.assemblyEnd(self, assembly=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_223assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_222assemblyEnd[] = "Mat.assemblyEnd(self, assembly=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_223assemblyEnd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_assembly = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -125477,6 +133197,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyEnd(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125489,11 +133210,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyEnd(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "assemblyEnd") < 0)) __PYX_ERR(33, 954, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "assemblyEnd") < 0)) __PYX_ERR(33, 963, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125502,20 +133224,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyEnd(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("assemblyEnd", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 954, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("assemblyEnd", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 963, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.assemblyEnd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyEnd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_assembly);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_222assemblyEnd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_assembly);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyEnd(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_222assemblyEnd(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly) {
MatAssemblyType __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -125523,26 +133245,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyEnd(struct PyPetscMat
int __pyx_t_2;
__Pyx_RefNannySetupContext("assemblyEnd", 0);
- /* "PETSc/Mat.pyx":955
+ /* "PETSc/Mat.pyx":964
*
* def assemblyEnd(self, assembly=None):
* cdef PetscMatAssemblyType flag = assemblytype(assembly) # <<<<<<<<<<<<<<
* CHKERR( MatAssemblyEnd(self.mat, flag) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_assemblytype(__pyx_v_assembly); if (unlikely(__pyx_t_1 == ((MatAssemblyType)-1L))) __PYX_ERR(33, 955, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_assemblytype(__pyx_v_assembly); if (unlikely(__pyx_t_1 == ((MatAssemblyType)((MatAssemblyType)-1L)))) __PYX_ERR(33, 964, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/Mat.pyx":956
+ /* "PETSc/Mat.pyx":965
* def assemblyEnd(self, assembly=None):
* cdef PetscMatAssemblyType flag = assemblytype(assembly)
* CHKERR( MatAssemblyEnd(self.mat, flag) ) # <<<<<<<<<<<<<<
*
* def assemble(self, assembly=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyEnd(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 956, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyEnd(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 965, __pyx_L1_error)
- /* "PETSc/Mat.pyx":954
+ /* "PETSc/Mat.pyx":963
* CHKERR( MatAssemblyBegin(self.mat, flag) )
*
* def assemblyEnd(self, assembly=None): # <<<<<<<<<<<<<<
@@ -125562,7 +133284,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyEnd(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":958
+/* "PETSc/Mat.pyx":967
* CHKERR( MatAssemblyEnd(self.mat, flag) )
*
* def assemble(self, assembly=None): # <<<<<<<<<<<<<<
@@ -125571,9 +133293,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_220assemblyEnd(struct PyPetscMat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_223assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_222assemble[] = "Mat.assemble(self, assembly=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_223assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_225assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_224assemble[] = "Mat.assemble(self, assembly=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_225assemble(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_assembly = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -125587,6 +133309,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_223assemble(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125599,11 +133322,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_223assemble(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "assemble") < 0)) __PYX_ERR(33, 958, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "assemble") < 0)) __PYX_ERR(33, 967, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125612,20 +133336,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_223assemble(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("assemble", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 958, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("assemble", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 967, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.assemble", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_222assemble(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_assembly);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_224assemble(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_assembly);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_222assemble(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_224assemble(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_assembly) {
MatAssemblyType __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -125633,35 +133357,35 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_222assemble(struct PyPetscMatObj
int __pyx_t_2;
__Pyx_RefNannySetupContext("assemble", 0);
- /* "PETSc/Mat.pyx":959
+ /* "PETSc/Mat.pyx":968
*
* def assemble(self, assembly=None):
* cdef PetscMatAssemblyType flag = assemblytype(assembly) # <<<<<<<<<<<<<<
* CHKERR( MatAssemblyBegin(self.mat, flag) )
* CHKERR( MatAssemblyEnd(self.mat, flag) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_assemblytype(__pyx_v_assembly); if (unlikely(__pyx_t_1 == ((MatAssemblyType)-1L))) __PYX_ERR(33, 959, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_assemblytype(__pyx_v_assembly); if (unlikely(__pyx_t_1 == ((MatAssemblyType)((MatAssemblyType)-1L)))) __PYX_ERR(33, 968, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/Mat.pyx":960
+ /* "PETSc/Mat.pyx":969
* def assemble(self, assembly=None):
* cdef PetscMatAssemblyType flag = assemblytype(assembly)
* CHKERR( MatAssemblyBegin(self.mat, flag) ) # <<<<<<<<<<<<<<
* CHKERR( MatAssemblyEnd(self.mat, flag) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyBegin(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 960, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyBegin(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 969, __pyx_L1_error)
- /* "PETSc/Mat.pyx":961
+ /* "PETSc/Mat.pyx":970
* cdef PetscMatAssemblyType flag = assemblytype(assembly)
* CHKERR( MatAssemblyBegin(self.mat, flag) )
* CHKERR( MatAssemblyEnd(self.mat, flag) ) # <<<<<<<<<<<<<<
*
* def isAssembled(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyEnd(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 961, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssemblyEnd(__pyx_v_self->mat, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 970, __pyx_L1_error)
- /* "PETSc/Mat.pyx":958
+ /* "PETSc/Mat.pyx":967
* CHKERR( MatAssemblyEnd(self.mat, flag) )
*
* def assemble(self, assembly=None): # <<<<<<<<<<<<<<
@@ -125681,77 +133405,77 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_222assemble(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":963
+/* "PETSc/Mat.pyx":972
* CHKERR( MatAssemblyEnd(self.mat, flag) )
*
* def isAssembled(self): # <<<<<<<<<<<<<<
- * cdef PetscBool assembled = PETSC_FALSE
- * CHKERR( MatAssembled(self.mat, &assembled) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatAssembled(self.mat, &flag) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_225isAssembled(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_224isAssembled[] = "Mat.isAssembled(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_225isAssembled(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_227isAssembled(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_226isAssembled[] = "Mat.isAssembled(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_227isAssembled(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("isAssembled (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("isAssembled", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "isAssembled", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_224isAssembled(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_226isAssembled(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_224isAssembled(struct PyPetscMatObject *__pyx_v_self) {
- PetscBool __pyx_v_assembled;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226isAssembled(struct PyPetscMatObject *__pyx_v_self) {
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("isAssembled", 0);
- /* "PETSc/Mat.pyx":964
+ /* "PETSc/Mat.pyx":973
*
* def isAssembled(self):
- * cdef PetscBool assembled = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( MatAssembled(self.mat, &assembled) )
- * return <bint> assembled
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( MatAssembled(self.mat, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_assembled = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/Mat.pyx":965
+ /* "PETSc/Mat.pyx":974
* def isAssembled(self):
- * cdef PetscBool assembled = PETSC_FALSE
- * CHKERR( MatAssembled(self.mat, &assembled) ) # <<<<<<<<<<<<<<
- * return <bint> assembled
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatAssembled(self.mat, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssembled(__pyx_v_self->mat, (&__pyx_v_assembled))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 965, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAssembled(__pyx_v_self->mat, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 974, __pyx_L1_error)
- /* "PETSc/Mat.pyx":966
- * cdef PetscBool assembled = PETSC_FALSE
- * CHKERR( MatAssembled(self.mat, &assembled) )
- * return <bint> assembled # <<<<<<<<<<<<<<
+ /* "PETSc/Mat.pyx":975
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatAssembled(self.mat, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
* #
*
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_assembled); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 966, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 975, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":963
+ /* "PETSc/Mat.pyx":972
* CHKERR( MatAssemblyEnd(self.mat, flag) )
*
* def isAssembled(self): # <<<<<<<<<<<<<<
- * cdef PetscBool assembled = PETSC_FALSE
- * CHKERR( MatAssembled(self.mat, &assembled) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatAssembled(self.mat, &flag) )
*/
/* function exit code */
@@ -125765,7 +133489,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_224isAssembled(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":969
+/* "PETSc/Mat.pyx":978
* #
*
* def createVecs(self, side=None): # <<<<<<<<<<<<<<
@@ -125774,9 +133498,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_224isAssembled(struct PyPetscMat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_227createVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_226createVecs[] = "Mat.createVecs(self, side=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_227createVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_229createVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_228createVecs[] = "Mat.createVecs(self, side=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_229createVecs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_side = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -125790,6 +133514,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_227createVecs(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125802,11 +133527,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_227createVecs(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createVecs") < 0)) __PYX_ERR(33, 969, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createVecs") < 0)) __PYX_ERR(33, 978, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -125815,20 +133541,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_227createVecs(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createVecs", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 969, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createVecs", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 978, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.createVecs", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_side);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_228createVecs(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_side);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_side) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecs(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_side) {
struct PyPetscVecObject *__pyx_v_vecr = 0;
struct PyPetscVecObject *__pyx_v_vecl = 0;
PyObject *__pyx_r = NULL;
@@ -125840,7 +133566,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("createVecs", 0);
- /* "PETSc/Mat.pyx":971
+ /* "PETSc/Mat.pyx":980
* def createVecs(self, side=None):
* cdef Vec vecr, vecl
* if side is None: # <<<<<<<<<<<<<<
@@ -125851,32 +133577,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":972
+ /* "PETSc/Mat.pyx":981
* cdef Vec vecr, vecl
* if side is None:
* vecr = Vec(); vecl = Vec(); # <<<<<<<<<<<<<<
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, &vecl.vec) )
* return (vecr, vecl)
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 972, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_vecr = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 972, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_vecl = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":973
+ /* "PETSc/Mat.pyx":982
* if side is None:
* vecr = Vec(); vecl = Vec();
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, &vecl.vec) ) # <<<<<<<<<<<<<<
* return (vecr, vecl)
* elif side in ('r', 'R', 'right', 'Right', 'RIGHT'):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, (&__pyx_v_vecr->vec), (&__pyx_v_vecl->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 973, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, (&__pyx_v_vecr->vec), (&__pyx_v_vecl->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 982, __pyx_L1_error)
- /* "PETSc/Mat.pyx":974
+ /* "PETSc/Mat.pyx":983
* vecr = Vec(); vecl = Vec();
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, &vecl.vec) )
* return (vecr, vecl) # <<<<<<<<<<<<<<
@@ -125884,7 +133610,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
* vecr = Vec()
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 974, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 983, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)__pyx_v_vecr));
__Pyx_GIVEREF(((PyObject *)__pyx_v_vecr));
@@ -125896,7 +133622,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":971
+ /* "PETSc/Mat.pyx":980
* def createVecs(self, side=None):
* cdef Vec vecr, vecl
* if side is None: # <<<<<<<<<<<<<<
@@ -125905,7 +133631,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
*/
}
- /* "PETSc/Mat.pyx":975
+ /* "PETSc/Mat.pyx":984
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, &vecl.vec) )
* return (vecr, vecl)
* elif side in ('r', 'R', 'right', 'Right', 'RIGHT'): # <<<<<<<<<<<<<<
@@ -125914,59 +133640,59 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
*/
__Pyx_INCREF(__pyx_v_side);
__pyx_t_3 = __pyx_v_side;
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_r, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 975, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_r, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 984, __pyx_L1_error)
if (!__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_R, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 975, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_R, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 984, __pyx_L1_error)
if (!__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_right, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 975, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_right, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 984, __pyx_L1_error)
if (!__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_Right, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 975, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_Right, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 984, __pyx_L1_error)
if (!__pyx_t_1) {
} else {
__pyx_t_2 = __pyx_t_1;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_RIGHT, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 975, __pyx_L1_error)
+ __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_RIGHT, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(33, 984, __pyx_L1_error)
__pyx_t_2 = __pyx_t_1;
__pyx_L4_bool_binop_done:;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/Mat.pyx":976
+ /* "PETSc/Mat.pyx":985
* return (vecr, vecl)
* elif side in ('r', 'R', 'right', 'Right', 'RIGHT'):
* vecr = Vec() # <<<<<<<<<<<<<<
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) )
* return vecr
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 976, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 985, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_vecr = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":977
+ /* "PETSc/Mat.pyx":986
* elif side in ('r', 'R', 'right', 'Right', 'RIGHT'):
* vecr = Vec()
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) ) # <<<<<<<<<<<<<<
* return vecr
* elif side in ('l', 'L', 'left', 'Left', 'LEFT'):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, (&__pyx_v_vecr->vec), NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 977, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, (&__pyx_v_vecr->vec), NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 986, __pyx_L1_error)
- /* "PETSc/Mat.pyx":978
+ /* "PETSc/Mat.pyx":987
* vecr = Vec()
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) )
* return vecr # <<<<<<<<<<<<<<
@@ -125978,7 +133704,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
__pyx_r = ((PyObject *)__pyx_v_vecr);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":975
+ /* "PETSc/Mat.pyx":984
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, &vecl.vec) )
* return (vecr, vecl)
* elif side in ('r', 'R', 'right', 'Right', 'RIGHT'): # <<<<<<<<<<<<<<
@@ -125987,7 +133713,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
*/
}
- /* "PETSc/Mat.pyx":979
+ /* "PETSc/Mat.pyx":988
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) )
* return vecr
* elif side in ('l', 'L', 'left', 'Left', 'LEFT'): # <<<<<<<<<<<<<<
@@ -125996,59 +133722,59 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
*/
__Pyx_INCREF(__pyx_v_side);
__pyx_t_3 = __pyx_v_side;
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_l, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 979, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_l, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 988, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_L, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 979, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_L, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 988, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_left, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 979, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_left, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 988, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_Left, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 979, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_Left, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 988, __pyx_L1_error)
if (!__pyx_t_2) {
} else {
__pyx_t_1 = __pyx_t_2;
goto __pyx_L9_bool_binop_done;
}
- __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_LEFT, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 979, __pyx_L1_error)
+ __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_LEFT, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 988, __pyx_L1_error)
__pyx_t_1 = __pyx_t_2;
__pyx_L9_bool_binop_done:;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":980
+ /* "PETSc/Mat.pyx":989
* return vecr
* elif side in ('l', 'L', 'left', 'Left', 'LEFT'):
* vecl = Vec() # <<<<<<<<<<<<<<
* CHKERR( MatCreateVecs(self.mat, NULL, &vecl.vec) )
* return vecl
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 980, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 989, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_vecl = ((struct PyPetscVecObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":981
+ /* "PETSc/Mat.pyx":990
* elif side in ('l', 'L', 'left', 'Left', 'LEFT'):
* vecl = Vec()
* CHKERR( MatCreateVecs(self.mat, NULL, &vecl.vec) ) # <<<<<<<<<<<<<<
* return vecl
* else:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_vecl->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 981, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_vecl->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 990, __pyx_L1_error)
- /* "PETSc/Mat.pyx":982
+ /* "PETSc/Mat.pyx":991
* vecl = Vec()
* CHKERR( MatCreateVecs(self.mat, NULL, &vecl.vec) )
* return vecl # <<<<<<<<<<<<<<
@@ -126060,7 +133786,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
__pyx_r = ((PyObject *)__pyx_v_vecl);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":979
+ /* "PETSc/Mat.pyx":988
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) )
* return vecr
* elif side in ('l', 'L', 'left', 'Left', 'LEFT'): # <<<<<<<<<<<<<<
@@ -126069,7 +133795,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
*/
}
- /* "PETSc/Mat.pyx":984
+ /* "PETSc/Mat.pyx":993
* return vecl
* else:
* raise ValueError("side '%r' not understood" % side) # <<<<<<<<<<<<<<
@@ -126077,22 +133803,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
* def createVecRight(self):
*/
/*else*/ {
- __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_side_r_not_understood, __pyx_v_side); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 984, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_side_r_not_understood, __pyx_v_side); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 993, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 984, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 993, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 984, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 993, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(33, 984, __pyx_L1_error)
+ __PYX_ERR(33, 993, __pyx_L1_error)
}
- /* "PETSc/Mat.pyx":969
+ /* "PETSc/Mat.pyx":978
* #
*
* def createVecs(self, side=None): # <<<<<<<<<<<<<<
@@ -126114,7 +133840,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
return __pyx_r;
}
-/* "PETSc/Mat.pyx":986
+/* "PETSc/Mat.pyx":995
* raise ValueError("side '%r' not understood" % side)
*
* def createVecRight(self): # <<<<<<<<<<<<<<
@@ -126123,23 +133849,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_226createVecs(struct PyPetscMatO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_229createVecRight(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_228createVecRight[] = "Mat.createVecRight(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_229createVecRight(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_231createVecRight(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_230createVecRight[] = "Mat.createVecRight(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_231createVecRight(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("createVecRight (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("createVecRight", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "createVecRight", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_228createVecRight(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_230createVecRight(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecRight(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecRight(struct PyPetscMatObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_vecr = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -126147,28 +133873,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecRight(struct PyPetsc
int __pyx_t_2;
__Pyx_RefNannySetupContext("createVecRight", 0);
- /* "PETSc/Mat.pyx":987
+ /* "PETSc/Mat.pyx":996
*
* def createVecRight(self):
* cdef Vec vecr = Vec() # <<<<<<<<<<<<<<
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) )
* return vecr
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 987, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 996, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vecr = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":988
+ /* "PETSc/Mat.pyx":997
* def createVecRight(self):
* cdef Vec vecr = Vec()
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) ) # <<<<<<<<<<<<<<
* return vecr
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, (&__pyx_v_vecr->vec), NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 988, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, (&__pyx_v_vecr->vec), NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 997, __pyx_L1_error)
- /* "PETSc/Mat.pyx":989
+ /* "PETSc/Mat.pyx":998
* cdef Vec vecr = Vec()
* CHKERR( MatCreateVecs(self.mat, &vecr.vec, NULL) )
* return vecr # <<<<<<<<<<<<<<
@@ -126180,7 +133906,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecRight(struct PyPetsc
__pyx_r = ((PyObject *)__pyx_v_vecr);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":986
+ /* "PETSc/Mat.pyx":995
* raise ValueError("side '%r' not understood" % side)
*
* def createVecRight(self): # <<<<<<<<<<<<<<
@@ -126200,7 +133926,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecRight(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":991
+/* "PETSc/Mat.pyx":1000
* return vecr
*
* def createVecLeft(self): # <<<<<<<<<<<<<<
@@ -126209,23 +133935,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_228createVecRight(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_231createVecLeft(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_230createVecLeft[] = "Mat.createVecLeft(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_231createVecLeft(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233createVecLeft(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_232createVecLeft[] = "Mat.createVecLeft(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233createVecLeft(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("createVecLeft (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("createVecLeft", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "createVecLeft", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_230createVecLeft(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_232createVecLeft(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecLeft(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232createVecLeft(struct PyPetscMatObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_vecl = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -126233,28 +133959,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecLeft(struct PyPetscM
int __pyx_t_2;
__Pyx_RefNannySetupContext("createVecLeft", 0);
- /* "PETSc/Mat.pyx":992
+ /* "PETSc/Mat.pyx":1001
*
* def createVecLeft(self):
* cdef Vec vecl = Vec() # <<<<<<<<<<<<<<
* CHKERR( MatCreateVecs(self.mat, NULL, &vecl.vec) )
* return vecl
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 992, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1001, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vecl = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":993
+ /* "PETSc/Mat.pyx":1002
* def createVecLeft(self):
* cdef Vec vecl = Vec()
* CHKERR( MatCreateVecs(self.mat, NULL, &vecl.vec) ) # <<<<<<<<<<<<<<
* return vecl
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_vecl->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 993, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_vecl->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1002, __pyx_L1_error)
- /* "PETSc/Mat.pyx":994
+ /* "PETSc/Mat.pyx":1003
* cdef Vec vecl = Vec()
* CHKERR( MatCreateVecs(self.mat, NULL, &vecl.vec) )
* return vecl # <<<<<<<<<<<<<<
@@ -126266,7 +133992,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecLeft(struct PyPetscM
__pyx_r = ((PyObject *)__pyx_v_vecl);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":991
+ /* "PETSc/Mat.pyx":1000
* return vecr
*
* def createVecLeft(self): # <<<<<<<<<<<<<<
@@ -126286,7 +134012,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecLeft(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1002
+/* "PETSc/Mat.pyx":1011
* #
*
* def getColumnVector(self, column, Vec result=None): # <<<<<<<<<<<<<<
@@ -126295,9 +134021,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_230createVecLeft(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_232getColumnVector[] = "Mat.getColumnVector(self, column, Vec result=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getColumnVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_234getColumnVector[] = "Mat.getColumnVector(self, column, Vec result=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getColumnVector(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_column = 0;
struct PyPetscVecObject *__pyx_v_result = 0;
PyObject *__pyx_r = 0;
@@ -126312,7 +134038,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -126321,6 +134049,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_column)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
@@ -126328,11 +134057,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getColumnVector") < 0)) __PYX_ERR(33, 1002, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getColumnVector") < 0)) __PYX_ERR(33, 1011, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -126343,14 +134073,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getColumnVector", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1002, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getColumnVector", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1011, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getColumnVector", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "result", 0))) __PYX_ERR(33, 1002, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_column, __pyx_v_result);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "result", 0))) __PYX_ERR(33, 1011, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_234getColumnVector(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_column, __pyx_v_result);
/* function exit code */
goto __pyx_L0;
@@ -126361,7 +134091,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector(PyObject *__p
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_column, struct PyPetscVecObject *__pyx_v_result) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getColumnVector(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_column, struct PyPetscVecObject *__pyx_v_result) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -126373,17 +134103,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
__Pyx_RefNannySetupContext("getColumnVector", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":1003
+ /* "PETSc/Mat.pyx":1012
*
* def getColumnVector(self, column, Vec result=None):
* cdef PetscInt ival = asInt(column) # <<<<<<<<<<<<<<
* if result is None:
* result = Vec()
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_column); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1003, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_column); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1012, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Mat.pyx":1004
+ /* "PETSc/Mat.pyx":1013
* def getColumnVector(self, column, Vec result=None):
* cdef PetscInt ival = asInt(column)
* if result is None: # <<<<<<<<<<<<<<
@@ -126394,19 +134124,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":1005
+ /* "PETSc/Mat.pyx":1014
* cdef PetscInt ival = asInt(column)
* if result is None:
* result = Vec() # <<<<<<<<<<<<<<
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
*/
- __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1005, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1014, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscVecObject *)__pyx_t_4));
__pyx_t_4 = 0;
- /* "PETSc/Mat.pyx":1004
+ /* "PETSc/Mat.pyx":1013
* def getColumnVector(self, column, Vec result=None):
* cdef PetscInt ival = asInt(column)
* if result is None: # <<<<<<<<<<<<<<
@@ -126415,7 +134145,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
*/
}
- /* "PETSc/Mat.pyx":1006
+ /* "PETSc/Mat.pyx":1015
* if result is None:
* result = Vec()
* if result.vec == NULL: # <<<<<<<<<<<<<<
@@ -126425,16 +134155,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
__pyx_t_3 = ((__pyx_v_result->vec == NULL) != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":1007
+ /* "PETSc/Mat.pyx":1016
* result = Vec()
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) ) # <<<<<<<<<<<<<<
* CHKERR( MatGetColumnVector(self.mat, result.vec, ival) )
* return result
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1007, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1016, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1006
+ /* "PETSc/Mat.pyx":1015
* if result is None:
* result = Vec()
* if result.vec == NULL: # <<<<<<<<<<<<<<
@@ -126443,16 +134173,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
*/
}
- /* "PETSc/Mat.pyx":1008
+ /* "PETSc/Mat.pyx":1017
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
* CHKERR( MatGetColumnVector(self.mat, result.vec, ival) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetColumnVector(__pyx_v_self->mat, __pyx_v_result->vec, __pyx_v_ival)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1008, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetColumnVector(__pyx_v_self->mat, __pyx_v_result->vec, __pyx_v_ival)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1017, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1009
+ /* "PETSc/Mat.pyx":1018
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
* CHKERR( MatGetColumnVector(self.mat, result.vec, ival) )
* return result # <<<<<<<<<<<<<<
@@ -126464,7 +134194,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1002
+ /* "PETSc/Mat.pyx":1011
* #
*
* def getColumnVector(self, column, Vec result=None): # <<<<<<<<<<<<<<
@@ -126484,7 +134214,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1011
+/* "PETSc/Mat.pyx":1020
* return result
*
* def getRedundantMatrix(self, nsubcomm, subcomm=None, Mat out=None): # <<<<<<<<<<<<<<
@@ -126493,9 +134223,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_232getColumnVector(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_234getRedundantMatrix[] = "Mat.getRedundantMatrix(self, nsubcomm, subcomm=None, Mat out=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getRedundantMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_236getRedundantMatrix[] = "Mat.getRedundantMatrix(self, nsubcomm, subcomm=None, Mat out=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getRedundantMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_nsubcomm = 0;
PyObject *__pyx_v_subcomm = 0;
struct PyPetscMatObject *__pyx_v_out = 0;
@@ -126512,8 +134242,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -126522,11 +134255,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nsubcomm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_subcomm);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_out);
@@ -126534,12 +134269,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix(PyObject *
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRedundantMatrix") < 0)) __PYX_ERR(33, 1011, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRedundantMatrix") < 0)) __PYX_ERR(33, 1020, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -126551,14 +134288,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getRedundantMatrix", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1011, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getRedundantMatrix", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1020, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getRedundantMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 1011, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_nsubcomm, __pyx_v_subcomm, __pyx_v_out);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_out), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "out", 0))) __PYX_ERR(33, 1020, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_236getRedundantMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_nsubcomm, __pyx_v_subcomm, __pyx_v_out);
/* function exit code */
goto __pyx_L0;
@@ -126569,7 +134306,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix(PyObject *
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_nsubcomm, PyObject *__pyx_v_subcomm, struct PyPetscMatObject *__pyx_v_out) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getRedundantMatrix(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_nsubcomm, PyObject *__pyx_v_subcomm, struct PyPetscMatObject *__pyx_v_out) {
PetscInt __pyx_v__nsubcomm;
MPI_Comm __pyx_v__subcomm;
MatReuse __pyx_v_reuse;
@@ -126584,17 +134321,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
__Pyx_RefNannySetupContext("getRedundantMatrix", 0);
__Pyx_INCREF((PyObject *)__pyx_v_out);
- /* "PETSc/Mat.pyx":1012
+ /* "PETSc/Mat.pyx":1021
*
* def getRedundantMatrix(self, nsubcomm, subcomm=None, Mat out=None):
* cdef PetscInt _nsubcomm = asInt(nsubcomm) # <<<<<<<<<<<<<<
* cdef MPI_Comm _subcomm = MPI_COMM_NULL
* if subcomm: _subcomm = def_Comm(subcomm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nsubcomm); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1012, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nsubcomm); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1021, __pyx_L1_error)
__pyx_v__nsubcomm = __pyx_t_1;
- /* "PETSc/Mat.pyx":1013
+ /* "PETSc/Mat.pyx":1022
* def getRedundantMatrix(self, nsubcomm, subcomm=None, Mat out=None):
* cdef PetscInt _nsubcomm = asInt(nsubcomm)
* cdef MPI_Comm _subcomm = MPI_COMM_NULL # <<<<<<<<<<<<<<
@@ -126603,20 +134340,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
*/
__pyx_v__subcomm = MPI_COMM_NULL;
- /* "PETSc/Mat.pyx":1014
+ /* "PETSc/Mat.pyx":1023
* cdef PetscInt _nsubcomm = asInt(nsubcomm)
* cdef MPI_Comm _subcomm = MPI_COMM_NULL
* if subcomm: _subcomm = def_Comm(subcomm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* if out is None: out = Mat()
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_subcomm); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 1014, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_subcomm); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 1023, __pyx_L1_error)
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_subcomm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1014, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_subcomm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1023, __pyx_L1_error)
__pyx_v__subcomm = __pyx_t_3;
}
- /* "PETSc/Mat.pyx":1015
+ /* "PETSc/Mat.pyx":1024
* cdef MPI_Comm _subcomm = MPI_COMM_NULL
* if subcomm: _subcomm = def_Comm(subcomm, PETSC_COMM_DEFAULT)
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
@@ -126625,7 +134362,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":1016
+ /* "PETSc/Mat.pyx":1025
* if subcomm: _subcomm = def_Comm(subcomm, PETSC_COMM_DEFAULT)
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* if out is None: out = Mat() # <<<<<<<<<<<<<<
@@ -126635,13 +134372,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
__pyx_t_2 = (((PyObject *)__pyx_v_out) == Py_None);
__pyx_t_4 = (__pyx_t_2 != 0);
if (__pyx_t_4) {
- __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1016, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1025, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_out, ((struct PyPetscMatObject *)__pyx_t_5));
__pyx_t_5 = 0;
}
- /* "PETSc/Mat.pyx":1017
+ /* "PETSc/Mat.pyx":1026
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* if out is None: out = Mat()
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
@@ -126653,16 +134390,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
__pyx_v_reuse = MAT_REUSE_MATRIX;
}
- /* "PETSc/Mat.pyx":1018
+ /* "PETSc/Mat.pyx":1027
* if out is None: out = Mat()
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX
* CHKERR( MatCreateRedundantMatrix(self.mat, _nsubcomm, _subcomm, reuse, &out.mat)) # <<<<<<<<<<<<<<
* return out
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateRedundantMatrix(__pyx_v_self->mat, __pyx_v__nsubcomm, __pyx_v__subcomm, __pyx_v_reuse, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(33, 1018, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateRedundantMatrix(__pyx_v_self->mat, __pyx_v__nsubcomm, __pyx_v__subcomm, __pyx_v_reuse, (&__pyx_v_out->mat))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(33, 1027, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1019
+ /* "PETSc/Mat.pyx":1028
* if out.mat != NULL: reuse = MAT_REUSE_MATRIX
* CHKERR( MatCreateRedundantMatrix(self.mat, _nsubcomm, _subcomm, reuse, &out.mat))
* return out # <<<<<<<<<<<<<<
@@ -126674,7 +134411,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
__pyx_r = ((PyObject *)__pyx_v_out);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1011
+ /* "PETSc/Mat.pyx":1020
* return result
*
* def getRedundantMatrix(self, nsubcomm, subcomm=None, Mat out=None): # <<<<<<<<<<<<<<
@@ -126694,7 +134431,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1021
+/* "PETSc/Mat.pyx":1030
* return out
*
* def getDiagonal(self, Vec result=None): # <<<<<<<<<<<<<<
@@ -126703,9 +134440,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_234getRedundantMatrix(struct PyP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_236getDiagonal[] = "Mat.getDiagonal(self, Vec result=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_238getDiagonal[] = "Mat.getDiagonal(self, Vec result=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_result = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -126719,6 +134456,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getDiagonal(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -126731,11 +134469,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getDiagonal(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getDiagonal") < 0)) __PYX_ERR(33, 1021, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getDiagonal") < 0)) __PYX_ERR(33, 1030, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -126744,14 +134483,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getDiagonal(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getDiagonal", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1021, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getDiagonal", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1030, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getDiagonal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "result", 0))) __PYX_ERR(33, 1021, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_result);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "result", 0))) __PYX_ERR(33, 1030, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_238getDiagonal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_result);
/* function exit code */
goto __pyx_L0;
@@ -126762,7 +134501,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_237getDiagonal(PyObject *__pyx_v
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -126772,7 +134511,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
__Pyx_RefNannySetupContext("getDiagonal", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":1022
+ /* "PETSc/Mat.pyx":1031
*
* def getDiagonal(self, Vec result=None):
* if result is None: # <<<<<<<<<<<<<<
@@ -126783,19 +134522,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1023
+ /* "PETSc/Mat.pyx":1032
* def getDiagonal(self, Vec result=None):
* if result is None:
* result = Vec() # <<<<<<<<<<<<<<
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1023, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscVecObject *)__pyx_t_3));
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1022
+ /* "PETSc/Mat.pyx":1031
*
* def getDiagonal(self, Vec result=None):
* if result is None: # <<<<<<<<<<<<<<
@@ -126804,7 +134543,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
*/
}
- /* "PETSc/Mat.pyx":1024
+ /* "PETSc/Mat.pyx":1033
* if result is None:
* result = Vec()
* if result.vec == NULL: # <<<<<<<<<<<<<<
@@ -126814,16 +134553,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
__pyx_t_2 = ((__pyx_v_result->vec == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1025
+ /* "PETSc/Mat.pyx":1034
* result = Vec()
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) ) # <<<<<<<<<<<<<<
* CHKERR( MatGetDiagonal(self.mat, result.vec) )
* return result
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1025, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1034, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1024
+ /* "PETSc/Mat.pyx":1033
* if result is None:
* result = Vec()
* if result.vec == NULL: # <<<<<<<<<<<<<<
@@ -126832,16 +134571,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
*/
}
- /* "PETSc/Mat.pyx":1026
+ /* "PETSc/Mat.pyx":1035
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
* CHKERR( MatGetDiagonal(self.mat, result.vec) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetDiagonal(__pyx_v_self->mat, __pyx_v_result->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1026, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetDiagonal(__pyx_v_self->mat, __pyx_v_result->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1035, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1027
+ /* "PETSc/Mat.pyx":1036
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
* CHKERR( MatGetDiagonal(self.mat, result.vec) )
* return result # <<<<<<<<<<<<<<
@@ -126853,7 +134592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1021
+ /* "PETSc/Mat.pyx":1030
* return out
*
* def getDiagonal(self, Vec result=None): # <<<<<<<<<<<<<<
@@ -126873,7 +134612,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1029
+/* "PETSc/Mat.pyx":1038
* return result
*
* def getRowSum(self, Vec result=None): # <<<<<<<<<<<<<<
@@ -126882,9 +134621,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_236getDiagonal(struct PyPetscMat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getRowSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_238getRowSum[] = "Mat.getRowSum(self, Vec result=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getRowSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241getRowSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_240getRowSum[] = "Mat.getRowSum(self, Vec result=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241getRowSum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_result = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -126898,6 +134637,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getRowSum(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -126910,11 +134650,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getRowSum(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRowSum") < 0)) __PYX_ERR(33, 1029, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getRowSum") < 0)) __PYX_ERR(33, 1038, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -126923,14 +134664,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getRowSum(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getRowSum", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1029, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getRowSum", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1038, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getRowSum", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "result", 0))) __PYX_ERR(33, 1029, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_result);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "result", 0))) __PYX_ERR(33, 1038, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_240getRowSum(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_result);
/* function exit code */
goto __pyx_L0;
@@ -126941,7 +134682,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_239getRowSum(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_240getRowSum(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_result) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -126951,7 +134692,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatOb
__Pyx_RefNannySetupContext("getRowSum", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":1030
+ /* "PETSc/Mat.pyx":1039
*
* def getRowSum(self, Vec result=None):
* if result is None: # <<<<<<<<<<<<<<
@@ -126962,19 +134703,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatOb
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1031
+ /* "PETSc/Mat.pyx":1040
* def getRowSum(self, Vec result=None):
* if result is None:
* result = Vec() # <<<<<<<<<<<<<<
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1031, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1040, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscVecObject *)__pyx_t_3));
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1030
+ /* "PETSc/Mat.pyx":1039
*
* def getRowSum(self, Vec result=None):
* if result is None: # <<<<<<<<<<<<<<
@@ -126983,7 +134724,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatOb
*/
}
- /* "PETSc/Mat.pyx":1032
+ /* "PETSc/Mat.pyx":1041
* if result is None:
* result = Vec()
* if result.vec == NULL: # <<<<<<<<<<<<<<
@@ -126993,16 +134734,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatOb
__pyx_t_2 = ((__pyx_v_result->vec == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1033
+ /* "PETSc/Mat.pyx":1042
* result = Vec()
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) ) # <<<<<<<<<<<<<<
* CHKERR( MatGetRowSum(self.mat, result.vec) )
* return result
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1033, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateVecs(__pyx_v_self->mat, NULL, (&__pyx_v_result->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1042, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1032
+ /* "PETSc/Mat.pyx":1041
* if result is None:
* result = Vec()
* if result.vec == NULL: # <<<<<<<<<<<<<<
@@ -127011,28 +134752,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatOb
*/
}
- /* "PETSc/Mat.pyx":1034
+ /* "PETSc/Mat.pyx":1043
* if result.vec == NULL:
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
* CHKERR( MatGetRowSum(self.mat, result.vec) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRowSum(__pyx_v_self->mat, __pyx_v_result->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1034, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetRowSum(__pyx_v_self->mat, __pyx_v_result->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1043, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1035
+ /* "PETSc/Mat.pyx":1044
* CHKERR( MatCreateVecs(self.mat, NULL, &result.vec) )
* CHKERR( MatGetRowSum(self.mat, result.vec) )
* return result # <<<<<<<<<<<<<<
*
- * def setDiagonal(self, Vec diag not None, addv=None):
+ * def setDiagonal(self, Vec diag, addv=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1029
+ /* "PETSc/Mat.pyx":1038
* return result
*
* def getRowSum(self, Vec result=None): # <<<<<<<<<<<<<<
@@ -127052,18 +134793,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_238getRowSum(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1037
+/* "PETSc/Mat.pyx":1046
* return result
*
- * def setDiagonal(self, Vec diag not None, addv=None): # <<<<<<<<<<<<<<
+ * def setDiagonal(self, Vec diag, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( MatDiagonalSet(self.mat, diag.vec, caddv) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_240setDiagonal[] = "Mat.setDiagonal(self, Vec diag, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243setDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_242setDiagonal[] = "Mat.setDiagonal(self, Vec diag, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243setDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_diag = 0;
PyObject *__pyx_v_addv = 0;
PyObject *__pyx_r = 0;
@@ -127078,7 +134819,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -127087,6 +134830,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_diag)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -127094,11 +134838,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDiagonal") < 0)) __PYX_ERR(33, 1037, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDiagonal") < 0)) __PYX_ERR(33, 1046, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -127109,14 +134854,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDiagonal", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1037, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDiagonal", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1046, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setDiagonal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_diag), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "diag", 0))) __PYX_ERR(33, 1037, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_240setDiagonal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_diag, __pyx_v_addv);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_diag), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "diag", 0))) __PYX_ERR(33, 1046, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_242setDiagonal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_diag, __pyx_v_addv);
/* function exit code */
goto __pyx_L0;
@@ -127127,7 +134872,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal(PyObject *__pyx_v
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_240setDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_diag, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242setDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_diag, PyObject *__pyx_v_addv) {
InsertMode __pyx_v_caddv;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -127135,29 +134880,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_240setDiagonal(struct PyPetscMat
int __pyx_t_2;
__Pyx_RefNannySetupContext("setDiagonal", 0);
- /* "PETSc/Mat.pyx":1038
+ /* "PETSc/Mat.pyx":1047
*
- * def setDiagonal(self, Vec diag not None, addv=None):
+ * def setDiagonal(self, Vec diag, addv=None):
* cdef PetscInsertMode caddv = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( MatDiagonalSet(self.mat, diag.vec, caddv) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(33, 1038, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(33, 1047, __pyx_L1_error)
__pyx_v_caddv = __pyx_t_1;
- /* "PETSc/Mat.pyx":1039
- * def setDiagonal(self, Vec diag not None, addv=None):
+ /* "PETSc/Mat.pyx":1048
+ * def setDiagonal(self, Vec diag, addv=None):
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( MatDiagonalSet(self.mat, diag.vec, caddv) ) # <<<<<<<<<<<<<<
*
* def diagonalScale(self, Vec L=None, Vec R=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDiagonalSet(__pyx_v_self->mat, __pyx_v_diag->vec, __pyx_v_caddv)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1039, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDiagonalSet(__pyx_v_self->mat, __pyx_v_diag->vec, __pyx_v_caddv)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1048, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1037
+ /* "PETSc/Mat.pyx":1046
* return result
*
- * def setDiagonal(self, Vec diag not None, addv=None): # <<<<<<<<<<<<<<
+ * def setDiagonal(self, Vec diag, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode caddv = insertmode(addv)
* CHKERR( MatDiagonalSet(self.mat, diag.vec, caddv) )
*/
@@ -127174,7 +134919,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_240setDiagonal(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1041
+/* "PETSc/Mat.pyx":1050
* CHKERR( MatDiagonalSet(self.mat, diag.vec, caddv) )
*
* def diagonalScale(self, Vec L=None, Vec R=None): # <<<<<<<<<<<<<<
@@ -127183,9 +134928,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_240setDiagonal(struct PyPetscMat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_242diagonalScale[] = "Mat.diagonalScale(self, Vec L=None, Vec R=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_245diagonalScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_244diagonalScale[] = "Mat.diagonalScale(self, Vec L=None, Vec R=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_245diagonalScale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_L = 0;
struct PyPetscVecObject *__pyx_v_R = 0;
PyObject *__pyx_r = 0;
@@ -127201,7 +134946,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -127212,6 +134959,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale(PyObject *__pyx
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_L);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_R);
@@ -127219,12 +134967,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "diagonalScale") < 0)) __PYX_ERR(33, 1041, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "diagonalScale") < 0)) __PYX_ERR(33, 1050, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -127234,15 +134984,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("diagonalScale", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1041, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("diagonalScale", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1050, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.diagonalScale", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_L), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "L", 0))) __PYX_ERR(33, 1041, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_R), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "R", 0))) __PYX_ERR(33, 1041, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_L, __pyx_v_R);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_L), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "L", 0))) __PYX_ERR(33, 1050, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_R), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "R", 0))) __PYX_ERR(33, 1050, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_244diagonalScale(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_L, __pyx_v_R);
/* function exit code */
goto __pyx_L0;
@@ -127253,7 +135003,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_L, struct PyPetscVecObject *__pyx_v_R) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244diagonalScale(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_L, struct PyPetscVecObject *__pyx_v_R) {
Vec __pyx_v_vecl;
Vec __pyx_v_vecr;
PyObject *__pyx_r = NULL;
@@ -127264,7 +135014,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscM
int __pyx_t_4;
__Pyx_RefNannySetupContext("diagonalScale", 0);
- /* "PETSc/Mat.pyx":1042
+ /* "PETSc/Mat.pyx":1051
*
* def diagonalScale(self, Vec L=None, Vec R=None):
* cdef PetscVec vecl=NULL, vecr=NULL # <<<<<<<<<<<<<<
@@ -127274,7 +135024,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscM
__pyx_v_vecl = NULL;
__pyx_v_vecr = NULL;
- /* "PETSc/Mat.pyx":1043
+ /* "PETSc/Mat.pyx":1052
* def diagonalScale(self, Vec L=None, Vec R=None):
* cdef PetscVec vecl=NULL, vecr=NULL
* if L is not None: vecl = L.vec # <<<<<<<<<<<<<<
@@ -127288,7 +135038,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscM
__pyx_v_vecl = __pyx_t_3;
}
- /* "PETSc/Mat.pyx":1044
+ /* "PETSc/Mat.pyx":1053
* cdef PetscVec vecl=NULL, vecr=NULL
* if L is not None: vecl = L.vec
* if R is not None: vecr = R.vec # <<<<<<<<<<<<<<
@@ -127302,16 +135052,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscM
__pyx_v_vecr = __pyx_t_3;
}
- /* "PETSc/Mat.pyx":1045
+ /* "PETSc/Mat.pyx":1054
* if L is not None: vecl = L.vec
* if R is not None: vecr = R.vec
* CHKERR( MatDiagonalScale(self.mat, vecl, vecr) ) # <<<<<<<<<<<<<<
*
* def invertBlockDiagonal(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDiagonalScale(__pyx_v_self->mat, __pyx_v_vecl, __pyx_v_vecr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1045, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDiagonalScale(__pyx_v_self->mat, __pyx_v_vecl, __pyx_v_vecr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1054, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1041
+ /* "PETSc/Mat.pyx":1050
* CHKERR( MatDiagonalSet(self.mat, diag.vec, caddv) )
*
* def diagonalScale(self, Vec L=None, Vec R=None): # <<<<<<<<<<<<<<
@@ -127331,7 +135081,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1047
+/* "PETSc/Mat.pyx":1056
* CHKERR( MatDiagonalScale(self.mat, vecl, vecr) )
*
* def invertBlockDiagonal(self): # <<<<<<<<<<<<<<
@@ -127340,23 +135090,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_242diagonalScale(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_245invertBlockDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal[] = "Mat.invertBlockDiagonal(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_245invertBlockDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247invertBlockDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_246invertBlockDiagonal[] = "Mat.invertBlockDiagonal(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247invertBlockDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("invertBlockDiagonal (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("invertBlockDiagonal", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "invertBlockDiagonal", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_246invertBlockDiagonal(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_246invertBlockDiagonal(struct PyPetscMatObject *__pyx_v_self) {
PetscInt __pyx_v_bs;
PetscInt __pyx_v_m;
const PetscScalar *__pyx_v_cibdiag;
@@ -127370,7 +135120,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct Py
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("invertBlockDiagonal", 0);
- /* "PETSc/Mat.pyx":1048
+ /* "PETSc/Mat.pyx":1057
*
* def invertBlockDiagonal(self):
* cdef PetscInt bs = 0, m = 0 # <<<<<<<<<<<<<<
@@ -127380,7 +135130,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct Py
__pyx_v_bs = 0;
__pyx_v_m = 0;
- /* "PETSc/Mat.pyx":1049
+ /* "PETSc/Mat.pyx":1058
* def invertBlockDiagonal(self):
* cdef PetscInt bs = 0, m = 0
* cdef const_PetscScalar *cibdiag = NULL # <<<<<<<<<<<<<<
@@ -127389,59 +135139,59 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct Py
*/
__pyx_v_cibdiag = NULL;
- /* "PETSc/Mat.pyx":1050
+ /* "PETSc/Mat.pyx":1059
* cdef PetscInt bs = 0, m = 0
* cdef const_PetscScalar *cibdiag = NULL
* CHKERR( MatGetBlockSize(self.mat, &bs) ) # <<<<<<<<<<<<<<
* CHKERR( MatGetLocalSize(self.mat, &m, NULL) )
* CHKERR( MatInvertBlockDiagonal(self.mat, &cibdiag) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_self->mat, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1050, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetBlockSize(__pyx_v_self->mat, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1059, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1051
+ /* "PETSc/Mat.pyx":1060
* cdef const_PetscScalar *cibdiag = NULL
* CHKERR( MatGetBlockSize(self.mat, &bs) )
* CHKERR( MatGetLocalSize(self.mat, &m, NULL) ) # <<<<<<<<<<<<<<
* CHKERR( MatInvertBlockDiagonal(self.mat, &cibdiag) )
* cdef ndarray ibdiag = array_s(m*bs, cibdiag)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1051, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1060, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1052
+ /* "PETSc/Mat.pyx":1061
* CHKERR( MatGetBlockSize(self.mat, &bs) )
* CHKERR( MatGetLocalSize(self.mat, &m, NULL) )
* CHKERR( MatInvertBlockDiagonal(self.mat, &cibdiag) ) # <<<<<<<<<<<<<<
* cdef ndarray ibdiag = array_s(m*bs, cibdiag)
* ibdiag.shape = (toInt(m//bs), toInt(bs), toInt(bs))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatInvertBlockDiagonal(__pyx_v_self->mat, (&__pyx_v_cibdiag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1052, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatInvertBlockDiagonal(__pyx_v_self->mat, (&__pyx_v_cibdiag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1061, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1053
+ /* "PETSc/Mat.pyx":1062
* CHKERR( MatGetLocalSize(self.mat, &m, NULL) )
* CHKERR( MatInvertBlockDiagonal(self.mat, &cibdiag) )
* cdef ndarray ibdiag = array_s(m*bs, cibdiag) # <<<<<<<<<<<<<<
* ibdiag.shape = (toInt(m//bs), toInt(bs), toInt(bs))
* return ibdiag.transpose(0, 2, 1)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_s((__pyx_v_m * __pyx_v_bs), __pyx_v_cibdiag)); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1053, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_s((__pyx_v_m * __pyx_v_bs), __pyx_v_cibdiag)); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1062, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ibdiag = ((PyArrayObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Mat.pyx":1054
+ /* "PETSc/Mat.pyx":1063
* CHKERR( MatInvertBlockDiagonal(self.mat, &cibdiag) )
* cdef ndarray ibdiag = array_s(m*bs, cibdiag)
* ibdiag.shape = (toInt(m//bs), toInt(bs), toInt(bs)) # <<<<<<<<<<<<<<
* return ibdiag.transpose(0, 2, 1)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m / __pyx_v_bs)); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1054, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_m / __pyx_v_bs)); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1063, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1054, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1063, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1054, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_bs); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1063, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1054, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1063, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
@@ -127452,10 +135202,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct Py
__pyx_t_2 = 0;
__pyx_t_3 = 0;
__pyx_t_4 = 0;
- if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_ibdiag), __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(33, 1054, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_ibdiag), __pyx_n_s_shape, __pyx_t_5) < 0) __PYX_ERR(33, 1063, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Mat.pyx":1055
+ /* "PETSc/Mat.pyx":1064
* cdef ndarray ibdiag = array_s(m*bs, cibdiag)
* ibdiag.shape = (toInt(m//bs), toInt(bs), toInt(bs))
* return ibdiag.transpose(0, 2, 1) # <<<<<<<<<<<<<<
@@ -127463,16 +135213,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct Py
* # null space
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_ibdiag), __pyx_n_s_transpose); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1055, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_ibdiag), __pyx_n_s_transpose); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1064, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__58, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1055, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__61, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1064, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1047
+ /* "PETSc/Mat.pyx":1056
* CHKERR( MatDiagonalScale(self.mat, vecl, vecr) )
*
* def invertBlockDiagonal(self): # <<<<<<<<<<<<<<
@@ -127495,18 +135245,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal(struct Py
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1059
+/* "PETSc/Mat.pyx":1068
* # null space
*
- * def setNullSpace(self, NullSpace nsp not None): # <<<<<<<<<<<<<<
+ * def setNullSpace(self, NullSpace nsp): # <<<<<<<<<<<<<<
* CHKERR( MatSetNullSpace(self.mat, nsp.nsp) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247setNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_246setNullSpace[] = "Mat.setNullSpace(self, NullSpace nsp)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247setNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_249setNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_248setNullSpace[] = "Mat.setNullSpace(self, NullSpace nsp)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_249setNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscNullSpaceObject *__pyx_v_nsp = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -127519,6 +135269,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247setNullSpace(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -127529,7 +135280,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247setNullSpace(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNullSpace") < 0)) __PYX_ERR(33, 1059, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNullSpace") < 0)) __PYX_ERR(33, 1068, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -127540,14 +135291,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247setNullSpace(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setNullSpace", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1059, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setNullSpace", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1068, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setNullSpace", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nsp), __pyx_ptype_8petsc4py_5PETSc_NullSpace, 0, "nsp", 0))) __PYX_ERR(33, 1059, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_246setNullSpace(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_nsp);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nsp), __pyx_ptype_8petsc4py_5PETSc_NullSpace, 0, "nsp", 0))) __PYX_ERR(33, 1068, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_248setNullSpace(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_nsp);
/* function exit code */
goto __pyx_L0;
@@ -127558,25 +135309,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_247setNullSpace(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_246setNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_248setNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setNullSpace", 0);
- /* "PETSc/Mat.pyx":1060
+ /* "PETSc/Mat.pyx":1069
*
- * def setNullSpace(self, NullSpace nsp not None):
+ * def setNullSpace(self, NullSpace nsp):
* CHKERR( MatSetNullSpace(self.mat, nsp.nsp) ) # <<<<<<<<<<<<<<
*
* def getNullSpace(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetNullSpace(__pyx_v_self->mat, __pyx_v_nsp->nsp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1060, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetNullSpace(__pyx_v_self->mat, __pyx_v_nsp->nsp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1069, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1059
+ /* "PETSc/Mat.pyx":1068
* # null space
*
- * def setNullSpace(self, NullSpace nsp not None): # <<<<<<<<<<<<<<
+ * def setNullSpace(self, NullSpace nsp): # <<<<<<<<<<<<<<
* CHKERR( MatSetNullSpace(self.mat, nsp.nsp) )
*
*/
@@ -127593,7 +135344,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_246setNullSpace(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1062
+/* "PETSc/Mat.pyx":1071
* CHKERR( MatSetNullSpace(self.mat, nsp.nsp) )
*
* def getNullSpace(self): # <<<<<<<<<<<<<<
@@ -127602,23 +135353,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_246setNullSpace(struct PyPetscMa
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_249getNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_248getNullSpace[] = "Mat.getNullSpace(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_249getNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251getNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_250getNullSpace[] = "Mat.getNullSpace(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251getNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getNullSpace (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getNullSpace", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getNullSpace", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_248getNullSpace(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_250getNullSpace(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_248getNullSpace(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_250getNullSpace(struct PyPetscMatObject *__pyx_v_self) {
struct PyPetscNullSpaceObject *__pyx_v_nsp = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -127626,28 +135377,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_248getNullSpace(struct PyPetscMa
int __pyx_t_2;
__Pyx_RefNannySetupContext("getNullSpace", 0);
- /* "PETSc/Mat.pyx":1063
+ /* "PETSc/Mat.pyx":1072
*
* def getNullSpace(self):
* cdef NullSpace nsp = NullSpace() # <<<<<<<<<<<<<<
* CHKERR( MatGetNullSpace(self.mat, &nsp.nsp) )
* PetscINCREF(nsp.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_NullSpace), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1063, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_NullSpace), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1072, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_nsp = ((struct PyPetscNullSpaceObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1064
+ /* "PETSc/Mat.pyx":1073
* def getNullSpace(self):
* cdef NullSpace nsp = NullSpace()
* CHKERR( MatGetNullSpace(self.mat, &nsp.nsp) ) # <<<<<<<<<<<<<<
* PetscINCREF(nsp.obj)
* return nsp
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetNullSpace(__pyx_v_self->mat, (&__pyx_v_nsp->nsp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1064, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetNullSpace(__pyx_v_self->mat, (&__pyx_v_nsp->nsp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1073, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1065
+ /* "PETSc/Mat.pyx":1074
* cdef NullSpace nsp = NullSpace()
* CHKERR( MatGetNullSpace(self.mat, &nsp.nsp) )
* PetscINCREF(nsp.obj) # <<<<<<<<<<<<<<
@@ -127656,19 +135407,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_248getNullSpace(struct PyPetscMa
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_nsp->__pyx_base.obj);
- /* "PETSc/Mat.pyx":1066
+ /* "PETSc/Mat.pyx":1075
* CHKERR( MatGetNullSpace(self.mat, &nsp.nsp) )
* PetscINCREF(nsp.obj)
* return nsp # <<<<<<<<<<<<<<
*
- * def setNearNullSpace(self, NullSpace nsp not None):
+ * def setTransposeNullSpace(self, NullSpace nsp):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_nsp));
__pyx_r = ((PyObject *)__pyx_v_nsp);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1062
+ /* "PETSc/Mat.pyx":1071
* CHKERR( MatSetNullSpace(self.mat, nsp.nsp) )
*
* def getNullSpace(self): # <<<<<<<<<<<<<<
@@ -127688,18 +135439,212 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_248getNullSpace(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1068
+/* "PETSc/Mat.pyx":1077
* return nsp
*
- * def setNearNullSpace(self, NullSpace nsp not None): # <<<<<<<<<<<<<<
+ * def setTransposeNullSpace(self, NullSpace nsp): # <<<<<<<<<<<<<<
+ * CHKERR( MatSetTransposeNullSpace(self.mat, nsp.nsp) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_253setTransposeNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_252setTransposeNullSpace[] = "Mat.setTransposeNullSpace(self, NullSpace nsp)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_253setTransposeNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscNullSpaceObject *__pyx_v_nsp = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setTransposeNullSpace (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_nsp,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nsp)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTransposeNullSpace") < 0)) __PYX_ERR(33, 1077, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_nsp = ((struct PyPetscNullSpaceObject *)values[0]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setTransposeNullSpace", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1077, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.setTransposeNullSpace", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nsp), __pyx_ptype_8petsc4py_5PETSc_NullSpace, 0, "nsp", 0))) __PYX_ERR(33, 1077, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_252setTransposeNullSpace(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_nsp);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252setTransposeNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("setTransposeNullSpace", 0);
+
+ /* "PETSc/Mat.pyx":1078
+ *
+ * def setTransposeNullSpace(self, NullSpace nsp):
+ * CHKERR( MatSetTransposeNullSpace(self.mat, nsp.nsp) ) # <<<<<<<<<<<<<<
+ *
+ * def getTransposeNullSpace(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetTransposeNullSpace(__pyx_v_self->mat, __pyx_v_nsp->nsp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1078, __pyx_L1_error)
+
+ /* "PETSc/Mat.pyx":1077
+ * return nsp
+ *
+ * def setTransposeNullSpace(self, NullSpace nsp): # <<<<<<<<<<<<<<
+ * CHKERR( MatSetTransposeNullSpace(self.mat, nsp.nsp) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.setTransposeNullSpace", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Mat.pyx":1080
+ * CHKERR( MatSetTransposeNullSpace(self.mat, nsp.nsp) )
+ *
+ * def getTransposeNullSpace(self): # <<<<<<<<<<<<<<
+ * cdef NullSpace nsp = NullSpace()
+ * CHKERR( MatGetTransposeNullSpace(self.mat, &nsp.nsp) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255getTransposeNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_254getTransposeNullSpace[] = "Mat.getTransposeNullSpace(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255getTransposeNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getTransposeNullSpace (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getTransposeNullSpace", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTransposeNullSpace", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_254getTransposeNullSpace(((struct PyPetscMatObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_254getTransposeNullSpace(struct PyPetscMatObject *__pyx_v_self) {
+ struct PyPetscNullSpaceObject *__pyx_v_nsp = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getTransposeNullSpace", 0);
+
+ /* "PETSc/Mat.pyx":1081
+ *
+ * def getTransposeNullSpace(self):
+ * cdef NullSpace nsp = NullSpace() # <<<<<<<<<<<<<<
+ * CHKERR( MatGetTransposeNullSpace(self.mat, &nsp.nsp) )
+ * PetscINCREF(nsp.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_NullSpace), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1081, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_nsp = ((struct PyPetscNullSpaceObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Mat.pyx":1082
+ * def getTransposeNullSpace(self):
+ * cdef NullSpace nsp = NullSpace()
+ * CHKERR( MatGetTransposeNullSpace(self.mat, &nsp.nsp) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(nsp.obj)
+ * return nsp
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetTransposeNullSpace(__pyx_v_self->mat, (&__pyx_v_nsp->nsp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1082, __pyx_L1_error)
+
+ /* "PETSc/Mat.pyx":1083
+ * cdef NullSpace nsp = NullSpace()
+ * CHKERR( MatGetTransposeNullSpace(self.mat, &nsp.nsp) )
+ * PetscINCREF(nsp.obj) # <<<<<<<<<<<<<<
+ * return nsp
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_nsp->__pyx_base.obj);
+
+ /* "PETSc/Mat.pyx":1084
+ * CHKERR( MatGetTransposeNullSpace(self.mat, &nsp.nsp) )
+ * PetscINCREF(nsp.obj)
+ * return nsp # <<<<<<<<<<<<<<
+ *
+ * def setNearNullSpace(self, NullSpace nsp):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_nsp));
+ __pyx_r = ((PyObject *)__pyx_v_nsp);
+ goto __pyx_L0;
+
+ /* "PETSc/Mat.pyx":1080
+ * CHKERR( MatSetTransposeNullSpace(self.mat, nsp.nsp) )
+ *
+ * def getTransposeNullSpace(self): # <<<<<<<<<<<<<<
+ * cdef NullSpace nsp = NullSpace()
+ * CHKERR( MatGetTransposeNullSpace(self.mat, &nsp.nsp) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.getTransposeNullSpace", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_nsp);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Mat.pyx":1086
+ * return nsp
+ *
+ * def setNearNullSpace(self, NullSpace nsp): # <<<<<<<<<<<<<<
* CHKERR( MatSetNearNullSpace(self.mat, nsp.nsp) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251setNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_250setNearNullSpace[] = "Mat.setNearNullSpace(self, NullSpace nsp)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251setNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257setNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_256setNearNullSpace[] = "Mat.setNearNullSpace(self, NullSpace nsp)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257setNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscNullSpaceObject *__pyx_v_nsp = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -127712,6 +135657,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251setNearNullSpace(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -127722,7 +135668,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251setNearNullSpace(PyObject *__
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNearNullSpace") < 0)) __PYX_ERR(33, 1068, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNearNullSpace") < 0)) __PYX_ERR(33, 1086, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -127733,14 +135679,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251setNearNullSpace(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setNearNullSpace", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1068, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setNearNullSpace", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1086, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setNearNullSpace", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nsp), __pyx_ptype_8petsc4py_5PETSc_NullSpace, 0, "nsp", 0))) __PYX_ERR(33, 1068, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_250setNearNullSpace(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_nsp);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nsp), __pyx_ptype_8petsc4py_5PETSc_NullSpace, 0, "nsp", 0))) __PYX_ERR(33, 1086, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_256setNearNullSpace(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_nsp);
/* function exit code */
goto __pyx_L0;
@@ -127751,25 +135697,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_251setNearNullSpace(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_250setNearNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_256setNearNullSpace(struct PyPetscMatObject *__pyx_v_self, struct PyPetscNullSpaceObject *__pyx_v_nsp) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setNearNullSpace", 0);
- /* "PETSc/Mat.pyx":1069
+ /* "PETSc/Mat.pyx":1087
*
- * def setNearNullSpace(self, NullSpace nsp not None):
+ * def setNearNullSpace(self, NullSpace nsp):
* CHKERR( MatSetNearNullSpace(self.mat, nsp.nsp) ) # <<<<<<<<<<<<<<
*
* def getNearNullSpace(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetNearNullSpace(__pyx_v_self->mat, __pyx_v_nsp->nsp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1069, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetNearNullSpace(__pyx_v_self->mat, __pyx_v_nsp->nsp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1087, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1068
+ /* "PETSc/Mat.pyx":1086
* return nsp
*
- * def setNearNullSpace(self, NullSpace nsp not None): # <<<<<<<<<<<<<<
+ * def setNearNullSpace(self, NullSpace nsp): # <<<<<<<<<<<<<<
* CHKERR( MatSetNearNullSpace(self.mat, nsp.nsp) )
*
*/
@@ -127786,7 +135732,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_250setNearNullSpace(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1071
+/* "PETSc/Mat.pyx":1089
* CHKERR( MatSetNearNullSpace(self.mat, nsp.nsp) )
*
* def getNearNullSpace(self): # <<<<<<<<<<<<<<
@@ -127795,23 +135741,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_250setNearNullSpace(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_253getNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_252getNearNullSpace[] = "Mat.getNearNullSpace(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_253getNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259getNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_258getNearNullSpace[] = "Mat.getNearNullSpace(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259getNearNullSpace(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getNearNullSpace (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getNearNullSpace", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getNearNullSpace", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_252getNearNullSpace(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_258getNearNullSpace(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252getNearNullSpace(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_258getNearNullSpace(struct PyPetscMatObject *__pyx_v_self) {
struct PyPetscNullSpaceObject *__pyx_v_nsp = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -127819,28 +135765,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252getNearNullSpace(struct PyPet
int __pyx_t_2;
__Pyx_RefNannySetupContext("getNearNullSpace", 0);
- /* "PETSc/Mat.pyx":1072
+ /* "PETSc/Mat.pyx":1090
*
* def getNearNullSpace(self):
* cdef NullSpace nsp = NullSpace() # <<<<<<<<<<<<<<
* CHKERR( MatGetNearNullSpace(self.mat, &nsp.nsp) )
* PetscINCREF(nsp.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_NullSpace), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1072, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_NullSpace), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1090, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_nsp = ((struct PyPetscNullSpaceObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1073
+ /* "PETSc/Mat.pyx":1091
* def getNearNullSpace(self):
* cdef NullSpace nsp = NullSpace()
* CHKERR( MatGetNearNullSpace(self.mat, &nsp.nsp) ) # <<<<<<<<<<<<<<
* PetscINCREF(nsp.obj)
* return nsp
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetNearNullSpace(__pyx_v_self->mat, (&__pyx_v_nsp->nsp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1073, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetNearNullSpace(__pyx_v_self->mat, (&__pyx_v_nsp->nsp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1091, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1074
+ /* "PETSc/Mat.pyx":1092
* cdef NullSpace nsp = NullSpace()
* CHKERR( MatGetNearNullSpace(self.mat, &nsp.nsp) )
* PetscINCREF(nsp.obj) # <<<<<<<<<<<<<<
@@ -127849,7 +135795,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252getNearNullSpace(struct PyPet
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_nsp->__pyx_base.obj);
- /* "PETSc/Mat.pyx":1075
+ /* "PETSc/Mat.pyx":1093
* CHKERR( MatGetNearNullSpace(self.mat, &nsp.nsp) )
* PetscINCREF(nsp.obj)
* return nsp # <<<<<<<<<<<<<<
@@ -127861,7 +135807,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252getNearNullSpace(struct PyPet
__pyx_r = ((PyObject *)__pyx_v_nsp);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1071
+ /* "PETSc/Mat.pyx":1089
* CHKERR( MatSetNearNullSpace(self.mat, nsp.nsp) )
*
* def getNearNullSpace(self): # <<<<<<<<<<<<<<
@@ -127881,18 +135827,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_252getNearNullSpace(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1079
+/* "PETSc/Mat.pyx":1097
* # matrix-vector product
*
- * def mult(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def mult(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMult(self.mat, x.vec, y.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255mult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_254mult[] = "Mat.mult(self, Vec x, Vec y)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255mult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261mult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_260mult[] = "Mat.mult(self, Vec x, Vec y)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261mult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
PyObject *__pyx_r = 0;
@@ -127906,7 +135852,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255mult(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -127915,14 +135863,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255mult(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("mult", 1, 2, 2, 1); __PYX_ERR(33, 1079, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("mult", 1, 2, 2, 1); __PYX_ERR(33, 1097, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "mult") < 0)) __PYX_ERR(33, 1079, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "mult") < 0)) __PYX_ERR(33, 1097, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -127935,15 +135884,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255mult(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("mult", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1079, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("mult", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1097, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.mult", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1079, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1079, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_254mult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1097, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1097, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_260mult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
/* function exit code */
goto __pyx_L0;
@@ -127954,25 +135903,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_255mult(PyObject *__pyx_v_self,
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_254mult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_260mult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("mult", 0);
- /* "PETSc/Mat.pyx":1080
+ /* "PETSc/Mat.pyx":1098
*
- * def mult(self, Vec x not None, Vec y not None):
+ * def mult(self, Vec x, Vec y):
* CHKERR( MatMult(self.mat, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def multAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ * def multAdd(self, Vec x, Vec v, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMult(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1080, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMult(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1098, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1079
+ /* "PETSc/Mat.pyx":1097
* # matrix-vector product
*
- * def mult(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def mult(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMult(self.mat, x.vec, y.vec) )
*
*/
@@ -127989,18 +135938,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_254mult(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1082
+/* "PETSc/Mat.pyx":1100
* CHKERR( MatMult(self.mat, x.vec, y.vec) )
*
- * def multAdd(self, Vec x not None, Vec v not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multAdd(self, Vec x, Vec v, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultAdd(self.mat, x.vec, v.vec, y.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257multAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_256multAdd[] = "Mat.multAdd(self, Vec x, Vec v, Vec y)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257multAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_262multAdd[] = "Mat.multAdd(self, Vec x, Vec v, Vec y)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_v = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
@@ -128015,8 +135964,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257multAdd(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -128025,19 +135977,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257multAdd(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multAdd", 1, 3, 3, 1); __PYX_ERR(33, 1082, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multAdd", 1, 3, 3, 1); __PYX_ERR(33, 1100, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multAdd", 1, 3, 3, 2); __PYX_ERR(33, 1082, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multAdd", 1, 3, 3, 2); __PYX_ERR(33, 1100, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multAdd") < 0)) __PYX_ERR(33, 1082, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multAdd") < 0)) __PYX_ERR(33, 1100, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -128052,16 +136006,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257multAdd(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("multAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1082, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1100, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.multAdd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1082, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "v", 0))) __PYX_ERR(33, 1082, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1082, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_256multAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_v, __pyx_v_y);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1100, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "v", 0))) __PYX_ERR(33, 1100, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1100, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_262multAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_v, __pyx_v_y);
/* function exit code */
goto __pyx_L0;
@@ -128072,25 +136026,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_257multAdd(PyObject *__pyx_v_sel
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_256multAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_262multAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("multAdd", 0);
- /* "PETSc/Mat.pyx":1083
+ /* "PETSc/Mat.pyx":1101
*
- * def multAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ * def multAdd(self, Vec x, Vec v, Vec y):
* CHKERR( MatMultAdd(self.mat, x.vec, v.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def multTranspose(self, Vec x not None, Vec y not None):
+ * def multTranspose(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultAdd(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_v->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1083, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultAdd(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_v->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1101, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1082
+ /* "PETSc/Mat.pyx":1100
* CHKERR( MatMult(self.mat, x.vec, y.vec) )
*
- * def multAdd(self, Vec x not None, Vec v not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multAdd(self, Vec x, Vec v, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultAdd(self.mat, x.vec, v.vec, y.vec) )
*
*/
@@ -128107,18 +136061,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_256multAdd(struct PyPetscMatObje
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1085
+/* "PETSc/Mat.pyx":1103
* CHKERR( MatMultAdd(self.mat, x.vec, v.vec, y.vec) )
*
- * def multTranspose(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multTranspose(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultTranspose(self.mat, x.vec, y.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259multTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_258multTranspose[] = "Mat.multTranspose(self, Vec x, Vec y)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259multTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_264multTranspose[] = "Mat.multTranspose(self, Vec x, Vec y)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
PyObject *__pyx_r = 0;
@@ -128132,7 +136086,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259multTranspose(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -128141,14 +136097,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259multTranspose(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multTranspose", 1, 2, 2, 1); __PYX_ERR(33, 1085, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multTranspose", 1, 2, 2, 1); __PYX_ERR(33, 1103, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multTranspose") < 0)) __PYX_ERR(33, 1085, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multTranspose") < 0)) __PYX_ERR(33, 1103, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -128161,15 +136118,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259multTranspose(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("multTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1085, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1103, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.multTranspose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1085, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1085, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_258multTranspose(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1103, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1103, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_264multTranspose(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
/* function exit code */
goto __pyx_L0;
@@ -128180,25 +136137,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_259multTranspose(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_258multTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_264multTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("multTranspose", 0);
- /* "PETSc/Mat.pyx":1086
+ /* "PETSc/Mat.pyx":1104
*
- * def multTranspose(self, Vec x not None, Vec y not None):
+ * def multTranspose(self, Vec x, Vec y):
* CHKERR( MatMultTranspose(self.mat, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def multTransposeAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ * def multTransposeAdd(self, Vec x, Vec v, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultTranspose(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1086, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultTranspose(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1104, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1085
+ /* "PETSc/Mat.pyx":1103
* CHKERR( MatMultAdd(self.mat, x.vec, v.vec, y.vec) )
*
- * def multTranspose(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multTranspose(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultTranspose(self.mat, x.vec, y.vec) )
*
*/
@@ -128215,18 +136172,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_258multTranspose(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1088
+/* "PETSc/Mat.pyx":1106
* CHKERR( MatMultTranspose(self.mat, x.vec, y.vec) )
*
- * def multTransposeAdd(self, Vec x not None, Vec v not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multTransposeAdd(self, Vec x, Vec v, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultTransposeAdd(self.mat, x.vec, v.vec, y.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261multTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_260multTransposeAdd[] = "Mat.multTransposeAdd(self, Vec x, Vec v, Vec y)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261multTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267multTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_266multTransposeAdd[] = "Mat.multTransposeAdd(self, Vec x, Vec v, Vec y)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267multTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_v = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
@@ -128241,8 +136198,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261multTransposeAdd(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -128251,19 +136211,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261multTransposeAdd(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multTransposeAdd", 1, 3, 3, 1); __PYX_ERR(33, 1088, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multTransposeAdd", 1, 3, 3, 1); __PYX_ERR(33, 1106, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multTransposeAdd", 1, 3, 3, 2); __PYX_ERR(33, 1088, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multTransposeAdd", 1, 3, 3, 2); __PYX_ERR(33, 1106, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multTransposeAdd") < 0)) __PYX_ERR(33, 1088, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multTransposeAdd") < 0)) __PYX_ERR(33, 1106, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -128278,16 +136240,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261multTransposeAdd(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("multTransposeAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1088, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multTransposeAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1106, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.multTransposeAdd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1088, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "v", 0))) __PYX_ERR(33, 1088, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1088, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_260multTransposeAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_v, __pyx_v_y);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1106, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "v", 0))) __PYX_ERR(33, 1106, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1106, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_266multTransposeAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_v, __pyx_v_y);
/* function exit code */
goto __pyx_L0;
@@ -128298,25 +136260,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_261multTransposeAdd(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_260multTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266multTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("multTransposeAdd", 0);
- /* "PETSc/Mat.pyx":1089
+ /* "PETSc/Mat.pyx":1107
*
- * def multTransposeAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ * def multTransposeAdd(self, Vec x, Vec v, Vec y):
* CHKERR( MatMultTransposeAdd(self.mat, x.vec, v.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def multHermitian(self, Vec x not None, Vec y not None):
+ * def multHermitian(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultTransposeAdd(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_v->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1089, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultTransposeAdd(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_v->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1107, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1088
+ /* "PETSc/Mat.pyx":1106
* CHKERR( MatMultTranspose(self.mat, x.vec, y.vec) )
*
- * def multTransposeAdd(self, Vec x not None, Vec v not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multTransposeAdd(self, Vec x, Vec v, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultTransposeAdd(self.mat, x.vec, v.vec, y.vec) )
*
*/
@@ -128333,18 +136295,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_260multTransposeAdd(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1091
+/* "PETSc/Mat.pyx":1109
* CHKERR( MatMultTransposeAdd(self.mat, x.vec, v.vec, y.vec) )
*
- * def multHermitian(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multHermitian(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultHermitian(self.mat, x.vec, y.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multHermitian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_262multHermitian[] = "Mat.multHermitian(self, Vec x, Vec y)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multHermitian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_269multHermitian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_268multHermitian[] = "Mat.multHermitian(self, Vec x, Vec y)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_269multHermitian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
PyObject *__pyx_r = 0;
@@ -128358,7 +136320,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multHermitian(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -128367,14 +136331,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multHermitian(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multHermitian", 1, 2, 2, 1); __PYX_ERR(33, 1091, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multHermitian", 1, 2, 2, 1); __PYX_ERR(33, 1109, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multHermitian") < 0)) __PYX_ERR(33, 1091, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multHermitian") < 0)) __PYX_ERR(33, 1109, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -128387,15 +136352,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multHermitian(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("multHermitian", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1091, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multHermitian", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1109, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.multHermitian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1091, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1091, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_262multHermitian(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1109, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1109, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_268multHermitian(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
/* function exit code */
goto __pyx_L0;
@@ -128406,25 +136371,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_263multHermitian(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_262multHermitian(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_268multHermitian(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_y) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("multHermitian", 0);
- /* "PETSc/Mat.pyx":1092
+ /* "PETSc/Mat.pyx":1110
*
- * def multHermitian(self, Vec x not None, Vec y not None):
+ * def multHermitian(self, Vec x, Vec y):
* CHKERR( MatMultHermitian(self.mat, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def multHermitianAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ * def multHermitianAdd(self, Vec x, Vec v, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultHermitianTranspose(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1092, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultHermitianTranspose(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1110, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1091
+ /* "PETSc/Mat.pyx":1109
* CHKERR( MatMultTransposeAdd(self.mat, x.vec, v.vec, y.vec) )
*
- * def multHermitian(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multHermitian(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultHermitian(self.mat, x.vec, y.vec) )
*
*/
@@ -128441,18 +136406,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_262multHermitian(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1094
+/* "PETSc/Mat.pyx":1112
* CHKERR( MatMultHermitian(self.mat, x.vec, y.vec) )
*
- * def multHermitianAdd(self, Vec x not None, Vec v not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multHermitianAdd(self, Vec x, Vec v, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultHermitianAdd(self.mat, x.vec, v.vec, y.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multHermitianAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_264multHermitianAdd[] = "Mat.multHermitianAdd(self, Vec x, Vec v, Vec y)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multHermitianAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271multHermitianAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_270multHermitianAdd[] = "Mat.multHermitianAdd(self, Vec x, Vec v, Vec y)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271multHermitianAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_v = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
@@ -128467,8 +136432,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multHermitianAdd(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -128477,19 +136445,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multHermitianAdd(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multHermitianAdd", 1, 3, 3, 1); __PYX_ERR(33, 1094, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multHermitianAdd", 1, 3, 3, 1); __PYX_ERR(33, 1112, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("multHermitianAdd", 1, 3, 3, 2); __PYX_ERR(33, 1094, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multHermitianAdd", 1, 3, 3, 2); __PYX_ERR(33, 1112, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multHermitianAdd") < 0)) __PYX_ERR(33, 1094, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "multHermitianAdd") < 0)) __PYX_ERR(33, 1112, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -128504,16 +136474,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multHermitianAdd(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("multHermitianAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1094, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("multHermitianAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1112, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.multHermitianAdd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1094, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "v", 0))) __PYX_ERR(33, 1094, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1094, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_264multHermitianAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_v, __pyx_v_y);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1112, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "v", 0))) __PYX_ERR(33, 1112, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1112, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_270multHermitianAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_x, __pyx_v_v, __pyx_v_y);
/* function exit code */
goto __pyx_L0;
@@ -128524,25 +136494,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_265multHermitianAdd(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_264multHermitianAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_270multHermitianAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_v, struct PyPetscVecObject *__pyx_v_y) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("multHermitianAdd", 0);
- /* "PETSc/Mat.pyx":1095
+ /* "PETSc/Mat.pyx":1113
*
- * def multHermitianAdd(self, Vec x not None, Vec v not None, Vec y not None):
+ * def multHermitianAdd(self, Vec x, Vec v, Vec y):
* CHKERR( MatMultHermitianAdd(self.mat, x.vec, v.vec, y.vec) ) # <<<<<<<<<<<<<<
*
* # SOR
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultHermitianTransposeAdd(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_v->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1095, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMultHermitianTransposeAdd(__pyx_v_self->mat, __pyx_v_x->vec, __pyx_v_v->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1113, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1094
+ /* "PETSc/Mat.pyx":1112
* CHKERR( MatMultHermitian(self.mat, x.vec, y.vec) )
*
- * def multHermitianAdd(self, Vec x not None, Vec v not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def multHermitianAdd(self, Vec x, Vec v, Vec y): # <<<<<<<<<<<<<<
* CHKERR( MatMultHermitianAdd(self.mat, x.vec, v.vec, y.vec) )
*
*/
@@ -128559,18 +136529,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_264multHermitianAdd(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1099
+/* "PETSc/Mat.pyx":1117
* # SOR
*
- * def SOR(self, Vec b not None, Vec x not None, omega=1.0, sortype=None, shift=0.0, its=1, lits=1): # <<<<<<<<<<<<<<
+ * def SOR(self, Vec b, Vec x, omega=1.0, sortype=None, shift=0.0, its=1, lits=1): # <<<<<<<<<<<<<<
* cdef PetscReal comega = asReal(omega)
* cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_266SOR[] = "Mat.SOR(self, Vec b, Vec x, omega=1.0, sortype=None, shift=0.0, its=1, lits=1)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273SOR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_272SOR[] = "Mat.SOR(self, Vec b, Vec x, omega=1.0, sortype=None, shift=0.0, its=1, lits=1)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273SOR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
PyObject *__pyx_v_omega = 0;
@@ -128594,12 +136564,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -128608,31 +136585,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR(PyObject *__pyx_v_self, P
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("SOR", 0, 2, 7, 1); __PYX_ERR(33, 1099, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("SOR", 0, 2, 7, 1); __PYX_ERR(33, 1117, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_omega);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sortype);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_shift);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_its);
if (value) { values[5] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 6:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lits);
@@ -128640,15 +136623,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR(PyObject *__pyx_v_self, P
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "SOR") < 0)) __PYX_ERR(33, 1099, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "SOR") < 0)) __PYX_ERR(33, 1117, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -128665,15 +136653,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR(PyObject *__pyx_v_self, P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("SOR", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1099, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("SOR", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1117, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.SOR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1099, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1099, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x, __pyx_v_omega, __pyx_v_sortype, __pyx_v_shift, __pyx_v_its, __pyx_v_lits);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1117, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1117, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_272SOR(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x, __pyx_v_omega, __pyx_v_sortype, __pyx_v_shift, __pyx_v_its, __pyx_v_lits);
/* function exit code */
goto __pyx_L0;
@@ -128684,7 +136672,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR(PyObject *__pyx_v_self, P
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x, PyObject *__pyx_v_omega, PyObject *__pyx_v_sortype, PyObject *__pyx_v_shift, PyObject *__pyx_v_its, PyObject *__pyx_v_lits) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272SOR(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x, PyObject *__pyx_v_omega, PyObject *__pyx_v_sortype, PyObject *__pyx_v_shift, PyObject *__pyx_v_its, PyObject *__pyx_v_lits) {
PetscReal __pyx_v_comega;
MatSORType __pyx_v_csortype;
PetscInt __pyx_v_cshift;
@@ -128699,18 +136687,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *
int __pyx_t_5;
__Pyx_RefNannySetupContext("SOR", 0);
- /* "PETSc/Mat.pyx":1100
+ /* "PETSc/Mat.pyx":1118
*
- * def SOR(self, Vec b not None, Vec x not None, omega=1.0, sortype=None, shift=0.0, its=1, lits=1):
+ * def SOR(self, Vec b, Vec x, omega=1.0, sortype=None, shift=0.0, its=1, lits=1):
* cdef PetscReal comega = asReal(omega) # <<<<<<<<<<<<<<
* cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP
* if sortype is not None:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_omega); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1100, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_omega); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1118, __pyx_L1_error)
__pyx_v_comega = __pyx_t_1;
- /* "PETSc/Mat.pyx":1101
- * def SOR(self, Vec b not None, Vec x not None, omega=1.0, sortype=None, shift=0.0, its=1, lits=1):
+ /* "PETSc/Mat.pyx":1119
+ * def SOR(self, Vec b, Vec x, omega=1.0, sortype=None, shift=0.0, its=1, lits=1):
* cdef PetscReal comega = asReal(omega)
* cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP # <<<<<<<<<<<<<<
* if sortype is not None:
@@ -128718,7 +136706,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *
*/
__pyx_v_csortype = SOR_LOCAL_SYMMETRIC_SWEEP;
- /* "PETSc/Mat.pyx":1102
+ /* "PETSc/Mat.pyx":1120
* cdef PetscReal comega = asReal(omega)
* cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP
* if sortype is not None: # <<<<<<<<<<<<<<
@@ -128729,17 +136717,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/Mat.pyx":1103
+ /* "PETSc/Mat.pyx":1121
* cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP
* if sortype is not None:
* csortype = <PetscMatSORType> asInt(sortype) # <<<<<<<<<<<<<<
* cdef PetscInt cshift = asInt(shift)
* cdef PetscInt cits = asInt(its)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_sortype); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1103, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_sortype); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1121, __pyx_L1_error)
__pyx_v_csortype = ((MatSORType)__pyx_t_4);
- /* "PETSc/Mat.pyx":1102
+ /* "PETSc/Mat.pyx":1120
* cdef PetscReal comega = asReal(omega)
* cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP
* if sortype is not None: # <<<<<<<<<<<<<<
@@ -128748,49 +136736,49 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *
*/
}
- /* "PETSc/Mat.pyx":1104
+ /* "PETSc/Mat.pyx":1122
* if sortype is not None:
* csortype = <PetscMatSORType> asInt(sortype)
* cdef PetscInt cshift = asInt(shift) # <<<<<<<<<<<<<<
* cdef PetscInt cits = asInt(its)
* cdef PetscInt clits = asInt(lits)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_shift); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1104, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_shift); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1122, __pyx_L1_error)
__pyx_v_cshift = __pyx_t_4;
- /* "PETSc/Mat.pyx":1105
+ /* "PETSc/Mat.pyx":1123
* csortype = <PetscMatSORType> asInt(sortype)
* cdef PetscInt cshift = asInt(shift)
* cdef PetscInt cits = asInt(its) # <<<<<<<<<<<<<<
* cdef PetscInt clits = asInt(lits)
* CHKERR( MatSOR(self.mat, b.vec, comega, csortype, cshift, cits, clits, x.vec) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1105, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1123, __pyx_L1_error)
__pyx_v_cits = __pyx_t_4;
- /* "PETSc/Mat.pyx":1106
+ /* "PETSc/Mat.pyx":1124
* cdef PetscInt cshift = asInt(shift)
* cdef PetscInt cits = asInt(its)
* cdef PetscInt clits = asInt(lits) # <<<<<<<<<<<<<<
* CHKERR( MatSOR(self.mat, b.vec, comega, csortype, cshift, cits, clits, x.vec) )
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_lits); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1106, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_lits); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1124, __pyx_L1_error)
__pyx_v_clits = __pyx_t_4;
- /* "PETSc/Mat.pyx":1107
+ /* "PETSc/Mat.pyx":1125
* cdef PetscInt cits = asInt(its)
* cdef PetscInt clits = asInt(lits)
* CHKERR( MatSOR(self.mat, b.vec, comega, csortype, cshift, cits, clits, x.vec) ) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSOR(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_comega, __pyx_v_csortype, __pyx_v_cshift, __pyx_v_cits, __pyx_v_clits, __pyx_v_x->vec)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1107, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSOR(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_comega, __pyx_v_csortype, __pyx_v_cshift, __pyx_v_cits, __pyx_v_clits, __pyx_v_x->vec)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1125, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1099
+ /* "PETSc/Mat.pyx":1117
* # SOR
*
- * def SOR(self, Vec b not None, Vec x not None, omega=1.0, sortype=None, shift=0.0, its=1, lits=1): # <<<<<<<<<<<<<<
+ * def SOR(self, Vec b, Vec x, omega=1.0, sortype=None, shift=0.0, its=1, lits=1): # <<<<<<<<<<<<<<
* cdef PetscReal comega = asReal(omega)
* cdef PetscMatSORType csortype = SOR_LOCAL_SYMMETRIC_SWEEP
*/
@@ -128807,7 +136795,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1111
+/* "PETSc/Mat.pyx":1129
* #
*
* def getDiagonalBlock(self): # <<<<<<<<<<<<<<
@@ -128816,23 +136804,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_266SOR(struct PyPetscMatObject *
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_269getDiagonalBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_268getDiagonalBlock[] = "Mat.getDiagonalBlock(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_269getDiagonalBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getDiagonalBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_274getDiagonalBlock[] = "Mat.getDiagonalBlock(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getDiagonalBlock(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDiagonalBlock (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDiagonalBlock", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDiagonalBlock", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_268getDiagonalBlock(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_274getDiagonalBlock(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_268getDiagonalBlock(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getDiagonalBlock(struct PyPetscMatObject *__pyx_v_self) {
struct PyPetscMatObject *__pyx_v_submat = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -128840,28 +136828,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_268getDiagonalBlock(struct PyPet
int __pyx_t_2;
__Pyx_RefNannySetupContext("getDiagonalBlock", 0);
- /* "PETSc/Mat.pyx":1112
+ /* "PETSc/Mat.pyx":1130
*
* def getDiagonalBlock(self):
* cdef Mat submat = Mat() # <<<<<<<<<<<<<<
* CHKERR( MatGetDiagonalBlock(self.mat, &submat.mat) )
* PetscINCREF(submat.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1112, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_submat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1113
+ /* "PETSc/Mat.pyx":1131
* def getDiagonalBlock(self):
* cdef Mat submat = Mat()
* CHKERR( MatGetDiagonalBlock(self.mat, &submat.mat) ) # <<<<<<<<<<<<<<
* PetscINCREF(submat.obj)
* return submat
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetDiagonalBlock(__pyx_v_self->mat, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1113, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetDiagonalBlock(__pyx_v_self->mat, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1131, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1114
+ /* "PETSc/Mat.pyx":1132
* cdef Mat submat = Mat()
* CHKERR( MatGetDiagonalBlock(self.mat, &submat.mat) )
* PetscINCREF(submat.obj) # <<<<<<<<<<<<<<
@@ -128870,19 +136858,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_268getDiagonalBlock(struct PyPet
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_submat->__pyx_base.obj);
- /* "PETSc/Mat.pyx":1115
+ /* "PETSc/Mat.pyx":1133
* CHKERR( MatGetDiagonalBlock(self.mat, &submat.mat) )
* PetscINCREF(submat.obj)
* return submat # <<<<<<<<<<<<<<
*
- * def increaseOverlap(self, IS iset not None, overlap=1):
+ * def increaseOverlap(self, IS iset, overlap=1):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_submat));
__pyx_r = ((PyObject *)__pyx_v_submat);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1111
+ /* "PETSc/Mat.pyx":1129
* #
*
* def getDiagonalBlock(self): # <<<<<<<<<<<<<<
@@ -128902,18 +136890,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_268getDiagonalBlock(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1117
+/* "PETSc/Mat.pyx":1135
* return submat
*
- * def increaseOverlap(self, IS iset not None, overlap=1): # <<<<<<<<<<<<<<
+ * def increaseOverlap(self, IS iset, overlap=1): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(overlap)
* CHKERR( MatIncreaseOverlap(self.mat, 1, &iset.iset, ival) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_270increaseOverlap[] = "Mat.increaseOverlap(self, IS iset, overlap=1)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277increaseOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_276increaseOverlap[] = "Mat.increaseOverlap(self, IS iset, overlap=1)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277increaseOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_iset = 0;
PyObject *__pyx_v_overlap = 0;
PyObject *__pyx_r = 0;
@@ -128928,7 +136916,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -128937,6 +136927,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iset)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_overlap);
@@ -128944,11 +136935,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "increaseOverlap") < 0)) __PYX_ERR(33, 1117, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "increaseOverlap") < 0)) __PYX_ERR(33, 1135, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -128959,14 +136951,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("increaseOverlap", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1117, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("increaseOverlap", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1135, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.increaseOverlap", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(33, 1117, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_270increaseOverlap(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_iset, __pyx_v_overlap);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iset), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iset", 0))) __PYX_ERR(33, 1135, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_276increaseOverlap(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_iset, __pyx_v_overlap);
/* function exit code */
goto __pyx_L0;
@@ -128977,7 +136969,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap(PyObject *__p
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_270increaseOverlap(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, PyObject *__pyx_v_overlap) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_276increaseOverlap(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_iset, PyObject *__pyx_v_overlap) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -128985,29 +136977,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_270increaseOverlap(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("increaseOverlap", 0);
- /* "PETSc/Mat.pyx":1118
+ /* "PETSc/Mat.pyx":1136
*
- * def increaseOverlap(self, IS iset not None, overlap=1):
+ * def increaseOverlap(self, IS iset, overlap=1):
* cdef PetscInt ival = asInt(overlap) # <<<<<<<<<<<<<<
* CHKERR( MatIncreaseOverlap(self.mat, 1, &iset.iset, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1118, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1136, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/Mat.pyx":1119
- * def increaseOverlap(self, IS iset not None, overlap=1):
+ /* "PETSc/Mat.pyx":1137
+ * def increaseOverlap(self, IS iset, overlap=1):
* cdef PetscInt ival = asInt(overlap)
* CHKERR( MatIncreaseOverlap(self.mat, 1, &iset.iset, ival) ) # <<<<<<<<<<<<<<
*
- * def getSubMatrix(self, IS isrow not None, IS iscol=None, Mat submat=None):
+ * def createSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIncreaseOverlap(__pyx_v_self->mat, 1, (&__pyx_v_iset->iset), __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1119, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatIncreaseOverlap(__pyx_v_self->mat, 1, (&__pyx_v_iset->iset), __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1137, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1117
+ /* "PETSc/Mat.pyx":1135
* return submat
*
- * def increaseOverlap(self, IS iset not None, overlap=1): # <<<<<<<<<<<<<<
+ * def increaseOverlap(self, IS iset, overlap=1): # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(overlap)
* CHKERR( MatIncreaseOverlap(self.mat, 1, &iset.iset, ival) )
*/
@@ -129024,24 +137016,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_270increaseOverlap(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1121
+/* "PETSc/Mat.pyx":1139
* CHKERR( MatIncreaseOverlap(self.mat, 1, &iset.iset, ival) )
*
- * def getSubMatrix(self, IS isrow not None, IS iscol=None, Mat submat=None): # <<<<<<<<<<<<<<
+ * def createSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscIS ciscol = NULL
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_272getSubMatrix[] = "Mat.getSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279createSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_278createSubMatrix[] = "Mat.createSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279createSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
struct PyPetscMatObject *__pyx_v_submat = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getSubMatrix (wrapper)", 0);
+ __Pyx_RefNannySetupContext("createSubMatrix (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_isrow,&__pyx_n_s_iscol,&__pyx_n_s_submat,0};
PyObject* values[3] = {0,0,0};
@@ -129052,8 +137044,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -129062,11 +137057,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_submat);
@@ -129074,12 +137071,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSubMatrix") < 0)) __PYX_ERR(33, 1121, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSubMatrix") < 0)) __PYX_ERR(33, 1139, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -129091,16 +137090,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getSubMatrix", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1121, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSubMatrix", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1139, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.Mat.getSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1121, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 1, "iscol", 0))) __PYX_ERR(33, 1121, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_submat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "submat", 0))) __PYX_ERR(33, 1121, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_submat);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1139, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 1, "iscol", 0))) __PYX_ERR(33, 1139, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_submat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "submat", 0))) __PYX_ERR(33, 1139, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_278createSubMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_submat);
/* function exit code */
goto __pyx_L0;
@@ -129111,7 +137110,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_278createSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat) {
MatReuse __pyx_v_reuse;
IS __pyx_v_ciscol;
PyObject *__pyx_r = NULL;
@@ -129121,20 +137120,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMa
IS __pyx_t_3;
PyObject *__pyx_t_4 = NULL;
int __pyx_t_5;
- __Pyx_RefNannySetupContext("getSubMatrix", 0);
+ __Pyx_RefNannySetupContext("createSubMatrix", 0);
__Pyx_INCREF((PyObject *)__pyx_v_submat);
- /* "PETSc/Mat.pyx":1122
+ /* "PETSc/Mat.pyx":1140
*
- * def getSubMatrix(self, IS isrow not None, IS iscol=None, Mat submat=None):
+ * def createSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
* cdef PetscIS ciscol = NULL
* if iscol is not None: ciscol = iscol.iset
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":1123
- * def getSubMatrix(self, IS isrow not None, IS iscol=None, Mat submat=None):
+ /* "PETSc/Mat.pyx":1141
+ * def createSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscIS ciscol = NULL # <<<<<<<<<<<<<<
* if iscol is not None: ciscol = iscol.iset
@@ -129142,7 +137141,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMa
*/
__pyx_v_ciscol = NULL;
- /* "PETSc/Mat.pyx":1124
+ /* "PETSc/Mat.pyx":1142
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscIS ciscol = NULL
* if iscol is not None: ciscol = iscol.iset # <<<<<<<<<<<<<<
@@ -129156,27 +137155,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMa
__pyx_v_ciscol = __pyx_t_3;
}
- /* "PETSc/Mat.pyx":1125
+ /* "PETSc/Mat.pyx":1143
* cdef PetscIS ciscol = NULL
* if iscol is not None: ciscol = iscol.iset
* if submat is None: submat = Mat() # <<<<<<<<<<<<<<
* if submat.mat != NULL: reuse = MAT_REUSE_MATRIX
- * CHKERR( MatGetSubMatrix(self.mat, isrow.iset, ciscol,
+ * CHKERR( MatCreateSubMatrix(self.mat, isrow.iset, ciscol,
*/
__pyx_t_2 = (((PyObject *)__pyx_v_submat) == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1125, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_submat, ((struct PyPetscMatObject *)__pyx_t_4));
__pyx_t_4 = 0;
}
- /* "PETSc/Mat.pyx":1126
+ /* "PETSc/Mat.pyx":1144
* if iscol is not None: ciscol = iscol.iset
* if submat is None: submat = Mat()
* if submat.mat != NULL: reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
- * CHKERR( MatGetSubMatrix(self.mat, isrow.iset, ciscol,
+ * CHKERR( MatCreateSubMatrix(self.mat, isrow.iset, ciscol,
* reuse, &submat.mat) )
*/
__pyx_t_1 = ((__pyx_v_submat->mat != NULL) != 0);
@@ -129184,31 +137183,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMa
__pyx_v_reuse = MAT_REUSE_MATRIX;
}
- /* "PETSc/Mat.pyx":1127
+ /* "PETSc/Mat.pyx":1145
* if submat is None: submat = Mat()
* if submat.mat != NULL: reuse = MAT_REUSE_MATRIX
- * CHKERR( MatGetSubMatrix(self.mat, isrow.iset, ciscol, # <<<<<<<<<<<<<<
+ * CHKERR( MatCreateSubMatrix(self.mat, isrow.iset, ciscol, # <<<<<<<<<<<<<<
* reuse, &submat.mat) )
* return submat
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSubMatrix(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_ciscol, __pyx_v_reuse, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1127, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateSubMatrix(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_ciscol, __pyx_v_reuse, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1145, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1129
- * CHKERR( MatGetSubMatrix(self.mat, isrow.iset, ciscol,
+ /* "PETSc/Mat.pyx":1147
+ * CHKERR( MatCreateSubMatrix(self.mat, isrow.iset, ciscol,
* reuse, &submat.mat) )
* return submat # <<<<<<<<<<<<<<
*
- * def getSubMatrices(self, isrows not None, iscols=None, submats=None):
+ * def createSubMatrices(self, isrows, iscols=None, submats=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_submat));
__pyx_r = ((PyObject *)__pyx_v_submat);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1121
+ /* "PETSc/Mat.pyx":1139
* CHKERR( MatIncreaseOverlap(self.mat, 1, &iset.iset, ival) )
*
- * def getSubMatrix(self, IS isrow not None, IS iscol=None, Mat submat=None): # <<<<<<<<<<<<<<
+ * def createSubMatrix(self, IS isrow, IS iscol=None, Mat submat=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscIS ciscol = NULL
*/
@@ -129216,7 +137215,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMa
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_4);
- __Pyx_AddTraceback("petsc4py.PETSc.Mat.getSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_submat);
@@ -129225,24 +137224,24 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_272getSubMatrix(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1131
+/* "PETSc/Mat.pyx":1149
* return submat
*
- * def getSubMatrices(self, isrows not None, iscols=None, submats=None): # <<<<<<<<<<<<<<
+ * def createSubMatrices(self, isrows, iscols=None, submats=None): # <<<<<<<<<<<<<<
* if iscols is None: iscols = isrows
* isrows = [isrows] if isinstance(isrows, IS) else list(isrows)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getSubMatrices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_274getSubMatrices[] = "Mat.getSubMatrices(self, isrows, iscols=None, submats=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getSubMatrices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_281createSubMatrices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_280createSubMatrices[] = "Mat.createSubMatrices(self, isrows, iscols=None, submats=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_281createSubMatrices(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_isrows = 0;
PyObject *__pyx_v_iscols = 0;
PyObject *__pyx_v_submats = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getSubMatrices (wrapper)", 0);
+ __Pyx_RefNannySetupContext("createSubMatrices (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_isrows,&__pyx_n_s_iscols,&__pyx_n_s_submats,0};
PyObject* values[3] = {0,0,0};
@@ -129253,8 +137252,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getSubMatrices(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -129263,11 +137265,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getSubMatrices(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrows)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscols);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_submats);
@@ -129275,12 +137279,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getSubMatrices(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSubMatrices") < 0)) __PYX_ERR(33, 1131, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSubMatrices") < 0)) __PYX_ERR(33, 1149, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -129292,27 +137298,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_275getSubMatrices(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getSubMatrices", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1131, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSubMatrices", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1149, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.Mat.getSubMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(((PyObject *)__pyx_v_isrows) == Py_None)) {
- PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "isrows"); __PYX_ERR(33, 1131, __pyx_L1_error)
- }
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrows, __pyx_v_iscols, __pyx_v_submats);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_280createSubMatrices(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrows, __pyx_v_iscols, __pyx_v_submats);
/* function exit code */
- goto __pyx_L0;
- __pyx_L1_error:;
- __pyx_r = NULL;
- __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_isrows, PyObject *__pyx_v_iscols, PyObject *__pyx_v_submats) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280createSubMatrices(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_isrows, PyObject *__pyx_v_iscols, PyObject *__pyx_v_submats) {
Py_ssize_t __pyx_v_i;
Py_ssize_t __pyx_v_n;
MatReuse __pyx_v_reuse;
@@ -129333,14 +137332,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
IS __pyx_t_7;
int __pyx_t_8;
Mat __pyx_t_9;
- __Pyx_RefNannySetupContext("getSubMatrices", 0);
+ __Pyx_RefNannySetupContext("createSubMatrices", 0);
__Pyx_INCREF(__pyx_v_isrows);
__Pyx_INCREF(__pyx_v_iscols);
__Pyx_INCREF(__pyx_v_submats);
- /* "PETSc/Mat.pyx":1132
+ /* "PETSc/Mat.pyx":1150
*
- * def getSubMatrices(self, isrows not None, iscols=None, submats=None):
+ * def createSubMatrices(self, isrows, iscols=None, submats=None):
* if iscols is None: iscols = isrows # <<<<<<<<<<<<<<
* isrows = [isrows] if isinstance(isrows, IS) else list(isrows)
* iscols = [iscols] if isinstance(iscols, IS) else list(iscols)
@@ -129352,8 +137351,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__Pyx_DECREF_SET(__pyx_v_iscols, __pyx_v_isrows);
}
- /* "PETSc/Mat.pyx":1133
- * def getSubMatrices(self, isrows not None, iscols=None, submats=None):
+ /* "PETSc/Mat.pyx":1151
+ * def createSubMatrices(self, isrows, iscols=None, submats=None):
* if iscols is None: iscols = isrows
* isrows = [isrows] if isinstance(isrows, IS) else list(isrows) # <<<<<<<<<<<<<<
* iscols = [iscols] if isinstance(iscols, IS) else list(iscols)
@@ -129361,7 +137360,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_t_2 = __Pyx_TypeCheck(__pyx_v_isrows, __pyx_ptype_8petsc4py_5PETSc_IS);
if ((__pyx_t_2 != 0)) {
- __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1133, __pyx_L1_error)
+ __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1151, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_isrows);
__Pyx_GIVEREF(__pyx_v_isrows);
@@ -129369,7 +137368,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_t_3 = __pyx_t_4;
__pyx_t_4 = 0;
} else {
- __pyx_t_4 = PySequence_List(__pyx_v_isrows); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1133, __pyx_L1_error)
+ __pyx_t_4 = PySequence_List(__pyx_v_isrows); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1151, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = __pyx_t_4;
__pyx_t_4 = 0;
@@ -129377,7 +137376,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__Pyx_DECREF_SET(__pyx_v_isrows, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1134
+ /* "PETSc/Mat.pyx":1152
* if iscols is None: iscols = isrows
* isrows = [isrows] if isinstance(isrows, IS) else list(isrows)
* iscols = [iscols] if isinstance(iscols, IS) else list(iscols) # <<<<<<<<<<<<<<
@@ -129386,7 +137385,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_t_2 = __Pyx_TypeCheck(__pyx_v_iscols, __pyx_ptype_8petsc4py_5PETSc_IS);
if ((__pyx_t_2 != 0)) {
- __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1134, __pyx_L1_error)
+ __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1152, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_iscols);
__Pyx_GIVEREF(__pyx_v_iscols);
@@ -129394,7 +137393,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_t_3 = __pyx_t_4;
__pyx_t_4 = 0;
} else {
- __pyx_t_4 = PySequence_List(__pyx_v_iscols); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1134, __pyx_L1_error)
+ __pyx_t_4 = PySequence_List(__pyx_v_iscols); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1152, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = __pyx_t_4;
__pyx_t_4 = 0;
@@ -129402,7 +137401,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__Pyx_DECREF_SET(__pyx_v_iscols, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1135
+ /* "PETSc/Mat.pyx":1153
* isrows = [isrows] if isinstance(isrows, IS) else list(isrows)
* iscols = [iscols] if isinstance(iscols, IS) else list(iscols)
* assert len(isrows) == len(iscols) # <<<<<<<<<<<<<<
@@ -129411,26 +137410,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_5 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1135, __pyx_L1_error)
- __pyx_t_6 = PyObject_Length(__pyx_v_iscols); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(33, 1135, __pyx_L1_error)
+ __pyx_t_5 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(33, 1153, __pyx_L1_error)
+ __pyx_t_6 = PyObject_Length(__pyx_v_iscols); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(33, 1153, __pyx_L1_error)
if (unlikely(!((__pyx_t_5 == __pyx_t_6) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(33, 1135, __pyx_L1_error)
+ __PYX_ERR(33, 1153, __pyx_L1_error)
}
}
#endif
- /* "PETSc/Mat.pyx":1136
+ /* "PETSc/Mat.pyx":1154
* iscols = [iscols] if isinstance(iscols, IS) else list(iscols)
* assert len(isrows) == len(iscols)
* cdef Py_ssize_t i, n = len(isrows) # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscIS *cisrows = NULL
*/
- __pyx_t_6 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(33, 1136, __pyx_L1_error)
+ __pyx_t_6 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(33, 1154, __pyx_L1_error)
__pyx_v_n = __pyx_t_6;
- /* "PETSc/Mat.pyx":1137
+ /* "PETSc/Mat.pyx":1155
* assert len(isrows) == len(iscols)
* cdef Py_ssize_t i, n = len(isrows)
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
@@ -129439,7 +137438,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":1138
+ /* "PETSc/Mat.pyx":1156
* cdef Py_ssize_t i, n = len(isrows)
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscIS *cisrows = NULL # <<<<<<<<<<<<<<
@@ -129448,7 +137447,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_v_cisrows = NULL;
- /* "PETSc/Mat.pyx":1139
+ /* "PETSc/Mat.pyx":1157
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscIS *cisrows = NULL
* cdef PetscIS *ciscols = NULL # <<<<<<<<<<<<<<
@@ -129457,7 +137456,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_v_ciscols = NULL;
- /* "PETSc/Mat.pyx":1140
+ /* "PETSc/Mat.pyx":1158
* cdef PetscIS *cisrows = NULL
* cdef PetscIS *ciscols = NULL
* cdef PetscMat *cmats = NULL # <<<<<<<<<<<<<<
@@ -129466,22 +137465,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_v_cmats = NULL;
- /* "PETSc/Mat.pyx":1143
+ /* "PETSc/Mat.pyx":1161
* cdef object tmp1, tmp2
* cdef Mat mat
* tmp1 = oarray_p(empty_p(n), NULL, <void**>&cisrows) # <<<<<<<<<<<<<<
* for i from 0 <= i < n: cisrows[i] = (<IS?>isrows[i]).iset
* tmp2 = oarray_p(empty_p(n), NULL, <void**>&ciscols)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1143, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1161, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_3, NULL, ((void **)(&__pyx_v_cisrows)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1143, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_3, NULL, ((void **)(&__pyx_v_cisrows)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1161, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_tmp1 = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/Mat.pyx":1144
+ /* "PETSc/Mat.pyx":1162
* cdef Mat mat
* tmp1 = oarray_p(empty_p(n), NULL, <void**>&cisrows)
* for i from 0 <= i < n: cisrows[i] = (<IS?>isrows[i]).iset # <<<<<<<<<<<<<<
@@ -129490,30 +137489,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_t_6 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_6; __pyx_v_i++) {
- __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_isrows, __pyx_v_i, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1144, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_isrows, __pyx_v_i, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1162, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- if (!(likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(33, 1144, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(33, 1162, __pyx_L1_error)
__pyx_t_7 = ((struct PyPetscISObject *)__pyx_t_4)->iset;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
(__pyx_v_cisrows[__pyx_v_i]) = __pyx_t_7;
}
- /* "PETSc/Mat.pyx":1145
+ /* "PETSc/Mat.pyx":1163
* tmp1 = oarray_p(empty_p(n), NULL, <void**>&cisrows)
* for i from 0 <= i < n: cisrows[i] = (<IS?>isrows[i]).iset
* tmp2 = oarray_p(empty_p(n), NULL, <void**>&ciscols) # <<<<<<<<<<<<<<
* for i from 0 <= i < n: ciscols[i] = (<IS?>iscols[i]).iset
* if submats is not None:
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1145, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1163, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_4, NULL, ((void **)(&__pyx_v_ciscols)))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1145, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_4, NULL, ((void **)(&__pyx_v_ciscols)))); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1163, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_tmp2 = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1146
+ /* "PETSc/Mat.pyx":1164
* for i from 0 <= i < n: cisrows[i] = (<IS?>isrows[i]).iset
* tmp2 = oarray_p(empty_p(n), NULL, <void**>&ciscols)
* for i from 0 <= i < n: ciscols[i] = (<IS?>iscols[i]).iset # <<<<<<<<<<<<<<
@@ -129522,15 +137521,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_t_6 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_6; __pyx_v_i++) {
- __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_iscols, __pyx_v_i, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1146, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_iscols, __pyx_v_i, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1164, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(33, 1146, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(33, 1164, __pyx_L1_error)
__pyx_t_7 = ((struct PyPetscISObject *)__pyx_t_3)->iset;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
(__pyx_v_ciscols[__pyx_v_i]) = __pyx_t_7;
}
- /* "PETSc/Mat.pyx":1147
+ /* "PETSc/Mat.pyx":1165
* tmp2 = oarray_p(empty_p(n), NULL, <void**>&ciscols)
* for i from 0 <= i < n: ciscols[i] = (<IS?>iscols[i]).iset
* if submats is not None: # <<<<<<<<<<<<<<
@@ -129541,7 +137540,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/Mat.pyx":1148
+ /* "PETSc/Mat.pyx":1166
* for i from 0 <= i < n: ciscols[i] = (<IS?>iscols[i]).iset
* if submats is not None:
* reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
@@ -129550,19 +137549,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
__pyx_v_reuse = MAT_REUSE_MATRIX;
- /* "PETSc/Mat.pyx":1149
+ /* "PETSc/Mat.pyx":1167
* if submats is not None:
* reuse = MAT_REUSE_MATRIX
* submats = list(submats) # <<<<<<<<<<<<<<
* assert len(submats) == len(isrows)
* CHKERR( PetscMalloc(<size_t>(n+1)*sizeof(PetscMat), &cmats) )
*/
- __pyx_t_3 = PySequence_List(__pyx_v_submats); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1149, __pyx_L1_error)
+ __pyx_t_3 = PySequence_List(__pyx_v_submats); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1167, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_submats, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1150
+ /* "PETSc/Mat.pyx":1168
* reuse = MAT_REUSE_MATRIX
* submats = list(submats)
* assert len(submats) == len(isrows) # <<<<<<<<<<<<<<
@@ -129571,42 +137570,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_6 = PyObject_Length(__pyx_v_submats); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(33, 1150, __pyx_L1_error)
- __pyx_t_5 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1150, __pyx_L1_error)
+ __pyx_t_6 = PyObject_Length(__pyx_v_submats); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(33, 1168, __pyx_L1_error)
+ __pyx_t_5 = PyObject_Length(__pyx_v_isrows); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(33, 1168, __pyx_L1_error)
if (unlikely(!((__pyx_t_6 == __pyx_t_5) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(33, 1150, __pyx_L1_error)
+ __PYX_ERR(33, 1168, __pyx_L1_error)
}
}
#endif
- /* "PETSc/Mat.pyx":1151
+ /* "PETSc/Mat.pyx":1169
* submats = list(submats)
* assert len(submats) == len(isrows)
* CHKERR( PetscMalloc(<size_t>(n+1)*sizeof(PetscMat), &cmats) ) # <<<<<<<<<<<<<<
* for i from 0 <= i < n: cmats[i] = (<Mat?>submats[i]).mat
- * CHKERR( MatGetSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
+ * CHKERR( MatCreateSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((((size_t)(__pyx_v_n + 1)) * (sizeof(Mat))), (&__pyx_v_cmats))); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(33, 1151, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc((((size_t)(__pyx_v_n + 1)) * (sizeof(Mat))), (&__pyx_v_cmats))); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(33, 1169, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1152
+ /* "PETSc/Mat.pyx":1170
* assert len(submats) == len(isrows)
* CHKERR( PetscMalloc(<size_t>(n+1)*sizeof(PetscMat), &cmats) )
* for i from 0 <= i < n: cmats[i] = (<Mat?>submats[i]).mat # <<<<<<<<<<<<<<
- * CHKERR( MatGetSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
+ * CHKERR( MatCreateSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
* for i from 0 <= i < n: PetscINCREF(<PetscObject*>&cmats[i])
*/
__pyx_t_5 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_5; __pyx_v_i++) {
- __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_submats, __pyx_v_i, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1152, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_submats, __pyx_v_i, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1170, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_Mat)))) __PYX_ERR(33, 1152, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_Mat)))) __PYX_ERR(33, 1170, __pyx_L1_error)
__pyx_t_9 = ((struct PyPetscMatObject *)__pyx_t_3)->mat;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
(__pyx_v_cmats[__pyx_v_i]) = __pyx_t_9;
}
- /* "PETSc/Mat.pyx":1147
+ /* "PETSc/Mat.pyx":1165
* tmp2 = oarray_p(empty_p(n), NULL, <void**>&ciscols)
* for i from 0 <= i < n: ciscols[i] = (<IS?>iscols[i]).iset
* if submats is not None: # <<<<<<<<<<<<<<
@@ -129615,18 +137614,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
}
- /* "PETSc/Mat.pyx":1153
+ /* "PETSc/Mat.pyx":1171
* CHKERR( PetscMalloc(<size_t>(n+1)*sizeof(PetscMat), &cmats) )
* for i from 0 <= i < n: cmats[i] = (<Mat?>submats[i]).mat
- * CHKERR( MatGetSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) ) # <<<<<<<<<<<<<<
+ * CHKERR( MatCreateSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) ) # <<<<<<<<<<<<<<
* for i from 0 <= i < n: PetscINCREF(<PetscObject*>&cmats[i])
* if reuse == MAT_INITIAL_MATRIX:
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSubMatrices(__pyx_v_self->mat, ((PetscInt)__pyx_v_n), __pyx_v_cisrows, __pyx_v_ciscols, __pyx_v_reuse, (&__pyx_v_cmats))); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(33, 1153, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCreateSubMatrices(__pyx_v_self->mat, ((PetscInt)__pyx_v_n), __pyx_v_cisrows, __pyx_v_ciscols, __pyx_v_reuse, (&__pyx_v_cmats))); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(33, 1171, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1154
+ /* "PETSc/Mat.pyx":1172
* for i from 0 <= i < n: cmats[i] = (<Mat?>submats[i]).mat
- * CHKERR( MatGetSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
+ * CHKERR( MatCreateSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
* for i from 0 <= i < n: PetscINCREF(<PetscObject*>&cmats[i]) # <<<<<<<<<<<<<<
* if reuse == MAT_INITIAL_MATRIX:
* submats = [None] * n
@@ -129636,8 +137635,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_f_8petsc4py_5PETSc_PetscINCREF(((PetscObject *)(&(__pyx_v_cmats[__pyx_v_i]))));
}
- /* "PETSc/Mat.pyx":1155
- * CHKERR( MatGetSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
+ /* "PETSc/Mat.pyx":1173
+ * CHKERR( MatCreateSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
* for i from 0 <= i < n: PetscINCREF(<PetscObject*>&cmats[i])
* if reuse == MAT_INITIAL_MATRIX: # <<<<<<<<<<<<<<
* submats = [None] * n
@@ -129646,14 +137645,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_t_1 = ((__pyx_v_reuse == MAT_INITIAL_MATRIX) != 0);
if (__pyx_t_1) {
- /* "PETSc/Mat.pyx":1156
+ /* "PETSc/Mat.pyx":1174
* for i from 0 <= i < n: PetscINCREF(<PetscObject*>&cmats[i])
* if reuse == MAT_INITIAL_MATRIX:
* submats = [None] * n # <<<<<<<<<<<<<<
* for i from 0 <= i < n:
* submats[i] = mat = Mat()
*/
- __pyx_t_3 = PyList_New(1 * ((__pyx_v_n<0) ? 0:__pyx_v_n)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1156, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(1 * ((__pyx_v_n<0) ? 0:__pyx_v_n)); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1174, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
{ Py_ssize_t __pyx_temp;
for (__pyx_temp=0; __pyx_temp < __pyx_v_n; __pyx_temp++) {
@@ -129665,7 +137664,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__Pyx_DECREF_SET(__pyx_v_submats, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1157
+ /* "PETSc/Mat.pyx":1175
* if reuse == MAT_INITIAL_MATRIX:
* submats = [None] * n
* for i from 0 <= i < n: # <<<<<<<<<<<<<<
@@ -129675,21 +137674,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_t_5 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_5; __pyx_v_i++) {
- /* "PETSc/Mat.pyx":1158
+ /* "PETSc/Mat.pyx":1176
* submats = [None] * n
* for i from 0 <= i < n:
* submats[i] = mat = Mat() # <<<<<<<<<<<<<<
* mat.mat = cmats[i]
* CHKERR( MatDestroyMatrices(<PetscInt>n, &cmats) )
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1158, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1176, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (unlikely(__Pyx_SetItemInt(__pyx_v_submats, __pyx_v_i, __pyx_t_3, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1) < 0)) __PYX_ERR(33, 1158, __pyx_L1_error)
+ if (unlikely(__Pyx_SetItemInt(__pyx_v_submats, __pyx_v_i, __pyx_t_3, Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1) < 0)) __PYX_ERR(33, 1176, __pyx_L1_error)
__Pyx_INCREF(__pyx_t_3);
__Pyx_XDECREF_SET(__pyx_v_mat, ((struct PyPetscMatObject *)__pyx_t_3));
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1159
+ /* "PETSc/Mat.pyx":1177
* for i from 0 <= i < n:
* submats[i] = mat = Mat()
* mat.mat = cmats[i] # <<<<<<<<<<<<<<
@@ -129699,8 +137698,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_v_mat->mat = (__pyx_v_cmats[__pyx_v_i]);
}
- /* "PETSc/Mat.pyx":1155
- * CHKERR( MatGetSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
+ /* "PETSc/Mat.pyx":1173
+ * CHKERR( MatCreateSubMatrices(self.mat, <PetscInt>n, cisrows, ciscols, reuse, &cmats) )
* for i from 0 <= i < n: PetscINCREF(<PetscObject*>&cmats[i])
* if reuse == MAT_INITIAL_MATRIX: # <<<<<<<<<<<<<<
* submats = [None] * n
@@ -129708,16 +137707,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
*/
}
- /* "PETSc/Mat.pyx":1160
+ /* "PETSc/Mat.pyx":1178
* submats[i] = mat = Mat()
* mat.mat = cmats[i]
* CHKERR( MatDestroyMatrices(<PetscInt>n, &cmats) ) # <<<<<<<<<<<<<<
* return submats
*
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDestroyMatrices(((PetscInt)__pyx_v_n), (&__pyx_v_cmats))); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(33, 1160, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDestroyMatrices(((PetscInt)__pyx_v_n), (&__pyx_v_cmats))); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(33, 1178, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1161
+ /* "PETSc/Mat.pyx":1179
* mat.mat = cmats[i]
* CHKERR( MatDestroyMatrices(<PetscInt>n, &cmats) )
* return submats # <<<<<<<<<<<<<<
@@ -129729,10 +137728,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_r = __pyx_v_submats;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1131
+ /* "PETSc/Mat.pyx":1149
* return submat
*
- * def getSubMatrices(self, isrows not None, iscols=None, submats=None): # <<<<<<<<<<<<<<
+ * def createSubMatrices(self, isrows, iscols=None, submats=None): # <<<<<<<<<<<<<<
* if iscols is None: iscols = isrows
* isrows = [isrows] if isinstance(isrows, IS) else list(isrows)
*/
@@ -129741,7 +137740,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
- __Pyx_AddTraceback("petsc4py.PETSc.Mat.getSubMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.createSubMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_tmp1);
@@ -129755,18 +137754,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_274getSubMatrices(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1165
+/* "PETSc/Mat.pyx":1183
* #
*
- * def getLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat=None): # <<<<<<<<<<<<<<
+ * def getLocalSubMatrix(self, IS isrow, IS iscol, Mat submat=None): # <<<<<<<<<<<<<<
* if submat is None: submat = Mat()
* else: CHKERR( MatDestroy(&submat.mat) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix[] = "Mat.getLocalSubMatrix(self, IS isrow, IS iscol, Mat submat=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_283getLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_282getLocalSubMatrix[] = "Mat.getLocalSubMatrix(self, IS isrow, IS iscol, Mat submat=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_283getLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
struct PyPetscMatObject *__pyx_v_submat = 0;
@@ -129782,8 +137781,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -129792,11 +137794,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("getLocalSubMatrix", 0, 2, 3, 1); __PYX_ERR(33, 1165, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLocalSubMatrix", 0, 2, 3, 1); __PYX_ERR(33, 1183, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_submat);
@@ -129804,11 +137808,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLocalSubMatrix") < 0)) __PYX_ERR(33, 1165, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLocalSubMatrix") < 0)) __PYX_ERR(33, 1183, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -129821,16 +137826,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getLocalSubMatrix", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1165, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLocalSubMatrix", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1183, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getLocalSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1165, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1165, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_submat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "submat", 0))) __PYX_ERR(33, 1165, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_submat);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1183, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1183, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_submat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "submat", 0))) __PYX_ERR(33, 1183, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_282getLocalSubMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_submat);
/* function exit code */
goto __pyx_L0;
@@ -129841,7 +137846,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix(PyObject *_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_282getLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -129851,9 +137856,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix(struct PyPe
__Pyx_RefNannySetupContext("getLocalSubMatrix", 0);
__Pyx_INCREF((PyObject *)__pyx_v_submat);
- /* "PETSc/Mat.pyx":1166
+ /* "PETSc/Mat.pyx":1184
*
- * def getLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat=None):
+ * def getLocalSubMatrix(self, IS isrow, IS iscol, Mat submat=None):
* if submat is None: submat = Mat() # <<<<<<<<<<<<<<
* else: CHKERR( MatDestroy(&submat.mat) )
* CHKERR( MatGetLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) )
@@ -129861,50 +137866,50 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix(struct PyPe
__pyx_t_1 = (((PyObject *)__pyx_v_submat) == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1166, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_submat, ((struct PyPetscMatObject *)__pyx_t_3));
__pyx_t_3 = 0;
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":1167
- * def getLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat=None):
+ /* "PETSc/Mat.pyx":1185
+ * def getLocalSubMatrix(self, IS isrow, IS iscol, Mat submat=None):
* if submat is None: submat = Mat()
* else: CHKERR( MatDestroy(&submat.mat) ) # <<<<<<<<<<<<<<
* CHKERR( MatGetLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) )
* return submat
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDestroy((&__pyx_v_submat->mat))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1167, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDestroy((&__pyx_v_submat->mat))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1185, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":1168
+ /* "PETSc/Mat.pyx":1186
* if submat is None: submat = Mat()
* else: CHKERR( MatDestroy(&submat.mat) )
* CHKERR( MatGetLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) ) # <<<<<<<<<<<<<<
* return submat
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSubMatrix(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1168, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSubMatrix(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1186, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1169
+ /* "PETSc/Mat.pyx":1187
* else: CHKERR( MatDestroy(&submat.mat) )
* CHKERR( MatGetLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) )
* return submat # <<<<<<<<<<<<<<
*
- * def restoreLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat not None):
+ * def restoreLocalSubMatrix(self, IS isrow, IS iscol, Mat submat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_submat));
__pyx_r = ((PyObject *)__pyx_v_submat);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1165
+ /* "PETSc/Mat.pyx":1183
* #
*
- * def getLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat=None): # <<<<<<<<<<<<<<
+ * def getLocalSubMatrix(self, IS isrow, IS iscol, Mat submat=None): # <<<<<<<<<<<<<<
* if submat is None: submat = Mat()
* else: CHKERR( MatDestroy(&submat.mat) )
*/
@@ -129921,18 +137926,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1171
+/* "PETSc/Mat.pyx":1189
* return submat
*
- * def restoreLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat not None): # <<<<<<<<<<<<<<
+ * def restoreLocalSubMatrix(self, IS isrow, IS iscol, Mat submat): # <<<<<<<<<<<<<<
* CHKERR( MatRestoreLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279restoreLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_278restoreLocalSubMatrix[] = "Mat.restoreLocalSubMatrix(self, IS isrow, IS iscol, Mat submat)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279restoreLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_285restoreLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_284restoreLocalSubMatrix[] = "Mat.restoreLocalSubMatrix(self, IS isrow, IS iscol, Mat submat)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_285restoreLocalSubMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
struct PyPetscMatObject *__pyx_v_submat = 0;
@@ -129947,8 +137952,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279restoreLocalSubMatrix(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -129957,19 +137965,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279restoreLocalSubMatrix(PyObjec
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("restoreLocalSubMatrix", 1, 3, 3, 1); __PYX_ERR(33, 1171, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("restoreLocalSubMatrix", 1, 3, 3, 1); __PYX_ERR(33, 1189, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_submat)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("restoreLocalSubMatrix", 1, 3, 3, 2); __PYX_ERR(33, 1171, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("restoreLocalSubMatrix", 1, 3, 3, 2); __PYX_ERR(33, 1189, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "restoreLocalSubMatrix") < 0)) __PYX_ERR(33, 1171, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "restoreLocalSubMatrix") < 0)) __PYX_ERR(33, 1189, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -129984,16 +137994,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279restoreLocalSubMatrix(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("restoreLocalSubMatrix", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1171, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("restoreLocalSubMatrix", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1189, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.restoreLocalSubMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1171, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1171, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_submat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "submat", 0))) __PYX_ERR(33, 1171, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_278restoreLocalSubMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_submat);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1189, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1189, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_submat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "submat", 0))) __PYX_ERR(33, 1189, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_284restoreLocalSubMatrix(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_submat);
/* function exit code */
goto __pyx_L0;
@@ -130004,25 +138014,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_279restoreLocalSubMatrix(PyObjec
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_278restoreLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_284restoreLocalSubMatrix(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, struct PyPetscMatObject *__pyx_v_submat) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("restoreLocalSubMatrix", 0);
- /* "PETSc/Mat.pyx":1172
+ /* "PETSc/Mat.pyx":1190
*
- * def restoreLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat not None):
+ * def restoreLocalSubMatrix(self, IS isrow, IS iscol, Mat submat):
* CHKERR( MatRestoreLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) ) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreLocalSubMatrix(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1172, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatRestoreLocalSubMatrix(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_submat->mat))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1190, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1171
+ /* "PETSc/Mat.pyx":1189
* return submat
*
- * def restoreLocalSubMatrix(self, IS isrow not None, IS iscol not None, Mat submat not None): # <<<<<<<<<<<<<<
+ * def restoreLocalSubMatrix(self, IS isrow, IS iscol, Mat submat): # <<<<<<<<<<<<<<
* CHKERR( MatRestoreLocalSubMatrix(self.mat, isrow.iset, iscol.iset, &submat.mat) )
*
*/
@@ -130039,7 +138049,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_278restoreLocalSubMatrix(struct
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1176
+/* "PETSc/Mat.pyx":1194
* #
*
* def norm(self, norm_type=None): # <<<<<<<<<<<<<<
@@ -130048,9 +138058,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_278restoreLocalSubMatrix(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_281norm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_280norm[] = "Mat.norm(self, norm_type=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_281norm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_287norm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_286norm[] = "Mat.norm(self, norm_type=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_287norm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_norm_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -130064,6 +138074,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_281norm(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130076,11 +138087,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_281norm(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "norm") < 0)) __PYX_ERR(33, 1176, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "norm") < 0)) __PYX_ERR(33, 1194, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130089,20 +138101,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_281norm(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("norm", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1176, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("norm", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1194, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.norm", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_280norm(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_norm_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_286norm(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_norm_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_norm_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_286norm(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_norm_type) {
NormType __pyx_v_norm_1_2;
NormType __pyx_v_ntype;
PetscReal __pyx_v_rval[2];
@@ -130117,7 +138129,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
PyObject *__pyx_t_7 = NULL;
__Pyx_RefNannySetupContext("norm", 0);
- /* "PETSc/Mat.pyx":1177
+ /* "PETSc/Mat.pyx":1195
*
* def norm(self, norm_type=None):
* cdef PetscNormType norm_1_2 = PETSC_NORM_1_AND_2 # <<<<<<<<<<<<<<
@@ -130126,7 +138138,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
*/
__pyx_v_norm_1_2 = NORM_1_AND_2;
- /* "PETSc/Mat.pyx":1178
+ /* "PETSc/Mat.pyx":1196
* def norm(self, norm_type=None):
* cdef PetscNormType norm_1_2 = PETSC_NORM_1_AND_2
* cdef PetscNormType ntype = PETSC_NORM_FROBENIUS # <<<<<<<<<<<<<<
@@ -130135,7 +138147,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
*/
__pyx_v_ntype = NORM_FROBENIUS;
- /* "PETSc/Mat.pyx":1179
+ /* "PETSc/Mat.pyx":1197
* cdef PetscNormType norm_1_2 = PETSC_NORM_1_AND_2
* cdef PetscNormType ntype = PETSC_NORM_FROBENIUS
* if norm_type is not None: ntype = norm_type # <<<<<<<<<<<<<<
@@ -130145,20 +138157,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
__pyx_t_1 = (__pyx_v_norm_type != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = ((NormType)__Pyx_PyInt_As_NormType(__pyx_v_norm_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1179, __pyx_L1_error)
+ __pyx_t_3 = ((NormType)__Pyx_PyInt_As_NormType(__pyx_v_norm_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1197, __pyx_L1_error)
__pyx_v_ntype = __pyx_t_3;
}
- /* "PETSc/Mat.pyx":1181
+ /* "PETSc/Mat.pyx":1199
* if norm_type is not None: ntype = norm_type
* cdef PetscReal rval[2]
* CHKERR( MatNorm(self.mat, ntype, rval) ) # <<<<<<<<<<<<<<
* if ntype != norm_1_2: return toReal(rval[0])
* else: return (toReal(rval[0]), toReal(rval[1]))
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNorm(__pyx_v_self->mat, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1181, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNorm(__pyx_v_self->mat, __pyx_v_ntype, __pyx_v_rval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1199, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1182
+ /* "PETSc/Mat.pyx":1200
* cdef PetscReal rval[2]
* CHKERR( MatNorm(self.mat, ntype, rval) )
* if ntype != norm_1_2: return toReal(rval[0]) # <<<<<<<<<<<<<<
@@ -130168,14 +138180,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
__pyx_t_2 = ((__pyx_v_ntype != __pyx_v_norm_1_2) != 0);
if (__pyx_t_2) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1182, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1200, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":1183
+ /* "PETSc/Mat.pyx":1201
* CHKERR( MatNorm(self.mat, ntype, rval) )
* if ntype != norm_1_2: return toReal(rval[0])
* else: return (toReal(rval[0]), toReal(rval[1])) # <<<<<<<<<<<<<<
@@ -130184,11 +138196,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
*/
/*else*/ {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1183, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[0])); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[1])); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 1183, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_toReal((__pyx_v_rval[1])); if (unlikely(!__pyx_t_6)) __PYX_ERR(33, 1201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 1183, __pyx_L1_error)
+ __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(33, 1201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5);
@@ -130201,7 +138213,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
goto __pyx_L0;
}
- /* "PETSc/Mat.pyx":1176
+ /* "PETSc/Mat.pyx":1194
* #
*
* def norm(self, norm_type=None): # <<<<<<<<<<<<<<
@@ -130222,7 +138234,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1185
+/* "PETSc/Mat.pyx":1203
* else: return (toReal(rval[0]), toReal(rval[1]))
*
* def scale(self, alpha): # <<<<<<<<<<<<<<
@@ -130231,9 +138243,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_280norm(struct PyPetscMatObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_283scale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_282scale[] = "Mat.scale(self, alpha)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_283scale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289scale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_288scale[] = "Mat.scale(self, alpha)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289scale(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_alpha = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -130246,6 +138258,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_283scale(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130256,7 +138269,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_283scale(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scale") < 0)) __PYX_ERR(33, 1185, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "scale") < 0)) __PYX_ERR(33, 1203, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -130267,20 +138280,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_283scale(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("scale", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1185, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("scale", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1203, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.scale", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_282scale(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_288scale(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_282scale(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_288scale(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha) {
PetscScalar __pyx_v_sval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -130288,26 +138301,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_282scale(struct PyPetscMatObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("scale", 0);
- /* "PETSc/Mat.pyx":1186
+ /* "PETSc/Mat.pyx":1204
*
* def scale(self, alpha):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( MatScale(self.mat, sval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1186, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 1204, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
- /* "PETSc/Mat.pyx":1187
+ /* "PETSc/Mat.pyx":1205
* def scale(self, alpha):
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( MatScale(self.mat, sval) ) # <<<<<<<<<<<<<<
*
* def shift(self, alpha):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatScale(__pyx_v_self->mat, __pyx_v_sval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1187, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatScale(__pyx_v_self->mat, __pyx_v_sval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1205, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1185
+ /* "PETSc/Mat.pyx":1203
* else: return (toReal(rval[0]), toReal(rval[1]))
*
* def scale(self, alpha): # <<<<<<<<<<<<<<
@@ -130327,7 +138340,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_282scale(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1189
+/* "PETSc/Mat.pyx":1207
* CHKERR( MatScale(self.mat, sval) )
*
* def shift(self, alpha): # <<<<<<<<<<<<<<
@@ -130336,9 +138349,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_282scale(struct PyPetscMatObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_285shift(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_284shift[] = "Mat.shift(self, alpha)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_285shift(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291shift(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_290shift[] = "Mat.shift(self, alpha)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291shift(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_alpha = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -130351,6 +138364,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_285shift(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130361,7 +138375,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_285shift(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "shift") < 0)) __PYX_ERR(33, 1189, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "shift") < 0)) __PYX_ERR(33, 1207, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -130372,20 +138386,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_285shift(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("shift", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1189, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("shift", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1207, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.shift", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_284shift(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_290shift(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_284shift(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_290shift(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha) {
PetscScalar __pyx_v_sval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -130393,26 +138407,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_284shift(struct PyPetscMatObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("shift", 0);
- /* "PETSc/Mat.pyx":1190
+ /* "PETSc/Mat.pyx":1208
*
* def shift(self, alpha):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* CHKERR( MatShift(self.mat, sval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1190, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 1208, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
- /* "PETSc/Mat.pyx":1191
+ /* "PETSc/Mat.pyx":1209
* def shift(self, alpha):
* cdef PetscScalar sval = asScalar(alpha)
* CHKERR( MatShift(self.mat, sval) ) # <<<<<<<<<<<<<<
*
* def chop(self, tol):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatShift(__pyx_v_self->mat, __pyx_v_sval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1191, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatShift(__pyx_v_self->mat, __pyx_v_sval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1209, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1189
+ /* "PETSc/Mat.pyx":1207
* CHKERR( MatScale(self.mat, sval) )
*
* def shift(self, alpha): # <<<<<<<<<<<<<<
@@ -130432,7 +138446,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_284shift(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1193
+/* "PETSc/Mat.pyx":1211
* CHKERR( MatShift(self.mat, sval) )
*
* def chop(self, tol): # <<<<<<<<<<<<<<
@@ -130441,9 +138455,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_284shift(struct PyPetscMatObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_287chop(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_286chop[] = "Mat.chop(self, tol)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_287chop(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293chop(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_292chop[] = "Mat.chop(self, tol)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293chop(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_tol = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -130456,6 +138470,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_287chop(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130466,7 +138481,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_287chop(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "chop") < 0)) __PYX_ERR(33, 1193, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "chop") < 0)) __PYX_ERR(33, 1211, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -130477,20 +138492,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_287chop(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("chop", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1193, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("chop", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1211, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.chop", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_286chop(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_tol);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_292chop(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_tol);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_286chop(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_tol) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292chop(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_tol) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -130498,26 +138513,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_286chop(struct PyPetscMatObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("chop", 0);
- /* "PETSc/Mat.pyx":1194
+ /* "PETSc/Mat.pyx":1212
*
* def chop(self, tol):
* cdef PetscReal rval = asReal(tol) # <<<<<<<<<<<<<<
* CHKERR( MatChop(self.mat, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1194, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_tol); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1212, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/Mat.pyx":1195
+ /* "PETSc/Mat.pyx":1213
* def chop(self, tol):
* cdef PetscReal rval = asReal(tol)
* CHKERR( MatChop(self.mat, rval) ) # <<<<<<<<<<<<<<
*
- * def axpy(self, alpha, Mat X not None, structure=None):
+ * def axpy(self, alpha, Mat X, structure=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatChop(__pyx_v_self->mat, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1195, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatChop(__pyx_v_self->mat, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1213, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1193
+ /* "PETSc/Mat.pyx":1211
* CHKERR( MatShift(self.mat, sval) )
*
* def chop(self, tol): # <<<<<<<<<<<<<<
@@ -130537,18 +138552,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_286chop(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1197
+/* "PETSc/Mat.pyx":1215
* CHKERR( MatChop(self.mat, rval) )
*
- * def axpy(self, alpha, Mat X not None, structure=None): # <<<<<<<<<<<<<<
+ * def axpy(self, alpha, Mat X, structure=None): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_288axpy[] = "Mat.axpy(self, alpha, Mat X, structure=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295axpy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_294axpy[] = "Mat.axpy(self, alpha, Mat X, structure=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295axpy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_alpha = 0;
struct PyPetscMatObject *__pyx_v_X = 0;
PyObject *__pyx_v_structure = 0;
@@ -130564,8 +138579,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130574,11 +138592,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_X)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("axpy", 0, 2, 3, 1); __PYX_ERR(33, 1197, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("axpy", 0, 2, 3, 1); __PYX_ERR(33, 1215, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_structure);
@@ -130586,11 +138606,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "axpy") < 0)) __PYX_ERR(33, 1197, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "axpy") < 0)) __PYX_ERR(33, 1215, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -130603,14 +138624,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("axpy", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1197, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("axpy", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1215, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.axpy", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_X), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "X", 0))) __PYX_ERR(33, 1197, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_288axpy(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha, __pyx_v_X, __pyx_v_structure);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_X), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "X", 0))) __PYX_ERR(33, 1215, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_294axpy(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha, __pyx_v_X, __pyx_v_structure);
/* function exit code */
goto __pyx_L0;
@@ -130621,7 +138642,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy(PyObject *__pyx_v_self,
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_288axpy(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294axpy(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure) {
PetscScalar __pyx_v_sval;
MatStructure __pyx_v_flag;
PyObject *__pyx_r = NULL;
@@ -130631,39 +138652,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_288axpy(struct PyPetscMatObject
int __pyx_t_3;
__Pyx_RefNannySetupContext("axpy", 0);
- /* "PETSc/Mat.pyx":1198
+ /* "PETSc/Mat.pyx":1216
*
- * def axpy(self, alpha, Mat X not None, structure=None):
+ * def axpy(self, alpha, Mat X, structure=None):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* cdef PetscMatStructure flag = matstructure(structure)
* CHKERR( MatAXPY(self.mat, sval, X.mat, flag) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1198, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 1216, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
- /* "PETSc/Mat.pyx":1199
- * def axpy(self, alpha, Mat X not None, structure=None):
+ /* "PETSc/Mat.pyx":1217
+ * def axpy(self, alpha, Mat X, structure=None):
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure) # <<<<<<<<<<<<<<
* CHKERR( MatAXPY(self.mat, sval, X.mat, flag) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_matstructure(__pyx_v_structure); if (unlikely(__pyx_t_2 == ((MatStructure)-1L))) __PYX_ERR(33, 1199, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_matstructure(__pyx_v_structure); if (unlikely(__pyx_t_2 == ((MatStructure)((MatStructure)-1L)))) __PYX_ERR(33, 1217, __pyx_L1_error)
__pyx_v_flag = __pyx_t_2;
- /* "PETSc/Mat.pyx":1200
+ /* "PETSc/Mat.pyx":1218
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure)
* CHKERR( MatAXPY(self.mat, sval, X.mat, flag) ) # <<<<<<<<<<<<<<
*
- * def aypx(self, alpha, Mat X not None, structure=None):
+ * def aypx(self, alpha, Mat X, structure=None):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAXPY(__pyx_v_self->mat, __pyx_v_sval, __pyx_v_X->mat, __pyx_v_flag)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 1200, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAXPY(__pyx_v_self->mat, __pyx_v_sval, __pyx_v_X->mat, __pyx_v_flag)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 1218, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1197
+ /* "PETSc/Mat.pyx":1215
* CHKERR( MatChop(self.mat, rval) )
*
- * def axpy(self, alpha, Mat X not None, structure=None): # <<<<<<<<<<<<<<
+ * def axpy(self, alpha, Mat X, structure=None): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure)
*/
@@ -130680,18 +138701,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_288axpy(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1202
+/* "PETSc/Mat.pyx":1220
* CHKERR( MatAXPY(self.mat, sval, X.mat, flag) )
*
- * def aypx(self, alpha, Mat X not None, structure=None): # <<<<<<<<<<<<<<
+ * def aypx(self, alpha, Mat X, structure=None): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_290aypx[] = "Mat.aypx(self, alpha, Mat X, structure=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297aypx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_296aypx[] = "Mat.aypx(self, alpha, Mat X, structure=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297aypx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_alpha = 0;
struct PyPetscMatObject *__pyx_v_X = 0;
PyObject *__pyx_v_structure = 0;
@@ -130707,8 +138728,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130717,11 +138741,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_X)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("aypx", 0, 2, 3, 1); __PYX_ERR(33, 1202, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("aypx", 0, 2, 3, 1); __PYX_ERR(33, 1220, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_structure);
@@ -130729,11 +138755,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "aypx") < 0)) __PYX_ERR(33, 1202, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "aypx") < 0)) __PYX_ERR(33, 1220, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -130746,14 +138773,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("aypx", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1202, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("aypx", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1220, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.aypx", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_X), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "X", 0))) __PYX_ERR(33, 1202, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_290aypx(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha, __pyx_v_X, __pyx_v_structure);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_X), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "X", 0))) __PYX_ERR(33, 1220, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_296aypx(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_alpha, __pyx_v_X, __pyx_v_structure);
/* function exit code */
goto __pyx_L0;
@@ -130764,7 +138791,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx(PyObject *__pyx_v_self,
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_290aypx(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296aypx(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_alpha, struct PyPetscMatObject *__pyx_v_X, PyObject *__pyx_v_structure) {
PetscScalar __pyx_v_sval;
MatStructure __pyx_v_flag;
PyObject *__pyx_r = NULL;
@@ -130774,39 +138801,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_290aypx(struct PyPetscMatObject
int __pyx_t_3;
__Pyx_RefNannySetupContext("aypx", 0);
- /* "PETSc/Mat.pyx":1203
+ /* "PETSc/Mat.pyx":1221
*
- * def aypx(self, alpha, Mat X not None, structure=None):
+ * def aypx(self, alpha, Mat X, structure=None):
* cdef PetscScalar sval = asScalar(alpha) # <<<<<<<<<<<<<<
* cdef PetscMatStructure flag = matstructure(structure)
* CHKERR( MatAYPX(self.mat, sval, X.mat, flag) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1203, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asScalar(__pyx_v_alpha); if (unlikely(__pyx_t_1 == ((PetscScalar)((PetscScalar)(-1.0))) && PyErr_Occurred())) __PYX_ERR(33, 1221, __pyx_L1_error)
__pyx_v_sval = __pyx_t_1;
- /* "PETSc/Mat.pyx":1204
- * def aypx(self, alpha, Mat X not None, structure=None):
+ /* "PETSc/Mat.pyx":1222
+ * def aypx(self, alpha, Mat X, structure=None):
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure) # <<<<<<<<<<<<<<
* CHKERR( MatAYPX(self.mat, sval, X.mat, flag) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_matstructure(__pyx_v_structure); if (unlikely(__pyx_t_2 == ((MatStructure)-1L))) __PYX_ERR(33, 1204, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_matstructure(__pyx_v_structure); if (unlikely(__pyx_t_2 == ((MatStructure)((MatStructure)-1L)))) __PYX_ERR(33, 1222, __pyx_L1_error)
__pyx_v_flag = __pyx_t_2;
- /* "PETSc/Mat.pyx":1205
+ /* "PETSc/Mat.pyx":1223
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure)
* CHKERR( MatAYPX(self.mat, sval, X.mat, flag) ) # <<<<<<<<<<<<<<
*
* # matrix-matrix product
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAYPX(__pyx_v_self->mat, __pyx_v_sval, __pyx_v_X->mat, __pyx_v_flag)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 1205, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatAYPX(__pyx_v_self->mat, __pyx_v_sval, __pyx_v_X->mat, __pyx_v_flag)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 1223, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1202
+ /* "PETSc/Mat.pyx":1220
* CHKERR( MatAXPY(self.mat, sval, X.mat, flag) )
*
- * def aypx(self, alpha, Mat X not None, structure=None): # <<<<<<<<<<<<<<
+ * def aypx(self, alpha, Mat X, structure=None): # <<<<<<<<<<<<<<
* cdef PetscScalar sval = asScalar(alpha)
* cdef PetscMatStructure flag = matstructure(structure)
*/
@@ -130823,18 +138850,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_290aypx(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1209
+/* "PETSc/Mat.pyx":1227
* # matrix-matrix product
*
- * def matMultSymbolic(self, Mat mat not None, fill=None): # <<<<<<<<<<<<<<
+ * def matMultSymbolic(self, Mat mat, fill=None): # <<<<<<<<<<<<<<
* cdef Mat result = Mat()
* cdef PetscReal rval = 2
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_292matMultSymbolic[] = "Mat.matMultSymbolic(self, Mat mat, fill=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matMultSymbolic(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_298matMultSymbolic[] = "Mat.matMultSymbolic(self, Mat mat, fill=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matMultSymbolic(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
PyObject *__pyx_v_fill = 0;
PyObject *__pyx_r = 0;
@@ -130849,7 +138876,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -130858,6 +138887,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill);
@@ -130865,11 +138895,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matMultSymbolic") < 0)) __PYX_ERR(33, 1209, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matMultSymbolic") < 0)) __PYX_ERR(33, 1227, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -130880,14 +138911,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("matMultSymbolic", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1209, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("matMultSymbolic", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1227, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.matMultSymbolic", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1209, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_292matMultSymbolic(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_fill);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1227, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_298matMultSymbolic(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_fill);
/* function exit code */
goto __pyx_L0;
@@ -130898,7 +138929,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic(PyObject *__p
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292matMultSymbolic(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_fill) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matMultSymbolic(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_fill) {
struct PyPetscMatObject *__pyx_v_result = 0;
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
@@ -130910,20 +138941,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292matMultSymbolic(struct PyPets
int __pyx_t_5;
__Pyx_RefNannySetupContext("matMultSymbolic", 0);
- /* "PETSc/Mat.pyx":1210
+ /* "PETSc/Mat.pyx":1228
*
- * def matMultSymbolic(self, Mat mat not None, fill=None):
+ * def matMultSymbolic(self, Mat mat, fill=None):
* cdef Mat result = Mat() # <<<<<<<<<<<<<<
* cdef PetscReal rval = 2
* if fill is not None: rval = asReal(fill)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1210, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1228, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_result = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1211
- * def matMultSymbolic(self, Mat mat not None, fill=None):
+ /* "PETSc/Mat.pyx":1229
+ * def matMultSymbolic(self, Mat mat, fill=None):
* cdef Mat result = Mat()
* cdef PetscReal rval = 2 # <<<<<<<<<<<<<<
* if fill is not None: rval = asReal(fill)
@@ -130931,7 +138962,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292matMultSymbolic(struct PyPets
*/
__pyx_v_rval = 2.0;
- /* "PETSc/Mat.pyx":1212
+ /* "PETSc/Mat.pyx":1230
* cdef Mat result = Mat()
* cdef PetscReal rval = 2
* if fill is not None: rval = asReal(fill) # <<<<<<<<<<<<<<
@@ -130941,35 +138972,35 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292matMultSymbolic(struct PyPets
__pyx_t_2 = (__pyx_v_fill != Py_None);
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1212, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1230, __pyx_L1_error)
__pyx_v_rval = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":1213
+ /* "PETSc/Mat.pyx":1231
* cdef PetscReal rval = 2
* if fill is not None: rval = asReal(fill)
* CHKERR( MatMatMultSymbolic(self.mat, mat.mat, rval, &result.mat) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMultSymbolic(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1213, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMultSymbolic(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1231, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1214
+ /* "PETSc/Mat.pyx":1232
* if fill is not None: rval = asReal(fill)
* CHKERR( MatMatMultSymbolic(self.mat, mat.mat, rval, &result.mat) )
* return result # <<<<<<<<<<<<<<
*
- * def matMultNumeric(self, Mat mat not None, Mat result=None):
+ * def matMultNumeric(self, Mat mat, Mat result=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1209
+ /* "PETSc/Mat.pyx":1227
* # matrix-matrix product
*
- * def matMultSymbolic(self, Mat mat not None, fill=None): # <<<<<<<<<<<<<<
+ * def matMultSymbolic(self, Mat mat, fill=None): # <<<<<<<<<<<<<<
* cdef Mat result = Mat()
* cdef PetscReal rval = 2
*/
@@ -130986,18 +139017,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_292matMultSymbolic(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1216
+/* "PETSc/Mat.pyx":1234
* return result
*
- * def matMultNumeric(self, Mat mat not None, Mat result=None): # <<<<<<<<<<<<<<
+ * def matMultNumeric(self, Mat mat, Mat result=None): # <<<<<<<<<<<<<<
* if result is None:
* result = Mat()
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_294matMultNumeric[] = "Mat.matMultNumeric(self, Mat mat, Mat result=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301matMultNumeric(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_300matMultNumeric[] = "Mat.matMultNumeric(self, Mat mat, Mat result=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301matMultNumeric(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
struct PyPetscMatObject *__pyx_v_result = 0;
PyObject *__pyx_r = 0;
@@ -131012,7 +139043,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -131021,6 +139054,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
@@ -131028,11 +139062,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matMultNumeric") < 0)) __PYX_ERR(33, 1216, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matMultNumeric") < 0)) __PYX_ERR(33, 1234, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -131043,15 +139078,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("matMultNumeric", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1216, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("matMultNumeric", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1234, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.matMultNumeric", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1216, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1216, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1234, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1234, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_300matMultNumeric(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result);
/* function exit code */
goto __pyx_L0;
@@ -131062,7 +139097,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric(PyObject *__py
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300matMultNumeric(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -131072,9 +139107,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(struct PyPetsc
__Pyx_RefNannySetupContext("matMultNumeric", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":1217
+ /* "PETSc/Mat.pyx":1235
*
- * def matMultNumeric(self, Mat mat not None, Mat result=None):
+ * def matMultNumeric(self, Mat mat, Mat result=None):
* if result is None: # <<<<<<<<<<<<<<
* result = Mat()
* if result.mat == NULL:
@@ -131083,28 +139118,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(struct PyPetsc
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1218
- * def matMultNumeric(self, Mat mat not None, Mat result=None):
+ /* "PETSc/Mat.pyx":1236
+ * def matMultNumeric(self, Mat mat, Mat result=None):
* if result is None:
* result = Mat() # <<<<<<<<<<<<<<
* if result.mat == NULL:
* CHKERR( MatMatMultSymbolic(self.mat, mat.mat, 2.0, &result.mat) )
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1218, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1236, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscMatObject *)__pyx_t_3));
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1217
+ /* "PETSc/Mat.pyx":1235
*
- * def matMultNumeric(self, Mat mat not None, Mat result=None):
+ * def matMultNumeric(self, Mat mat, Mat result=None):
* if result is None: # <<<<<<<<<<<<<<
* result = Mat()
* if result.mat == NULL:
*/
}
- /* "PETSc/Mat.pyx":1219
+ /* "PETSc/Mat.pyx":1237
* if result is None:
* result = Mat()
* if result.mat == NULL: # <<<<<<<<<<<<<<
@@ -131114,16 +139149,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(struct PyPetsc
__pyx_t_2 = ((__pyx_v_result->mat == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1220
+ /* "PETSc/Mat.pyx":1238
* result = Mat()
* if result.mat == NULL:
* CHKERR( MatMatMultSymbolic(self.mat, mat.mat, 2.0, &result.mat) ) # <<<<<<<<<<<<<<
* CHKERR( MatMatMultNumeric(self.mat, mat.mat, result.mat) )
* return result
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMultSymbolic(__pyx_v_self->mat, __pyx_v_mat->mat, 2.0, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1220, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMultSymbolic(__pyx_v_self->mat, __pyx_v_mat->mat, 2.0, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1238, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1219
+ /* "PETSc/Mat.pyx":1237
* if result is None:
* result = Mat()
* if result.mat == NULL: # <<<<<<<<<<<<<<
@@ -131132,31 +139167,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(struct PyPetsc
*/
}
- /* "PETSc/Mat.pyx":1221
+ /* "PETSc/Mat.pyx":1239
* if result.mat == NULL:
* CHKERR( MatMatMultSymbolic(self.mat, mat.mat, 2.0, &result.mat) )
* CHKERR( MatMatMultNumeric(self.mat, mat.mat, result.mat) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMultNumeric(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_result->mat)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1221, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMultNumeric(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_result->mat)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1239, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1222
+ /* "PETSc/Mat.pyx":1240
* CHKERR( MatMatMultSymbolic(self.mat, mat.mat, 2.0, &result.mat) )
* CHKERR( MatMatMultNumeric(self.mat, mat.mat, result.mat) )
* return result # <<<<<<<<<<<<<<
*
- * def matMult(self, Mat mat not None, Mat result=None, fill=None):
+ * def matMult(self, Mat mat, Mat result=None, fill=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1216
+ /* "PETSc/Mat.pyx":1234
* return result
*
- * def matMultNumeric(self, Mat mat not None, Mat result=None): # <<<<<<<<<<<<<<
+ * def matMultNumeric(self, Mat mat, Mat result=None): # <<<<<<<<<<<<<<
* if result is None:
* result = Mat()
*/
@@ -131173,18 +139208,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_294matMultNumeric(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1224
+/* "PETSc/Mat.pyx":1242
* return result
*
- * def matMult(self, Mat mat not None, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * def matMult(self, Mat mat, Mat result=None, fill=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_296matMult[] = "Mat.matMult(self, Mat mat, Mat result=None, fill=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_303matMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_302matMult[] = "Mat.matMult(self, Mat mat, Mat result=None, fill=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_303matMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
struct PyPetscMatObject *__pyx_v_result = 0;
PyObject *__pyx_v_fill = 0;
@@ -131201,8 +139236,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -131211,11 +139249,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill);
@@ -131223,12 +139263,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult(PyObject *__pyx_v_sel
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matMult") < 0)) __PYX_ERR(33, 1224, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matMult") < 0)) __PYX_ERR(33, 1242, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -131240,15 +139282,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("matMult", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1224, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("matMult", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1242, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.matMult", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1224, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1224, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result, __pyx_v_fill);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1242, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1242, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_302matMult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result, __pyx_v_fill);
/* function exit code */
goto __pyx_L0;
@@ -131259,7 +139301,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult(PyObject *__pyx_v_sel
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302matMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill) {
MatReuse __pyx_v_reuse;
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
@@ -131272,17 +139314,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
__Pyx_RefNannySetupContext("matMult", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":1225
+ /* "PETSc/Mat.pyx":1243
*
- * def matMult(self, Mat mat not None, Mat result=None, fill=None):
+ * def matMult(self, Mat mat, Mat result=None, fill=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
* cdef PetscReal rval = 2
* if result is None:
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":1226
- * def matMult(self, Mat mat not None, Mat result=None, fill=None):
+ /* "PETSc/Mat.pyx":1244
+ * def matMult(self, Mat mat, Mat result=None, fill=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2 # <<<<<<<<<<<<<<
* if result is None:
@@ -131290,7 +139332,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
*/
__pyx_v_rval = 2.0;
- /* "PETSc/Mat.pyx":1227
+ /* "PETSc/Mat.pyx":1245
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
* if result is None: # <<<<<<<<<<<<<<
@@ -131301,19 +139343,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1228
+ /* "PETSc/Mat.pyx":1246
* cdef PetscReal rval = 2
* if result is None:
* result = Mat() # <<<<<<<<<<<<<<
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1228, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscMatObject *)__pyx_t_3));
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1227
+ /* "PETSc/Mat.pyx":1245
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
* if result is None: # <<<<<<<<<<<<<<
@@ -131323,7 +139365,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":1229
+ /* "PETSc/Mat.pyx":1247
* if result is None:
* result = Mat()
* elif result.mat != NULL: # <<<<<<<<<<<<<<
@@ -131333,7 +139375,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
__pyx_t_2 = ((__pyx_v_result->mat != NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1230
+ /* "PETSc/Mat.pyx":1248
* result = Mat()
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
@@ -131342,7 +139384,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
*/
__pyx_v_reuse = MAT_REUSE_MATRIX;
- /* "PETSc/Mat.pyx":1229
+ /* "PETSc/Mat.pyx":1247
* if result is None:
* result = Mat()
* elif result.mat != NULL: # <<<<<<<<<<<<<<
@@ -131352,7 +139394,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":1231
+ /* "PETSc/Mat.pyx":1249
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX
* if fill is not None: rval = asReal(fill) # <<<<<<<<<<<<<<
@@ -131362,35 +139404,35 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
__pyx_t_2 = (__pyx_v_fill != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1231, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1249, __pyx_L1_error)
__pyx_v_rval = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":1232
+ /* "PETSc/Mat.pyx":1250
* reuse = MAT_REUSE_MATRIX
* if fill is not None: rval = asReal(fill)
* CHKERR( MatMatMult(self.mat, mat.mat, reuse, rval, &result.mat) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMult(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_reuse, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1232, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatMult(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_reuse, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1250, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1233
+ /* "PETSc/Mat.pyx":1251
* if fill is not None: rval = asReal(fill)
* CHKERR( MatMatMult(self.mat, mat.mat, reuse, rval, &result.mat) )
* return result # <<<<<<<<<<<<<<
*
- * def matTransposeMult(self, Mat mat not None, Mat result=None, fill=None):
+ * def matTransposeMult(self, Mat mat, Mat result=None, fill=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1224
+ /* "PETSc/Mat.pyx":1242
* return result
*
- * def matMult(self, Mat mat not None, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * def matMult(self, Mat mat, Mat result=None, fill=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
*/
@@ -131407,18 +139449,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_296matMult(struct PyPetscMatObje
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1235
+/* "PETSc/Mat.pyx":1253
* return result
*
- * def matTransposeMult(self, Mat mat not None, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * def matTransposeMult(self, Mat mat, Mat result=None, fill=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_298matTransposeMult[] = "Mat.matTransposeMult(self, Mat mat, Mat result=None, fill=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305matTransposeMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_304matTransposeMult[] = "Mat.matTransposeMult(self, Mat mat, Mat result=None, fill=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305matTransposeMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
struct PyPetscMatObject *__pyx_v_result = 0;
PyObject *__pyx_v_fill = 0;
@@ -131435,8 +139477,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -131445,11 +139490,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill);
@@ -131457,12 +139504,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matTransposeMult") < 0)) __PYX_ERR(33, 1235, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matTransposeMult") < 0)) __PYX_ERR(33, 1253, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -131474,15 +139523,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("matTransposeMult", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1235, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("matTransposeMult", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1253, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.matTransposeMult", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1235, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1235, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result, __pyx_v_fill);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1253, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1253, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_304matTransposeMult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result, __pyx_v_fill);
/* function exit code */
goto __pyx_L0;
@@ -131493,7 +139542,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_304matTransposeMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill) {
MatReuse __pyx_v_reuse;
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
@@ -131506,17 +139555,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
__Pyx_RefNannySetupContext("matTransposeMult", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":1236
+ /* "PETSc/Mat.pyx":1254
*
- * def matTransposeMult(self, Mat mat not None, Mat result=None, fill=None):
+ * def matTransposeMult(self, Mat mat, Mat result=None, fill=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
* cdef PetscReal rval = 2
* if result is None:
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":1237
- * def matTransposeMult(self, Mat mat not None, Mat result=None, fill=None):
+ /* "PETSc/Mat.pyx":1255
+ * def matTransposeMult(self, Mat mat, Mat result=None, fill=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2 # <<<<<<<<<<<<<<
* if result is None:
@@ -131524,7 +139573,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
*/
__pyx_v_rval = 2.0;
- /* "PETSc/Mat.pyx":1238
+ /* "PETSc/Mat.pyx":1256
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
* if result is None: # <<<<<<<<<<<<<<
@@ -131535,19 +139584,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1239
+ /* "PETSc/Mat.pyx":1257
* cdef PetscReal rval = 2
* if result is None:
* result = Mat() # <<<<<<<<<<<<<<
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1239, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1257, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscMatObject *)__pyx_t_3));
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1238
+ /* "PETSc/Mat.pyx":1256
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
* if result is None: # <<<<<<<<<<<<<<
@@ -131557,7 +139606,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":1240
+ /* "PETSc/Mat.pyx":1258
* if result is None:
* result = Mat()
* elif result.mat != NULL: # <<<<<<<<<<<<<<
@@ -131567,7 +139616,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
__pyx_t_2 = ((__pyx_v_result->mat != NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1241
+ /* "PETSc/Mat.pyx":1259
* result = Mat()
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
@@ -131576,7 +139625,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
*/
__pyx_v_reuse = MAT_REUSE_MATRIX;
- /* "PETSc/Mat.pyx":1240
+ /* "PETSc/Mat.pyx":1258
* if result is None:
* result = Mat()
* elif result.mat != NULL: # <<<<<<<<<<<<<<
@@ -131586,7 +139635,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":1242
+ /* "PETSc/Mat.pyx":1260
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX
* if fill is not None: rval = asReal(fill) # <<<<<<<<<<<<<<
@@ -131596,35 +139645,35 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
__pyx_t_2 = (__pyx_v_fill != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1242, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1260, __pyx_L1_error)
__pyx_v_rval = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":1243
+ /* "PETSc/Mat.pyx":1261
* reuse = MAT_REUSE_MATRIX
* if fill is not None: rval = asReal(fill)
* CHKERR( MatMatTransposeMult(self.mat, mat.mat, reuse, rval, &result.mat) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatTransposeMult(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_reuse, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1243, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatTransposeMult(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_reuse, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1261, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1244
+ /* "PETSc/Mat.pyx":1262
* if fill is not None: rval = asReal(fill)
* CHKERR( MatMatTransposeMult(self.mat, mat.mat, reuse, rval, &result.mat) )
* return result # <<<<<<<<<<<<<<
*
- * def transposeMatMult(self, Mat mat not None, Mat result=None, fill=None):
+ * def transposeMatMult(self, Mat mat, Mat result=None, fill=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1235
+ /* "PETSc/Mat.pyx":1253
* return result
*
- * def matTransposeMult(self, Mat mat not None, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * def matTransposeMult(self, Mat mat, Mat result=None, fill=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
*/
@@ -131641,18 +139690,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_298matTransposeMult(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1246
+/* "PETSc/Mat.pyx":1264
* return result
*
- * def transposeMatMult(self, Mat mat not None, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * def transposeMatMult(self, Mat mat, Mat result=None, fill=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_300transposeMatMult[] = "Mat.transposeMatMult(self, Mat mat, Mat result=None, fill=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307transposeMatMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_306transposeMatMult[] = "Mat.transposeMatMult(self, Mat mat, Mat result=None, fill=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307transposeMatMult(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
struct PyPetscMatObject *__pyx_v_result = 0;
PyObject *__pyx_v_fill = 0;
@@ -131669,8 +139718,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -131679,11 +139731,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill);
@@ -131691,12 +139745,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "transposeMatMult") < 0)) __PYX_ERR(33, 1246, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "transposeMatMult") < 0)) __PYX_ERR(33, 1264, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -131708,15 +139764,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("transposeMatMult", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1246, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("transposeMatMult", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1264, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.transposeMatMult", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1246, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1246, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result, __pyx_v_fill);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1264, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1264, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_306transposeMatMult(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_result, __pyx_v_fill);
/* function exit code */
goto __pyx_L0;
@@ -131727,7 +139783,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_306transposeMatMult(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill) {
MatReuse __pyx_v_reuse;
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
@@ -131740,17 +139796,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
__Pyx_RefNannySetupContext("transposeMatMult", 0);
__Pyx_INCREF((PyObject *)__pyx_v_result);
- /* "PETSc/Mat.pyx":1247
+ /* "PETSc/Mat.pyx":1265
*
- * def transposeMatMult(self, Mat mat not None, Mat result=None, fill=None):
+ * def transposeMatMult(self, Mat mat, Mat result=None, fill=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
* cdef PetscReal rval = 2
* if result is None:
*/
__pyx_v_reuse = MAT_INITIAL_MATRIX;
- /* "PETSc/Mat.pyx":1248
- * def transposeMatMult(self, Mat mat not None, Mat result=None, fill=None):
+ /* "PETSc/Mat.pyx":1266
+ * def transposeMatMult(self, Mat mat, Mat result=None, fill=None):
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2 # <<<<<<<<<<<<<<
* if result is None:
@@ -131758,7 +139814,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
*/
__pyx_v_rval = 2.0;
- /* "PETSc/Mat.pyx":1249
+ /* "PETSc/Mat.pyx":1267
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
* if result is None: # <<<<<<<<<<<<<<
@@ -131769,19 +139825,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1250
+ /* "PETSc/Mat.pyx":1268
* cdef PetscReal rval = 2
* if result is None:
* result = Mat() # <<<<<<<<<<<<<<
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1250, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1268, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscMatObject *)__pyx_t_3));
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1249
+ /* "PETSc/Mat.pyx":1267
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
* if result is None: # <<<<<<<<<<<<<<
@@ -131791,7 +139847,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":1251
+ /* "PETSc/Mat.pyx":1269
* if result is None:
* result = Mat()
* elif result.mat != NULL: # <<<<<<<<<<<<<<
@@ -131801,7 +139857,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
__pyx_t_2 = ((__pyx_v_result->mat != NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1252
+ /* "PETSc/Mat.pyx":1270
* result = Mat()
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
@@ -131810,7 +139866,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
*/
__pyx_v_reuse = MAT_REUSE_MATRIX;
- /* "PETSc/Mat.pyx":1251
+ /* "PETSc/Mat.pyx":1269
* if result is None:
* result = Mat()
* elif result.mat != NULL: # <<<<<<<<<<<<<<
@@ -131820,7 +139876,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":1253
+ /* "PETSc/Mat.pyx":1271
* elif result.mat != NULL:
* reuse = MAT_REUSE_MATRIX
* if fill is not None: rval = asReal(fill) # <<<<<<<<<<<<<<
@@ -131830,35 +139886,35 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
__pyx_t_2 = (__pyx_v_fill != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1253, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1271, __pyx_L1_error)
__pyx_v_rval = __pyx_t_4;
}
- /* "PETSc/Mat.pyx":1254
+ /* "PETSc/Mat.pyx":1272
* reuse = MAT_REUSE_MATRIX
* if fill is not None: rval = asReal(fill)
* CHKERR( MatTransposeMatMult(self.mat, mat.mat, reuse, rval, &result.mat) ) # <<<<<<<<<<<<<<
* return result
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatTransposeMatMult(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_reuse, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(33, 1254, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatTransposeMatMult(__pyx_v_self->mat, __pyx_v_mat->mat, __pyx_v_reuse, __pyx_v_rval, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1272, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1255
+ /* "PETSc/Mat.pyx":1273
* if fill is not None: rval = asReal(fill)
* CHKERR( MatTransposeMatMult(self.mat, mat.mat, reuse, rval, &result.mat) )
* return result # <<<<<<<<<<<<<<
*
- * # XXX factorization
+ * def PtAP(self, Mat P, Mat result=None, fill=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_result));
__pyx_r = ((PyObject *)__pyx_v_result);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1246
+ /* "PETSc/Mat.pyx":1264
* return result
*
- * def transposeMatMult(self, Mat mat not None, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * def transposeMatMult(self, Mat mat, Mat result=None, fill=None): # <<<<<<<<<<<<<<
* cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
* cdef PetscReal rval = 2
*/
@@ -131875,7 +139931,248 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1259
+/* "PETSc/Mat.pyx":1275
+ * return result
+ *
+ * def PtAP(self, Mat P, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
+ * cdef PetscReal cfill = PETSC_DEFAULT
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309PtAP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_308PtAP[] = "Mat.PtAP(self, Mat P, Mat result=None, fill=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309PtAP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscMatObject *__pyx_v_P = 0;
+ struct PyPetscMatObject *__pyx_v_result = 0;
+ PyObject *__pyx_v_fill = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("PtAP (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_P,&__pyx_n_s_result,&__pyx_n_s_fill,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = (PyObject *)((struct PyPetscMatObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "PtAP") < 0)) __PYX_ERR(33, 1275, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_P = ((struct PyPetscMatObject *)values[0]);
+ __pyx_v_result = ((struct PyPetscMatObject *)values[1]);
+ __pyx_v_fill = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("PtAP", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1275, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.PtAP", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "P", 0))) __PYX_ERR(33, 1275, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_result), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "result", 0))) __PYX_ERR(33, 1275, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_308PtAP(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_P, __pyx_v_result, __pyx_v_fill);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_308PtAP(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_P, struct PyPetscMatObject *__pyx_v_result, PyObject *__pyx_v_fill) {
+ MatReuse __pyx_v_reuse;
+ PetscReal __pyx_v_cfill;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ PetscReal __pyx_t_4;
+ int __pyx_t_5;
+ __Pyx_RefNannySetupContext("PtAP", 0);
+ __Pyx_INCREF((PyObject *)__pyx_v_result);
+
+ /* "PETSc/Mat.pyx":1276
+ *
+ * def PtAP(self, Mat P, Mat result=None, fill=None):
+ * cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX # <<<<<<<<<<<<<<
+ * cdef PetscReal cfill = PETSC_DEFAULT
+ * if result is None:
+ */
+ __pyx_v_reuse = MAT_INITIAL_MATRIX;
+
+ /* "PETSc/Mat.pyx":1277
+ * def PtAP(self, Mat P, Mat result=None, fill=None):
+ * cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
+ * cdef PetscReal cfill = PETSC_DEFAULT # <<<<<<<<<<<<<<
+ * if result is None:
+ * result = Mat()
+ */
+ __pyx_v_cfill = PETSC_DEFAULT;
+
+ /* "PETSc/Mat.pyx":1278
+ * cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
+ * cdef PetscReal cfill = PETSC_DEFAULT
+ * if result is None: # <<<<<<<<<<<<<<
+ * result = Mat()
+ * elif result.mat != NULL:
+ */
+ __pyx_t_1 = (((PyObject *)__pyx_v_result) == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/Mat.pyx":1279
+ * cdef PetscReal cfill = PETSC_DEFAULT
+ * if result is None:
+ * result = Mat() # <<<<<<<<<<<<<<
+ * elif result.mat != NULL:
+ * reuse = MAT_REUSE_MATRIX
+ */
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1279, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_result, ((struct PyPetscMatObject *)__pyx_t_3));
+ __pyx_t_3 = 0;
+
+ /* "PETSc/Mat.pyx":1278
+ * cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
+ * cdef PetscReal cfill = PETSC_DEFAULT
+ * if result is None: # <<<<<<<<<<<<<<
+ * result = Mat()
+ * elif result.mat != NULL:
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/Mat.pyx":1280
+ * if result is None:
+ * result = Mat()
+ * elif result.mat != NULL: # <<<<<<<<<<<<<<
+ * reuse = MAT_REUSE_MATRIX
+ * if fill is not None: cfill = asReal(fill)
+ */
+ __pyx_t_2 = ((__pyx_v_result->mat != NULL) != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/Mat.pyx":1281
+ * result = Mat()
+ * elif result.mat != NULL:
+ * reuse = MAT_REUSE_MATRIX # <<<<<<<<<<<<<<
+ * if fill is not None: cfill = asReal(fill)
+ * CHKERR( MatPtAP(self.mat, P.mat, reuse, cfill, &result.mat) )
+ */
+ __pyx_v_reuse = MAT_REUSE_MATRIX;
+
+ /* "PETSc/Mat.pyx":1280
+ * if result is None:
+ * result = Mat()
+ * elif result.mat != NULL: # <<<<<<<<<<<<<<
+ * reuse = MAT_REUSE_MATRIX
+ * if fill is not None: cfill = asReal(fill)
+ */
+ }
+ __pyx_L3:;
+
+ /* "PETSc/Mat.pyx":1282
+ * elif result.mat != NULL:
+ * reuse = MAT_REUSE_MATRIX
+ * if fill is not None: cfill = asReal(fill) # <<<<<<<<<<<<<<
+ * CHKERR( MatPtAP(self.mat, P.mat, reuse, cfill, &result.mat) )
+ * return result
+ */
+ __pyx_t_2 = (__pyx_v_fill != Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fill); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1282, __pyx_L1_error)
+ __pyx_v_cfill = __pyx_t_4;
+ }
+
+ /* "PETSc/Mat.pyx":1283
+ * reuse = MAT_REUSE_MATRIX
+ * if fill is not None: cfill = asReal(fill)
+ * CHKERR( MatPtAP(self.mat, P.mat, reuse, cfill, &result.mat) ) # <<<<<<<<<<<<<<
+ * return result
+ *
+ */
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatPtAP(__pyx_v_self->mat, __pyx_v_P->mat, __pyx_v_reuse, __pyx_v_cfill, (&__pyx_v_result->mat))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(33, 1283, __pyx_L1_error)
+
+ /* "PETSc/Mat.pyx":1284
+ * if fill is not None: cfill = asReal(fill)
+ * CHKERR( MatPtAP(self.mat, P.mat, reuse, cfill, &result.mat) )
+ * return result # <<<<<<<<<<<<<<
+ *
+ * # XXX factorization
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_result));
+ __pyx_r = ((PyObject *)__pyx_v_result);
+ goto __pyx_L0;
+
+ /* "PETSc/Mat.pyx":1275
+ * return result
+ *
+ * def PtAP(self, Mat P, Mat result=None, fill=None): # <<<<<<<<<<<<<<
+ * cdef PetscMatReuse reuse = MAT_INITIAL_MATRIX
+ * cdef PetscReal cfill = PETSC_DEFAULT
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.PtAP", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_result);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Mat.pyx":1288
* # XXX factorization
*
* def getOrdering(self, ord_type): # <<<<<<<<<<<<<<
@@ -131884,9 +140181,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_300transposeMatMult(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_303getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_302getOrdering[] = "Mat.getOrdering(self, ord_type)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_303getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_310getOrdering[] = "Mat.getOrdering(self, ord_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_ord_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -131899,6 +140196,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_303getOrdering(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -131909,7 +140207,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_303getOrdering(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getOrdering") < 0)) __PYX_ERR(33, 1259, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getOrdering") < 0)) __PYX_ERR(33, 1288, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -131920,20 +140218,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_303getOrdering(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getOrdering", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1259, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getOrdering", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1288, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getOrdering", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_302getOrdering(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_ord_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_310getOrdering(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_ord_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302getOrdering(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_ord_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_310getOrdering(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_ord_type) {
const char* __pyx_v_cval;
struct PyPetscISObject *__pyx_v_rp = 0;
struct PyPetscISObject *__pyx_v_cp = 0;
@@ -131944,7 +140242,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302getOrdering(struct PyPetscMat
__Pyx_RefNannySetupContext("getOrdering", 0);
__Pyx_INCREF(__pyx_v_ord_type);
- /* "PETSc/Mat.pyx":1260
+ /* "PETSc/Mat.pyx":1289
*
* def getOrdering(self, ord_type):
* cdef PetscMatOrderingType cval = NULL # <<<<<<<<<<<<<<
@@ -131953,52 +140251,52 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302getOrdering(struct PyPetscMat
*/
__pyx_v_cval = NULL;
- /* "PETSc/Mat.pyx":1261
+ /* "PETSc/Mat.pyx":1290
* def getOrdering(self, ord_type):
* cdef PetscMatOrderingType cval = NULL
* ord_type = str2bytes(ord_type, &cval) # <<<<<<<<<<<<<<
* cdef IS rp = IS(), cp = IS()
* CHKERR( MatGetOrdering(self.mat, cval, &rp.iset, &cp.iset) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ord_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1261, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ord_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1290, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_ord_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1262
+ /* "PETSc/Mat.pyx":1291
* cdef PetscMatOrderingType cval = NULL
* ord_type = str2bytes(ord_type, &cval)
* cdef IS rp = IS(), cp = IS() # <<<<<<<<<<<<<<
* CHKERR( MatGetOrdering(self.mat, cval, &rp.iset, &cp.iset) )
* return (rp, cp)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1262, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_rp = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1262, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_cp = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1263
+ /* "PETSc/Mat.pyx":1292
* ord_type = str2bytes(ord_type, &cval)
* cdef IS rp = IS(), cp = IS()
* CHKERR( MatGetOrdering(self.mat, cval, &rp.iset, &cp.iset) ) # <<<<<<<<<<<<<<
* return (rp, cp)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOrdering(__pyx_v_self->mat, __pyx_v_cval, (&__pyx_v_rp->iset), (&__pyx_v_cp->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1263, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetOrdering(__pyx_v_self->mat, __pyx_v_cval, (&__pyx_v_rp->iset), (&__pyx_v_cp->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1292, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1264
+ /* "PETSc/Mat.pyx":1293
* cdef IS rp = IS(), cp = IS()
* CHKERR( MatGetOrdering(self.mat, cval, &rp.iset, &cp.iset) )
* return (rp, cp) # <<<<<<<<<<<<<<
*
- * def reorderForNonzeroDiagonal(self, IS isrow not None, IS iscol not None, atol=0):
+ * def reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1264, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1293, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_rp));
__Pyx_GIVEREF(((PyObject *)__pyx_v_rp));
@@ -132010,7 +140308,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302getOrdering(struct PyPetscMat
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1259
+ /* "PETSc/Mat.pyx":1288
* # XXX factorization
*
* def getOrdering(self, ord_type): # <<<<<<<<<<<<<<
@@ -132032,18 +140330,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_302getOrdering(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1266
+/* "PETSc/Mat.pyx":1295
* return (rp, cp)
*
- * def reorderForNonzeroDiagonal(self, IS isrow not None, IS iscol not None, atol=0): # <<<<<<<<<<<<<<
+ * def reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(atol)
* cdef PetscIS rp = isrow.iset, cp = iscol.iset
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal[] = "Mat.reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313reorderForNonzeroDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_312reorderForNonzeroDiagonal[] = "Mat.reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313reorderForNonzeroDiagonal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
PyObject *__pyx_v_atol = 0;
@@ -132059,8 +140357,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal(PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132069,11 +140370,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal(PyO
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("reorderForNonzeroDiagonal", 0, 2, 3, 1); __PYX_ERR(33, 1266, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("reorderForNonzeroDiagonal", 0, 2, 3, 1); __PYX_ERR(33, 1295, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_atol);
@@ -132081,11 +140384,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal(PyO
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reorderForNonzeroDiagonal") < 0)) __PYX_ERR(33, 1266, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reorderForNonzeroDiagonal") < 0)) __PYX_ERR(33, 1295, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -132098,15 +140402,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal(PyO
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("reorderForNonzeroDiagonal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1266, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("reorderForNonzeroDiagonal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1295, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.reorderForNonzeroDiagonal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1266, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1266, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_atol);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1295, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1295, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_312reorderForNonzeroDiagonal(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_atol);
/* function exit code */
goto __pyx_L0;
@@ -132117,7 +140421,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal(PyO
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_atol) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_312reorderForNonzeroDiagonal(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_atol) {
PetscReal __pyx_v_rval;
IS __pyx_v_rp;
IS __pyx_v_cp;
@@ -132128,18 +140432,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal(str
int __pyx_t_3;
__Pyx_RefNannySetupContext("reorderForNonzeroDiagonal", 0);
- /* "PETSc/Mat.pyx":1267
+ /* "PETSc/Mat.pyx":1296
*
- * def reorderForNonzeroDiagonal(self, IS isrow not None, IS iscol not None, atol=0):
+ * def reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0):
* cdef PetscReal rval = asReal(atol) # <<<<<<<<<<<<<<
* cdef PetscIS rp = isrow.iset, cp = iscol.iset
* CHKERR( MatReorderForNonzeroDiagonal(self.mat, rval, rp, cp) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1267, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1296, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/Mat.pyx":1268
- * def reorderForNonzeroDiagonal(self, IS isrow not None, IS iscol not None, atol=0):
+ /* "PETSc/Mat.pyx":1297
+ * def reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0):
* cdef PetscReal rval = asReal(atol)
* cdef PetscIS rp = isrow.iset, cp = iscol.iset # <<<<<<<<<<<<<<
* CHKERR( MatReorderForNonzeroDiagonal(self.mat, rval, rp, cp) )
@@ -132150,19 +140454,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal(str
__pyx_t_2 = __pyx_v_iscol->iset;
__pyx_v_cp = __pyx_t_2;
- /* "PETSc/Mat.pyx":1269
+ /* "PETSc/Mat.pyx":1298
* cdef PetscReal rval = asReal(atol)
* cdef PetscIS rp = isrow.iset, cp = iscol.iset
* CHKERR( MatReorderForNonzeroDiagonal(self.mat, rval, rp, cp) ) # <<<<<<<<<<<<<<
*
- * def factorLU(self, IS isrow not None, IS iscol not None, options=None):
+ * def factorLU(self, IS isrow, IS iscol, options=None):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatReorderForNonzeroDiagonal(__pyx_v_self->mat, __pyx_v_rval, __pyx_v_rp, __pyx_v_cp)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 1269, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatReorderForNonzeroDiagonal(__pyx_v_self->mat, __pyx_v_rval, __pyx_v_rp, __pyx_v_cp)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 1298, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1266
+ /* "PETSc/Mat.pyx":1295
* return (rp, cp)
*
- * def reorderForNonzeroDiagonal(self, IS isrow not None, IS iscol not None, atol=0): # <<<<<<<<<<<<<<
+ * def reorderForNonzeroDiagonal(self, IS isrow, IS iscol, atol=0): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(atol)
* cdef PetscIS rp = isrow.iset, cp = iscol.iset
*/
@@ -132179,18 +140483,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal(str
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1271
+/* "PETSc/Mat.pyx":1300
* CHKERR( MatReorderForNonzeroDiagonal(self.mat, rval, rp, cp) )
*
- * def factorLU(self, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorLU(self, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_FALSE, options, &info)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_306factorLU[] = "Mat.factorLU(self, IS isrow, IS iscol, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_314factorLU[] = "Mat.factorLU(self, IS isrow, IS iscol, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
PyObject *__pyx_v_options = 0;
@@ -132206,8 +140510,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132216,11 +140523,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("factorLU", 0, 2, 3, 1); __PYX_ERR(33, 1271, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorLU", 0, 2, 3, 1); __PYX_ERR(33, 1300, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -132228,11 +140537,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorLU") < 0)) __PYX_ERR(33, 1271, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorLU") < 0)) __PYX_ERR(33, 1300, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -132245,15 +140555,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorLU", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1271, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorLU", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1300, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorLU", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1271, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1271, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_306factorLU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1300, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1300, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_314factorLU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -132264,35 +140574,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU(PyObject *__pyx_v_se
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_306factorLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_314factorLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
MatFactorInfo __pyx_v_info;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("factorLU", 0);
- /* "PETSc/Mat.pyx":1273
- * def factorLU(self, IS isrow not None, IS iscol not None, options=None):
+ /* "PETSc/Mat.pyx":1302
+ * def factorLU(self, IS isrow, IS iscol, options=None):
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_FALSE, options, &info) # <<<<<<<<<<<<<<
* CHKERR( MatLUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicLU(self, Mat mat not None, IS isrow not None, IS iscol not None, options=None):
+ * def factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_FALSE, PETSC_FALSE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1273, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_FALSE, PETSC_FALSE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1302, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1274
+ /* "PETSc/Mat.pyx":1303
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_FALSE, options, &info)
* CHKERR( MatLUFactor(self.mat, isrow.iset, iscol.iset, &info) ) # <<<<<<<<<<<<<<
- * def factorSymbolicLU(self, Mat mat not None, IS isrow not None, IS iscol not None, options=None):
+ * def factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None):
* <void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatLUFactor(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1274, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatLUFactor(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1303, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1271
+ /* "PETSc/Mat.pyx":1300
* CHKERR( MatReorderForNonzeroDiagonal(self.mat, rval, rp, cp) )
*
- * def factorLU(self, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorLU(self, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_FALSE, options, &info)
*/
@@ -132309,18 +140619,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_306factorLU(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1275
+/* "PETSc/Mat.pyx":1304
* matfactorinfo(PETSC_FALSE, PETSC_FALSE, options, &info)
* CHKERR( MatLUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicLU(self, Mat mat not None, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_308factorSymbolicLU[] = "Mat.factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorSymbolicLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_316factorSymbolicLU[] = "Mat.factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorSymbolicLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
@@ -132337,9 +140647,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132348,16 +140662,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("factorSymbolicLU", 0, 3, 4, 1); __PYX_ERR(33, 1275, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorSymbolicLU", 0, 3, 4, 1); __PYX_ERR(33, 1304, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("factorSymbolicLU", 0, 3, 4, 2); __PYX_ERR(33, 1275, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorSymbolicLU", 0, 3, 4, 2); __PYX_ERR(33, 1304, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -132365,11 +140682,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicLU") < 0)) __PYX_ERR(33, 1275, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicLU") < 0)) __PYX_ERR(33, 1304, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -132384,16 +140702,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorSymbolicLU", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1275, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorSymbolicLU", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1304, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorSymbolicLU", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1275, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1275, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1275, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_308factorSymbolicLU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1304, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1304, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1304, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_316factorSymbolicLU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -132404,17 +140722,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_308factorSymbolicLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_316factorSymbolicLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("factorSymbolicLU", 0);
- /* "PETSc/Mat.pyx":1276
+ /* "PETSc/Mat.pyx":1305
* CHKERR( MatLUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicLU(self, Mat mat not None, IS isrow not None, IS iscol not None, options=None):
+ * def factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None):
* <void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused # <<<<<<<<<<<<<<
* raise NotImplementedError
- * def factorNumericLU(self, Mat mat not None, options=None):
+ * def factorNumericLU(self, Mat mat, options=None):
*/
((void)__pyx_v_self);
((void)__pyx_v_mat);
@@ -132422,20 +140740,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_308factorSymbolicLU(struct PyPet
((void)__pyx_v_iscol);
((void)__pyx_v_options);
- /* "PETSc/Mat.pyx":1277
- * def factorSymbolicLU(self, Mat mat not None, IS isrow not None, IS iscol not None, options=None):
+ /* "PETSc/Mat.pyx":1306
+ * def factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None):
* <void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError # <<<<<<<<<<<<<<
- * def factorNumericLU(self, Mat mat not None, options=None):
+ * def factorNumericLU(self, Mat mat, options=None):
* <void>self; <void>mat; <void>options; # unused
*/
__Pyx_Raise(__pyx_builtin_NotImplementedError, 0, 0, 0);
- __PYX_ERR(33, 1277, __pyx_L1_error)
+ __PYX_ERR(33, 1306, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1275
+ /* "PETSc/Mat.pyx":1304
* matfactorinfo(PETSC_FALSE, PETSC_FALSE, options, &info)
* CHKERR( MatLUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicLU(self, Mat mat not None, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicLU(self, Mat mat, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError
*/
@@ -132449,18 +140767,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_308factorSymbolicLU(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1278
+/* "PETSc/Mat.pyx":1307
* <void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError
- * def factorNumericLU(self, Mat mat not None, options=None): # <<<<<<<<<<<<<<
+ * def factorNumericLU(self, Mat mat, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_310factorNumericLU[] = "Mat.factorNumericLU(self, Mat mat, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorNumericLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_318factorNumericLU[] = "Mat.factorNumericLU(self, Mat mat, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorNumericLU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
PyObject *__pyx_v_options = 0;
PyObject *__pyx_r = 0;
@@ -132475,7 +140793,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132484,6 +140804,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -132491,11 +140812,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorNumericLU") < 0)) __PYX_ERR(33, 1278, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorNumericLU") < 0)) __PYX_ERR(33, 1307, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -132506,14 +140828,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorNumericLU", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1278, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorNumericLU", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1307, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorNumericLU", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1278, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_310factorNumericLU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1307, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_318factorNumericLU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -132524,36 +140846,36 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU(PyObject *__p
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_310factorNumericLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_318factorNumericLU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("factorNumericLU", 0);
- /* "PETSc/Mat.pyx":1279
+ /* "PETSc/Mat.pyx":1308
* raise NotImplementedError
- * def factorNumericLU(self, Mat mat not None, options=None):
+ * def factorNumericLU(self, Mat mat, options=None):
* <void>self; <void>mat; <void>options; # unused # <<<<<<<<<<<<<<
* raise NotImplementedError
- * def factorILU(self, IS isrow not None, IS iscol not None, options=None):
+ * def factorILU(self, IS isrow, IS iscol, options=None):
*/
((void)__pyx_v_self);
((void)__pyx_v_mat);
((void)__pyx_v_options);
- /* "PETSc/Mat.pyx":1280
- * def factorNumericLU(self, Mat mat not None, options=None):
+ /* "PETSc/Mat.pyx":1309
+ * def factorNumericLU(self, Mat mat, options=None):
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError # <<<<<<<<<<<<<<
- * def factorILU(self, IS isrow not None, IS iscol not None, options=None):
+ * def factorILU(self, IS isrow, IS iscol, options=None):
* cdef PetscMatFactorInfo info
*/
__Pyx_Raise(__pyx_builtin_NotImplementedError, 0, 0, 0);
- __PYX_ERR(33, 1280, __pyx_L1_error)
+ __PYX_ERR(33, 1309, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1278
+ /* "PETSc/Mat.pyx":1307
* <void>self; <void>mat; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError
- * def factorNumericLU(self, Mat mat not None, options=None): # <<<<<<<<<<<<<<
+ * def factorNumericLU(self, Mat mat, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
*/
@@ -132567,18 +140889,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_310factorNumericLU(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1281
+/* "PETSc/Mat.pyx":1310
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
- * def factorILU(self, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorILU(self, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_FALSE, options, &info)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_312factorILU[] = "Mat.factorILU(self, IS isrow, IS iscol, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_320factorILU[] = "Mat.factorILU(self, IS isrow, IS iscol, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
PyObject *__pyx_v_options = 0;
@@ -132594,8 +140916,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132604,11 +140929,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("factorILU", 0, 2, 3, 1); __PYX_ERR(33, 1281, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorILU", 0, 2, 3, 1); __PYX_ERR(33, 1310, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -132616,11 +140943,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorILU") < 0)) __PYX_ERR(33, 1281, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorILU") < 0)) __PYX_ERR(33, 1310, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -132633,15 +140961,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorILU", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1281, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorILU", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1310, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorILU", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1281, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1281, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_312factorILU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1310, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1310, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_320factorILU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -132652,35 +140980,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_312factorILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_320factorILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
MatFactorInfo __pyx_v_info;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("factorILU", 0);
- /* "PETSc/Mat.pyx":1283
- * def factorILU(self, IS isrow not None, IS iscol not None, options=None):
+ /* "PETSc/Mat.pyx":1312
+ * def factorILU(self, IS isrow, IS iscol, options=None):
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_FALSE, options, &info) # <<<<<<<<<<<<<<
* CHKERR( MatILUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicILU(self, IS isrow not None, IS iscol not None, options=None):
+ * def factorSymbolicILU(self, IS isrow, IS iscol, options=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_TRUE, PETSC_FALSE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1283, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_TRUE, PETSC_FALSE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1312, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1284
+ /* "PETSc/Mat.pyx":1313
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_FALSE, options, &info)
* CHKERR( MatILUFactor(self.mat, isrow.iset, iscol.iset, &info) ) # <<<<<<<<<<<<<<
- * def factorSymbolicILU(self, IS isrow not None, IS iscol not None, options=None):
+ * def factorSymbolicILU(self, IS isrow, IS iscol, options=None):
* <void>self; <void>isrow; <void>iscol; <void>options; # unused
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatILUFactor(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1284, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatILUFactor(__pyx_v_self->mat, __pyx_v_isrow->iset, __pyx_v_iscol->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1313, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1281
+ /* "PETSc/Mat.pyx":1310
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
- * def factorILU(self, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorILU(self, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_FALSE, options, &info)
*/
@@ -132697,18 +141025,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_312factorILU(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1285
+/* "PETSc/Mat.pyx":1314
* matfactorinfo(PETSC_TRUE, PETSC_FALSE, options, &info)
* CHKERR( MatILUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicILU(self, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicILU(self, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_314factorSymbolicILU[] = "Mat.factorSymbolicILU(self, IS isrow, IS iscol, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorSymbolicILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_322factorSymbolicILU[] = "Mat.factorSymbolicILU(self, IS isrow, IS iscol, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorSymbolicILU(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isrow = 0;
struct PyPetscISObject *__pyx_v_iscol = 0;
PyObject *__pyx_v_options = 0;
@@ -132724,8 +141052,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132734,11 +141065,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isrow)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_iscol)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("factorSymbolicILU", 0, 2, 3, 1); __PYX_ERR(33, 1285, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorSymbolicILU", 0, 2, 3, 1); __PYX_ERR(33, 1314, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -132746,11 +141079,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicILU") < 0)) __PYX_ERR(33, 1285, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicILU") < 0)) __PYX_ERR(33, 1314, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -132763,15 +141097,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorSymbolicILU", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1285, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorSymbolicILU", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1314, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorSymbolicILU", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1285, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1285, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_314factorSymbolicILU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isrow), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isrow", 0))) __PYX_ERR(33, 1314, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_iscol), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "iscol", 0))) __PYX_ERR(33, 1314, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_322factorSymbolicILU(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isrow, __pyx_v_iscol, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -132782,14 +141116,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU(PyObject *_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_314factorSymbolicILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_322factorSymbolicILU(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isrow, struct PyPetscISObject *__pyx_v_iscol, PyObject *__pyx_v_options) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("factorSymbolicILU", 0);
- /* "PETSc/Mat.pyx":1286
+ /* "PETSc/Mat.pyx":1315
* CHKERR( MatILUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicILU(self, IS isrow not None, IS iscol not None, options=None):
+ * def factorSymbolicILU(self, IS isrow, IS iscol, options=None):
* <void>self; <void>isrow; <void>iscol; <void>options; # unused # <<<<<<<<<<<<<<
* raise NotImplementedError
*
@@ -132799,20 +141133,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_314factorSymbolicILU(struct PyPe
((void)__pyx_v_iscol);
((void)__pyx_v_options);
- /* "PETSc/Mat.pyx":1287
- * def factorSymbolicILU(self, IS isrow not None, IS iscol not None, options=None):
+ /* "PETSc/Mat.pyx":1316
+ * def factorSymbolicILU(self, IS isrow, IS iscol, options=None):
* <void>self; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError # <<<<<<<<<<<<<<
*
- * def factorCholesky(self, IS isperm not None, options=None):
+ * def factorCholesky(self, IS isperm, options=None):
*/
__Pyx_Raise(__pyx_builtin_NotImplementedError, 0, 0, 0);
- __PYX_ERR(33, 1287, __pyx_L1_error)
+ __PYX_ERR(33, 1316, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1285
+ /* "PETSc/Mat.pyx":1314
* matfactorinfo(PETSC_TRUE, PETSC_FALSE, options, &info)
* CHKERR( MatILUFactor(self.mat, isrow.iset, iscol.iset, &info) )
- * def factorSymbolicILU(self, IS isrow not None, IS iscol not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicILU(self, IS isrow, IS iscol, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>isrow; <void>iscol; <void>options; # unused
* raise NotImplementedError
*/
@@ -132826,18 +141160,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_314factorSymbolicILU(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1289
+/* "PETSc/Mat.pyx":1318
* raise NotImplementedError
*
- * def factorCholesky(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorCholesky(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_TRUE, options, &info)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_316factorCholesky[] = "Mat.factorCholesky(self, IS isperm, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_324factorCholesky[] = "Mat.factorCholesky(self, IS isperm, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isperm = 0;
PyObject *__pyx_v_options = 0;
PyObject *__pyx_r = 0;
@@ -132852,7 +141186,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132861,6 +141197,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isperm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -132868,11 +141205,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorCholesky") < 0)) __PYX_ERR(33, 1289, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorCholesky") < 0)) __PYX_ERR(33, 1318, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -132883,14 +141221,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorCholesky", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1289, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorCholesky", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1318, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorCholesky", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1289, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_316factorCholesky(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1318, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_324factorCholesky(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -132901,35 +141239,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky(PyObject *__py
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_316factorCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_324factorCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
MatFactorInfo __pyx_v_info;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("factorCholesky", 0);
- /* "PETSc/Mat.pyx":1291
- * def factorCholesky(self, IS isperm not None, options=None):
+ /* "PETSc/Mat.pyx":1320
+ * def factorCholesky(self, IS isperm, options=None):
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_TRUE, options, &info) # <<<<<<<<<<<<<<
* CHKERR( MatCholeskyFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicCholesky(self, IS isperm not None, options=None):
+ * def factorSymbolicCholesky(self, IS isperm, options=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_FALSE, PETSC_TRUE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1291, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_FALSE, PETSC_TRUE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1320, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1292
+ /* "PETSc/Mat.pyx":1321
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_TRUE, options, &info)
* CHKERR( MatCholeskyFactor(self.mat, isperm.iset, &info) ) # <<<<<<<<<<<<<<
- * def factorSymbolicCholesky(self, IS isperm not None, options=None):
+ * def factorSymbolicCholesky(self, IS isperm, options=None):
* <void>self; <void>isperm; <void>options; # unused
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCholeskyFactor(__pyx_v_self->mat, __pyx_v_isperm->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1292, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatCholeskyFactor(__pyx_v_self->mat, __pyx_v_isperm->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1321, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1289
+ /* "PETSc/Mat.pyx":1318
* raise NotImplementedError
*
- * def factorCholesky(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorCholesky(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_FALSE, PETSC_TRUE, options, &info)
*/
@@ -132946,18 +141284,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_316factorCholesky(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1293
+/* "PETSc/Mat.pyx":1322
* matfactorinfo(PETSC_FALSE, PETSC_TRUE, options, &info)
* CHKERR( MatCholeskyFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicCholesky(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicCholesky(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_318factorSymbolicCholesky[] = "Mat.factorSymbolicCholesky(self, IS isperm, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_327factorSymbolicCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_326factorSymbolicCholesky[] = "Mat.factorSymbolicCholesky(self, IS isperm, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_327factorSymbolicCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isperm = 0;
PyObject *__pyx_v_options = 0;
PyObject *__pyx_r = 0;
@@ -132972,7 +141310,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -132981,6 +141321,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky(PyObje
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isperm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -132988,11 +141329,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky(PyObje
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicCholesky") < 0)) __PYX_ERR(33, 1293, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicCholesky") < 0)) __PYX_ERR(33, 1322, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -133003,14 +141345,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorSymbolicCholesky", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1293, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorSymbolicCholesky", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1322, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorSymbolicCholesky", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1293, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_318factorSymbolicCholesky(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1322, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_326factorSymbolicCholesky(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -133021,36 +141363,36 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky(PyObje
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_318factorSymbolicCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326factorSymbolicCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("factorSymbolicCholesky", 0);
- /* "PETSc/Mat.pyx":1294
+ /* "PETSc/Mat.pyx":1323
* CHKERR( MatCholeskyFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicCholesky(self, IS isperm not None, options=None):
+ * def factorSymbolicCholesky(self, IS isperm, options=None):
* <void>self; <void>isperm; <void>options; # unused # <<<<<<<<<<<<<<
* raise NotImplementedError
- * def factorNumericCholesky(self, Mat mat not None, options=None):
+ * def factorNumericCholesky(self, Mat mat, options=None):
*/
((void)__pyx_v_self);
((void)__pyx_v_isperm);
((void)__pyx_v_options);
- /* "PETSc/Mat.pyx":1295
- * def factorSymbolicCholesky(self, IS isperm not None, options=None):
+ /* "PETSc/Mat.pyx":1324
+ * def factorSymbolicCholesky(self, IS isperm, options=None):
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError # <<<<<<<<<<<<<<
- * def factorNumericCholesky(self, Mat mat not None, options=None):
+ * def factorNumericCholesky(self, Mat mat, options=None):
* <void>self; <void>mat; <void>options; # unused
*/
__Pyx_Raise(__pyx_builtin_NotImplementedError, 0, 0, 0);
- __PYX_ERR(33, 1295, __pyx_L1_error)
+ __PYX_ERR(33, 1324, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1293
+ /* "PETSc/Mat.pyx":1322
* matfactorinfo(PETSC_FALSE, PETSC_TRUE, options, &info)
* CHKERR( MatCholeskyFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicCholesky(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicCholesky(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError
*/
@@ -133064,18 +141406,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_318factorSymbolicCholesky(struct
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1296
+/* "PETSc/Mat.pyx":1325
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError
- * def factorNumericCholesky(self, Mat mat not None, options=None): # <<<<<<<<<<<<<<
+ * def factorNumericCholesky(self, Mat mat, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_320factorNumericCholesky[] = "Mat.factorNumericCholesky(self, Mat mat, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_329factorNumericCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_328factorNumericCholesky[] = "Mat.factorNumericCholesky(self, Mat mat, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_329factorNumericCholesky(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_mat = 0;
PyObject *__pyx_v_options = 0;
PyObject *__pyx_r = 0;
@@ -133090,7 +141432,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -133099,6 +141443,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky(PyObjec
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -133106,11 +141451,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky(PyObjec
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorNumericCholesky") < 0)) __PYX_ERR(33, 1296, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorNumericCholesky") < 0)) __PYX_ERR(33, 1325, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -133121,14 +141467,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorNumericCholesky", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1296, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorNumericCholesky", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1325, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorNumericCholesky", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1296, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_320factorNumericCholesky(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1325, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_328factorNumericCholesky(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_mat, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -133139,36 +141485,36 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky(PyObjec
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_320factorNumericCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_328factorNumericCholesky(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_options) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("factorNumericCholesky", 0);
- /* "PETSc/Mat.pyx":1297
+ /* "PETSc/Mat.pyx":1326
* raise NotImplementedError
- * def factorNumericCholesky(self, Mat mat not None, options=None):
+ * def factorNumericCholesky(self, Mat mat, options=None):
* <void>self; <void>mat; <void>options; # unused # <<<<<<<<<<<<<<
* raise NotImplementedError
- * def factorICC(self, IS isperm not None, options=None):
+ * def factorICC(self, IS isperm, options=None):
*/
((void)__pyx_v_self);
((void)__pyx_v_mat);
((void)__pyx_v_options);
- /* "PETSc/Mat.pyx":1298
- * def factorNumericCholesky(self, Mat mat not None, options=None):
+ /* "PETSc/Mat.pyx":1327
+ * def factorNumericCholesky(self, Mat mat, options=None):
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError # <<<<<<<<<<<<<<
- * def factorICC(self, IS isperm not None, options=None):
+ * def factorICC(self, IS isperm, options=None):
* cdef PetscMatFactorInfo info
*/
__Pyx_Raise(__pyx_builtin_NotImplementedError, 0, 0, 0);
- __PYX_ERR(33, 1298, __pyx_L1_error)
+ __PYX_ERR(33, 1327, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1296
+ /* "PETSc/Mat.pyx":1325
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError
- * def factorNumericCholesky(self, Mat mat not None, options=None): # <<<<<<<<<<<<<<
+ * def factorNumericCholesky(self, Mat mat, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
*/
@@ -133182,18 +141528,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_320factorNumericCholesky(struct
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1299
+/* "PETSc/Mat.pyx":1328
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
- * def factorICC(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorICC(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_TRUE, options, &info)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_322factorICC[] = "Mat.factorICC(self, IS isperm, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_331factorICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_330factorICC[] = "Mat.factorICC(self, IS isperm, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_331factorICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isperm = 0;
PyObject *__pyx_v_options = 0;
PyObject *__pyx_r = 0;
@@ -133208,7 +141554,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -133217,6 +141565,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isperm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -133224,11 +141573,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorICC") < 0)) __PYX_ERR(33, 1299, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorICC") < 0)) __PYX_ERR(33, 1328, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -133239,14 +141589,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorICC", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1299, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorICC", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1328, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorICC", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1299, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_322factorICC(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1328, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_330factorICC(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -133257,35 +141607,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_322factorICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_330factorICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
MatFactorInfo __pyx_v_info;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("factorICC", 0);
- /* "PETSc/Mat.pyx":1301
- * def factorICC(self, IS isperm not None, options=None):
+ /* "PETSc/Mat.pyx":1330
+ * def factorICC(self, IS isperm, options=None):
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_TRUE, options, &info) # <<<<<<<<<<<<<<
* CHKERR( MatICCFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicICC(self, IS isperm not None, options=None):
+ * def factorSymbolicICC(self, IS isperm, options=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_TRUE, PETSC_TRUE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1301, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_matfactorinfo(PETSC_TRUE, PETSC_TRUE, __pyx_v_options, (&__pyx_v_info)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1330, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1302
+ /* "PETSc/Mat.pyx":1331
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_TRUE, options, &info)
* CHKERR( MatICCFactor(self.mat, isperm.iset, &info) ) # <<<<<<<<<<<<<<
- * def factorSymbolicICC(self, IS isperm not None, options=None):
+ * def factorSymbolicICC(self, IS isperm, options=None):
* <void>self; <void>isperm; <void>options; # unused
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatICCFactor(__pyx_v_self->mat, __pyx_v_isperm->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1302, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatICCFactor(__pyx_v_self->mat, __pyx_v_isperm->iset, (&__pyx_v_info))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1331, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1299
+ /* "PETSc/Mat.pyx":1328
* <void>self; <void>mat; <void>options; # unused
* raise NotImplementedError
- * def factorICC(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorICC(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* cdef PetscMatFactorInfo info
* matfactorinfo(PETSC_TRUE, PETSC_TRUE, options, &info)
*/
@@ -133302,18 +141652,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_322factorICC(struct PyPetscMatOb
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1303
+/* "PETSc/Mat.pyx":1332
* matfactorinfo(PETSC_TRUE, PETSC_TRUE, options, &info)
* CHKERR( MatICCFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicICC(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicICC(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_324factorSymbolicICC[] = "Mat.factorSymbolicICC(self, IS isperm, options=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_333factorSymbolicICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_332factorSymbolicICC[] = "Mat.factorSymbolicICC(self, IS isperm, options=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_333factorSymbolicICC(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_isperm = 0;
PyObject *__pyx_v_options = 0;
PyObject *__pyx_r = 0;
@@ -133328,7 +141678,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -133337,6 +141689,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_isperm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_options);
@@ -133344,11 +141697,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicICC") < 0)) __PYX_ERR(33, 1303, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "factorSymbolicICC") < 0)) __PYX_ERR(33, 1332, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -133359,14 +141713,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("factorSymbolicICC", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1303, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("factorSymbolicICC", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1332, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.factorSymbolicICC", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1303, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_324factorSymbolicICC(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_isperm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "isperm", 0))) __PYX_ERR(33, 1332, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_332factorSymbolicICC(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_isperm, __pyx_v_options);
/* function exit code */
goto __pyx_L0;
@@ -133377,14 +141731,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC(PyObject *_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_324factorSymbolicICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332factorSymbolicICC(struct PyPetscMatObject *__pyx_v_self, struct PyPetscISObject *__pyx_v_isperm, PyObject *__pyx_v_options) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("factorSymbolicICC", 0);
- /* "PETSc/Mat.pyx":1304
+ /* "PETSc/Mat.pyx":1333
* CHKERR( MatICCFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicICC(self, IS isperm not None, options=None):
+ * def factorSymbolicICC(self, IS isperm, options=None):
* <void>self; <void>isperm; <void>options; # unused # <<<<<<<<<<<<<<
* raise NotImplementedError
*
@@ -133393,20 +141747,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_324factorSymbolicICC(struct PyPe
((void)__pyx_v_isperm);
((void)__pyx_v_options);
- /* "PETSc/Mat.pyx":1305
- * def factorSymbolicICC(self, IS isperm not None, options=None):
+ /* "PETSc/Mat.pyx":1334
+ * def factorSymbolicICC(self, IS isperm, options=None):
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError # <<<<<<<<<<<<<<
*
* def getInertia(self):
*/
__Pyx_Raise(__pyx_builtin_NotImplementedError, 0, 0, 0);
- __PYX_ERR(33, 1305, __pyx_L1_error)
+ __PYX_ERR(33, 1334, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1303
+ /* "PETSc/Mat.pyx":1332
* matfactorinfo(PETSC_TRUE, PETSC_TRUE, options, &info)
* CHKERR( MatICCFactor(self.mat, isperm.iset, &info) )
- * def factorSymbolicICC(self, IS isperm not None, options=None): # <<<<<<<<<<<<<<
+ * def factorSymbolicICC(self, IS isperm, options=None): # <<<<<<<<<<<<<<
* <void>self; <void>isperm; <void>options; # unused
* raise NotImplementedError
*/
@@ -133420,7 +141774,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_324factorSymbolicICC(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1307
+/* "PETSc/Mat.pyx":1336
* raise NotImplementedError
*
* def getInertia(self): # <<<<<<<<<<<<<<
@@ -133429,23 +141783,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_324factorSymbolicICC(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_327getInertia(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_326getInertia[] = "Mat.getInertia(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_327getInertia(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_335getInertia(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_334getInertia[] = "Mat.getInertia(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_335getInertia(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getInertia (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getInertia", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getInertia", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_334getInertia(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_334getInertia(struct PyPetscMatObject *__pyx_v_self) {
PetscInt __pyx_v_ival1;
PetscInt __pyx_v_ival2;
PetscInt __pyx_v_ival3;
@@ -133458,7 +141812,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatO
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getInertia", 0);
- /* "PETSc/Mat.pyx":1308
+ /* "PETSc/Mat.pyx":1337
*
* def getInertia(self):
* cdef PetscInt ival1 = 0, ival2 = 0, ival3 = 0 # <<<<<<<<<<<<<<
@@ -133469,16 +141823,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatO
__pyx_v_ival2 = 0;
__pyx_v_ival3 = 0;
- /* "PETSc/Mat.pyx":1309
+ /* "PETSc/Mat.pyx":1338
* def getInertia(self):
* cdef PetscInt ival1 = 0, ival2 = 0, ival3 = 0
* CHKERR( MatGetInertia(self.mat, &ival1, &ival2, &ival3) ) # <<<<<<<<<<<<<<
* return (toInt(ival1), toInt(ival2), toInt(ival3))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetInertia(__pyx_v_self->mat, (&__pyx_v_ival1), (&__pyx_v_ival2), (&__pyx_v_ival3))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1309, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetInertia(__pyx_v_self->mat, (&__pyx_v_ival1), (&__pyx_v_ival2), (&__pyx_v_ival3))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1338, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1310
+ /* "PETSc/Mat.pyx":1339
* cdef PetscInt ival1 = 0, ival2 = 0, ival3 = 0
* CHKERR( MatGetInertia(self.mat, &ival1, &ival2, &ival3) )
* return (toInt(ival1), toInt(ival2), toInt(ival3)) # <<<<<<<<<<<<<<
@@ -133486,13 +141840,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatO
* def setUnfactored(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival1); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1310, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival1); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1310, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival2); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival3); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1310, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival3); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1310, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
@@ -133507,7 +141861,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatO
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1307
+ /* "PETSc/Mat.pyx":1336
* raise NotImplementedError
*
* def getInertia(self): # <<<<<<<<<<<<<<
@@ -133529,7 +141883,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatO
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1312
+/* "PETSc/Mat.pyx":1341
* return (toInt(ival1), toInt(ival2), toInt(ival3))
*
* def setUnfactored(self): # <<<<<<<<<<<<<<
@@ -133538,38 +141892,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_326getInertia(struct PyPetscMatO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_329setUnfactored(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_328setUnfactored[] = "Mat.setUnfactored(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_329setUnfactored(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_337setUnfactored(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_336setUnfactored[] = "Mat.setUnfactored(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_337setUnfactored(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("setUnfactored (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("setUnfactored", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "setUnfactored", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_328setUnfactored(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_336setUnfactored(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_328setUnfactored(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336setUnfactored(struct PyPetscMatObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setUnfactored", 0);
- /* "PETSc/Mat.pyx":1313
+ /* "PETSc/Mat.pyx":1342
*
* def setUnfactored(self):
* CHKERR( MatSetUnfactored(self.mat) ) # <<<<<<<<<<<<<<
*
- * # MUMPS
+ * # LRC
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetUnfactored(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1313, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSetUnfactored(__pyx_v_self->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1342, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1312
+ /* "PETSc/Mat.pyx":1341
* return (toInt(ival1), toInt(ival2), toInt(ival3))
*
* def setUnfactored(self): # <<<<<<<<<<<<<<
@@ -133589,7 +141943,185 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_328setUnfactored(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1317
+/* "PETSc/Mat.pyx":1346
+ * # LRC
+ *
+ * def getLRCMats(self): # <<<<<<<<<<<<<<
+ * cdef Mat A = Mat()
+ * cdef Mat U = Mat()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_339getLRCMats(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_338getLRCMats[] = "Mat.getLRCMats(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_339getLRCMats(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getLRCMats (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getLRCMats", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getLRCMats", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_338getLRCMats(((struct PyPetscMatObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getLRCMats(struct PyPetscMatObject *__pyx_v_self) {
+ struct PyPetscMatObject *__pyx_v_A = 0;
+ struct PyPetscMatObject *__pyx_v_U = 0;
+ struct PyPetscVecObject *__pyx_v_c = 0;
+ struct PyPetscMatObject *__pyx_v_V = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getLRCMats", 0);
+
+ /* "PETSc/Mat.pyx":1347
+ *
+ * def getLRCMats(self):
+ * cdef Mat A = Mat() # <<<<<<<<<<<<<<
+ * cdef Mat U = Mat()
+ * cdef Vec c = Vec()
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1347, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_A = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Mat.pyx":1348
+ * def getLRCMats(self):
+ * cdef Mat A = Mat()
+ * cdef Mat U = Mat() # <<<<<<<<<<<<<<
+ * cdef Vec c = Vec()
+ * cdef Mat V = Mat()
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1348, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_U = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Mat.pyx":1349
+ * cdef Mat A = Mat()
+ * cdef Mat U = Mat()
+ * cdef Vec c = Vec() # <<<<<<<<<<<<<<
+ * cdef Mat V = Mat()
+ * CHKERR( MatLRCGetMats(self.mat, &A.mat, &U.mat, &c.vec, &V.mat) )
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1349, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_c = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Mat.pyx":1350
+ * cdef Mat U = Mat()
+ * cdef Vec c = Vec()
+ * cdef Mat V = Mat() # <<<<<<<<<<<<<<
+ * CHKERR( MatLRCGetMats(self.mat, &A.mat, &U.mat, &c.vec, &V.mat) )
+ * PetscINCREF(A.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1350, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_V = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/Mat.pyx":1351
+ * cdef Vec c = Vec()
+ * cdef Mat V = Mat()
+ * CHKERR( MatLRCGetMats(self.mat, &A.mat, &U.mat, &c.vec, &V.mat) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(A.obj)
+ * PetscINCREF(U.obj)
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatLRCGetMats(__pyx_v_self->mat, (&__pyx_v_A->mat), (&__pyx_v_U->mat), (&__pyx_v_c->vec), (&__pyx_v_V->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1351, __pyx_L1_error)
+
+ /* "PETSc/Mat.pyx":1352
+ * cdef Mat V = Mat()
+ * CHKERR( MatLRCGetMats(self.mat, &A.mat, &U.mat, &c.vec, &V.mat) )
+ * PetscINCREF(A.obj) # <<<<<<<<<<<<<<
+ * PetscINCREF(U.obj)
+ * PetscINCREF(c.obj)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_A->__pyx_base.obj);
+
+ /* "PETSc/Mat.pyx":1353
+ * CHKERR( MatLRCGetMats(self.mat, &A.mat, &U.mat, &c.vec, &V.mat) )
+ * PetscINCREF(A.obj)
+ * PetscINCREF(U.obj) # <<<<<<<<<<<<<<
+ * PetscINCREF(c.obj)
+ * PetscINCREF(V.obj)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_U->__pyx_base.obj);
+
+ /* "PETSc/Mat.pyx":1354
+ * PetscINCREF(A.obj)
+ * PetscINCREF(U.obj)
+ * PetscINCREF(c.obj) # <<<<<<<<<<<<<<
+ * PetscINCREF(V.obj)
+ * return (A, U, c, V)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_c->__pyx_base.obj);
+
+ /* "PETSc/Mat.pyx":1355
+ * PetscINCREF(U.obj)
+ * PetscINCREF(c.obj)
+ * PetscINCREF(V.obj) # <<<<<<<<<<<<<<
+ * return (A, U, c, V)
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_V->__pyx_base.obj);
+
+ /* "PETSc/Mat.pyx":1356
+ * PetscINCREF(c.obj)
+ * PetscINCREF(V.obj)
+ * return (A, U, c, V) # <<<<<<<<<<<<<<
+ *
+ * # MUMPS
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1356, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_INCREF(((PyObject *)__pyx_v_A));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_A));
+ PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_A));
+ __Pyx_INCREF(((PyObject *)__pyx_v_U));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_U));
+ PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_U));
+ __Pyx_INCREF(((PyObject *)__pyx_v_c));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_c));
+ PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_c));
+ __Pyx_INCREF(((PyObject *)__pyx_v_V));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_V));
+ PyTuple_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_v_V));
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/Mat.pyx":1346
+ * # LRC
+ *
+ * def getLRCMats(self): # <<<<<<<<<<<<<<
+ * cdef Mat A = Mat()
+ * cdef Mat U = Mat()
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.Mat.getLRCMats", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_A);
+ __Pyx_XDECREF((PyObject *)__pyx_v_U);
+ __Pyx_XDECREF((PyObject *)__pyx_v_c);
+ __Pyx_XDECREF((PyObject *)__pyx_v_V);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/Mat.pyx":1360
* # MUMPS
*
* def setMumpsIcntl(self, icntl, ival): # <<<<<<<<<<<<<<
@@ -133598,9 +142130,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_328setUnfactored(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_331setMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_330setMumpsIcntl[] = "Mat.setMumpsIcntl(self, icntl, ival)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_331setMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_341setMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_340setMumpsIcntl[] = "Mat.setMumpsIcntl(self, icntl, ival)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_341setMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_v_ival = 0;
PyObject *__pyx_r = 0;
@@ -133614,7 +142146,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_331setMumpsIcntl(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -133623,14 +142157,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_331setMumpsIcntl(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_icntl)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ival)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMumpsIcntl", 1, 2, 2, 1); __PYX_ERR(33, 1317, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMumpsIcntl", 1, 2, 2, 1); __PYX_ERR(33, 1360, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMumpsIcntl") < 0)) __PYX_ERR(33, 1317, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMumpsIcntl") < 0)) __PYX_ERR(33, 1360, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -133643,20 +142178,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_331setMumpsIcntl(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMumpsIcntl", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1317, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMumpsIcntl", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1360, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setMumpsIcntl", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_330setMumpsIcntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl, __pyx_v_ival);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_340setMumpsIcntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl, __pyx_v_ival);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_330setMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_ival) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340setMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_ival) {
PetscInt __pyx_v__icntl;
PetscInt __pyx_v__ival;
PyObject *__pyx_r = NULL;
@@ -133665,36 +142200,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_330setMumpsIcntl(struct PyPetscM
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMumpsIcntl", 0);
- /* "PETSc/Mat.pyx":1318
+ /* "PETSc/Mat.pyx":1361
*
* def setMumpsIcntl(self, icntl, ival):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscInt _ival = asInt(ival)
* CHKERR( MatMumpsSetIcntl(self.mat, _icntl, _ival) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1318, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1361, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1319
+ /* "PETSc/Mat.pyx":1362
* def setMumpsIcntl(self, icntl, ival):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt _ival = asInt(ival) # <<<<<<<<<<<<<<
* CHKERR( MatMumpsSetIcntl(self.mat, _icntl, _ival) );
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_ival); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1319, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_ival); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1362, __pyx_L1_error)
__pyx_v__ival = __pyx_t_1;
- /* "PETSc/Mat.pyx":1320
+ /* "PETSc/Mat.pyx":1363
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt _ival = asInt(ival)
* CHKERR( MatMumpsSetIcntl(self.mat, _icntl, _ival) ); # <<<<<<<<<<<<<<
*
* def getMumpsIcntl(self, icntl):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsSetIcntl(__pyx_v_self->mat, __pyx_v__icntl, __pyx_v__ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1320, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsSetIcntl(__pyx_v_self->mat, __pyx_v__icntl, __pyx_v__ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1363, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1317
+ /* "PETSc/Mat.pyx":1360
* # MUMPS
*
* def setMumpsIcntl(self, icntl, ival): # <<<<<<<<<<<<<<
@@ -133714,7 +142249,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_330setMumpsIcntl(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1322
+/* "PETSc/Mat.pyx":1365
* CHKERR( MatMumpsSetIcntl(self.mat, _icntl, _ival) );
*
* def getMumpsIcntl(self, icntl): # <<<<<<<<<<<<<<
@@ -133723,9 +142258,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_330setMumpsIcntl(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_333getMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_332getMumpsIcntl[] = "Mat.getMumpsIcntl(self, icntl)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_333getMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_342getMumpsIcntl[] = "Mat.getMumpsIcntl(self, icntl)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsIcntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -133738,6 +142273,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_333getMumpsIcntl(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -133748,7 +142284,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_333getMumpsIcntl(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsIcntl") < 0)) __PYX_ERR(33, 1322, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsIcntl") < 0)) __PYX_ERR(33, 1365, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -133759,20 +142295,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_333getMumpsIcntl(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMumpsIcntl", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1322, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMumpsIcntl", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1365, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getMumpsIcntl", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsIcntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsIcntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
PetscInt __pyx_v__icntl;
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
@@ -133782,17 +142318,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(struct PyPetscM
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getMumpsIcntl", 0);
- /* "PETSc/Mat.pyx":1323
+ /* "PETSc/Mat.pyx":1366
*
* def getMumpsIcntl(self, icntl):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetIcntl(self.mat, _icntl, &ival) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1323, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1366, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1324
+ /* "PETSc/Mat.pyx":1367
* def getMumpsIcntl(self, icntl):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -133801,16 +142337,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(struct PyPetscM
*/
__pyx_v_ival = 0;
- /* "PETSc/Mat.pyx":1325
+ /* "PETSc/Mat.pyx":1368
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetIcntl(self.mat, _icntl, &ival) ); # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetIcntl(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_ival))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1325, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetIcntl(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_ival))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1368, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1326
+ /* "PETSc/Mat.pyx":1369
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetIcntl(self.mat, _icntl, &ival) );
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -133818,13 +142354,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(struct PyPetscM
* def setMumpsCntl(self, icntl, val):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1326, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1369, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1322
+ /* "PETSc/Mat.pyx":1365
* CHKERR( MatMumpsSetIcntl(self.mat, _icntl, _ival) );
*
* def getMumpsIcntl(self, icntl): # <<<<<<<<<<<<<<
@@ -133843,7 +142379,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1328
+/* "PETSc/Mat.pyx":1371
* return toInt(ival)
*
* def setMumpsCntl(self, icntl, val): # <<<<<<<<<<<<<<
@@ -133852,9 +142388,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_332getMumpsIcntl(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_335setMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_334setMumpsCntl[] = "Mat.setMumpsCntl(self, icntl, val)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_335setMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_345setMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_344setMumpsCntl[] = "Mat.setMumpsCntl(self, icntl, val)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_345setMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_v_val = 0;
PyObject *__pyx_r = 0;
@@ -133868,7 +142404,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_335setMumpsCntl(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -133877,14 +142415,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_335setMumpsCntl(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_icntl)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_val)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMumpsCntl", 1, 2, 2, 1); __PYX_ERR(33, 1328, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMumpsCntl", 1, 2, 2, 1); __PYX_ERR(33, 1371, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMumpsCntl") < 0)) __PYX_ERR(33, 1328, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMumpsCntl") < 0)) __PYX_ERR(33, 1371, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -133897,20 +142436,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_335setMumpsCntl(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMumpsCntl", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1328, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMumpsCntl", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1371, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.setMumpsCntl", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_334setMumpsCntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl, __pyx_v_val);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_344setMumpsCntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl, __pyx_v_val);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_334setMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_val) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344setMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl, PyObject *__pyx_v_val) {
PetscInt __pyx_v__icntl;
PetscReal __pyx_v__val;
PyObject *__pyx_r = NULL;
@@ -133920,36 +142459,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_334setMumpsCntl(struct PyPetscMa
int __pyx_t_3;
__Pyx_RefNannySetupContext("setMumpsCntl", 0);
- /* "PETSc/Mat.pyx":1329
+ /* "PETSc/Mat.pyx":1372
*
* def setMumpsCntl(self, icntl, val):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscReal _val = asReal(val)
* CHKERR( MatMumpsSetCntl(self.mat, _icntl, _val) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1329, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1372, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1330
+ /* "PETSc/Mat.pyx":1373
* def setMumpsCntl(self, icntl, val):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal _val = asReal(val) # <<<<<<<<<<<<<<
* CHKERR( MatMumpsSetCntl(self.mat, _icntl, _val) );
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_val); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(33, 1330, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_val); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(33, 1373, __pyx_L1_error)
__pyx_v__val = __pyx_t_2;
- /* "PETSc/Mat.pyx":1331
+ /* "PETSc/Mat.pyx":1374
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal _val = asReal(val)
* CHKERR( MatMumpsSetCntl(self.mat, _icntl, _val) ); # <<<<<<<<<<<<<<
*
* def getMumpsCntl(self, icntl):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsSetCntl(__pyx_v_self->mat, __pyx_v__icntl, __pyx_v__val)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 1331, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsSetCntl(__pyx_v_self->mat, __pyx_v__icntl, __pyx_v__val)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 1374, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1328
+ /* "PETSc/Mat.pyx":1371
* return toInt(ival)
*
* def setMumpsCntl(self, icntl, val): # <<<<<<<<<<<<<<
@@ -133969,7 +142508,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_334setMumpsCntl(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1333
+/* "PETSc/Mat.pyx":1376
* CHKERR( MatMumpsSetCntl(self.mat, _icntl, _val) );
*
* def getMumpsCntl(self, icntl): # <<<<<<<<<<<<<<
@@ -133978,9 +142517,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_334setMumpsCntl(struct PyPetscMa
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_337getMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_336getMumpsCntl[] = "Mat.getMumpsCntl(self, icntl)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_337getMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347getMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_346getMumpsCntl[] = "Mat.getMumpsCntl(self, icntl)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347getMumpsCntl(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -133993,6 +142532,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_337getMumpsCntl(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134003,7 +142543,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_337getMumpsCntl(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsCntl") < 0)) __PYX_ERR(33, 1333, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsCntl") < 0)) __PYX_ERR(33, 1376, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -134014,20 +142554,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_337getMumpsCntl(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMumpsCntl", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1333, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMumpsCntl", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1376, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getMumpsCntl", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_346getMumpsCntl(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_346getMumpsCntl(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
PetscInt __pyx_v__icntl;
PetscReal __pyx_v_val;
PyObject *__pyx_r = NULL;
@@ -134037,17 +142577,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(struct PyPetscMa
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getMumpsCntl", 0);
- /* "PETSc/Mat.pyx":1334
+ /* "PETSc/Mat.pyx":1377
*
* def getMumpsCntl(self, icntl):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetCntl(self.mat, _icntl, &val) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1334, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1377, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1335
+ /* "PETSc/Mat.pyx":1378
* def getMumpsCntl(self, icntl):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal val = 0 # <<<<<<<<<<<<<<
@@ -134056,16 +142596,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(struct PyPetscMa
*/
__pyx_v_val = 0.0;
- /* "PETSc/Mat.pyx":1336
+ /* "PETSc/Mat.pyx":1379
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetCntl(self.mat, _icntl, &val) ); # <<<<<<<<<<<<<<
* return toReal(val)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetCntl(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_val))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1336, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetCntl(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_val))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1379, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1337
+ /* "PETSc/Mat.pyx":1380
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetCntl(self.mat, _icntl, &val) );
* return toReal(val) # <<<<<<<<<<<<<<
@@ -134073,13 +142613,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(struct PyPetscMa
* def getMumpsInfo(self, icntl):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_val); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1337, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_val); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1380, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1333
+ /* "PETSc/Mat.pyx":1376
* CHKERR( MatMumpsSetCntl(self.mat, _icntl, _val) );
*
* def getMumpsCntl(self, icntl): # <<<<<<<<<<<<<<
@@ -134098,7 +142638,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1339
+/* "PETSc/Mat.pyx":1382
* return toReal(val)
*
* def getMumpsInfo(self, icntl): # <<<<<<<<<<<<<<
@@ -134107,9 +142647,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_336getMumpsCntl(struct PyPetscMa
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_339getMumpsInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_338getMumpsInfo[] = "Mat.getMumpsInfo(self, icntl)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_339getMumpsInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349getMumpsInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_348getMumpsInfo[] = "Mat.getMumpsInfo(self, icntl)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349getMumpsInfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -134122,6 +142662,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_339getMumpsInfo(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134132,7 +142673,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_339getMumpsInfo(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsInfo") < 0)) __PYX_ERR(33, 1339, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsInfo") < 0)) __PYX_ERR(33, 1382, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -134143,20 +142684,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_339getMumpsInfo(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMumpsInfo", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1339, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMumpsInfo", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1382, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getMumpsInfo", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_348getMumpsInfo(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_348getMumpsInfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
PetscInt __pyx_v__icntl;
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
@@ -134166,17 +142707,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(struct PyPetscMa
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getMumpsInfo", 0);
- /* "PETSc/Mat.pyx":1340
+ /* "PETSc/Mat.pyx":1383
*
* def getMumpsInfo(self, icntl):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetInfo(self.mat, _icntl, &ival) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1340, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1383, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1341
+ /* "PETSc/Mat.pyx":1384
* def getMumpsInfo(self, icntl):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -134185,16 +142726,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(struct PyPetscMa
*/
__pyx_v_ival = 0;
- /* "PETSc/Mat.pyx":1342
+ /* "PETSc/Mat.pyx":1385
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetInfo(self.mat, _icntl, &ival) ); # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetInfo(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_ival))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1342, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetInfo(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_ival))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1385, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1343
+ /* "PETSc/Mat.pyx":1386
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetInfo(self.mat, _icntl, &ival) );
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -134202,13 +142743,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(struct PyPetscMa
* def getMumpsInfog(self, icntl):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1343, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1386, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1339
+ /* "PETSc/Mat.pyx":1382
* return toReal(val)
*
* def getMumpsInfo(self, icntl): # <<<<<<<<<<<<<<
@@ -134227,7 +142768,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1345
+/* "PETSc/Mat.pyx":1388
* return toInt(ival)
*
* def getMumpsInfog(self, icntl): # <<<<<<<<<<<<<<
@@ -134236,9 +142777,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_338getMumpsInfo(struct PyPetscMa
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_341getMumpsInfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_340getMumpsInfog[] = "Mat.getMumpsInfog(self, icntl)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_341getMumpsInfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351getMumpsInfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_350getMumpsInfog[] = "Mat.getMumpsInfog(self, icntl)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351getMumpsInfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -134251,6 +142792,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_341getMumpsInfog(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134261,7 +142803,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_341getMumpsInfog(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsInfog") < 0)) __PYX_ERR(33, 1345, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsInfog") < 0)) __PYX_ERR(33, 1388, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -134272,20 +142814,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_341getMumpsInfog(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMumpsInfog", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1345, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMumpsInfog", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1388, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getMumpsInfog", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_350getMumpsInfog(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_350getMumpsInfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
PetscInt __pyx_v__icntl;
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
@@ -134295,17 +142837,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(struct PyPetscM
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getMumpsInfog", 0);
- /* "PETSc/Mat.pyx":1346
+ /* "PETSc/Mat.pyx":1389
*
* def getMumpsInfog(self, icntl):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetInfog(self.mat, _icntl, &ival) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1346, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1389, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1347
+ /* "PETSc/Mat.pyx":1390
* def getMumpsInfog(self, icntl):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -134314,16 +142856,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(struct PyPetscM
*/
__pyx_v_ival = 0;
- /* "PETSc/Mat.pyx":1348
+ /* "PETSc/Mat.pyx":1391
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetInfog(self.mat, _icntl, &ival) ); # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetInfog(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_ival))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1348, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetInfog(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_ival))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1391, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1349
+ /* "PETSc/Mat.pyx":1392
* cdef PetscInt ival = 0
* CHKERR( MatMumpsGetInfog(self.mat, _icntl, &ival) );
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -134331,13 +142873,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(struct PyPetscM
* def getMumpsRinfo(self, icntl):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1349, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1392, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1345
+ /* "PETSc/Mat.pyx":1388
* return toInt(ival)
*
* def getMumpsInfog(self, icntl): # <<<<<<<<<<<<<<
@@ -134356,7 +142898,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1351
+/* "PETSc/Mat.pyx":1394
* return toInt(ival)
*
* def getMumpsRinfo(self, icntl): # <<<<<<<<<<<<<<
@@ -134365,9 +142907,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_340getMumpsInfog(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsRinfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_342getMumpsRinfo[] = "Mat.getMumpsRinfo(self, icntl)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsRinfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353getMumpsRinfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_352getMumpsRinfo[] = "Mat.getMumpsRinfo(self, icntl)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353getMumpsRinfo(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -134380,6 +142922,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsRinfo(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134390,7 +142933,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsRinfo(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsRinfo") < 0)) __PYX_ERR(33, 1351, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsRinfo") < 0)) __PYX_ERR(33, 1394, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -134401,20 +142944,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsRinfo(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMumpsRinfo", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1351, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMumpsRinfo", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1394, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getMumpsRinfo", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_352getMumpsRinfo(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_352getMumpsRinfo(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
PetscInt __pyx_v__icntl;
PetscReal __pyx_v_val;
PyObject *__pyx_r = NULL;
@@ -134424,17 +142967,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(struct PyPetscM
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getMumpsRinfo", 0);
- /* "PETSc/Mat.pyx":1352
+ /* "PETSc/Mat.pyx":1395
*
* def getMumpsRinfo(self, icntl):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetRinfo(self.mat, _icntl, &val) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1352, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1395, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1353
+ /* "PETSc/Mat.pyx":1396
* def getMumpsRinfo(self, icntl):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal val = 0 # <<<<<<<<<<<<<<
@@ -134443,16 +142986,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(struct PyPetscM
*/
__pyx_v_val = 0.0;
- /* "PETSc/Mat.pyx":1354
+ /* "PETSc/Mat.pyx":1397
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetRinfo(self.mat, _icntl, &val) ); # <<<<<<<<<<<<<<
* return toReal(val)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetRinfo(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_val))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1354, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetRinfo(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_val))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1397, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1355
+ /* "PETSc/Mat.pyx":1398
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetRinfo(self.mat, _icntl, &val) );
* return toReal(val) # <<<<<<<<<<<<<<
@@ -134460,13 +143003,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(struct PyPetscM
* def getMumpsRinfog(self, icntl):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_val); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1355, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_val); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1398, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1351
+ /* "PETSc/Mat.pyx":1394
* return toInt(ival)
*
* def getMumpsRinfo(self, icntl): # <<<<<<<<<<<<<<
@@ -134485,7 +143028,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1357
+/* "PETSc/Mat.pyx":1400
* return toReal(val)
*
* def getMumpsRinfog(self, icntl): # <<<<<<<<<<<<<<
@@ -134494,9 +143037,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_342getMumpsRinfo(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_345getMumpsRinfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_344getMumpsRinfog[] = "Mat.getMumpsRinfog(self, icntl)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_345getMumpsRinfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355getMumpsRinfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_354getMumpsRinfog[] = "Mat.getMumpsRinfog(self, icntl)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355getMumpsRinfog(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_icntl = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -134509,6 +143052,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_345getMumpsRinfog(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134519,7 +143063,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_345getMumpsRinfog(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsRinfog") < 0)) __PYX_ERR(33, 1357, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMumpsRinfog") < 0)) __PYX_ERR(33, 1400, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -134530,20 +143074,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_345getMumpsRinfog(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMumpsRinfog", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1357, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMumpsRinfog", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1400, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.getMumpsRinfog", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_344getMumpsRinfog(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_354getMumpsRinfog(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_icntl);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344getMumpsRinfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_354getMumpsRinfog(struct PyPetscMatObject *__pyx_v_self, PyObject *__pyx_v_icntl) {
PetscInt __pyx_v__icntl;
PetscReal __pyx_v_val;
PyObject *__pyx_r = NULL;
@@ -134553,17 +143097,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344getMumpsRinfog(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getMumpsRinfog", 0);
- /* "PETSc/Mat.pyx":1358
+ /* "PETSc/Mat.pyx":1401
*
* def getMumpsRinfog(self, icntl):
* cdef PetscInt _icntl = asInt(icntl) # <<<<<<<<<<<<<<
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetRinfog(self.mat, _icntl, &val) );
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(33, 1358, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_icntl); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(33, 1401, __pyx_L1_error)
__pyx_v__icntl = __pyx_t_1;
- /* "PETSc/Mat.pyx":1359
+ /* "PETSc/Mat.pyx":1402
* def getMumpsRinfog(self, icntl):
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal val = 0 # <<<<<<<<<<<<<<
@@ -134572,16 +143116,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344getMumpsRinfog(struct PyPetsc
*/
__pyx_v_val = 0.0;
- /* "PETSc/Mat.pyx":1360
+ /* "PETSc/Mat.pyx":1403
* cdef PetscInt _icntl = asInt(icntl)
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetRinfog(self.mat, _icntl, &val) ); # <<<<<<<<<<<<<<
* return toReal(val)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetRinfog(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_val))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(33, 1360, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMumpsGetRinfog(__pyx_v_self->mat, __pyx_v__icntl, (&__pyx_v_val))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(33, 1403, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1361
+ /* "PETSc/Mat.pyx":1404
* cdef PetscReal val = 0
* CHKERR( MatMumpsGetRinfog(self.mat, _icntl, &val) );
* return toReal(val) # <<<<<<<<<<<<<<
@@ -134589,13 +143133,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344getMumpsRinfog(struct PyPetsc
* # solve
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_val); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1361, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_val); if (unlikely(!__pyx_t_3)) __PYX_ERR(33, 1404, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1357
+ /* "PETSc/Mat.pyx":1400
* return toReal(val)
*
* def getMumpsRinfog(self, icntl): # <<<<<<<<<<<<<<
@@ -134614,18 +143158,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_344getMumpsRinfog(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1365
+/* "PETSc/Mat.pyx":1408
* # solve
*
- * def solveForward(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveForward(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatForwardSolve(self.mat, b.vec, x.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347solveForward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_346solveForward[] = "Mat.solveForward(self, Vec b, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347solveForward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveForward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_356solveForward[] = "Mat.solveForward(self, Vec b, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveForward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
PyObject *__pyx_r = 0;
@@ -134639,7 +143183,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347solveForward(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134648,14 +143194,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347solveForward(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveForward", 1, 2, 2, 1); __PYX_ERR(33, 1365, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveForward", 1, 2, 2, 1); __PYX_ERR(33, 1408, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveForward") < 0)) __PYX_ERR(33, 1365, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveForward") < 0)) __PYX_ERR(33, 1408, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -134668,15 +143215,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347solveForward(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solveForward", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1365, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveForward", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1408, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.solveForward", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1365, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1365, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_346solveForward(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1408, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1408, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_356solveForward(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -134687,25 +143234,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_347solveForward(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_346solveForward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_356solveForward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("solveForward", 0);
- /* "PETSc/Mat.pyx":1366
+ /* "PETSc/Mat.pyx":1409
*
- * def solveForward(self, Vec b not None, Vec x not None):
+ * def solveForward(self, Vec b, Vec x):
* CHKERR( MatForwardSolve(self.mat, b.vec, x.vec) ) # <<<<<<<<<<<<<<
*
- * def solveBackward(self, Vec b not None, Vec x not None):
+ * def solveBackward(self, Vec b, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatForwardSolve(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1366, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatForwardSolve(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1409, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1365
+ /* "PETSc/Mat.pyx":1408
* # solve
*
- * def solveForward(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveForward(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatForwardSolve(self.mat, b.vec, x.vec) )
*
*/
@@ -134722,18 +143269,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_346solveForward(struct PyPetscMa
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1368
+/* "PETSc/Mat.pyx":1411
* CHKERR( MatForwardSolve(self.mat, b.vec, x.vec) )
*
- * def solveBackward(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveBackward(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatBackwardSolve(self.mat, b.vec, x.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349solveBackward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_348solveBackward[] = "Mat.solveBackward(self, Vec b, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349solveBackward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359solveBackward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_358solveBackward[] = "Mat.solveBackward(self, Vec b, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359solveBackward(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
PyObject *__pyx_r = 0;
@@ -134747,7 +143294,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349solveBackward(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134756,14 +143305,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349solveBackward(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveBackward", 1, 2, 2, 1); __PYX_ERR(33, 1368, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveBackward", 1, 2, 2, 1); __PYX_ERR(33, 1411, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveBackward") < 0)) __PYX_ERR(33, 1368, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveBackward") < 0)) __PYX_ERR(33, 1411, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -134776,15 +143326,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349solveBackward(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solveBackward", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1368, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveBackward", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1411, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.solveBackward", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1368, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1368, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_348solveBackward(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1411, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1411, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_358solveBackward(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -134795,25 +143345,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_349solveBackward(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_348solveBackward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_358solveBackward(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("solveBackward", 0);
- /* "PETSc/Mat.pyx":1369
+ /* "PETSc/Mat.pyx":1412
*
- * def solveBackward(self, Vec b not None, Vec x not None):
+ * def solveBackward(self, Vec b, Vec x):
* CHKERR( MatBackwardSolve(self.mat, b.vec, x.vec) ) # <<<<<<<<<<<<<<
*
- * def solve(self, Vec b not None, Vec x not None):
+ * def solve(self, Vec b, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatBackwardSolve(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1369, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatBackwardSolve(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1412, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1368
+ /* "PETSc/Mat.pyx":1411
* CHKERR( MatForwardSolve(self.mat, b.vec, x.vec) )
*
- * def solveBackward(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveBackward(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatBackwardSolve(self.mat, b.vec, x.vec) )
*
*/
@@ -134830,18 +143380,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_348solveBackward(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1371
+/* "PETSc/Mat.pyx":1414
* CHKERR( MatBackwardSolve(self.mat, b.vec, x.vec) )
*
- * def solve(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solve(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolve(self.mat, b.vec, x.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_350solve[] = "Mat.solve(self, Vec b, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_361solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_360solve[] = "Mat.solve(self, Vec b, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_361solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
PyObject *__pyx_r = 0;
@@ -134855,7 +143405,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351solve(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134864,14 +143416,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351solve(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, 1); __PYX_ERR(33, 1371, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, 1); __PYX_ERR(33, 1414, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(33, 1371, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(33, 1414, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -134884,15 +143437,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351solve(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1371, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1414, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1371, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1371, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_350solve(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1414, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1414, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_360solve(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -134903,25 +143456,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_351solve(PyObject *__pyx_v_self,
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_350solve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360solve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("solve", 0);
- /* "PETSc/Mat.pyx":1372
+ /* "PETSc/Mat.pyx":1415
*
- * def solve(self, Vec b not None, Vec x not None):
+ * def solve(self, Vec b, Vec x):
* CHKERR( MatSolve(self.mat, b.vec, x.vec) ) # <<<<<<<<<<<<<<
*
- * def solveTranspose(self, Vec b not None, Vec x not None):
+ * def solveTranspose(self, Vec b, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolve(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1372, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolve(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1415, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1371
+ /* "PETSc/Mat.pyx":1414
* CHKERR( MatBackwardSolve(self.mat, b.vec, x.vec) )
*
- * def solve(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solve(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolve(self.mat, b.vec, x.vec) )
*
*/
@@ -134938,18 +143491,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_350solve(struct PyPetscMatObject
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1374
+/* "PETSc/Mat.pyx":1417
* CHKERR( MatSolve(self.mat, b.vec, x.vec) )
*
- * def solveTranspose(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveTranspose(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolveTranspose(self.mat, b.vec, x.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353solveTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_352solveTranspose[] = "Mat.solveTranspose(self, Vec b, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353solveTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_363solveTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_362solveTranspose[] = "Mat.solveTranspose(self, Vec b, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_363solveTranspose(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
PyObject *__pyx_r = 0;
@@ -134963,7 +143516,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353solveTranspose(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -134972,14 +143527,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353solveTranspose(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, 1); __PYX_ERR(33, 1374, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, 1); __PYX_ERR(33, 1417, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveTranspose") < 0)) __PYX_ERR(33, 1374, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveTranspose") < 0)) __PYX_ERR(33, 1417, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -134992,15 +143548,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353solveTranspose(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1374, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1417, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.solveTranspose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1374, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1374, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_352solveTranspose(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1417, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1417, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_362solveTranspose(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -135011,25 +143567,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_353solveTranspose(PyObject *__py
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_352solveTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362solveTranspose(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("solveTranspose", 0);
- /* "PETSc/Mat.pyx":1375
+ /* "PETSc/Mat.pyx":1418
*
- * def solveTranspose(self, Vec b not None, Vec x not None):
+ * def solveTranspose(self, Vec b, Vec x):
* CHKERR( MatSolveTranspose(self.mat, b.vec, x.vec) ) # <<<<<<<<<<<<<<
*
- * def solveAdd(self, Vec b not None, Vec y, Vec x not None):
+ * def solveAdd(self, Vec b, Vec y, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolveTranspose(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1375, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolveTranspose(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1418, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1374
+ /* "PETSc/Mat.pyx":1417
* CHKERR( MatSolve(self.mat, b.vec, x.vec) )
*
- * def solveTranspose(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveTranspose(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolveTranspose(self.mat, b.vec, x.vec) )
*
*/
@@ -135046,18 +143602,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_352solveTranspose(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1377
+/* "PETSc/Mat.pyx":1420
* CHKERR( MatSolveTranspose(self.mat, b.vec, x.vec) )
*
- * def solveAdd(self, Vec b not None, Vec y, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveAdd(self, Vec b, Vec y, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolveAdd(self.mat, b.vec, y.vec, x.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355solveAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_354solveAdd[] = "Mat.solveAdd(self, Vec b, Vec y, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355solveAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_365solveAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_364solveAdd[] = "Mat.solveAdd(self, Vec b, Vec y, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_365solveAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
@@ -135072,8 +143628,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355solveAdd(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -135082,19 +143641,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355solveAdd(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveAdd", 1, 3, 3, 1); __PYX_ERR(33, 1377, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveAdd", 1, 3, 3, 1); __PYX_ERR(33, 1420, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveAdd", 1, 3, 3, 2); __PYX_ERR(33, 1377, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveAdd", 1, 3, 3, 2); __PYX_ERR(33, 1420, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveAdd") < 0)) __PYX_ERR(33, 1377, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveAdd") < 0)) __PYX_ERR(33, 1420, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -135109,16 +143670,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355solveAdd(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solveAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1377, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1420, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.solveAdd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1377, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "y", 0))) __PYX_ERR(33, 1377, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1377, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_354solveAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_y, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1420, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1420, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1420, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_364solveAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_y, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -135129,25 +143690,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_355solveAdd(PyObject *__pyx_v_se
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_354solveAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_364solveAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("solveAdd", 0);
- /* "PETSc/Mat.pyx":1378
+ /* "PETSc/Mat.pyx":1421
*
- * def solveAdd(self, Vec b not None, Vec y, Vec x not None):
+ * def solveAdd(self, Vec b, Vec y, Vec x):
* CHKERR( MatSolveAdd(self.mat, b.vec, y.vec, x.vec) ) # <<<<<<<<<<<<<<
*
- * def solveTransposeAdd(self, Vec b not None, Vec y, Vec x not None):
+ * def solveTransposeAdd(self, Vec b, Vec y, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolveAdd(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_y->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1378, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolveAdd(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_y->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1421, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1377
+ /* "PETSc/Mat.pyx":1420
* CHKERR( MatSolveTranspose(self.mat, b.vec, x.vec) )
*
- * def solveAdd(self, Vec b not None, Vec y, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveAdd(self, Vec b, Vec y, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolveAdd(self.mat, b.vec, y.vec, x.vec) )
*
*/
@@ -135164,18 +143725,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_354solveAdd(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1380
+/* "PETSc/Mat.pyx":1423
* CHKERR( MatSolveAdd(self.mat, b.vec, y.vec, x.vec) )
*
- * def solveTransposeAdd(self, Vec b not None, Vec y, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveTransposeAdd(self, Vec b, Vec y, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolveTransposeAdd(self.mat, b.vec, y.vec, x.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_356solveTransposeAdd[] = "Mat.solveTransposeAdd(self, Vec b, Vec y, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_367solveTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_366solveTransposeAdd[] = "Mat.solveTransposeAdd(self, Vec b, Vec y, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_367solveTransposeAdd(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_y = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
@@ -135190,8 +143751,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveTransposeAdd(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -135200,19 +143764,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveTransposeAdd(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveTransposeAdd", 1, 3, 3, 1); __PYX_ERR(33, 1380, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveTransposeAdd", 1, 3, 3, 1); __PYX_ERR(33, 1423, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveTransposeAdd", 1, 3, 3, 2); __PYX_ERR(33, 1380, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveTransposeAdd", 1, 3, 3, 2); __PYX_ERR(33, 1423, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveTransposeAdd") < 0)) __PYX_ERR(33, 1380, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveTransposeAdd") < 0)) __PYX_ERR(33, 1423, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -135227,16 +143793,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveTransposeAdd(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solveTransposeAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1380, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveTransposeAdd", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1423, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.solveTransposeAdd", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1380, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "y", 0))) __PYX_ERR(33, 1380, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1380, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_356solveTransposeAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_y, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(33, 1423, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(33, 1423, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(33, 1423, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_366solveTransposeAdd(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_b, __pyx_v_y, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -135247,25 +143813,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_357solveTransposeAdd(PyObject *_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_356solveTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_366solveTransposeAdd(struct PyPetscMatObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_y, struct PyPetscVecObject *__pyx_v_x) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("solveTransposeAdd", 0);
- /* "PETSc/Mat.pyx":1381
+ /* "PETSc/Mat.pyx":1424
*
- * def solveTransposeAdd(self, Vec b not None, Vec y, Vec x not None):
+ * def solveTransposeAdd(self, Vec b, Vec y, Vec x):
* CHKERR( MatSolveTransposeAdd(self.mat, b.vec, y.vec, x.vec) ) # <<<<<<<<<<<<<<
*
- * def matSolve(self, Mat B not None, Mat X not None):
+ * def matSolve(self, Mat B, Mat X):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolveTransposeAdd(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_y->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1381, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatSolveTransposeAdd(__pyx_v_self->mat, __pyx_v_b->vec, __pyx_v_y->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1424, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1380
+ /* "PETSc/Mat.pyx":1423
* CHKERR( MatSolveAdd(self.mat, b.vec, y.vec, x.vec) )
*
- * def solveTransposeAdd(self, Vec b not None, Vec y, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveTransposeAdd(self, Vec b, Vec y, Vec x): # <<<<<<<<<<<<<<
* CHKERR( MatSolveTransposeAdd(self.mat, b.vec, y.vec, x.vec) )
*
*/
@@ -135282,18 +143848,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_356solveTransposeAdd(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1383
+/* "PETSc/Mat.pyx":1426
* CHKERR( MatSolveTransposeAdd(self.mat, b.vec, y.vec, x.vec) )
*
- * def matSolve(self, Mat B not None, Mat X not None): # <<<<<<<<<<<<<<
+ * def matSolve(self, Mat B, Mat X): # <<<<<<<<<<<<<<
* CHKERR( MatMatSolve(self.mat, B.mat, X.mat) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359matSolve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_358matSolve[] = "Mat.matSolve(self, Mat B, Mat X)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359matSolve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_369matSolve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_368matSolve[] = "Mat.matSolve(self, Mat B, Mat X)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_369matSolve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscMatObject *__pyx_v_B = 0;
struct PyPetscMatObject *__pyx_v_X = 0;
PyObject *__pyx_r = 0;
@@ -135307,7 +143873,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359matSolve(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -135316,14 +143884,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359matSolve(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_B)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_X)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("matSolve", 1, 2, 2, 1); __PYX_ERR(33, 1383, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("matSolve", 1, 2, 2, 1); __PYX_ERR(33, 1426, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matSolve") < 0)) __PYX_ERR(33, 1383, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "matSolve") < 0)) __PYX_ERR(33, 1426, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -135336,15 +143905,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359matSolve(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("matSolve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1383, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("matSolve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1426, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.Mat.matSolve", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_B), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "B", 0))) __PYX_ERR(33, 1383, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_X), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "X", 0))) __PYX_ERR(33, 1383, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_358matSolve(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_B, __pyx_v_X);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_B), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "B", 0))) __PYX_ERR(33, 1426, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_X), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "X", 0))) __PYX_ERR(33, 1426, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_368matSolve(((struct PyPetscMatObject *)__pyx_v_self), __pyx_v_B, __pyx_v_X);
/* function exit code */
goto __pyx_L0;
@@ -135355,25 +143924,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_359matSolve(PyObject *__pyx_v_se
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_358matSolve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_B, struct PyPetscMatObject *__pyx_v_X) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_368matSolve(struct PyPetscMatObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_B, struct PyPetscMatObject *__pyx_v_X) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("matSolve", 0);
- /* "PETSc/Mat.pyx":1384
+ /* "PETSc/Mat.pyx":1427
*
- * def matSolve(self, Mat B not None, Mat X not None):
+ * def matSolve(self, Mat B, Mat X):
* CHKERR( MatMatSolve(self.mat, B.mat, X.mat) ) # <<<<<<<<<<<<<<
*
* # dense matrices
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatSolve(__pyx_v_self->mat, __pyx_v_B->mat, __pyx_v_X->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1384, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatMatSolve(__pyx_v_self->mat, __pyx_v_B->mat, __pyx_v_X->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1427, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1383
+ /* "PETSc/Mat.pyx":1426
* CHKERR( MatSolveTransposeAdd(self.mat, b.vec, y.vec, x.vec) )
*
- * def matSolve(self, Mat B not None, Mat X not None): # <<<<<<<<<<<<<<
+ * def matSolve(self, Mat B, Mat X): # <<<<<<<<<<<<<<
* CHKERR( MatMatSolve(self.mat, B.mat, X.mat) )
*
*/
@@ -135390,7 +143959,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_358matSolve(struct PyPetscMatObj
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1388
+/* "PETSc/Mat.pyx":1431
* # dense matrices
*
* def getDenseArray(self): # <<<<<<<<<<<<<<
@@ -135399,23 +143968,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_358matSolve(struct PyPetscMatObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_361getDenseArray(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_360getDenseArray[] = "Mat.getDenseArray(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_361getDenseArray(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_371getDenseArray(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_370getDenseArray[] = "Mat.getDenseArray(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_371getDenseArray(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDenseArray (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDenseArray", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDenseArray", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_370getDenseArray(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_370getDenseArray(struct PyPetscMatObject *__pyx_v_self) {
PetscInt __pyx_v_m;
PetscInt __pyx_v_N;
PetscInt __pyx_v_lda;
@@ -135433,7 +144002,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getDenseArray", 0);
- /* "PETSc/Mat.pyx":1389
+ /* "PETSc/Mat.pyx":1432
*
* def getDenseArray(self):
* cdef PetscInt m=0, N=0, lda=0 # <<<<<<<<<<<<<<
@@ -135444,7 +144013,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
__pyx_v_N = 0;
__pyx_v_lda = 0;
- /* "PETSc/Mat.pyx":1390
+ /* "PETSc/Mat.pyx":1433
* def getDenseArray(self):
* cdef PetscInt m=0, N=0, lda=0
* cdef PetscScalar *data = NULL # <<<<<<<<<<<<<<
@@ -135453,25 +144022,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
*/
__pyx_v_data = NULL;
- /* "PETSc/Mat.pyx":1391
+ /* "PETSc/Mat.pyx":1434
* cdef PetscInt m=0, N=0, lda=0
* cdef PetscScalar *data = NULL
* CHKERR( MatGetLocalSize(self.mat, &m, NULL) ) # <<<<<<<<<<<<<<
* CHKERR( MatGetSize(self.mat, NULL, &N) )
* lda = m # CHKERR( MatDenseGetLDA(self.mat, &ld) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1391, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetLocalSize(__pyx_v_self->mat, (&__pyx_v_m), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1434, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1392
+ /* "PETSc/Mat.pyx":1435
* cdef PetscScalar *data = NULL
* CHKERR( MatGetLocalSize(self.mat, &m, NULL) )
* CHKERR( MatGetSize(self.mat, NULL, &N) ) # <<<<<<<<<<<<<<
* lda = m # CHKERR( MatDenseGetLDA(self.mat, &ld) )
* CHKERR( MatDenseGetArray(self.mat, &data) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1392, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatGetSize(__pyx_v_self->mat, NULL, (&__pyx_v_N))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1435, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1393
+ /* "PETSc/Mat.pyx":1436
* CHKERR( MatGetLocalSize(self.mat, &m, NULL) )
* CHKERR( MatGetSize(self.mat, NULL, &N) )
* lda = m # CHKERR( MatDenseGetLDA(self.mat, &ld) ) # <<<<<<<<<<<<<<
@@ -135480,16 +144049,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
*/
__pyx_v_lda = __pyx_v_m;
- /* "PETSc/Mat.pyx":1394
+ /* "PETSc/Mat.pyx":1437
* CHKERR( MatGetSize(self.mat, NULL, &N) )
* lda = m # CHKERR( MatDenseGetLDA(self.mat, &ld) )
* CHKERR( MatDenseGetArray(self.mat, &data) ) # <<<<<<<<<<<<<<
* cdef int typenum = NPY_PETSC_SCALAR
* cdef int itemsize = <int>sizeof(PetscScalar)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDenseGetArray(__pyx_v_self->mat, (&__pyx_v_data))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1394, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDenseGetArray(__pyx_v_self->mat, (&__pyx_v_data))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1437, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1395
+ /* "PETSc/Mat.pyx":1438
* lda = m # CHKERR( MatDenseGetLDA(self.mat, &ld) )
* CHKERR( MatDenseGetArray(self.mat, &data) )
* cdef int typenum = NPY_PETSC_SCALAR # <<<<<<<<<<<<<<
@@ -135498,7 +144067,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
*/
__pyx_v_typenum = NPY_PETSC_SCALAR;
- /* "PETSc/Mat.pyx":1396
+ /* "PETSc/Mat.pyx":1439
* CHKERR( MatDenseGetArray(self.mat, &data) )
* cdef int typenum = NPY_PETSC_SCALAR
* cdef int itemsize = <int>sizeof(PetscScalar) # <<<<<<<<<<<<<<
@@ -135507,7 +144076,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
*/
__pyx_v_itemsize = ((int)(sizeof(PetscScalar)));
- /* "PETSc/Mat.pyx":1397
+ /* "PETSc/Mat.pyx":1440
* cdef int typenum = NPY_PETSC_SCALAR
* cdef int itemsize = <int>sizeof(PetscScalar)
* cdef int flags = NPY_ARRAY_FARRAY # <<<<<<<<<<<<<<
@@ -135516,7 +144085,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
*/
__pyx_v_flags = NPY_ARRAY_FARRAY;
- /* "PETSc/Mat.pyx":1399
+ /* "PETSc/Mat.pyx":1442
* cdef int flags = NPY_ARRAY_FARRAY
* cdef npy_intp dims[2], strides[2]
* dims[0] = <npy_intp>m; strides[0] = <npy_intp>sizeof(PetscScalar); # <<<<<<<<<<<<<<
@@ -135526,7 +144095,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
(__pyx_v_dims[0]) = ((npy_intp)__pyx_v_m);
(__pyx_v_strides[0]) = ((npy_intp)(sizeof(PetscScalar)));
- /* "PETSc/Mat.pyx":1400
+ /* "PETSc/Mat.pyx":1443
* cdef npy_intp dims[2], strides[2]
* dims[0] = <npy_intp>m; strides[0] = <npy_intp>sizeof(PetscScalar);
* dims[1] = <npy_intp>N; strides[1] = <npy_intp>(lda*sizeof(PetscScalar)); # <<<<<<<<<<<<<<
@@ -135536,7 +144105,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
(__pyx_v_dims[1]) = ((npy_intp)__pyx_v_N);
(__pyx_v_strides[1]) = ((npy_intp)(__pyx_v_lda * (sizeof(PetscScalar))));
- /* "PETSc/Mat.pyx":1401
+ /* "PETSc/Mat.pyx":1444
* dims[0] = <npy_intp>m; strides[0] = <npy_intp>sizeof(PetscScalar);
* dims[1] = <npy_intp>N; strides[1] = <npy_intp>(lda*sizeof(PetscScalar));
* array = <object>PyArray_New(<PyTypeObject*>ndarray, 2, dims, typenum, # <<<<<<<<<<<<<<
@@ -135549,16 +144118,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
__pyx_v_array = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/Mat.pyx":1403
+ /* "PETSc/Mat.pyx":1446
* array = <object>PyArray_New(<PyTypeObject*>ndarray, 2, dims, typenum,
* strides, data, itemsize, flags, NULL)
* CHKERR( MatDenseRestoreArray(self.mat, &data) ) # <<<<<<<<<<<<<<
* return array
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDenseRestoreArray(__pyx_v_self->mat, (&__pyx_v_data))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1403, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDenseRestoreArray(__pyx_v_self->mat, (&__pyx_v_data))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1446, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1404
+ /* "PETSc/Mat.pyx":1447
* strides, data, itemsize, flags, NULL)
* CHKERR( MatDenseRestoreArray(self.mat, &data) )
* return array # <<<<<<<<<<<<<<
@@ -135570,7 +144139,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
__pyx_r = __pyx_v_array;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1388
+ /* "PETSc/Mat.pyx":1431
* # dense matrices
*
* def getDenseArray(self): # <<<<<<<<<<<<<<
@@ -135590,7 +144159,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1406
+/* "PETSc/Mat.pyx":1449
* return array
*
* def getDenseLocalMatrix(self): # <<<<<<<<<<<<<<
@@ -135599,23 +144168,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_360getDenseArray(struct PyPetscM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_363getDenseLocalMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix[] = "Mat.getDenseLocalMatrix(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_363getDenseLocalMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_373getDenseLocalMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_3Mat_372getDenseLocalMatrix[] = "Mat.getDenseLocalMatrix(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_3Mat_373getDenseLocalMatrix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDenseLocalMatrix (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDenseLocalMatrix", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDenseLocalMatrix", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(((struct PyPetscMatObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_3Mat_372getDenseLocalMatrix(((struct PyPetscMatObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct PyPetscMatObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_372getDenseLocalMatrix(struct PyPetscMatObject *__pyx_v_self) {
struct PyPetscMatObject *__pyx_v_mat = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -135625,7 +144194,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct Py
int __pyx_t_4;
__Pyx_RefNannySetupContext("getDenseLocalMatrix", 0);
- /* "PETSc/Mat.pyx":1407
+ /* "PETSc/Mat.pyx":1450
*
* def getDenseLocalMatrix(self):
* cdef Mat mat = type(self)() # <<<<<<<<<<<<<<
@@ -135634,7 +144203,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct Py
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -135644,27 +144213,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct Py
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1407, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1450, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1407, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1450, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 1407, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_Mat))))) __PYX_ERR(33, 1450, __pyx_L1_error)
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1408
+ /* "PETSc/Mat.pyx":1451
* def getDenseLocalMatrix(self):
* cdef Mat mat = type(self)()
* CHKERR( MatDenseGetLocalMatrix(self.mat, &mat.mat) ) # <<<<<<<<<<<<<<
* PetscINCREF(mat.obj)
* return mat
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDenseGetLocalMatrix(__pyx_v_self->mat, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1408, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatDenseGetLocalMatrix(__pyx_v_self->mat, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1451, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1409
+ /* "PETSc/Mat.pyx":1452
* cdef Mat mat = type(self)()
* CHKERR( MatDenseGetLocalMatrix(self.mat, &mat.mat) )
* PetscINCREF(mat.obj) # <<<<<<<<<<<<<<
@@ -135673,7 +144242,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct Py
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_mat->__pyx_base.obj);
- /* "PETSc/Mat.pyx":1410
+ /* "PETSc/Mat.pyx":1453
* CHKERR( MatDenseGetLocalMatrix(self.mat, &mat.mat) )
* PetscINCREF(mat.obj)
* return mat # <<<<<<<<<<<<<<
@@ -135685,7 +144254,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct Py
__pyx_r = ((PyObject *)__pyx_v_mat);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1406
+ /* "PETSc/Mat.pyx":1449
* return array
*
* def getDenseLocalMatrix(self): # <<<<<<<<<<<<<<
@@ -135707,7 +144276,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix(struct Py
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1415
+/* "PETSc/Mat.pyx":1458
*
* property sizes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -135736,7 +144305,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_5sizes___get__(struct PyPetscMat
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1416
+ /* "PETSc/Mat.pyx":1459
* property sizes:
* def __get__(self):
* return self.getSizes() # <<<<<<<<<<<<<<
@@ -135744,10 +144313,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_5sizes___get__(struct PyPetscMat
* self.setSizes(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1416, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1459, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -135757,10 +144326,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_5sizes___get__(struct PyPetscMat
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1416, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1459, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1416, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1459, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -135768,7 +144337,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_5sizes___get__(struct PyPetscMat
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1415
+ /* "PETSc/Mat.pyx":1458
*
* property sizes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -135789,7 +144358,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_5sizes___get__(struct PyPetscMat
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1417
+/* "PETSc/Mat.pyx":1460
* def __get__(self):
* return self.getSizes()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -135819,17 +144388,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat_5sizes_2__set__(struct PyPetscMatObjec
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/Mat.pyx":1418
+ /* "PETSc/Mat.pyx":1461
* return self.getSizes()
* def __set__(self, value):
* self.setSizes(value) # <<<<<<<<<<<<<<
*
* property size:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1418, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1461, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -135839,23 +144408,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat_5sizes_2__set__(struct PyPetscMatObjec
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1418, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1461, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1418, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1418, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1461, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1461, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1461, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1461, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1417
+ /* "PETSc/Mat.pyx":1460
* def __get__(self):
* return self.getSizes()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -135878,7 +144465,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3Mat_5sizes_2__set__(struct PyPetscMatObjec
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1421
+/* "PETSc/Mat.pyx":1464
*
* property size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -135907,7 +144494,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4size___get__(struct PyPetscMatO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1422
+ /* "PETSc/Mat.pyx":1465
* property size:
* def __get__(self):
* return self.getSize() # <<<<<<<<<<<<<<
@@ -135915,10 +144502,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4size___get__(struct PyPetscMatO
* property local_size:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1422, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1465, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -135928,10 +144515,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4size___get__(struct PyPetscMatO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1422, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1465, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1422, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1465, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -135939,7 +144526,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4size___get__(struct PyPetscMatO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1421
+ /* "PETSc/Mat.pyx":1464
*
* property size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -135960,7 +144547,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_4size___get__(struct PyPetscMatO
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1425
+/* "PETSc/Mat.pyx":1468
*
* property local_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -135989,7 +144576,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10local_size___get__(struct PyPe
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1426
+ /* "PETSc/Mat.pyx":1469
* property local_size:
* def __get__(self):
* return self.getLocalSize() # <<<<<<<<<<<<<<
@@ -135997,10 +144584,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10local_size___get__(struct PyPe
* property block_size:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getLocalSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1426, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getLocalSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1469, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136010,10 +144597,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10local_size___get__(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1426, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1469, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1426, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1469, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136021,7 +144608,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10local_size___get__(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1425
+ /* "PETSc/Mat.pyx":1468
*
* property local_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136042,7 +144629,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10local_size___get__(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1429
+/* "PETSc/Mat.pyx":1472
*
* property block_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136071,7 +144658,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10block_size___get__(struct PyPe
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1430
+ /* "PETSc/Mat.pyx":1473
* property block_size:
* def __get__(self):
* return self.getBlockSize() # <<<<<<<<<<<<<<
@@ -136079,10 +144666,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10block_size___get__(struct PyPe
* property block_sizes:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1430, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1473, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136092,10 +144679,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10block_size___get__(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1430, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1473, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1430, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1473, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136103,7 +144690,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10block_size___get__(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1429
+ /* "PETSc/Mat.pyx":1472
*
* property block_size:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136124,7 +144711,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10block_size___get__(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1433
+/* "PETSc/Mat.pyx":1476
*
* property block_sizes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136153,7 +144740,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11block_sizes___get__(struct PyP
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1434
+ /* "PETSc/Mat.pyx":1477
* property block_sizes:
* def __get__(self):
* return self.getBlockSizes() # <<<<<<<<<<<<<<
@@ -136161,10 +144748,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11block_sizes___get__(struct PyP
* property owner_range:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1434, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBlockSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1477, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136174,10 +144761,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11block_sizes___get__(struct PyP
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1434, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1477, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1434, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1477, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136185,7 +144772,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11block_sizes___get__(struct PyP
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1433
+ /* "PETSc/Mat.pyx":1476
*
* property block_sizes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136206,7 +144793,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11block_sizes___get__(struct PyP
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1437
+/* "PETSc/Mat.pyx":1480
*
* property owner_range:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136235,7 +144822,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11owner_range___get__(struct PyP
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1438
+ /* "PETSc/Mat.pyx":1481
* property owner_range:
* def __get__(self):
* return self.getOwnershipRange() # <<<<<<<<<<<<<<
@@ -136243,10 +144830,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11owner_range___get__(struct PyP
* property owner_ranges:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRange); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1438, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRange); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1481, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136256,10 +144843,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11owner_range___get__(struct PyP
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1438, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1481, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1438, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1481, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136267,7 +144854,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11owner_range___get__(struct PyP
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1437
+ /* "PETSc/Mat.pyx":1480
*
* property owner_range:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136288,7 +144875,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_11owner_range___get__(struct PyP
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1441
+/* "PETSc/Mat.pyx":1484
*
* property owner_ranges:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136317,7 +144904,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12owner_ranges___get__(struct Py
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1442
+ /* "PETSc/Mat.pyx":1485
* property owner_ranges:
* def __get__(self):
* return self.getOwnershipRanges() # <<<<<<<<<<<<<<
@@ -136325,10 +144912,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12owner_ranges___get__(struct Py
* #
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRanges); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1442, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOwnershipRanges); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1485, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136338,10 +144925,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12owner_ranges___get__(struct Py
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1442, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1485, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1442, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1485, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136349,7 +144936,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12owner_ranges___get__(struct Py
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1441
+ /* "PETSc/Mat.pyx":1484
*
* property owner_ranges:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136370,7 +144957,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_12owner_ranges___get__(struct Py
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1447
+/* "PETSc/Mat.pyx":1490
*
* property assembled:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136399,7 +144986,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9assembled___get__(struct PyPets
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1448
+ /* "PETSc/Mat.pyx":1491
* property assembled:
* def __get__(self):
* return self.isAssembled() # <<<<<<<<<<<<<<
@@ -136407,10 +144994,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9assembled___get__(struct PyPets
* def __get__(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isAssembled); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1448, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isAssembled); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1491, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136420,10 +145007,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9assembled___get__(struct PyPets
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1448, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1491, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1448, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1491, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136431,7 +145018,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9assembled___get__(struct PyPets
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1447
+ /* "PETSc/Mat.pyx":1490
*
* property assembled:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136452,7 +145039,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9assembled___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1450
+/* "PETSc/Mat.pyx":1493
* return self.isAssembled()
* property symmetric:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136481,7 +145068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9symmetric___get__(struct PyPets
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1451
+ /* "PETSc/Mat.pyx":1494
* property symmetric:
* def __get__(self):
* return self.isSymmetric() # <<<<<<<<<<<<<<
@@ -136489,10 +145076,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9symmetric___get__(struct PyPets
* def __get__(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isSymmetric); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1451, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isSymmetric); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1494, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136502,10 +145089,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9symmetric___get__(struct PyPets
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1451, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1494, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1451, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1494, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136513,7 +145100,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9symmetric___get__(struct PyPets
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1450
+ /* "PETSc/Mat.pyx":1493
* return self.isAssembled()
* property symmetric:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136534,7 +145121,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9symmetric___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1453
+/* "PETSc/Mat.pyx":1496
* return self.isSymmetric()
* property hermitian:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136563,7 +145150,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9hermitian___get__(struct PyPets
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1454
+ /* "PETSc/Mat.pyx":1497
* property hermitian:
* def __get__(self):
* return self.isHermitian() # <<<<<<<<<<<<<<
@@ -136571,10 +145158,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9hermitian___get__(struct PyPets
* def __get__(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isHermitian); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1454, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isHermitian); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1497, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136584,10 +145171,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9hermitian___get__(struct PyPets
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1454, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1497, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1454, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1497, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136595,7 +145182,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9hermitian___get__(struct PyPets
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1453
+ /* "PETSc/Mat.pyx":1496
* return self.isSymmetric()
* property hermitian:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136616,7 +145203,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_9hermitian___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1456
+/* "PETSc/Mat.pyx":1499
* return self.isHermitian()
* property structsymm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136645,7 +145232,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10structsymm___get__(struct PyPe
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/Mat.pyx":1457
+ /* "PETSc/Mat.pyx":1500
* property structsymm:
* def __get__(self):
* return self.isStructurallySymmetric() # <<<<<<<<<<<<<<
@@ -136653,10 +145240,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10structsymm___get__(struct PyPe
* # --------------------------------------------------------------------
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isStructurallySymmetric); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1457, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_isStructurallySymmetric); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1500, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136666,10 +145253,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10structsymm___get__(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1457, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1500, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1457, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1500, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -136677,7 +145264,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10structsymm___get__(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1456
+ /* "PETSc/Mat.pyx":1499
* return self.isHermitian()
* property structsymm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -136698,7 +145285,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3Mat_10structsymm___get__(struct PyPe
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1465
+/* "PETSc/Mat.pyx":1508
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -136727,7 +145314,7 @@ static int __pyx_pf_8petsc4py_5PETSc_9NullSpace___cinit__(struct PyPetscNullSpac
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/Mat.pyx":1466
+ /* "PETSc/Mat.pyx":1509
*
* def __cinit__(self):
* self.obj = <PetscObject*> &self.nsp # <<<<<<<<<<<<<<
@@ -136736,7 +145323,7 @@ static int __pyx_pf_8petsc4py_5PETSc_9NullSpace___cinit__(struct PyPetscNullSpac
*/
__pyx_v_self->__pyx_base.obj = ((PetscObject *)(&__pyx_v_self->nsp));
- /* "PETSc/Mat.pyx":1467
+ /* "PETSc/Mat.pyx":1510
* def __cinit__(self):
* self.obj = <PetscObject*> &self.nsp
* self.nsp = NULL # <<<<<<<<<<<<<<
@@ -136745,7 +145332,7 @@ static int __pyx_pf_8petsc4py_5PETSc_9NullSpace___cinit__(struct PyPetscNullSpac
*/
__pyx_v_self->nsp = NULL;
- /* "PETSc/Mat.pyx":1465
+ /* "PETSc/Mat.pyx":1508
* #
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -136759,7 +145346,7 @@ static int __pyx_pf_8petsc4py_5PETSc_9NullSpace___cinit__(struct PyPetscNullSpac
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1469
+/* "PETSc/Mat.pyx":1512
* self.nsp = NULL
*
* def __call__(self, vec): # <<<<<<<<<<<<<<
@@ -136782,6 +145369,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_3__call__(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -136792,7 +145380,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_3__call__(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(33, 1469, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(33, 1512, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -136803,7 +145391,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_3__call__(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1469, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1512, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.NullSpace.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -136825,17 +145413,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_2__call__(struct PyPetscNu
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__call__", 0);
- /* "PETSc/Mat.pyx":1470
+ /* "PETSc/Mat.pyx":1513
*
* def __call__(self, vec):
* self.remove(vec) # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_remove); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1470, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_remove); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1513, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -136845,23 +145433,41 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_2__call__(struct PyPetscNu
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_vec); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1470, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_vec); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1513, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1470, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_vec);
- __Pyx_GIVEREF(__pyx_v_vec);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_vec);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1470, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_vec};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1513, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_vec};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1513, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_vec);
+ __Pyx_GIVEREF(__pyx_v_vec);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_vec);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1513, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/Mat.pyx":1469
+ /* "PETSc/Mat.pyx":1512
* self.nsp = NULL
*
* def __call__(self, vec): # <<<<<<<<<<<<<<
@@ -136885,7 +145491,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_2__call__(struct PyPetscNu
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1474
+/* "PETSc/Mat.pyx":1517
* #
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -136910,6 +145516,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_5view(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -136922,11 +145529,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_5view(PyObject *__pyx_v_se
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(33, 1474, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(33, 1517, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -136935,13 +145543,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_5view(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1474, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1517, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.NullSpace.view", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(33, 1474, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(33, 1517, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_9NullSpace_4view(((struct PyPetscNullSpaceObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
@@ -136963,7 +145571,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_4view(struct PyPetscNullSp
int __pyx_t_4;
__Pyx_RefNannySetupContext("view", 0);
- /* "PETSc/Mat.pyx":1475
+ /* "PETSc/Mat.pyx":1518
*
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL # <<<<<<<<<<<<<<
@@ -136972,7 +145580,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_4view(struct PyPetscNullSp
*/
__pyx_v_vwr = NULL;
- /* "PETSc/Mat.pyx":1476
+ /* "PETSc/Mat.pyx":1519
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr # <<<<<<<<<<<<<<
@@ -136986,16 +145594,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_4view(struct PyPetscNullSp
__pyx_v_vwr = __pyx_t_3;
}
- /* "PETSc/Mat.pyx":1477
+ /* "PETSc/Mat.pyx":1520
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr
* CHKERR( MatNullSpaceView(self.nsp, vwr) ) # <<<<<<<<<<<<<<
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceView(__pyx_v_self->nsp, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1477, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceView(__pyx_v_self->nsp, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1520, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1474
+ /* "PETSc/Mat.pyx":1517
* #
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -137015,7 +145623,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_4view(struct PyPetscNullSp
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1479
+/* "PETSc/Mat.pyx":1522
* CHKERR( MatNullSpaceView(self.nsp, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -137046,16 +145654,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_6destroy(struct PyPetscNul
int __pyx_t_1;
__Pyx_RefNannySetupContext("destroy", 0);
- /* "PETSc/Mat.pyx":1480
+ /* "PETSc/Mat.pyx":1523
*
* def destroy(self):
* CHKERR( MatNullSpaceDestroy(&self.nsp) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceDestroy((&__pyx_v_self->nsp))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1480, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceDestroy((&__pyx_v_self->nsp))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1523, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1481
+ /* "PETSc/Mat.pyx":1524
* def destroy(self):
* CHKERR( MatNullSpaceDestroy(&self.nsp) )
* return self # <<<<<<<<<<<<<<
@@ -137067,7 +145675,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_6destroy(struct PyPetscNul
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1479
+ /* "PETSc/Mat.pyx":1522
* CHKERR( MatNullSpaceView(self.nsp, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -137085,7 +145693,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_6destroy(struct PyPetscNul
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1483
+/* "PETSc/Mat.pyx":1526
* return self
*
* def create(self, constant=False, vectors=(), comm=None): # <<<<<<<<<<<<<<
@@ -137114,8 +145722,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_9create(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -137126,11 +145737,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_9create(PyObject *__pyx_v_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_constant);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vectors);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -137138,13 +145751,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_9create(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(33, 1483, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(33, 1526, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -137155,7 +145771,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_9create(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1483, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1526, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.NullSpace.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -137188,17 +145804,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
int __pyx_t_8;
__Pyx_RefNannySetupContext("create", 0);
- /* "PETSc/Mat.pyx":1484
+ /* "PETSc/Mat.pyx":1527
*
* def create(self, constant=False, vectors=(), comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscBool has_const = PETSC_FALSE
* if constant: has_const = PETSC_TRUE
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1484, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(33, 1527, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/Mat.pyx":1485
+ /* "PETSc/Mat.pyx":1528
* def create(self, constant=False, vectors=(), comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool has_const = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -137207,19 +145823,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
*/
__pyx_v_has_const = PETSC_FALSE;
- /* "PETSc/Mat.pyx":1486
+ /* "PETSc/Mat.pyx":1529
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool has_const = PETSC_FALSE
* if constant: has_const = PETSC_TRUE # <<<<<<<<<<<<<<
* cdef PetscInt i = 0, nv = <PetscInt>len(vectors)
* cdef PetscVec *v = NULL
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_constant); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 1486, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_constant); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(33, 1529, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_v_has_const = PETSC_TRUE;
}
- /* "PETSc/Mat.pyx":1487
+ /* "PETSc/Mat.pyx":1530
* cdef PetscBool has_const = PETSC_FALSE
* if constant: has_const = PETSC_TRUE
* cdef PetscInt i = 0, nv = <PetscInt>len(vectors) # <<<<<<<<<<<<<<
@@ -137227,10 +145843,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
* cdef object tmp2 = oarray_p(empty_p(nv), NULL, <void**>&v)
*/
__pyx_v_i = 0;
- __pyx_t_3 = PyObject_Length(__pyx_v_vectors); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 1487, __pyx_L1_error)
+ __pyx_t_3 = PyObject_Length(__pyx_v_vectors); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(33, 1530, __pyx_L1_error)
__pyx_v_nv = ((PetscInt)__pyx_t_3);
- /* "PETSc/Mat.pyx":1488
+ /* "PETSc/Mat.pyx":1531
* if constant: has_const = PETSC_TRUE
* cdef PetscInt i = 0, nv = <PetscInt>len(vectors)
* cdef PetscVec *v = NULL # <<<<<<<<<<<<<<
@@ -137239,22 +145855,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
*/
__pyx_v_v = NULL;
- /* "PETSc/Mat.pyx":1489
+ /* "PETSc/Mat.pyx":1532
* cdef PetscInt i = 0, nv = <PetscInt>len(vectors)
* cdef PetscVec *v = NULL
* cdef object tmp2 = oarray_p(empty_p(nv), NULL, <void**>&v) # <<<<<<<<<<<<<<
* for i from 0 <= i < nv:
* v[i] = (<Vec?>(vectors[<Py_ssize_t>i])).vec
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_nv)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1489, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_nv)); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1532, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_4, NULL, ((void **)(&__pyx_v_v)))); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1489, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_4, NULL, ((void **)(&__pyx_v_v)))); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1532, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_tmp2 = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/Mat.pyx":1490
+ /* "PETSc/Mat.pyx":1533
* cdef PetscVec *v = NULL
* cdef object tmp2 = oarray_p(empty_p(nv), NULL, <void**>&v)
* for i from 0 <= i < nv: # <<<<<<<<<<<<<<
@@ -137264,22 +145880,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
__pyx_t_6 = __pyx_v_nv;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_6; __pyx_v_i++) {
- /* "PETSc/Mat.pyx":1491
+ /* "PETSc/Mat.pyx":1534
* cdef object tmp2 = oarray_p(empty_p(nv), NULL, <void**>&v)
* for i from 0 <= i < nv:
* v[i] = (<Vec?>(vectors[<Py_ssize_t>i])).vec # <<<<<<<<<<<<<<
* cdef PetscNullSpace newnsp = NULL
* CHKERR( MatNullSpaceCreate(ccomm, has_const, nv, v, &newnsp) )
*/
- __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_vectors, ((Py_ssize_t)__pyx_v_i), Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1491, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_vectors, ((Py_ssize_t)__pyx_v_i), Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1534, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- if (!(likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(33, 1491, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(33, 1534, __pyx_L1_error)
__pyx_t_7 = ((struct PyPetscVecObject *)__pyx_t_5)->vec;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
(__pyx_v_v[__pyx_v_i]) = __pyx_t_7;
}
- /* "PETSc/Mat.pyx":1492
+ /* "PETSc/Mat.pyx":1535
* for i from 0 <= i < nv:
* v[i] = (<Vec?>(vectors[<Py_ssize_t>i])).vec
* cdef PetscNullSpace newnsp = NULL # <<<<<<<<<<<<<<
@@ -137288,16 +145904,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
*/
__pyx_v_newnsp = NULL;
- /* "PETSc/Mat.pyx":1493
+ /* "PETSc/Mat.pyx":1536
* v[i] = (<Vec?>(vectors[<Py_ssize_t>i])).vec
* cdef PetscNullSpace newnsp = NULL
* CHKERR( MatNullSpaceCreate(ccomm, has_const, nv, v, &newnsp) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.nsp = newnsp
* return self
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceCreate(__pyx_v_ccomm, __pyx_v_has_const, __pyx_v_nv, __pyx_v_v, (&__pyx_v_newnsp))); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(33, 1493, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceCreate(__pyx_v_ccomm, __pyx_v_has_const, __pyx_v_nv, __pyx_v_v, (&__pyx_v_newnsp))); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(33, 1536, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1494
+ /* "PETSc/Mat.pyx":1537
* cdef PetscNullSpace newnsp = NULL
* CHKERR( MatNullSpaceCreate(ccomm, has_const, nv, v, &newnsp) )
* PetscCLEAR(self.obj); self.nsp = newnsp # <<<<<<<<<<<<<<
@@ -137307,19 +145923,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->nsp = __pyx_v_newnsp;
- /* "PETSc/Mat.pyx":1495
+ /* "PETSc/Mat.pyx":1538
* CHKERR( MatNullSpaceCreate(ccomm, has_const, nv, v, &newnsp) )
* PetscCLEAR(self.obj); self.nsp = newnsp
* return self # <<<<<<<<<<<<<<
*
- * def createRigidBody(self, Vec coords not None):
+ * def createRigidBody(self, Vec coords):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1483
+ /* "PETSc/Mat.pyx":1526
* return self
*
* def create(self, constant=False, vectors=(), comm=None): # <<<<<<<<<<<<<<
@@ -137340,10 +145956,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_8create(struct PyPetscNull
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1497
+/* "PETSc/Mat.pyx":1540
* return self
*
- * def createRigidBody(self, Vec coords not None): # <<<<<<<<<<<<<<
+ * def createRigidBody(self, Vec coords): # <<<<<<<<<<<<<<
* cdef PetscNullSpace newnsp = NULL
* CHKERR( MatNullSpaceCreateRigidBody(coords.vec, &newnsp) )
*/
@@ -137364,6 +145980,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_11createRigidBody(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -137374,7 +145991,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_11createRigidBody(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createRigidBody") < 0)) __PYX_ERR(33, 1497, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createRigidBody") < 0)) __PYX_ERR(33, 1540, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -137385,13 +146002,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_11createRigidBody(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createRigidBody", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1497, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createRigidBody", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1540, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.NullSpace.createRigidBody", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_coords), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "coords", 0))) __PYX_ERR(33, 1497, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_coords), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "coords", 0))) __PYX_ERR(33, 1540, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_9NullSpace_10createRigidBody(((struct PyPetscNullSpaceObject *)__pyx_v_self), __pyx_v_coords);
/* function exit code */
@@ -137410,25 +146027,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_10createRigidBody(struct P
int __pyx_t_1;
__Pyx_RefNannySetupContext("createRigidBody", 0);
- /* "PETSc/Mat.pyx":1498
+ /* "PETSc/Mat.pyx":1541
*
- * def createRigidBody(self, Vec coords not None):
+ * def createRigidBody(self, Vec coords):
* cdef PetscNullSpace newnsp = NULL # <<<<<<<<<<<<<<
* CHKERR( MatNullSpaceCreateRigidBody(coords.vec, &newnsp) )
* PetscCLEAR(self.obj); self.nsp = newnsp
*/
__pyx_v_newnsp = NULL;
- /* "PETSc/Mat.pyx":1499
- * def createRigidBody(self, Vec coords not None):
+ /* "PETSc/Mat.pyx":1542
+ * def createRigidBody(self, Vec coords):
* cdef PetscNullSpace newnsp = NULL
* CHKERR( MatNullSpaceCreateRigidBody(coords.vec, &newnsp) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.nsp = newnsp
* return self
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceCreateRigidBody(__pyx_v_coords->vec, (&__pyx_v_newnsp))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1499, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceCreateRigidBody(__pyx_v_coords->vec, (&__pyx_v_newnsp))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1542, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1500
+ /* "PETSc/Mat.pyx":1543
* cdef PetscNullSpace newnsp = NULL
* CHKERR( MatNullSpaceCreateRigidBody(coords.vec, &newnsp) )
* PetscCLEAR(self.obj); self.nsp = newnsp # <<<<<<<<<<<<<<
@@ -137438,7 +146055,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_10createRigidBody(struct P
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->nsp = __pyx_v_newnsp;
- /* "PETSc/Mat.pyx":1501
+ /* "PETSc/Mat.pyx":1544
* CHKERR( MatNullSpaceCreateRigidBody(coords.vec, &newnsp) )
* PetscCLEAR(self.obj); self.nsp = newnsp
* return self # <<<<<<<<<<<<<<
@@ -137450,10 +146067,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_10createRigidBody(struct P
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1497
+ /* "PETSc/Mat.pyx":1540
* return self
*
- * def createRigidBody(self, Vec coords not None): # <<<<<<<<<<<<<<
+ * def createRigidBody(self, Vec coords): # <<<<<<<<<<<<<<
* cdef PetscNullSpace newnsp = NULL
* CHKERR( MatNullSpaceCreateRigidBody(coords.vec, &newnsp) )
*/
@@ -137468,7 +146085,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_10createRigidBody(struct P
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1503
+/* "PETSc/Mat.pyx":1546
* return self
*
* def setFunction(self, function, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -137496,8 +146113,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_13setFunction(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -137506,11 +146126,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_13setFunction(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_function)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -137518,12 +146140,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_13setFunction(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFunction") < 0)) __PYX_ERR(33, 1503, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFunction") < 0)) __PYX_ERR(33, 1546, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -137535,7 +146159,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_13setFunction(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFunction", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1503, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFunction", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1546, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.NullSpace.setFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -137560,7 +146184,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/Mat.pyx":1504
+ /* "PETSc/Mat.pyx":1547
*
* def setFunction(self, function, args=None, kargs=None):
* if function is not None: # <<<<<<<<<<<<<<
@@ -137571,16 +146195,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/Mat.pyx":1505
+ /* "PETSc/Mat.pyx":1548
* def setFunction(self, function, args=None, kargs=None):
* if function is not None:
* CHKERR( MatNullSpaceSetFunction( # <<<<<<<<<<<<<<
* self.nsp, NullSpace_Function, NULL) )
* if args is None: args = ()
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceSetFunction(__pyx_v_self->nsp, __pyx_f_8petsc4py_5PETSc_NullSpace_Function, NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 1505, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceSetFunction(__pyx_v_self->nsp, __pyx_f_8petsc4py_5PETSc_NullSpace_Function, NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 1548, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1507
+ /* "PETSc/Mat.pyx":1550
* CHKERR( MatNullSpaceSetFunction(
* self.nsp, NullSpace_Function, NULL) )
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -137594,7 +146218,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/Mat.pyx":1508
+ /* "PETSc/Mat.pyx":1551
* self.nsp, NullSpace_Function, NULL) )
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -137604,20 +146228,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1508, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1551, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/Mat.pyx":1509
+ /* "PETSc/Mat.pyx":1552
* if args is None: args = ()
* if kargs is None: kargs = {}
* self.set_attr('__function__', (function, args, kargs)) # <<<<<<<<<<<<<<
* else:
* CHKERR( MatNullSpaceSetFunction(self.nsp, NULL, NULL) )
*/
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1509, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(33, 1552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_function);
__Pyx_GIVEREF(__pyx_v_function);
@@ -137628,12 +146252,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
__Pyx_INCREF(__pyx_v_kargs);
__Pyx_GIVEREF(__pyx_v_kargs);
PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_kargs);
- __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__function__"), __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1509, __pyx_L1_error)
+ __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__function__"), __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/Mat.pyx":1504
+ /* "PETSc/Mat.pyx":1547
*
* def setFunction(self, function, args=None, kargs=None):
* if function is not None: # <<<<<<<<<<<<<<
@@ -137643,7 +146267,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
goto __pyx_L3;
}
- /* "PETSc/Mat.pyx":1511
+ /* "PETSc/Mat.pyx":1554
* self.set_attr('__function__', (function, args, kargs))
* else:
* CHKERR( MatNullSpaceSetFunction(self.nsp, NULL, NULL) ) # <<<<<<<<<<<<<<
@@ -137651,22 +146275,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
* #
*/
/*else*/ {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceSetFunction(__pyx_v_self->nsp, NULL, NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(33, 1511, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceSetFunction(__pyx_v_self->nsp, NULL, NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(33, 1554, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1512
+ /* "PETSc/Mat.pyx":1555
* else:
* CHKERR( MatNullSpaceSetFunction(self.nsp, NULL, NULL) )
* self.set_attr('__function__', None) # <<<<<<<<<<<<<<
* #
*
*/
- __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__function__"), Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1512, __pyx_L1_error)
+ __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__function__"), Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(33, 1555, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__pyx_L3:;
- /* "PETSc/Mat.pyx":1503
+ /* "PETSc/Mat.pyx":1546
* return self
*
* def setFunction(self, function, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -137690,7 +146314,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_12setFunction(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1515
+/* "PETSc/Mat.pyx":1558
* #
*
* def hasConstant(self): # <<<<<<<<<<<<<<
@@ -137723,39 +146347,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_14hasConstant(struct PyPet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("hasConstant", 0);
- /* "PETSc/Mat.pyx":1516
+ /* "PETSc/Mat.pyx":1559
*
* def hasConstant(self):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( MatNullSpaceGetVecs(self.nsp, &flag, NULL, NULL) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/Mat.pyx":1517
+ /* "PETSc/Mat.pyx":1560
* def hasConstant(self):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatNullSpaceGetVecs(self.nsp, &flag, NULL, NULL) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceGetVecs(__pyx_v_self->nsp, (&__pyx_v_flag), NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1517, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceGetVecs(__pyx_v_self->nsp, (&__pyx_v_flag), NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1560, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1518
+ /* "PETSc/Mat.pyx":1561
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( MatNullSpaceGetVecs(self.nsp, &flag, NULL, NULL) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def getVecs(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1518, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1561, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1515
+ /* "PETSc/Mat.pyx":1558
* #
*
* def hasConstant(self): # <<<<<<<<<<<<<<
@@ -137774,8 +146398,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_14hasConstant(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1520
- * return <bint> flag
+/* "PETSc/Mat.pyx":1563
+ * return toBool(flag)
*
* def getVecs(self): # <<<<<<<<<<<<<<
* cdef PetscInt i = 0, nv = 0
@@ -137813,7 +146437,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
int __pyx_t_4;
__Pyx_RefNannySetupContext("getVecs", 0);
- /* "PETSc/Mat.pyx":1521
+ /* "PETSc/Mat.pyx":1564
*
* def getVecs(self):
* cdef PetscInt i = 0, nv = 0 # <<<<<<<<<<<<<<
@@ -137823,7 +146447,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
__pyx_v_i = 0;
__pyx_v_nv = 0;
- /* "PETSc/Mat.pyx":1522
+ /* "PETSc/Mat.pyx":1565
* def getVecs(self):
* cdef PetscInt i = 0, nv = 0
* cdef const_PetscVec *v = NULL # <<<<<<<<<<<<<<
@@ -137832,16 +146456,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
*/
__pyx_v_v = NULL;
- /* "PETSc/Mat.pyx":1523
+ /* "PETSc/Mat.pyx":1566
* cdef PetscInt i = 0, nv = 0
* cdef const_PetscVec *v = NULL
* CHKERR( MatNullSpaceGetVecs(self.nsp, NULL, &nv, &v) ) # <<<<<<<<<<<<<<
* cdef Vec vec = None
* cdef list vectors = []
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceGetVecs(__pyx_v_self->nsp, NULL, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1523, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceGetVecs(__pyx_v_self->nsp, NULL, (&__pyx_v_nv), (&__pyx_v_v))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1566, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1524
+ /* "PETSc/Mat.pyx":1567
* cdef const_PetscVec *v = NULL
* CHKERR( MatNullSpaceGetVecs(self.nsp, NULL, &nv, &v) )
* cdef Vec vec = None # <<<<<<<<<<<<<<
@@ -137851,19 +146475,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
__Pyx_INCREF(Py_None);
__pyx_v_vec = ((struct PyPetscVecObject *)Py_None);
- /* "PETSc/Mat.pyx":1525
+ /* "PETSc/Mat.pyx":1568
* CHKERR( MatNullSpaceGetVecs(self.nsp, NULL, &nv, &v) )
* cdef Vec vec = None
* cdef list vectors = [] # <<<<<<<<<<<<<<
* for i from 0 <= i < nv:
* vec = Vec()
*/
- __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1525, __pyx_L1_error)
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1568, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_vectors = ((PyObject*)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/Mat.pyx":1526
+ /* "PETSc/Mat.pyx":1569
* cdef Vec vec = None
* cdef list vectors = []
* for i from 0 <= i < nv: # <<<<<<<<<<<<<<
@@ -137873,19 +146497,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
__pyx_t_3 = __pyx_v_nv;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
- /* "PETSc/Mat.pyx":1527
+ /* "PETSc/Mat.pyx":1570
* cdef list vectors = []
* for i from 0 <= i < nv:
* vec = Vec() # <<<<<<<<<<<<<<
* vec.vec = v[i]
* PetscINCREF(vec.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1527, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1570, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_vec, ((struct PyPetscVecObject *)__pyx_t_2));
__pyx_t_2 = 0;
- /* "PETSc/Mat.pyx":1528
+ /* "PETSc/Mat.pyx":1571
* for i from 0 <= i < nv:
* vec = Vec()
* vec.vec = v[i] # <<<<<<<<<<<<<<
@@ -137894,7 +146518,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
*/
__pyx_v_vec->vec = (__pyx_v_v[__pyx_v_i]);
- /* "PETSc/Mat.pyx":1529
+ /* "PETSc/Mat.pyx":1572
* vec = Vec()
* vec.vec = v[i]
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -137903,17 +146527,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/Mat.pyx":1530
+ /* "PETSc/Mat.pyx":1573
* vec.vec = v[i]
* PetscINCREF(vec.obj)
* vectors.append(vec) # <<<<<<<<<<<<<<
* return vectors
*
*/
- __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_vectors, ((PyObject *)__pyx_v_vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(33, 1530, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyList_Append(__pyx_v_vectors, ((PyObject *)__pyx_v_vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(33, 1573, __pyx_L1_error)
}
- /* "PETSc/Mat.pyx":1531
+ /* "PETSc/Mat.pyx":1574
* PetscINCREF(vec.obj)
* vectors.append(vec)
* return vectors # <<<<<<<<<<<<<<
@@ -137925,8 +146549,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
__pyx_r = __pyx_v_vectors;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1520
- * return <bint> flag
+ /* "PETSc/Mat.pyx":1563
+ * return toBool(flag)
*
* def getVecs(self): # <<<<<<<<<<<<<<
* cdef PetscInt i = 0, nv = 0
@@ -137946,7 +146570,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_16getVecs(struct PyPetscNu
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1533
+/* "PETSc/Mat.pyx":1576
* return vectors
*
* def getFunction(self): # <<<<<<<<<<<<<<
@@ -137977,7 +146601,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_18getFunction(struct PyPet
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getFunction", 0);
- /* "PETSc/Mat.pyx":1534
+ /* "PETSc/Mat.pyx":1577
*
* def getFunction(self):
* return self.get_attr('__function__') # <<<<<<<<<<<<<<
@@ -137985,13 +146609,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_18getFunction(struct PyPet
* #
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1534, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_NullSpace *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(33, 1577, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/Mat.pyx":1533
+ /* "PETSc/Mat.pyx":1576
* return vectors
*
* def getFunction(self): # <<<<<<<<<<<<<<
@@ -138010,10 +146634,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_18getFunction(struct PyPet
return __pyx_r;
}
-/* "PETSc/Mat.pyx":1538
+/* "PETSc/Mat.pyx":1581
* #
*
- * def remove(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def remove(self, Vec vec): # <<<<<<<<<<<<<<
* CHKERR( MatNullSpaceRemove(self.nsp, vec.vec) )
*
*/
@@ -138034,6 +146658,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_21remove(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138044,7 +146669,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_21remove(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "remove") < 0)) __PYX_ERR(33, 1538, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "remove") < 0)) __PYX_ERR(33, 1581, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -138055,13 +146680,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_21remove(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("remove", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1538, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("remove", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1581, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.NullSpace.remove", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(33, 1538, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(33, 1581, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_9NullSpace_20remove(((struct PyPetscNullSpaceObject *)__pyx_v_self), __pyx_v_vec);
/* function exit code */
@@ -138079,19 +146704,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_20remove(struct PyPetscNul
int __pyx_t_1;
__Pyx_RefNannySetupContext("remove", 0);
- /* "PETSc/Mat.pyx":1539
+ /* "PETSc/Mat.pyx":1582
*
- * def remove(self, Vec vec not None):
+ * def remove(self, Vec vec):
* CHKERR( MatNullSpaceRemove(self.nsp, vec.vec) ) # <<<<<<<<<<<<<<
*
- * # --------------------------------------------------------------------
+ * def test(self, Mat mat):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceRemove(__pyx_v_self->nsp, __pyx_v_vec->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(33, 1539, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceRemove(__pyx_v_self->nsp, __pyx_v_vec->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1582, __pyx_L1_error)
- /* "PETSc/Mat.pyx":1538
+ /* "PETSc/Mat.pyx":1581
* #
*
- * def remove(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def remove(self, Vec vec): # <<<<<<<<<<<<<<
* CHKERR( MatNullSpaceRemove(self.nsp, vec.vec) )
*
*/
@@ -138108,7 +146733,130 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_20remove(struct PyPetscNul
return __pyx_r;
}
-/* "PETSc/PC.pyx":119
+/* "PETSc/Mat.pyx":1584
+ * CHKERR( MatNullSpaceRemove(self.nsp, vec.vec) )
+ *
+ * def test(self, Mat mat): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatNullSpaceTest(self.nsp, mat.mat, &flag) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_23test(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_9NullSpace_22test[] = "NullSpace.test(self, Mat mat)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_9NullSpace_23test(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscMatObject *__pyx_v_mat = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("test (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_mat,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "test") < 0)) __PYX_ERR(33, 1584, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_mat = ((struct PyPetscMatObject *)values[0]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("test", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(33, 1584, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.NullSpace.test", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(33, 1584, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_9NullSpace_22test(((struct PyPetscNullSpaceObject *)__pyx_v_self), __pyx_v_mat);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_9NullSpace_22test(struct PyPetscNullSpaceObject *__pyx_v_self, struct PyPetscMatObject *__pyx_v_mat) {
+ PetscBool __pyx_v_flag;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("test", 0);
+
+ /* "PETSc/Mat.pyx":1585
+ *
+ * def test(self, Mat mat):
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( MatNullSpaceTest(self.nsp, mat.mat, &flag) )
+ * return toBool(flag)
+ */
+ __pyx_v_flag = PETSC_FALSE;
+
+ /* "PETSc/Mat.pyx":1586
+ * def test(self, Mat mat):
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatNullSpaceTest(self.nsp, mat.mat, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(MatNullSpaceTest(__pyx_v_self->nsp, __pyx_v_mat->mat, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(33, 1586, __pyx_L1_error)
+
+ /* "PETSc/Mat.pyx":1587
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatNullSpaceTest(self.nsp, mat.mat, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
+ *
+ * # --------------------------------------------------------------------
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(33, 1587, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/Mat.pyx":1584
+ * CHKERR( MatNullSpaceRemove(self.nsp, vec.vec) )
+ *
+ * def test(self, Mat mat): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( MatNullSpaceTest(self.nsp, mat.mat, &flag) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.NullSpace.test", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/PC.pyx":124
* # --- xxx ---
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -138137,7 +146885,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2PC___cinit__(struct PyPetscPCObject *__pyx
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/PC.pyx":120
+ /* "PETSc/PC.pyx":125
*
* def __cinit__(self):
* self.obj = <PetscObject*> &self.pc # <<<<<<<<<<<<<<
@@ -138146,7 +146894,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2PC___cinit__(struct PyPetscPCObject *__pyx
*/
__pyx_v_self->__pyx_base.obj = ((PetscObject *)(&__pyx_v_self->pc));
- /* "PETSc/PC.pyx":121
+ /* "PETSc/PC.pyx":126
* def __cinit__(self):
* self.obj = <PetscObject*> &self.pc
* self.pc = NULL # <<<<<<<<<<<<<<
@@ -138155,7 +146903,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2PC___cinit__(struct PyPetscPCObject *__pyx
*/
__pyx_v_self->pc = NULL;
- /* "PETSc/PC.pyx":119
+ /* "PETSc/PC.pyx":124
* # --- xxx ---
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -138169,7 +146917,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2PC___cinit__(struct PyPetscPCObject *__pyx
return __pyx_r;
}
-/* "PETSc/PC.pyx":123
+/* "PETSc/PC.pyx":128
* self.pc = NULL
*
* def __call__(self, x, y=None): # <<<<<<<<<<<<<<
@@ -138194,7 +146942,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_3__call__(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138203,6 +146953,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_3__call__(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y);
@@ -138210,11 +146961,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_3__call__(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(34, 123, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(34, 128, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -138225,7 +146977,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_3__call__(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 123, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 128, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -138247,11 +146999,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
- Py_ssize_t __pyx_t_7;
+ int __pyx_t_7;
__Pyx_RefNannySetupContext("__call__", 0);
__Pyx_INCREF(__pyx_v_y);
- /* "PETSc/PC.pyx":124
+ /* "PETSc/PC.pyx":129
*
* def __call__(self, x, y=None):
* if y is None: # XXX do this better # <<<<<<<<<<<<<<
@@ -138262,17 +147014,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/PC.pyx":125
+ /* "PETSc/PC.pyx":130
* def __call__(self, x, y=None):
* if y is None: # XXX do this better
* y = self.getOperators()[0].createVecLeft() # <<<<<<<<<<<<<<
* self.apply(x, y)
* return y
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 125, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -138282,21 +147034,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
}
}
if (__pyx_t_6) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 125, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 130, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 125, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 130, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 125, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 125, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -138306,17 +147058,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
}
}
if (__pyx_t_5) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 125, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 130, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
- __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 125, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 130, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_y, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/PC.pyx":124
+ /* "PETSc/PC.pyx":129
*
* def __call__(self, x, y=None):
* if y is None: # XXX do this better # <<<<<<<<<<<<<<
@@ -138325,18 +147077,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
*/
}
- /* "PETSc/PC.pyx":126
+ /* "PETSc/PC.pyx":131
* if y is None: # XXX do this better
* y = self.getOperators()[0].createVecLeft()
* self.apply(x, y) # <<<<<<<<<<<<<<
* return y
*
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_apply); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 126, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_apply); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 131, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
__pyx_t_7 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -138346,24 +147098,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
__pyx_t_7 = 1;
}
}
- __pyx_t_6 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(34, 126, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- if (__pyx_t_5) {
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_x, __pyx_v_y};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 131, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_x, __pyx_v_y};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 131, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ {
+ __pyx_t_6 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(34, 131, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__pyx_t_5) {
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_x);
+ __Pyx_GIVEREF(__pyx_v_x);
+ PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_7, __pyx_v_x);
+ __Pyx_INCREF(__pyx_v_y);
+ __Pyx_GIVEREF(__pyx_v_y);
+ PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_7, __pyx_v_y);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 131, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- __Pyx_INCREF(__pyx_v_x);
- __Pyx_GIVEREF(__pyx_v_x);
- PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_7, __pyx_v_x);
- __Pyx_INCREF(__pyx_v_y);
- __Pyx_GIVEREF(__pyx_v_y);
- PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_7, __pyx_v_y);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 126, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/PC.pyx":127
+ /* "PETSc/PC.pyx":132
* y = self.getOperators()[0].createVecLeft()
* self.apply(x, y)
* return y # <<<<<<<<<<<<<<
@@ -138375,7 +147145,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
__pyx_r = __pyx_v_y;
goto __pyx_L0;
- /* "PETSc/PC.pyx":123
+ /* "PETSc/PC.pyx":128
* self.pc = NULL
*
* def __call__(self, x, y=None): # <<<<<<<<<<<<<<
@@ -138398,7 +147168,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_2__call__(struct PyPetscPCObject
return __pyx_r;
}
-/* "PETSc/PC.pyx":131
+/* "PETSc/PC.pyx":136
* # --- xxx ---
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -138423,6 +147193,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_5view(PyObject *__pyx_v_self, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138435,11 +147206,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_5view(PyObject *__pyx_v_self, PyO
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(34, 131, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(34, 136, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138448,13 +147220,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_5view(PyObject *__pyx_v_self, PyO
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 131, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 136, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.view", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(34, 131, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(34, 136, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_4view(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
@@ -138476,7 +147248,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_4view(struct PyPetscPCObject *__p
int __pyx_t_4;
__Pyx_RefNannySetupContext("view", 0);
- /* "PETSc/PC.pyx":132
+ /* "PETSc/PC.pyx":137
*
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL # <<<<<<<<<<<<<<
@@ -138485,7 +147257,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_4view(struct PyPetscPCObject *__p
*/
__pyx_v_vwr = NULL;
- /* "PETSc/PC.pyx":133
+ /* "PETSc/PC.pyx":138
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr # <<<<<<<<<<<<<<
@@ -138499,16 +147271,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_4view(struct PyPetscPCObject *__p
__pyx_v_vwr = __pyx_t_3;
}
- /* "PETSc/PC.pyx":134
+ /* "PETSc/PC.pyx":139
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr
* CHKERR( PCView(self.pc, vwr) ) # <<<<<<<<<<<<<<
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCView(__pyx_v_self->pc, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 134, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCView(__pyx_v_self->pc, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 139, __pyx_L1_error)
- /* "PETSc/PC.pyx":131
+ /* "PETSc/PC.pyx":136
* # --- xxx ---
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -138528,7 +147300,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_4view(struct PyPetscPCObject *__p
return __pyx_r;
}
-/* "PETSc/PC.pyx":136
+/* "PETSc/PC.pyx":141
* CHKERR( PCView(self.pc, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -138559,16 +147331,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_6destroy(struct PyPetscPCObject *
int __pyx_t_1;
__Pyx_RefNannySetupContext("destroy", 0);
- /* "PETSc/PC.pyx":137
+ /* "PETSc/PC.pyx":142
*
* def destroy(self):
* CHKERR( PCDestroy(&self.pc) ) # <<<<<<<<<<<<<<
* self.pc = NULL
* return self
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCDestroy((&__pyx_v_self->pc))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 137, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCDestroy((&__pyx_v_self->pc))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 142, __pyx_L1_error)
- /* "PETSc/PC.pyx":138
+ /* "PETSc/PC.pyx":143
* def destroy(self):
* CHKERR( PCDestroy(&self.pc) )
* self.pc = NULL # <<<<<<<<<<<<<<
@@ -138577,7 +147349,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_6destroy(struct PyPetscPCObject *
*/
__pyx_v_self->pc = NULL;
- /* "PETSc/PC.pyx":139
+ /* "PETSc/PC.pyx":144
* CHKERR( PCDestroy(&self.pc) )
* self.pc = NULL
* return self # <<<<<<<<<<<<<<
@@ -138589,7 +147361,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_6destroy(struct PyPetscPCObject *
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/PC.pyx":136
+ /* "PETSc/PC.pyx":141
* CHKERR( PCView(self.pc, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -138607,7 +147379,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_6destroy(struct PyPetscPCObject *
return __pyx_r;
}
-/* "PETSc/PC.pyx":141
+/* "PETSc/PC.pyx":146
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -138632,6 +147404,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_9create(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138644,11 +147417,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_9create(PyObject *__pyx_v_self, P
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(34, 141, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(34, 146, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138657,7 +147431,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_9create(PyObject *__pyx_v_self, P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 141, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 146, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -138679,17 +147453,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_8create(struct PyPetscPCObject *_
int __pyx_t_2;
__Pyx_RefNannySetupContext("create", 0);
- /* "PETSc/PC.pyx":142
+ /* "PETSc/PC.pyx":147
*
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscPC newpc = NULL
* CHKERR( PCCreate(ccomm, &newpc) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 142, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 147, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/PC.pyx":143
+ /* "PETSc/PC.pyx":148
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscPC newpc = NULL # <<<<<<<<<<<<<<
@@ -138698,16 +147472,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_8create(struct PyPetscPCObject *_
*/
__pyx_v_newpc = NULL;
- /* "PETSc/PC.pyx":144
+ /* "PETSc/PC.pyx":149
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscPC newpc = NULL
* CHKERR( PCCreate(ccomm, &newpc) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.pc = newpc
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCreate(__pyx_v_ccomm, (&__pyx_v_newpc))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 144, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCreate(__pyx_v_ccomm, (&__pyx_v_newpc))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 149, __pyx_L1_error)
- /* "PETSc/PC.pyx":145
+ /* "PETSc/PC.pyx":150
* cdef PetscPC newpc = NULL
* CHKERR( PCCreate(ccomm, &newpc) )
* PetscCLEAR(self.obj); self.pc = newpc # <<<<<<<<<<<<<<
@@ -138717,7 +147491,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_8create(struct PyPetscPCObject *_
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->pc = __pyx_v_newpc;
- /* "PETSc/PC.pyx":146
+ /* "PETSc/PC.pyx":151
* CHKERR( PCCreate(ccomm, &newpc) )
* PetscCLEAR(self.obj); self.pc = newpc
* return self # <<<<<<<<<<<<<<
@@ -138729,7 +147503,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_8create(struct PyPetscPCObject *_
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/PC.pyx":141
+ /* "PETSc/PC.pyx":146
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -138747,7 +147521,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_8create(struct PyPetscPCObject *_
return __pyx_r;
}
-/* "PETSc/PC.pyx":148
+/* "PETSc/PC.pyx":153
* return self
*
* def setType(self, pc_type): # <<<<<<<<<<<<<<
@@ -138771,6 +147545,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_11setType(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138781,7 +147556,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_11setType(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(34, 148, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(34, 153, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -138792,7 +147567,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_11setType(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 148, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 153, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -138814,7 +147589,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_10setType(struct PyPetscPCObject
__Pyx_RefNannySetupContext("setType", 0);
__Pyx_INCREF(__pyx_v_pc_type);
- /* "PETSc/PC.pyx":149
+ /* "PETSc/PC.pyx":154
*
* def setType(self, pc_type):
* cdef PetscPCType cval = NULL # <<<<<<<<<<<<<<
@@ -138823,28 +147598,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_10setType(struct PyPetscPCObject
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":150
+ /* "PETSc/PC.pyx":155
* def setType(self, pc_type):
* cdef PetscPCType cval = NULL
* pc_type = str2bytes(pc_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_pc_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 150, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_pc_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 155, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_pc_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":151
+ /* "PETSc/PC.pyx":156
* cdef PetscPCType cval = NULL
* pc_type = str2bytes(pc_type, &cval)
* CHKERR( PCSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 151, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 156, __pyx_L1_error)
- /* "PETSc/PC.pyx":148
+ /* "PETSc/PC.pyx":153
* return self
*
* def setType(self, pc_type): # <<<<<<<<<<<<<<
@@ -138866,7 +147641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_10setType(struct PyPetscPCObject
return __pyx_r;
}
-/* "PETSc/PC.pyx":153
+/* "PETSc/PC.pyx":158
* CHKERR( PCSetType(self.pc, cval) )
*
* def getType(self): # <<<<<<<<<<<<<<
@@ -138899,7 +147674,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_12getType(struct PyPetscPCObject
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getType", 0);
- /* "PETSc/PC.pyx":154
+ /* "PETSc/PC.pyx":159
*
* def getType(self):
* cdef PetscPCType cval = NULL # <<<<<<<<<<<<<<
@@ -138908,16 +147683,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_12getType(struct PyPetscPCObject
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":155
+ /* "PETSc/PC.pyx":160
* def getType(self):
* cdef PetscPCType cval = NULL
* CHKERR( PCGetType(self.pc, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetType(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 155, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetType(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 160, __pyx_L1_error)
- /* "PETSc/PC.pyx":156
+ /* "PETSc/PC.pyx":161
* cdef PetscPCType cval = NULL
* CHKERR( PCGetType(self.pc, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -138925,13 +147700,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_12getType(struct PyPetscPCObject
* def setOptionsPrefix(self, prefix):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 156, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 161, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":153
+ /* "PETSc/PC.pyx":158
* CHKERR( PCSetType(self.pc, cval) )
*
* def getType(self): # <<<<<<<<<<<<<<
@@ -138950,7 +147725,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_12getType(struct PyPetscPCObject
return __pyx_r;
}
-/* "PETSc/PC.pyx":158
+/* "PETSc/PC.pyx":163
* return bytes2str(cval)
*
* def setOptionsPrefix(self, prefix): # <<<<<<<<<<<<<<
@@ -138974,6 +147749,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_15setOptionsPrefix(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -138984,7 +147760,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_15setOptionsPrefix(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOptionsPrefix") < 0)) __PYX_ERR(34, 158, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOptionsPrefix") < 0)) __PYX_ERR(34, 163, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -138995,7 +147771,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_15setOptionsPrefix(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setOptionsPrefix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 158, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setOptionsPrefix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 163, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setOptionsPrefix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -139017,7 +147793,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_14setOptionsPrefix(struct PyPetsc
__Pyx_RefNannySetupContext("setOptionsPrefix", 0);
__Pyx_INCREF(__pyx_v_prefix);
- /* "PETSc/PC.pyx":159
+ /* "PETSc/PC.pyx":164
*
* def setOptionsPrefix(self, prefix):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -139026,28 +147802,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_14setOptionsPrefix(struct PyPetsc
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":160
+ /* "PETSc/PC.pyx":165
* def setOptionsPrefix(self, prefix):
* cdef const_char *cval = NULL
* prefix = str2bytes(prefix, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCSetOptionsPrefix(self.pc, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_prefix, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 160, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_prefix, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 165, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_prefix, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":161
+ /* "PETSc/PC.pyx":166
* cdef const_char *cval = NULL
* prefix = str2bytes(prefix, &cval)
* CHKERR( PCSetOptionsPrefix(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetOptionsPrefix(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 161, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetOptionsPrefix(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 166, __pyx_L1_error)
- /* "PETSc/PC.pyx":158
+ /* "PETSc/PC.pyx":163
* return bytes2str(cval)
*
* def setOptionsPrefix(self, prefix): # <<<<<<<<<<<<<<
@@ -139069,7 +147845,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_14setOptionsPrefix(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/PC.pyx":163
+/* "PETSc/PC.pyx":168
* CHKERR( PCSetOptionsPrefix(self.pc, cval) )
*
* def getOptionsPrefix(self): # <<<<<<<<<<<<<<
@@ -139102,7 +147878,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_16getOptionsPrefix(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getOptionsPrefix", 0);
- /* "PETSc/PC.pyx":164
+ /* "PETSc/PC.pyx":169
*
* def getOptionsPrefix(self):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -139111,16 +147887,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_16getOptionsPrefix(struct PyPetsc
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":165
+ /* "PETSc/PC.pyx":170
* def getOptionsPrefix(self):
* cdef const_char *cval = NULL
* CHKERR( PCGetOptionsPrefix(self.pc, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetOptionsPrefix(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 165, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetOptionsPrefix(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 170, __pyx_L1_error)
- /* "PETSc/PC.pyx":166
+ /* "PETSc/PC.pyx":171
* cdef const_char *cval = NULL
* CHKERR( PCGetOptionsPrefix(self.pc, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -139128,13 +147904,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_16getOptionsPrefix(struct PyPetsc
* def setFromOptions(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 166, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 171, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":163
+ /* "PETSc/PC.pyx":168
* CHKERR( PCSetOptionsPrefix(self.pc, cval) )
*
* def getOptionsPrefix(self): # <<<<<<<<<<<<<<
@@ -139153,7 +147929,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_16getOptionsPrefix(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/PC.pyx":168
+/* "PETSc/PC.pyx":173
* return bytes2str(cval)
*
* def setFromOptions(self): # <<<<<<<<<<<<<<
@@ -139184,16 +147960,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_18setFromOptions(struct PyPetscPC
int __pyx_t_1;
__Pyx_RefNannySetupContext("setFromOptions", 0);
- /* "PETSc/PC.pyx":169
+ /* "PETSc/PC.pyx":174
*
* def setFromOptions(self):
* CHKERR( PCSetFromOptions(self.pc) ) # <<<<<<<<<<<<<<
*
* def setOperators(self, Mat A=None, Mat P=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetFromOptions(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 169, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetFromOptions(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 174, __pyx_L1_error)
- /* "PETSc/PC.pyx":168
+ /* "PETSc/PC.pyx":173
* return bytes2str(cval)
*
* def setFromOptions(self): # <<<<<<<<<<<<<<
@@ -139213,7 +147989,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_18setFromOptions(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":171
+/* "PETSc/PC.pyx":176
* CHKERR( PCSetFromOptions(self.pc) )
*
* def setOperators(self, Mat A=None, Mat P=None): # <<<<<<<<<<<<<<
@@ -139240,7 +148016,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_21setOperators(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -139251,6 +148029,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_21setOperators(PyObject *__pyx_v_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_A);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
@@ -139258,12 +148037,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_21setOperators(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOperators") < 0)) __PYX_ERR(34, 171, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOperators") < 0)) __PYX_ERR(34, 176, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -139273,14 +148054,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_21setOperators(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setOperators", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 171, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setOperators", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 176, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setOperators", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "A", 0))) __PYX_ERR(34, 171, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(34, 171, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "A", 0))) __PYX_ERR(34, 176, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(34, 176, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_20setOperators(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_A, __pyx_v_P);
/* function exit code */
@@ -139303,7 +148084,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_20setOperators(struct PyPetscPCOb
int __pyx_t_4;
__Pyx_RefNannySetupContext("setOperators", 0);
- /* "PETSc/PC.pyx":172
+ /* "PETSc/PC.pyx":177
*
* def setOperators(self, Mat A=None, Mat P=None):
* cdef PetscMat amat=NULL # <<<<<<<<<<<<<<
@@ -139312,7 +148093,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_20setOperators(struct PyPetscPCOb
*/
__pyx_v_amat = NULL;
- /* "PETSc/PC.pyx":173
+ /* "PETSc/PC.pyx":178
* def setOperators(self, Mat A=None, Mat P=None):
* cdef PetscMat amat=NULL
* if A is not None: amat = A.mat # <<<<<<<<<<<<<<
@@ -139326,7 +148107,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_20setOperators(struct PyPetscPCOb
__pyx_v_amat = __pyx_t_3;
}
- /* "PETSc/PC.pyx":174
+ /* "PETSc/PC.pyx":179
* cdef PetscMat amat=NULL
* if A is not None: amat = A.mat
* cdef PetscMat pmat=amat # <<<<<<<<<<<<<<
@@ -139335,7 +148116,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_20setOperators(struct PyPetscPCOb
*/
__pyx_v_pmat = __pyx_v_amat;
- /* "PETSc/PC.pyx":175
+ /* "PETSc/PC.pyx":180
* if A is not None: amat = A.mat
* cdef PetscMat pmat=amat
* if P is not None: pmat = P.mat # <<<<<<<<<<<<<<
@@ -139349,16 +148130,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_20setOperators(struct PyPetscPCOb
__pyx_v_pmat = __pyx_t_3;
}
- /* "PETSc/PC.pyx":176
+ /* "PETSc/PC.pyx":181
* cdef PetscMat pmat=amat
* if P is not None: pmat = P.mat
* CHKERR( PCSetOperators(self.pc, amat, pmat) ) # <<<<<<<<<<<<<<
*
* def getOperators(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetOperators(__pyx_v_self->pc, __pyx_v_amat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 176, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetOperators(__pyx_v_self->pc, __pyx_v_amat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 181, __pyx_L1_error)
- /* "PETSc/PC.pyx":171
+ /* "PETSc/PC.pyx":176
* CHKERR( PCSetFromOptions(self.pc) )
*
* def setOperators(self, Mat A=None, Mat P=None): # <<<<<<<<<<<<<<
@@ -139378,7 +148159,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_20setOperators(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":178
+/* "PETSc/PC.pyx":183
* CHKERR( PCSetOperators(self.pc, amat, pmat) )
*
* def getOperators(self): # <<<<<<<<<<<<<<
@@ -139412,32 +148193,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_22getOperators(struct PyPetscPCOb
int __pyx_t_2;
__Pyx_RefNannySetupContext("getOperators", 0);
- /* "PETSc/PC.pyx":179
+ /* "PETSc/PC.pyx":184
*
* def getOperators(self):
* cdef Mat A = Mat(), P = Mat() # <<<<<<<<<<<<<<
* CHKERR( PCGetOperators(self.pc, &A.mat, &P.mat) )
* PetscINCREF(A.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 179, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_A = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 179, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_P = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":180
+ /* "PETSc/PC.pyx":185
* def getOperators(self):
* cdef Mat A = Mat(), P = Mat()
* CHKERR( PCGetOperators(self.pc, &A.mat, &P.mat) ) # <<<<<<<<<<<<<<
* PetscINCREF(A.obj)
* PetscINCREF(P.obj)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetOperators(__pyx_v_self->pc, (&__pyx_v_A->mat), (&__pyx_v_P->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 180, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetOperators(__pyx_v_self->pc, (&__pyx_v_A->mat), (&__pyx_v_P->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 185, __pyx_L1_error)
- /* "PETSc/PC.pyx":181
+ /* "PETSc/PC.pyx":186
* cdef Mat A = Mat(), P = Mat()
* CHKERR( PCGetOperators(self.pc, &A.mat, &P.mat) )
* PetscINCREF(A.obj) # <<<<<<<<<<<<<<
@@ -139446,7 +148227,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_22getOperators(struct PyPetscPCOb
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_A->__pyx_base.obj);
- /* "PETSc/PC.pyx":182
+ /* "PETSc/PC.pyx":187
* CHKERR( PCGetOperators(self.pc, &A.mat, &P.mat) )
* PetscINCREF(A.obj)
* PetscINCREF(P.obj) # <<<<<<<<<<<<<<
@@ -139455,7 +148236,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_22getOperators(struct PyPetscPCOb
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_P->__pyx_base.obj);
- /* "PETSc/PC.pyx":183
+ /* "PETSc/PC.pyx":188
* PetscINCREF(A.obj)
* PetscINCREF(P.obj)
* return (A, P) # <<<<<<<<<<<<<<
@@ -139463,7 +148244,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_22getOperators(struct PyPetscPCOb
* def setUseAmat(self, flag):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 183, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 188, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_A));
__Pyx_GIVEREF(((PyObject *)__pyx_v_A));
@@ -139475,7 +148256,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_22getOperators(struct PyPetscPCOb
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":178
+ /* "PETSc/PC.pyx":183
* CHKERR( PCSetOperators(self.pc, amat, pmat) )
*
* def getOperators(self): # <<<<<<<<<<<<<<
@@ -139496,7 +148277,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_22getOperators(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":185
+/* "PETSc/PC.pyx":190
* return (A, P)
*
* def setUseAmat(self, flag): # <<<<<<<<<<<<<<
@@ -139520,6 +148301,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_25setUseAmat(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -139530,7 +148312,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_25setUseAmat(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseAmat") < 0)) __PYX_ERR(34, 185, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseAmat") < 0)) __PYX_ERR(34, 190, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -139541,7 +148323,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_25setUseAmat(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setUseAmat", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 185, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setUseAmat", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 190, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setUseAmat", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -139562,7 +148344,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_24setUseAmat(struct PyPetscPCObje
int __pyx_t_2;
__Pyx_RefNannySetupContext("setUseAmat", 0);
- /* "PETSc/PC.pyx":186
+ /* "PETSc/PC.pyx":191
*
* def setUseAmat(self, flag):
* cdef PetscBool cflag = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -139571,17 +148353,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_24setUseAmat(struct PyPetscPCObje
*/
__pyx_v_cflag = PETSC_FALSE;
- /* "PETSc/PC.pyx":187
+ /* "PETSc/PC.pyx":192
* def setUseAmat(self, flag):
* cdef PetscBool cflag = PETSC_FALSE
* if flag: # <<<<<<<<<<<<<<
* cflag = PETSC_TRUE
* CHKERR( PCSetUseAmat(self.pc, cflag) )
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(34, 187, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(34, 192, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/PC.pyx":188
+ /* "PETSc/PC.pyx":193
* cdef PetscBool cflag = PETSC_FALSE
* if flag:
* cflag = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -139590,7 +148372,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_24setUseAmat(struct PyPetscPCObje
*/
__pyx_v_cflag = PETSC_TRUE;
- /* "PETSc/PC.pyx":187
+ /* "PETSc/PC.pyx":192
* def setUseAmat(self, flag):
* cdef PetscBool cflag = PETSC_FALSE
* if flag: # <<<<<<<<<<<<<<
@@ -139599,16 +148381,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_24setUseAmat(struct PyPetscPCObje
*/
}
- /* "PETSc/PC.pyx":189
+ /* "PETSc/PC.pyx":194
* if flag:
* cflag = PETSC_TRUE
* CHKERR( PCSetUseAmat(self.pc, cflag) ) # <<<<<<<<<<<<<<
*
* def setUp(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetUseAmat(__pyx_v_self->pc, __pyx_v_cflag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 189, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetUseAmat(__pyx_v_self->pc, __pyx_v_cflag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 194, __pyx_L1_error)
- /* "PETSc/PC.pyx":185
+ /* "PETSc/PC.pyx":190
* return (A, P)
*
* def setUseAmat(self, flag): # <<<<<<<<<<<<<<
@@ -139628,7 +148410,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_24setUseAmat(struct PyPetscPCObje
return __pyx_r;
}
-/* "PETSc/PC.pyx":191
+/* "PETSc/PC.pyx":196
* CHKERR( PCSetUseAmat(self.pc, cflag) )
*
* def setUp(self): # <<<<<<<<<<<<<<
@@ -139659,16 +148441,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_26setUp(struct PyPetscPCObject *_
int __pyx_t_1;
__Pyx_RefNannySetupContext("setUp", 0);
- /* "PETSc/PC.pyx":192
+ /* "PETSc/PC.pyx":197
*
* def setUp(self):
* CHKERR( PCSetUp(self.pc) ) # <<<<<<<<<<<<<<
*
* def reset(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetUp(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 192, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetUp(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 197, __pyx_L1_error)
- /* "PETSc/PC.pyx":191
+ /* "PETSc/PC.pyx":196
* CHKERR( PCSetUseAmat(self.pc, cflag) )
*
* def setUp(self): # <<<<<<<<<<<<<<
@@ -139688,7 +148470,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_26setUp(struct PyPetscPCObject *_
return __pyx_r;
}
-/* "PETSc/PC.pyx":194
+/* "PETSc/PC.pyx":199
* CHKERR( PCSetUp(self.pc) )
*
* def reset(self): # <<<<<<<<<<<<<<
@@ -139719,16 +148501,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_28reset(struct PyPetscPCObject *_
int __pyx_t_1;
__Pyx_RefNannySetupContext("reset", 0);
- /* "PETSc/PC.pyx":195
+ /* "PETSc/PC.pyx":200
*
* def reset(self):
* CHKERR( PCReset(self.pc) ) # <<<<<<<<<<<<<<
*
* def setUpOnBlocks(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCReset(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 195, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCReset(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 200, __pyx_L1_error)
- /* "PETSc/PC.pyx":194
+ /* "PETSc/PC.pyx":199
* CHKERR( PCSetUp(self.pc) )
*
* def reset(self): # <<<<<<<<<<<<<<
@@ -139748,7 +148530,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_28reset(struct PyPetscPCObject *_
return __pyx_r;
}
-/* "PETSc/PC.pyx":197
+/* "PETSc/PC.pyx":202
* CHKERR( PCReset(self.pc) )
*
* def setUpOnBlocks(self): # <<<<<<<<<<<<<<
@@ -139779,16 +148561,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_30setUpOnBlocks(struct PyPetscPCO
int __pyx_t_1;
__Pyx_RefNannySetupContext("setUpOnBlocks", 0);
- /* "PETSc/PC.pyx":198
+ /* "PETSc/PC.pyx":203
*
* def setUpOnBlocks(self):
* CHKERR( PCSetUpOnBlocks(self.pc) ) # <<<<<<<<<<<<<<
*
- * def apply(self, Vec x not None, Vec y not None):
+ * def apply(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetUpOnBlocks(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 198, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetUpOnBlocks(__pyx_v_self->pc)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 203, __pyx_L1_error)
- /* "PETSc/PC.pyx":197
+ /* "PETSc/PC.pyx":202
* CHKERR( PCReset(self.pc) )
*
* def setUpOnBlocks(self): # <<<<<<<<<<<<<<
@@ -139808,10 +148590,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_30setUpOnBlocks(struct PyPetscPCO
return __pyx_r;
}
-/* "PETSc/PC.pyx":200
+/* "PETSc/PC.pyx":205
* CHKERR( PCSetUpOnBlocks(self.pc) )
*
- * def apply(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def apply(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApply(self.pc, x.vec, y.vec) )
*
*/
@@ -139833,7 +148615,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_33apply(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -139842,14 +148626,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_33apply(PyObject *__pyx_v_self, P
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("apply", 1, 2, 2, 1); __PYX_ERR(34, 200, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("apply", 1, 2, 2, 1); __PYX_ERR(34, 205, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "apply") < 0)) __PYX_ERR(34, 200, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "apply") < 0)) __PYX_ERR(34, 205, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -139862,14 +148647,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_33apply(PyObject *__pyx_v_self, P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("apply", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 200, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("apply", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 205, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 200, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 200, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 205, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 205, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_32apply(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
/* function exit code */
@@ -139887,19 +148672,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_32apply(struct PyPetscPCObject *_
int __pyx_t_1;
__Pyx_RefNannySetupContext("apply", 0);
- /* "PETSc/PC.pyx":201
+ /* "PETSc/PC.pyx":206
*
- * def apply(self, Vec x not None, Vec y not None):
+ * def apply(self, Vec x, Vec y):
* CHKERR( PCApply(self.pc, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def applyTranspose(self, Vec x not None, Vec y not None):
+ * def applyTranspose(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApply(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 201, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApply(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 206, __pyx_L1_error)
- /* "PETSc/PC.pyx":200
+ /* "PETSc/PC.pyx":205
* CHKERR( PCSetUpOnBlocks(self.pc) )
*
- * def apply(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def apply(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApply(self.pc, x.vec, y.vec) )
*
*/
@@ -139916,10 +148701,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_32apply(struct PyPetscPCObject *_
return __pyx_r;
}
-/* "PETSc/PC.pyx":203
+/* "PETSc/PC.pyx":208
* CHKERR( PCApply(self.pc, x.vec, y.vec) )
*
- * def applyTranspose(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def applyTranspose(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApplyTranspose(self.pc, x.vec, y.vec) )
*
*/
@@ -139941,7 +148726,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_35applyTranspose(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -139950,14 +148737,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_35applyTranspose(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("applyTranspose", 1, 2, 2, 1); __PYX_ERR(34, 203, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applyTranspose", 1, 2, 2, 1); __PYX_ERR(34, 208, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyTranspose") < 0)) __PYX_ERR(34, 203, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applyTranspose") < 0)) __PYX_ERR(34, 208, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -139970,14 +148758,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_35applyTranspose(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("applyTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 203, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applyTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 208, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.applyTranspose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 203, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 203, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 208, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 208, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_34applyTranspose(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
/* function exit code */
@@ -139995,19 +148783,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_34applyTranspose(struct PyPetscPC
int __pyx_t_1;
__Pyx_RefNannySetupContext("applyTranspose", 0);
- /* "PETSc/PC.pyx":204
+ /* "PETSc/PC.pyx":209
*
- * def applyTranspose(self, Vec x not None, Vec y not None):
+ * def applyTranspose(self, Vec x, Vec y):
* CHKERR( PCApplyTranspose(self.pc, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def applySymmetricLeft(self, Vec x not None, Vec y not None):
+ * def applySymmetricLeft(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApplyTranspose(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 204, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApplyTranspose(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 209, __pyx_L1_error)
- /* "PETSc/PC.pyx":203
+ /* "PETSc/PC.pyx":208
* CHKERR( PCApply(self.pc, x.vec, y.vec) )
*
- * def applyTranspose(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def applyTranspose(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApplyTranspose(self.pc, x.vec, y.vec) )
*
*/
@@ -140024,10 +148812,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_34applyTranspose(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":206
+/* "PETSc/PC.pyx":211
* CHKERR( PCApplyTranspose(self.pc, x.vec, y.vec) )
*
- * def applySymmetricLeft(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def applySymmetricLeft(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApplySymmetricLeft(self.pc, x.vec, y.vec) )
*
*/
@@ -140049,7 +148837,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_37applySymmetricLeft(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -140058,14 +148848,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_37applySymmetricLeft(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("applySymmetricLeft", 1, 2, 2, 1); __PYX_ERR(34, 206, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applySymmetricLeft", 1, 2, 2, 1); __PYX_ERR(34, 211, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applySymmetricLeft") < 0)) __PYX_ERR(34, 206, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applySymmetricLeft") < 0)) __PYX_ERR(34, 211, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -140078,14 +148869,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_37applySymmetricLeft(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("applySymmetricLeft", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 206, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applySymmetricLeft", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 211, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.applySymmetricLeft", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 206, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 206, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 211, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 211, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_36applySymmetricLeft(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
/* function exit code */
@@ -140103,19 +148894,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_36applySymmetricLeft(struct PyPet
int __pyx_t_1;
__Pyx_RefNannySetupContext("applySymmetricLeft", 0);
- /* "PETSc/PC.pyx":207
+ /* "PETSc/PC.pyx":212
*
- * def applySymmetricLeft(self, Vec x not None, Vec y not None):
+ * def applySymmetricLeft(self, Vec x, Vec y):
* CHKERR( PCApplySymmetricLeft(self.pc, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
- * def applySymmetricRight(self, Vec x not None, Vec y not None):
+ * def applySymmetricRight(self, Vec x, Vec y):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApplySymmetricLeft(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 207, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApplySymmetricLeft(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 212, __pyx_L1_error)
- /* "PETSc/PC.pyx":206
+ /* "PETSc/PC.pyx":211
* CHKERR( PCApplyTranspose(self.pc, x.vec, y.vec) )
*
- * def applySymmetricLeft(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def applySymmetricLeft(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApplySymmetricLeft(self.pc, x.vec, y.vec) )
*
*/
@@ -140132,10 +148923,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_36applySymmetricLeft(struct PyPet
return __pyx_r;
}
-/* "PETSc/PC.pyx":209
+/* "PETSc/PC.pyx":214
* CHKERR( PCApplySymmetricLeft(self.pc, x.vec, y.vec) )
*
- * def applySymmetricRight(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def applySymmetricRight(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApplySymmetricRight(self.pc, x.vec, y.vec) )
*
*/
@@ -140157,7 +148948,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_39applySymmetricRight(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -140166,14 +148959,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_39applySymmetricRight(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("applySymmetricRight", 1, 2, 2, 1); __PYX_ERR(34, 209, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applySymmetricRight", 1, 2, 2, 1); __PYX_ERR(34, 214, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applySymmetricRight") < 0)) __PYX_ERR(34, 209, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "applySymmetricRight") < 0)) __PYX_ERR(34, 214, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -140186,14 +148980,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_39applySymmetricRight(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("applySymmetricRight", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 209, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("applySymmetricRight", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 214, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.applySymmetricRight", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 209, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 209, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 214, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_y), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "y", 0))) __PYX_ERR(34, 214, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_38applySymmetricRight(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_x, __pyx_v_y);
/* function exit code */
@@ -140211,19 +149005,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_38applySymmetricRight(struct PyPe
int __pyx_t_1;
__Pyx_RefNannySetupContext("applySymmetricRight", 0);
- /* "PETSc/PC.pyx":210
+ /* "PETSc/PC.pyx":215
*
- * def applySymmetricRight(self, Vec x not None, Vec y not None):
+ * def applySymmetricRight(self, Vec x, Vec y):
* CHKERR( PCApplySymmetricRight(self.pc, x.vec, y.vec) ) # <<<<<<<<<<<<<<
*
* # --- discretization space ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApplySymmetricRight(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 210, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCApplySymmetricRight(__pyx_v_self->pc, __pyx_v_x->vec, __pyx_v_y->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 215, __pyx_L1_error)
- /* "PETSc/PC.pyx":209
+ /* "PETSc/PC.pyx":214
* CHKERR( PCApplySymmetricLeft(self.pc, x.vec, y.vec) )
*
- * def applySymmetricRight(self, Vec x not None, Vec y not None): # <<<<<<<<<<<<<<
+ * def applySymmetricRight(self, Vec x, Vec y): # <<<<<<<<<<<<<<
* CHKERR( PCApplySymmetricRight(self.pc, x.vec, y.vec) )
*
*/
@@ -140240,7 +149034,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_38applySymmetricRight(struct PyPe
return __pyx_r;
}
-/* "PETSc/PC.pyx":214
+/* "PETSc/PC.pyx":219
* # --- discretization space ---
*
* def getDM(self): # <<<<<<<<<<<<<<
@@ -140275,7 +149069,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_40getDM(struct PyPetscPCObject *_
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getDM", 0);
- /* "PETSc/PC.pyx":215
+ /* "PETSc/PC.pyx":220
*
* def getDM(self):
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -140284,32 +149078,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_40getDM(struct PyPetscPCObject *_
*/
__pyx_v_newdm = NULL;
- /* "PETSc/PC.pyx":216
+ /* "PETSc/PC.pyx":221
* def getDM(self):
* cdef PetscDM newdm = NULL
* CHKERR( PCGetDM(self.pc, &newdm) ) # <<<<<<<<<<<<<<
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetDM(__pyx_v_self->pc, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 216, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGetDM(__pyx_v_self->pc, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 221, __pyx_L1_error)
- /* "PETSc/PC.pyx":217
+ /* "PETSc/PC.pyx":222
* cdef PetscDM newdm = NULL
* CHKERR( PCGetDM(self.pc, &newdm) )
* cdef DM dm = subtype_DM(newdm)() # <<<<<<<<<<<<<<
* dm.dm = newdm
* PetscINCREF(dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 217, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 217, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(34, 217, __pyx_L1_error)
+ if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(34, 222, __pyx_L1_error)
__pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/PC.pyx":218
+ /* "PETSc/PC.pyx":223
* CHKERR( PCGetDM(self.pc, &newdm) )
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm # <<<<<<<<<<<<<<
@@ -140318,7 +149112,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_40getDM(struct PyPetscPCObject *_
*/
__pyx_v_dm->dm = __pyx_v_newdm;
- /* "PETSc/PC.pyx":219
+ /* "PETSc/PC.pyx":224
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
* PetscINCREF(dm.obj) # <<<<<<<<<<<<<<
@@ -140327,19 +149121,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_40getDM(struct PyPetscPCObject *_
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_dm->__pyx_base.obj);
- /* "PETSc/PC.pyx":220
+ /* "PETSc/PC.pyx":225
* dm.dm = newdm
* PetscINCREF(dm.obj)
* return dm # <<<<<<<<<<<<<<
*
- * def setDM(self, DM dm not None):
+ * def setDM(self, DM dm):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_dm));
__pyx_r = ((PyObject *)__pyx_v_dm);
goto __pyx_L0;
- /* "PETSc/PC.pyx":214
+ /* "PETSc/PC.pyx":219
* # --- discretization space ---
*
* def getDM(self): # <<<<<<<<<<<<<<
@@ -140360,10 +149154,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_40getDM(struct PyPetscPCObject *_
return __pyx_r;
}
-/* "PETSc/PC.pyx":222
+/* "PETSc/PC.pyx":227
* return dm
*
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
* CHKERR( PCSetDM(self.pc, dm.dm) )
*
*/
@@ -140384,6 +149178,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_43setDM(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -140394,7 +149189,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_43setDM(PyObject *__pyx_v_self, P
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDM") < 0)) __PYX_ERR(34, 222, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDM") < 0)) __PYX_ERR(34, 227, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -140405,13 +149200,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_43setDM(PyObject *__pyx_v_self, P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 222, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 227, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(34, 222, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(34, 227, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_42setDM(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_dm);
/* function exit code */
@@ -140429,19 +149224,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_42setDM(struct PyPetscPCObject *_
int __pyx_t_1;
__Pyx_RefNannySetupContext("setDM", 0);
- /* "PETSc/PC.pyx":223
+ /* "PETSc/PC.pyx":228
*
- * def setDM(self, DM dm not None):
+ * def setDM(self, DM dm):
* CHKERR( PCSetDM(self.pc, dm.dm) ) # <<<<<<<<<<<<<<
*
* def setCoordinates(self, coordinates):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetDM(__pyx_v_self->pc, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 223, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetDM(__pyx_v_self->pc, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 228, __pyx_L1_error)
- /* "PETSc/PC.pyx":222
+ /* "PETSc/PC.pyx":227
* return dm
*
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
* CHKERR( PCSetDM(self.pc, dm.dm) )
*
*/
@@ -140458,7 +149253,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_42setDM(struct PyPetscPCObject *_
return __pyx_r;
}
-/* "PETSc/PC.pyx":225
+/* "PETSc/PC.pyx":230
* CHKERR( PCSetDM(self.pc, dm.dm) )
*
* def setCoordinates(self, coordinates): # <<<<<<<<<<<<<<
@@ -140482,6 +149277,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_45setCoordinates(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -140492,7 +149288,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_45setCoordinates(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCoordinates") < 0)) __PYX_ERR(34, 225, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCoordinates") < 0)) __PYX_ERR(34, 230, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -140503,7 +149299,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_45setCoordinates(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setCoordinates", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 225, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCoordinates", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 230, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setCoordinates", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -140529,19 +149325,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_44setCoordinates(struct PyPetscPC
int __pyx_t_4;
__Pyx_RefNannySetupContext("setCoordinates", 0);
- /* "PETSc/PC.pyx":226
+ /* "PETSc/PC.pyx":231
*
* def setCoordinates(self, coordinates):
* cdef ndarray xyz = iarray(coordinates, NPY_PETSC_REAL) # <<<<<<<<<<<<<<
* if PyArray_ISFORTRAN(xyz): xyz = PyArray_Copy(xyz)
* if PyArray_NDIM(xyz) != 2: raise ValueError(
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray(__pyx_v_coordinates, NPY_PETSC_REAL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 226, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray(__pyx_v_coordinates, NPY_PETSC_REAL)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 231, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_xyz = ((PyArrayObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":227
+ /* "PETSc/PC.pyx":232
* def setCoordinates(self, coordinates):
* cdef ndarray xyz = iarray(coordinates, NPY_PETSC_REAL)
* if PyArray_ISFORTRAN(xyz): xyz = PyArray_Copy(xyz) # <<<<<<<<<<<<<<
@@ -140550,13 +149346,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_44setCoordinates(struct PyPetscPC
*/
__pyx_t_2 = (PyArray_ISFORTRAN(__pyx_v_xyz) != 0);
if (__pyx_t_2) {
- __pyx_t_1 = ((PyObject *)PyArray_Copy(__pyx_v_xyz)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 227, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)PyArray_Copy(__pyx_v_xyz)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 232, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_xyz, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
}
- /* "PETSc/PC.pyx":228
+ /* "PETSc/PC.pyx":233
* cdef ndarray xyz = iarray(coordinates, NPY_PETSC_REAL)
* if PyArray_ISFORTRAN(xyz): xyz = PyArray_Copy(xyz)
* if PyArray_NDIM(xyz) != 2: raise ValueError( # <<<<<<<<<<<<<<
@@ -140566,40 +149362,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_44setCoordinates(struct PyPetscPC
__pyx_t_2 = ((PyArray_NDIM(__pyx_v_xyz) != 2) != 0);
if (__pyx_t_2) {
- /* "PETSc/PC.pyx":230
+ /* "PETSc/PC.pyx":235
* if PyArray_NDIM(xyz) != 2: raise ValueError(
* ("coordinates must have two dimensions: "
* "coordinates.ndim=%d") % (PyArray_NDIM(xyz)) ) # <<<<<<<<<<<<<<
* cdef PetscInt nvtx = <PetscInt> PyArray_DIM(xyz, 0)
* cdef PetscInt ndim = <PetscInt> PyArray_DIM(xyz, 1)
*/
- __pyx_t_1 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_xyz)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 230, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(PyArray_NDIM(__pyx_v_xyz)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 235, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_coordinates_must_have_two_dimens, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 230, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_coordinates_must_have_two_dimens, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 235, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PC.pyx":228
+ /* "PETSc/PC.pyx":233
* cdef ndarray xyz = iarray(coordinates, NPY_PETSC_REAL)
* if PyArray_ISFORTRAN(xyz): xyz = PyArray_Copy(xyz)
* if PyArray_NDIM(xyz) != 2: raise ValueError( # <<<<<<<<<<<<<<
* ("coordinates must have two dimensions: "
* "coordinates.ndim=%d") % (PyArray_NDIM(xyz)) )
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 228, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
__pyx_t_3 = 0;
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 228, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_Raise(__pyx_t_3, 0, 0, 0);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __PYX_ERR(34, 228, __pyx_L1_error)
+ __PYX_ERR(34, 233, __pyx_L1_error)
}
- /* "PETSc/PC.pyx":231
+ /* "PETSc/PC.pyx":236
* ("coordinates must have two dimensions: "
* "coordinates.ndim=%d") % (PyArray_NDIM(xyz)) )
* cdef PetscInt nvtx = <PetscInt> PyArray_DIM(xyz, 0) # <<<<<<<<<<<<<<
@@ -140608,7 +149404,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_44setCoordinates(struct PyPetscPC
*/
__pyx_v_nvtx = ((PetscInt)PyArray_DIM(__pyx_v_xyz, 0));
- /* "PETSc/PC.pyx":232
+ /* "PETSc/PC.pyx":237
* "coordinates.ndim=%d") % (PyArray_NDIM(xyz)) )
* cdef PetscInt nvtx = <PetscInt> PyArray_DIM(xyz, 0)
* cdef PetscInt ndim = <PetscInt> PyArray_DIM(xyz, 1) # <<<<<<<<<<<<<<
@@ -140617,7 +149413,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_44setCoordinates(struct PyPetscPC
*/
__pyx_v_ndim = ((PetscInt)PyArray_DIM(__pyx_v_xyz, 1));
- /* "PETSc/PC.pyx":233
+ /* "PETSc/PC.pyx":238
* cdef PetscInt nvtx = <PetscInt> PyArray_DIM(xyz, 0)
* cdef PetscInt ndim = <PetscInt> PyArray_DIM(xyz, 1)
* cdef PetscReal *coords = <PetscReal*> PyArray_DATA(xyz) # <<<<<<<<<<<<<<
@@ -140626,16 +149422,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_44setCoordinates(struct PyPetscPC
*/
__pyx_v_coords = ((PetscReal *)PyArray_DATA(__pyx_v_xyz));
- /* "PETSc/PC.pyx":234
+ /* "PETSc/PC.pyx":239
* cdef PetscInt ndim = <PetscInt> PyArray_DIM(xyz, 1)
* cdef PetscReal *coords = <PetscReal*> PyArray_DATA(xyz)
* CHKERR( PCSetCoordinates(self.pc, ndim, nvtx, coords) ) # <<<<<<<<<<<<<<
*
* # --- Python ---
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetCoordinates(__pyx_v_self->pc, __pyx_v_ndim, __pyx_v_nvtx, __pyx_v_coords)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 234, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetCoordinates(__pyx_v_self->pc, __pyx_v_ndim, __pyx_v_nvtx, __pyx_v_coords)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 239, __pyx_L1_error)
- /* "PETSc/PC.pyx":225
+ /* "PETSc/PC.pyx":230
* CHKERR( PCSetDM(self.pc, dm.dm) )
*
* def setCoordinates(self, coordinates): # <<<<<<<<<<<<<<
@@ -140658,7 +149454,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_44setCoordinates(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":238
+/* "PETSc/PC.pyx":243
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -140685,7 +149481,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_47createPython(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -140696,6 +149494,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_47createPython(PyObject *__pyx_v_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_context);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -140703,12 +149502,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_47createPython(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(34, 238, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(34, 243, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -140718,7 +149519,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_47createPython(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 238, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 243, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.createPython", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -140740,17 +149541,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_46createPython(struct PyPetscPCOb
int __pyx_t_2;
__Pyx_RefNannySetupContext("createPython", 0);
- /* "PETSc/PC.pyx":239
+ /* "PETSc/PC.pyx":244
*
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscPC newpc = NULL
* CHKERR( PCCreate(ccomm, &newpc) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 239, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 244, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/PC.pyx":240
+ /* "PETSc/PC.pyx":245
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscPC newpc = NULL # <<<<<<<<<<<<<<
@@ -140759,16 +149560,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_46createPython(struct PyPetscPCOb
*/
__pyx_v_newpc = NULL;
- /* "PETSc/PC.pyx":241
+ /* "PETSc/PC.pyx":246
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscPC newpc = NULL
* CHKERR( PCCreate(ccomm, &newpc) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.pc = newpc
* CHKERR( PCSetType(self.pc, PCPYTHON) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCreate(__pyx_v_ccomm, (&__pyx_v_newpc))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 241, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCreate(__pyx_v_ccomm, (&__pyx_v_newpc))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 246, __pyx_L1_error)
- /* "PETSc/PC.pyx":242
+ /* "PETSc/PC.pyx":247
* cdef PetscPC newpc = NULL
* CHKERR( PCCreate(ccomm, &newpc) )
* PetscCLEAR(self.obj); self.pc = newpc # <<<<<<<<<<<<<<
@@ -140778,25 +149579,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_46createPython(struct PyPetscPCOb
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->pc = __pyx_v_newpc;
- /* "PETSc/PC.pyx":243
+ /* "PETSc/PC.pyx":248
* CHKERR( PCCreate(ccomm, &newpc) )
* PetscCLEAR(self.obj); self.pc = newpc
* CHKERR( PCSetType(self.pc, PCPYTHON) ) # <<<<<<<<<<<<<<
* CHKERR( PCPythonSetContext(self.pc, <void*>context) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetType(__pyx_v_self->pc, PCPYTHON)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 243, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetType(__pyx_v_self->pc, PCPYTHON)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 248, __pyx_L1_error)
- /* "PETSc/PC.pyx":244
+ /* "PETSc/PC.pyx":249
* PetscCLEAR(self.obj); self.pc = newpc
* CHKERR( PCSetType(self.pc, PCPYTHON) )
* CHKERR( PCPythonSetContext(self.pc, <void*>context) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonSetContext(__pyx_v_self->pc, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 244, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonSetContext(__pyx_v_self->pc, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 249, __pyx_L1_error)
- /* "PETSc/PC.pyx":245
+ /* "PETSc/PC.pyx":250
* CHKERR( PCSetType(self.pc, PCPYTHON) )
* CHKERR( PCPythonSetContext(self.pc, <void*>context) )
* return self # <<<<<<<<<<<<<<
@@ -140808,7 +149609,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_46createPython(struct PyPetscPCOb
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/PC.pyx":238
+ /* "PETSc/PC.pyx":243
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -140826,7 +149627,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_46createPython(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":247
+/* "PETSc/PC.pyx":252
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -140850,6 +149651,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_49setPythonContext(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -140860,7 +149662,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_49setPythonContext(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(34, 247, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(34, 252, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -140871,7 +149673,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_49setPythonContext(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 247, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 252, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setPythonContext", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -140890,16 +149692,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_48setPythonContext(struct PyPetsc
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPythonContext", 0);
- /* "PETSc/PC.pyx":248
+ /* "PETSc/PC.pyx":253
*
* def setPythonContext(self, context):
* CHKERR( PCPythonSetContext(self.pc, <void*>context) ) # <<<<<<<<<<<<<<
*
* def getPythonContext(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonSetContext(__pyx_v_self->pc, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 248, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonSetContext(__pyx_v_self->pc, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 253, __pyx_L1_error)
- /* "PETSc/PC.pyx":247
+ /* "PETSc/PC.pyx":252
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -140919,7 +149721,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_48setPythonContext(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/PC.pyx":250
+/* "PETSc/PC.pyx":255
* CHKERR( PCPythonSetContext(self.pc, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -140952,7 +149754,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_50getPythonContext(struct PyPetsc
int __pyx_t_2;
__Pyx_RefNannySetupContext("getPythonContext", 0);
- /* "PETSc/PC.pyx":251
+ /* "PETSc/PC.pyx":256
*
* def getPythonContext(self):
* cdef void *context = NULL # <<<<<<<<<<<<<<
@@ -140961,16 +149763,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_50getPythonContext(struct PyPetsc
*/
__pyx_v_context = NULL;
- /* "PETSc/PC.pyx":252
+ /* "PETSc/PC.pyx":257
* def getPythonContext(self):
* cdef void *context = NULL
* CHKERR( PCPythonGetContext(self.pc, &context) ) # <<<<<<<<<<<<<<
* if context == NULL: return None
* else: return <object> context
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonGetContext(__pyx_v_self->pc, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 252, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonGetContext(__pyx_v_self->pc, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 257, __pyx_L1_error)
- /* "PETSc/PC.pyx":253
+ /* "PETSc/PC.pyx":258
* cdef void *context = NULL
* CHKERR( PCPythonGetContext(self.pc, &context) )
* if context == NULL: return None # <<<<<<<<<<<<<<
@@ -140985,7 +149787,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_50getPythonContext(struct PyPetsc
goto __pyx_L0;
}
- /* "PETSc/PC.pyx":254
+ /* "PETSc/PC.pyx":259
* CHKERR( PCPythonGetContext(self.pc, &context) )
* if context == NULL: return None
* else: return <object> context # <<<<<<<<<<<<<<
@@ -140999,7 +149801,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_50getPythonContext(struct PyPetsc
goto __pyx_L0;
}
- /* "PETSc/PC.pyx":250
+ /* "PETSc/PC.pyx":255
* CHKERR( PCPythonSetContext(self.pc, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -141017,7 +149819,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_50getPythonContext(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/PC.pyx":256
+/* "PETSc/PC.pyx":261
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -141041,6 +149843,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_53setPythonType(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141051,7 +149854,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_53setPythonType(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(34, 256, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(34, 261, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141062,7 +149865,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_53setPythonType(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 256, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 261, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setPythonType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141084,7 +149887,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_52setPythonType(struct PyPetscPCO
__Pyx_RefNannySetupContext("setPythonType", 0);
__Pyx_INCREF(__pyx_v_py_type);
- /* "PETSc/PC.pyx":257
+ /* "PETSc/PC.pyx":262
*
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -141093,28 +149896,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_52setPythonType(struct PyPetscPCO
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":258
+ /* "PETSc/PC.pyx":263
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCPythonSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 258, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 263, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_py_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":259
+ /* "PETSc/PC.pyx":264
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval)
* CHKERR( PCPythonSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* # --- ASM ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 259, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCPythonSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 264, __pyx_L1_error)
- /* "PETSc/PC.pyx":256
+ /* "PETSc/PC.pyx":261
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -141136,7 +149939,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_52setPythonType(struct PyPetscPCO
return __pyx_r;
}
-/* "PETSc/PC.pyx":263
+/* "PETSc/PC.pyx":268
* # --- ASM ---
*
* def setASMType(self, asmtype): # <<<<<<<<<<<<<<
@@ -141160,6 +149963,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_55setASMType(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141170,7 +149974,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_55setASMType(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMType") < 0)) __PYX_ERR(34, 263, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMType") < 0)) __PYX_ERR(34, 268, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141181,7 +149985,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_55setASMType(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setASMType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 263, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setASMType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 268, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setASMType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141202,26 +150006,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_54setASMType(struct PyPetscPCObje
int __pyx_t_2;
__Pyx_RefNannySetupContext("setASMType", 0);
- /* "PETSc/PC.pyx":264
+ /* "PETSc/PC.pyx":269
*
* def setASMType(self, asmtype):
* cdef PetscPCASMType cval = asmtype # <<<<<<<<<<<<<<
* CHKERR( PCASMSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = ((PCASMType)__Pyx_PyInt_As_PCASMType(__pyx_v_asmtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 264, __pyx_L1_error)
+ __pyx_t_1 = ((PCASMType)__Pyx_PyInt_As_PCASMType(__pyx_v_asmtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 269, __pyx_L1_error)
__pyx_v_cval = __pyx_t_1;
- /* "PETSc/PC.pyx":265
+ /* "PETSc/PC.pyx":270
* def setASMType(self, asmtype):
* cdef PetscPCASMType cval = asmtype
* CHKERR( PCASMSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def setASMOverlap(self, overlap):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 265, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 270, __pyx_L1_error)
- /* "PETSc/PC.pyx":263
+ /* "PETSc/PC.pyx":268
* # --- ASM ---
*
* def setASMType(self, asmtype): # <<<<<<<<<<<<<<
@@ -141241,7 +150045,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_54setASMType(struct PyPetscPCObje
return __pyx_r;
}
-/* "PETSc/PC.pyx":267
+/* "PETSc/PC.pyx":272
* CHKERR( PCASMSetType(self.pc, cval) )
*
* def setASMOverlap(self, overlap): # <<<<<<<<<<<<<<
@@ -141265,6 +150069,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_57setASMOverlap(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141275,7 +150080,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_57setASMOverlap(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMOverlap") < 0)) __PYX_ERR(34, 267, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMOverlap") < 0)) __PYX_ERR(34, 272, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141286,7 +150091,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_57setASMOverlap(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setASMOverlap", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 267, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setASMOverlap", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 272, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setASMOverlap", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141307,26 +150112,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_56setASMOverlap(struct PyPetscPCO
int __pyx_t_2;
__Pyx_RefNannySetupContext("setASMOverlap", 0);
- /* "PETSc/PC.pyx":268
+ /* "PETSc/PC.pyx":273
*
* def setASMOverlap(self, overlap):
* cdef PetscInt ival = asInt(overlap) # <<<<<<<<<<<<<<
* CHKERR( PCASMSetOverlap(self.pc, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 268, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 273, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/PC.pyx":269
+ /* "PETSc/PC.pyx":274
* def setASMOverlap(self, overlap):
* cdef PetscInt ival = asInt(overlap)
* CHKERR( PCASMSetOverlap(self.pc, ival) ) # <<<<<<<<<<<<<<
*
* def setASMLocalSubdomains(self, nsd):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetOverlap(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 269, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetOverlap(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 274, __pyx_L1_error)
- /* "PETSc/PC.pyx":267
+ /* "PETSc/PC.pyx":272
* CHKERR( PCASMSetType(self.pc, cval) )
*
* def setASMOverlap(self, overlap): # <<<<<<<<<<<<<<
@@ -141346,7 +150151,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_56setASMOverlap(struct PyPetscPCO
return __pyx_r;
}
-/* "PETSc/PC.pyx":271
+/* "PETSc/PC.pyx":276
* CHKERR( PCASMSetOverlap(self.pc, ival) )
*
* def setASMLocalSubdomains(self, nsd): # <<<<<<<<<<<<<<
@@ -141370,6 +150175,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_59setASMLocalSubdomains(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141380,7 +150186,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_59setASMLocalSubdomains(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMLocalSubdomains") < 0)) __PYX_ERR(34, 271, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMLocalSubdomains") < 0)) __PYX_ERR(34, 276, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141391,7 +150197,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_59setASMLocalSubdomains(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setASMLocalSubdomains", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 271, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setASMLocalSubdomains", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 276, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setASMLocalSubdomains", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141412,26 +150218,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_58setASMLocalSubdomains(struct Py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setASMLocalSubdomains", 0);
- /* "PETSc/PC.pyx":272
+ /* "PETSc/PC.pyx":277
*
* def setASMLocalSubdomains(self, nsd):
* cdef PetscInt n = asInt(nsd) # <<<<<<<<<<<<<<
* CHKERR( PCASMSetLocalSubdomains(self.pc, n, NULL, NULL) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nsd); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 272, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nsd); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 277, __pyx_L1_error)
__pyx_v_n = __pyx_t_1;
- /* "PETSc/PC.pyx":273
+ /* "PETSc/PC.pyx":278
* def setASMLocalSubdomains(self, nsd):
* cdef PetscInt n = asInt(nsd)
* CHKERR( PCASMSetLocalSubdomains(self.pc, n, NULL, NULL) ) # <<<<<<<<<<<<<<
*
* def setASMTotalSubdomains(self, nsd):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetLocalSubdomains(__pyx_v_self->pc, __pyx_v_n, NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 273, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetLocalSubdomains(__pyx_v_self->pc, __pyx_v_n, NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 278, __pyx_L1_error)
- /* "PETSc/PC.pyx":271
+ /* "PETSc/PC.pyx":276
* CHKERR( PCASMSetOverlap(self.pc, ival) )
*
* def setASMLocalSubdomains(self, nsd): # <<<<<<<<<<<<<<
@@ -141451,7 +150257,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_58setASMLocalSubdomains(struct Py
return __pyx_r;
}
-/* "PETSc/PC.pyx":275
+/* "PETSc/PC.pyx":280
* CHKERR( PCASMSetLocalSubdomains(self.pc, n, NULL, NULL) )
*
* def setASMTotalSubdomains(self, nsd): # <<<<<<<<<<<<<<
@@ -141475,6 +150281,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_61setASMTotalSubdomains(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141485,7 +150292,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_61setASMTotalSubdomains(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMTotalSubdomains") < 0)) __PYX_ERR(34, 275, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setASMTotalSubdomains") < 0)) __PYX_ERR(34, 280, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141496,7 +150303,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_61setASMTotalSubdomains(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setASMTotalSubdomains", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 275, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setASMTotalSubdomains", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 280, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setASMTotalSubdomains", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141517,26 +150324,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_60setASMTotalSubdomains(struct Py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setASMTotalSubdomains", 0);
- /* "PETSc/PC.pyx":276
+ /* "PETSc/PC.pyx":281
*
* def setASMTotalSubdomains(self, nsd):
* cdef PetscInt N = asInt(nsd) # <<<<<<<<<<<<<<
* CHKERR( PCASMSetTotalSubdomains(self.pc, N, NULL, NULL) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nsd); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 276, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nsd); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 281, __pyx_L1_error)
__pyx_v_N = __pyx_t_1;
- /* "PETSc/PC.pyx":277
+ /* "PETSc/PC.pyx":282
* def setASMTotalSubdomains(self, nsd):
* cdef PetscInt N = asInt(nsd)
* CHKERR( PCASMSetTotalSubdomains(self.pc, N, NULL, NULL) ) # <<<<<<<<<<<<<<
*
* def getASMSubKSP(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetTotalSubdomains(__pyx_v_self->pc, __pyx_v_N, NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 277, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMSetTotalSubdomains(__pyx_v_self->pc, __pyx_v_N, NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 282, __pyx_L1_error)
- /* "PETSc/PC.pyx":275
+ /* "PETSc/PC.pyx":280
* CHKERR( PCASMSetLocalSubdomains(self.pc, n, NULL, NULL) )
*
* def setASMTotalSubdomains(self, nsd): # <<<<<<<<<<<<<<
@@ -141556,7 +150363,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_60setASMTotalSubdomains(struct Py
return __pyx_r;
}
-/* "PETSc/PC.pyx":279
+/* "PETSc/PC.pyx":284
* CHKERR( PCASMSetTotalSubdomains(self.pc, N, NULL, NULL) )
*
* def getASMSubKSP(self): # <<<<<<<<<<<<<<
@@ -141593,7 +150400,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_62getASMSubKSP(struct PyPetscPCOb
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("getASMSubKSP", 0);
- /* "PETSc/PC.pyx":280
+ /* "PETSc/PC.pyx":285
*
* def getASMSubKSP(self):
* cdef PetscInt i = 0, n = 0 # <<<<<<<<<<<<<<
@@ -141603,7 +150410,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_62getASMSubKSP(struct PyPetscPCOb
__pyx_v_i = 0;
__pyx_v_n = 0;
- /* "PETSc/PC.pyx":281
+ /* "PETSc/PC.pyx":286
* def getASMSubKSP(self):
* cdef PetscInt i = 0, n = 0
* cdef PetscKSP *p = NULL # <<<<<<<<<<<<<<
@@ -141612,16 +150419,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_62getASMSubKSP(struct PyPetscPCOb
*/
__pyx_v_p = NULL;
- /* "PETSc/PC.pyx":282
+ /* "PETSc/PC.pyx":287
* cdef PetscInt i = 0, n = 0
* cdef PetscKSP *p = NULL
* CHKERR( PCASMGetSubKSP(self.pc, &n, NULL, &p) ) # <<<<<<<<<<<<<<
* return [ref_KSP(p[i]) for i from 0 <= i <n]
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMGetSubKSP(__pyx_v_self->pc, (&__pyx_v_n), NULL, (&__pyx_v_p))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 282, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCASMGetSubKSP(__pyx_v_self->pc, (&__pyx_v_n), NULL, (&__pyx_v_p))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 287, __pyx_L1_error)
- /* "PETSc/PC.pyx":283
+ /* "PETSc/PC.pyx":288
* cdef PetscKSP *p = NULL
* CHKERR( PCASMGetSubKSP(self.pc, &n, NULL, &p) )
* return [ref_KSP(p[i]) for i from 0 <= i <n] # <<<<<<<<<<<<<<
@@ -141629,20 +150436,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_62getASMSubKSP(struct PyPetscPCOb
* # --- GASM ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 283, __pyx_L1_error)
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 288, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP((__pyx_v_p[__pyx_v_i]))); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 283, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP((__pyx_v_p[__pyx_v_i]))); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 288, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_4))) __PYX_ERR(34, 283, __pyx_L1_error)
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_4))) __PYX_ERR(34, 288, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":279
+ /* "PETSc/PC.pyx":284
* CHKERR( PCASMSetTotalSubdomains(self.pc, N, NULL, NULL) )
*
* def getASMSubKSP(self): # <<<<<<<<<<<<<<
@@ -141662,7 +150469,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_62getASMSubKSP(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":287
+/* "PETSc/PC.pyx":292
* # --- GASM ---
*
* def setGASMType(self, gasmtype): # <<<<<<<<<<<<<<
@@ -141686,6 +150493,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_65setGASMType(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141696,7 +150504,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_65setGASMType(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGASMType") < 0)) __PYX_ERR(34, 287, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGASMType") < 0)) __PYX_ERR(34, 292, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141707,7 +150515,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_65setGASMType(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setGASMType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 287, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setGASMType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 292, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setGASMType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141728,26 +150536,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_64setGASMType(struct PyPetscPCObj
int __pyx_t_2;
__Pyx_RefNannySetupContext("setGASMType", 0);
- /* "PETSc/PC.pyx":288
+ /* "PETSc/PC.pyx":293
*
* def setGASMType(self, gasmtype):
* cdef PetscPCGASMType cval = gasmtype # <<<<<<<<<<<<<<
* CHKERR( PCGASMSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = ((PCGASMType)__Pyx_PyInt_As_PCGASMType(__pyx_v_gasmtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 288, __pyx_L1_error)
+ __pyx_t_1 = ((PCGASMType)__Pyx_PyInt_As_PCGASMType(__pyx_v_gasmtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 293, __pyx_L1_error)
__pyx_v_cval = __pyx_t_1;
- /* "PETSc/PC.pyx":289
+ /* "PETSc/PC.pyx":294
* def setGASMType(self, gasmtype):
* cdef PetscPCGASMType cval = gasmtype
* CHKERR( PCGASMSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def setGASMOverlap(self, overlap):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGASMSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 289, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGASMSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 294, __pyx_L1_error)
- /* "PETSc/PC.pyx":287
+ /* "PETSc/PC.pyx":292
* # --- GASM ---
*
* def setGASMType(self, gasmtype): # <<<<<<<<<<<<<<
@@ -141767,7 +150575,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_64setGASMType(struct PyPetscPCObj
return __pyx_r;
}
-/* "PETSc/PC.pyx":291
+/* "PETSc/PC.pyx":296
* CHKERR( PCGASMSetType(self.pc, cval) )
*
* def setGASMOverlap(self, overlap): # <<<<<<<<<<<<<<
@@ -141791,6 +150599,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_67setGASMOverlap(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141801,7 +150610,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_67setGASMOverlap(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGASMOverlap") < 0)) __PYX_ERR(34, 291, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGASMOverlap") < 0)) __PYX_ERR(34, 296, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141812,7 +150621,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_67setGASMOverlap(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setGASMOverlap", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 291, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setGASMOverlap", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 296, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setGASMOverlap", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141833,26 +150642,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_66setGASMOverlap(struct PyPetscPC
int __pyx_t_2;
__Pyx_RefNannySetupContext("setGASMOverlap", 0);
- /* "PETSc/PC.pyx":292
+ /* "PETSc/PC.pyx":297
*
* def setGASMOverlap(self, overlap):
* cdef PetscInt ival = asInt(overlap) # <<<<<<<<<<<<<<
* CHKERR( PCGASMSetOverlap(self.pc, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 292, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 297, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/PC.pyx":293
+ /* "PETSc/PC.pyx":298
* def setGASMOverlap(self, overlap):
* cdef PetscInt ival = asInt(overlap)
* CHKERR( PCGASMSetOverlap(self.pc, ival) ) # <<<<<<<<<<<<<<
*
* # --- GAMG ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGASMSetOverlap(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 293, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGASMSetOverlap(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 298, __pyx_L1_error)
- /* "PETSc/PC.pyx":291
+ /* "PETSc/PC.pyx":296
* CHKERR( PCGASMSetType(self.pc, cval) )
*
* def setGASMOverlap(self, overlap): # <<<<<<<<<<<<<<
@@ -141872,7 +150681,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_66setGASMOverlap(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":297
+/* "PETSc/PC.pyx":302
* # --- GAMG ---
*
* def setGAMGType(self, gamgtype): # <<<<<<<<<<<<<<
@@ -141896,6 +150705,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_69setGAMGType(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -141906,7 +150716,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_69setGAMGType(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGAMGType") < 0)) __PYX_ERR(34, 297, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGAMGType") < 0)) __PYX_ERR(34, 302, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -141917,7 +150727,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_69setGAMGType(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setGAMGType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 297, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setGAMGType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 302, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setGAMGType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -141939,7 +150749,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_68setGAMGType(struct PyPetscPCObj
__Pyx_RefNannySetupContext("setGAMGType", 0);
__Pyx_INCREF(__pyx_v_gamgtype);
- /* "PETSc/PC.pyx":298
+ /* "PETSc/PC.pyx":303
*
* def setGAMGType(self, gamgtype):
* cdef PetscPCGAMGType cval = NULL # <<<<<<<<<<<<<<
@@ -141948,28 +150758,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_68setGAMGType(struct PyPetscPCObj
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":299
+ /* "PETSc/PC.pyx":304
* def setGAMGType(self, gamgtype):
* cdef PetscPCGAMGType cval = NULL
* gamgtype = str2bytes(gamgtype, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCGAMGSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_gamgtype, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 299, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_gamgtype, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 304, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_gamgtype, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":300
+ /* "PETSc/PC.pyx":305
* cdef PetscPCGAMGType cval = NULL
* gamgtype = str2bytes(gamgtype, &cval)
* CHKERR( PCGAMGSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def setGAMGLevels(self, levels):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGAMGSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 300, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGAMGSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 305, __pyx_L1_error)
- /* "PETSc/PC.pyx":297
+ /* "PETSc/PC.pyx":302
* # --- GAMG ---
*
* def setGAMGType(self, gamgtype): # <<<<<<<<<<<<<<
@@ -141991,7 +150801,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_68setGAMGType(struct PyPetscPCObj
return __pyx_r;
}
-/* "PETSc/PC.pyx":302
+/* "PETSc/PC.pyx":307
* CHKERR( PCGAMGSetType(self.pc, cval) )
*
* def setGAMGLevels(self, levels): # <<<<<<<<<<<<<<
@@ -142015,6 +150825,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_71setGAMGLevels(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142025,7 +150836,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_71setGAMGLevels(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGAMGLevels") < 0)) __PYX_ERR(34, 302, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGAMGLevels") < 0)) __PYX_ERR(34, 307, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -142036,7 +150847,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_71setGAMGLevels(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setGAMGLevels", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 302, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setGAMGLevels", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 307, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setGAMGLevels", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -142057,26 +150868,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_70setGAMGLevels(struct PyPetscPCO
int __pyx_t_2;
__Pyx_RefNannySetupContext("setGAMGLevels", 0);
- /* "PETSc/PC.pyx":303
+ /* "PETSc/PC.pyx":308
*
* def setGAMGLevels(self, levels):
* cdef PetscInt ival = asInt(levels) # <<<<<<<<<<<<<<
* CHKERR( PCGAMGSetNlevels(self.pc, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 303, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 308, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/PC.pyx":304
+ /* "PETSc/PC.pyx":309
* def setGAMGLevels(self, levels):
* cdef PetscInt ival = asInt(levels)
* CHKERR( PCGAMGSetNlevels(self.pc, ival) ) # <<<<<<<<<<<<<<
*
* def setGAMGSmooths(self, smooths):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGAMGSetNlevels(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 304, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGAMGSetNlevels(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 309, __pyx_L1_error)
- /* "PETSc/PC.pyx":302
+ /* "PETSc/PC.pyx":307
* CHKERR( PCGAMGSetType(self.pc, cval) )
*
* def setGAMGLevels(self, levels): # <<<<<<<<<<<<<<
@@ -142096,7 +150907,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_70setGAMGLevels(struct PyPetscPCO
return __pyx_r;
}
-/* "PETSc/PC.pyx":306
+/* "PETSc/PC.pyx":311
* CHKERR( PCGAMGSetNlevels(self.pc, ival) )
*
* def setGAMGSmooths(self, smooths): # <<<<<<<<<<<<<<
@@ -142120,6 +150931,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_73setGAMGSmooths(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142130,7 +150942,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_73setGAMGSmooths(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGAMGSmooths") < 0)) __PYX_ERR(34, 306, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGAMGSmooths") < 0)) __PYX_ERR(34, 311, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -142141,7 +150953,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_73setGAMGSmooths(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setGAMGSmooths", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 306, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setGAMGSmooths", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 311, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setGAMGSmooths", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -142162,26 +150974,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_72setGAMGSmooths(struct PyPetscPC
int __pyx_t_2;
__Pyx_RefNannySetupContext("setGAMGSmooths", 0);
- /* "PETSc/PC.pyx":307
+ /* "PETSc/PC.pyx":312
*
* def setGAMGSmooths(self, smooths):
* cdef PetscInt ival = asInt(smooths) # <<<<<<<<<<<<<<
* CHKERR( PCGAMGSetNSmooths(self.pc, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_smooths); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 307, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_smooths); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 312, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/PC.pyx":308
+ /* "PETSc/PC.pyx":313
* def setGAMGSmooths(self, smooths):
* cdef PetscInt ival = asInt(smooths)
* CHKERR( PCGAMGSetNSmooths(self.pc, ival) ) # <<<<<<<<<<<<<<
*
* # --- Hypre ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGAMGSetNSmooths(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 308, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCGAMGSetNSmooths(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 313, __pyx_L1_error)
- /* "PETSc/PC.pyx":306
+ /* "PETSc/PC.pyx":311
* CHKERR( PCGAMGSetNlevels(self.pc, ival) )
*
* def setGAMGSmooths(self, smooths): # <<<<<<<<<<<<<<
@@ -142201,7 +151013,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_72setGAMGSmooths(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":312
+/* "PETSc/PC.pyx":317
* # --- Hypre ---
*
* def getHYPREType(self): # <<<<<<<<<<<<<<
@@ -142234,7 +151046,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_74getHYPREType(struct PyPetscPCOb
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getHYPREType", 0);
- /* "PETSc/PC.pyx":313
+ /* "PETSc/PC.pyx":318
*
* def getHYPREType(self):
* cdef PetscPCHYPREType cval = NULL # <<<<<<<<<<<<<<
@@ -142243,16 +151055,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_74getHYPREType(struct PyPetscPCOb
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":314
+ /* "PETSc/PC.pyx":319
* def getHYPREType(self):
* cdef PetscPCHYPREType cval = NULL
* CHKERR( PCHYPREGetType(self.pc, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPREGetType(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 314, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPREGetType(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 319, __pyx_L1_error)
- /* "PETSc/PC.pyx":315
+ /* "PETSc/PC.pyx":320
* cdef PetscPCHYPREType cval = NULL
* CHKERR( PCHYPREGetType(self.pc, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -142260,13 +151072,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_74getHYPREType(struct PyPetscPCOb
* def setHYPREType(self, hypretype):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 315, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 320, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":312
+ /* "PETSc/PC.pyx":317
* # --- Hypre ---
*
* def getHYPREType(self): # <<<<<<<<<<<<<<
@@ -142285,7 +151097,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_74getHYPREType(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":317
+/* "PETSc/PC.pyx":322
* return bytes2str(cval)
*
* def setHYPREType(self, hypretype): # <<<<<<<<<<<<<<
@@ -142309,6 +151121,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_77setHYPREType(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142319,7 +151132,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_77setHYPREType(PyObject *__pyx_v_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPREType") < 0)) __PYX_ERR(34, 317, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPREType") < 0)) __PYX_ERR(34, 322, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -142330,7 +151143,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_77setHYPREType(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setHYPREType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 317, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setHYPREType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 322, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setHYPREType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -142352,7 +151165,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_76setHYPREType(struct PyPetscPCOb
__Pyx_RefNannySetupContext("setHYPREType", 0);
__Pyx_INCREF(__pyx_v_hypretype);
- /* "PETSc/PC.pyx":318
+ /* "PETSc/PC.pyx":323
*
* def setHYPREType(self, hypretype):
* cdef PetscPCHYPREType cval = NULL # <<<<<<<<<<<<<<
@@ -142361,28 +151174,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_76setHYPREType(struct PyPetscPCOb
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":319
+ /* "PETSc/PC.pyx":324
* def setHYPREType(self, hypretype):
* cdef PetscPCHYPREType cval = NULL
* hypretype = str2bytes(hypretype, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetType(self.pc, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_hypretype, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 319, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_hypretype, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 324, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_hypretype, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":320
+ /* "PETSc/PC.pyx":325
* cdef PetscPCHYPREType cval = NULL
* hypretype = str2bytes(hypretype, &cval)
* CHKERR( PCHYPRESetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
- * def setHYPREDiscreteCurl(self, Mat mat not None):
+ * def setHYPREDiscreteCurl(self, Mat mat):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 320, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 325, __pyx_L1_error)
- /* "PETSc/PC.pyx":317
+ /* "PETSc/PC.pyx":322
* return bytes2str(cval)
*
* def setHYPREType(self, hypretype): # <<<<<<<<<<<<<<
@@ -142404,10 +151217,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_76setHYPREType(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":322
+/* "PETSc/PC.pyx":327
* CHKERR( PCHYPRESetType(self.pc, cval) )
*
- * def setHYPREDiscreteCurl(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setHYPREDiscreteCurl(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetDiscreteCurl(self.pc, mat.mat) )
*
*/
@@ -142428,6 +151241,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_79setHYPREDiscreteCurl(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142438,7 +151252,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_79setHYPREDiscreteCurl(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPREDiscreteCurl") < 0)) __PYX_ERR(34, 322, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPREDiscreteCurl") < 0)) __PYX_ERR(34, 327, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -142449,13 +151263,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_79setHYPREDiscreteCurl(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setHYPREDiscreteCurl", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 322, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setHYPREDiscreteCurl", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 327, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setHYPREDiscreteCurl", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 322, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 327, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_78setHYPREDiscreteCurl(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -142473,19 +151287,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_78setHYPREDiscreteCurl(struct PyP
int __pyx_t_1;
__Pyx_RefNannySetupContext("setHYPREDiscreteCurl", 0);
- /* "PETSc/PC.pyx":323
+ /* "PETSc/PC.pyx":328
*
- * def setHYPREDiscreteCurl(self, Mat mat not None):
+ * def setHYPREDiscreteCurl(self, Mat mat):
* CHKERR( PCHYPRESetDiscreteCurl(self.pc, mat.mat) ) # <<<<<<<<<<<<<<
*
- * def setHYPREDiscreteGradient(self, Mat mat not None):
+ * def setHYPREDiscreteGradient(self, Mat mat):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetDiscreteCurl(__pyx_v_self->pc, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 323, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetDiscreteCurl(__pyx_v_self->pc, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 328, __pyx_L1_error)
- /* "PETSc/PC.pyx":322
+ /* "PETSc/PC.pyx":327
* CHKERR( PCHYPRESetType(self.pc, cval) )
*
- * def setHYPREDiscreteCurl(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setHYPREDiscreteCurl(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetDiscreteCurl(self.pc, mat.mat) )
*
*/
@@ -142502,10 +151316,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_78setHYPREDiscreteCurl(struct PyP
return __pyx_r;
}
-/* "PETSc/PC.pyx":325
+/* "PETSc/PC.pyx":330
* CHKERR( PCHYPRESetDiscreteCurl(self.pc, mat.mat) )
*
- * def setHYPREDiscreteGradient(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setHYPREDiscreteGradient(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetDiscreteGradient(self.pc, mat.mat) )
*
*/
@@ -142526,6 +151340,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_81setHYPREDiscreteGradient(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142536,7 +151351,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_81setHYPREDiscreteGradient(PyObje
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPREDiscreteGradient") < 0)) __PYX_ERR(34, 325, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPREDiscreteGradient") < 0)) __PYX_ERR(34, 330, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -142547,13 +151362,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_81setHYPREDiscreteGradient(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setHYPREDiscreteGradient", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 325, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setHYPREDiscreteGradient", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 330, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setHYPREDiscreteGradient", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 325, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 330, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_80setHYPREDiscreteGradient(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -142571,19 +151386,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_80setHYPREDiscreteGradient(struct
int __pyx_t_1;
__Pyx_RefNannySetupContext("setHYPREDiscreteGradient", 0);
- /* "PETSc/PC.pyx":326
+ /* "PETSc/PC.pyx":331
*
- * def setHYPREDiscreteGradient(self, Mat mat not None):
+ * def setHYPREDiscreteGradient(self, Mat mat):
* CHKERR( PCHYPRESetDiscreteGradient(self.pc, mat.mat) ) # <<<<<<<<<<<<<<
*
- * def setHYPRESetAlphaPoissonMatrix(self, Mat mat not None):
+ * def setHYPRESetAlphaPoissonMatrix(self, Mat mat):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetDiscreteGradient(__pyx_v_self->pc, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 326, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetDiscreteGradient(__pyx_v_self->pc, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 331, __pyx_L1_error)
- /* "PETSc/PC.pyx":325
+ /* "PETSc/PC.pyx":330
* CHKERR( PCHYPRESetDiscreteCurl(self.pc, mat.mat) )
*
- * def setHYPREDiscreteGradient(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setHYPREDiscreteGradient(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetDiscreteGradient(self.pc, mat.mat) )
*
*/
@@ -142600,10 +151415,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_80setHYPREDiscreteGradient(struct
return __pyx_r;
}
-/* "PETSc/PC.pyx":328
+/* "PETSc/PC.pyx":333
* CHKERR( PCHYPRESetDiscreteGradient(self.pc, mat.mat) )
*
- * def setHYPRESetAlphaPoissonMatrix(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setHYPRESetAlphaPoissonMatrix(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetAlphaPoissonMatrix(self.pc, mat.mat) )
*
*/
@@ -142624,6 +151439,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_83setHYPRESetAlphaPoissonMatrix(P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142634,7 +151450,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_83setHYPRESetAlphaPoissonMatrix(P
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPRESetAlphaPoissonMatrix") < 0)) __PYX_ERR(34, 328, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPRESetAlphaPoissonMatrix") < 0)) __PYX_ERR(34, 333, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -142645,13 +151461,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_83setHYPRESetAlphaPoissonMatrix(P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setHYPRESetAlphaPoissonMatrix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 328, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setHYPRESetAlphaPoissonMatrix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 333, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setHYPRESetAlphaPoissonMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 328, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 333, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_82setHYPRESetAlphaPoissonMatrix(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -142669,19 +151485,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_82setHYPRESetAlphaPoissonMatrix(s
int __pyx_t_1;
__Pyx_RefNannySetupContext("setHYPRESetAlphaPoissonMatrix", 0);
- /* "PETSc/PC.pyx":329
+ /* "PETSc/PC.pyx":334
*
- * def setHYPRESetAlphaPoissonMatrix(self, Mat mat not None):
+ * def setHYPRESetAlphaPoissonMatrix(self, Mat mat):
* CHKERR( PCHYPRESetAlphaPoissonMatrix(self.pc, mat.mat) ) # <<<<<<<<<<<<<<
*
* def setHYPRESetBetaPoissonMatrix(self, Mat mat=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetAlphaPoissonMatrix(__pyx_v_self->pc, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 329, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetAlphaPoissonMatrix(__pyx_v_self->pc, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 334, __pyx_L1_error)
- /* "PETSc/PC.pyx":328
+ /* "PETSc/PC.pyx":333
* CHKERR( PCHYPRESetDiscreteGradient(self.pc, mat.mat) )
*
- * def setHYPRESetAlphaPoissonMatrix(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setHYPRESetAlphaPoissonMatrix(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetAlphaPoissonMatrix(self.pc, mat.mat) )
*
*/
@@ -142698,7 +151514,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_82setHYPRESetAlphaPoissonMatrix(s
return __pyx_r;
}
-/* "PETSc/PC.pyx":331
+/* "PETSc/PC.pyx":336
* CHKERR( PCHYPRESetAlphaPoissonMatrix(self.pc, mat.mat) )
*
* def setHYPRESetBetaPoissonMatrix(self, Mat mat=None): # <<<<<<<<<<<<<<
@@ -142723,6 +151539,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_85setHYPRESetBetaPoissonMatrix(Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142735,11 +151552,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_85setHYPRESetBetaPoissonMatrix(Py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPRESetBetaPoissonMatrix") < 0)) __PYX_ERR(34, 331, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPRESetBetaPoissonMatrix") < 0)) __PYX_ERR(34, 336, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142748,13 +151566,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_85setHYPRESetBetaPoissonMatrix(Py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setHYPRESetBetaPoissonMatrix", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 331, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setHYPRESetBetaPoissonMatrix", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 336, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setHYPRESetBetaPoissonMatrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "mat", 0))) __PYX_ERR(34, 331, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "mat", 0))) __PYX_ERR(34, 336, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_84setHYPRESetBetaPoissonMatrix(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -142776,7 +151594,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_84setHYPRESetBetaPoissonMatrix(st
int __pyx_t_4;
__Pyx_RefNannySetupContext("setHYPRESetBetaPoissonMatrix", 0);
- /* "PETSc/PC.pyx":332
+ /* "PETSc/PC.pyx":337
*
* def setHYPRESetBetaPoissonMatrix(self, Mat mat=None):
* cdef PetscMat pmat = NULL # <<<<<<<<<<<<<<
@@ -142785,7 +151603,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_84setHYPRESetBetaPoissonMatrix(st
*/
__pyx_v_pmat = NULL;
- /* "PETSc/PC.pyx":333
+ /* "PETSc/PC.pyx":338
* def setHYPRESetBetaPoissonMatrix(self, Mat mat=None):
* cdef PetscMat pmat = NULL
* if mat is not None: pmat = mat.mat # <<<<<<<<<<<<<<
@@ -142799,16 +151617,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_84setHYPRESetBetaPoissonMatrix(st
__pyx_v_pmat = __pyx_t_3;
}
- /* "PETSc/PC.pyx":334
+ /* "PETSc/PC.pyx":339
* cdef PetscMat pmat = NULL
* if mat is not None: pmat = mat.mat
* CHKERR( PCHYPRESetBetaPoissonMatrix(self.pc, pmat) ) # <<<<<<<<<<<<<<
*
- * def setHYPRESetEdgeConstantVectors(self, Vec ozz not None,
+ * def setHYPRESetEdgeConstantVectors(self, Vec ozz, Vec zoz, Vec zzo=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetBetaPoissonMatrix(__pyx_v_self->pc, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 334, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetBetaPoissonMatrix(__pyx_v_self->pc, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 339, __pyx_L1_error)
- /* "PETSc/PC.pyx":331
+ /* "PETSc/PC.pyx":336
* CHKERR( PCHYPRESetAlphaPoissonMatrix(self.pc, mat.mat) )
*
* def setHYPRESetBetaPoissonMatrix(self, Mat mat=None): # <<<<<<<<<<<<<<
@@ -142828,12 +151646,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_84setHYPRESetBetaPoissonMatrix(st
return __pyx_r;
}
-/* "PETSc/PC.pyx":336
+/* "PETSc/PC.pyx":341
* CHKERR( PCHYPRESetBetaPoissonMatrix(self.pc, pmat) )
*
- * def setHYPRESetEdgeConstantVectors(self, Vec ozz not None, # <<<<<<<<<<<<<<
- * Vec zoz not None, Vec zzo=None):
+ * def setHYPRESetEdgeConstantVectors(self, Vec ozz, Vec zoz, Vec zzo=None): # <<<<<<<<<<<<<<
* cdef PetscVec zzo_vec = NULL
+ * if zzo is not None: zzo_vec = zzo.vec
*/
/* Python wrapper */
@@ -142849,22 +151667,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_87setHYPRESetEdgeConstantVectors(
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_ozz,&__pyx_n_s_zoz,&__pyx_n_s_zzo,0};
PyObject* values[3] = {0,0,0};
-
- /* "PETSc/PC.pyx":337
- *
- * def setHYPRESetEdgeConstantVectors(self, Vec ozz not None,
- * Vec zoz not None, Vec zzo=None): # <<<<<<<<<<<<<<
- * cdef PetscVec zzo_vec = NULL
- * if zzo is not None: zzo_vec = zzo.vec
- */
values[2] = (PyObject *)((struct PyPetscVecObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -142873,11 +151686,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_87setHYPRESetEdgeConstantVectors(
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ozz)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_zoz)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setHYPRESetEdgeConstantVectors", 0, 2, 3, 1); __PYX_ERR(34, 336, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setHYPRESetEdgeConstantVectors", 0, 2, 3, 1); __PYX_ERR(34, 341, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_zzo);
@@ -142885,11 +151700,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_87setHYPRESetEdgeConstantVectors(
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPRESetEdgeConstantVectors") < 0)) __PYX_ERR(34, 336, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setHYPRESetEdgeConstantVectors") < 0)) __PYX_ERR(34, 341, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -142902,25 +151718,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_87setHYPRESetEdgeConstantVectors(
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setHYPRESetEdgeConstantVectors", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 336, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setHYPRESetEdgeConstantVectors", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 341, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setHYPRESetEdgeConstantVectors", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ozz), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "ozz", 0))) __PYX_ERR(34, 336, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_zoz), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "zoz", 0))) __PYX_ERR(34, 337, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_zzo), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "zzo", 0))) __PYX_ERR(34, 337, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ozz), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "ozz", 0))) __PYX_ERR(34, 341, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_zoz), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "zoz", 0))) __PYX_ERR(34, 341, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_zzo), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "zzo", 0))) __PYX_ERR(34, 341, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_86setHYPRESetEdgeConstantVectors(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_ozz, __pyx_v_zoz, __pyx_v_zzo);
- /* "PETSc/PC.pyx":336
- * CHKERR( PCHYPRESetBetaPoissonMatrix(self.pc, pmat) )
- *
- * def setHYPRESetEdgeConstantVectors(self, Vec ozz not None, # <<<<<<<<<<<<<<
- * Vec zoz not None, Vec zzo=None):
- * cdef PetscVec zzo_vec = NULL
- */
-
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
@@ -142940,17 +151748,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_86setHYPRESetEdgeConstantVectors(
int __pyx_t_4;
__Pyx_RefNannySetupContext("setHYPRESetEdgeConstantVectors", 0);
- /* "PETSc/PC.pyx":338
- * def setHYPRESetEdgeConstantVectors(self, Vec ozz not None,
- * Vec zoz not None, Vec zzo=None):
+ /* "PETSc/PC.pyx":342
+ *
+ * def setHYPRESetEdgeConstantVectors(self, Vec ozz, Vec zoz, Vec zzo=None):
* cdef PetscVec zzo_vec = NULL # <<<<<<<<<<<<<<
* if zzo is not None: zzo_vec = zzo.vec
* CHKERR( PCHYPRESetEdgeConstantVectors(self.pc, ozz.vec, zoz.vec,
*/
__pyx_v_zzo_vec = NULL;
- /* "PETSc/PC.pyx":339
- * Vec zoz not None, Vec zzo=None):
+ /* "PETSc/PC.pyx":343
+ * def setHYPRESetEdgeConstantVectors(self, Vec ozz, Vec zoz, Vec zzo=None):
* cdef PetscVec zzo_vec = NULL
* if zzo is not None: zzo_vec = zzo.vec # <<<<<<<<<<<<<<
* CHKERR( PCHYPRESetEdgeConstantVectors(self.pc, ozz.vec, zoz.vec,
@@ -142963,21 +151771,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_86setHYPRESetEdgeConstantVectors(
__pyx_v_zzo_vec = __pyx_t_3;
}
- /* "PETSc/PC.pyx":340
+ /* "PETSc/PC.pyx":344
* cdef PetscVec zzo_vec = NULL
* if zzo is not None: zzo_vec = zzo.vec
* CHKERR( PCHYPRESetEdgeConstantVectors(self.pc, ozz.vec, zoz.vec, # <<<<<<<<<<<<<<
* zzo_vec) )
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetEdgeConstantVectors(__pyx_v_self->pc, __pyx_v_ozz->vec, __pyx_v_zoz->vec, __pyx_v_zzo_vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 340, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCHYPRESetEdgeConstantVectors(__pyx_v_self->pc, __pyx_v_ozz->vec, __pyx_v_zoz->vec, __pyx_v_zzo_vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 344, __pyx_L1_error)
- /* "PETSc/PC.pyx":336
+ /* "PETSc/PC.pyx":341
* CHKERR( PCHYPRESetBetaPoissonMatrix(self.pc, pmat) )
*
- * def setHYPRESetEdgeConstantVectors(self, Vec ozz not None, # <<<<<<<<<<<<<<
- * Vec zoz not None, Vec zzo=None):
+ * def setHYPRESetEdgeConstantVectors(self, Vec ozz, Vec zoz, Vec zzo=None): # <<<<<<<<<<<<<<
* cdef PetscVec zzo_vec = NULL
+ * if zzo is not None: zzo_vec = zzo.vec
*/
/* function exit code */
@@ -142992,7 +151800,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_86setHYPRESetEdgeConstantVectors(
return __pyx_r;
}
-/* "PETSc/PC.pyx":345
+/* "PETSc/PC.pyx":349
* # --- Factor ---
*
* def setFactorSolverPackage(self, solver): # <<<<<<<<<<<<<<
@@ -143016,6 +151824,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_89setFactorSolverPackage(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143026,7 +151835,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_89setFactorSolverPackage(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorSolverPackage") < 0)) __PYX_ERR(34, 345, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorSolverPackage") < 0)) __PYX_ERR(34, 349, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -143037,7 +151846,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_89setFactorSolverPackage(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFactorSolverPackage", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 345, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFactorSolverPackage", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 349, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFactorSolverPackage", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -143059,7 +151868,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_88setFactorSolverPackage(struct P
__Pyx_RefNannySetupContext("setFactorSolverPackage", 0);
__Pyx_INCREF(__pyx_v_solver);
- /* "PETSc/PC.pyx":346
+ /* "PETSc/PC.pyx":350
*
* def setFactorSolverPackage(self, solver):
* cdef PetscMatSolverPackage cval = NULL # <<<<<<<<<<<<<<
@@ -143068,28 +151877,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_88setFactorSolverPackage(struct P
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":347
+ /* "PETSc/PC.pyx":351
* def setFactorSolverPackage(self, solver):
* cdef PetscMatSolverPackage cval = NULL
* solver = str2bytes(solver, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetMatSolverPackage(self.pc, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_solver, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 347, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_solver, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 351, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_solver, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":348
+ /* "PETSc/PC.pyx":352
* cdef PetscMatSolverPackage cval = NULL
* solver = str2bytes(solver, &cval)
* CHKERR( PCFactorSetMatSolverPackage(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def getFactorSolverPackage(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetMatSolverPackage(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 348, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetMatSolverPackage(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 352, __pyx_L1_error)
- /* "PETSc/PC.pyx":345
+ /* "PETSc/PC.pyx":349
* # --- Factor ---
*
* def setFactorSolverPackage(self, solver): # <<<<<<<<<<<<<<
@@ -143111,7 +151920,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_88setFactorSolverPackage(struct P
return __pyx_r;
}
-/* "PETSc/PC.pyx":350
+/* "PETSc/PC.pyx":354
* CHKERR( PCFactorSetMatSolverPackage(self.pc, cval) )
*
* def getFactorSolverPackage(self): # <<<<<<<<<<<<<<
@@ -143144,7 +151953,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_90getFactorSolverPackage(struct P
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getFactorSolverPackage", 0);
- /* "PETSc/PC.pyx":351
+ /* "PETSc/PC.pyx":355
*
* def getFactorSolverPackage(self):
* cdef PetscMatSolverPackage cval = NULL # <<<<<<<<<<<<<<
@@ -143153,16 +151962,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_90getFactorSolverPackage(struct P
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":352
+ /* "PETSc/PC.pyx":356
* def getFactorSolverPackage(self):
* cdef PetscMatSolverPackage cval = NULL
* CHKERR( PCFactorGetMatSolverPackage(self.pc, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorGetMatSolverPackage(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 352, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorGetMatSolverPackage(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 356, __pyx_L1_error)
- /* "PETSc/PC.pyx":353
+ /* "PETSc/PC.pyx":357
* cdef PetscMatSolverPackage cval = NULL
* CHKERR( PCFactorGetMatSolverPackage(self.pc, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -143170,13 +151979,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_90getFactorSolverPackage(struct P
* def setFactorOrdering(self, ord_type=None, nzdiag=None, reuse=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 353, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 357, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":350
+ /* "PETSc/PC.pyx":354
* CHKERR( PCFactorSetMatSolverPackage(self.pc, cval) )
*
* def getFactorSolverPackage(self): # <<<<<<<<<<<<<<
@@ -143195,7 +152004,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_90getFactorSolverPackage(struct P
return __pyx_r;
}
-/* "PETSc/PC.pyx":355
+/* "PETSc/PC.pyx":359
* return bytes2str(cval)
*
* def setFactorOrdering(self, ord_type=None, nzdiag=None, reuse=None): # <<<<<<<<<<<<<<
@@ -143224,8 +152033,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_93setFactorOrdering(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143236,11 +152048,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_93setFactorOrdering(PyObject *__p
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ord_type);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nzdiag);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_reuse);
@@ -143248,13 +152062,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_93setFactorOrdering(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorOrdering") < 0)) __PYX_ERR(34, 355, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorOrdering") < 0)) __PYX_ERR(34, 359, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143265,7 +152082,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_93setFactorOrdering(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFactorOrdering", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 355, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFactorOrdering", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 359, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFactorOrdering", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -143293,7 +152110,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
__Pyx_RefNannySetupContext("setFactorOrdering", 0);
__Pyx_INCREF(__pyx_v_ord_type);
- /* "PETSc/PC.pyx":356
+ /* "PETSc/PC.pyx":360
*
* def setFactorOrdering(self, ord_type=None, nzdiag=None, reuse=None):
* cdef PetscMatOrderingType cval = NULL # <<<<<<<<<<<<<<
@@ -143302,7 +152119,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":357
+ /* "PETSc/PC.pyx":361
* def setFactorOrdering(self, ord_type=None, nzdiag=None, reuse=None):
* cdef PetscMatOrderingType cval = NULL
* if ord_type is not None: # <<<<<<<<<<<<<<
@@ -143313,28 +152130,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/PC.pyx":358
+ /* "PETSc/PC.pyx":362
* cdef PetscMatOrderingType cval = NULL
* if ord_type is not None:
* ord_type = str2bytes(ord_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetMatOrderingType(self.pc, cval) )
* cdef PetscReal rval = 0
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ord_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 358, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ord_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_ord_type, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/PC.pyx":359
+ /* "PETSc/PC.pyx":363
* if ord_type is not None:
* ord_type = str2bytes(ord_type, &cval)
* CHKERR( PCFactorSetMatOrderingType(self.pc, cval) ) # <<<<<<<<<<<<<<
* cdef PetscReal rval = 0
* if nzdiag is not None:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetMatOrderingType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 359, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetMatOrderingType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 363, __pyx_L1_error)
- /* "PETSc/PC.pyx":357
+ /* "PETSc/PC.pyx":361
* def setFactorOrdering(self, ord_type=None, nzdiag=None, reuse=None):
* cdef PetscMatOrderingType cval = NULL
* if ord_type is not None: # <<<<<<<<<<<<<<
@@ -143343,7 +152160,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
*/
}
- /* "PETSc/PC.pyx":360
+ /* "PETSc/PC.pyx":364
* ord_type = str2bytes(ord_type, &cval)
* CHKERR( PCFactorSetMatOrderingType(self.pc, cval) )
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
@@ -143352,7 +152169,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
*/
__pyx_v_rval = 0.0;
- /* "PETSc/PC.pyx":361
+ /* "PETSc/PC.pyx":365
* CHKERR( PCFactorSetMatOrderingType(self.pc, cval) )
* cdef PetscReal rval = 0
* if nzdiag is not None: # <<<<<<<<<<<<<<
@@ -143363,26 +152180,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/PC.pyx":362
+ /* "PETSc/PC.pyx":366
* cdef PetscReal rval = 0
* if nzdiag is not None:
* rval = asReal(nzdiag) # <<<<<<<<<<<<<<
* CHKERR( PCFactorReorderForNonzeroDiagonal(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_nzdiag); if (unlikely(__pyx_t_5 == -1.0 && PyErr_Occurred())) __PYX_ERR(34, 362, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_nzdiag); if (unlikely(__pyx_t_5 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(34, 366, __pyx_L1_error)
__pyx_v_rval = __pyx_t_5;
- /* "PETSc/PC.pyx":363
+ /* "PETSc/PC.pyx":367
* if nzdiag is not None:
* rval = asReal(nzdiag)
* CHKERR( PCFactorReorderForNonzeroDiagonal(self.pc, rval) ) # <<<<<<<<<<<<<<
* cdef PetscBool bval = PETSC_FALSE
* if reuse is not None:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorReorderForNonzeroDiagonal(__pyx_v_self->pc, __pyx_v_rval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 363, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorReorderForNonzeroDiagonal(__pyx_v_self->pc, __pyx_v_rval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 367, __pyx_L1_error)
- /* "PETSc/PC.pyx":361
+ /* "PETSc/PC.pyx":365
* CHKERR( PCFactorSetMatOrderingType(self.pc, cval) )
* cdef PetscReal rval = 0
* if nzdiag is not None: # <<<<<<<<<<<<<<
@@ -143391,7 +152208,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
*/
}
- /* "PETSc/PC.pyx":364
+ /* "PETSc/PC.pyx":368
* rval = asReal(nzdiag)
* CHKERR( PCFactorReorderForNonzeroDiagonal(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -143400,7 +152217,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
*/
__pyx_v_bval = PETSC_FALSE;
- /* "PETSc/PC.pyx":365
+ /* "PETSc/PC.pyx":369
* CHKERR( PCFactorReorderForNonzeroDiagonal(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE
* if reuse is not None: # <<<<<<<<<<<<<<
@@ -143411,14 +152228,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/PC.pyx":366
+ /* "PETSc/PC.pyx":370
* cdef PetscBool bval = PETSC_FALSE
* if reuse is not None:
* bval = PETSC_TRUE if reuse else PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetReuseOrdering(self.pc, bval) )
*
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_reuse); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(34, 366, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_reuse); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(34, 370, __pyx_L1_error)
if (__pyx_t_2) {
__pyx_t_6 = PETSC_TRUE;
} else {
@@ -143426,16 +152243,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
}
__pyx_v_bval = __pyx_t_6;
- /* "PETSc/PC.pyx":367
+ /* "PETSc/PC.pyx":371
* if reuse is not None:
* bval = PETSC_TRUE if reuse else PETSC_FALSE
* CHKERR( PCFactorSetReuseOrdering(self.pc, bval) ) # <<<<<<<<<<<<<<
*
* def setFactorPivot(self, zeropivot=None, inblocks=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetReuseOrdering(__pyx_v_self->pc, __pyx_v_bval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 367, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetReuseOrdering(__pyx_v_self->pc, __pyx_v_bval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 371, __pyx_L1_error)
- /* "PETSc/PC.pyx":365
+ /* "PETSc/PC.pyx":369
* CHKERR( PCFactorReorderForNonzeroDiagonal(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE
* if reuse is not None: # <<<<<<<<<<<<<<
@@ -143444,7 +152261,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
*/
}
- /* "PETSc/PC.pyx":355
+ /* "PETSc/PC.pyx":359
* return bytes2str(cval)
*
* def setFactorOrdering(self, ord_type=None, nzdiag=None, reuse=None): # <<<<<<<<<<<<<<
@@ -143466,7 +152283,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_92setFactorOrdering(struct PyPets
return __pyx_r;
}
-/* "PETSc/PC.pyx":369
+/* "PETSc/PC.pyx":373
* CHKERR( PCFactorSetReuseOrdering(self.pc, bval) )
*
* def setFactorPivot(self, zeropivot=None, inblocks=None): # <<<<<<<<<<<<<<
@@ -143493,7 +152310,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_95setFactorPivot(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143504,6 +152323,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_95setFactorPivot(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_zeropivot);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inblocks);
@@ -143511,12 +152331,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_95setFactorPivot(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorPivot") < 0)) __PYX_ERR(34, 369, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorPivot") < 0)) __PYX_ERR(34, 373, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143526,7 +152348,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_95setFactorPivot(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFactorPivot", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 369, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFactorPivot", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 373, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFactorPivot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -143551,7 +152373,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
PetscBool __pyx_t_5;
__Pyx_RefNannySetupContext("setFactorPivot", 0);
- /* "PETSc/PC.pyx":370
+ /* "PETSc/PC.pyx":374
*
* def setFactorPivot(self, zeropivot=None, inblocks=None):
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
@@ -143560,7 +152382,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
*/
__pyx_v_rval = 0.0;
- /* "PETSc/PC.pyx":371
+ /* "PETSc/PC.pyx":375
* def setFactorPivot(self, zeropivot=None, inblocks=None):
* cdef PetscReal rval = 0
* if zeropivot is not None: # <<<<<<<<<<<<<<
@@ -143571,26 +152393,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/PC.pyx":372
+ /* "PETSc/PC.pyx":376
* cdef PetscReal rval = 0
* if zeropivot is not None:
* rval = asReal(zeropivot) # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetZeroPivot(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zeropivot); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(34, 372, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zeropivot); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(34, 376, __pyx_L1_error)
__pyx_v_rval = __pyx_t_3;
- /* "PETSc/PC.pyx":373
+ /* "PETSc/PC.pyx":377
* if zeropivot is not None:
* rval = asReal(zeropivot)
* CHKERR( PCFactorSetZeroPivot(self.pc, rval) ) # <<<<<<<<<<<<<<
* cdef PetscBool bval = PETSC_FALSE
* if inblocks is not None:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetZeroPivot(__pyx_v_self->pc, __pyx_v_rval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 373, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetZeroPivot(__pyx_v_self->pc, __pyx_v_rval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 377, __pyx_L1_error)
- /* "PETSc/PC.pyx":371
+ /* "PETSc/PC.pyx":375
* def setFactorPivot(self, zeropivot=None, inblocks=None):
* cdef PetscReal rval = 0
* if zeropivot is not None: # <<<<<<<<<<<<<<
@@ -143599,7 +152421,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
*/
}
- /* "PETSc/PC.pyx":374
+ /* "PETSc/PC.pyx":378
* rval = asReal(zeropivot)
* CHKERR( PCFactorSetZeroPivot(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -143608,7 +152430,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
*/
__pyx_v_bval = PETSC_FALSE;
- /* "PETSc/PC.pyx":375
+ /* "PETSc/PC.pyx":379
* CHKERR( PCFactorSetZeroPivot(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE
* if inblocks is not None: # <<<<<<<<<<<<<<
@@ -143619,14 +152441,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/PC.pyx":376
+ /* "PETSc/PC.pyx":380
* cdef PetscBool bval = PETSC_FALSE
* if inblocks is not None:
* bval = PETSC_TRUE if inblocks else PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetPivotInBlocks(self.pc, bval) )
*
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_inblocks); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(34, 376, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_inblocks); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(34, 380, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_t_5 = PETSC_TRUE;
} else {
@@ -143634,16 +152456,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
}
__pyx_v_bval = __pyx_t_5;
- /* "PETSc/PC.pyx":377
+ /* "PETSc/PC.pyx":381
* if inblocks is not None:
* bval = PETSC_TRUE if inblocks else PETSC_FALSE
* CHKERR( PCFactorSetPivotInBlocks(self.pc, bval) ) # <<<<<<<<<<<<<<
*
* def setFactorShift(self, shift_type=None, amount=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetPivotInBlocks(__pyx_v_self->pc, __pyx_v_bval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 377, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetPivotInBlocks(__pyx_v_self->pc, __pyx_v_bval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 381, __pyx_L1_error)
- /* "PETSc/PC.pyx":375
+ /* "PETSc/PC.pyx":379
* CHKERR( PCFactorSetZeroPivot(self.pc, rval) )
* cdef PetscBool bval = PETSC_FALSE
* if inblocks is not None: # <<<<<<<<<<<<<<
@@ -143652,7 +152474,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
*/
}
- /* "PETSc/PC.pyx":369
+ /* "PETSc/PC.pyx":373
* CHKERR( PCFactorSetReuseOrdering(self.pc, bval) )
*
* def setFactorPivot(self, zeropivot=None, inblocks=None): # <<<<<<<<<<<<<<
@@ -143672,7 +152494,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_94setFactorPivot(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":379
+/* "PETSc/PC.pyx":383
* CHKERR( PCFactorSetPivotInBlocks(self.pc, bval) )
*
* def setFactorShift(self, shift_type=None, amount=None): # <<<<<<<<<<<<<<
@@ -143699,7 +152521,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_97setFactorShift(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143710,6 +152534,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_97setFactorShift(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_shift_type);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_amount);
@@ -143717,12 +152542,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_97setFactorShift(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorShift") < 0)) __PYX_ERR(34, 379, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorShift") < 0)) __PYX_ERR(34, 383, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143732,7 +152559,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_97setFactorShift(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFactorShift", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 379, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFactorShift", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 383, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFactorShift", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -143757,7 +152584,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
PetscReal __pyx_t_5;
__Pyx_RefNannySetupContext("setFactorShift", 0);
- /* "PETSc/PC.pyx":380
+ /* "PETSc/PC.pyx":384
*
* def setFactorShift(self, shift_type=None, amount=None):
* cdef PetscMatFactorShiftType cval = MAT_SHIFT_NONE # <<<<<<<<<<<<<<
@@ -143766,7 +152593,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
*/
__pyx_v_cval = MAT_SHIFT_NONE;
- /* "PETSc/PC.pyx":381
+ /* "PETSc/PC.pyx":385
* def setFactorShift(self, shift_type=None, amount=None):
* cdef PetscMatFactorShiftType cval = MAT_SHIFT_NONE
* if shift_type is not None: # <<<<<<<<<<<<<<
@@ -143777,26 +152604,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/PC.pyx":382
+ /* "PETSc/PC.pyx":386
* cdef PetscMatFactorShiftType cval = MAT_SHIFT_NONE
* if shift_type is not None:
* cval = matfactorshifttype(shift_type) # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetShiftType(self.pc, cval) )
* cdef PetscReal rval = 0
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_matfactorshifttype(__pyx_v_shift_type); if (unlikely(__pyx_t_3 == ((MatFactorShiftType)-1L))) __PYX_ERR(34, 382, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_matfactorshifttype(__pyx_v_shift_type); if (unlikely(__pyx_t_3 == ((MatFactorShiftType)((MatFactorShiftType)-1L)))) __PYX_ERR(34, 386, __pyx_L1_error)
__pyx_v_cval = __pyx_t_3;
- /* "PETSc/PC.pyx":383
+ /* "PETSc/PC.pyx":387
* if shift_type is not None:
* cval = matfactorshifttype(shift_type)
* CHKERR( PCFactorSetShiftType(self.pc, cval) ) # <<<<<<<<<<<<<<
* cdef PetscReal rval = 0
* if amount is not None:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetShiftType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 383, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetShiftType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 387, __pyx_L1_error)
- /* "PETSc/PC.pyx":381
+ /* "PETSc/PC.pyx":385
* def setFactorShift(self, shift_type=None, amount=None):
* cdef PetscMatFactorShiftType cval = MAT_SHIFT_NONE
* if shift_type is not None: # <<<<<<<<<<<<<<
@@ -143805,7 +152632,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
*/
}
- /* "PETSc/PC.pyx":384
+ /* "PETSc/PC.pyx":388
* cval = matfactorshifttype(shift_type)
* CHKERR( PCFactorSetShiftType(self.pc, cval) )
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
@@ -143814,7 +152641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
*/
__pyx_v_rval = 0.0;
- /* "PETSc/PC.pyx":385
+ /* "PETSc/PC.pyx":389
* CHKERR( PCFactorSetShiftType(self.pc, cval) )
* cdef PetscReal rval = 0
* if amount is not None: # <<<<<<<<<<<<<<
@@ -143825,26 +152652,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/PC.pyx":386
+ /* "PETSc/PC.pyx":390
* cdef PetscReal rval = 0
* if amount is not None:
* rval = asReal(amount) # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetShiftAmount(self.pc, rval) )
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_amount); if (unlikely(__pyx_t_5 == -1.0 && PyErr_Occurred())) __PYX_ERR(34, 386, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_amount); if (unlikely(__pyx_t_5 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(34, 390, __pyx_L1_error)
__pyx_v_rval = __pyx_t_5;
- /* "PETSc/PC.pyx":387
+ /* "PETSc/PC.pyx":391
* if amount is not None:
* rval = asReal(amount)
* CHKERR( PCFactorSetShiftAmount(self.pc, rval) ) # <<<<<<<<<<<<<<
*
* def setFactorLevels(self, levels):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetShiftAmount(__pyx_v_self->pc, __pyx_v_rval)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(34, 387, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetShiftAmount(__pyx_v_self->pc, __pyx_v_rval)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(34, 391, __pyx_L1_error)
- /* "PETSc/PC.pyx":385
+ /* "PETSc/PC.pyx":389
* CHKERR( PCFactorSetShiftType(self.pc, cval) )
* cdef PetscReal rval = 0
* if amount is not None: # <<<<<<<<<<<<<<
@@ -143853,7 +152680,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
*/
}
- /* "PETSc/PC.pyx":379
+ /* "PETSc/PC.pyx":383
* CHKERR( PCFactorSetPivotInBlocks(self.pc, bval) )
*
* def setFactorShift(self, shift_type=None, amount=None): # <<<<<<<<<<<<<<
@@ -143873,7 +152700,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_96setFactorShift(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":389
+/* "PETSc/PC.pyx":393
* CHKERR( PCFactorSetShiftAmount(self.pc, rval) )
*
* def setFactorLevels(self, levels): # <<<<<<<<<<<<<<
@@ -143897,6 +152724,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_99setFactorLevels(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -143907,7 +152735,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_99setFactorLevels(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorLevels") < 0)) __PYX_ERR(34, 389, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFactorLevels") < 0)) __PYX_ERR(34, 393, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -143918,7 +152746,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_99setFactorLevels(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFactorLevels", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 389, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFactorLevels", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 393, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFactorLevels", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -143939,26 +152767,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_98setFactorLevels(struct PyPetscP
int __pyx_t_2;
__Pyx_RefNannySetupContext("setFactorLevels", 0);
- /* "PETSc/PC.pyx":390
+ /* "PETSc/PC.pyx":394
*
* def setFactorLevels(self, levels):
* cdef PetscInt ival = asInt(levels) # <<<<<<<<<<<<<<
* CHKERR( PCFactorSetLevels(self.pc, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 390, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 394, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/PC.pyx":391
+ /* "PETSc/PC.pyx":395
* def setFactorLevels(self, levels):
* cdef PetscInt ival = asInt(levels)
* CHKERR( PCFactorSetLevels(self.pc, ival) ) # <<<<<<<<<<<<<<
*
* def getFactorMatrix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetLevels(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 391, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorSetLevels(__pyx_v_self->pc, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 395, __pyx_L1_error)
- /* "PETSc/PC.pyx":389
+ /* "PETSc/PC.pyx":393
* CHKERR( PCFactorSetShiftAmount(self.pc, rval) )
*
* def setFactorLevels(self, levels): # <<<<<<<<<<<<<<
@@ -143978,7 +152806,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_98setFactorLevels(struct PyPetscP
return __pyx_r;
}
-/* "PETSc/PC.pyx":393
+/* "PETSc/PC.pyx":397
* CHKERR( PCFactorSetLevels(self.pc, ival) )
*
* def getFactorMatrix(self): # <<<<<<<<<<<<<<
@@ -144011,28 +152839,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_100getFactorMatrix(struct PyPetsc
int __pyx_t_2;
__Pyx_RefNannySetupContext("getFactorMatrix", 0);
- /* "PETSc/PC.pyx":394
+ /* "PETSc/PC.pyx":398
*
* def getFactorMatrix(self):
* cdef Mat mat = Mat() # <<<<<<<<<<<<<<
* CHKERR( PCFactorGetMatrix(self.pc, &mat.mat) )
* PetscINCREF(mat.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 394, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 398, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":395
+ /* "PETSc/PC.pyx":399
* def getFactorMatrix(self):
* cdef Mat mat = Mat()
* CHKERR( PCFactorGetMatrix(self.pc, &mat.mat) ) # <<<<<<<<<<<<<<
* PetscINCREF(mat.obj)
* return mat
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorGetMatrix(__pyx_v_self->pc, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 395, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFactorGetMatrix(__pyx_v_self->pc, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 399, __pyx_L1_error)
- /* "PETSc/PC.pyx":396
+ /* "PETSc/PC.pyx":400
* cdef Mat mat = Mat()
* CHKERR( PCFactorGetMatrix(self.pc, &mat.mat) )
* PetscINCREF(mat.obj) # <<<<<<<<<<<<<<
@@ -144041,7 +152869,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_100getFactorMatrix(struct PyPetsc
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_mat->__pyx_base.obj);
- /* "PETSc/PC.pyx":397
+ /* "PETSc/PC.pyx":401
* CHKERR( PCFactorGetMatrix(self.pc, &mat.mat) )
* PetscINCREF(mat.obj)
* return mat # <<<<<<<<<<<<<<
@@ -144053,7 +152881,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_100getFactorMatrix(struct PyPetsc
__pyx_r = ((PyObject *)__pyx_v_mat);
goto __pyx_L0;
- /* "PETSc/PC.pyx":393
+ /* "PETSc/PC.pyx":397
* CHKERR( PCFactorSetLevels(self.pc, ival) )
*
* def getFactorMatrix(self): # <<<<<<<<<<<<<<
@@ -144073,7 +152901,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_100getFactorMatrix(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/PC.pyx":401
+/* "PETSc/PC.pyx":405
* # --- FieldSplit ---
*
* def setFieldSplitType(self, ctype): # <<<<<<<<<<<<<<
@@ -144097,6 +152925,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_103setFieldSplitType(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -144107,7 +152936,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_103setFieldSplitType(PyObject *__
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFieldSplitType") < 0)) __PYX_ERR(34, 401, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFieldSplitType") < 0)) __PYX_ERR(34, 405, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -144118,7 +152947,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_103setFieldSplitType(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFieldSplitType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 401, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFieldSplitType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 405, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFieldSplitType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -144139,26 +152968,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_102setFieldSplitType(struct PyPet
int __pyx_t_2;
__Pyx_RefNannySetupContext("setFieldSplitType", 0);
- /* "PETSc/PC.pyx":402
+ /* "PETSc/PC.pyx":406
*
* def setFieldSplitType(self, ctype):
* cdef PetscPCCompositeType cval = ctype # <<<<<<<<<<<<<<
* CHKERR( PCFieldSplitSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = ((PCCompositeType)__Pyx_PyInt_As_PCCompositeType(__pyx_v_ctype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 402, __pyx_L1_error)
+ __pyx_t_1 = ((PCCompositeType)__Pyx_PyInt_As_PCCompositeType(__pyx_v_ctype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 406, __pyx_L1_error)
__pyx_v_cval = __pyx_t_1;
- /* "PETSc/PC.pyx":403
+ /* "PETSc/PC.pyx":407
* def setFieldSplitType(self, ctype):
* cdef PetscPCCompositeType cval = ctype
* CHKERR( PCFieldSplitSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def setFieldSplitIS(self, *fields):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 403, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 407, __pyx_L1_error)
- /* "PETSc/PC.pyx":401
+ /* "PETSc/PC.pyx":405
* # --- FieldSplit ---
*
* def setFieldSplitType(self, ctype): # <<<<<<<<<<<<<<
@@ -144178,7 +153007,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_102setFieldSplitType(struct PyPet
return __pyx_r;
}
-/* "PETSc/PC.pyx":405
+/* "PETSc/PC.pyx":409
* CHKERR( PCFieldSplitSetType(self.pc, cval) )
*
* def setFieldSplitIS(self, *fields): # <<<<<<<<<<<<<<
@@ -144221,7 +153050,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
int __pyx_t_8;
__Pyx_RefNannySetupContext("setFieldSplitIS", 0);
- /* "PETSc/PC.pyx":406
+ /* "PETSc/PC.pyx":410
*
* def setFieldSplitIS(self, *fields):
* cdef object name = None # <<<<<<<<<<<<<<
@@ -144231,7 +153060,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
__Pyx_INCREF(Py_None);
__pyx_v_name = Py_None;
- /* "PETSc/PC.pyx":407
+ /* "PETSc/PC.pyx":411
* def setFieldSplitIS(self, *fields):
* cdef object name = None
* cdef IS field = None # <<<<<<<<<<<<<<
@@ -144241,7 +153070,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
__Pyx_INCREF(Py_None);
__pyx_v_field = ((struct PyPetscISObject *)Py_None);
- /* "PETSc/PC.pyx":408
+ /* "PETSc/PC.pyx":412
* cdef object name = None
* cdef IS field = None
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -144250,7 +153079,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
*/
__pyx_v_cname = NULL;
- /* "PETSc/PC.pyx":409
+ /* "PETSc/PC.pyx":413
* cdef IS field = None
* cdef const_char *cname = NULL
* for name, field in fields: # <<<<<<<<<<<<<<
@@ -144260,15 +153089,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
__pyx_t_1 = __pyx_v_fields; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
for (;;) {
if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely(0 < 0)) __PYX_ERR(34, 409, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely(0 < 0)) __PYX_ERR(34, 413, __pyx_L1_error)
#else
- __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 409, __pyx_L1_error)
+ __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 413, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
#endif
if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
PyObject* sequence = __pyx_t_3;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -144276,9 +153105,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(34, 409, __pyx_L1_error)
+ __PYX_ERR(34, 413, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -144289,15 +153118,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
- __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 409, __pyx_L1_error)
+ __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 413, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 409, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 413, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(34, 409, __pyx_L1_error)
+ __pyx_t_6 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(34, 413, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
@@ -144305,7 +153134,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(34, 409, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) __PYX_ERR(34, 413, __pyx_L1_error)
__pyx_t_7 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L6_unpacking_done;
@@ -144313,37 +153142,37 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_7 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(34, 409, __pyx_L1_error)
+ __PYX_ERR(34, 413, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
- if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_8petsc4py_5PETSc_IS))))) __PYX_ERR(34, 409, __pyx_L1_error)
+ if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_8petsc4py_5PETSc_IS))))) __PYX_ERR(34, 413, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_4);
__pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_field, ((struct PyPetscISObject *)__pyx_t_5));
__pyx_t_5 = 0;
- /* "PETSc/PC.pyx":410
+ /* "PETSc/PC.pyx":414
* cdef const_char *cname = NULL
* for name, field in fields:
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( PCFieldSplitSetIS(self.pc, cname, field.iset) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 410, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_3)) __PYX_ERR(34, 414, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/PC.pyx":411
+ /* "PETSc/PC.pyx":415
* for name, field in fields:
* name = str2bytes(name, &cname)
* CHKERR( PCFieldSplitSetIS(self.pc, cname, field.iset) ) # <<<<<<<<<<<<<<
*
* def setFieldSplitFields(self, bsize, *fields):
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetIS(__pyx_v_self->pc, __pyx_v_cname, __pyx_v_field->iset)); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(34, 411, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetIS(__pyx_v_self->pc, __pyx_v_cname, __pyx_v_field->iset)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(34, 415, __pyx_L1_error)
- /* "PETSc/PC.pyx":409
+ /* "PETSc/PC.pyx":413
* cdef IS field = None
* cdef const_char *cname = NULL
* for name, field in fields: # <<<<<<<<<<<<<<
@@ -144353,7 +153182,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
}
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PC.pyx":405
+ /* "PETSc/PC.pyx":409
* CHKERR( PCFieldSplitSetType(self.pc, cval) )
*
* def setFieldSplitIS(self, *fields): # <<<<<<<<<<<<<<
@@ -144380,7 +153209,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_104setFieldSplitIS(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/PC.pyx":413
+/* "PETSc/PC.pyx":417
* CHKERR( PCFieldSplitSetIS(self.pc, cname, field.iset) )
*
* def setFieldSplitFields(self, bsize, *fields): # <<<<<<<<<<<<<<
@@ -144416,6 +153245,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_107setFieldSplitFields(PyObject *
switch (pos_args) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
kw_args = PyDict_Size(__pyx_kwds);
@@ -144426,7 +153256,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_107setFieldSplitFields(PyObject *
}
if (unlikely(kw_args > 0)) {
const Py_ssize_t used_pos_args = (pos_args < 1) ? pos_args : 1;
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, used_pos_args, "setFieldSplitFields") < 0)) __PYX_ERR(34, 413, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, used_pos_args, "setFieldSplitFields") < 0)) __PYX_ERR(34, 417, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) < 1) {
goto __pyx_L5_argtuple_error;
@@ -144437,7 +153267,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_107setFieldSplitFields(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFieldSplitFields", 0, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 413, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFieldSplitFields", 0, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 417, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_DECREF(__pyx_v_fields); __pyx_v_fields = 0;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFieldSplitFields", __pyx_clineno, __pyx_lineno, __pyx_filename);
@@ -144472,26 +153302,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
PyObject *(*__pyx_t_9)(PyObject *);
__Pyx_RefNannySetupContext("setFieldSplitFields", 0);
- /* "PETSc/PC.pyx":414
+ /* "PETSc/PC.pyx":418
*
* def setFieldSplitFields(self, bsize, *fields):
* cdef PetscInt bs = asInt(bsize) # <<<<<<<<<<<<<<
* CHKERR( PCFieldSplitSetBlockSize(self.pc, bs) )
* cdef object name = None
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 414, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_bsize); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 418, __pyx_L1_error)
__pyx_v_bs = __pyx_t_1;
- /* "PETSc/PC.pyx":415
+ /* "PETSc/PC.pyx":419
* def setFieldSplitFields(self, bsize, *fields):
* cdef PetscInt bs = asInt(bsize)
* CHKERR( PCFieldSplitSetBlockSize(self.pc, bs) ) # <<<<<<<<<<<<<<
* cdef object name = None
* cdef object field = None
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetBlockSize(__pyx_v_self->pc, __pyx_v_bs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 415, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetBlockSize(__pyx_v_self->pc, __pyx_v_bs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 419, __pyx_L1_error)
- /* "PETSc/PC.pyx":416
+ /* "PETSc/PC.pyx":420
* cdef PetscInt bs = asInt(bsize)
* CHKERR( PCFieldSplitSetBlockSize(self.pc, bs) )
* cdef object name = None # <<<<<<<<<<<<<<
@@ -144501,7 +153331,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__Pyx_INCREF(Py_None);
__pyx_v_name = Py_None;
- /* "PETSc/PC.pyx":417
+ /* "PETSc/PC.pyx":421
* CHKERR( PCFieldSplitSetBlockSize(self.pc, bs) )
* cdef object name = None
* cdef object field = None # <<<<<<<<<<<<<<
@@ -144511,7 +153341,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__Pyx_INCREF(Py_None);
__pyx_v_field = Py_None;
- /* "PETSc/PC.pyx":418
+ /* "PETSc/PC.pyx":422
* cdef object name = None
* cdef object field = None
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -144520,7 +153350,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
*/
__pyx_v_cname = NULL;
- /* "PETSc/PC.pyx":419
+ /* "PETSc/PC.pyx":423
* cdef object field = None
* cdef const_char *cname = NULL
* cdef PetscInt nfields = 0, *ifields = NULL # <<<<<<<<<<<<<<
@@ -144530,7 +153360,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__pyx_v_nfields = 0;
__pyx_v_ifields = NULL;
- /* "PETSc/PC.pyx":420
+ /* "PETSc/PC.pyx":424
* cdef const_char *cname = NULL
* cdef PetscInt nfields = 0, *ifields = NULL
* for name, field in fields: # <<<<<<<<<<<<<<
@@ -144540,15 +153370,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__pyx_t_3 = __pyx_v_fields; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
for (;;) {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(34, 420, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(34, 424, __pyx_L1_error)
#else
- __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 420, __pyx_L1_error)
+ __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) {
PyObject* sequence = __pyx_t_5;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -144556,9 +153386,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
- __PYX_ERR(34, 420, __pyx_L1_error)
+ __PYX_ERR(34, 424, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
@@ -144569,15 +153399,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(__pyx_t_7);
#else
- __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(34, 420, __pyx_L1_error)
+ __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(34, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(34, 420, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(34, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
Py_ssize_t index = -1;
- __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(34, 420, __pyx_L1_error)
+ __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(34, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext;
@@ -144585,7 +153415,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__Pyx_GOTREF(__pyx_t_6);
index = 1; __pyx_t_7 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L5_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
- if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) __PYX_ERR(34, 420, __pyx_L1_error)
+ if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) __PYX_ERR(34, 424, __pyx_L1_error)
__pyx_t_9 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L6_unpacking_done;
@@ -144593,7 +153423,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_9 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
- __PYX_ERR(34, 420, __pyx_L1_error)
+ __PYX_ERR(34, 424, __pyx_L1_error)
__pyx_L6_unpacking_done:;
}
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_6);
@@ -144601,40 +153431,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
__Pyx_DECREF_SET(__pyx_v_field, __pyx_t_7);
__pyx_t_7 = 0;
- /* "PETSc/PC.pyx":421
+ /* "PETSc/PC.pyx":425
* cdef PetscInt nfields = 0, *ifields = NULL
* for name, field in fields:
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* field = iarray_i(field, &nfields, &ifields)
* CHKERR( PCFieldSplitSetFields(self.pc, cname,
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 421, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 425, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/PC.pyx":422
+ /* "PETSc/PC.pyx":426
* for name, field in fields:
* name = str2bytes(name, &cname)
* field = iarray_i(field, &nfields, &ifields) # <<<<<<<<<<<<<<
* CHKERR( PCFieldSplitSetFields(self.pc, cname,
* nfields, ifields, ifields) )
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_field, (&__pyx_v_nfields), (&__pyx_v_ifields))); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 422, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_field, (&__pyx_v_nfields), (&__pyx_v_ifields))); if (unlikely(!__pyx_t_5)) __PYX_ERR(34, 426, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_field, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/PC.pyx":423
+ /* "PETSc/PC.pyx":427
* name = str2bytes(name, &cname)
* field = iarray_i(field, &nfields, &ifields)
* CHKERR( PCFieldSplitSetFields(self.pc, cname, # <<<<<<<<<<<<<<
* nfields, ifields, ifields) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetFields(__pyx_v_self->pc, __pyx_v_cname, __pyx_v_nfields, __pyx_v_ifields, __pyx_v_ifields)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 423, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetFields(__pyx_v_self->pc, __pyx_v_cname, __pyx_v_nfields, __pyx_v_ifields, __pyx_v_ifields)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 427, __pyx_L1_error)
- /* "PETSc/PC.pyx":420
+ /* "PETSc/PC.pyx":424
* cdef const_char *cname = NULL
* cdef PetscInt nfields = 0, *ifields = NULL
* for name, field in fields: # <<<<<<<<<<<<<<
@@ -144644,7 +153474,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
}
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/PC.pyx":413
+ /* "PETSc/PC.pyx":417
* CHKERR( PCFieldSplitSetIS(self.pc, cname, field.iset) )
*
* def setFieldSplitFields(self, bsize, *fields): # <<<<<<<<<<<<<<
@@ -144671,7 +153501,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_106setFieldSplitFields(struct PyP
return __pyx_r;
}
-/* "PETSc/PC.pyx":426
+/* "PETSc/PC.pyx":430
* nfields, ifields, ifields) )
*
* def getFieldSplitSubKSP(self): # <<<<<<<<<<<<<<
@@ -144718,7 +153548,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
int __pyx_t_13;
__Pyx_RefNannySetupContext("getFieldSplitSubKSP", 0);
- /* "PETSc/PC.pyx":427
+ /* "PETSc/PC.pyx":431
*
* def getFieldSplitSubKSP(self):
* cdef PetscInt i = 0, n = 0 # <<<<<<<<<<<<<<
@@ -144728,7 +153558,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
__pyx_v_i = 0;
__pyx_v_n = 0;
- /* "PETSc/PC.pyx":428
+ /* "PETSc/PC.pyx":432
* def getFieldSplitSubKSP(self):
* cdef PetscInt i = 0, n = 0
* cdef PetscKSP *p = NULL # <<<<<<<<<<<<<<
@@ -144737,7 +153567,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
*/
__pyx_v_p = NULL;
- /* "PETSc/PC.pyx":429
+ /* "PETSc/PC.pyx":433
* cdef PetscInt i = 0, n = 0
* cdef PetscKSP *p = NULL
* cdef object subksp = None # <<<<<<<<<<<<<<
@@ -144747,7 +153577,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
__Pyx_INCREF(Py_None);
__pyx_v_subksp = Py_None;
- /* "PETSc/PC.pyx":430
+ /* "PETSc/PC.pyx":434
* cdef PetscKSP *p = NULL
* cdef object subksp = None
* try: # <<<<<<<<<<<<<<
@@ -144756,36 +153586,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
*/
/*try:*/ {
- /* "PETSc/PC.pyx":431
+ /* "PETSc/PC.pyx":435
* cdef object subksp = None
* try:
* CHKERR( PCFieldSplitGetSubKSP(self.pc, &n, &p) ) # <<<<<<<<<<<<<<
* subksp = [ref_KSP(p[i]) for i from 0 <= i <n]
* finally:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitGetSubKSP(__pyx_v_self->pc, (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 431, __pyx_L4_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitGetSubKSP(__pyx_v_self->pc, (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 435, __pyx_L4_error)
- /* "PETSc/PC.pyx":432
+ /* "PETSc/PC.pyx":436
* try:
* CHKERR( PCFieldSplitGetSubKSP(self.pc, &n, &p) )
* subksp = [ref_KSP(p[i]) for i from 0 <= i <n] # <<<<<<<<<<<<<<
* finally:
* CHKERR( PetscFree(p) )
*/
- __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 432, __pyx_L4_error)
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 436, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP((__pyx_v_p[__pyx_v_i]))); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 432, __pyx_L4_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_KSP((__pyx_v_p[__pyx_v_i]))); if (unlikely(!__pyx_t_4)) __PYX_ERR(34, 436, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_4);
- if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_4))) __PYX_ERR(34, 432, __pyx_L4_error)
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_4))) __PYX_ERR(34, 436, __pyx_L4_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF_SET(__pyx_v_subksp, __pyx_t_2);
__pyx_t_2 = 0;
}
- /* "PETSc/PC.pyx":434
+ /* "PETSc/PC.pyx":438
* subksp = [ref_KSP(p[i]) for i from 0 <= i <n]
* finally:
* CHKERR( PetscFree(p) ) # <<<<<<<<<<<<<<
@@ -144794,7 +153624,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_p)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 434, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_p)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 438, __pyx_L1_error)
goto __pyx_L5;
}
/*exception exit:*/{
@@ -144814,9 +153644,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
__Pyx_XGOTREF(__pyx_t_12);
__pyx_t_1 = __pyx_lineno; __pyx_t_5 = __pyx_clineno; __pyx_t_6 = __pyx_filename;
{
- __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_p)); if (unlikely(__pyx_t_13 == -1)) __PYX_ERR(34, 434, __pyx_L9_error)
+ __pyx_t_13 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_p)); if (unlikely(__pyx_t_13 == ((int)-1))) __PYX_ERR(34, 438, __pyx_L9_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
@@ -144831,7 +153660,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
__pyx_lineno = __pyx_t_1; __pyx_clineno = __pyx_t_5; __pyx_filename = __pyx_t_6;
goto __pyx_L1_error;
__pyx_L9_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
@@ -144847,7 +153675,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
__pyx_L5:;
}
- /* "PETSc/PC.pyx":435
+ /* "PETSc/PC.pyx":439
* finally:
* CHKERR( PetscFree(p) )
* return subksp # <<<<<<<<<<<<<<
@@ -144859,7 +153687,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
__pyx_r = __pyx_v_subksp;
goto __pyx_L0;
- /* "PETSc/PC.pyx":426
+ /* "PETSc/PC.pyx":430
* nfields, ifields, ifields) )
*
* def getFieldSplitSubKSP(self): # <<<<<<<<<<<<<<
@@ -144880,7 +153708,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_108getFieldSplitSubKSP(struct PyP
return __pyx_r;
}
-/* "PETSc/PC.pyx":437
+/* "PETSc/PC.pyx":441
* return subksp
*
* def setFieldSplitSchurFactType(self, ctype): # <<<<<<<<<<<<<<
@@ -144904,6 +153732,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_111setFieldSplitSchurFactType(PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -144914,7 +153743,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_111setFieldSplitSchurFactType(PyO
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFieldSplitSchurFactType") < 0)) __PYX_ERR(34, 437, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFieldSplitSchurFactType") < 0)) __PYX_ERR(34, 441, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -144925,7 +153754,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_111setFieldSplitSchurFactType(PyO
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFieldSplitSchurFactType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 437, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFieldSplitSchurFactType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 441, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFieldSplitSchurFactType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -144946,26 +153775,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_110setFieldSplitSchurFactType(str
int __pyx_t_2;
__Pyx_RefNannySetupContext("setFieldSplitSchurFactType", 0);
- /* "PETSc/PC.pyx":438
+ /* "PETSc/PC.pyx":442
*
* def setFieldSplitSchurFactType(self, ctype):
* cdef PetscPCFieldSplitSchurFactType cval = ctype # <<<<<<<<<<<<<<
* CHKERR( PCFieldSplitSetSchurFactType(self.pc, cval) )
*
*/
- __pyx_t_1 = ((PCFieldSplitSchurFactType)__Pyx_PyInt_As_PCFieldSplitSchurFactType(__pyx_v_ctype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 438, __pyx_L1_error)
+ __pyx_t_1 = ((PCFieldSplitSchurFactType)__Pyx_PyInt_As_PCFieldSplitSchurFactType(__pyx_v_ctype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 442, __pyx_L1_error)
__pyx_v_cval = __pyx_t_1;
- /* "PETSc/PC.pyx":439
+ /* "PETSc/PC.pyx":443
* def setFieldSplitSchurFactType(self, ctype):
* cdef PetscPCFieldSplitSchurFactType cval = ctype
* CHKERR( PCFieldSplitSetSchurFactType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def setFieldSplitSchurPreType(self, ptype, Mat pre=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetSchurFactType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 439, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetSchurFactType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 443, __pyx_L1_error)
- /* "PETSc/PC.pyx":437
+ /* "PETSc/PC.pyx":441
* return subksp
*
* def setFieldSplitSchurFactType(self, ctype): # <<<<<<<<<<<<<<
@@ -144985,7 +153814,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_110setFieldSplitSchurFactType(str
return __pyx_r;
}
-/* "PETSc/PC.pyx":441
+/* "PETSc/PC.pyx":445
* CHKERR( PCFieldSplitSetSchurFactType(self.pc, cval) )
*
* def setFieldSplitSchurPreType(self, ptype, Mat pre=None): # <<<<<<<<<<<<<<
@@ -145011,7 +153840,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_113setFieldSplitSchurPreType(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -145020,6 +153851,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_113setFieldSplitSchurPreType(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ptype)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pre);
@@ -145027,11 +153859,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_113setFieldSplitSchurPreType(PyOb
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFieldSplitSchurPreType") < 0)) __PYX_ERR(34, 441, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFieldSplitSchurPreType") < 0)) __PYX_ERR(34, 445, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -145042,13 +153875,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_113setFieldSplitSchurPreType(PyOb
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setFieldSplitSchurPreType", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 441, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setFieldSplitSchurPreType", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 445, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setFieldSplitSchurPreType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pre), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "pre", 0))) __PYX_ERR(34, 441, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pre), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "pre", 0))) __PYX_ERR(34, 445, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_112setFieldSplitSchurPreType(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_ptype, __pyx_v_pre);
/* function exit code */
@@ -145072,17 +153905,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_112setFieldSplitSchurPreType(stru
int __pyx_t_5;
__Pyx_RefNannySetupContext("setFieldSplitSchurPreType", 0);
- /* "PETSc/PC.pyx":442
+ /* "PETSc/PC.pyx":446
*
* def setFieldSplitSchurPreType(self, ptype, Mat pre=None):
* cdef PetscPCFieldSplitSchurPreType pval = ptype # <<<<<<<<<<<<<<
* cdef PetscMat pmat = NULL
* if pre is not None: pmat = pre.mat
*/
- __pyx_t_1 = ((PCFieldSplitSchurPreType)__Pyx_PyInt_As_PCFieldSplitSchurPreType(__pyx_v_ptype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 442, __pyx_L1_error)
+ __pyx_t_1 = ((PCFieldSplitSchurPreType)__Pyx_PyInt_As_PCFieldSplitSchurPreType(__pyx_v_ptype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 446, __pyx_L1_error)
__pyx_v_pval = __pyx_t_1;
- /* "PETSc/PC.pyx":443
+ /* "PETSc/PC.pyx":447
* def setFieldSplitSchurPreType(self, ptype, Mat pre=None):
* cdef PetscPCFieldSplitSchurPreType pval = ptype
* cdef PetscMat pmat = NULL # <<<<<<<<<<<<<<
@@ -145091,7 +153924,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_112setFieldSplitSchurPreType(stru
*/
__pyx_v_pmat = NULL;
- /* "PETSc/PC.pyx":444
+ /* "PETSc/PC.pyx":448
* cdef PetscPCFieldSplitSchurPreType pval = ptype
* cdef PetscMat pmat = NULL
* if pre is not None: pmat = pre.mat # <<<<<<<<<<<<<<
@@ -145105,16 +153938,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_112setFieldSplitSchurPreType(stru
__pyx_v_pmat = __pyx_t_4;
}
- /* "PETSc/PC.pyx":445
+ /* "PETSc/PC.pyx":449
* cdef PetscMat pmat = NULL
* if pre is not None: pmat = pre.mat
* CHKERR( PCFieldSplitSetSchurPre(self.pc, pval, pmat) ) # <<<<<<<<<<<<<<
*
* def setReusePreconditioner(self, flag):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetSchurPre(__pyx_v_self->pc, __pyx_v_pval, __pyx_v_pmat)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(34, 445, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCFieldSplitSetSchurPre(__pyx_v_self->pc, __pyx_v_pval, __pyx_v_pmat)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(34, 449, __pyx_L1_error)
- /* "PETSc/PC.pyx":441
+ /* "PETSc/PC.pyx":445
* CHKERR( PCFieldSplitSetSchurFactType(self.pc, cval) )
*
* def setFieldSplitSchurPreType(self, ptype, Mat pre=None): # <<<<<<<<<<<<<<
@@ -145134,7 +153967,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_112setFieldSplitSchurPreType(stru
return __pyx_r;
}
-/* "PETSc/PC.pyx":447
+/* "PETSc/PC.pyx":451
* CHKERR( PCFieldSplitSetSchurPre(self.pc, pval, pmat) )
*
* def setReusePreconditioner(self, flag): # <<<<<<<<<<<<<<
@@ -145158,6 +153991,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_115setReusePreconditioner(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -145168,7 +154002,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_115setReusePreconditioner(PyObjec
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setReusePreconditioner") < 0)) __PYX_ERR(34, 447, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setReusePreconditioner") < 0)) __PYX_ERR(34, 451, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -145179,7 +154013,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_115setReusePreconditioner(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setReusePreconditioner", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 447, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setReusePreconditioner", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 451, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setReusePreconditioner", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -145200,7 +154034,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_114setReusePreconditioner(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("setReusePreconditioner", 0);
- /* "PETSc/PC.pyx":448
+ /* "PETSc/PC.pyx":452
*
* def setReusePreconditioner(self, flag):
* cdef PetscBool cflag = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -145209,17 +154043,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_114setReusePreconditioner(struct
*/
__pyx_v_cflag = PETSC_FALSE;
- /* "PETSc/PC.pyx":449
+ /* "PETSc/PC.pyx":453
* def setReusePreconditioner(self, flag):
* cdef PetscBool cflag = PETSC_FALSE
* if flag: # <<<<<<<<<<<<<<
* cflag = PETSC_TRUE
* CHKERR( PCSetReusePreconditioner(self.pc, cflag) )
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(34, 449, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_flag); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(34, 453, __pyx_L1_error)
if (__pyx_t_1) {
- /* "PETSc/PC.pyx":450
+ /* "PETSc/PC.pyx":454
* cdef PetscBool cflag = PETSC_FALSE
* if flag:
* cflag = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -145228,7 +154062,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_114setReusePreconditioner(struct
*/
__pyx_v_cflag = PETSC_TRUE;
- /* "PETSc/PC.pyx":449
+ /* "PETSc/PC.pyx":453
* def setReusePreconditioner(self, flag):
* cdef PetscBool cflag = PETSC_FALSE
* if flag: # <<<<<<<<<<<<<<
@@ -145237,16 +154071,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_114setReusePreconditioner(struct
*/
}
- /* "PETSc/PC.pyx":451
+ /* "PETSc/PC.pyx":455
* if flag:
* cflag = PETSC_TRUE
* CHKERR( PCSetReusePreconditioner(self.pc, cflag) ) # <<<<<<<<<<<<<<
*
* # --- COMPOSITE ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetReusePreconditioner(__pyx_v_self->pc, __pyx_v_cflag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 451, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCSetReusePreconditioner(__pyx_v_self->pc, __pyx_v_cflag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 455, __pyx_L1_error)
- /* "PETSc/PC.pyx":447
+ /* "PETSc/PC.pyx":451
* CHKERR( PCFieldSplitSetSchurPre(self.pc, pval, pmat) )
*
* def setReusePreconditioner(self, flag): # <<<<<<<<<<<<<<
@@ -145266,7 +154100,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_114setReusePreconditioner(struct
return __pyx_r;
}
-/* "PETSc/PC.pyx":455
+/* "PETSc/PC.pyx":459
* # --- COMPOSITE ---
*
* def setCompositeType(self, ctype): # <<<<<<<<<<<<<<
@@ -145290,6 +154124,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_117setCompositeType(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -145300,7 +154135,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_117setCompositeType(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCompositeType") < 0)) __PYX_ERR(34, 455, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCompositeType") < 0)) __PYX_ERR(34, 459, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -145311,7 +154146,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_117setCompositeType(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setCompositeType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 455, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCompositeType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 459, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setCompositeType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -145332,26 +154167,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_116setCompositeType(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("setCompositeType", 0);
- /* "PETSc/PC.pyx":456
+ /* "PETSc/PC.pyx":460
*
* def setCompositeType(self, ctype):
* cdef PetscPCCompositeType cval = ctype # <<<<<<<<<<<<<<
* CHKERR( PCCompositeSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = ((PCCompositeType)__Pyx_PyInt_As_PCCompositeType(__pyx_v_ctype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 456, __pyx_L1_error)
+ __pyx_t_1 = ((PCCompositeType)__Pyx_PyInt_As_PCCompositeType(__pyx_v_ctype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 460, __pyx_L1_error)
__pyx_v_cval = __pyx_t_1;
- /* "PETSc/PC.pyx":457
+ /* "PETSc/PC.pyx":461
* def setCompositeType(self, ctype):
* cdef PetscPCCompositeType cval = ctype
* CHKERR( PCCompositeSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def getCompositePC(self, n):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCompositeSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 457, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCompositeSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 461, __pyx_L1_error)
- /* "PETSc/PC.pyx":455
+ /* "PETSc/PC.pyx":459
* # --- COMPOSITE ---
*
* def setCompositeType(self, ctype): # <<<<<<<<<<<<<<
@@ -145371,7 +154206,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_116setCompositeType(struct PyPets
return __pyx_r;
}
-/* "PETSc/PC.pyx":459
+/* "PETSc/PC.pyx":463
* CHKERR( PCCompositeSetType(self.pc, cval) )
*
* def getCompositePC(self, n): # <<<<<<<<<<<<<<
@@ -145395,6 +154230,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_119getCompositePC(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -145405,7 +154241,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_119getCompositePC(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getCompositePC") < 0)) __PYX_ERR(34, 459, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getCompositePC") < 0)) __PYX_ERR(34, 463, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -145416,7 +154252,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_119getCompositePC(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getCompositePC", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 459, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getCompositePC", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 463, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.getCompositePC", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -145439,42 +154275,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_118getCompositePC(struct PyPetscP
int __pyx_t_3;
__Pyx_RefNannySetupContext("getCompositePC", 0);
- /* "PETSc/PC.pyx":460
+ /* "PETSc/PC.pyx":464
*
* def getCompositePC(self, n):
* cdef PC pc = PC() # <<<<<<<<<<<<<<
* cdef cn = asInt(n)
* CHKERR( PCCompositeGetPC(self.pc, cn, &pc.pc) )
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_PC), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 460, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_PC), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 464, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_pc = ((struct PyPetscPCObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":461
+ /* "PETSc/PC.pyx":465
* def getCompositePC(self, n):
* cdef PC pc = PC()
* cdef cn = asInt(n) # <<<<<<<<<<<<<<
* CHKERR( PCCompositeGetPC(self.pc, cn, &pc.pc) )
* PetscINCREF(pc.obj)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(34, 461, __pyx_L1_error)
- __pyx_t_1 = __Pyx_PyInt_From_PetscInt(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 461, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 465, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_PetscInt(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 465, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_cn = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":462
+ /* "PETSc/PC.pyx":466
* cdef PC pc = PC()
* cdef cn = asInt(n)
* CHKERR( PCCompositeGetPC(self.pc, cn, &pc.pc) ) # <<<<<<<<<<<<<<
* PetscINCREF(pc.obj)
* return pc
*/
- __pyx_t_2 = __Pyx_PyInt_As_PetscInt(__pyx_v_cn); if (unlikely((__pyx_t_2 == (PetscInt)-1) && PyErr_Occurred())) __PYX_ERR(34, 462, __pyx_L1_error)
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCompositeGetPC(__pyx_v_self->pc, __pyx_t_2, (&__pyx_v_pc->pc))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(34, 462, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_As_PetscInt(__pyx_v_cn); if (unlikely((__pyx_t_2 == ((PetscInt)-1)) && PyErr_Occurred())) __PYX_ERR(34, 466, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCompositeGetPC(__pyx_v_self->pc, __pyx_t_2, (&__pyx_v_pc->pc))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 466, __pyx_L1_error)
- /* "PETSc/PC.pyx":463
+ /* "PETSc/PC.pyx":467
* cdef cn = asInt(n)
* CHKERR( PCCompositeGetPC(self.pc, cn, &pc.pc) )
* PetscINCREF(pc.obj) # <<<<<<<<<<<<<<
@@ -145483,7 +154319,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_118getCompositePC(struct PyPetscP
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_pc->__pyx_base.obj);
- /* "PETSc/PC.pyx":464
+ /* "PETSc/PC.pyx":468
* CHKERR( PCCompositeGetPC(self.pc, cn, &pc.pc) )
* PetscINCREF(pc.obj)
* return pc # <<<<<<<<<<<<<<
@@ -145495,7 +154331,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_118getCompositePC(struct PyPetscP
__pyx_r = ((PyObject *)__pyx_v_pc);
goto __pyx_L0;
- /* "PETSc/PC.pyx":459
+ /* "PETSc/PC.pyx":463
* CHKERR( PCCompositeSetType(self.pc, cval) )
*
* def getCompositePC(self, n): # <<<<<<<<<<<<<<
@@ -145516,7 +154352,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_118getCompositePC(struct PyPetscP
return __pyx_r;
}
-/* "PETSc/PC.pyx":466
+/* "PETSc/PC.pyx":470
* return pc
*
* def addCompositePC(self, pc_type): # <<<<<<<<<<<<<<
@@ -145540,6 +154376,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_121addCompositePC(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -145550,7 +154387,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_121addCompositePC(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "addCompositePC") < 0)) __PYX_ERR(34, 466, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "addCompositePC") < 0)) __PYX_ERR(34, 470, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -145561,7 +154398,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_121addCompositePC(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("addCompositePC", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 466, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("addCompositePC", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 470, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.addCompositePC", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -145583,7 +154420,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_120addCompositePC(struct PyPetscP
__Pyx_RefNannySetupContext("addCompositePC", 0);
__Pyx_INCREF(__pyx_v_pc_type);
- /* "PETSc/PC.pyx":467
+ /* "PETSc/PC.pyx":471
*
* def addCompositePC(self, pc_type):
* cdef PetscPCType cval = NULL # <<<<<<<<<<<<<<
@@ -145592,28 +154429,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_120addCompositePC(struct PyPetscP
*/
__pyx_v_cval = NULL;
- /* "PETSc/PC.pyx":468
+ /* "PETSc/PC.pyx":472
* def addCompositePC(self, pc_type):
* cdef PetscPCType cval = NULL
* pc_type = str2bytes(pc_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( PCCompositeAddPC(self.pc, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_pc_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 468, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_pc_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 472, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_pc_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":469
+ /* "PETSc/PC.pyx":473
* cdef PetscPCType cval = NULL
* pc_type = str2bytes(pc_type, &cval)
* CHKERR( PCCompositeAddPC(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* # --- KSP ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCompositeAddPC(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 469, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCCompositeAddPC(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 473, __pyx_L1_error)
- /* "PETSc/PC.pyx":466
+ /* "PETSc/PC.pyx":470
* return pc
*
* def addCompositePC(self, pc_type): # <<<<<<<<<<<<<<
@@ -145635,7 +154472,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_120addCompositePC(struct PyPetscP
return __pyx_r;
}
-/* "PETSc/PC.pyx":473
+/* "PETSc/PC.pyx":477
* # --- KSP ---
*
* def getKSP(self): # <<<<<<<<<<<<<<
@@ -145668,28 +154505,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_122getKSP(struct PyPetscPCObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("getKSP", 0);
- /* "PETSc/PC.pyx":474
+ /* "PETSc/PC.pyx":478
*
* def getKSP(self):
* cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
* CHKERR( PCKSPGetKSP(self.pc, &ksp.ksp) )
* PetscINCREF(ksp.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 474, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 478, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":475
+ /* "PETSc/PC.pyx":479
* def getKSP(self):
* cdef KSP ksp = KSP()
* CHKERR( PCKSPGetKSP(self.pc, &ksp.ksp) ) # <<<<<<<<<<<<<<
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCKSPGetKSP(__pyx_v_self->pc, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 475, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCKSPGetKSP(__pyx_v_self->pc, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 479, __pyx_L1_error)
- /* "PETSc/PC.pyx":476
+ /* "PETSc/PC.pyx":480
* cdef KSP ksp = KSP()
* CHKERR( PCKSPGetKSP(self.pc, &ksp.ksp) )
* PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
@@ -145698,7 +154535,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_122getKSP(struct PyPetscPCObject
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
- /* "PETSc/PC.pyx":477
+ /* "PETSc/PC.pyx":481
* CHKERR( PCKSPGetKSP(self.pc, &ksp.ksp) )
* PetscINCREF(ksp.obj)
* return ksp # <<<<<<<<<<<<<<
@@ -145710,7 +154547,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_122getKSP(struct PyPetscPCObject
__pyx_r = ((PyObject *)__pyx_v_ksp);
goto __pyx_L0;
- /* "PETSc/PC.pyx":473
+ /* "PETSc/PC.pyx":477
* # --- KSP ---
*
* def getKSP(self): # <<<<<<<<<<<<<<
@@ -145730,7 +154567,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_122getKSP(struct PyPetscPCObject
return __pyx_r;
}
-/* "PETSc/PC.pyx":481
+/* "PETSc/PC.pyx":485
* # --- MG ---
*
* def getMGType(self): # <<<<<<<<<<<<<<
@@ -145763,7 +154600,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_124getMGType(struct PyPetscPCObje
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getMGType", 0);
- /* "PETSc/PC.pyx":482
+ /* "PETSc/PC.pyx":486
*
* def getMGType(self):
* cdef PetscPCMGType cval = PC_MG_ADDITIVE # <<<<<<<<<<<<<<
@@ -145772,16 +154609,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_124getMGType(struct PyPetscPCObje
*/
__pyx_v_cval = PC_MG_ADDITIVE;
- /* "PETSc/PC.pyx":483
+ /* "PETSc/PC.pyx":487
* def getMGType(self):
* cdef PetscPCMGType cval = PC_MG_ADDITIVE
* CHKERR( PCMGGetType(self.pc, &cval) ) # <<<<<<<<<<<<<<
* return cval
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetType(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 483, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetType(__pyx_v_self->pc, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 487, __pyx_L1_error)
- /* "PETSc/PC.pyx":484
+ /* "PETSc/PC.pyx":488
* cdef PetscPCMGType cval = PC_MG_ADDITIVE
* CHKERR( PCMGGetType(self.pc, &cval) )
* return cval # <<<<<<<<<<<<<<
@@ -145789,13 +154626,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_124getMGType(struct PyPetscPCObje
* def setMGType(self, mgtype):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PCMGType(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 484, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_PCMGType(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 488, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":481
+ /* "PETSc/PC.pyx":485
* # --- MG ---
*
* def getMGType(self): # <<<<<<<<<<<<<<
@@ -145814,7 +154651,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_124getMGType(struct PyPetscPCObje
return __pyx_r;
}
-/* "PETSc/PC.pyx":486
+/* "PETSc/PC.pyx":490
* return cval
*
* def setMGType(self, mgtype): # <<<<<<<<<<<<<<
@@ -145838,6 +154675,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_127setMGType(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -145848,7 +154686,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_127setMGType(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGType") < 0)) __PYX_ERR(34, 486, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGType") < 0)) __PYX_ERR(34, 490, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -145859,7 +154697,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_127setMGType(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 486, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 490, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setMGType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -145880,26 +154718,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_126setMGType(struct PyPetscPCObje
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMGType", 0);
- /* "PETSc/PC.pyx":487
+ /* "PETSc/PC.pyx":491
*
* def setMGType(self, mgtype):
* cdef PetscPCMGType cval = mgtype # <<<<<<<<<<<<<<
* CHKERR( PCMGSetType(self.pc, cval) )
*
*/
- __pyx_t_1 = ((PCMGType)__Pyx_PyInt_As_PCMGType(__pyx_v_mgtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 487, __pyx_L1_error)
+ __pyx_t_1 = ((PCMGType)__Pyx_PyInt_As_PCMGType(__pyx_v_mgtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 491, __pyx_L1_error)
__pyx_v_cval = __pyx_t_1;
- /* "PETSc/PC.pyx":488
+ /* "PETSc/PC.pyx":492
* def setMGType(self, mgtype):
* cdef PetscPCMGType cval = mgtype
* CHKERR( PCMGSetType(self.pc, cval) ) # <<<<<<<<<<<<<<
*
* def getMGLevels(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 488, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetType(__pyx_v_self->pc, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 492, __pyx_L1_error)
- /* "PETSc/PC.pyx":486
+ /* "PETSc/PC.pyx":490
* return cval
*
* def setMGType(self, mgtype): # <<<<<<<<<<<<<<
@@ -145919,7 +154757,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_126setMGType(struct PyPetscPCObje
return __pyx_r;
}
-/* "PETSc/PC.pyx":490
+/* "PETSc/PC.pyx":494
* CHKERR( PCMGSetType(self.pc, cval) )
*
* def getMGLevels(self): # <<<<<<<<<<<<<<
@@ -145952,7 +154790,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_128getMGLevels(struct PyPetscPCOb
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getMGLevels", 0);
- /* "PETSc/PC.pyx":491
+ /* "PETSc/PC.pyx":495
*
* def getMGLevels(self):
* cdef PetscInt levels = 0 # <<<<<<<<<<<<<<
@@ -145961,16 +154799,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_128getMGLevels(struct PyPetscPCOb
*/
__pyx_v_levels = 0;
- /* "PETSc/PC.pyx":492
+ /* "PETSc/PC.pyx":496
* def getMGLevels(self):
* cdef PetscInt levels = 0
* CHKERR( PCMGGetLevels(self.pc, &levels) ) # <<<<<<<<<<<<<<
* return toInt(levels)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetLevels(__pyx_v_self->pc, (&__pyx_v_levels))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(34, 492, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetLevels(__pyx_v_self->pc, (&__pyx_v_levels))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(34, 496, __pyx_L1_error)
- /* "PETSc/PC.pyx":493
+ /* "PETSc/PC.pyx":497
* cdef PetscInt levels = 0
* CHKERR( PCMGGetLevels(self.pc, &levels) )
* return toInt(levels) # <<<<<<<<<<<<<<
@@ -145978,13 +154816,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_128getMGLevels(struct PyPetscPCOb
* def getMGCoarseSolve(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_levels); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 493, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_levels); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 497, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/PC.pyx":490
+ /* "PETSc/PC.pyx":494
* CHKERR( PCMGSetType(self.pc, cval) )
*
* def getMGLevels(self): # <<<<<<<<<<<<<<
@@ -146003,7 +154841,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_128getMGLevels(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":495
+/* "PETSc/PC.pyx":499
* return toInt(levels)
*
* def getMGCoarseSolve(self): # <<<<<<<<<<<<<<
@@ -146036,28 +154874,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_130getMGCoarseSolve(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("getMGCoarseSolve", 0);
- /* "PETSc/PC.pyx":496
+ /* "PETSc/PC.pyx":500
*
* def getMGCoarseSolve(self):
* cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
* CHKERR( PCMGGetCoarseSolve(self.pc, &ksp.ksp) )
* PetscINCREF(ksp.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 496, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(34, 500, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PC.pyx":497
+ /* "PETSc/PC.pyx":501
* def getMGCoarseSolve(self):
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetCoarseSolve(self.pc, &ksp.ksp) ) # <<<<<<<<<<<<<<
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetCoarseSolve(__pyx_v_self->pc, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 497, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetCoarseSolve(__pyx_v_self->pc, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 501, __pyx_L1_error)
- /* "PETSc/PC.pyx":498
+ /* "PETSc/PC.pyx":502
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetCoarseSolve(self.pc, &ksp.ksp) )
* PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
@@ -146066,19 +154904,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_130getMGCoarseSolve(struct PyPets
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
- /* "PETSc/PC.pyx":499
+ /* "PETSc/PC.pyx":503
* CHKERR( PCMGGetCoarseSolve(self.pc, &ksp.ksp) )
* PetscINCREF(ksp.obj)
* return ksp # <<<<<<<<<<<<<<
*
- * def setMGInterpolation(self, level, Mat mat not None):
+ * def setMGInterpolation(self, level, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_ksp));
__pyx_r = ((PyObject *)__pyx_v_ksp);
goto __pyx_L0;
- /* "PETSc/PC.pyx":495
+ /* "PETSc/PC.pyx":499
* return toInt(levels)
*
* def getMGCoarseSolve(self): # <<<<<<<<<<<<<<
@@ -146098,10 +154936,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_130getMGCoarseSolve(struct PyPets
return __pyx_r;
}
-/* "PETSc/PC.pyx":501
+/* "PETSc/PC.pyx":505
* return ksp
*
- * def setMGInterpolation(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setMGInterpolation(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetInterpolation(self.pc, clevel, mat.mat) )
*/
@@ -146123,7 +154961,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_133setMGInterpolation(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -146132,14 +154972,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_133setMGInterpolation(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMGInterpolation", 1, 2, 2, 1); __PYX_ERR(34, 501, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGInterpolation", 1, 2, 2, 1); __PYX_ERR(34, 505, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGInterpolation") < 0)) __PYX_ERR(34, 501, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGInterpolation") < 0)) __PYX_ERR(34, 505, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -146152,13 +154993,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_133setMGInterpolation(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGInterpolation", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 501, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGInterpolation", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 505, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setMGInterpolation", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 501, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 505, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_132setMGInterpolation(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_mat);
/* function exit code */
@@ -146178,29 +155019,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_132setMGInterpolation(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMGInterpolation", 0);
- /* "PETSc/PC.pyx":502
+ /* "PETSc/PC.pyx":506
*
- * def setMGInterpolation(self, level, Mat mat not None):
+ * def setMGInterpolation(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( PCMGSetInterpolation(self.pc, clevel, mat.mat) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 502, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 506, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":503
- * def setMGInterpolation(self, level, Mat mat not None):
+ /* "PETSc/PC.pyx":507
+ * def setMGInterpolation(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetInterpolation(self.pc, clevel, mat.mat) ) # <<<<<<<<<<<<<<
*
* def getMGInterpolation(self, level):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetInterpolation(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 503, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetInterpolation(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 507, __pyx_L1_error)
- /* "PETSc/PC.pyx":501
+ /* "PETSc/PC.pyx":505
* return ksp
*
- * def setMGInterpolation(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setMGInterpolation(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetInterpolation(self.pc, clevel, mat.mat) )
*/
@@ -146217,7 +155058,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_132setMGInterpolation(struct PyPe
return __pyx_r;
}
-/* "PETSc/PC.pyx":505
+/* "PETSc/PC.pyx":509
* CHKERR( PCMGSetInterpolation(self.pc, clevel, mat.mat) )
*
* def getMGInterpolation(self, level): # <<<<<<<<<<<<<<
@@ -146241,6 +155082,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_135getMGInterpolation(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -146251,7 +155093,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_135getMGInterpolation(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGInterpolation") < 0)) __PYX_ERR(34, 505, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGInterpolation") < 0)) __PYX_ERR(34, 509, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -146262,7 +155104,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_135getMGInterpolation(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMGInterpolation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 505, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMGInterpolation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 509, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.getMGInterpolation", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -146285,38 +155127,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_134getMGInterpolation(struct PyPe
int __pyx_t_3;
__Pyx_RefNannySetupContext("getMGInterpolation", 0);
- /* "PETSc/PC.pyx":506
+ /* "PETSc/PC.pyx":510
*
* def getMGInterpolation(self, level):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* cdef Mat interpolation = Mat()
* CHKERR( PCMGGetInterpolation(self.pc, clevel, &interpolation.mat) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 506, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 510, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":507
+ /* "PETSc/PC.pyx":511
* def getMGInterpolation(self, level):
* cdef PetscInt clevel = asInt(level)
* cdef Mat interpolation = Mat() # <<<<<<<<<<<<<<
* CHKERR( PCMGGetInterpolation(self.pc, clevel, &interpolation.mat) )
* PetscINCREF(interpolation.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 507, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 511, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_interpolation = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/PC.pyx":508
+ /* "PETSc/PC.pyx":512
* cdef PetscInt clevel = asInt(level)
* cdef Mat interpolation = Mat()
* CHKERR( PCMGGetInterpolation(self.pc, clevel, &interpolation.mat) ) # <<<<<<<<<<<<<<
* PetscINCREF(interpolation.obj)
* return interpolation
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetInterpolation(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_interpolation->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(34, 508, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetInterpolation(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_interpolation->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 512, __pyx_L1_error)
- /* "PETSc/PC.pyx":509
+ /* "PETSc/PC.pyx":513
* cdef Mat interpolation = Mat()
* CHKERR( PCMGGetInterpolation(self.pc, clevel, &interpolation.mat) )
* PetscINCREF(interpolation.obj) # <<<<<<<<<<<<<<
@@ -146325,19 +155167,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_134getMGInterpolation(struct PyPe
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_interpolation->__pyx_base.obj);
- /* "PETSc/PC.pyx":510
+ /* "PETSc/PC.pyx":514
* CHKERR( PCMGGetInterpolation(self.pc, clevel, &interpolation.mat) )
* PetscINCREF(interpolation.obj)
* return interpolation # <<<<<<<<<<<<<<
*
- * def setMGRestriction(self, level, Mat mat not None):
+ * def setMGRestriction(self, level, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_interpolation));
__pyx_r = ((PyObject *)__pyx_v_interpolation);
goto __pyx_L0;
- /* "PETSc/PC.pyx":505
+ /* "PETSc/PC.pyx":509
* CHKERR( PCMGSetInterpolation(self.pc, clevel, mat.mat) )
*
* def getMGInterpolation(self, level): # <<<<<<<<<<<<<<
@@ -146357,10 +155199,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_134getMGInterpolation(struct PyPe
return __pyx_r;
}
-/* "PETSc/PC.pyx":512
+/* "PETSc/PC.pyx":516
* return interpolation
*
- * def setMGRestriction(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setMGRestriction(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRestriction(self.pc, clevel, mat.mat) )
*/
@@ -146382,7 +155224,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_137setMGRestriction(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -146391,14 +155235,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_137setMGRestriction(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMGRestriction", 1, 2, 2, 1); __PYX_ERR(34, 512, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGRestriction", 1, 2, 2, 1); __PYX_ERR(34, 516, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGRestriction") < 0)) __PYX_ERR(34, 512, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGRestriction") < 0)) __PYX_ERR(34, 516, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -146411,13 +155256,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_137setMGRestriction(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGRestriction", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 512, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGRestriction", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 516, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setMGRestriction", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 512, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(34, 516, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_136setMGRestriction(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_mat);
/* function exit code */
@@ -146437,29 +155282,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_136setMGRestriction(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMGRestriction", 0);
- /* "PETSc/PC.pyx":513
+ /* "PETSc/PC.pyx":517
*
- * def setMGRestriction(self, level, Mat mat not None):
+ * def setMGRestriction(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( PCMGSetRestriction(self.pc, clevel, mat.mat) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 513, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 517, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":514
- * def setMGRestriction(self, level, Mat mat not None):
+ /* "PETSc/PC.pyx":518
+ * def setMGRestriction(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRestriction(self.pc, clevel, mat.mat) ) # <<<<<<<<<<<<<<
*
* def getMGRestriction(self, level):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetRestriction(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 514, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetRestriction(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 518, __pyx_L1_error)
- /* "PETSc/PC.pyx":512
+ /* "PETSc/PC.pyx":516
* return interpolation
*
- * def setMGRestriction(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setMGRestriction(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRestriction(self.pc, clevel, mat.mat) )
*/
@@ -146476,7 +155321,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_136setMGRestriction(struct PyPets
return __pyx_r;
}
-/* "PETSc/PC.pyx":516
+/* "PETSc/PC.pyx":520
* CHKERR( PCMGSetRestriction(self.pc, clevel, mat.mat) )
*
* def getMGRestriction(self, level): # <<<<<<<<<<<<<<
@@ -146500,6 +155345,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_139getMGRestriction(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -146510,7 +155356,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_139getMGRestriction(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGRestriction") < 0)) __PYX_ERR(34, 516, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGRestriction") < 0)) __PYX_ERR(34, 520, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -146521,7 +155367,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_139getMGRestriction(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMGRestriction", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 516, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMGRestriction", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 520, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.getMGRestriction", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -146544,38 +155390,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_138getMGRestriction(struct PyPets
int __pyx_t_3;
__Pyx_RefNannySetupContext("getMGRestriction", 0);
- /* "PETSc/PC.pyx":517
+ /* "PETSc/PC.pyx":521
*
* def getMGRestriction(self, level):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* cdef Mat restriction = Mat()
* CHKERR( PCMGGetRestriction(self.pc, clevel, &restriction.mat) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 517, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 521, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":518
+ /* "PETSc/PC.pyx":522
* def getMGRestriction(self, level):
* cdef PetscInt clevel = asInt(level)
* cdef Mat restriction = Mat() # <<<<<<<<<<<<<<
* CHKERR( PCMGGetRestriction(self.pc, clevel, &restriction.mat) )
* PetscINCREF(restriction.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 518, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 522, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_restriction = ((struct PyPetscMatObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/PC.pyx":519
+ /* "PETSc/PC.pyx":523
* cdef PetscInt clevel = asInt(level)
* cdef Mat restriction = Mat()
* CHKERR( PCMGGetRestriction(self.pc, clevel, &restriction.mat) ) # <<<<<<<<<<<<<<
* PetscINCREF(restriction.obj)
* return restriction
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetRestriction(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_restriction->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(34, 519, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetRestriction(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_restriction->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 523, __pyx_L1_error)
- /* "PETSc/PC.pyx":520
+ /* "PETSc/PC.pyx":524
* cdef Mat restriction = Mat()
* CHKERR( PCMGGetRestriction(self.pc, clevel, &restriction.mat) )
* PetscINCREF(restriction.obj) # <<<<<<<<<<<<<<
@@ -146584,19 +155430,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_138getMGRestriction(struct PyPets
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_restriction->__pyx_base.obj);
- /* "PETSc/PC.pyx":521
+ /* "PETSc/PC.pyx":525
* CHKERR( PCMGGetRestriction(self.pc, clevel, &restriction.mat) )
* PetscINCREF(restriction.obj)
* return restriction # <<<<<<<<<<<<<<
*
- * def setMGRScale(self, level, Vec rscale not None):
+ * def setMGRScale(self, level, Vec rscale):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_restriction));
__pyx_r = ((PyObject *)__pyx_v_restriction);
goto __pyx_L0;
- /* "PETSc/PC.pyx":516
+ /* "PETSc/PC.pyx":520
* CHKERR( PCMGSetRestriction(self.pc, clevel, mat.mat) )
*
* def getMGRestriction(self, level): # <<<<<<<<<<<<<<
@@ -146616,10 +155462,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_138getMGRestriction(struct PyPets
return __pyx_r;
}
-/* "PETSc/PC.pyx":523
+/* "PETSc/PC.pyx":527
* return restriction
*
- * def setMGRScale(self, level, Vec rscale not None): # <<<<<<<<<<<<<<
+ * def setMGRScale(self, level, Vec rscale): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRScale(self.pc, clevel, rscale.vec) )
*/
@@ -146641,7 +155487,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_141setMGRScale(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -146650,14 +155498,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_141setMGRScale(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rscale)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMGRScale", 1, 2, 2, 1); __PYX_ERR(34, 523, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGRScale", 1, 2, 2, 1); __PYX_ERR(34, 527, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGRScale") < 0)) __PYX_ERR(34, 523, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGRScale") < 0)) __PYX_ERR(34, 527, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -146670,13 +155519,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_141setMGRScale(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGRScale", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 523, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGRScale", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 527, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setMGRScale", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rscale), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "rscale", 0))) __PYX_ERR(34, 523, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rscale), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "rscale", 0))) __PYX_ERR(34, 527, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_140setMGRScale(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_rscale);
/* function exit code */
@@ -146696,29 +155545,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_140setMGRScale(struct PyPetscPCOb
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMGRScale", 0);
- /* "PETSc/PC.pyx":524
+ /* "PETSc/PC.pyx":528
*
- * def setMGRScale(self, level, Vec rscale not None):
+ * def setMGRScale(self, level, Vec rscale):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( PCMGSetRScale(self.pc, clevel, rscale.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 524, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 528, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":525
- * def setMGRScale(self, level, Vec rscale not None):
+ /* "PETSc/PC.pyx":529
+ * def setMGRScale(self, level, Vec rscale):
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRScale(self.pc, clevel, rscale.vec) ) # <<<<<<<<<<<<<<
*
* def getMGRScale(self, level):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetRScale(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_rscale->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 525, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetRScale(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_rscale->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 529, __pyx_L1_error)
- /* "PETSc/PC.pyx":523
+ /* "PETSc/PC.pyx":527
* return restriction
*
- * def setMGRScale(self, level, Vec rscale not None): # <<<<<<<<<<<<<<
+ * def setMGRScale(self, level, Vec rscale): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRScale(self.pc, clevel, rscale.vec) )
*/
@@ -146735,7 +155584,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_140setMGRScale(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":527
+/* "PETSc/PC.pyx":531
* CHKERR( PCMGSetRScale(self.pc, clevel, rscale.vec) )
*
* def getMGRScale(self, level): # <<<<<<<<<<<<<<
@@ -146759,6 +155608,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_143getMGRScale(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -146769,7 +155619,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_143getMGRScale(PyObject *__pyx_v_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGRScale") < 0)) __PYX_ERR(34, 527, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGRScale") < 0)) __PYX_ERR(34, 531, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -146780,7 +155630,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_143getMGRScale(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMGRScale", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 527, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMGRScale", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 531, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.getMGRScale", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -146803,38 +155653,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_142getMGRScale(struct PyPetscPCOb
int __pyx_t_3;
__Pyx_RefNannySetupContext("getMGRScale", 0);
- /* "PETSc/PC.pyx":528
+ /* "PETSc/PC.pyx":532
*
* def getMGRScale(self, level):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* cdef Vec rscale = Vec()
* CHKERR( PCMGGetRScale(self.pc, clevel, &rscale.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 528, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 532, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":529
+ /* "PETSc/PC.pyx":533
* def getMGRScale(self, level):
* cdef PetscInt clevel = asInt(level)
* cdef Vec rscale = Vec() # <<<<<<<<<<<<<<
* CHKERR( PCMGGetRScale(self.pc, clevel, &rscale.vec) )
* PetscINCREF(rscale.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 529, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 533, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_rscale = ((struct PyPetscVecObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/PC.pyx":530
+ /* "PETSc/PC.pyx":534
* cdef PetscInt clevel = asInt(level)
* cdef Vec rscale = Vec()
* CHKERR( PCMGGetRScale(self.pc, clevel, &rscale.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(rscale.obj)
* return rscale
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetRScale(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_rscale->vec))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(34, 530, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetRScale(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_rscale->vec))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 534, __pyx_L1_error)
- /* "PETSc/PC.pyx":531
+ /* "PETSc/PC.pyx":535
* cdef Vec rscale = Vec()
* CHKERR( PCMGGetRScale(self.pc, clevel, &rscale.vec) )
* PetscINCREF(rscale.obj) # <<<<<<<<<<<<<<
@@ -146843,7 +155693,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_142getMGRScale(struct PyPetscPCOb
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_rscale->__pyx_base.obj);
- /* "PETSc/PC.pyx":532
+ /* "PETSc/PC.pyx":536
* CHKERR( PCMGGetRScale(self.pc, clevel, &rscale.vec) )
* PetscINCREF(rscale.obj)
* return rscale # <<<<<<<<<<<<<<
@@ -146855,7 +155705,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_142getMGRScale(struct PyPetscPCOb
__pyx_r = ((PyObject *)__pyx_v_rscale);
goto __pyx_L0;
- /* "PETSc/PC.pyx":527
+ /* "PETSc/PC.pyx":531
* CHKERR( PCMGSetRScale(self.pc, clevel, rscale.vec) )
*
* def getMGRScale(self, level): # <<<<<<<<<<<<<<
@@ -146875,7 +155725,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_142getMGRScale(struct PyPetscPCOb
return __pyx_r;
}
-/* "PETSc/PC.pyx":534
+/* "PETSc/PC.pyx":538
* return rscale
*
* def getMGSmoother(self, level): # <<<<<<<<<<<<<<
@@ -146899,6 +155749,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_145getMGSmoother(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -146909,7 +155760,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_145getMGSmoother(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGSmoother") < 0)) __PYX_ERR(34, 534, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGSmoother") < 0)) __PYX_ERR(34, 538, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -146920,7 +155771,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_145getMGSmoother(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMGSmoother", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 534, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMGSmoother", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 538, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.getMGSmoother", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -146943,38 +155794,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_144getMGSmoother(struct PyPetscPC
int __pyx_t_3;
__Pyx_RefNannySetupContext("getMGSmoother", 0);
- /* "PETSc/PC.pyx":535
+ /* "PETSc/PC.pyx":539
*
* def getMGSmoother(self, level):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmoother(self.pc, clevel, &ksp.ksp) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 535, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 539, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":536
+ /* "PETSc/PC.pyx":540
* def getMGSmoother(self, level):
* cdef PetscInt clevel = asInt(level)
* cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
* CHKERR( PCMGGetSmoother(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 536, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 540, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/PC.pyx":537
+ /* "PETSc/PC.pyx":541
* cdef PetscInt clevel = asInt(level)
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmoother(self.pc, clevel, &ksp.ksp) ) # <<<<<<<<<<<<<<
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetSmoother(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(34, 537, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetSmoother(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 541, __pyx_L1_error)
- /* "PETSc/PC.pyx":538
+ /* "PETSc/PC.pyx":542
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmoother(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
@@ -146983,7 +155834,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_144getMGSmoother(struct PyPetscPC
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
- /* "PETSc/PC.pyx":539
+ /* "PETSc/PC.pyx":543
* CHKERR( PCMGGetSmoother(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj)
* return ksp # <<<<<<<<<<<<<<
@@ -146995,7 +155846,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_144getMGSmoother(struct PyPetscPC
__pyx_r = ((PyObject *)__pyx_v_ksp);
goto __pyx_L0;
- /* "PETSc/PC.pyx":534
+ /* "PETSc/PC.pyx":538
* return rscale
*
* def getMGSmoother(self, level): # <<<<<<<<<<<<<<
@@ -147015,7 +155866,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_144getMGSmoother(struct PyPetscPC
return __pyx_r;
}
-/* "PETSc/PC.pyx":541
+/* "PETSc/PC.pyx":545
* return ksp
*
* def getMGSmootherDown(self, level): # <<<<<<<<<<<<<<
@@ -147039,6 +155890,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_147getMGSmootherDown(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -147049,7 +155901,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_147getMGSmootherDown(PyObject *__
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGSmootherDown") < 0)) __PYX_ERR(34, 541, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGSmootherDown") < 0)) __PYX_ERR(34, 545, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -147060,7 +155912,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_147getMGSmootherDown(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMGSmootherDown", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 541, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMGSmootherDown", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 545, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.getMGSmootherDown", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -147083,38 +155935,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_146getMGSmootherDown(struct PyPet
int __pyx_t_3;
__Pyx_RefNannySetupContext("getMGSmootherDown", 0);
- /* "PETSc/PC.pyx":542
+ /* "PETSc/PC.pyx":546
*
* def getMGSmootherDown(self, level):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmootherDown(self.pc, clevel, &ksp.ksp) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 542, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 546, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":543
+ /* "PETSc/PC.pyx":547
* def getMGSmootherDown(self, level):
* cdef PetscInt clevel = asInt(level)
* cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
* CHKERR( PCMGGetSmootherDown(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 543, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 547, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/PC.pyx":544
+ /* "PETSc/PC.pyx":548
* cdef PetscInt clevel = asInt(level)
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmootherDown(self.pc, clevel, &ksp.ksp) ) # <<<<<<<<<<<<<<
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetSmootherDown(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(34, 544, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetSmootherDown(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 548, __pyx_L1_error)
- /* "PETSc/PC.pyx":545
+ /* "PETSc/PC.pyx":549
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmootherDown(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
@@ -147123,7 +155975,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_146getMGSmootherDown(struct PyPet
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
- /* "PETSc/PC.pyx":546
+ /* "PETSc/PC.pyx":550
* CHKERR( PCMGGetSmootherDown(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj)
* return ksp # <<<<<<<<<<<<<<
@@ -147135,7 +155987,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_146getMGSmootherDown(struct PyPet
__pyx_r = ((PyObject *)__pyx_v_ksp);
goto __pyx_L0;
- /* "PETSc/PC.pyx":541
+ /* "PETSc/PC.pyx":545
* return ksp
*
* def getMGSmootherDown(self, level): # <<<<<<<<<<<<<<
@@ -147155,7 +156007,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_146getMGSmootherDown(struct PyPet
return __pyx_r;
}
-/* "PETSc/PC.pyx":548
+/* "PETSc/PC.pyx":552
* return ksp
*
* def getMGSmootherUp(self, level): # <<<<<<<<<<<<<<
@@ -147179,6 +156031,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_149getMGSmootherUp(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -147189,7 +156042,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_149getMGSmootherUp(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGSmootherUp") < 0)) __PYX_ERR(34, 548, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMGSmootherUp") < 0)) __PYX_ERR(34, 552, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -147200,7 +156053,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_149getMGSmootherUp(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMGSmootherUp", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 548, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMGSmootherUp", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 552, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.getMGSmootherUp", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -147223,38 +156076,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_148getMGSmootherUp(struct PyPetsc
int __pyx_t_3;
__Pyx_RefNannySetupContext("getMGSmootherUp", 0);
- /* "PETSc/PC.pyx":549
+ /* "PETSc/PC.pyx":553
*
* def getMGSmootherUp(self, level):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmootherUp(self.pc, clevel, &ksp.ksp) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 549, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 553, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":550
+ /* "PETSc/PC.pyx":554
* def getMGSmootherUp(self, level):
* cdef PetscInt clevel = asInt(level)
* cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
* CHKERR( PCMGGetSmootherUp(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj)
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 550, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(34, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/PC.pyx":551
+ /* "PETSc/PC.pyx":555
* cdef PetscInt clevel = asInt(level)
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmootherUp(self.pc, clevel, &ksp.ksp) ) # <<<<<<<<<<<<<<
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetSmootherUp(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(34, 551, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGGetSmootherUp(__pyx_v_self->pc, __pyx_v_clevel, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 555, __pyx_L1_error)
- /* "PETSc/PC.pyx":552
+ /* "PETSc/PC.pyx":556
* cdef KSP ksp = KSP()
* CHKERR( PCMGGetSmootherUp(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
@@ -147263,19 +156116,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_148getMGSmootherUp(struct PyPetsc
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
- /* "PETSc/PC.pyx":553
+ /* "PETSc/PC.pyx":557
* CHKERR( PCMGGetSmootherUp(self.pc, clevel, &ksp.ksp) )
* PetscINCREF(ksp.obj)
* return ksp # <<<<<<<<<<<<<<
*
- * def setMGCyclesOnLevel(self, level, ncycle):
+ * def setMGCycleType(self, cycle_type):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_ksp));
__pyx_r = ((PyObject *)__pyx_v_ksp);
goto __pyx_L0;
- /* "PETSc/PC.pyx":548
+ /* "PETSc/PC.pyx":552
* return ksp
*
* def getMGSmootherUp(self, level): # <<<<<<<<<<<<<<
@@ -147295,32 +156148,140 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_148getMGSmootherUp(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/PC.pyx":555
+/* "PETSc/PC.pyx":559
* return ksp
*
- * def setMGCyclesOnLevel(self, level, ncycle): # <<<<<<<<<<<<<<
+ * def setMGCycleType(self, cycle_type): # <<<<<<<<<<<<<<
+ * cdef PetscPCMGCycleType ctype = cycle_type
+ * CHKERR( PCMGSetCycleType(self.pc, ctype) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCycleType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2PC_150setMGCycleType[] = "PC.setMGCycleType(self, cycle_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCycleType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_cycle_type = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setMGCycleType (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_cycle_type,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cycle_type)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGCycleType") < 0)) __PYX_ERR(34, 559, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_cycle_type = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setMGCycleType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 559, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.PC.setMGCycleType", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_150setMGCycleType(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_cycle_type);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_150setMGCycleType(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_cycle_type) {
+ PCMGCycleType __pyx_v_ctype;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PCMGCycleType __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setMGCycleType", 0);
+
+ /* "PETSc/PC.pyx":560
+ *
+ * def setMGCycleType(self, cycle_type):
+ * cdef PetscPCMGCycleType ctype = cycle_type # <<<<<<<<<<<<<<
+ * CHKERR( PCMGSetCycleType(self.pc, ctype) )
+ *
+ */
+ __pyx_t_1 = ((PCMGCycleType)__Pyx_PyInt_As_PCMGCycleType(__pyx_v_cycle_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 560, __pyx_L1_error)
+ __pyx_v_ctype = __pyx_t_1;
+
+ /* "PETSc/PC.pyx":561
+ * def setMGCycleType(self, cycle_type):
+ * cdef PetscPCMGCycleType ctype = cycle_type
+ * CHKERR( PCMGSetCycleType(self.pc, ctype) ) # <<<<<<<<<<<<<<
+ *
+ * def setMGCycleTypeOnLevel(self, level, cycle_type):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetCycleType(__pyx_v_self->pc, __pyx_v_ctype)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 561, __pyx_L1_error)
+
+ /* "PETSc/PC.pyx":559
+ * return ksp
+ *
+ * def setMGCycleType(self, cycle_type): # <<<<<<<<<<<<<<
+ * cdef PetscPCMGCycleType ctype = cycle_type
+ * CHKERR( PCMGSetCycleType(self.pc, ctype) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.PC.setMGCycleType", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/PC.pyx":563
+ * CHKERR( PCMGSetCycleType(self.pc, ctype) )
+ *
+ * def setMGCycleTypeOnLevel(self, level, cycle_type): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
- * cdef PetscInt c = asInt(ncycle)
+ * cdef PetscPCMGCycleType ctype = cycle_type
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCyclesOnLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2PC_150setMGCyclesOnLevel[] = "PC.setMGCyclesOnLevel(self, level, ncycle)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCyclesOnLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGCycleTypeOnLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2PC_152setMGCycleTypeOnLevel[] = "PC.setMGCycleTypeOnLevel(self, level, cycle_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGCycleTypeOnLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_level = 0;
- PyObject *__pyx_v_ncycle = 0;
+ PyObject *__pyx_v_cycle_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setMGCyclesOnLevel (wrapper)", 0);
+ __Pyx_RefNannySetupContext("setMGCycleTypeOnLevel (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_level,&__pyx_n_s_ncycle,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_level,&__pyx_n_s_cycle_type,0};
PyObject* values[2] = {0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -147329,14 +156290,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCyclesOnLevel(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
- if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ncycle)) != 0)) kw_args--;
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cycle_type)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMGCyclesOnLevel", 1, 2, 2, 1); __PYX_ERR(34, 555, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGCycleTypeOnLevel", 1, 2, 2, 1); __PYX_ERR(34, 563, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGCyclesOnLevel") < 0)) __PYX_ERR(34, 555, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGCycleTypeOnLevel") < 0)) __PYX_ERR(34, 563, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -147345,74 +156307,75 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCyclesOnLevel(PyObject *_
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
}
__pyx_v_level = values[0];
- __pyx_v_ncycle = values[1];
+ __pyx_v_cycle_type = values[1];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGCyclesOnLevel", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 555, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGCycleTypeOnLevel", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 563, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.PC.setMGCyclesOnLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.PC.setMGCycleTypeOnLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_150setMGCyclesOnLevel(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_ncycle);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_152setMGCycleTypeOnLevel(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_cycle_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_150setMGCyclesOnLevel(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, PyObject *__pyx_v_ncycle) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_152setMGCycleTypeOnLevel(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, PyObject *__pyx_v_cycle_type) {
PetscInt __pyx_v_clevel;
- PetscInt __pyx_v_c;
+ PCMGCycleType __pyx_v_ctype;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PetscInt __pyx_t_1;
- int __pyx_t_2;
- __Pyx_RefNannySetupContext("setMGCyclesOnLevel", 0);
+ PCMGCycleType __pyx_t_2;
+ int __pyx_t_3;
+ __Pyx_RefNannySetupContext("setMGCycleTypeOnLevel", 0);
- /* "PETSc/PC.pyx":556
+ /* "PETSc/PC.pyx":564
*
- * def setMGCyclesOnLevel(self, level, ncycle):
+ * def setMGCycleTypeOnLevel(self, level, cycle_type):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
- * cdef PetscInt c = asInt(ncycle)
- * CHKERR( PCMGSetCyclesOnLevel(self.pc, clevel, c) )
+ * cdef PetscPCMGCycleType ctype = cycle_type
+ * CHKERR( PCMGSetCycleTypeOnLevel(self.pc, clevel, ctype) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 556, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 564, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":557
- * def setMGCyclesOnLevel(self, level, ncycle):
+ /* "PETSc/PC.pyx":565
+ * def setMGCycleTypeOnLevel(self, level, cycle_type):
* cdef PetscInt clevel = asInt(level)
- * cdef PetscInt c = asInt(ncycle) # <<<<<<<<<<<<<<
- * CHKERR( PCMGSetCyclesOnLevel(self.pc, clevel, c) )
+ * cdef PetscPCMGCycleType ctype = cycle_type # <<<<<<<<<<<<<<
+ * CHKERR( PCMGSetCycleTypeOnLevel(self.pc, clevel, ctype) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_ncycle); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 557, __pyx_L1_error)
- __pyx_v_c = __pyx_t_1;
+ __pyx_t_2 = ((PCMGCycleType)__Pyx_PyInt_As_PCMGCycleType(__pyx_v_cycle_type)); if (unlikely(PyErr_Occurred())) __PYX_ERR(34, 565, __pyx_L1_error)
+ __pyx_v_ctype = __pyx_t_2;
- /* "PETSc/PC.pyx":558
+ /* "PETSc/PC.pyx":566
* cdef PetscInt clevel = asInt(level)
- * cdef PetscInt c = asInt(ncycle)
- * CHKERR( PCMGSetCyclesOnLevel(self.pc, clevel, c) ) # <<<<<<<<<<<<<<
+ * cdef PetscPCMGCycleType ctype = cycle_type
+ * CHKERR( PCMGSetCycleTypeOnLevel(self.pc, clevel, ctype) ) # <<<<<<<<<<<<<<
*
- * def setMGRhs(self, level, Vec rhs not None):
+ * def setMGRhs(self, level, Vec rhs):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetCyclesOnLevel(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_c)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 558, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetCycleTypeOnLevel(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_ctype)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(34, 566, __pyx_L1_error)
- /* "PETSc/PC.pyx":555
- * return ksp
+ /* "PETSc/PC.pyx":563
+ * CHKERR( PCMGSetCycleType(self.pc, ctype) )
*
- * def setMGCyclesOnLevel(self, level, ncycle): # <<<<<<<<<<<<<<
+ * def setMGCycleTypeOnLevel(self, level, cycle_type): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
- * cdef PetscInt c = asInt(ncycle)
+ * cdef PetscPCMGCycleType ctype = cycle_type
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.PC.setMGCyclesOnLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.PC.setMGCycleTypeOnLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -147420,18 +156383,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_150setMGCyclesOnLevel(struct PyPe
return __pyx_r;
}
-/* "PETSc/PC.pyx":560
- * CHKERR( PCMGSetCyclesOnLevel(self.pc, clevel, c) )
+/* "PETSc/PC.pyx":568
+ * CHKERR( PCMGSetCycleTypeOnLevel(self.pc, clevel, ctype) )
*
- * def setMGRhs(self, level, Vec rhs not None): # <<<<<<<<<<<<<<
+ * def setMGRhs(self, level, Vec rhs): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRhs(self.pc, clevel, rhs.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2PC_152setMGRhs[] = "PC.setMGRhs(self, level, Vec rhs)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2PC_154setMGRhs[] = "PC.setMGRhs(self, level, Vec rhs)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_level = 0;
struct PyPetscVecObject *__pyx_v_rhs = 0;
PyObject *__pyx_r = 0;
@@ -147445,7 +156408,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGRhs(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -147454,14 +156419,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGRhs(PyObject *__pyx_v_sel
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rhs)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMGRhs", 1, 2, 2, 1); __PYX_ERR(34, 560, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGRhs", 1, 2, 2, 1); __PYX_ERR(34, 568, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGRhs") < 0)) __PYX_ERR(34, 560, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGRhs") < 0)) __PYX_ERR(34, 568, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -147474,14 +156440,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGRhs(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGRhs", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 560, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGRhs", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 568, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setMGRhs", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rhs), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "rhs", 0))) __PYX_ERR(34, 560, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_152setMGRhs(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_rhs);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rhs), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "rhs", 0))) __PYX_ERR(34, 568, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_154setMGRhs(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_rhs);
/* function exit code */
goto __pyx_L0;
@@ -147492,7 +156458,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_153setMGRhs(PyObject *__pyx_v_sel
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_152setMGRhs(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_rhs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_154setMGRhs(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_rhs) {
PetscInt __pyx_v_clevel;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -147500,29 +156466,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_152setMGRhs(struct PyPetscPCObjec
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMGRhs", 0);
- /* "PETSc/PC.pyx":561
+ /* "PETSc/PC.pyx":569
*
- * def setMGRhs(self, level, Vec rhs not None):
+ * def setMGRhs(self, level, Vec rhs):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( PCMGSetRhs(self.pc, clevel, rhs.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 561, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 569, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":562
- * def setMGRhs(self, level, Vec rhs not None):
+ /* "PETSc/PC.pyx":570
+ * def setMGRhs(self, level, Vec rhs):
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRhs(self.pc, clevel, rhs.vec) ) # <<<<<<<<<<<<<<
*
- * def setMGX(self, level, Vec x not None):
+ * def setMGX(self, level, Vec x):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetRhs(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_rhs->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 562, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetRhs(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_rhs->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 570, __pyx_L1_error)
- /* "PETSc/PC.pyx":560
- * CHKERR( PCMGSetCyclesOnLevel(self.pc, clevel, c) )
+ /* "PETSc/PC.pyx":568
+ * CHKERR( PCMGSetCycleTypeOnLevel(self.pc, clevel, ctype) )
*
- * def setMGRhs(self, level, Vec rhs not None): # <<<<<<<<<<<<<<
+ * def setMGRhs(self, level, Vec rhs): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetRhs(self.pc, clevel, rhs.vec) )
*/
@@ -147539,18 +156505,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_152setMGRhs(struct PyPetscPCObjec
return __pyx_r;
}
-/* "PETSc/PC.pyx":564
+/* "PETSc/PC.pyx":572
* CHKERR( PCMGSetRhs(self.pc, clevel, rhs.vec) )
*
- * def setMGX(self, level, Vec x not None): # <<<<<<<<<<<<<<
+ * def setMGX(self, level, Vec x): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetX(self.pc, clevel, x.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGX(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2PC_154setMGX[] = "PC.setMGX(self, level, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGX(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGX(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2PC_156setMGX[] = "PC.setMGX(self, level, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGX(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_level = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
PyObject *__pyx_r = 0;
@@ -147564,7 +156530,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGX(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -147573,14 +156541,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGX(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMGX", 1, 2, 2, 1); __PYX_ERR(34, 564, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGX", 1, 2, 2, 1); __PYX_ERR(34, 572, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGX") < 0)) __PYX_ERR(34, 564, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGX") < 0)) __PYX_ERR(34, 572, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -147593,14 +156562,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGX(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGX", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 564, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGX", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 572, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setMGX", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 564, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_154setMGX(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(34, 572, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_156setMGX(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -147611,7 +156580,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_155setMGX(PyObject *__pyx_v_self,
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_154setMGX(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_156setMGX(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_x) {
PetscInt __pyx_v_clevel;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -147619,29 +156588,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_154setMGX(struct PyPetscPCObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMGX", 0);
- /* "PETSc/PC.pyx":565
+ /* "PETSc/PC.pyx":573
*
- * def setMGX(self, level, Vec x not None):
+ * def setMGX(self, level, Vec x):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( PCMGSetX(self.pc, clevel, x.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 565, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 573, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":566
- * def setMGX(self, level, Vec x not None):
+ /* "PETSc/PC.pyx":574
+ * def setMGX(self, level, Vec x):
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetX(self.pc, clevel, x.vec) ) # <<<<<<<<<<<<<<
*
- * def setMGR(self, level, Vec r not None):
+ * def setMGR(self, level, Vec r):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetX(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 566, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetX(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_x->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 574, __pyx_L1_error)
- /* "PETSc/PC.pyx":564
+ /* "PETSc/PC.pyx":572
* CHKERR( PCMGSetRhs(self.pc, clevel, rhs.vec) )
*
- * def setMGX(self, level, Vec x not None): # <<<<<<<<<<<<<<
+ * def setMGX(self, level, Vec x): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetX(self.pc, clevel, x.vec) )
*/
@@ -147658,18 +156627,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_154setMGX(struct PyPetscPCObject
return __pyx_r;
}
-/* "PETSc/PC.pyx":568
+/* "PETSc/PC.pyx":576
* CHKERR( PCMGSetX(self.pc, clevel, x.vec) )
*
- * def setMGR(self, level, Vec r not None): # <<<<<<<<<<<<<<
+ * def setMGR(self, level, Vec r): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetR(self.pc, clevel, r.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2PC_156setMGR[] = "PC.setMGR(self, level, Vec r)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_159setMGR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2PC_158setMGR[] = "PC.setMGR(self, level, Vec r)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_159setMGR(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_level = 0;
struct PyPetscVecObject *__pyx_v_r = 0;
PyObject *__pyx_r = 0;
@@ -147683,7 +156652,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGR(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -147692,14 +156663,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGR(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_r)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setMGR", 1, 2, 2, 1); __PYX_ERR(34, 568, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGR", 1, 2, 2, 1); __PYX_ERR(34, 576, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGR") < 0)) __PYX_ERR(34, 568, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMGR") < 0)) __PYX_ERR(34, 576, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -147712,14 +156684,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGR(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMGR", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 568, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMGR", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(34, 576, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.PC.setMGR", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "r", 0))) __PYX_ERR(34, 568, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_156setMGR(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_r);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "r", 0))) __PYX_ERR(34, 576, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2PC_158setMGR(((struct PyPetscPCObject *)__pyx_v_self), __pyx_v_level, __pyx_v_r);
/* function exit code */
goto __pyx_L0;
@@ -147730,7 +156702,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2PC_157setMGR(PyObject *__pyx_v_self,
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_156setMGR(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_r) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_158setMGR(struct PyPetscPCObject *__pyx_v_self, PyObject *__pyx_v_level, struct PyPetscVecObject *__pyx_v_r) {
PetscInt __pyx_v_clevel;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -147738,29 +156710,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_156setMGR(struct PyPetscPCObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMGR", 0);
- /* "PETSc/PC.pyx":569
+ /* "PETSc/PC.pyx":577
*
- * def setMGR(self, level, Vec r not None):
+ * def setMGR(self, level, Vec r):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( PCMGSetR(self.pc, clevel, r.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(34, 569, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(34, 577, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
- /* "PETSc/PC.pyx":570
- * def setMGR(self, level, Vec r not None):
+ /* "PETSc/PC.pyx":578
+ * def setMGR(self, level, Vec r):
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetR(self.pc, clevel, r.vec) ) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetR(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_r->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(34, 570, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PCMGSetR(__pyx_v_self->pc, __pyx_v_clevel, __pyx_v_r->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(34, 578, __pyx_L1_error)
- /* "PETSc/PC.pyx":568
+ /* "PETSc/PC.pyx":576
* CHKERR( PCMGSetX(self.pc, clevel, x.vec) )
*
- * def setMGR(self, level, Vec r not None): # <<<<<<<<<<<<<<
+ * def setMGR(self, level, Vec r): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( PCMGSetR(self.pc, clevel, r.vec) )
*/
@@ -147777,7 +156749,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2PC_156setMGR(struct PyPetscPCObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":94
+/* "PETSc/KSP.pyx":95
* # --- xxx ---
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -147806,7 +156778,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP___cinit__(struct PyPetscKSPObject *__p
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/KSP.pyx":95
+ /* "PETSc/KSP.pyx":96
*
* def __cinit__(self):
* self.obj = <PetscObject*> &self.ksp # <<<<<<<<<<<<<<
@@ -147815,7 +156787,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP___cinit__(struct PyPetscKSPObject *__p
*/
__pyx_v_self->__pyx_base.obj = ((PetscObject *)(&__pyx_v_self->ksp));
- /* "PETSc/KSP.pyx":96
+ /* "PETSc/KSP.pyx":97
* def __cinit__(self):
* self.obj = <PetscObject*> &self.ksp
* self.ksp = NULL # <<<<<<<<<<<<<<
@@ -147824,7 +156796,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP___cinit__(struct PyPetscKSPObject *__p
*/
__pyx_v_self->ksp = NULL;
- /* "PETSc/KSP.pyx":94
+ /* "PETSc/KSP.pyx":95
* # --- xxx ---
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -147838,7 +156810,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP___cinit__(struct PyPetscKSPObject *__p
return __pyx_r;
}
-/* "PETSc/KSP.pyx":98
+/* "PETSc/KSP.pyx":99
* self.ksp = NULL
*
* def __call__(self, b, x=None): # <<<<<<<<<<<<<<
@@ -147863,7 +156835,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_3__call__(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -147872,6 +156846,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_3__call__(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x);
@@ -147879,11 +156854,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_3__call__(PyObject *__pyx_v_self
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(35, 98, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__call__") < 0)) __PYX_ERR(35, 99, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -147894,7 +156870,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_3__call__(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 98, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("__call__", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 99, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.__call__", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -147916,11 +156892,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
PyObject *__pyx_t_4 = NULL;
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
- Py_ssize_t __pyx_t_7;
+ int __pyx_t_7;
__Pyx_RefNannySetupContext("__call__", 0);
__Pyx_INCREF(__pyx_v_x);
- /* "PETSc/KSP.pyx":99
+ /* "PETSc/KSP.pyx":100
*
* def __call__(self, b, x=None):
* if x is None: # XXX do this better # <<<<<<<<<<<<<<
@@ -147931,17 +156907,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/KSP.pyx":100
+ /* "PETSc/KSP.pyx":101
* def __call__(self, b, x=None):
* if x is None: # XXX do this better
* x = self.getOperators()[0].createVecLeft() # <<<<<<<<<<<<<<
* self.solve(b, x)
* return x
*/
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 100, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 101, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
@@ -147951,21 +156927,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
}
}
if (__pyx_t_6) {
- __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 100, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 101, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
- __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 100, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 101, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 100, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 101, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 100, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_createVecLeft); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 101, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -147975,17 +156951,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
}
}
if (__pyx_t_5) {
- __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 100, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 101, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
} else {
- __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 100, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 101, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_x, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":99
+ /* "PETSc/KSP.pyx":100
*
* def __call__(self, b, x=None):
* if x is None: # XXX do this better # <<<<<<<<<<<<<<
@@ -147994,18 +156970,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
*/
}
- /* "PETSc/KSP.pyx":101
+ /* "PETSc/KSP.pyx":102
* if x is None: # XXX do this better
* x = self.getOperators()[0].createVecLeft()
* self.solve(b, x) # <<<<<<<<<<<<<<
* return x
*
*/
- __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_solve); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 101, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_solve); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 102, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = NULL;
__pyx_t_7 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
@@ -148015,24 +156991,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
__pyx_t_7 = 1;
}
}
- __pyx_t_6 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(35, 101, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- if (__pyx_t_5) {
- __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_b, __pyx_v_x};
+ __pyx_t_3 = __Pyx_PyFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 102, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_4)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_v_b, __pyx_v_x};
+ __pyx_t_3 = __Pyx_PyCFunction_FastCall(__pyx_t_4, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 102, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_GOTREF(__pyx_t_3);
+ } else
+ #endif
+ {
+ __pyx_t_6 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(35, 102, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ if (__pyx_t_5) {
+ __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
+ }
+ __Pyx_INCREF(__pyx_v_b);
+ __Pyx_GIVEREF(__pyx_v_b);
+ PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_7, __pyx_v_b);
+ __Pyx_INCREF(__pyx_v_x);
+ __Pyx_GIVEREF(__pyx_v_x);
+ PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_7, __pyx_v_x);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 102, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- __Pyx_INCREF(__pyx_v_b);
- __Pyx_GIVEREF(__pyx_v_b);
- PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_7, __pyx_v_b);
- __Pyx_INCREF(__pyx_v_x);
- __Pyx_GIVEREF(__pyx_v_x);
- PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_7, __pyx_v_x);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 101, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":102
+ /* "PETSc/KSP.pyx":103
* x = self.getOperators()[0].createVecLeft()
* self.solve(b, x)
* return x # <<<<<<<<<<<<<<
@@ -148044,7 +157038,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
__pyx_r = __pyx_v_x;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":98
+ /* "PETSc/KSP.pyx":99
* self.ksp = NULL
*
* def __call__(self, b, x=None): # <<<<<<<<<<<<<<
@@ -148067,7 +157061,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2__call__(struct PyPetscKSPObjec
return __pyx_r;
}
-/* "PETSc/KSP.pyx":106
+/* "PETSc/KSP.pyx":107
* # --- xxx ---
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -148092,6 +157086,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_5view(PyObject *__pyx_v_self, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -148104,11 +157099,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_5view(PyObject *__pyx_v_self, Py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(35, 106, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(35, 107, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -148117,13 +157113,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_5view(PyObject *__pyx_v_self, Py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 106, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 107, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.view", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(35, 106, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(35, 107, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_4view(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
@@ -148145,7 +157141,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4view(struct PyPetscKSPObject *_
int __pyx_t_4;
__Pyx_RefNannySetupContext("view", 0);
- /* "PETSc/KSP.pyx":107
+ /* "PETSc/KSP.pyx":108
*
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL # <<<<<<<<<<<<<<
@@ -148154,7 +157150,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4view(struct PyPetscKSPObject *_
*/
__pyx_v_vwr = NULL;
- /* "PETSc/KSP.pyx":108
+ /* "PETSc/KSP.pyx":109
* def view(self, Viewer viewer=None):
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr # <<<<<<<<<<<<<<
@@ -148168,16 +157164,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4view(struct PyPetscKSPObject *_
__pyx_v_vwr = __pyx_t_3;
}
- /* "PETSc/KSP.pyx":109
+ /* "PETSc/KSP.pyx":110
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr
* CHKERR( KSPView(self.ksp, vwr) ) # <<<<<<<<<<<<<<
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPView(__pyx_v_self->ksp, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 109, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPView(__pyx_v_self->ksp, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 110, __pyx_L1_error)
- /* "PETSc/KSP.pyx":106
+ /* "PETSc/KSP.pyx":107
* # --- xxx ---
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -148197,7 +157193,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4view(struct PyPetscKSPObject *_
return __pyx_r;
}
-/* "PETSc/KSP.pyx":111
+/* "PETSc/KSP.pyx":112
* CHKERR( KSPView(self.ksp, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -148228,16 +157224,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6destroy(struct PyPetscKSPObject
int __pyx_t_1;
__Pyx_RefNannySetupContext("destroy", 0);
- /* "PETSc/KSP.pyx":112
+ /* "PETSc/KSP.pyx":113
*
* def destroy(self):
* CHKERR( KSPDestroy(&self.ksp) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPDestroy((&__pyx_v_self->ksp))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 112, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPDestroy((&__pyx_v_self->ksp))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 113, __pyx_L1_error)
- /* "PETSc/KSP.pyx":113
+ /* "PETSc/KSP.pyx":114
* def destroy(self):
* CHKERR( KSPDestroy(&self.ksp) )
* return self # <<<<<<<<<<<<<<
@@ -148249,7 +157245,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6destroy(struct PyPetscKSPObject
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":111
+ /* "PETSc/KSP.pyx":112
* CHKERR( KSPView(self.ksp, vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -148267,7 +157263,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6destroy(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":115
+/* "PETSc/KSP.pyx":116
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -148292,6 +157288,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_9create(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -148304,11 +157301,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_9create(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(35, 115, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(35, 116, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -148317,7 +157315,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_9create(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 115, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 116, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -148339,17 +157337,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_8create(struct PyPetscKSPObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("create", 0);
- /* "PETSc/KSP.pyx":116
+ /* "PETSc/KSP.pyx":117
*
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscKSP newksp = NULL
* CHKERR( KSPCreate(ccomm, &newksp) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 116, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 117, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/KSP.pyx":117
+ /* "PETSc/KSP.pyx":118
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscKSP newksp = NULL # <<<<<<<<<<<<<<
@@ -148358,16 +157356,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_8create(struct PyPetscKSPObject
*/
__pyx_v_newksp = NULL;
- /* "PETSc/KSP.pyx":118
+ /* "PETSc/KSP.pyx":119
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscKSP newksp = NULL
* CHKERR( KSPCreate(ccomm, &newksp) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.ksp = newksp
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPCreate(__pyx_v_ccomm, (&__pyx_v_newksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 118, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPCreate(__pyx_v_ccomm, (&__pyx_v_newksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 119, __pyx_L1_error)
- /* "PETSc/KSP.pyx":119
+ /* "PETSc/KSP.pyx":120
* cdef PetscKSP newksp = NULL
* CHKERR( KSPCreate(ccomm, &newksp) )
* PetscCLEAR(self.obj); self.ksp = newksp # <<<<<<<<<<<<<<
@@ -148377,7 +157375,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_8create(struct PyPetscKSPObject
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->ksp = __pyx_v_newksp;
- /* "PETSc/KSP.pyx":120
+ /* "PETSc/KSP.pyx":121
* CHKERR( KSPCreate(ccomm, &newksp) )
* PetscCLEAR(self.obj); self.ksp = newksp
* return self # <<<<<<<<<<<<<<
@@ -148389,7 +157387,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_8create(struct PyPetscKSPObject
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":115
+ /* "PETSc/KSP.pyx":116
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -148407,7 +157405,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_8create(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":122
+/* "PETSc/KSP.pyx":123
* return self
*
* def setType(self, ksp_type): # <<<<<<<<<<<<<<
@@ -148431,6 +157429,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_11setType(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -148441,7 +157440,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_11setType(PyObject *__pyx_v_self
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(35, 122, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(35, 123, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -148452,7 +157451,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_11setType(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 122, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 123, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -148474,7 +157473,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_10setType(struct PyPetscKSPObjec
__Pyx_RefNannySetupContext("setType", 0);
__Pyx_INCREF(__pyx_v_ksp_type);
- /* "PETSc/KSP.pyx":123
+ /* "PETSc/KSP.pyx":124
*
* def setType(self, ksp_type):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -148483,28 +157482,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_10setType(struct PyPetscKSPObjec
*/
__pyx_v_cval = NULL;
- /* "PETSc/KSP.pyx":124
+ /* "PETSc/KSP.pyx":125
* def setType(self, ksp_type):
* cdef const_char *cval = NULL
* ksp_type = str2bytes(ksp_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( KSPSetType(self.ksp, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ksp_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 124, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ksp_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 125, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_ksp_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":125
+ /* "PETSc/KSP.pyx":126
* cdef const_char *cval = NULL
* ksp_type = str2bytes(ksp_type, &cval)
* CHKERR( KSPSetType(self.ksp, cval) ) # <<<<<<<<<<<<<<
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetType(__pyx_v_self->ksp, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 125, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetType(__pyx_v_self->ksp, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 126, __pyx_L1_error)
- /* "PETSc/KSP.pyx":122
+ /* "PETSc/KSP.pyx":123
* return self
*
* def setType(self, ksp_type): # <<<<<<<<<<<<<<
@@ -148526,7 +157525,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_10setType(struct PyPetscKSPObjec
return __pyx_r;
}
-/* "PETSc/KSP.pyx":127
+/* "PETSc/KSP.pyx":128
* CHKERR( KSPSetType(self.ksp, cval) )
*
* def getType(self): # <<<<<<<<<<<<<<
@@ -148559,7 +157558,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_12getType(struct PyPetscKSPObjec
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getType", 0);
- /* "PETSc/KSP.pyx":128
+ /* "PETSc/KSP.pyx":129
*
* def getType(self):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -148568,16 +157567,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_12getType(struct PyPetscKSPObjec
*/
__pyx_v_cval = NULL;
- /* "PETSc/KSP.pyx":129
+ /* "PETSc/KSP.pyx":130
* def getType(self):
* cdef const_char *cval = NULL
* CHKERR( KSPGetType(self.ksp, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetType(__pyx_v_self->ksp, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 129, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetType(__pyx_v_self->ksp, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 130, __pyx_L1_error)
- /* "PETSc/KSP.pyx":130
+ /* "PETSc/KSP.pyx":131
* cdef const_char *cval = NULL
* CHKERR( KSPGetType(self.ksp, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -148585,13 +157584,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_12getType(struct PyPetscKSPObjec
* def setOptionsPrefix(self, prefix):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 130, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 131, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":127
+ /* "PETSc/KSP.pyx":128
* CHKERR( KSPSetType(self.ksp, cval) )
*
* def getType(self): # <<<<<<<<<<<<<<
@@ -148610,7 +157609,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_12getType(struct PyPetscKSPObjec
return __pyx_r;
}
-/* "PETSc/KSP.pyx":132
+/* "PETSc/KSP.pyx":133
* return bytes2str(cval)
*
* def setOptionsPrefix(self, prefix): # <<<<<<<<<<<<<<
@@ -148634,6 +157633,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_15setOptionsPrefix(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -148644,7 +157644,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_15setOptionsPrefix(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOptionsPrefix") < 0)) __PYX_ERR(35, 132, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOptionsPrefix") < 0)) __PYX_ERR(35, 133, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -148655,7 +157655,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_15setOptionsPrefix(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setOptionsPrefix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 132, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setOptionsPrefix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 133, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setOptionsPrefix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -148677,7 +157677,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_14setOptionsPrefix(struct PyPets
__Pyx_RefNannySetupContext("setOptionsPrefix", 0);
__Pyx_INCREF(__pyx_v_prefix);
- /* "PETSc/KSP.pyx":133
+ /* "PETSc/KSP.pyx":134
*
* def setOptionsPrefix(self, prefix):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -148686,28 +157686,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_14setOptionsPrefix(struct PyPets
*/
__pyx_v_cval = NULL;
- /* "PETSc/KSP.pyx":134
+ /* "PETSc/KSP.pyx":135
* def setOptionsPrefix(self, prefix):
* cdef const_char *cval = NULL
* prefix = str2bytes(prefix, &cval) # <<<<<<<<<<<<<<
* CHKERR( KSPSetOptionsPrefix(self.ksp, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_prefix, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 134, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_prefix, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 135, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_prefix, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":135
+ /* "PETSc/KSP.pyx":136
* cdef const_char *cval = NULL
* prefix = str2bytes(prefix, &cval)
* CHKERR( KSPSetOptionsPrefix(self.ksp, cval) ) # <<<<<<<<<<<<<<
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetOptionsPrefix(__pyx_v_self->ksp, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 135, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetOptionsPrefix(__pyx_v_self->ksp, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 136, __pyx_L1_error)
- /* "PETSc/KSP.pyx":132
+ /* "PETSc/KSP.pyx":133
* return bytes2str(cval)
*
* def setOptionsPrefix(self, prefix): # <<<<<<<<<<<<<<
@@ -148729,7 +157729,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_14setOptionsPrefix(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":137
+/* "PETSc/KSP.pyx":138
* CHKERR( KSPSetOptionsPrefix(self.ksp, cval) )
*
* def getOptionsPrefix(self): # <<<<<<<<<<<<<<
@@ -148762,7 +157762,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_16getOptionsPrefix(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getOptionsPrefix", 0);
- /* "PETSc/KSP.pyx":138
+ /* "PETSc/KSP.pyx":139
*
* def getOptionsPrefix(self):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -148771,16 +157771,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_16getOptionsPrefix(struct PyPets
*/
__pyx_v_cval = NULL;
- /* "PETSc/KSP.pyx":139
+ /* "PETSc/KSP.pyx":140
* def getOptionsPrefix(self):
* cdef const_char *cval = NULL
* CHKERR( KSPGetOptionsPrefix(self.ksp, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetOptionsPrefix(__pyx_v_self->ksp, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 139, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetOptionsPrefix(__pyx_v_self->ksp, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 140, __pyx_L1_error)
- /* "PETSc/KSP.pyx":140
+ /* "PETSc/KSP.pyx":141
* cdef const_char *cval = NULL
* CHKERR( KSPGetOptionsPrefix(self.ksp, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -148788,13 +157788,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_16getOptionsPrefix(struct PyPets
* def setFromOptions(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 140, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 141, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":137
+ /* "PETSc/KSP.pyx":138
* CHKERR( KSPSetOptionsPrefix(self.ksp, cval) )
*
* def getOptionsPrefix(self): # <<<<<<<<<<<<<<
@@ -148813,7 +157813,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_16getOptionsPrefix(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":142
+/* "PETSc/KSP.pyx":143
* return bytes2str(cval)
*
* def setFromOptions(self): # <<<<<<<<<<<<<<
@@ -148844,16 +157844,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_18setFromOptions(struct PyPetscK
int __pyx_t_1;
__Pyx_RefNannySetupContext("setFromOptions", 0);
- /* "PETSc/KSP.pyx":143
+ /* "PETSc/KSP.pyx":144
*
* def setFromOptions(self):
* CHKERR( KSPSetFromOptions(self.ksp) ) # <<<<<<<<<<<<<<
*
* # --- application context ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetFromOptions(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 143, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetFromOptions(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 144, __pyx_L1_error)
- /* "PETSc/KSP.pyx":142
+ /* "PETSc/KSP.pyx":143
* return bytes2str(cval)
*
* def setFromOptions(self): # <<<<<<<<<<<<<<
@@ -148873,7 +157873,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_18setFromOptions(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":147
+/* "PETSc/KSP.pyx":148
* # --- application context ---
*
* def setAppCtx(self, appctx): # <<<<<<<<<<<<<<
@@ -148897,6 +157897,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_21setAppCtx(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -148907,7 +157908,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_21setAppCtx(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAppCtx") < 0)) __PYX_ERR(35, 147, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAppCtx") < 0)) __PYX_ERR(35, 148, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -148918,7 +157919,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_21setAppCtx(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setAppCtx", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 147, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAppCtx", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 148, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setAppCtx", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -148937,18 +157938,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_20setAppCtx(struct PyPetscKSPObj
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("setAppCtx", 0);
- /* "PETSc/KSP.pyx":148
+ /* "PETSc/KSP.pyx":149
*
* def setAppCtx(self, appctx):
* self.set_attr('__appctx__', appctx) # <<<<<<<<<<<<<<
*
* def getAppCtx(self):
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__"), __pyx_v_appctx); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 148, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__"), __pyx_v_appctx); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 149, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":147
+ /* "PETSc/KSP.pyx":148
* # --- application context ---
*
* def setAppCtx(self, appctx): # <<<<<<<<<<<<<<
@@ -148969,7 +157970,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_20setAppCtx(struct PyPetscKSPObj
return __pyx_r;
}
-/* "PETSc/KSP.pyx":150
+/* "PETSc/KSP.pyx":151
* self.set_attr('__appctx__', appctx)
*
* def getAppCtx(self): # <<<<<<<<<<<<<<
@@ -149000,7 +158001,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_22getAppCtx(struct PyPetscKSPObj
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getAppCtx", 0);
- /* "PETSc/KSP.pyx":151
+ /* "PETSc/KSP.pyx":152
*
* def getAppCtx(self):
* return self.get_attr('__appctx__') # <<<<<<<<<<<<<<
@@ -149008,13 +158009,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_22getAppCtx(struct PyPetscKSPObj
* # --- discretization space ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 151, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 152, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":150
+ /* "PETSc/KSP.pyx":151
* self.set_attr('__appctx__', appctx)
*
* def getAppCtx(self): # <<<<<<<<<<<<<<
@@ -149033,7 +158034,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_22getAppCtx(struct PyPetscKSPObj
return __pyx_r;
}
-/* "PETSc/KSP.pyx":155
+/* "PETSc/KSP.pyx":156
* # --- discretization space ---
*
* def getDM(self): # <<<<<<<<<<<<<<
@@ -149068,7 +158069,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_24getDM(struct PyPetscKSPObject
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getDM", 0);
- /* "PETSc/KSP.pyx":156
+ /* "PETSc/KSP.pyx":157
*
* def getDM(self):
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -149077,32 +158078,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_24getDM(struct PyPetscKSPObject
*/
__pyx_v_newdm = NULL;
- /* "PETSc/KSP.pyx":157
+ /* "PETSc/KSP.pyx":158
* def getDM(self):
* cdef PetscDM newdm = NULL
* CHKERR( KSPGetDM(self.ksp, &newdm) ) # <<<<<<<<<<<<<<
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetDM(__pyx_v_self->ksp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 157, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetDM(__pyx_v_self->ksp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 158, __pyx_L1_error)
- /* "PETSc/KSP.pyx":158
+ /* "PETSc/KSP.pyx":159
* cdef PetscDM newdm = NULL
* CHKERR( KSPGetDM(self.ksp, &newdm) )
* cdef DM dm = subtype_DM(newdm)() # <<<<<<<<<<<<<<
* dm.dm = newdm
* PetscINCREF(dm.obj)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 158, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 158, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(35, 158, __pyx_L1_error)
+ if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(35, 159, __pyx_L1_error)
__pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":159
+ /* "PETSc/KSP.pyx":160
* CHKERR( KSPGetDM(self.ksp, &newdm) )
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm # <<<<<<<<<<<<<<
@@ -149111,7 +158112,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_24getDM(struct PyPetscKSPObject
*/
__pyx_v_dm->dm = __pyx_v_newdm;
- /* "PETSc/KSP.pyx":160
+ /* "PETSc/KSP.pyx":161
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
* PetscINCREF(dm.obj) # <<<<<<<<<<<<<<
@@ -149120,19 +158121,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_24getDM(struct PyPetscKSPObject
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_dm->__pyx_base.obj);
- /* "PETSc/KSP.pyx":161
+ /* "PETSc/KSP.pyx":162
* dm.dm = newdm
* PetscINCREF(dm.obj)
* return dm # <<<<<<<<<<<<<<
*
- * def setDM(self, DM dm not None):
+ * def setDM(self, DM dm):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_dm));
__pyx_r = ((PyObject *)__pyx_v_dm);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":155
+ /* "PETSc/KSP.pyx":156
* # --- discretization space ---
*
* def getDM(self): # <<<<<<<<<<<<<<
@@ -149153,10 +158154,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_24getDM(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":163
+/* "PETSc/KSP.pyx":164
* return dm
*
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
* CHKERR( KSPSetDM(self.ksp, dm.dm) )
*
*/
@@ -149177,6 +158178,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_27setDM(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -149187,7 +158189,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_27setDM(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDM") < 0)) __PYX_ERR(35, 163, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDM") < 0)) __PYX_ERR(35, 164, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -149198,13 +158200,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_27setDM(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 163, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 164, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(35, 163, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(35, 164, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_26setDM(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_dm);
/* function exit code */
@@ -149222,19 +158224,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_26setDM(struct PyPetscKSPObject
int __pyx_t_1;
__Pyx_RefNannySetupContext("setDM", 0);
- /* "PETSc/KSP.pyx":164
+ /* "PETSc/KSP.pyx":165
*
- * def setDM(self, DM dm not None):
+ * def setDM(self, DM dm):
* CHKERR( KSPSetDM(self.ksp, dm.dm) ) # <<<<<<<<<<<<<<
*
* def setDMActive(self, bint flag):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetDM(__pyx_v_self->ksp, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 164, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetDM(__pyx_v_self->ksp, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 165, __pyx_L1_error)
- /* "PETSc/KSP.pyx":163
+ /* "PETSc/KSP.pyx":164
* return dm
*
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
* CHKERR( KSPSetDM(self.ksp, dm.dm) )
*
*/
@@ -149251,7 +158253,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_26setDM(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":166
+/* "PETSc/KSP.pyx":167
* CHKERR( KSPSetDM(self.ksp, dm.dm) )
*
* def setDMActive(self, bint flag): # <<<<<<<<<<<<<<
@@ -149275,6 +158277,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_29setDMActive(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -149285,18 +158288,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_29setDMActive(PyObject *__pyx_v_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDMActive") < 0)) __PYX_ERR(35, 166, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDMActive") < 0)) __PYX_ERR(35, 167, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
- __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 166, __pyx_L3_error)
+ __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 167, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDMActive", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 166, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDMActive", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 167, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setDMActive", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -149317,7 +158320,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_28setDMActive(struct PyPetscKSPO
int __pyx_t_2;
__Pyx_RefNannySetupContext("setDMActive", 0);
- /* "PETSc/KSP.pyx":167
+ /* "PETSc/KSP.pyx":168
*
* def setDMActive(self, bint flag):
* cdef PetscBool cflag = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -149326,7 +158329,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_28setDMActive(struct PyPetscKSPO
*/
__pyx_v_cflag = PETSC_FALSE;
- /* "PETSc/KSP.pyx":168
+ /* "PETSc/KSP.pyx":169
* def setDMActive(self, bint flag):
* cdef PetscBool cflag = PETSC_FALSE
* if flag: cflag = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -149338,16 +158341,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_28setDMActive(struct PyPetscKSPO
__pyx_v_cflag = PETSC_TRUE;
}
- /* "PETSc/KSP.pyx":169
+ /* "PETSc/KSP.pyx":170
* cdef PetscBool cflag = PETSC_FALSE
* if flag: cflag = PETSC_TRUE
* CHKERR( KSPSetDMActive(self.ksp, cflag) ) # <<<<<<<<<<<<<<
*
* # --- operators and preconditioner ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetDMActive(__pyx_v_self->ksp, __pyx_v_cflag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 169, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetDMActive(__pyx_v_self->ksp, __pyx_v_cflag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 170, __pyx_L1_error)
- /* "PETSc/KSP.pyx":166
+ /* "PETSc/KSP.pyx":167
* CHKERR( KSPSetDM(self.ksp, dm.dm) )
*
* def setDMActive(self, bint flag): # <<<<<<<<<<<<<<
@@ -149367,7 +158370,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_28setDMActive(struct PyPetscKSPO
return __pyx_r;
}
-/* "PETSc/KSP.pyx":173
+/* "PETSc/KSP.pyx":174
* # --- operators and preconditioner ---
*
* def setComputeRHS(self, rhs, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -149395,8 +158398,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_31setComputeRHS(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -149405,11 +158411,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_31setComputeRHS(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rhs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -149417,12 +158425,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_31setComputeRHS(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeRHS") < 0)) __PYX_ERR(35, 173, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeRHS") < 0)) __PYX_ERR(35, 174, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -149434,7 +158444,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_31setComputeRHS(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setComputeRHS", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 173, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setComputeRHS", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 174, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setComputeRHS", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -149459,7 +158469,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_30setComputeRHS(struct PyPetscKS
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/KSP.pyx":174
+ /* "PETSc/KSP.pyx":175
*
* def setComputeRHS(self, rhs, args=None, kargs=None):
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -149473,7 +158483,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_30setComputeRHS(struct PyPetscKS
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/KSP.pyx":175
+ /* "PETSc/KSP.pyx":176
* def setComputeRHS(self, rhs, args=None, kargs=None):
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -149483,20 +158493,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_30setComputeRHS(struct PyPetscKS
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 175, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 176, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/KSP.pyx":176
+ /* "PETSc/KSP.pyx":177
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (rhs, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__rhs__', context)
* CHKERR( KSPSetComputeRHS(self.ksp, KSP_ComputeRHS, <void*>context) )
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 176, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 177, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_rhs);
__Pyx_GIVEREF(__pyx_v_rhs);
@@ -149510,27 +158520,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_30setComputeRHS(struct PyPetscKS
__pyx_v_context = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":177
+ /* "PETSc/KSP.pyx":178
* if kargs is None: kargs = {}
* context = (rhs, args, kargs)
* self.set_attr('__rhs__', context) # <<<<<<<<<<<<<<
* CHKERR( KSPSetComputeRHS(self.ksp, KSP_ComputeRHS, <void*>context) )
*
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhs__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 177, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhs__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 178, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":178
+ /* "PETSc/KSP.pyx":179
* context = (rhs, args, kargs)
* self.set_attr('__rhs__', context)
* CHKERR( KSPSetComputeRHS(self.ksp, KSP_ComputeRHS, <void*>context) ) # <<<<<<<<<<<<<<
*
* def setComputeOperators(self, operators, args=None, kargs=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeRHS(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 178, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeRHS(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_ComputeRHS, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 179, __pyx_L1_error)
- /* "PETSc/KSP.pyx":173
+ /* "PETSc/KSP.pyx":174
* # --- operators and preconditioner ---
*
* def setComputeRHS(self, rhs, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -149554,7 +158564,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_30setComputeRHS(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":180
+/* "PETSc/KSP.pyx":181
* CHKERR( KSPSetComputeRHS(self.ksp, KSP_ComputeRHS, <void*>context) )
*
* def setComputeOperators(self, operators, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -149582,8 +158592,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_33setComputeOperators(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -149592,11 +158605,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_33setComputeOperators(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_operators)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -149604,12 +158619,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_33setComputeOperators(PyObject *
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeOperators") < 0)) __PYX_ERR(35, 180, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeOperators") < 0)) __PYX_ERR(35, 181, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -149621,7 +158638,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_33setComputeOperators(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setComputeOperators", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 180, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setComputeOperators", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 181, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setComputeOperators", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -149646,7 +158663,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_32setComputeOperators(struct PyP
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/KSP.pyx":181
+ /* "PETSc/KSP.pyx":182
*
* def setComputeOperators(self, operators, args=None, kargs=None):
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -149660,7 +158677,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_32setComputeOperators(struct PyP
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/KSP.pyx":182
+ /* "PETSc/KSP.pyx":183
* def setComputeOperators(self, operators, args=None, kargs=None):
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -149670,20 +158687,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_32setComputeOperators(struct PyP
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 182, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 183, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/KSP.pyx":183
+ /* "PETSc/KSP.pyx":184
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (operators, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__operators__', context)
* CHKERR( KSPSetComputeOperators(self.ksp, KSP_ComputeOps, <void*>context) )
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 183, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_operators);
__Pyx_GIVEREF(__pyx_v_operators);
@@ -149697,27 +158714,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_32setComputeOperators(struct PyP
__pyx_v_context = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":184
+ /* "PETSc/KSP.pyx":185
* if kargs is None: kargs = {}
* context = (operators, args, kargs)
* self.set_attr('__operators__', context) # <<<<<<<<<<<<<<
* CHKERR( KSPSetComputeOperators(self.ksp, KSP_ComputeOps, <void*>context) )
*
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__operators__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 184, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__operators__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":185
+ /* "PETSc/KSP.pyx":186
* context = (operators, args, kargs)
* self.set_attr('__operators__', context)
* CHKERR( KSPSetComputeOperators(self.ksp, KSP_ComputeOps, <void*>context) ) # <<<<<<<<<<<<<<
*
* def setOperators(self, Mat A=None, Mat P=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeOperators(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 185, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeOperators(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 186, __pyx_L1_error)
- /* "PETSc/KSP.pyx":180
+ /* "PETSc/KSP.pyx":181
* CHKERR( KSPSetComputeRHS(self.ksp, KSP_ComputeRHS, <void*>context) )
*
* def setComputeOperators(self, operators, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -149741,7 +158758,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_32setComputeOperators(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":187
+/* "PETSc/KSP.pyx":188
* CHKERR( KSPSetComputeOperators(self.ksp, KSP_ComputeOps, <void*>context) )
*
* def setOperators(self, Mat A=None, Mat P=None): # <<<<<<<<<<<<<<
@@ -149768,7 +158785,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_35setOperators(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -149779,6 +158798,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_35setOperators(PyObject *__pyx_v
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_A);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
@@ -149786,12 +158806,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_35setOperators(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOperators") < 0)) __PYX_ERR(35, 187, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOperators") < 0)) __PYX_ERR(35, 188, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -149801,14 +158823,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_35setOperators(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setOperators", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 187, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setOperators", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 188, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setOperators", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "A", 0))) __PYX_ERR(35, 187, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(35, 187, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "A", 0))) __PYX_ERR(35, 188, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(35, 188, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_34setOperators(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_A, __pyx_v_P);
/* function exit code */
@@ -149831,7 +158853,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_34setOperators(struct PyPetscKSP
int __pyx_t_4;
__Pyx_RefNannySetupContext("setOperators", 0);
- /* "PETSc/KSP.pyx":188
+ /* "PETSc/KSP.pyx":189
*
* def setOperators(self, Mat A=None, Mat P=None):
* cdef PetscMat amat=NULL # <<<<<<<<<<<<<<
@@ -149840,7 +158862,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_34setOperators(struct PyPetscKSP
*/
__pyx_v_amat = NULL;
- /* "PETSc/KSP.pyx":189
+ /* "PETSc/KSP.pyx":190
* def setOperators(self, Mat A=None, Mat P=None):
* cdef PetscMat amat=NULL
* if A is not None: amat = A.mat # <<<<<<<<<<<<<<
@@ -149854,7 +158876,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_34setOperators(struct PyPetscKSP
__pyx_v_amat = __pyx_t_3;
}
- /* "PETSc/KSP.pyx":190
+ /* "PETSc/KSP.pyx":191
* cdef PetscMat amat=NULL
* if A is not None: amat = A.mat
* cdef PetscMat pmat=amat # <<<<<<<<<<<<<<
@@ -149863,7 +158885,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_34setOperators(struct PyPetscKSP
*/
__pyx_v_pmat = __pyx_v_amat;
- /* "PETSc/KSP.pyx":191
+ /* "PETSc/KSP.pyx":192
* if A is not None: amat = A.mat
* cdef PetscMat pmat=amat
* if P is not None: pmat = P.mat # <<<<<<<<<<<<<<
@@ -149877,16 +158899,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_34setOperators(struct PyPetscKSP
__pyx_v_pmat = __pyx_t_3;
}
- /* "PETSc/KSP.pyx":192
+ /* "PETSc/KSP.pyx":193
* cdef PetscMat pmat=amat
* if P is not None: pmat = P.mat
* CHKERR( KSPSetOperators(self.ksp, amat, pmat) ) # <<<<<<<<<<<<<<
*
* def getOperators(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetOperators(__pyx_v_self->ksp, __pyx_v_amat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 192, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetOperators(__pyx_v_self->ksp, __pyx_v_amat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 193, __pyx_L1_error)
- /* "PETSc/KSP.pyx":187
+ /* "PETSc/KSP.pyx":188
* CHKERR( KSPSetComputeOperators(self.ksp, KSP_ComputeOps, <void*>context) )
*
* def setOperators(self, Mat A=None, Mat P=None): # <<<<<<<<<<<<<<
@@ -149906,7 +158928,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_34setOperators(struct PyPetscKSP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":194
+/* "PETSc/KSP.pyx":195
* CHKERR( KSPSetOperators(self.ksp, amat, pmat) )
*
* def getOperators(self): # <<<<<<<<<<<<<<
@@ -149940,32 +158962,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_36getOperators(struct PyPetscKSP
int __pyx_t_2;
__Pyx_RefNannySetupContext("getOperators", 0);
- /* "PETSc/KSP.pyx":195
+ /* "PETSc/KSP.pyx":196
*
* def getOperators(self):
* cdef Mat A = Mat(), P = Mat() # <<<<<<<<<<<<<<
* CHKERR( KSPGetOperators(self.ksp, &A.mat, &P.mat) )
* PetscINCREF(A.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 195, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_A = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 195, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_P = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":196
+ /* "PETSc/KSP.pyx":197
* def getOperators(self):
* cdef Mat A = Mat(), P = Mat()
* CHKERR( KSPGetOperators(self.ksp, &A.mat, &P.mat) ) # <<<<<<<<<<<<<<
* PetscINCREF(A.obj)
* PetscINCREF(P.obj)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetOperators(__pyx_v_self->ksp, (&__pyx_v_A->mat), (&__pyx_v_P->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 196, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetOperators(__pyx_v_self->ksp, (&__pyx_v_A->mat), (&__pyx_v_P->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 197, __pyx_L1_error)
- /* "PETSc/KSP.pyx":197
+ /* "PETSc/KSP.pyx":198
* cdef Mat A = Mat(), P = Mat()
* CHKERR( KSPGetOperators(self.ksp, &A.mat, &P.mat) )
* PetscINCREF(A.obj) # <<<<<<<<<<<<<<
@@ -149974,7 +158996,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_36getOperators(struct PyPetscKSP
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_A->__pyx_base.obj);
- /* "PETSc/KSP.pyx":198
+ /* "PETSc/KSP.pyx":199
* CHKERR( KSPGetOperators(self.ksp, &A.mat, &P.mat) )
* PetscINCREF(A.obj)
* PetscINCREF(P.obj) # <<<<<<<<<<<<<<
@@ -149983,15 +159005,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_36getOperators(struct PyPetscKSP
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_P->__pyx_base.obj);
- /* "PETSc/KSP.pyx":199
+ /* "PETSc/KSP.pyx":200
* PetscINCREF(A.obj)
* PetscINCREF(P.obj)
* return (A, P) # <<<<<<<<<<<<<<
*
- * def setPC(self, PC pc not None):
+ * def setPC(self, PC pc):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 199, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 200, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_A));
__Pyx_GIVEREF(((PyObject *)__pyx_v_A));
@@ -150003,7 +159025,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_36getOperators(struct PyPetscKSP
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":194
+ /* "PETSc/KSP.pyx":195
* CHKERR( KSPSetOperators(self.ksp, amat, pmat) )
*
* def getOperators(self): # <<<<<<<<<<<<<<
@@ -150024,10 +159046,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_36getOperators(struct PyPetscKSP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":201
+/* "PETSc/KSP.pyx":202
* return (A, P)
*
- * def setPC(self, PC pc not None): # <<<<<<<<<<<<<<
+ * def setPC(self, PC pc): # <<<<<<<<<<<<<<
* CHKERR( KSPSetPC(self.ksp, pc.pc) )
*
*/
@@ -150048,6 +159070,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_39setPC(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -150058,7 +159081,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_39setPC(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPC") < 0)) __PYX_ERR(35, 201, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPC") < 0)) __PYX_ERR(35, 202, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -150069,13 +159092,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_39setPC(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPC", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 201, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPC", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 202, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setPC", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pc), __pyx_ptype_8petsc4py_5PETSc_PC, 0, "pc", 0))) __PYX_ERR(35, 201, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pc), __pyx_ptype_8petsc4py_5PETSc_PC, 0, "pc", 0))) __PYX_ERR(35, 202, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_38setPC(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_pc);
/* function exit code */
@@ -150093,19 +159116,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_38setPC(struct PyPetscKSPObject
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPC", 0);
- /* "PETSc/KSP.pyx":202
+ /* "PETSc/KSP.pyx":203
*
- * def setPC(self, PC pc not None):
+ * def setPC(self, PC pc):
* CHKERR( KSPSetPC(self.ksp, pc.pc) ) # <<<<<<<<<<<<<<
*
* def getPC(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetPC(__pyx_v_self->ksp, __pyx_v_pc->pc)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 202, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetPC(__pyx_v_self->ksp, __pyx_v_pc->pc)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 203, __pyx_L1_error)
- /* "PETSc/KSP.pyx":201
+ /* "PETSc/KSP.pyx":202
* return (A, P)
*
- * def setPC(self, PC pc not None): # <<<<<<<<<<<<<<
+ * def setPC(self, PC pc): # <<<<<<<<<<<<<<
* CHKERR( KSPSetPC(self.ksp, pc.pc) )
*
*/
@@ -150122,7 +159145,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_38setPC(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":204
+/* "PETSc/KSP.pyx":205
* CHKERR( KSPSetPC(self.ksp, pc.pc) )
*
* def getPC(self): # <<<<<<<<<<<<<<
@@ -150155,28 +159178,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_40getPC(struct PyPetscKSPObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("getPC", 0);
- /* "PETSc/KSP.pyx":205
+ /* "PETSc/KSP.pyx":206
*
* def getPC(self):
* cdef PC pc = PC() # <<<<<<<<<<<<<<
* CHKERR( KSPGetPC(self.ksp, &pc.pc) )
* PetscINCREF(pc.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_PC), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 205, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_PC), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_pc = ((struct PyPetscPCObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":206
+ /* "PETSc/KSP.pyx":207
* def getPC(self):
* cdef PC pc = PC()
* CHKERR( KSPGetPC(self.ksp, &pc.pc) ) # <<<<<<<<<<<<<<
* PetscINCREF(pc.obj)
* return pc
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetPC(__pyx_v_self->ksp, (&__pyx_v_pc->pc))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 206, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetPC(__pyx_v_self->ksp, (&__pyx_v_pc->pc))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 207, __pyx_L1_error)
- /* "PETSc/KSP.pyx":207
+ /* "PETSc/KSP.pyx":208
* cdef PC pc = PC()
* CHKERR( KSPGetPC(self.ksp, &pc.pc) )
* PetscINCREF(pc.obj) # <<<<<<<<<<<<<<
@@ -150185,7 +159208,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_40getPC(struct PyPetscKSPObject
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_pc->__pyx_base.obj);
- /* "PETSc/KSP.pyx":208
+ /* "PETSc/KSP.pyx":209
* CHKERR( KSPGetPC(self.ksp, &pc.pc) )
* PetscINCREF(pc.obj)
* return pc # <<<<<<<<<<<<<<
@@ -150197,7 +159220,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_40getPC(struct PyPetscKSPObject
__pyx_r = ((PyObject *)__pyx_v_pc);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":204
+ /* "PETSc/KSP.pyx":205
* CHKERR( KSPSetPC(self.ksp, pc.pc) )
*
* def getPC(self): # <<<<<<<<<<<<<<
@@ -150217,7 +159240,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_40getPC(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":212
+/* "PETSc/KSP.pyx":213
* # --- tolerances and convergence ---
*
* def setTolerances(self, rtol=None, atol=None, divtol=None, max_it=None): # <<<<<<<<<<<<<<
@@ -150248,9 +159271,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_43setTolerances(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -150261,16 +159288,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_43setTolerances(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rtol);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_atol);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_divtol);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_it);
@@ -150278,14 +159308,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_43setTolerances(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTolerances") < 0)) __PYX_ERR(35, 212, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTolerances") < 0)) __PYX_ERR(35, 213, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -150297,7 +159331,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_43setTolerances(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTolerances", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 212, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTolerances", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 213, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setTolerances", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -150324,7 +159358,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
int __pyx_t_5;
__Pyx_RefNannySetupContext("setTolerances", 0);
- /* "PETSc/KSP.pyx":214
+ /* "PETSc/KSP.pyx":215
* def setTolerances(self, rtol=None, atol=None, divtol=None, max_it=None):
* cdef PetscReal crtol, catol, cdivtol
* crtol = catol = cdivtol = PETSC_DEFAULT; # <<<<<<<<<<<<<<
@@ -150335,7 +159369,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
__pyx_v_catol = PETSC_DEFAULT;
__pyx_v_cdivtol = PETSC_DEFAULT;
- /* "PETSc/KSP.pyx":215
+ /* "PETSc/KSP.pyx":216
* cdef PetscReal crtol, catol, cdivtol
* crtol = catol = cdivtol = PETSC_DEFAULT;
* if rtol is not None: crtol = asReal(rtol) # <<<<<<<<<<<<<<
@@ -150345,11 +159379,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
__pyx_t_1 = (__pyx_v_rtol != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(35, 215, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(35, 216, __pyx_L1_error)
__pyx_v_crtol = __pyx_t_3;
}
- /* "PETSc/KSP.pyx":216
+ /* "PETSc/KSP.pyx":217
* crtol = catol = cdivtol = PETSC_DEFAULT;
* if rtol is not None: crtol = asReal(rtol)
* if atol is not None: catol = asReal(atol) # <<<<<<<<<<<<<<
@@ -150359,11 +159393,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
__pyx_t_2 = (__pyx_v_atol != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(35, 216, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(35, 217, __pyx_L1_error)
__pyx_v_catol = __pyx_t_3;
}
- /* "PETSc/KSP.pyx":217
+ /* "PETSc/KSP.pyx":218
* if rtol is not None: crtol = asReal(rtol)
* if atol is not None: catol = asReal(atol)
* if divtol is not None: cdivtol = asReal(divtol) # <<<<<<<<<<<<<<
@@ -150373,11 +159407,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
__pyx_t_1 = (__pyx_v_divtol != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_divtol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(35, 217, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_divtol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(35, 218, __pyx_L1_error)
__pyx_v_cdivtol = __pyx_t_3;
}
- /* "PETSc/KSP.pyx":218
+ /* "PETSc/KSP.pyx":219
* if atol is not None: catol = asReal(atol)
* if divtol is not None: cdivtol = asReal(divtol)
* cdef PetscInt cmaxits = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -150386,7 +159420,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
*/
__pyx_v_cmaxits = PETSC_DEFAULT;
- /* "PETSc/KSP.pyx":219
+ /* "PETSc/KSP.pyx":220
* if divtol is not None: cdivtol = asReal(divtol)
* cdef PetscInt cmaxits = PETSC_DEFAULT
* if max_it is not None: cmaxits = asInt(max_it) # <<<<<<<<<<<<<<
@@ -150396,20 +159430,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
__pyx_t_2 = (__pyx_v_max_it != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_it); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(35, 219, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_it); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 220, __pyx_L1_error)
__pyx_v_cmaxits = __pyx_t_4;
}
- /* "PETSc/KSP.pyx":220
+ /* "PETSc/KSP.pyx":221
* cdef PetscInt cmaxits = PETSC_DEFAULT
* if max_it is not None: cmaxits = asInt(max_it)
* CHKERR( KSPSetTolerances(self.ksp, crtol, catol, cdivtol, cmaxits) ) # <<<<<<<<<<<<<<
*
* def getTolerances(self):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetTolerances(__pyx_v_self->ksp, __pyx_v_crtol, __pyx_v_catol, __pyx_v_cdivtol, __pyx_v_cmaxits)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(35, 220, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetTolerances(__pyx_v_self->ksp, __pyx_v_crtol, __pyx_v_catol, __pyx_v_cdivtol, __pyx_v_cmaxits)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(35, 221, __pyx_L1_error)
- /* "PETSc/KSP.pyx":212
+ /* "PETSc/KSP.pyx":213
* # --- tolerances and convergence ---
*
* def setTolerances(self, rtol=None, atol=None, divtol=None, max_it=None): # <<<<<<<<<<<<<<
@@ -150429,7 +159463,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_42setTolerances(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":222
+/* "PETSc/KSP.pyx":223
* CHKERR( KSPSetTolerances(self.ksp, crtol, catol, cdivtol, cmaxits) )
*
* def getTolerances(self): # <<<<<<<<<<<<<<
@@ -150469,7 +159503,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_44getTolerances(struct PyPetscKS
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("getTolerances", 0);
- /* "PETSc/KSP.pyx":223
+ /* "PETSc/KSP.pyx":224
*
* def getTolerances(self):
* cdef PetscReal crtol=0, catol=0, cdivtol=0 # <<<<<<<<<<<<<<
@@ -150480,7 +159514,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_44getTolerances(struct PyPetscKS
__pyx_v_catol = 0.0;
__pyx_v_cdivtol = 0.0;
- /* "PETSc/KSP.pyx":224
+ /* "PETSc/KSP.pyx":225
* def getTolerances(self):
* cdef PetscReal crtol=0, catol=0, cdivtol=0
* cdef PetscInt cmaxits=0 # <<<<<<<<<<<<<<
@@ -150489,16 +159523,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_44getTolerances(struct PyPetscKS
*/
__pyx_v_cmaxits = 0;
- /* "PETSc/KSP.pyx":225
+ /* "PETSc/KSP.pyx":226
* cdef PetscReal crtol=0, catol=0, cdivtol=0
* cdef PetscInt cmaxits=0
* CHKERR( KSPGetTolerances(self.ksp, &crtol, &catol, &cdivtol, &cmaxits) ) # <<<<<<<<<<<<<<
* return (toReal(crtol), toReal(catol), toReal(cdivtol), toInt(cmaxits))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetTolerances(__pyx_v_self->ksp, (&__pyx_v_crtol), (&__pyx_v_catol), (&__pyx_v_cdivtol), (&__pyx_v_cmaxits))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 225, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetTolerances(__pyx_v_self->ksp, (&__pyx_v_crtol), (&__pyx_v_catol), (&__pyx_v_cdivtol), (&__pyx_v_cmaxits))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 226, __pyx_L1_error)
- /* "PETSc/KSP.pyx":226
+ /* "PETSc/KSP.pyx":227
* cdef PetscInt cmaxits=0
* CHKERR( KSPGetTolerances(self.ksp, &crtol, &catol, &cdivtol, &cmaxits) )
* return (toReal(crtol), toReal(catol), toReal(cdivtol), toInt(cmaxits)) # <<<<<<<<<<<<<<
@@ -150506,15 +159540,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_44getTolerances(struct PyPetscKS
* def setConvergenceTest(self, converged, args=None, kargs=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_crtol); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 226, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_crtol); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_catol); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 226, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_catol); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_cdivtol); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 226, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_cdivtol); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_cmaxits); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 226, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_cmaxits); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(4); if (unlikely(!__pyx_t_6)) __PYX_ERR(35, 226, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(4); if (unlikely(!__pyx_t_6)) __PYX_ERR(35, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2);
@@ -150532,7 +159566,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_44getTolerances(struct PyPetscKS
__pyx_t_6 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":222
+ /* "PETSc/KSP.pyx":223
* CHKERR( KSPSetTolerances(self.ksp, crtol, catol, cdivtol, cmaxits) )
*
* def getTolerances(self): # <<<<<<<<<<<<<<
@@ -150555,7 +159589,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_44getTolerances(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":228
+/* "PETSc/KSP.pyx":229
* return (toReal(crtol), toReal(catol), toReal(cdivtol), toInt(cmaxits))
*
* def setConvergenceTest(self, converged, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -150583,8 +159617,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_47setConvergenceTest(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -150593,11 +159630,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_47setConvergenceTest(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_converged)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -150605,12 +159644,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_47setConvergenceTest(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceTest") < 0)) __PYX_ERR(35, 228, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceTest") < 0)) __PYX_ERR(35, 229, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -150622,7 +159663,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_47setConvergenceTest(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConvergenceTest", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 228, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConvergenceTest", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 229, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setConvergenceTest", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -150649,7 +159690,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/KSP.pyx":229
+ /* "PETSc/KSP.pyx":230
*
* def setConvergenceTest(self, converged, args=None, kargs=None):
* cdef PetscKSPNormType normtype = KSP_NORM_NONE # <<<<<<<<<<<<<<
@@ -150658,7 +159699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
*/
__pyx_v_normtype = KSP_NORM_NONE;
- /* "PETSc/KSP.pyx":230
+ /* "PETSc/KSP.pyx":231
* def setConvergenceTest(self, converged, args=None, kargs=None):
* cdef PetscKSPNormType normtype = KSP_NORM_NONE
* cdef void* cctx = NULL # <<<<<<<<<<<<<<
@@ -150667,7 +159708,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
*/
__pyx_v_cctx = NULL;
- /* "PETSc/KSP.pyx":231
+ /* "PETSc/KSP.pyx":232
* cdef PetscKSPNormType normtype = KSP_NORM_NONE
* cdef void* cctx = NULL
* if converged is not None: # <<<<<<<<<<<<<<
@@ -150678,16 +159719,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/KSP.pyx":232
+ /* "PETSc/KSP.pyx":233
* cdef void* cctx = NULL
* if converged is not None:
* CHKERR( KSPSetConvergenceTest( # <<<<<<<<<<<<<<
* self.ksp, KSP_Converged, NULL, NULL) )
* if args is None: args = ()
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergenceTest(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_Converged, NULL, NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(35, 232, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergenceTest(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_Converged, NULL, NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(35, 233, __pyx_L1_error)
- /* "PETSc/KSP.pyx":234
+ /* "PETSc/KSP.pyx":235
* CHKERR( KSPSetConvergenceTest(
* self.ksp, KSP_Converged, NULL, NULL) )
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -150701,7 +159742,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/KSP.pyx":235
+ /* "PETSc/KSP.pyx":236
* self.ksp, KSP_Converged, NULL, NULL) )
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -150711,20 +159752,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 235, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 236, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/KSP.pyx":236
+ /* "PETSc/KSP.pyx":237
* if args is None: args = ()
* if kargs is None: kargs = {}
* self.set_attr('__converged__', (converged, args, kargs)) # <<<<<<<<<<<<<<
* else:
* CHKERR( KSPGetNormType(self.ksp, &normtype) )
*/
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 236, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_converged);
__Pyx_GIVEREF(__pyx_v_converged);
@@ -150735,12 +159776,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
__Pyx_INCREF(__pyx_v_kargs);
__Pyx_GIVEREF(__pyx_v_kargs);
PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_kargs);
- __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 236, __pyx_L1_error)
+ __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/KSP.pyx":231
+ /* "PETSc/KSP.pyx":232
* cdef PetscKSPNormType normtype = KSP_NORM_NONE
* cdef void* cctx = NULL
* if converged is not None: # <<<<<<<<<<<<<<
@@ -150750,7 +159791,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
goto __pyx_L3;
}
- /* "PETSc/KSP.pyx":238
+ /* "PETSc/KSP.pyx":239
* self.set_attr('__converged__', (converged, args, kargs))
* else:
* CHKERR( KSPGetNormType(self.ksp, &normtype) ) # <<<<<<<<<<<<<<
@@ -150758,9 +159799,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
* CHKERR( KSPConvergedDefaultCreate(&cctx) )
*/
/*else*/ {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetNormType(__pyx_v_self->ksp, (&__pyx_v_normtype))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(35, 238, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetNormType(__pyx_v_self->ksp, (&__pyx_v_normtype))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(35, 239, __pyx_L1_error)
- /* "PETSc/KSP.pyx":239
+ /* "PETSc/KSP.pyx":240
* else:
* CHKERR( KSPGetNormType(self.ksp, &normtype) )
* if normtype != KSP_NORM_NONE: # <<<<<<<<<<<<<<
@@ -150770,25 +159811,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
__pyx_t_2 = ((__pyx_v_normtype != KSP_NORM_NONE) != 0);
if (__pyx_t_2) {
- /* "PETSc/KSP.pyx":240
+ /* "PETSc/KSP.pyx":241
* CHKERR( KSPGetNormType(self.ksp, &normtype) )
* if normtype != KSP_NORM_NONE:
* CHKERR( KSPConvergedDefaultCreate(&cctx) ) # <<<<<<<<<<<<<<
* CHKERR( KSPSetConvergenceTest(
* self.ksp, KSPConvergedDefault,
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPConvergedDefaultCreate((&__pyx_v_cctx))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(35, 240, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPConvergedDefaultCreate((&__pyx_v_cctx))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(35, 241, __pyx_L1_error)
- /* "PETSc/KSP.pyx":241
+ /* "PETSc/KSP.pyx":242
* if normtype != KSP_NORM_NONE:
* CHKERR( KSPConvergedDefaultCreate(&cctx) )
* CHKERR( KSPSetConvergenceTest( # <<<<<<<<<<<<<<
* self.ksp, KSPConvergedDefault,
* cctx, KSPConvergedDefaultDestroy) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergenceTest(__pyx_v_self->ksp, KSPConvergedDefault, __pyx_v_cctx, KSPConvergedDefaultDestroy)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(35, 241, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergenceTest(__pyx_v_self->ksp, KSPConvergedDefault, __pyx_v_cctx, KSPConvergedDefaultDestroy)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(35, 242, __pyx_L1_error)
- /* "PETSc/KSP.pyx":239
+ /* "PETSc/KSP.pyx":240
* else:
* CHKERR( KSPGetNormType(self.ksp, &normtype) )
* if normtype != KSP_NORM_NONE: # <<<<<<<<<<<<<<
@@ -150798,7 +159839,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
goto __pyx_L6;
}
- /* "PETSc/KSP.pyx":245
+ /* "PETSc/KSP.pyx":246
* cctx, KSPConvergedDefaultDestroy) )
* else:
* CHKERR( KSPSetConvergenceTest( # <<<<<<<<<<<<<<
@@ -150807,31 +159848,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
*/
/*else*/ {
- /* "PETSc/KSP.pyx":247
+ /* "PETSc/KSP.pyx":248
* CHKERR( KSPSetConvergenceTest(
* self.ksp, KSPConvergedSkip,
* NULL, NULL) ) # <<<<<<<<<<<<<<
* self.set_attr('__converged__', None)
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergenceTest(__pyx_v_self->ksp, KSPConvergedSkip, NULL, NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(35, 245, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergenceTest(__pyx_v_self->ksp, KSPConvergedSkip, NULL, NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(35, 246, __pyx_L1_error)
}
__pyx_L6:;
- /* "PETSc/KSP.pyx":248
+ /* "PETSc/KSP.pyx":249
* self.ksp, KSPConvergedSkip,
* NULL, NULL) )
* self.set_attr('__converged__', None) # <<<<<<<<<<<<<<
*
* def getConvergenceTest(self):
*/
- __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 248, __pyx_L1_error)
+ __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), Py_None); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__pyx_L3:;
- /* "PETSc/KSP.pyx":228
+ /* "PETSc/KSP.pyx":229
* return (toReal(crtol), toReal(catol), toReal(cdivtol), toInt(cmaxits))
*
* def setConvergenceTest(self, converged, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -150855,7 +159896,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_46setConvergenceTest(struct PyPe
return __pyx_r;
}
-/* "PETSc/KSP.pyx":250
+/* "PETSc/KSP.pyx":251
* self.set_attr('__converged__', None)
*
* def getConvergenceTest(self): # <<<<<<<<<<<<<<
@@ -150886,7 +159927,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_48getConvergenceTest(struct PyPe
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getConvergenceTest", 0);
- /* "PETSc/KSP.pyx":251
+ /* "PETSc/KSP.pyx":252
*
* def getConvergenceTest(self):
* return self.get_attr('__converged__') # <<<<<<<<<<<<<<
@@ -150894,13 +159935,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_48getConvergenceTest(struct PyPe
* def callConvergenceTest(self, its, rnorm):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 251, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 252, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":250
+ /* "PETSc/KSP.pyx":251
* self.set_attr('__converged__', None)
*
* def getConvergenceTest(self): # <<<<<<<<<<<<<<
@@ -150919,7 +159960,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_48getConvergenceTest(struct PyPe
return __pyx_r;
}
-/* "PETSc/KSP.pyx":253
+/* "PETSc/KSP.pyx":254
* return self.get_attr('__converged__')
*
* def callConvergenceTest(self, its, rnorm): # <<<<<<<<<<<<<<
@@ -150944,7 +159985,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_51callConvergenceTest(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -150953,14 +159996,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_51callConvergenceTest(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_its)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rnorm)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 2, 2, 1); __PYX_ERR(35, 253, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 2, 2, 1); __PYX_ERR(35, 254, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "callConvergenceTest") < 0)) __PYX_ERR(35, 253, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "callConvergenceTest") < 0)) __PYX_ERR(35, 254, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -150973,7 +160017,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_51callConvergenceTest(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 253, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 254, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.callConvergenceTest", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -150998,27 +160042,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_50callConvergenceTest(struct PyP
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("callConvergenceTest", 0);
- /* "PETSc/KSP.pyx":254
+ /* "PETSc/KSP.pyx":255
*
* def callConvergenceTest(self, its, rnorm):
* cdef PetscInt ival = asInt(its) # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(rnorm)
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(35, 254, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 255, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/KSP.pyx":255
+ /* "PETSc/KSP.pyx":256
* def callConvergenceTest(self, its, rnorm):
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval = asReal(rnorm) # <<<<<<<<<<<<<<
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING
* CHKERR( KSPConvergenceTestCall(self.ksp, ival, rval, &reason) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(35, 255, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(35, 256, __pyx_L1_error)
__pyx_v_rval = __pyx_t_2;
- /* "PETSc/KSP.pyx":256
+ /* "PETSc/KSP.pyx":257
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval = asReal(rnorm)
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -151027,16 +160071,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_50callConvergenceTest(struct PyP
*/
__pyx_v_reason = KSP_CONVERGED_ITERATING;
- /* "PETSc/KSP.pyx":257
+ /* "PETSc/KSP.pyx":258
* cdef PetscReal rval = asReal(rnorm)
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING
* CHKERR( KSPConvergenceTestCall(self.ksp, ival, rval, &reason) ) # <<<<<<<<<<<<<<
* return reason
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPConvergenceTestCall(__pyx_v_self->ksp, __pyx_v_ival, __pyx_v_rval, (&__pyx_v_reason))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(35, 257, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPConvergenceTestCall(__pyx_v_self->ksp, __pyx_v_ival, __pyx_v_rval, (&__pyx_v_reason))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(35, 258, __pyx_L1_error)
- /* "PETSc/KSP.pyx":258
+ /* "PETSc/KSP.pyx":259
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING
* CHKERR( KSPConvergenceTestCall(self.ksp, ival, rval, &reason) )
* return reason # <<<<<<<<<<<<<<
@@ -151044,13 +160088,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_50callConvergenceTest(struct PyP
* def setConvergenceHistory(self, length=None, reset=False):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = __Pyx_PyInt_From_KSPConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 258, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyInt_From_KSPConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":253
+ /* "PETSc/KSP.pyx":254
* return self.get_attr('__converged__')
*
* def callConvergenceTest(self, its, rnorm): # <<<<<<<<<<<<<<
@@ -151069,7 +160113,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_50callConvergenceTest(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":260
+/* "PETSc/KSP.pyx":261
* return reason
*
* def setConvergenceHistory(self, length=None, reset=False): # <<<<<<<<<<<<<<
@@ -151096,7 +160140,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_53setConvergenceHistory(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -151107,6 +160153,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_53setConvergenceHistory(PyObject
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_length);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_reset);
@@ -151114,12 +160161,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_53setConvergenceHistory(PyObject
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceHistory") < 0)) __PYX_ERR(35, 260, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceHistory") < 0)) __PYX_ERR(35, 261, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -151129,7 +160178,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_53setConvergenceHistory(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConvergenceHistory", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 260, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConvergenceHistory", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 261, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setConvergenceHistory", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -151157,7 +160206,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
int __pyx_t_6;
__Pyx_RefNannySetupContext("setConvergenceHistory", 0);
- /* "PETSc/KSP.pyx":261
+ /* "PETSc/KSP.pyx":262
*
* def setConvergenceHistory(self, length=None, reset=False):
* cdef PetscReal *data = NULL # <<<<<<<<<<<<<<
@@ -151166,7 +160215,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
*/
__pyx_v_data = NULL;
- /* "PETSc/KSP.pyx":262
+ /* "PETSc/KSP.pyx":263
* def setConvergenceHistory(self, length=None, reset=False):
* cdef PetscReal *data = NULL
* cdef PetscInt size = 10000 # <<<<<<<<<<<<<<
@@ -151175,7 +160224,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
*/
__pyx_v_size = 0x2710;
- /* "PETSc/KSP.pyx":263
+ /* "PETSc/KSP.pyx":264
* cdef PetscReal *data = NULL
* cdef PetscInt size = 10000
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -151184,7 +160233,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/KSP.pyx":264
+ /* "PETSc/KSP.pyx":265
* cdef PetscInt size = 10000
* cdef PetscBool flag = PETSC_FALSE
* if length is True: pass # <<<<<<<<<<<<<<
@@ -151197,7 +160246,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
goto __pyx_L3;
}
- /* "PETSc/KSP.pyx":265
+ /* "PETSc/KSP.pyx":266
* cdef PetscBool flag = PETSC_FALSE
* if length is True: pass
* elif length is not None: size = asInt(length) # <<<<<<<<<<<<<<
@@ -151207,12 +160256,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
__pyx_t_2 = (__pyx_v_length != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_length); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(35, 265, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_length); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 266, __pyx_L1_error)
__pyx_v_size = __pyx_t_3;
}
__pyx_L3:;
- /* "PETSc/KSP.pyx":266
+ /* "PETSc/KSP.pyx":267
* if length is True: pass
* elif length is not None: size = asInt(length)
* if size < 0: size = 10000 # <<<<<<<<<<<<<<
@@ -151224,54 +160273,54 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
__pyx_v_size = 0x2710;
}
- /* "PETSc/KSP.pyx":267
+ /* "PETSc/KSP.pyx":268
* elif length is not None: size = asInt(length)
* if size < 0: size = 10000
* if reset: flag = PETSC_TRUE # <<<<<<<<<<<<<<
* cdef object hist = oarray_r(empty_r(size), NULL, &data)
* self.set_attr('__history__', hist)
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_reset); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(35, 267, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_reset); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(35, 268, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_v_flag = PETSC_TRUE;
}
- /* "PETSc/KSP.pyx":268
+ /* "PETSc/KSP.pyx":269
* if size < 0: size = 10000
* if reset: flag = PETSC_TRUE
* cdef object hist = oarray_r(empty_r(size), NULL, &data) # <<<<<<<<<<<<<<
* self.set_attr('__history__', hist)
* CHKERR( KSPSetResidualHistory(self.ksp, data, size, flag) )
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_size)); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 268, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_size)); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 269, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_4, NULL, (&__pyx_v_data))); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 268, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_4, NULL, (&__pyx_v_data))); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 269, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_hist = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/KSP.pyx":269
+ /* "PETSc/KSP.pyx":270
* if reset: flag = PETSC_TRUE
* cdef object hist = oarray_r(empty_r(size), NULL, &data)
* self.set_attr('__history__', hist) # <<<<<<<<<<<<<<
* CHKERR( KSPSetResidualHistory(self.ksp, data, size, flag) )
*
*/
- __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__history__"), __pyx_v_hist); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 269, __pyx_L1_error)
+ __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__history__"), __pyx_v_hist); if (unlikely(!__pyx_t_5)) __PYX_ERR(35, 270, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/KSP.pyx":270
+ /* "PETSc/KSP.pyx":271
* cdef object hist = oarray_r(empty_r(size), NULL, &data)
* self.set_attr('__history__', hist)
* CHKERR( KSPSetResidualHistory(self.ksp, data, size, flag) ) # <<<<<<<<<<<<<<
*
* def getConvergenceHistory(self):
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetResidualHistory(__pyx_v_self->ksp, __pyx_v_data, __pyx_v_size, __pyx_v_flag)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(35, 270, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetResidualHistory(__pyx_v_self->ksp, __pyx_v_data, __pyx_v_size, __pyx_v_flag)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(35, 271, __pyx_L1_error)
- /* "PETSc/KSP.pyx":260
+ /* "PETSc/KSP.pyx":261
* return reason
*
* def setConvergenceHistory(self, length=None, reset=False): # <<<<<<<<<<<<<<
@@ -151294,7 +160343,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_52setConvergenceHistory(struct P
return __pyx_r;
}
-/* "PETSc/KSP.pyx":272
+/* "PETSc/KSP.pyx":273
* CHKERR( KSPSetResidualHistory(self.ksp, data, size, flag) )
*
* def getConvergenceHistory(self): # <<<<<<<<<<<<<<
@@ -151328,7 +160377,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_54getConvergenceHistory(struct P
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getConvergenceHistory", 0);
- /* "PETSc/KSP.pyx":273
+ /* "PETSc/KSP.pyx":274
*
* def getConvergenceHistory(self):
* cdef PetscReal *data = NULL # <<<<<<<<<<<<<<
@@ -151337,7 +160386,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_54getConvergenceHistory(struct P
*/
__pyx_v_data = NULL;
- /* "PETSc/KSP.pyx":274
+ /* "PETSc/KSP.pyx":275
* def getConvergenceHistory(self):
* cdef PetscReal *data = NULL
* cdef PetscInt size = 0 # <<<<<<<<<<<<<<
@@ -151346,16 +160395,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_54getConvergenceHistory(struct P
*/
__pyx_v_size = 0;
- /* "PETSc/KSP.pyx":275
+ /* "PETSc/KSP.pyx":276
* cdef PetscReal *data = NULL
* cdef PetscInt size = 0
* CHKERR( KSPGetResidualHistory(self.ksp, &data, &size) ) # <<<<<<<<<<<<<<
* return array_r(size, data)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetResidualHistory(__pyx_v_self->ksp, (&__pyx_v_data), (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 275, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetResidualHistory(__pyx_v_self->ksp, (&__pyx_v_data), (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 276, __pyx_L1_error)
- /* "PETSc/KSP.pyx":276
+ /* "PETSc/KSP.pyx":277
* cdef PetscInt size = 0
* CHKERR( KSPGetResidualHistory(self.ksp, &data, &size) )
* return array_r(size, data) # <<<<<<<<<<<<<<
@@ -151363,13 +160412,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_54getConvergenceHistory(struct P
* def logConvergenceHistory(self, rnorm):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_size, __pyx_v_data)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 276, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_size, __pyx_v_data)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 277, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":272
+ /* "PETSc/KSP.pyx":273
* CHKERR( KSPSetResidualHistory(self.ksp, data, size, flag) )
*
* def getConvergenceHistory(self): # <<<<<<<<<<<<<<
@@ -151388,7 +160437,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_54getConvergenceHistory(struct P
return __pyx_r;
}
-/* "PETSc/KSP.pyx":278
+/* "PETSc/KSP.pyx":279
* return array_r(size, data)
*
* def logConvergenceHistory(self, rnorm): # <<<<<<<<<<<<<<
@@ -151412,6 +160461,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_57logConvergenceHistory(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -151422,7 +160472,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_57logConvergenceHistory(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "logConvergenceHistory") < 0)) __PYX_ERR(35, 278, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "logConvergenceHistory") < 0)) __PYX_ERR(35, 279, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -151433,7 +160483,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_57logConvergenceHistory(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("logConvergenceHistory", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 278, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("logConvergenceHistory", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 279, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.logConvergenceHistory", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -151454,26 +160504,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_56logConvergenceHistory(struct P
int __pyx_t_2;
__Pyx_RefNannySetupContext("logConvergenceHistory", 0);
- /* "PETSc/KSP.pyx":279
+ /* "PETSc/KSP.pyx":280
*
* def logConvergenceHistory(self, rnorm):
* cdef PetscReal rval = asReal(rnorm) # <<<<<<<<<<<<<<
* CHKERR( KSPLogResidualHistory(self.ksp, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(35, 279, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(35, 280, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/KSP.pyx":280
+ /* "PETSc/KSP.pyx":281
* def logConvergenceHistory(self, rnorm):
* cdef PetscReal rval = asReal(rnorm)
* CHKERR( KSPLogResidualHistory(self.ksp, rval) ) # <<<<<<<<<<<<<<
*
* # --- monitoring ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPLogResidualHistory(__pyx_v_self->ksp, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 280, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPLogResidualHistory(__pyx_v_self->ksp, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 281, __pyx_L1_error)
- /* "PETSc/KSP.pyx":278
+ /* "PETSc/KSP.pyx":279
* return array_r(size, data)
*
* def logConvergenceHistory(self, rnorm): # <<<<<<<<<<<<<<
@@ -151493,7 +160543,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_56logConvergenceHistory(struct P
return __pyx_r;
}
-/* "PETSc/KSP.pyx":284
+/* "PETSc/KSP.pyx":285
* # --- monitoring ---
*
* def setMonitor(self, monitor, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -151521,8 +160571,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_59setMonitor(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -151531,11 +160584,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_59setMonitor(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_monitor)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -151543,12 +160598,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_59setMonitor(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMonitor") < 0)) __PYX_ERR(35, 284, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMonitor") < 0)) __PYX_ERR(35, 285, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -151560,7 +160617,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_59setMonitor(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMonitor", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 284, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMonitor", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 285, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setMonitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -151586,7 +160643,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/KSP.pyx":285
+ /* "PETSc/KSP.pyx":286
*
* def setMonitor(self, monitor, args=None, kargs=None):
* if monitor is None: return # <<<<<<<<<<<<<<
@@ -151601,19 +160658,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
goto __pyx_L0;
}
- /* "PETSc/KSP.pyx":286
+ /* "PETSc/KSP.pyx":287
* def setMonitor(self, monitor, args=None, kargs=None):
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__') # <<<<<<<<<<<<<<
* if monitorlist is None:
* monitorlist = []
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 286, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 287, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_monitorlist = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":287
+ /* "PETSc/KSP.pyx":288
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None: # <<<<<<<<<<<<<<
@@ -151624,39 +160681,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/KSP.pyx":288
+ /* "PETSc/KSP.pyx":289
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None:
* monitorlist = [] # <<<<<<<<<<<<<<
* self.set_attr('__monitor__', monitorlist)
* CHKERR( KSPMonitorSet(self.ksp, KSP_Monitor, NULL, NULL) )
*/
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 288, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 289, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_monitorlist, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":289
+ /* "PETSc/KSP.pyx":290
* if monitorlist is None:
* monitorlist = []
* self.set_attr('__monitor__', monitorlist) # <<<<<<<<<<<<<<
* CHKERR( KSPMonitorSet(self.ksp, KSP_Monitor, NULL, NULL) )
* if args is None: args = ()
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), __pyx_v_monitorlist); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 289, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), __pyx_v_monitorlist); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 290, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":290
+ /* "PETSc/KSP.pyx":291
* monitorlist = []
* self.set_attr('__monitor__', monitorlist)
* CHKERR( KSPMonitorSet(self.ksp, KSP_Monitor, NULL, NULL) ) # <<<<<<<<<<<<<<
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPMonitorSet(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 290, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPMonitorSet(__pyx_v_self->ksp, __pyx_f_8petsc4py_5PETSc_KSP_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 291, __pyx_L1_error)
- /* "PETSc/KSP.pyx":287
+ /* "PETSc/KSP.pyx":288
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None: # <<<<<<<<<<<<<<
@@ -151665,7 +160722,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
*/
}
- /* "PETSc/KSP.pyx":291
+ /* "PETSc/KSP.pyx":292
* self.set_attr('__monitor__', monitorlist)
* CHKERR( KSPMonitorSet(self.ksp, KSP_Monitor, NULL, NULL) )
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -151679,7 +160736,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/KSP.pyx":292
+ /* "PETSc/KSP.pyx":293
* CHKERR( KSPMonitorSet(self.ksp, KSP_Monitor, NULL, NULL) )
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -151689,20 +160746,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 292, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 293, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/KSP.pyx":293
+ /* "PETSc/KSP.pyx":294
* if args is None: args = ()
* if kargs is None: kargs = {}
* monitorlist.append((monitor, args, kargs)) # <<<<<<<<<<<<<<
*
* def getMonitor(self):
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 293, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 294, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_monitor);
__Pyx_GIVEREF(__pyx_v_monitor);
@@ -151713,10 +160770,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
__Pyx_INCREF(__pyx_v_kargs);
__Pyx_GIVEREF(__pyx_v_kargs);
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
- __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_t_3); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(35, 293, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_t_3); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(35, 294, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":284
+ /* "PETSc/KSP.pyx":285
* # --- monitoring ---
*
* def setMonitor(self, monitor, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -151740,7 +160797,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_58setMonitor(struct PyPetscKSPOb
return __pyx_r;
}
-/* "PETSc/KSP.pyx":295
+/* "PETSc/KSP.pyx":296
* monitorlist.append((monitor, args, kargs))
*
* def getMonitor(self): # <<<<<<<<<<<<<<
@@ -151771,7 +160828,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_60getMonitor(struct PyPetscKSPOb
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getMonitor", 0);
- /* "PETSc/KSP.pyx":296
+ /* "PETSc/KSP.pyx":297
*
* def getMonitor(self):
* return self.get_attr('__monitor__') # <<<<<<<<<<<<<<
@@ -151779,13 +160836,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_60getMonitor(struct PyPetscKSPOb
* def cancelMonitor(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 296, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":295
+ /* "PETSc/KSP.pyx":296
* monitorlist.append((monitor, args, kargs))
*
* def getMonitor(self): # <<<<<<<<<<<<<<
@@ -151804,7 +160861,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_60getMonitor(struct PyPetscKSPOb
return __pyx_r;
}
-/* "PETSc/KSP.pyx":298
+/* "PETSc/KSP.pyx":299
* return self.get_attr('__monitor__')
*
* def cancelMonitor(self): # <<<<<<<<<<<<<<
@@ -151836,27 +160893,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_62cancelMonitor(struct PyPetscKS
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("cancelMonitor", 0);
- /* "PETSc/KSP.pyx":299
+ /* "PETSc/KSP.pyx":300
*
* def cancelMonitor(self):
* CHKERR( KSPMonitorCancel(self.ksp) ) # <<<<<<<<<<<<<<
* self.set_attr('__monitor__', None)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPMonitorCancel(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 299, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPMonitorCancel(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 300, __pyx_L1_error)
- /* "PETSc/KSP.pyx":300
+ /* "PETSc/KSP.pyx":301
* def cancelMonitor(self):
* CHKERR( KSPMonitorCancel(self.ksp) )
* self.set_attr('__monitor__', None) # <<<<<<<<<<<<<<
*
* def monitor(self, its, rnorm):
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 300, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_KSP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 301, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "PETSc/KSP.pyx":298
+ /* "PETSc/KSP.pyx":299
* return self.get_attr('__monitor__')
*
* def cancelMonitor(self): # <<<<<<<<<<<<<<
@@ -151877,7 +160934,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_62cancelMonitor(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":302
+/* "PETSc/KSP.pyx":303
* self.set_attr('__monitor__', None)
*
* def monitor(self, its, rnorm): # <<<<<<<<<<<<<<
@@ -151902,7 +160959,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_65monitor(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -151911,14 +160970,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_65monitor(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_its)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rnorm)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, 1); __PYX_ERR(35, 302, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, 1); __PYX_ERR(35, 303, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "monitor") < 0)) __PYX_ERR(35, 302, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "monitor") < 0)) __PYX_ERR(35, 303, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -151931,7 +160991,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_65monitor(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 302, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 303, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.monitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -151954,36 +161014,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_64monitor(struct PyPetscKSPObjec
int __pyx_t_3;
__Pyx_RefNannySetupContext("monitor", 0);
- /* "PETSc/KSP.pyx":303
+ /* "PETSc/KSP.pyx":304
*
* def monitor(self, its, rnorm):
* cdef PetscInt ival = asInt(its) # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(rnorm)
* CHKERR( KSPMonitor(self.ksp, ival, rval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(35, 303, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 304, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/KSP.pyx":304
+ /* "PETSc/KSP.pyx":305
* def monitor(self, its, rnorm):
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval = asReal(rnorm) # <<<<<<<<<<<<<<
* CHKERR( KSPMonitor(self.ksp, ival, rval) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(35, 304, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(35, 305, __pyx_L1_error)
__pyx_v_rval = __pyx_t_2;
- /* "PETSc/KSP.pyx":305
+ /* "PETSc/KSP.pyx":306
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval = asReal(rnorm)
* CHKERR( KSPMonitor(self.ksp, ival, rval) ) # <<<<<<<<<<<<<<
*
* # --- customization ---
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPMonitor(__pyx_v_self->ksp, __pyx_v_ival, __pyx_v_rval)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(35, 305, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPMonitor(__pyx_v_self->ksp, __pyx_v_ival, __pyx_v_rval)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(35, 306, __pyx_L1_error)
- /* "PETSc/KSP.pyx":302
+ /* "PETSc/KSP.pyx":303
* self.set_attr('__monitor__', None)
*
* def monitor(self, its, rnorm): # <<<<<<<<<<<<<<
@@ -152003,7 +161063,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_64monitor(struct PyPetscKSPObjec
return __pyx_r;
}
-/* "PETSc/KSP.pyx":309
+/* "PETSc/KSP.pyx":310
* # --- customization ---
*
* def setPCSide(self, side): # <<<<<<<<<<<<<<
@@ -152027,6 +161087,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_67setPCSide(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -152037,7 +161098,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_67setPCSide(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPCSide") < 0)) __PYX_ERR(35, 309, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPCSide") < 0)) __PYX_ERR(35, 310, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -152048,7 +161109,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_67setPCSide(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPCSide", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 309, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPCSide", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 310, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setPCSide", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -152068,17 +161129,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_66setPCSide(struct PyPetscKSPObj
int __pyx_t_2;
__Pyx_RefNannySetupContext("setPCSide", 0);
- /* "PETSc/KSP.pyx":310
+ /* "PETSc/KSP.pyx":311
*
* def setPCSide(self, side):
* CHKERR( KSPSetPCSide(self.ksp, side) ) # <<<<<<<<<<<<<<
*
* def getPCSide(self):
*/
- __pyx_t_1 = ((PCSide)__Pyx_PyInt_As_PCSide(__pyx_v_side)); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 310, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetPCSide(__pyx_v_self->ksp, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 310, __pyx_L1_error)
+ __pyx_t_1 = ((PCSide)__Pyx_PyInt_As_PCSide(__pyx_v_side)); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 311, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetPCSide(__pyx_v_self->ksp, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 311, __pyx_L1_error)
- /* "PETSc/KSP.pyx":309
+ /* "PETSc/KSP.pyx":310
* # --- customization ---
*
* def setPCSide(self, side): # <<<<<<<<<<<<<<
@@ -152098,7 +161159,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_66setPCSide(struct PyPetscKSPObj
return __pyx_r;
}
-/* "PETSc/KSP.pyx":312
+/* "PETSc/KSP.pyx":313
* CHKERR( KSPSetPCSide(self.ksp, side) )
*
* def getPCSide(self): # <<<<<<<<<<<<<<
@@ -152131,7 +161192,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_68getPCSide(struct PyPetscKSPObj
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getPCSide", 0);
- /* "PETSc/KSP.pyx":313
+ /* "PETSc/KSP.pyx":314
*
* def getPCSide(self):
* cdef PetscPCSide side = PC_LEFT # <<<<<<<<<<<<<<
@@ -152140,16 +161201,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_68getPCSide(struct PyPetscKSPObj
*/
__pyx_v_side = PC_LEFT;
- /* "PETSc/KSP.pyx":314
+ /* "PETSc/KSP.pyx":315
* def getPCSide(self):
* cdef PetscPCSide side = PC_LEFT
* CHKERR( KSPGetPCSide(self.ksp, &side) ) # <<<<<<<<<<<<<<
* return side
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetPCSide(__pyx_v_self->ksp, (&__pyx_v_side))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 314, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetPCSide(__pyx_v_self->ksp, (&__pyx_v_side))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 315, __pyx_L1_error)
- /* "PETSc/KSP.pyx":315
+ /* "PETSc/KSP.pyx":316
* cdef PetscPCSide side = PC_LEFT
* CHKERR( KSPGetPCSide(self.ksp, &side) )
* return side # <<<<<<<<<<<<<<
@@ -152157,13 +161218,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_68getPCSide(struct PyPetscKSPObj
* def setNormType(self, normtype):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PCSide(__pyx_v_side); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 315, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_PCSide(__pyx_v_side); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 316, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":312
+ /* "PETSc/KSP.pyx":313
* CHKERR( KSPSetPCSide(self.ksp, side) )
*
* def getPCSide(self): # <<<<<<<<<<<<<<
@@ -152182,7 +161243,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_68getPCSide(struct PyPetscKSPObj
return __pyx_r;
}
-/* "PETSc/KSP.pyx":317
+/* "PETSc/KSP.pyx":318
* return side
*
* def setNormType(self, normtype): # <<<<<<<<<<<<<<
@@ -152206,6 +161267,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_71setNormType(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -152216,7 +161278,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_71setNormType(PyObject *__pyx_v_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNormType") < 0)) __PYX_ERR(35, 317, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNormType") < 0)) __PYX_ERR(35, 318, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -152227,7 +161289,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_71setNormType(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setNormType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 317, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setNormType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 318, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setNormType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -152247,17 +161309,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_70setNormType(struct PyPetscKSPO
int __pyx_t_2;
__Pyx_RefNannySetupContext("setNormType", 0);
- /* "PETSc/KSP.pyx":318
+ /* "PETSc/KSP.pyx":319
*
* def setNormType(self, normtype):
* CHKERR( KSPSetNormType(self.ksp, normtype) ) # <<<<<<<<<<<<<<
*
* def getNormType(self):
*/
- __pyx_t_1 = ((KSPNormType)__Pyx_PyInt_As_KSPNormType(__pyx_v_normtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 318, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetNormType(__pyx_v_self->ksp, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 318, __pyx_L1_error)
+ __pyx_t_1 = ((KSPNormType)__Pyx_PyInt_As_KSPNormType(__pyx_v_normtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 319, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetNormType(__pyx_v_self->ksp, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 319, __pyx_L1_error)
- /* "PETSc/KSP.pyx":317
+ /* "PETSc/KSP.pyx":318
* return side
*
* def setNormType(self, normtype): # <<<<<<<<<<<<<<
@@ -152277,7 +161339,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_70setNormType(struct PyPetscKSPO
return __pyx_r;
}
-/* "PETSc/KSP.pyx":320
+/* "PETSc/KSP.pyx":321
* CHKERR( KSPSetNormType(self.ksp, normtype) )
*
* def getNormType(self): # <<<<<<<<<<<<<<
@@ -152310,7 +161372,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_72getNormType(struct PyPetscKSPO
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getNormType", 0);
- /* "PETSc/KSP.pyx":321
+ /* "PETSc/KSP.pyx":322
*
* def getNormType(self):
* cdef PetscKSPNormType normtype = KSP_NORM_NONE # <<<<<<<<<<<<<<
@@ -152319,16 +161381,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_72getNormType(struct PyPetscKSPO
*/
__pyx_v_normtype = KSP_NORM_NONE;
- /* "PETSc/KSP.pyx":322
+ /* "PETSc/KSP.pyx":323
* def getNormType(self):
* cdef PetscKSPNormType normtype = KSP_NORM_NONE
* CHKERR( KSPGetNormType(self.ksp, &normtype) ) # <<<<<<<<<<<<<<
* return normtype
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetNormType(__pyx_v_self->ksp, (&__pyx_v_normtype))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 322, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetNormType(__pyx_v_self->ksp, (&__pyx_v_normtype))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 323, __pyx_L1_error)
- /* "PETSc/KSP.pyx":323
+ /* "PETSc/KSP.pyx":324
* cdef PetscKSPNormType normtype = KSP_NORM_NONE
* CHKERR( KSPGetNormType(self.ksp, &normtype) )
* return normtype # <<<<<<<<<<<<<<
@@ -152336,13 +161398,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_72getNormType(struct PyPetscKSPO
* def setComputeEigenvalues(self, bint flag):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_KSPNormType(__pyx_v_normtype); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 323, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_KSPNormType(__pyx_v_normtype); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 324, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":320
+ /* "PETSc/KSP.pyx":321
* CHKERR( KSPSetNormType(self.ksp, normtype) )
*
* def getNormType(self): # <<<<<<<<<<<<<<
@@ -152361,7 +161423,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_72getNormType(struct PyPetscKSPO
return __pyx_r;
}
-/* "PETSc/KSP.pyx":325
+/* "PETSc/KSP.pyx":326
* return normtype
*
* def setComputeEigenvalues(self, bint flag): # <<<<<<<<<<<<<<
@@ -152385,6 +161447,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_75setComputeEigenvalues(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -152395,18 +161458,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_75setComputeEigenvalues(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeEigenvalues") < 0)) __PYX_ERR(35, 325, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeEigenvalues") < 0)) __PYX_ERR(35, 326, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
- __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 325, __pyx_L3_error)
+ __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 326, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setComputeEigenvalues", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 325, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setComputeEigenvalues", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 326, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setComputeEigenvalues", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -152427,7 +161490,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_74setComputeEigenvalues(struct P
int __pyx_t_2;
__Pyx_RefNannySetupContext("setComputeEigenvalues", 0);
- /* "PETSc/KSP.pyx":326
+ /* "PETSc/KSP.pyx":327
*
* def setComputeEigenvalues(self, bint flag):
* cdef PetscBool compute = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -152436,7 +161499,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_74setComputeEigenvalues(struct P
*/
__pyx_v_compute = PETSC_FALSE;
- /* "PETSc/KSP.pyx":327
+ /* "PETSc/KSP.pyx":328
* def setComputeEigenvalues(self, bint flag):
* cdef PetscBool compute = PETSC_FALSE
* if flag: compute = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -152448,16 +161511,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_74setComputeEigenvalues(struct P
__pyx_v_compute = PETSC_TRUE;
}
- /* "PETSc/KSP.pyx":328
+ /* "PETSc/KSP.pyx":329
* cdef PetscBool compute = PETSC_FALSE
* if flag: compute = PETSC_TRUE
* CHKERR( KSPSetComputeEigenvalues(self.ksp, compute) ) # <<<<<<<<<<<<<<
*
* def getComputeEigenvalues(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeEigenvalues(__pyx_v_self->ksp, __pyx_v_compute)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 328, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeEigenvalues(__pyx_v_self->ksp, __pyx_v_compute)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 329, __pyx_L1_error)
- /* "PETSc/KSP.pyx":325
+ /* "PETSc/KSP.pyx":326
* return normtype
*
* def setComputeEigenvalues(self, bint flag): # <<<<<<<<<<<<<<
@@ -152477,12 +161540,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_74setComputeEigenvalues(struct P
return __pyx_r;
}
-/* "PETSc/KSP.pyx":330
+/* "PETSc/KSP.pyx":331
* CHKERR( KSPSetComputeEigenvalues(self.ksp, compute) )
*
* def getComputeEigenvalues(self): # <<<<<<<<<<<<<<
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeEigenvalues(self.ksp, &compute) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeEigenvalues(self.ksp, &flag) )
*/
/* Python wrapper */
@@ -152503,51 +161566,51 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_77getComputeEigenvalues(PyObject
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_76getComputeEigenvalues(struct PyPetscKSPObject *__pyx_v_self) {
- PetscBool __pyx_v_compute;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getComputeEigenvalues", 0);
- /* "PETSc/KSP.pyx":331
+ /* "PETSc/KSP.pyx":332
*
* def getComputeEigenvalues(self):
- * cdef PetscBool compute = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( KSPGetComputeEigenvalues(self.ksp, &compute) )
- * return <bint>compute
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( KSPGetComputeEigenvalues(self.ksp, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_compute = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/KSP.pyx":332
+ /* "PETSc/KSP.pyx":333
* def getComputeEigenvalues(self):
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeEigenvalues(self.ksp, &compute) ) # <<<<<<<<<<<<<<
- * return <bint>compute
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeEigenvalues(self.ksp, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetComputeEigenvalues(__pyx_v_self->ksp, (&__pyx_v_compute))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 332, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetComputeEigenvalues(__pyx_v_self->ksp, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 333, __pyx_L1_error)
- /* "PETSc/KSP.pyx":333
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeEigenvalues(self.ksp, &compute) )
- * return <bint>compute # <<<<<<<<<<<<<<
+ /* "PETSc/KSP.pyx":334
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeEigenvalues(self.ksp, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setComputeSingularValues(self, bint flag):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_compute); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 333, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 334, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":330
+ /* "PETSc/KSP.pyx":331
* CHKERR( KSPSetComputeEigenvalues(self.ksp, compute) )
*
* def getComputeEigenvalues(self): # <<<<<<<<<<<<<<
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeEigenvalues(self.ksp, &compute) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeEigenvalues(self.ksp, &flag) )
*/
/* function exit code */
@@ -152561,8 +161624,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_76getComputeEigenvalues(struct P
return __pyx_r;
}
-/* "PETSc/KSP.pyx":335
- * return <bint>compute
+/* "PETSc/KSP.pyx":336
+ * return toBool(flag)
*
* def setComputeSingularValues(self, bint flag): # <<<<<<<<<<<<<<
* cdef PetscBool compute = PETSC_FALSE
@@ -152585,6 +161648,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_79setComputeSingularValues(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -152595,18 +161659,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_79setComputeSingularValues(PyObj
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeSingularValues") < 0)) __PYX_ERR(35, 335, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setComputeSingularValues") < 0)) __PYX_ERR(35, 336, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
- __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 335, __pyx_L3_error)
+ __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 336, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setComputeSingularValues", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 335, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setComputeSingularValues", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 336, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setComputeSingularValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -152627,7 +161691,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_78setComputeSingularValues(struc
int __pyx_t_2;
__Pyx_RefNannySetupContext("setComputeSingularValues", 0);
- /* "PETSc/KSP.pyx":336
+ /* "PETSc/KSP.pyx":337
*
* def setComputeSingularValues(self, bint flag):
* cdef PetscBool compute = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -152636,7 +161700,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_78setComputeSingularValues(struc
*/
__pyx_v_compute = PETSC_FALSE;
- /* "PETSc/KSP.pyx":337
+ /* "PETSc/KSP.pyx":338
* def setComputeSingularValues(self, bint flag):
* cdef PetscBool compute = PETSC_FALSE
* if flag: compute = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -152648,17 +161712,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_78setComputeSingularValues(struc
__pyx_v_compute = PETSC_TRUE;
}
- /* "PETSc/KSP.pyx":338
+ /* "PETSc/KSP.pyx":339
* cdef PetscBool compute = PETSC_FALSE
* if flag: compute = PETSC_TRUE
* CHKERR( KSPSetComputeSingularValues(self.ksp, compute) ) # <<<<<<<<<<<<<<
*
* def getComputeSingularValues(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeSingularValues(__pyx_v_self->ksp, __pyx_v_compute)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 338, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetComputeSingularValues(__pyx_v_self->ksp, __pyx_v_compute)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 339, __pyx_L1_error)
- /* "PETSc/KSP.pyx":335
- * return <bint>compute
+ /* "PETSc/KSP.pyx":336
+ * return toBool(flag)
*
* def setComputeSingularValues(self, bint flag): # <<<<<<<<<<<<<<
* cdef PetscBool compute = PETSC_FALSE
@@ -152677,12 +161741,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_78setComputeSingularValues(struc
return __pyx_r;
}
-/* "PETSc/KSP.pyx":340
+/* "PETSc/KSP.pyx":341
* CHKERR( KSPSetComputeSingularValues(self.ksp, compute) )
*
* def getComputeSingularValues(self): # <<<<<<<<<<<<<<
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeSingularValues(self.ksp, &compute) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeSingularValues(self.ksp, &flag) )
*/
/* Python wrapper */
@@ -152703,51 +161767,51 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_81getComputeSingularValues(PyObj
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_80getComputeSingularValues(struct PyPetscKSPObject *__pyx_v_self) {
- PetscBool __pyx_v_compute;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getComputeSingularValues", 0);
- /* "PETSc/KSP.pyx":341
+ /* "PETSc/KSP.pyx":342
*
* def getComputeSingularValues(self):
- * cdef PetscBool compute = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( KSPGetComputeSingularValues(self.ksp, &compute) )
- * return <bint>compute
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( KSPGetComputeSingularValues(self.ksp, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_compute = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/KSP.pyx":342
+ /* "PETSc/KSP.pyx":343
* def getComputeSingularValues(self):
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeSingularValues(self.ksp, &compute) ) # <<<<<<<<<<<<<<
- * return <bint>compute
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeSingularValues(self.ksp, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetComputeSingularValues(__pyx_v_self->ksp, (&__pyx_v_compute))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 342, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetComputeSingularValues(__pyx_v_self->ksp, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 343, __pyx_L1_error)
- /* "PETSc/KSP.pyx":343
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeSingularValues(self.ksp, &compute) )
- * return <bint>compute # <<<<<<<<<<<<<<
+ /* "PETSc/KSP.pyx":344
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeSingularValues(self.ksp, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* # --- initial guess ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_compute); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 343, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 344, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":340
+ /* "PETSc/KSP.pyx":341
* CHKERR( KSPSetComputeSingularValues(self.ksp, compute) )
*
* def getComputeSingularValues(self): # <<<<<<<<<<<<<<
- * cdef PetscBool compute = PETSC_FALSE
- * CHKERR( KSPGetComputeSingularValues(self.ksp, &compute) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetComputeSingularValues(self.ksp, &flag) )
*/
/* function exit code */
@@ -152761,7 +161825,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_80getComputeSingularValues(struc
return __pyx_r;
}
-/* "PETSc/KSP.pyx":347
+/* "PETSc/KSP.pyx":348
* # --- initial guess ---
*
* def setInitialGuessNonzero(self, bint flag): # <<<<<<<<<<<<<<
@@ -152785,6 +161849,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_83setInitialGuessNonzero(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -152795,18 +161860,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_83setInitialGuessNonzero(PyObjec
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setInitialGuessNonzero") < 0)) __PYX_ERR(35, 347, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setInitialGuessNonzero") < 0)) __PYX_ERR(35, 348, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
- __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 347, __pyx_L3_error)
+ __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 348, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setInitialGuessNonzero", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 347, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setInitialGuessNonzero", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 348, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setInitialGuessNonzero", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -152827,7 +161892,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_82setInitialGuessNonzero(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("setInitialGuessNonzero", 0);
- /* "PETSc/KSP.pyx":348
+ /* "PETSc/KSP.pyx":349
*
* def setInitialGuessNonzero(self, bint flag):
* cdef PetscBool guess_nonzero = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -152836,7 +161901,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_82setInitialGuessNonzero(struct
*/
__pyx_v_guess_nonzero = PETSC_FALSE;
- /* "PETSc/KSP.pyx":349
+ /* "PETSc/KSP.pyx":350
* def setInitialGuessNonzero(self, bint flag):
* cdef PetscBool guess_nonzero = PETSC_FALSE
* if flag: guess_nonzero = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -152848,16 +161913,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_82setInitialGuessNonzero(struct
__pyx_v_guess_nonzero = PETSC_TRUE;
}
- /* "PETSc/KSP.pyx":350
+ /* "PETSc/KSP.pyx":351
* cdef PetscBool guess_nonzero = PETSC_FALSE
* if flag: guess_nonzero = PETSC_TRUE
* CHKERR( KSPSetInitialGuessNonzero(self.ksp, guess_nonzero) ) # <<<<<<<<<<<<<<
*
* def getInitialGuessNonzero(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetInitialGuessNonzero(__pyx_v_self->ksp, __pyx_v_guess_nonzero)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 350, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetInitialGuessNonzero(__pyx_v_self->ksp, __pyx_v_guess_nonzero)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 351, __pyx_L1_error)
- /* "PETSc/KSP.pyx":347
+ /* "PETSc/KSP.pyx":348
* # --- initial guess ---
*
* def setInitialGuessNonzero(self, bint flag): # <<<<<<<<<<<<<<
@@ -152877,12 +161942,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_82setInitialGuessNonzero(struct
return __pyx_r;
}
-/* "PETSc/KSP.pyx":352
+/* "PETSc/KSP.pyx":353
* CHKERR( KSPSetInitialGuessNonzero(self.ksp, guess_nonzero) )
*
* def getInitialGuessNonzero(self): # <<<<<<<<<<<<<<
- * cdef PetscBool guess_nonzero = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &guess_nonzero) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &flag) )
*/
/* Python wrapper */
@@ -152903,51 +161968,51 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_85getInitialGuessNonzero(PyObjec
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_84getInitialGuessNonzero(struct PyPetscKSPObject *__pyx_v_self) {
- PetscBool __pyx_v_guess_nonzero;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getInitialGuessNonzero", 0);
- /* "PETSc/KSP.pyx":353
+ /* "PETSc/KSP.pyx":354
*
* def getInitialGuessNonzero(self):
- * cdef PetscBool guess_nonzero = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &guess_nonzero) )
- * return <bint>guess_nonzero
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_guess_nonzero = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/KSP.pyx":354
+ /* "PETSc/KSP.pyx":355
* def getInitialGuessNonzero(self):
- * cdef PetscBool guess_nonzero = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &guess_nonzero) ) # <<<<<<<<<<<<<<
- * return <bint>guess_nonzero
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetInitialGuessNonzero(__pyx_v_self->ksp, (&__pyx_v_guess_nonzero))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 354, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetInitialGuessNonzero(__pyx_v_self->ksp, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 355, __pyx_L1_error)
- /* "PETSc/KSP.pyx":355
- * cdef PetscBool guess_nonzero = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &guess_nonzero) )
- * return <bint>guess_nonzero # <<<<<<<<<<<<<<
+ /* "PETSc/KSP.pyx":356
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setInitialGuessKnoll(self, bint flag):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_guess_nonzero); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 355, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 356, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":352
+ /* "PETSc/KSP.pyx":353
* CHKERR( KSPSetInitialGuessNonzero(self.ksp, guess_nonzero) )
*
* def getInitialGuessNonzero(self): # <<<<<<<<<<<<<<
- * cdef PetscBool guess_nonzero = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &guess_nonzero) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessNonzero(self.ksp, &flag) )
*/
/* function exit code */
@@ -152961,8 +162026,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_84getInitialGuessNonzero(struct
return __pyx_r;
}
-/* "PETSc/KSP.pyx":357
- * return <bint>guess_nonzero
+/* "PETSc/KSP.pyx":358
+ * return toBool(flag)
*
* def setInitialGuessKnoll(self, bint flag): # <<<<<<<<<<<<<<
* cdef PetscBool guess_knoll = PETSC_FALSE
@@ -152985,6 +162050,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_87setInitialGuessKnoll(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -152995,18 +162061,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_87setInitialGuessKnoll(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setInitialGuessKnoll") < 0)) __PYX_ERR(35, 357, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setInitialGuessKnoll") < 0)) __PYX_ERR(35, 358, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
- __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 357, __pyx_L3_error)
+ __pyx_v_flag = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(35, 358, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setInitialGuessKnoll", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 357, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setInitialGuessKnoll", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 358, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setInitialGuessKnoll", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -153027,7 +162093,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_86setInitialGuessKnoll(struct Py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setInitialGuessKnoll", 0);
- /* "PETSc/KSP.pyx":358
+ /* "PETSc/KSP.pyx":359
*
* def setInitialGuessKnoll(self, bint flag):
* cdef PetscBool guess_knoll = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -153036,7 +162102,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_86setInitialGuessKnoll(struct Py
*/
__pyx_v_guess_knoll = PETSC_FALSE;
- /* "PETSc/KSP.pyx":359
+ /* "PETSc/KSP.pyx":360
* def setInitialGuessKnoll(self, bint flag):
* cdef PetscBool guess_knoll = PETSC_FALSE
* if flag: guess_knoll = PETSC_TRUE # <<<<<<<<<<<<<<
@@ -153048,17 +162114,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_86setInitialGuessKnoll(struct Py
__pyx_v_guess_knoll = PETSC_TRUE;
}
- /* "PETSc/KSP.pyx":360
+ /* "PETSc/KSP.pyx":361
* cdef PetscBool guess_knoll = PETSC_FALSE
* if flag: guess_knoll = PETSC_TRUE
* CHKERR( KSPSetInitialGuessKnoll(self.ksp, guess_knoll) ) # <<<<<<<<<<<<<<
*
* def getInitialGuessKnoll(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetInitialGuessKnoll(__pyx_v_self->ksp, __pyx_v_guess_knoll)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 360, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetInitialGuessKnoll(__pyx_v_self->ksp, __pyx_v_guess_knoll)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 361, __pyx_L1_error)
- /* "PETSc/KSP.pyx":357
- * return <bint>guess_nonzero
+ /* "PETSc/KSP.pyx":358
+ * return toBool(flag)
*
* def setInitialGuessKnoll(self, bint flag): # <<<<<<<<<<<<<<
* cdef PetscBool guess_knoll = PETSC_FALSE
@@ -153077,12 +162143,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_86setInitialGuessKnoll(struct Py
return __pyx_r;
}
-/* "PETSc/KSP.pyx":362
+/* "PETSc/KSP.pyx":363
* CHKERR( KSPSetInitialGuessKnoll(self.ksp, guess_knoll) )
*
* def getInitialGuessKnoll(self): # <<<<<<<<<<<<<<
- * cdef PetscBool guess_knoll = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &guess_knoll) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &flag) )
*/
/* Python wrapper */
@@ -153103,51 +162169,51 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_89getInitialGuessKnoll(PyObject
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_88getInitialGuessKnoll(struct PyPetscKSPObject *__pyx_v_self) {
- PetscBool __pyx_v_guess_knoll;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getInitialGuessKnoll", 0);
- /* "PETSc/KSP.pyx":363
+ /* "PETSc/KSP.pyx":364
*
* def getInitialGuessKnoll(self):
- * cdef PetscBool guess_knoll = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &guess_knoll) )
- * return <bint>guess_knoll
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_guess_knoll = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/KSP.pyx":364
+ /* "PETSc/KSP.pyx":365
* def getInitialGuessKnoll(self):
- * cdef PetscBool guess_knoll = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &guess_knoll) ) # <<<<<<<<<<<<<<
- * return <bint>guess_knoll
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetInitialGuessKnoll(__pyx_v_self->ksp, (&__pyx_v_guess_knoll))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 364, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetInitialGuessKnoll(__pyx_v_self->ksp, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 365, __pyx_L1_error)
- /* "PETSc/KSP.pyx":365
- * cdef PetscBool guess_knoll = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &guess_knoll) )
- * return <bint>guess_knoll # <<<<<<<<<<<<<<
+ /* "PETSc/KSP.pyx":366
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setUseFischerGuess(self, model, size):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_guess_knoll); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 365, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 366, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":362
+ /* "PETSc/KSP.pyx":363
* CHKERR( KSPSetInitialGuessKnoll(self.ksp, guess_knoll) )
*
* def getInitialGuessKnoll(self): # <<<<<<<<<<<<<<
- * cdef PetscBool guess_knoll = PETSC_FALSE
- * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &guess_knoll) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( KSPGetInitialGuessKnoll(self.ksp, &flag) )
*/
/* function exit code */
@@ -153161,8 +162227,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_88getInitialGuessKnoll(struct Py
return __pyx_r;
}
-/* "PETSc/KSP.pyx":367
- * return <bint>guess_knoll
+/* "PETSc/KSP.pyx":368
+ * return toBool(flag)
*
* def setUseFischerGuess(self, model, size): # <<<<<<<<<<<<<<
* cdef PetscInt ival1 = asInt(model)
@@ -153186,7 +162252,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_91setUseFischerGuess(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -153195,14 +162263,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_91setUseFischerGuess(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_model)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setUseFischerGuess", 1, 2, 2, 1); __PYX_ERR(35, 367, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setUseFischerGuess", 1, 2, 2, 1); __PYX_ERR(35, 368, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseFischerGuess") < 0)) __PYX_ERR(35, 367, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseFischerGuess") < 0)) __PYX_ERR(35, 368, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -153215,7 +162284,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_91setUseFischerGuess(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setUseFischerGuess", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 367, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setUseFischerGuess", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 368, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setUseFischerGuess", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -153237,37 +162306,37 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_90setUseFischerGuess(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("setUseFischerGuess", 0);
- /* "PETSc/KSP.pyx":368
+ /* "PETSc/KSP.pyx":369
*
* def setUseFischerGuess(self, model, size):
* cdef PetscInt ival1 = asInt(model) # <<<<<<<<<<<<<<
* cdef PetscInt ival2 = asInt(size)
* CHKERR( KSPSetUseFischerGuess(self.ksp, ival1, ival2) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_model); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(35, 368, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_model); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 369, __pyx_L1_error)
__pyx_v_ival1 = __pyx_t_1;
- /* "PETSc/KSP.pyx":369
+ /* "PETSc/KSP.pyx":370
* def setUseFischerGuess(self, model, size):
* cdef PetscInt ival1 = asInt(model)
* cdef PetscInt ival2 = asInt(size) # <<<<<<<<<<<<<<
* CHKERR( KSPSetUseFischerGuess(self.ksp, ival1, ival2) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(35, 369, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 370, __pyx_L1_error)
__pyx_v_ival2 = __pyx_t_1;
- /* "PETSc/KSP.pyx":370
+ /* "PETSc/KSP.pyx":371
* cdef PetscInt ival1 = asInt(model)
* cdef PetscInt ival2 = asInt(size)
* CHKERR( KSPSetUseFischerGuess(self.ksp, ival1, ival2) ) # <<<<<<<<<<<<<<
*
* # --- solving ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetUseFischerGuess(__pyx_v_self->ksp, __pyx_v_ival1, __pyx_v_ival2)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 370, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetUseFischerGuess(__pyx_v_self->ksp, __pyx_v_ival1, __pyx_v_ival2)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 371, __pyx_L1_error)
- /* "PETSc/KSP.pyx":367
- * return <bint>guess_knoll
+ /* "PETSc/KSP.pyx":368
+ * return toBool(flag)
*
* def setUseFischerGuess(self, model, size): # <<<<<<<<<<<<<<
* cdef PetscInt ival1 = asInt(model)
@@ -153286,7 +162355,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_90setUseFischerGuess(struct PyPe
return __pyx_r;
}
-/* "PETSc/KSP.pyx":374
+/* "PETSc/KSP.pyx":375
* # --- solving ---
*
* def setUp(self): # <<<<<<<<<<<<<<
@@ -153317,16 +162386,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_92setUp(struct PyPetscKSPObject
int __pyx_t_1;
__Pyx_RefNannySetupContext("setUp", 0);
- /* "PETSc/KSP.pyx":375
+ /* "PETSc/KSP.pyx":376
*
* def setUp(self):
* CHKERR( KSPSetUp(self.ksp) ) # <<<<<<<<<<<<<<
*
* def reset(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetUp(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 375, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetUp(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 376, __pyx_L1_error)
- /* "PETSc/KSP.pyx":374
+ /* "PETSc/KSP.pyx":375
* # --- solving ---
*
* def setUp(self): # <<<<<<<<<<<<<<
@@ -153346,7 +162415,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_92setUp(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":377
+/* "PETSc/KSP.pyx":378
* CHKERR( KSPSetUp(self.ksp) )
*
* def reset(self): # <<<<<<<<<<<<<<
@@ -153377,16 +162446,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_94reset(struct PyPetscKSPObject
int __pyx_t_1;
__Pyx_RefNannySetupContext("reset", 0);
- /* "PETSc/KSP.pyx":378
+ /* "PETSc/KSP.pyx":379
*
* def reset(self):
* CHKERR( KSPReset(self.ksp) ) # <<<<<<<<<<<<<<
*
* def setUpOnBlocks(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPReset(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 378, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPReset(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 379, __pyx_L1_error)
- /* "PETSc/KSP.pyx":377
+ /* "PETSc/KSP.pyx":378
* CHKERR( KSPSetUp(self.ksp) )
*
* def reset(self): # <<<<<<<<<<<<<<
@@ -153406,7 +162475,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_94reset(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":380
+/* "PETSc/KSP.pyx":381
* CHKERR( KSPReset(self.ksp) )
*
* def setUpOnBlocks(self): # <<<<<<<<<<<<<<
@@ -153437,16 +162506,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_96setUpOnBlocks(struct PyPetscKS
int __pyx_t_1;
__Pyx_RefNannySetupContext("setUpOnBlocks", 0);
- /* "PETSc/KSP.pyx":381
+ /* "PETSc/KSP.pyx":382
*
* def setUpOnBlocks(self):
* CHKERR( KSPSetUpOnBlocks(self.ksp) ) # <<<<<<<<<<<<<<
*
- * def solve(self, Vec b not None, Vec x not None):
+ * def solve(self, Vec b, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetUpOnBlocks(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 381, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetUpOnBlocks(__pyx_v_self->ksp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 382, __pyx_L1_error)
- /* "PETSc/KSP.pyx":380
+ /* "PETSc/KSP.pyx":381
* CHKERR( KSPReset(self.ksp) )
*
* def setUpOnBlocks(self): # <<<<<<<<<<<<<<
@@ -153466,10 +162535,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_96setUpOnBlocks(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":383
+/* "PETSc/KSP.pyx":384
* CHKERR( KSPSetUpOnBlocks(self.ksp) )
*
- * def solve(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solve(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( KSPSolve(self.ksp, b.vec, x.vec) )
*
*/
@@ -153491,7 +162560,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_99solve(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -153500,14 +162571,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_99solve(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, 1); __PYX_ERR(35, 383, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, 1); __PYX_ERR(35, 384, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(35, 383, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(35, 384, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -153520,14 +162592,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_99solve(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 383, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 384, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(35, 383, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(35, 383, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(35, 384, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(35, 384, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_98solve(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
/* function exit code */
@@ -153545,19 +162617,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_98solve(struct PyPetscKSPObject
int __pyx_t_1;
__Pyx_RefNannySetupContext("solve", 0);
- /* "PETSc/KSP.pyx":384
+ /* "PETSc/KSP.pyx":385
*
- * def solve(self, Vec b not None, Vec x not None):
+ * def solve(self, Vec b, Vec x):
* CHKERR( KSPSolve(self.ksp, b.vec, x.vec) ) # <<<<<<<<<<<<<<
*
- * def solveTranspose(self, Vec b not None, Vec x not None):
+ * def solveTranspose(self, Vec b, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSolve(__pyx_v_self->ksp, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 384, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSolve(__pyx_v_self->ksp, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 385, __pyx_L1_error)
- /* "PETSc/KSP.pyx":383
+ /* "PETSc/KSP.pyx":384
* CHKERR( KSPSetUpOnBlocks(self.ksp) )
*
- * def solve(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solve(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( KSPSolve(self.ksp, b.vec, x.vec) )
*
*/
@@ -153574,10 +162646,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_98solve(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":386
+/* "PETSc/KSP.pyx":387
* CHKERR( KSPSolve(self.ksp, b.vec, x.vec) )
*
- * def solveTranspose(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveTranspose(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( KSPSolveTranspose(self.ksp, b.vec, x.vec) )
*
*/
@@ -153599,7 +162671,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_101solveTranspose(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -153608,14 +162682,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_101solveTranspose(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, 1); __PYX_ERR(35, 386, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, 1); __PYX_ERR(35, 387, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveTranspose") < 0)) __PYX_ERR(35, 386, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solveTranspose") < 0)) __PYX_ERR(35, 387, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -153628,14 +162703,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_101solveTranspose(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 386, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solveTranspose", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 387, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.solveTranspose", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(35, 386, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(35, 386, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "b", 0))) __PYX_ERR(35, 387, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(35, 387, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_100solveTranspose(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
/* function exit code */
@@ -153653,19 +162728,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_100solveTranspose(struct PyPetsc
int __pyx_t_1;
__Pyx_RefNannySetupContext("solveTranspose", 0);
- /* "PETSc/KSP.pyx":387
+ /* "PETSc/KSP.pyx":388
*
- * def solveTranspose(self, Vec b not None, Vec x not None):
+ * def solveTranspose(self, Vec b, Vec x):
* CHKERR( KSPSolveTranspose(self.ksp, b.vec, x.vec) ) # <<<<<<<<<<<<<<
*
* def setIterationNumber(self, its):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSolveTranspose(__pyx_v_self->ksp, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 387, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSolveTranspose(__pyx_v_self->ksp, __pyx_v_b->vec, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 388, __pyx_L1_error)
- /* "PETSc/KSP.pyx":386
+ /* "PETSc/KSP.pyx":387
* CHKERR( KSPSolve(self.ksp, b.vec, x.vec) )
*
- * def solveTranspose(self, Vec b not None, Vec x not None): # <<<<<<<<<<<<<<
+ * def solveTranspose(self, Vec b, Vec x): # <<<<<<<<<<<<<<
* CHKERR( KSPSolveTranspose(self.ksp, b.vec, x.vec) )
*
*/
@@ -153682,7 +162757,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_100solveTranspose(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/KSP.pyx":389
+/* "PETSc/KSP.pyx":390
* CHKERR( KSPSolveTranspose(self.ksp, b.vec, x.vec) )
*
* def setIterationNumber(self, its): # <<<<<<<<<<<<<<
@@ -153706,6 +162781,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_103setIterationNumber(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -153716,7 +162792,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_103setIterationNumber(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIterationNumber") < 0)) __PYX_ERR(35, 389, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIterationNumber") < 0)) __PYX_ERR(35, 390, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -153727,7 +162803,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_103setIterationNumber(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setIterationNumber", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 389, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setIterationNumber", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 390, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setIterationNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -153748,26 +162824,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_102setIterationNumber(struct PyP
int __pyx_t_2;
__Pyx_RefNannySetupContext("setIterationNumber", 0);
- /* "PETSc/KSP.pyx":390
+ /* "PETSc/KSP.pyx":391
*
* def setIterationNumber(self, its):
* cdef PetscInt ival = asInt(its) # <<<<<<<<<<<<<<
* CHKERR( KSPSetIterationNumber(self.ksp, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(35, 390, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 391, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/KSP.pyx":391
+ /* "PETSc/KSP.pyx":392
* def setIterationNumber(self, its):
* cdef PetscInt ival = asInt(its)
* CHKERR( KSPSetIterationNumber(self.ksp, ival) ) # <<<<<<<<<<<<<<
*
* def getIterationNumber(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetIterationNumber(__pyx_v_self->ksp, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 391, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetIterationNumber(__pyx_v_self->ksp, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 392, __pyx_L1_error)
- /* "PETSc/KSP.pyx":389
+ /* "PETSc/KSP.pyx":390
* CHKERR( KSPSolveTranspose(self.ksp, b.vec, x.vec) )
*
* def setIterationNumber(self, its): # <<<<<<<<<<<<<<
@@ -153787,7 +162863,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_102setIterationNumber(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":393
+/* "PETSc/KSP.pyx":394
* CHKERR( KSPSetIterationNumber(self.ksp, ival) )
*
* def getIterationNumber(self): # <<<<<<<<<<<<<<
@@ -153820,7 +162896,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_104getIterationNumber(struct PyP
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getIterationNumber", 0);
- /* "PETSc/KSP.pyx":394
+ /* "PETSc/KSP.pyx":395
*
* def getIterationNumber(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -153829,16 +162905,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_104getIterationNumber(struct PyP
*/
__pyx_v_ival = 0;
- /* "PETSc/KSP.pyx":395
+ /* "PETSc/KSP.pyx":396
* def getIterationNumber(self):
* cdef PetscInt ival = 0
* CHKERR( KSPGetIterationNumber(self.ksp, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetIterationNumber(__pyx_v_self->ksp, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 395, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetIterationNumber(__pyx_v_self->ksp, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 396, __pyx_L1_error)
- /* "PETSc/KSP.pyx":396
+ /* "PETSc/KSP.pyx":397
* cdef PetscInt ival = 0
* CHKERR( KSPGetIterationNumber(self.ksp, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -153846,13 +162922,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_104getIterationNumber(struct PyP
* def setResidualNorm(self, rnorm):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 396, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 397, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":393
+ /* "PETSc/KSP.pyx":394
* CHKERR( KSPSetIterationNumber(self.ksp, ival) )
*
* def getIterationNumber(self): # <<<<<<<<<<<<<<
@@ -153871,7 +162947,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_104getIterationNumber(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":398
+/* "PETSc/KSP.pyx":399
* return toInt(ival)
*
* def setResidualNorm(self, rnorm): # <<<<<<<<<<<<<<
@@ -153895,6 +162971,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_107setResidualNorm(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -153905,7 +162982,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_107setResidualNorm(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setResidualNorm") < 0)) __PYX_ERR(35, 398, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setResidualNorm") < 0)) __PYX_ERR(35, 399, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -153916,7 +162993,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_107setResidualNorm(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setResidualNorm", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 398, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setResidualNorm", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 399, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setResidualNorm", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -153937,26 +163014,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_106setResidualNorm(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("setResidualNorm", 0);
- /* "PETSc/KSP.pyx":399
+ /* "PETSc/KSP.pyx":400
*
* def setResidualNorm(self, rnorm):
* cdef PetscReal rval = asReal(rnorm) # <<<<<<<<<<<<<<
* CHKERR( KSPSetResidualNorm(self.ksp, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(35, 399, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(35, 400, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/KSP.pyx":400
+ /* "PETSc/KSP.pyx":401
* def setResidualNorm(self, rnorm):
* cdef PetscReal rval = asReal(rnorm)
* CHKERR( KSPSetResidualNorm(self.ksp, rval) ) # <<<<<<<<<<<<<<
*
* def getResidualNorm(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetResidualNorm(__pyx_v_self->ksp, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 400, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetResidualNorm(__pyx_v_self->ksp, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 401, __pyx_L1_error)
- /* "PETSc/KSP.pyx":398
+ /* "PETSc/KSP.pyx":399
* return toInt(ival)
*
* def setResidualNorm(self, rnorm): # <<<<<<<<<<<<<<
@@ -153976,7 +163053,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_106setResidualNorm(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":402
+/* "PETSc/KSP.pyx":403
* CHKERR( KSPSetResidualNorm(self.ksp, rval) )
*
* def getResidualNorm(self): # <<<<<<<<<<<<<<
@@ -154009,7 +163086,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_108getResidualNorm(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getResidualNorm", 0);
- /* "PETSc/KSP.pyx":403
+ /* "PETSc/KSP.pyx":404
*
* def getResidualNorm(self):
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
@@ -154018,16 +163095,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_108getResidualNorm(struct PyPets
*/
__pyx_v_rval = 0.0;
- /* "PETSc/KSP.pyx":404
+ /* "PETSc/KSP.pyx":405
* def getResidualNorm(self):
* cdef PetscReal rval = 0
* CHKERR( KSPGetResidualNorm(self.ksp, &rval) ) # <<<<<<<<<<<<<<
* return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetResidualNorm(__pyx_v_self->ksp, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 404, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetResidualNorm(__pyx_v_self->ksp, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 405, __pyx_L1_error)
- /* "PETSc/KSP.pyx":405
+ /* "PETSc/KSP.pyx":406
* cdef PetscReal rval = 0
* CHKERR( KSPGetResidualNorm(self.ksp, &rval) )
* return toReal(rval) # <<<<<<<<<<<<<<
@@ -154035,13 +163112,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_108getResidualNorm(struct PyPets
* def setConvergedReason(self, reason):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 405, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 406, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":402
+ /* "PETSc/KSP.pyx":403
* CHKERR( KSPSetResidualNorm(self.ksp, rval) )
*
* def getResidualNorm(self): # <<<<<<<<<<<<<<
@@ -154060,7 +163137,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_108getResidualNorm(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":407
+/* "PETSc/KSP.pyx":408
* return toReal(rval)
*
* def setConvergedReason(self, reason): # <<<<<<<<<<<<<<
@@ -154084,6 +163161,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_111setConvergedReason(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -154094,7 +163172,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_111setConvergedReason(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergedReason") < 0)) __PYX_ERR(35, 407, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergedReason") < 0)) __PYX_ERR(35, 408, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -154105,7 +163183,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_111setConvergedReason(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConvergedReason", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 407, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConvergedReason", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 408, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setConvergedReason", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -154126,26 +163204,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_110setConvergedReason(struct PyP
int __pyx_t_2;
__Pyx_RefNannySetupContext("setConvergedReason", 0);
- /* "PETSc/KSP.pyx":408
+ /* "PETSc/KSP.pyx":409
*
* def setConvergedReason(self, reason):
* cdef PetscKSPConvergedReason val = reason # <<<<<<<<<<<<<<
* CHKERR( KSPSetConvergedReason(self.ksp, val) )
*
*/
- __pyx_t_1 = ((KSPConvergedReason)__Pyx_PyInt_As_KSPConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 408, __pyx_L1_error)
+ __pyx_t_1 = ((KSPConvergedReason)__Pyx_PyInt_As_KSPConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 409, __pyx_L1_error)
__pyx_v_val = __pyx_t_1;
- /* "PETSc/KSP.pyx":409
+ /* "PETSc/KSP.pyx":410
* def setConvergedReason(self, reason):
* cdef PetscKSPConvergedReason val = reason
* CHKERR( KSPSetConvergedReason(self.ksp, val) ) # <<<<<<<<<<<<<<
*
* def getConvergedReason(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergedReason(__pyx_v_self->ksp, __pyx_v_val)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 409, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetConvergedReason(__pyx_v_self->ksp, __pyx_v_val)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 410, __pyx_L1_error)
- /* "PETSc/KSP.pyx":407
+ /* "PETSc/KSP.pyx":408
* return toReal(rval)
*
* def setConvergedReason(self, reason): # <<<<<<<<<<<<<<
@@ -154165,7 +163243,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_110setConvergedReason(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":411
+/* "PETSc/KSP.pyx":412
* CHKERR( KSPSetConvergedReason(self.ksp, val) )
*
* def getConvergedReason(self): # <<<<<<<<<<<<<<
@@ -154198,7 +163276,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_112getConvergedReason(struct PyP
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getConvergedReason", 0);
- /* "PETSc/KSP.pyx":412
+ /* "PETSc/KSP.pyx":413
*
* def getConvergedReason(self):
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -154207,16 +163285,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_112getConvergedReason(struct PyP
*/
__pyx_v_reason = KSP_CONVERGED_ITERATING;
- /* "PETSc/KSP.pyx":413
+ /* "PETSc/KSP.pyx":414
* def getConvergedReason(self):
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING
* CHKERR( KSPGetConvergedReason(self.ksp, &reason) ) # <<<<<<<<<<<<<<
* return reason
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetConvergedReason(__pyx_v_self->ksp, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 413, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetConvergedReason(__pyx_v_self->ksp, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 414, __pyx_L1_error)
- /* "PETSc/KSP.pyx":414
+ /* "PETSc/KSP.pyx":415
* cdef PetscKSPConvergedReason reason = KSP_CONVERGED_ITERATING
* CHKERR( KSPGetConvergedReason(self.ksp, &reason) )
* return reason # <<<<<<<<<<<<<<
@@ -154224,13 +163302,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_112getConvergedReason(struct PyP
* def getRhs(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_KSPConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 414, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_KSPConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 415, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":411
+ /* "PETSc/KSP.pyx":412
* CHKERR( KSPSetConvergedReason(self.ksp, val) )
*
* def getConvergedReason(self): # <<<<<<<<<<<<<<
@@ -154249,7 +163327,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_112getConvergedReason(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":416
+/* "PETSc/KSP.pyx":417
* return reason
*
* def getRhs(self): # <<<<<<<<<<<<<<
@@ -154282,28 +163360,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_114getRhs(struct PyPetscKSPObjec
int __pyx_t_2;
__Pyx_RefNannySetupContext("getRhs", 0);
- /* "PETSc/KSP.pyx":417
+ /* "PETSc/KSP.pyx":418
*
* def getRhs(self):
* cdef Vec vec = Vec() # <<<<<<<<<<<<<<
* CHKERR( KSPGetRhs(self.ksp, &vec.vec) )
* PetscINCREF(vec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 417, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 418, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":418
+ /* "PETSc/KSP.pyx":419
* def getRhs(self):
* cdef Vec vec = Vec()
* CHKERR( KSPGetRhs(self.ksp, &vec.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(vec.obj)
* return vec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetRhs(__pyx_v_self->ksp, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 418, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetRhs(__pyx_v_self->ksp, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 419, __pyx_L1_error)
- /* "PETSc/KSP.pyx":419
+ /* "PETSc/KSP.pyx":420
* cdef Vec vec = Vec()
* CHKERR( KSPGetRhs(self.ksp, &vec.vec) )
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -154312,7 +163390,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_114getRhs(struct PyPetscKSPObjec
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/KSP.pyx":420
+ /* "PETSc/KSP.pyx":421
* CHKERR( KSPGetRhs(self.ksp, &vec.vec) )
* PetscINCREF(vec.obj)
* return vec # <<<<<<<<<<<<<<
@@ -154324,7 +163402,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_114getRhs(struct PyPetscKSPObjec
__pyx_r = ((PyObject *)__pyx_v_vec);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":416
+ /* "PETSc/KSP.pyx":417
* return reason
*
* def getRhs(self): # <<<<<<<<<<<<<<
@@ -154344,7 +163422,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_114getRhs(struct PyPetscKSPObjec
return __pyx_r;
}
-/* "PETSc/KSP.pyx":422
+/* "PETSc/KSP.pyx":423
* return vec
*
* def getSolution(self): # <<<<<<<<<<<<<<
@@ -154377,28 +163455,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_116getSolution(struct PyPetscKSP
int __pyx_t_2;
__Pyx_RefNannySetupContext("getSolution", 0);
- /* "PETSc/KSP.pyx":423
+ /* "PETSc/KSP.pyx":424
*
* def getSolution(self):
* cdef Vec vec = Vec() # <<<<<<<<<<<<<<
* CHKERR( KSPGetSolution(self.ksp, &vec.vec) )
* PetscINCREF(vec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 423, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":424
+ /* "PETSc/KSP.pyx":425
* def getSolution(self):
* cdef Vec vec = Vec()
* CHKERR( KSPGetSolution(self.ksp, &vec.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(vec.obj)
* return vec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetSolution(__pyx_v_self->ksp, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 424, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetSolution(__pyx_v_self->ksp, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 425, __pyx_L1_error)
- /* "PETSc/KSP.pyx":425
+ /* "PETSc/KSP.pyx":426
* cdef Vec vec = Vec()
* CHKERR( KSPGetSolution(self.ksp, &vec.vec) )
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -154407,7 +163485,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_116getSolution(struct PyPetscKSP
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/KSP.pyx":426
+ /* "PETSc/KSP.pyx":427
* CHKERR( KSPGetSolution(self.ksp, &vec.vec) )
* PetscINCREF(vec.obj)
* return vec # <<<<<<<<<<<<<<
@@ -154419,7 +163497,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_116getSolution(struct PyPetscKSP
__pyx_r = ((PyObject *)__pyx_v_vec);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":422
+ /* "PETSc/KSP.pyx":423
* return vec
*
* def getSolution(self): # <<<<<<<<<<<<<<
@@ -154439,12 +163517,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_116getSolution(struct PyPetscKSP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":428
+/* "PETSc/KSP.pyx":429
* return vec
*
* def getWorkVecs(self, right=None, left=None): # <<<<<<<<<<<<<<
* cdef bint R = right is not None
- * cdef bint L = left is not None
+ * cdef bint L = left is not None
*/
/* Python wrapper */
@@ -154466,7 +163544,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_119getWorkVecs(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -154477,6 +163557,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_119getWorkVecs(PyObject *__pyx_v
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_right);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_left);
@@ -154484,12 +163565,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_119getWorkVecs(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getWorkVecs") < 0)) __PYX_ERR(35, 428, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getWorkVecs") < 0)) __PYX_ERR(35, 429, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -154499,7 +163582,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_119getWorkVecs(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getWorkVecs", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 428, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getWorkVecs", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 429, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.getWorkVecs", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -154541,29 +163624,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
PyObject *__pyx_t_15 = NULL;
__Pyx_RefNannySetupContext("getWorkVecs", 0);
- /* "PETSc/KSP.pyx":429
+ /* "PETSc/KSP.pyx":430
*
* def getWorkVecs(self, right=None, left=None):
* cdef bint R = right is not None # <<<<<<<<<<<<<<
- * cdef bint L = left is not None
+ * cdef bint L = left is not None
* cdef PetscInt i=0, nr=0, nl=0
*/
__pyx_t_1 = (__pyx_v_right != Py_None);
__pyx_v_R = __pyx_t_1;
- /* "PETSc/KSP.pyx":430
+ /* "PETSc/KSP.pyx":431
* def getWorkVecs(self, right=None, left=None):
* cdef bint R = right is not None
- * cdef bint L = left is not None # <<<<<<<<<<<<<<
+ * cdef bint L = left is not None # <<<<<<<<<<<<<<
* cdef PetscInt i=0, nr=0, nl=0
* cdef PetscVec *vr=NULL, *vl=NULL
*/
__pyx_t_1 = (__pyx_v_left != Py_None);
__pyx_v_L = __pyx_t_1;
- /* "PETSc/KSP.pyx":431
+ /* "PETSc/KSP.pyx":432
* cdef bint R = right is not None
- * cdef bint L = left is not None
+ * cdef bint L = left is not None
* cdef PetscInt i=0, nr=0, nl=0 # <<<<<<<<<<<<<<
* cdef PetscVec *vr=NULL, *vl=NULL
* if R: nr = asInt(right)
@@ -154572,8 +163655,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_v_nr = 0;
__pyx_v_nl = 0;
- /* "PETSc/KSP.pyx":432
- * cdef bint L = left is not None
+ /* "PETSc/KSP.pyx":433
+ * cdef bint L = left is not None
* cdef PetscInt i=0, nr=0, nl=0
* cdef PetscVec *vr=NULL, *vl=NULL # <<<<<<<<<<<<<<
* if R: nr = asInt(right)
@@ -154582,7 +163665,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_v_vr = NULL;
__pyx_v_vl = NULL;
- /* "PETSc/KSP.pyx":433
+ /* "PETSc/KSP.pyx":434
* cdef PetscInt i=0, nr=0, nl=0
* cdef PetscVec *vr=NULL, *vl=NULL
* if R: nr = asInt(right) # <<<<<<<<<<<<<<
@@ -154591,11 +163674,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
__pyx_t_1 = (__pyx_v_R != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_right); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(35, 433, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_right); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 434, __pyx_L1_error)
__pyx_v_nr = __pyx_t_2;
}
- /* "PETSc/KSP.pyx":434
+ /* "PETSc/KSP.pyx":435
* cdef PetscVec *vr=NULL, *vl=NULL
* if R: nr = asInt(right)
* if L: nl = asInt(left) # <<<<<<<<<<<<<<
@@ -154604,11 +163687,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
__pyx_t_1 = (__pyx_v_L != 0);
if (__pyx_t_1) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_left); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(35, 434, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_left); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 435, __pyx_L1_error)
__pyx_v_nl = __pyx_t_2;
}
- /* "PETSc/KSP.pyx":435
+ /* "PETSc/KSP.pyx":436
* if R: nr = asInt(right)
* if L: nl = asInt(left)
* cdef object vecsr = [] if R else None # <<<<<<<<<<<<<<
@@ -154616,7 +163699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
* CHKERR( KSPCreateVecs(self.ksp, nr, &vr, nl, &vr) )
*/
if ((__pyx_v_R != 0)) {
- __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 435, __pyx_L1_error)
+ __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = __pyx_t_4;
__pyx_t_4 = 0;
@@ -154627,7 +163710,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_v_vecsr = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":436
+ /* "PETSc/KSP.pyx":437
* if L: nl = asInt(left)
* cdef object vecsr = [] if R else None
* cdef object vecsl = [] if L else None # <<<<<<<<<<<<<<
@@ -154635,7 +163718,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
* try:
*/
if ((__pyx_v_L != 0)) {
- __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 436, __pyx_L1_error)
+ __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 437, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_3 = __pyx_t_4;
__pyx_t_4 = 0;
@@ -154646,16 +163729,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_v_vecsl = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":437
+ /* "PETSc/KSP.pyx":438
* cdef object vecsr = [] if R else None
* cdef object vecsl = [] if L else None
* CHKERR( KSPCreateVecs(self.ksp, nr, &vr, nl, &vr) ) # <<<<<<<<<<<<<<
* try:
* for i from 0 <= i < nr:
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPCreateVecs(__pyx_v_self->ksp, __pyx_v_nr, (&__pyx_v_vr), __pyx_v_nl, (&__pyx_v_vr))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(35, 437, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPCreateVecs(__pyx_v_self->ksp, __pyx_v_nr, (&__pyx_v_vr), __pyx_v_nl, (&__pyx_v_vr))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(35, 438, __pyx_L1_error)
- /* "PETSc/KSP.pyx":438
+ /* "PETSc/KSP.pyx":439
* cdef object vecsl = [] if L else None
* CHKERR( KSPCreateVecs(self.ksp, nr, &vr, nl, &vr) )
* try: # <<<<<<<<<<<<<<
@@ -154664,7 +163747,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
/*try:*/ {
- /* "PETSc/KSP.pyx":439
+ /* "PETSc/KSP.pyx":440
* CHKERR( KSPCreateVecs(self.ksp, nr, &vr, nl, &vr) )
* try:
* for i from 0 <= i < nr: # <<<<<<<<<<<<<<
@@ -154674,20 +163757,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_t_2 = __pyx_v_nr;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_2; __pyx_v_i++) {
- /* "PETSc/KSP.pyx":440
+ /* "PETSc/KSP.pyx":441
* try:
* for i from 0 <= i < nr:
* vecsr.append(ref_Vec(vr[i])) # <<<<<<<<<<<<<<
* for i from 0 <= i < nl:
* vecsl.append(ref_Vec(vl[i]))
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_vr[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 440, __pyx_L6_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_vr[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 441, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_vecsr, __pyx_t_3); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(35, 440, __pyx_L6_error)
+ __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_vecsr, __pyx_t_3); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(35, 441, __pyx_L6_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
- /* "PETSc/KSP.pyx":441
+ /* "PETSc/KSP.pyx":442
* for i from 0 <= i < nr:
* vecsr.append(ref_Vec(vr[i]))
* for i from 0 <= i < nl: # <<<<<<<<<<<<<<
@@ -154697,21 +163780,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_t_2 = __pyx_v_nl;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_2; __pyx_v_i++) {
- /* "PETSc/KSP.pyx":442
+ /* "PETSc/KSP.pyx":443
* vecsr.append(ref_Vec(vr[i]))
* for i from 0 <= i < nl:
* vecsl.append(ref_Vec(vl[i])) # <<<<<<<<<<<<<<
* finally:
* if nr > 0 and vr != NULL:
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_vl[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 442, __pyx_L6_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_vl[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 443, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_vecsl, __pyx_t_3); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(35, 442, __pyx_L6_error)
+ __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_vecsl, __pyx_t_3); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(35, 443, __pyx_L6_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
}
- /* "PETSc/KSP.pyx":444
+ /* "PETSc/KSP.pyx":445
* vecsl.append(ref_Vec(vl[i]))
* finally:
* if nr > 0 and vr != NULL: # <<<<<<<<<<<<<<
@@ -154731,7 +163814,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_L13_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/KSP.pyx":445
+ /* "PETSc/KSP.pyx":446
* finally:
* if nr > 0 and vr != NULL:
* VecDestroyVecs(nr, &vr) # XXX errors? # <<<<<<<<<<<<<<
@@ -154740,7 +163823,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
VecDestroyVecs(__pyx_v_nr, (&__pyx_v_vr));
- /* "PETSc/KSP.pyx":444
+ /* "PETSc/KSP.pyx":445
* vecsl.append(ref_Vec(vl[i]))
* finally:
* if nr > 0 and vr != NULL: # <<<<<<<<<<<<<<
@@ -154749,7 +163832,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
}
- /* "PETSc/KSP.pyx":446
+ /* "PETSc/KSP.pyx":447
* if nr > 0 and vr != NULL:
* VecDestroyVecs(nr, &vr) # XXX errors?
* if nl > 0 and vl !=NULL: # <<<<<<<<<<<<<<
@@ -154767,7 +163850,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_L16_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/KSP.pyx":447
+ /* "PETSc/KSP.pyx":448
* VecDestroyVecs(nr, &vr) # XXX errors?
* if nl > 0 and vl !=NULL:
* VecDestroyVecs(nl, &vl) # XXX errors? # <<<<<<<<<<<<<<
@@ -154776,7 +163859,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
VecDestroyVecs(__pyx_v_nl, (&__pyx_v_vl));
- /* "PETSc/KSP.pyx":446
+ /* "PETSc/KSP.pyx":447
* if nr > 0 and vr != NULL:
* VecDestroyVecs(nr, &vr) # XXX errors?
* if nl > 0 and vl !=NULL: # <<<<<<<<<<<<<<
@@ -154804,7 +163887,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_t_5 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
{
- /* "PETSc/KSP.pyx":444
+ /* "PETSc/KSP.pyx":445
* vecsl.append(ref_Vec(vl[i]))
* finally:
* if nr > 0 and vr != NULL: # <<<<<<<<<<<<<<
@@ -154822,7 +163905,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_L21_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/KSP.pyx":445
+ /* "PETSc/KSP.pyx":446
* finally:
* if nr > 0 and vr != NULL:
* VecDestroyVecs(nr, &vr) # XXX errors? # <<<<<<<<<<<<<<
@@ -154831,7 +163914,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
VecDestroyVecs(__pyx_v_nr, (&__pyx_v_vr));
- /* "PETSc/KSP.pyx":444
+ /* "PETSc/KSP.pyx":445
* vecsl.append(ref_Vec(vl[i]))
* finally:
* if nr > 0 and vr != NULL: # <<<<<<<<<<<<<<
@@ -154840,7 +163923,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
}
- /* "PETSc/KSP.pyx":446
+ /* "PETSc/KSP.pyx":447
* if nr > 0 and vr != NULL:
* VecDestroyVecs(nr, &vr) # XXX errors?
* if nl > 0 and vl !=NULL: # <<<<<<<<<<<<<<
@@ -154858,7 +163941,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_L24_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/KSP.pyx":447
+ /* "PETSc/KSP.pyx":448
* VecDestroyVecs(nr, &vr) # XXX errors?
* if nl > 0 and vl !=NULL:
* VecDestroyVecs(nl, &vl) # XXX errors? # <<<<<<<<<<<<<<
@@ -154867,7 +163950,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
VecDestroyVecs(__pyx_v_nl, (&__pyx_v_vl));
- /* "PETSc/KSP.pyx":446
+ /* "PETSc/KSP.pyx":447
* if nr > 0 and vr != NULL:
* VecDestroyVecs(nr, &vr) # XXX errors?
* if nl > 0 and vl !=NULL: # <<<<<<<<<<<<<<
@@ -154876,7 +163959,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
*/
}
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_13);
__Pyx_XGIVEREF(__pyx_t_14);
@@ -154894,7 +163976,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_L7:;
}
- /* "PETSc/KSP.pyx":449
+ /* "PETSc/KSP.pyx":450
* VecDestroyVecs(nl, &vl) # XXX errors?
* #
* if R and L: return (vecsr, vecsl) # <<<<<<<<<<<<<<
@@ -154912,7 +163994,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
__pyx_L27_bool_binop_done:;
if (__pyx_t_1) {
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 449, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 450, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_vecsr);
__Pyx_GIVEREF(__pyx_v_vecsr);
@@ -154925,7 +164007,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
goto __pyx_L0;
}
- /* "PETSc/KSP.pyx":450
+ /* "PETSc/KSP.pyx":451
* #
* if R and L: return (vecsr, vecsl)
* elif R: return vecsr # <<<<<<<<<<<<<<
@@ -154940,7 +164022,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
goto __pyx_L0;
}
- /* "PETSc/KSP.pyx":451
+ /* "PETSc/KSP.pyx":452
* if R and L: return (vecsr, vecsl)
* elif R: return vecsr
* elif L: return vecsl # <<<<<<<<<<<<<<
@@ -154955,7 +164037,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
goto __pyx_L0;
}
- /* "PETSc/KSP.pyx":452
+ /* "PETSc/KSP.pyx":453
* elif R: return vecsr
* elif L: return vecsl
* else: return None # <<<<<<<<<<<<<<
@@ -154969,12 +164051,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
goto __pyx_L0;
}
- /* "PETSc/KSP.pyx":428
+ /* "PETSc/KSP.pyx":429
* return vec
*
* def getWorkVecs(self, right=None, left=None): # <<<<<<<<<<<<<<
* cdef bint R = right is not None
- * cdef bint L = left is not None
+ * cdef bint L = left is not None
*/
/* function exit code */
@@ -154991,7 +164073,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_118getWorkVecs(struct PyPetscKSP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":454
+/* "PETSc/KSP.pyx":455
* else: return None
*
* def buildSolution(self, Vec x=None): # <<<<<<<<<<<<<<
@@ -155016,6 +164098,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_121buildSolution(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155028,11 +164111,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_121buildSolution(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "buildSolution") < 0)) __PYX_ERR(35, 454, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "buildSolution") < 0)) __PYX_ERR(35, 455, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155041,13 +164125,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_121buildSolution(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("buildSolution", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 454, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("buildSolution", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 455, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.buildSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(35, 454, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "x", 0))) __PYX_ERR(35, 455, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_120buildSolution(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_x);
/* function exit code */
@@ -155069,7 +164153,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_120buildSolution(struct PyPetscK
__Pyx_RefNannySetupContext("buildSolution", 0);
__Pyx_INCREF((PyObject *)__pyx_v_x);
- /* "PETSc/KSP.pyx":455
+ /* "PETSc/KSP.pyx":456
*
* def buildSolution(self, Vec x=None):
* if x is None: x = Vec() # <<<<<<<<<<<<<<
@@ -155079,13 +164163,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_120buildSolution(struct PyPetscK
__pyx_t_1 = (((PyObject *)__pyx_v_x) == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 455, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 456, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_x, ((struct PyPetscVecObject *)__pyx_t_3));
__pyx_t_3 = 0;
}
- /* "PETSc/KSP.pyx":456
+ /* "PETSc/KSP.pyx":457
* def buildSolution(self, Vec x=None):
* if x is None: x = Vec()
* if x.vec == NULL: # <<<<<<<<<<<<<<
@@ -155095,25 +164179,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_120buildSolution(struct PyPetscK
__pyx_t_2 = ((__pyx_v_x->vec == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/KSP.pyx":457
+ /* "PETSc/KSP.pyx":458
* if x is None: x = Vec()
* if x.vec == NULL:
* CHKERR( KSPGetSolution(self.ksp, &x.vec) ) # <<<<<<<<<<<<<<
* CHKERR( VecDuplicate(x.vec, &x.vec) )
* CHKERR( KSPBuildSolution(self.ksp, x.vec, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetSolution(__pyx_v_self->ksp, (&__pyx_v_x->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 457, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetSolution(__pyx_v_self->ksp, (&__pyx_v_x->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 458, __pyx_L1_error)
- /* "PETSc/KSP.pyx":458
+ /* "PETSc/KSP.pyx":459
* if x.vec == NULL:
* CHKERR( KSPGetSolution(self.ksp, &x.vec) )
* CHKERR( VecDuplicate(x.vec, &x.vec) ) # <<<<<<<<<<<<<<
* CHKERR( KSPBuildSolution(self.ksp, x.vec, NULL) )
* return x
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_x->vec, (&__pyx_v_x->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 458, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_x->vec, (&__pyx_v_x->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 459, __pyx_L1_error)
- /* "PETSc/KSP.pyx":456
+ /* "PETSc/KSP.pyx":457
* def buildSolution(self, Vec x=None):
* if x is None: x = Vec()
* if x.vec == NULL: # <<<<<<<<<<<<<<
@@ -155122,16 +164206,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_120buildSolution(struct PyPetscK
*/
}
- /* "PETSc/KSP.pyx":459
+ /* "PETSc/KSP.pyx":460
* CHKERR( KSPGetSolution(self.ksp, &x.vec) )
* CHKERR( VecDuplicate(x.vec, &x.vec) )
* CHKERR( KSPBuildSolution(self.ksp, x.vec, NULL) ) # <<<<<<<<<<<<<<
* return x
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPBuildSolution(__pyx_v_self->ksp, __pyx_v_x->vec, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 459, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPBuildSolution(__pyx_v_self->ksp, __pyx_v_x->vec, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 460, __pyx_L1_error)
- /* "PETSc/KSP.pyx":460
+ /* "PETSc/KSP.pyx":461
* CHKERR( VecDuplicate(x.vec, &x.vec) )
* CHKERR( KSPBuildSolution(self.ksp, x.vec, NULL) )
* return x # <<<<<<<<<<<<<<
@@ -155143,7 +164227,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_120buildSolution(struct PyPetscK
__pyx_r = ((PyObject *)__pyx_v_x);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":454
+ /* "PETSc/KSP.pyx":455
* else: return None
*
* def buildSolution(self, Vec x=None): # <<<<<<<<<<<<<<
@@ -155163,7 +164247,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_120buildSolution(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":462
+/* "PETSc/KSP.pyx":463
* return x
*
* def buildResidual(self, Vec r=None): # <<<<<<<<<<<<<<
@@ -155188,6 +164272,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_123buildResidual(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155200,11 +164285,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_123buildResidual(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "buildResidual") < 0)) __PYX_ERR(35, 462, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "buildResidual") < 0)) __PYX_ERR(35, 463, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155213,13 +164299,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_123buildResidual(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("buildResidual", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 462, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("buildResidual", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 463, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.buildResidual", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "r", 0))) __PYX_ERR(35, 462, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "r", 0))) __PYX_ERR(35, 463, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3KSP_122buildResidual(((struct PyPetscKSPObject *)__pyx_v_self), __pyx_v_r);
/* function exit code */
@@ -155241,7 +164327,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_122buildResidual(struct PyPetscK
__Pyx_RefNannySetupContext("buildResidual", 0);
__Pyx_INCREF((PyObject *)__pyx_v_r);
- /* "PETSc/KSP.pyx":463
+ /* "PETSc/KSP.pyx":464
*
* def buildResidual(self, Vec r=None):
* if r is None: r = Vec() # <<<<<<<<<<<<<<
@@ -155251,13 +164337,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_122buildResidual(struct PyPetscK
__pyx_t_1 = (((PyObject *)__pyx_v_r) == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 463, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 464, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_r, ((struct PyPetscVecObject *)__pyx_t_3));
__pyx_t_3 = 0;
}
- /* "PETSc/KSP.pyx":464
+ /* "PETSc/KSP.pyx":465
* def buildResidual(self, Vec r=None):
* if r is None: r = Vec()
* if r.vec == NULL: # <<<<<<<<<<<<<<
@@ -155267,25 +164353,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_122buildResidual(struct PyPetscK
__pyx_t_2 = ((__pyx_v_r->vec == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/KSP.pyx":465
+ /* "PETSc/KSP.pyx":466
* if r is None: r = Vec()
* if r.vec == NULL:
* CHKERR( KSPGetRhs(self.ksp, &r.vec) ) # <<<<<<<<<<<<<<
* CHKERR( VecDuplicate(r.vec, &r.vec) )
* CHKERR( KSPBuildResidual(self.ksp , NULL, r.vec, &r.vec) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetRhs(__pyx_v_self->ksp, (&__pyx_v_r->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 465, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetRhs(__pyx_v_self->ksp, (&__pyx_v_r->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 466, __pyx_L1_error)
- /* "PETSc/KSP.pyx":466
+ /* "PETSc/KSP.pyx":467
* if r.vec == NULL:
* CHKERR( KSPGetRhs(self.ksp, &r.vec) )
* CHKERR( VecDuplicate(r.vec, &r.vec) ) # <<<<<<<<<<<<<<
* CHKERR( KSPBuildResidual(self.ksp , NULL, r.vec, &r.vec) )
* return r
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_r->vec, (&__pyx_v_r->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 466, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecDuplicate(__pyx_v_r->vec, (&__pyx_v_r->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 467, __pyx_L1_error)
- /* "PETSc/KSP.pyx":464
+ /* "PETSc/KSP.pyx":465
* def buildResidual(self, Vec r=None):
* if r is None: r = Vec()
* if r.vec == NULL: # <<<<<<<<<<<<<<
@@ -155294,16 +164380,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_122buildResidual(struct PyPetscK
*/
}
- /* "PETSc/KSP.pyx":467
+ /* "PETSc/KSP.pyx":468
* CHKERR( KSPGetRhs(self.ksp, &r.vec) )
* CHKERR( VecDuplicate(r.vec, &r.vec) )
* CHKERR( KSPBuildResidual(self.ksp , NULL, r.vec, &r.vec) ) # <<<<<<<<<<<<<<
* return r
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPBuildResidual(__pyx_v_self->ksp, NULL, __pyx_v_r->vec, (&__pyx_v_r->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(35, 467, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPBuildResidual(__pyx_v_self->ksp, NULL, __pyx_v_r->vec, (&__pyx_v_r->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(35, 468, __pyx_L1_error)
- /* "PETSc/KSP.pyx":468
+ /* "PETSc/KSP.pyx":469
* CHKERR( VecDuplicate(r.vec, &r.vec) )
* CHKERR( KSPBuildResidual(self.ksp , NULL, r.vec, &r.vec) )
* return r # <<<<<<<<<<<<<<
@@ -155315,7 +164401,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_122buildResidual(struct PyPetscK
__pyx_r = ((PyObject *)__pyx_v_r);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":462
+ /* "PETSc/KSP.pyx":463
* return x
*
* def buildResidual(self, Vec r=None): # <<<<<<<<<<<<<<
@@ -155335,7 +164421,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_122buildResidual(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":470
+/* "PETSc/KSP.pyx":471
* return r
*
* def computeEigenvalues(self): # <<<<<<<<<<<<<<
@@ -155375,7 +164461,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_124computeEigenvalues(struct PyP
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("computeEigenvalues", 0);
- /* "PETSc/KSP.pyx":471
+ /* "PETSc/KSP.pyx":472
*
* def computeEigenvalues(self):
* cdef PetscInt its = 0 # <<<<<<<<<<<<<<
@@ -155384,7 +164470,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_124computeEigenvalues(struct PyP
*/
__pyx_v_its = 0;
- /* "PETSc/KSP.pyx":472
+ /* "PETSc/KSP.pyx":473
* def computeEigenvalues(self):
* cdef PetscInt its = 0
* cdef PetscInt neig = 0 # <<<<<<<<<<<<<<
@@ -155393,7 +164479,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_124computeEigenvalues(struct PyP
*/
__pyx_v_neig = 0;
- /* "PETSc/KSP.pyx":473
+ /* "PETSc/KSP.pyx":474
* cdef PetscInt its = 0
* cdef PetscInt neig = 0
* cdef PetscReal *rdata = NULL # <<<<<<<<<<<<<<
@@ -155402,7 +164488,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_124computeEigenvalues(struct PyP
*/
__pyx_v_rdata = NULL;
- /* "PETSc/KSP.pyx":474
+ /* "PETSc/KSP.pyx":475
* cdef PetscInt neig = 0
* cdef PetscReal *rdata = NULL
* cdef PetscReal *idata = NULL # <<<<<<<<<<<<<<
@@ -155411,91 +164497,91 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_124computeEigenvalues(struct PyP
*/
__pyx_v_idata = NULL;
- /* "PETSc/KSP.pyx":475
+ /* "PETSc/KSP.pyx":476
* cdef PetscReal *rdata = NULL
* cdef PetscReal *idata = NULL
* CHKERR( KSPGetIterationNumber(self.ksp, &its) ) # <<<<<<<<<<<<<<
* cdef ndarray r = oarray_r(empty_r(its), NULL, &rdata)
* cdef ndarray i = oarray_r(empty_r(its), NULL, &idata)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetIterationNumber(__pyx_v_self->ksp, (&__pyx_v_its))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 475, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGetIterationNumber(__pyx_v_self->ksp, (&__pyx_v_its))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 476, __pyx_L1_error)
- /* "PETSc/KSP.pyx":476
+ /* "PETSc/KSP.pyx":477
* cdef PetscReal *idata = NULL
* CHKERR( KSPGetIterationNumber(self.ksp, &its) )
* cdef ndarray r = oarray_r(empty_r(its), NULL, &rdata) # <<<<<<<<<<<<<<
* cdef ndarray i = oarray_r(empty_r(its), NULL, &idata)
* CHKERR( KSPComputeEigenvalues(self.ksp, its, rdata, idata, &neig) )
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_its)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 476, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_its)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 477, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_2, NULL, (&__pyx_v_rdata))); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 476, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_2, NULL, (&__pyx_v_rdata))); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 477, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_r = ((PyArrayObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":477
+ /* "PETSc/KSP.pyx":478
* CHKERR( KSPGetIterationNumber(self.ksp, &its) )
* cdef ndarray r = oarray_r(empty_r(its), NULL, &rdata)
* cdef ndarray i = oarray_r(empty_r(its), NULL, &idata) # <<<<<<<<<<<<<<
* CHKERR( KSPComputeEigenvalues(self.ksp, its, rdata, idata, &neig) )
* eigen = empty_c(neig)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_its)); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 477, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_its)); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 478, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_3, NULL, (&__pyx_v_idata))); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 477, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_3, NULL, (&__pyx_v_idata))); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 478, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_v_i = ((PyArrayObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/KSP.pyx":478
+ /* "PETSc/KSP.pyx":479
* cdef ndarray r = oarray_r(empty_r(its), NULL, &rdata)
* cdef ndarray i = oarray_r(empty_r(its), NULL, &idata)
* CHKERR( KSPComputeEigenvalues(self.ksp, its, rdata, idata, &neig) ) # <<<<<<<<<<<<<<
* eigen = empty_c(neig)
* eigen.real = r[:neig]
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPComputeEigenvalues(__pyx_v_self->ksp, __pyx_v_its, __pyx_v_rdata, __pyx_v_idata, (&__pyx_v_neig))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 478, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPComputeEigenvalues(__pyx_v_self->ksp, __pyx_v_its, __pyx_v_rdata, __pyx_v_idata, (&__pyx_v_neig))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 479, __pyx_L1_error)
- /* "PETSc/KSP.pyx":479
+ /* "PETSc/KSP.pyx":480
* cdef ndarray i = oarray_r(empty_r(its), NULL, &idata)
* CHKERR( KSPComputeEigenvalues(self.ksp, its, rdata, idata, &neig) )
* eigen = empty_c(neig) # <<<<<<<<<<<<<<
* eigen.real = r[:neig]
* eigen.imag = i[:neig]
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_c(__pyx_v_neig)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 479, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_c(__pyx_v_neig)); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 480, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_eigen = ((PyArrayObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/KSP.pyx":480
+ /* "PETSc/KSP.pyx":481
* CHKERR( KSPComputeEigenvalues(self.ksp, its, rdata, idata, &neig) )
* eigen = empty_c(neig)
* eigen.real = r[:neig] # <<<<<<<<<<<<<<
* eigen.imag = i[:neig]
* return eigen
*/
- __pyx_t_2 = __Pyx_PyObject_GetSlice(((PyObject *)__pyx_v_r), 0, __pyx_v_neig, NULL, NULL, NULL, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 480, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetSlice(((PyObject *)__pyx_v_r), 0, __pyx_v_neig, NULL, NULL, NULL, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 481, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_eigen), __pyx_n_s_real, __pyx_t_2) < 0) __PYX_ERR(35, 480, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_eigen), __pyx_n_s_real, __pyx_t_2) < 0) __PYX_ERR(35, 481, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "PETSc/KSP.pyx":481
+ /* "PETSc/KSP.pyx":482
* eigen = empty_c(neig)
* eigen.real = r[:neig]
* eigen.imag = i[:neig] # <<<<<<<<<<<<<<
* return eigen
*
*/
- __pyx_t_2 = __Pyx_PyObject_GetSlice(((PyObject *)__pyx_v_i), 0, __pyx_v_neig, NULL, NULL, NULL, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 481, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetSlice(((PyObject *)__pyx_v_i), 0, __pyx_v_neig, NULL, NULL, NULL, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 482, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_eigen), __pyx_n_s_imag, __pyx_t_2) < 0) __PYX_ERR(35, 481, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_eigen), __pyx_n_s_imag, __pyx_t_2) < 0) __PYX_ERR(35, 482, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "PETSc/KSP.pyx":482
+ /* "PETSc/KSP.pyx":483
* eigen.real = r[:neig]
* eigen.imag = i[:neig]
* return eigen # <<<<<<<<<<<<<<
@@ -155507,7 +164593,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_124computeEigenvalues(struct PyP
__pyx_r = ((PyObject *)__pyx_v_eigen);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":470
+ /* "PETSc/KSP.pyx":471
* return r
*
* def computeEigenvalues(self): # <<<<<<<<<<<<<<
@@ -155530,7 +164616,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_124computeEigenvalues(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":484
+/* "PETSc/KSP.pyx":485
* return eigen
*
* def computeExtremeSingularValues(self): # <<<<<<<<<<<<<<
@@ -155566,7 +164652,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_126computeExtremeSingularValues(
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("computeExtremeSingularValues", 0);
- /* "PETSc/KSP.pyx":485
+ /* "PETSc/KSP.pyx":486
*
* def computeExtremeSingularValues(self):
* cdef PetscReal smax = 0 # <<<<<<<<<<<<<<
@@ -155575,7 +164661,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_126computeExtremeSingularValues(
*/
__pyx_v_smax = 0.0;
- /* "PETSc/KSP.pyx":486
+ /* "PETSc/KSP.pyx":487
* def computeExtremeSingularValues(self):
* cdef PetscReal smax = 0
* cdef PetscReal smin = 0 # <<<<<<<<<<<<<<
@@ -155584,16 +164670,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_126computeExtremeSingularValues(
*/
__pyx_v_smin = 0.0;
- /* "PETSc/KSP.pyx":487
+ /* "PETSc/KSP.pyx":488
* cdef PetscReal smax = 0
* cdef PetscReal smin = 0
* CHKERR( KSPComputeExtremeSingularValues(self.ksp, &smax, &smin) ) # <<<<<<<<<<<<<<
* return smax, smin
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPComputeExtremeSingularValues(__pyx_v_self->ksp, (&__pyx_v_smax), (&__pyx_v_smin))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 487, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPComputeExtremeSingularValues(__pyx_v_self->ksp, (&__pyx_v_smax), (&__pyx_v_smin))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 488, __pyx_L1_error)
- /* "PETSc/KSP.pyx":488
+ /* "PETSc/KSP.pyx":489
* cdef PetscReal smin = 0
* CHKERR( KSPComputeExtremeSingularValues(self.ksp, &smax, &smin) )
* return smax, smin # <<<<<<<<<<<<<<
@@ -155601,11 +164687,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_126computeExtremeSingularValues(
* # --- GMRES ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = PyFloat_FromDouble(__pyx_v_smax); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 488, __pyx_L1_error)
+ __pyx_t_2 = PyFloat_FromDouble(__pyx_v_smax); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 489, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = PyFloat_FromDouble(__pyx_v_smin); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 488, __pyx_L1_error)
+ __pyx_t_3 = PyFloat_FromDouble(__pyx_v_smin); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 489, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 488, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 489, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
@@ -155617,7 +164703,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_126computeExtremeSingularValues(
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":484
+ /* "PETSc/KSP.pyx":485
* return eigen
*
* def computeExtremeSingularValues(self): # <<<<<<<<<<<<<<
@@ -155638,7 +164724,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_126computeExtremeSingularValues(
return __pyx_r;
}
-/* "PETSc/KSP.pyx":492
+/* "PETSc/KSP.pyx":493
* # --- GMRES ---
*
* def setGMRESRestart(self, restart): # <<<<<<<<<<<<<<
@@ -155662,6 +164748,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_129setGMRESRestart(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155672,7 +164759,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_129setGMRESRestart(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGMRESRestart") < 0)) __PYX_ERR(35, 492, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setGMRESRestart") < 0)) __PYX_ERR(35, 493, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -155683,7 +164770,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_129setGMRESRestart(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setGMRESRestart", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 492, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setGMRESRestart", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 493, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setGMRESRestart", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -155704,26 +164791,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_128setGMRESRestart(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("setGMRESRestart", 0);
- /* "PETSc/KSP.pyx":493
+ /* "PETSc/KSP.pyx":494
*
* def setGMRESRestart(self, restart):
* cdef PetscInt ival = asInt(restart) # <<<<<<<<<<<<<<
* CHKERR( KSPGMRESSetRestart(self.ksp, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_restart); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(35, 493, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_restart); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(35, 494, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/KSP.pyx":494
+ /* "PETSc/KSP.pyx":495
* def setGMRESRestart(self, restart):
* cdef PetscInt ival = asInt(restart)
* CHKERR( KSPGMRESSetRestart(self.ksp, ival) ) # <<<<<<<<<<<<<<
*
* # --- Python ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGMRESSetRestart(__pyx_v_self->ksp, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 494, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPGMRESSetRestart(__pyx_v_self->ksp, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 495, __pyx_L1_error)
- /* "PETSc/KSP.pyx":492
+ /* "PETSc/KSP.pyx":493
* # --- GMRES ---
*
* def setGMRESRestart(self, restart): # <<<<<<<<<<<<<<
@@ -155743,7 +164830,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_128setGMRESRestart(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":498
+/* "PETSc/KSP.pyx":499
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -155770,7 +164857,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_131createPython(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155781,6 +164870,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_131createPython(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_context);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -155788,12 +164878,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_131createPython(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(35, 498, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(35, 499, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155803,7 +164895,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_131createPython(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 498, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 499, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.createPython", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -155825,17 +164917,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_130createPython(struct PyPetscKS
int __pyx_t_2;
__Pyx_RefNannySetupContext("createPython", 0);
- /* "PETSc/KSP.pyx":499
+ /* "PETSc/KSP.pyx":500
*
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscKSP newksp = NULL
* CHKERR( KSPCreate(ccomm, &newksp) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 499, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(35, 500, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/KSP.pyx":500
+ /* "PETSc/KSP.pyx":501
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscKSP newksp = NULL # <<<<<<<<<<<<<<
@@ -155844,16 +164936,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_130createPython(struct PyPetscKS
*/
__pyx_v_newksp = NULL;
- /* "PETSc/KSP.pyx":501
+ /* "PETSc/KSP.pyx":502
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscKSP newksp = NULL
* CHKERR( KSPCreate(ccomm, &newksp) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.ksp = newksp
* CHKERR( KSPSetType(self.ksp, KSPPYTHON) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPCreate(__pyx_v_ccomm, (&__pyx_v_newksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 501, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPCreate(__pyx_v_ccomm, (&__pyx_v_newksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 502, __pyx_L1_error)
- /* "PETSc/KSP.pyx":502
+ /* "PETSc/KSP.pyx":503
* cdef PetscKSP newksp = NULL
* CHKERR( KSPCreate(ccomm, &newksp) )
* PetscCLEAR(self.obj); self.ksp = newksp # <<<<<<<<<<<<<<
@@ -155863,25 +164955,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_130createPython(struct PyPetscKS
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->ksp = __pyx_v_newksp;
- /* "PETSc/KSP.pyx":503
+ /* "PETSc/KSP.pyx":504
* CHKERR( KSPCreate(ccomm, &newksp) )
* PetscCLEAR(self.obj); self.ksp = newksp
* CHKERR( KSPSetType(self.ksp, KSPPYTHON) ) # <<<<<<<<<<<<<<
* CHKERR( KSPPythonSetContext(self.ksp, <void*>context) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetType(__pyx_v_self->ksp, KSPPYTHON)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 503, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPSetType(__pyx_v_self->ksp, KSPPYTHON)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 504, __pyx_L1_error)
- /* "PETSc/KSP.pyx":504
+ /* "PETSc/KSP.pyx":505
* PetscCLEAR(self.obj); self.ksp = newksp
* CHKERR( KSPSetType(self.ksp, KSPPYTHON) )
* CHKERR( KSPPythonSetContext(self.ksp, <void*>context) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonSetContext(__pyx_v_self->ksp, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 504, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonSetContext(__pyx_v_self->ksp, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 505, __pyx_L1_error)
- /* "PETSc/KSP.pyx":505
+ /* "PETSc/KSP.pyx":506
* CHKERR( KSPSetType(self.ksp, KSPPYTHON) )
* CHKERR( KSPPythonSetContext(self.ksp, <void*>context) )
* return self # <<<<<<<<<<<<<<
@@ -155893,7 +164985,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_130createPython(struct PyPetscKS
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/KSP.pyx":498
+ /* "PETSc/KSP.pyx":499
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -155911,7 +165003,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_130createPython(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":507
+/* "PETSc/KSP.pyx":508
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -155935,6 +165027,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_133setPythonContext(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -155945,7 +165038,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_133setPythonContext(PyObject *__
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(35, 507, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(35, 508, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -155956,7 +165049,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_133setPythonContext(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 507, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 508, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setPythonContext", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -155975,16 +165068,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_132setPythonContext(struct PyPet
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPythonContext", 0);
- /* "PETSc/KSP.pyx":508
+ /* "PETSc/KSP.pyx":509
*
* def setPythonContext(self, context):
* CHKERR( KSPPythonSetContext(self.ksp, <void*>context) ) # <<<<<<<<<<<<<<
*
* def getPythonContext(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonSetContext(__pyx_v_self->ksp, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 508, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonSetContext(__pyx_v_self->ksp, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 509, __pyx_L1_error)
- /* "PETSc/KSP.pyx":507
+ /* "PETSc/KSP.pyx":508
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -156004,7 +165097,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_132setPythonContext(struct PyPet
return __pyx_r;
}
-/* "PETSc/KSP.pyx":510
+/* "PETSc/KSP.pyx":511
* CHKERR( KSPPythonSetContext(self.ksp, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -156037,7 +165130,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_134getPythonContext(struct PyPet
int __pyx_t_2;
__Pyx_RefNannySetupContext("getPythonContext", 0);
- /* "PETSc/KSP.pyx":511
+ /* "PETSc/KSP.pyx":512
*
* def getPythonContext(self):
* cdef void *context = NULL # <<<<<<<<<<<<<<
@@ -156046,16 +165139,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_134getPythonContext(struct PyPet
*/
__pyx_v_context = NULL;
- /* "PETSc/KSP.pyx":512
+ /* "PETSc/KSP.pyx":513
* def getPythonContext(self):
* cdef void *context = NULL
* CHKERR( KSPPythonGetContext(self.ksp, &context) ) # <<<<<<<<<<<<<<
* if context == NULL: return None
* else: return <object> context
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonGetContext(__pyx_v_self->ksp, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(35, 512, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonGetContext(__pyx_v_self->ksp, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(35, 513, __pyx_L1_error)
- /* "PETSc/KSP.pyx":513
+ /* "PETSc/KSP.pyx":514
* cdef void *context = NULL
* CHKERR( KSPPythonGetContext(self.ksp, &context) )
* if context == NULL: return None # <<<<<<<<<<<<<<
@@ -156070,7 +165163,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_134getPythonContext(struct PyPet
goto __pyx_L0;
}
- /* "PETSc/KSP.pyx":514
+ /* "PETSc/KSP.pyx":515
* CHKERR( KSPPythonGetContext(self.ksp, &context) )
* if context == NULL: return None
* else: return <object> context # <<<<<<<<<<<<<<
@@ -156084,7 +165177,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_134getPythonContext(struct PyPet
goto __pyx_L0;
}
- /* "PETSc/KSP.pyx":510
+ /* "PETSc/KSP.pyx":511
* CHKERR( KSPPythonSetContext(self.ksp, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -156102,7 +165195,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_134getPythonContext(struct PyPet
return __pyx_r;
}
-/* "PETSc/KSP.pyx":516
+/* "PETSc/KSP.pyx":517
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -156126,6 +165219,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_137setPythonType(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -156136,7 +165230,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_137setPythonType(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(35, 516, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(35, 517, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -156147,7 +165241,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3KSP_137setPythonType(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 516, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(35, 517, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.KSP.setPythonType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -156169,7 +165263,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_136setPythonType(struct PyPetscK
__Pyx_RefNannySetupContext("setPythonType", 0);
__Pyx_INCREF(__pyx_v_py_type);
- /* "PETSc/KSP.pyx":517
+ /* "PETSc/KSP.pyx":518
*
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -156178,28 +165272,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_136setPythonType(struct PyPetscK
*/
__pyx_v_cval = NULL;
- /* "PETSc/KSP.pyx":518
+ /* "PETSc/KSP.pyx":519
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( KSPPythonSetType(self.ksp, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 518, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 519, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_py_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":519
+ /* "PETSc/KSP.pyx":520
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval)
* CHKERR( KSPPythonSetType(self.ksp, cval) ) # <<<<<<<<<<<<<<
*
* # --- application context ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonSetType(__pyx_v_self->ksp, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(35, 519, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(KSPPythonSetType(__pyx_v_self->ksp, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(35, 520, __pyx_L1_error)
- /* "PETSc/KSP.pyx":516
+ /* "PETSc/KSP.pyx":517
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -156221,7 +165315,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_136setPythonType(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":524
+/* "PETSc/KSP.pyx":525
*
* property appctx:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156250,7 +165344,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6appctx___get__(struct PyPetscKS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":525
+ /* "PETSc/KSP.pyx":526
* property appctx:
* def __get__(self):
* return self.getAppCtx() # <<<<<<<<<<<<<<
@@ -156258,10 +165352,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6appctx___get__(struct PyPetscKS
* self.setAppCtx(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 525, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156271,10 +165365,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6appctx___get__(struct PyPetscKS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 525, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 526, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 525, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 526, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -156282,7 +165376,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6appctx___get__(struct PyPetscKS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":524
+ /* "PETSc/KSP.pyx":525
*
* property appctx:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156303,7 +165397,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6appctx___get__(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":526
+/* "PETSc/KSP.pyx":527
* def __get__(self):
* return self.getAppCtx()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -156333,17 +165427,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6appctx_2__set__(struct PyPetscKSPObje
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":527
+ /* "PETSc/KSP.pyx":528
* return self.getAppCtx()
* def __set__(self, value):
* self.setAppCtx(value) # <<<<<<<<<<<<<<
*
* # --- discretization space ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 527, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 528, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156353,23 +165447,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6appctx_2__set__(struct PyPetscKSPObje
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 527, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 528, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 527, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 527, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 528, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 528, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 528, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 528, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":526
+ /* "PETSc/KSP.pyx":527
* def __get__(self):
* return self.getAppCtx()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -156392,7 +165504,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6appctx_2__set__(struct PyPetscKSPObje
return __pyx_r;
}
-/* "PETSc/KSP.pyx":532
+/* "PETSc/KSP.pyx":533
*
* property dm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156421,7 +165533,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2dm___get__(struct PyPetscKSPObj
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":533
+ /* "PETSc/KSP.pyx":534
* property dm:
* def __get__(self):
* return self.getDM() # <<<<<<<<<<<<<<
@@ -156429,10 +165541,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2dm___get__(struct PyPetscKSPObj
* self.setDM(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 533, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 534, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156442,10 +165554,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2dm___get__(struct PyPetscKSPObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 533, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 534, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 533, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 534, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -156453,7 +165565,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2dm___get__(struct PyPetscKSPObj
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":532
+ /* "PETSc/KSP.pyx":533
*
* property dm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156474,7 +165586,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2dm___get__(struct PyPetscKSPObj
return __pyx_r;
}
-/* "PETSc/KSP.pyx":534
+/* "PETSc/KSP.pyx":535
* def __get__(self):
* return self.getDM()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -156504,17 +165616,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_2dm_2__set__(struct PyPetscKSPObject *
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":535
+ /* "PETSc/KSP.pyx":536
* return self.getDM()
* def __set__(self, value):
* self.setDM(value) # <<<<<<<<<<<<<<
*
* # --- vectors ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 535, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 536, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156524,23 +165636,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_2dm_2__set__(struct PyPetscKSPObject *
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 535, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 536, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 535, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 535, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 536, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 536, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 536, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 536, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":534
+ /* "PETSc/KSP.pyx":535
* def __get__(self):
* return self.getDM()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -156563,7 +165693,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_2dm_2__set__(struct PyPetscKSPObject *
return __pyx_r;
}
-/* "PETSc/KSP.pyx":540
+/* "PETSc/KSP.pyx":541
*
* property vec_sol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156592,7 +165722,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_sol___get__(struct PyPetscK
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":541
+ /* "PETSc/KSP.pyx":542
* property vec_sol:
* def __get__(self):
* return self.getSolution() # <<<<<<<<<<<<<<
@@ -156600,10 +165730,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_sol___get__(struct PyPetscK
* property vec_rhs:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 541, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 542, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156613,10 +165743,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_sol___get__(struct PyPetscK
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 541, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 542, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 541, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 542, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -156624,7 +165754,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_sol___get__(struct PyPetscK
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":540
+ /* "PETSc/KSP.pyx":541
*
* property vec_sol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156645,7 +165775,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_sol___get__(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":544
+/* "PETSc/KSP.pyx":545
*
* property vec_rhs:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156674,7 +165804,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_rhs___get__(struct PyPetscK
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":545
+ /* "PETSc/KSP.pyx":546
* property vec_rhs:
* def __get__(self):
* return self.getRhs() # <<<<<<<<<<<<<<
@@ -156682,10 +165812,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_rhs___get__(struct PyPetscK
* # --- operators ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRhs); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 545, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRhs); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 546, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156695,10 +165825,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_rhs___get__(struct PyPetscK
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 545, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 546, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 545, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 546, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -156706,7 +165836,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_rhs___get__(struct PyPetscK
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":544
+ /* "PETSc/KSP.pyx":545
*
* property vec_rhs:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156727,7 +165857,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7vec_rhs___get__(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":550
+/* "PETSc/KSP.pyx":551
*
* property mat_op:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156756,7 +165886,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_op___get__(struct PyPetscKS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":551
+ /* "PETSc/KSP.pyx":552
* property mat_op:
* def __get__(self):
* return self.getOperators()[0] # <<<<<<<<<<<<<<
@@ -156764,10 +165894,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_op___get__(struct PyPetscKS
* property mat_pc:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 551, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156777,21 +165907,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_op___get__(struct PyPetscKS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 551, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 552, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 551, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 552, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 551, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":550
+ /* "PETSc/KSP.pyx":551
*
* property mat_op:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156812,7 +165942,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_op___get__(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":554
+/* "PETSc/KSP.pyx":555
*
* property mat_pc:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156841,7 +165971,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_pc___get__(struct PyPetscKS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":555
+ /* "PETSc/KSP.pyx":556
* property mat_pc:
* def __get__(self):
* return self.getOperators()[1] # <<<<<<<<<<<<<<
@@ -156849,10 +165979,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_pc___get__(struct PyPetscKS
* # --- initial guess ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 555, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getOperators); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156862,21 +165992,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_pc___get__(struct PyPetscKS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 555, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 556, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 555, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 556, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 555, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":554
+ /* "PETSc/KSP.pyx":555
*
* property mat_pc:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156897,7 +166027,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6mat_pc___get__(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":560
+/* "PETSc/KSP.pyx":561
*
* property guess_nonzero:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156926,7 +166056,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero___get__(struct P
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":561
+ /* "PETSc/KSP.pyx":562
* property guess_nonzero:
* def __get__(self):
* return self.getInitialGuessNonzero() # <<<<<<<<<<<<<<
@@ -156934,10 +166064,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero___get__(struct P
* self.setInitialGuessNonzero(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getInitialGuessNonzero); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 561, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getInitialGuessNonzero); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -156947,10 +166077,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero___get__(struct P
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 561, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 562, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 561, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 562, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -156958,7 +166088,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero___get__(struct P
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":560
+ /* "PETSc/KSP.pyx":561
*
* property guess_nonzero:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -156979,7 +166109,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero___get__(struct P
return __pyx_r;
}
-/* "PETSc/KSP.pyx":562
+/* "PETSc/KSP.pyx":563
* def __get__(self):
* return self.getInitialGuessNonzero()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157009,17 +166139,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero_2__set__(struct PyPets
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":563
+ /* "PETSc/KSP.pyx":564
* return self.getInitialGuessNonzero()
* def __set__(self, value):
* self.setInitialGuessNonzero(value) # <<<<<<<<<<<<<<
*
* property guess_knoll:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setInitialGuessNonzero); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 563, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setInitialGuessNonzero); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157029,23 +166159,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero_2__set__(struct PyPets
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 563, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 563, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 563, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 564, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 564, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 564, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 564, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":562
+ /* "PETSc/KSP.pyx":563
* def __get__(self):
* return self.getInitialGuessNonzero()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157068,7 +166216,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_13guess_nonzero_2__set__(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":566
+/* "PETSc/KSP.pyx":567
*
* property guess_knoll:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157097,7 +166245,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll___get__(struct PyP
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":567
+ /* "PETSc/KSP.pyx":568
* property guess_knoll:
* def __get__(self):
* return self.getInitialGuessKnoll() # <<<<<<<<<<<<<<
@@ -157105,10 +166253,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll___get__(struct PyP
* self.setInitialGuessKnoll(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getInitialGuessKnoll); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 567, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getInitialGuessKnoll); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 568, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157118,10 +166266,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll___get__(struct PyP
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 567, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 568, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 567, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 568, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -157129,7 +166277,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll___get__(struct PyP
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":566
+ /* "PETSc/KSP.pyx":567
*
* property guess_knoll:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157150,7 +166298,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll___get__(struct PyP
return __pyx_r;
}
-/* "PETSc/KSP.pyx":568
+/* "PETSc/KSP.pyx":569
* def __get__(self):
* return self.getInitialGuessKnoll()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157180,17 +166328,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll_2__set__(struct PyPetscK
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":569
+ /* "PETSc/KSP.pyx":570
* return self.getInitialGuessKnoll()
* def __set__(self, value):
* self.setInitialGuessKnoll(value) # <<<<<<<<<<<<<<
*
* # --- preconditioner ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setInitialGuessKnoll); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 569, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setInitialGuessKnoll); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 570, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157200,23 +166348,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll_2__set__(struct PyPetscK
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 569, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 570, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 569, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 569, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 570, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 570, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 570, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 570, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":568
+ /* "PETSc/KSP.pyx":569
* def __get__(self):
* return self.getInitialGuessKnoll()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157239,7 +166405,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_11guess_knoll_2__set__(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":574
+/* "PETSc/KSP.pyx":575
*
* property pc:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157268,7 +166434,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2pc___get__(struct PyPetscKSPObj
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":575
+ /* "PETSc/KSP.pyx":576
* property pc:
* def __get__(self):
* return self.getPC() # <<<<<<<<<<<<<<
@@ -157276,10 +166442,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2pc___get__(struct PyPetscKSPObj
* property pc_side:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getPC); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 575, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getPC); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 576, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157289,10 +166455,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2pc___get__(struct PyPetscKSPObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 575, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 576, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 575, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 576, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -157300,7 +166466,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2pc___get__(struct PyPetscKSPObj
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":574
+ /* "PETSc/KSP.pyx":575
*
* property pc:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157321,7 +166487,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_2pc___get__(struct PyPetscKSPObj
return __pyx_r;
}
-/* "PETSc/KSP.pyx":578
+/* "PETSc/KSP.pyx":579
*
* property pc_side:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157350,7 +166516,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side___get__(struct PyPetscK
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":579
+ /* "PETSc/KSP.pyx":580
* property pc_side:
* def __get__(self):
* return self.getPCSide() # <<<<<<<<<<<<<<
@@ -157358,10 +166524,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side___get__(struct PyPetscK
* self.setPCSide(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getPCSide); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 579, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getPCSide); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 580, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157371,10 +166537,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side___get__(struct PyPetscK
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 579, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 580, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 579, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 580, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -157382,7 +166548,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side___get__(struct PyPetscK
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":578
+ /* "PETSc/KSP.pyx":579
*
* property pc_side:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157403,7 +166569,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side___get__(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":580
+/* "PETSc/KSP.pyx":581
* def __get__(self):
* return self.getPCSide()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157433,17 +166599,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side_2__set__(struct PyPetscKSPObj
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":581
+ /* "PETSc/KSP.pyx":582
* return self.getPCSide()
* def __set__(self, value):
* self.setPCSide(value) # <<<<<<<<<<<<<<
*
* property norm_type:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setPCSide); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 581, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setPCSide); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157453,23 +166619,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side_2__set__(struct PyPetscKSPObj
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 581, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 581, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 581, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 582, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 582, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 582, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 582, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":580
+ /* "PETSc/KSP.pyx":581
* def __get__(self):
* return self.getPCSide()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157492,7 +166676,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_7pc_side_2__set__(struct PyPetscKSPObj
return __pyx_r;
}
-/* "PETSc/KSP.pyx":584
+/* "PETSc/KSP.pyx":585
*
* property norm_type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157521,7 +166705,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type___get__(struct PyPets
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":585
+ /* "PETSc/KSP.pyx":586
* property norm_type:
* def __get__(self):
* return self.getNormType() # <<<<<<<<<<<<<<
@@ -157529,10 +166713,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type___get__(struct PyPets
* self.setNormType(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getNormType); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 585, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getNormType); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 586, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157542,10 +166726,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type___get__(struct PyPets
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 585, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 586, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 585, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 586, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -157553,7 +166737,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type___get__(struct PyPets
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":584
+ /* "PETSc/KSP.pyx":585
*
* property norm_type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157574,7 +166758,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":586
+/* "PETSc/KSP.pyx":587
* def __get__(self):
* return self.getNormType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157604,17 +166788,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type_2__set__(struct PyPetscKSPO
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":587
+ /* "PETSc/KSP.pyx":588
* return self.getNormType()
* def __set__(self, value):
* self.setNormType(value) # <<<<<<<<<<<<<<
*
* # --- tolerances ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setNormType); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 587, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setNormType); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157624,23 +166808,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type_2__set__(struct PyPetscKSPO
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 587, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 587, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 587, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 588, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 588, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 588, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 588, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":586
+ /* "PETSc/KSP.pyx":587
* def __get__(self):
* return self.getNormType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157663,7 +166865,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_9norm_type_2__set__(struct PyPetscKSPO
return __pyx_r;
}
-/* "PETSc/KSP.pyx":592
+/* "PETSc/KSP.pyx":593
*
* property rtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157692,7 +166894,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4rtol___get__(struct PyPetscKSPO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":593
+ /* "PETSc/KSP.pyx":594
* property rtol:
* def __get__(self):
* return self.getTolerances()[0] # <<<<<<<<<<<<<<
@@ -157700,10 +166902,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4rtol___get__(struct PyPetscKSPO
* self.setTolerances(rtol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 593, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 594, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157713,21 +166915,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4rtol___get__(struct PyPetscKSPO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 593, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 594, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 593, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 594, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 593, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 594, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":592
+ /* "PETSc/KSP.pyx":593
*
* property rtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157748,7 +166950,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4rtol___get__(struct PyPetscKSPO
return __pyx_r;
}
-/* "PETSc/KSP.pyx":594
+/* "PETSc/KSP.pyx":595
* def __get__(self):
* return self.getTolerances()[0]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157777,25 +166979,25 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_4rtol_2__set__(struct PyPetscKSPObject
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":595
+ /* "PETSc/KSP.pyx":596
* return self.getTolerances()[0]
* def __set__(self, value):
* self.setTolerances(rtol=value) # <<<<<<<<<<<<<<
*
* property atol:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 595, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 595, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol, __pyx_v_value) < 0) __PYX_ERR(35, 595, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 595, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol, __pyx_v_value) < 0) __PYX_ERR(35, 596, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":594
+ /* "PETSc/KSP.pyx":595
* def __get__(self):
* return self.getTolerances()[0]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157817,7 +167019,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_4rtol_2__set__(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":598
+/* "PETSc/KSP.pyx":599
*
* property atol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157846,7 +167048,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4atol___get__(struct PyPetscKSPO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":599
+ /* "PETSc/KSP.pyx":600
* property atol:
* def __get__(self):
* return self.getTolerances()[1] # <<<<<<<<<<<<<<
@@ -157854,10 +167056,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4atol___get__(struct PyPetscKSPO
* self.setTolerances(atol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 599, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 600, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -157867,21 +167069,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4atol___get__(struct PyPetscKSPO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 599, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 600, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 599, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 600, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 599, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 600, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":598
+ /* "PETSc/KSP.pyx":599
*
* property atol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -157902,7 +167104,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4atol___get__(struct PyPetscKSPO
return __pyx_r;
}
-/* "PETSc/KSP.pyx":600
+/* "PETSc/KSP.pyx":601
* def __get__(self):
* return self.getTolerances()[1]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157931,25 +167133,25 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_4atol_2__set__(struct PyPetscKSPObject
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":601
+ /* "PETSc/KSP.pyx":602
* return self.getTolerances()[1]
* def __set__(self, value):
* self.setTolerances(atol=value) # <<<<<<<<<<<<<<
*
* property divtol:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 601, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 602, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 601, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 602, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_atol, __pyx_v_value) < 0) __PYX_ERR(35, 601, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 601, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_atol, __pyx_v_value) < 0) __PYX_ERR(35, 602, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 602, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":600
+ /* "PETSc/KSP.pyx":601
* def __get__(self):
* return self.getTolerances()[1]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -157971,7 +167173,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_4atol_2__set__(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":604
+/* "PETSc/KSP.pyx":605
*
* property divtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158000,7 +167202,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6divtol___get__(struct PyPetscKS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":605
+ /* "PETSc/KSP.pyx":606
* property divtol:
* def __get__(self):
* return self.getTolerances()[2] # <<<<<<<<<<<<<<
@@ -158008,10 +167210,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6divtol___get__(struct PyPetscKS
* self.setTolerances(divtol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 605, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158021,21 +167223,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6divtol___get__(struct PyPetscKS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 605, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 606, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 605, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 606, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 605, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":604
+ /* "PETSc/KSP.pyx":605
*
* property divtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158056,7 +167258,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6divtol___get__(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":606
+/* "PETSc/KSP.pyx":607
* def __get__(self):
* return self.getTolerances()[2]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158085,25 +167287,25 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6divtol_2__set__(struct PyPetscKSPObje
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":607
+ /* "PETSc/KSP.pyx":608
* return self.getTolerances()[2]
* def __set__(self, value):
* self.setTolerances(divtol=value) # <<<<<<<<<<<<<<
*
* property max_it:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 607, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 608, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 607, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 608, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_divtol, __pyx_v_value) < 0) __PYX_ERR(35, 607, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 607, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_divtol, __pyx_v_value) < 0) __PYX_ERR(35, 608, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 608, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":606
+ /* "PETSc/KSP.pyx":607
* def __get__(self):
* return self.getTolerances()[2]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158125,7 +167327,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6divtol_2__set__(struct PyPetscKSPObje
return __pyx_r;
}
-/* "PETSc/KSP.pyx":610
+/* "PETSc/KSP.pyx":611
*
* property max_it:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158154,7 +167356,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6max_it___get__(struct PyPetscKS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":611
+ /* "PETSc/KSP.pyx":612
* property max_it:
* def __get__(self):
* return self.getTolerances()[3] # <<<<<<<<<<<<<<
@@ -158162,10 +167364,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6max_it___get__(struct PyPetscKS
* self.setTolerances(max_it=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 611, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 612, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158175,21 +167377,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6max_it___get__(struct PyPetscKS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 611, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 612, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 611, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 612, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 611, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 612, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":610
+ /* "PETSc/KSP.pyx":611
*
* property max_it:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158210,7 +167412,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6max_it___get__(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":612
+/* "PETSc/KSP.pyx":613
* def __get__(self):
* return self.getTolerances()[3]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158239,25 +167441,25 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6max_it_2__set__(struct PyPetscKSPObje
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":613
+ /* "PETSc/KSP.pyx":614
* return self.getTolerances()[3]
* def __set__(self, value):
* self.setTolerances(max_it=value) # <<<<<<<<<<<<<<
*
* # --- iteration ---
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 613, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 613, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_max_it, __pyx_v_value) < 0) __PYX_ERR(35, 613, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 613, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_max_it, __pyx_v_value) < 0) __PYX_ERR(35, 614, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(35, 614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/KSP.pyx":612
+ /* "PETSc/KSP.pyx":613
* def __get__(self):
* return self.getTolerances()[3]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158279,7 +167481,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6max_it_2__set__(struct PyPetscKSPObje
return __pyx_r;
}
-/* "PETSc/KSP.pyx":618
+/* "PETSc/KSP.pyx":619
*
* property its:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158308,7 +167510,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_3its___get__(struct PyPetscKSPOb
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":619
+ /* "PETSc/KSP.pyx":620
* property its:
* def __get__(self):
* return self.getIterationNumber() # <<<<<<<<<<<<<<
@@ -158316,10 +167518,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_3its___get__(struct PyPetscKSPOb
* self.setIterationNumber(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 619, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 620, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158329,10 +167531,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_3its___get__(struct PyPetscKSPOb
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 619, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 620, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 619, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 620, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -158340,7 +167542,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_3its___get__(struct PyPetscKSPOb
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":618
+ /* "PETSc/KSP.pyx":619
*
* property its:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158361,7 +167563,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_3its___get__(struct PyPetscKSPOb
return __pyx_r;
}
-/* "PETSc/KSP.pyx":620
+/* "PETSc/KSP.pyx":621
* def __get__(self):
* return self.getIterationNumber()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158391,17 +167593,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_3its_2__set__(struct PyPetscKSPObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":621
+ /* "PETSc/KSP.pyx":622
* return self.getIterationNumber()
* def __set__(self, value):
* self.setIterationNumber(value) # <<<<<<<<<<<<<<
*
* property norm:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 621, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 622, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158411,23 +167613,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_3its_2__set__(struct PyPetscKSPObject
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 621, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 622, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 621, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 621, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 622, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 622, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 622, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 622, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":620
+ /* "PETSc/KSP.pyx":621
* def __get__(self):
* return self.getIterationNumber()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158450,7 +167670,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_3its_2__set__(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":624
+/* "PETSc/KSP.pyx":625
*
* property norm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158479,7 +167699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4norm___get__(struct PyPetscKSPO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":625
+ /* "PETSc/KSP.pyx":626
* property norm:
* def __get__(self):
* return self.getResidualNorm() # <<<<<<<<<<<<<<
@@ -158487,10 +167707,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4norm___get__(struct PyPetscKSPO
* self.setResidualNorm(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getResidualNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 625, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getResidualNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 626, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158500,10 +167720,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4norm___get__(struct PyPetscKSPO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 625, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 626, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 625, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 626, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -158511,7 +167731,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4norm___get__(struct PyPetscKSPO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":624
+ /* "PETSc/KSP.pyx":625
*
* property norm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158532,7 +167752,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_4norm___get__(struct PyPetscKSPO
return __pyx_r;
}
-/* "PETSc/KSP.pyx":626
+/* "PETSc/KSP.pyx":627
* def __get__(self):
* return self.getResidualNorm()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158562,17 +167782,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_4norm_2__set__(struct PyPetscKSPObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":627
+ /* "PETSc/KSP.pyx":628
* return self.getResidualNorm()
* def __set__(self, value):
* self.setResidualNorm(value) # <<<<<<<<<<<<<<
*
* property history:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setResidualNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 627, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setResidualNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 628, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158582,23 +167802,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_4norm_2__set__(struct PyPetscKSPObject
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 627, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 628, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 627, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 627, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 628, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 628, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 628, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 628, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":626
+ /* "PETSc/KSP.pyx":627
* def __get__(self):
* return self.getResidualNorm()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158621,7 +167859,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_4norm_2__set__(struct PyPetscKSPObject
return __pyx_r;
}
-/* "PETSc/KSP.pyx":630
+/* "PETSc/KSP.pyx":631
*
* property history:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158650,7 +167888,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7history___get__(struct PyPetscK
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":631
+ /* "PETSc/KSP.pyx":632
* property history:
* def __get__(self):
* return self.getConvergenceHistory() # <<<<<<<<<<<<<<
@@ -158658,10 +167896,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7history___get__(struct PyPetscK
* # --- convergence ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergenceHistory); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 631, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergenceHistory); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 632, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158671,10 +167909,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7history___get__(struct PyPetscK
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 631, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 632, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 631, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 632, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -158682,7 +167920,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7history___get__(struct PyPetscK
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":630
+ /* "PETSc/KSP.pyx":631
*
* property history:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158703,7 +167941,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_7history___get__(struct PyPetscK
return __pyx_r;
}
-/* "PETSc/KSP.pyx":636
+/* "PETSc/KSP.pyx":637
*
* property reason:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158732,7 +167970,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6reason___get__(struct PyPetscKS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":637
+ /* "PETSc/KSP.pyx":638
* property reason:
* def __get__(self):
* return self.getConvergedReason() # <<<<<<<<<<<<<<
@@ -158740,10 +167978,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6reason___get__(struct PyPetscKS
* self.setConvergedReason(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 637, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 638, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158753,10 +167991,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6reason___get__(struct PyPetscKS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 637, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 638, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 637, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 638, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -158764,7 +168002,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6reason___get__(struct PyPetscKS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":636
+ /* "PETSc/KSP.pyx":637
*
* property reason:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158785,7 +168023,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_6reason___get__(struct PyPetscKS
return __pyx_r;
}
-/* "PETSc/KSP.pyx":638
+/* "PETSc/KSP.pyx":639
* def __get__(self):
* return self.getConvergedReason()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158815,17 +168053,17 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6reason_2__set__(struct PyPetscKSPObje
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/KSP.pyx":639
+ /* "PETSc/KSP.pyx":640
* return self.getConvergedReason()
* def __set__(self, value):
* self.setConvergedReason(value) # <<<<<<<<<<<<<<
*
* property iterating:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 639, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 640, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -158835,23 +168073,41 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6reason_2__set__(struct PyPetscKSPObje
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 639, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 640, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 639, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 639, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 640, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 640, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(35, 640, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 640, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/KSP.pyx":638
+ /* "PETSc/KSP.pyx":639
* def __get__(self):
* return self.getConvergedReason()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -158874,7 +168130,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3KSP_6reason_2__set__(struct PyPetscKSPObje
return __pyx_r;
}
-/* "PETSc/KSP.pyx":642
+/* "PETSc/KSP.pyx":643
*
* property iterating:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158902,7 +168158,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9iterating___get__(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":643
+ /* "PETSc/KSP.pyx":644
* property iterating:
* def __get__(self):
* return self.reason == 0 # <<<<<<<<<<<<<<
@@ -158910,16 +168166,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9iterating___get__(struct PyPets
* property converged:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 643, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 644, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyInt_EqObjC(__pyx_t_1, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 643, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_EqObjC(__pyx_t_1, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 644, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":642
+ /* "PETSc/KSP.pyx":643
*
* property iterating:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158939,7 +168195,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9iterating___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":646
+/* "PETSc/KSP.pyx":647
*
* property converged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -158967,7 +168223,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9converged___get__(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":647
+ /* "PETSc/KSP.pyx":648
* property converged:
* def __get__(self):
* return self.reason > 0 # <<<<<<<<<<<<<<
@@ -158975,15 +168231,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9converged___get__(struct PyPets
* property diverged:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 647, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 648, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 647, __pyx_L1_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 648, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":646
+ /* "PETSc/KSP.pyx":647
*
* property converged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -159003,7 +168259,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_9converged___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/KSP.pyx":650
+/* "PETSc/KSP.pyx":651
*
* property diverged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -159031,7 +168287,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_8diverged___get__(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/KSP.pyx":651
+ /* "PETSc/KSP.pyx":652
* property diverged:
* def __get__(self):
* return self.reason < 0 # <<<<<<<<<<<<<<
@@ -159039,15 +168295,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3KSP_8diverged___get__(struct PyPetsc
* # --------------------------------------------------------------------
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 651, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(35, 652, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 651, __pyx_L1_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(35, 652, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/KSP.pyx":650
+ /* "PETSc/KSP.pyx":651
*
* property diverged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -159153,6 +168409,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_3view(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -159170,6 +168427,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_3view(PyObject *__pyx_v_self, P
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -159236,7 +168494,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_2view(struct PyPetscSNESObject
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESView(__pyx_v_self->snes, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 78, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESView(__pyx_v_self->snes, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 78, __pyx_L1_error)
/* "PETSc/SNES.pyx":75
* # --- xxx ---
@@ -159296,7 +168554,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4destroy(struct PyPetscSNESObje
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESDestroy((&__pyx_v_self->snes))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 81, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESDestroy((&__pyx_v_self->snes))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 81, __pyx_L1_error)
/* "PETSc/SNES.pyx":82
* def destroy(self):
@@ -159353,6 +168611,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_7create(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -159370,6 +168629,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_7create(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -159426,7 +168686,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6create(struct PyPetscSNESObjec
* PetscCLEAR(self.obj); self.snes = newsnes
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCreate(__pyx_v_ccomm, (&__pyx_v_newsnes))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 87, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCreate(__pyx_v_ccomm, (&__pyx_v_newsnes))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 87, __pyx_L1_error)
/* "PETSc/SNES.pyx":88
* cdef PetscSNES newsnes = NULL
@@ -159492,6 +168752,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_9setType(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -159563,7 +168824,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_8setType(struct PyPetscSNESObje
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetType(__pyx_v_self->snes, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 94, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetType(__pyx_v_self->snes, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 94, __pyx_L1_error)
/* "PETSc/SNES.pyx":91
* return self
@@ -159636,7 +168897,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_10getType(struct PyPetscSNESObj
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetType(__pyx_v_self->snes, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 98, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetType(__pyx_v_self->snes, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 98, __pyx_L1_error)
/* "PETSc/SNES.pyx":99
* cdef PetscSNESType cval = NULL
@@ -159695,6 +168956,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_13setOptionsPrefix(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -159766,7 +169028,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_12setOptionsPrefix(struct PyPet
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetOptionsPrefix(__pyx_v_self->snes, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 104, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetOptionsPrefix(__pyx_v_self->snes, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 104, __pyx_L1_error)
/* "PETSc/SNES.pyx":101
* return bytes2str(cval)
@@ -159839,7 +169101,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_14getOptionsPrefix(struct PyPet
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetOptionsPrefix(__pyx_v_self->snes, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 108, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetOptionsPrefix(__pyx_v_self->snes, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 108, __pyx_L1_error)
/* "PETSc/SNES.pyx":109
* cdef const_char *cval = NULL
@@ -159912,7 +169174,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_16setFromOptions(struct PyPetsc
*
* # --- application context ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetFromOptions(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 112, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetFromOptions(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 112, __pyx_L1_error)
/* "PETSc/SNES.pyx":111
* return bytes2str(cval)
@@ -159958,6 +169220,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_19setAppCtx(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -160145,7 +169408,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_22getDM(struct PyPetscSNESObjec
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetDM(__pyx_v_self->snes, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 126, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetDM(__pyx_v_self->snes, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 126, __pyx_L1_error)
/* "PETSc/SNES.pyx":127
* cdef PetscDM newdm = NULL
@@ -160186,7 +169449,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_22getDM(struct PyPetscSNESObjec
* PetscINCREF(dm.obj)
* return dm # <<<<<<<<<<<<<<
*
- * def setDM(self, DM dm not None):
+ * def setDM(self, DM dm):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_dm));
@@ -160217,7 +169480,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_22getDM(struct PyPetscSNESObjec
/* "PETSc/SNES.pyx":132
* return dm
*
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
* CHKERR( SNESSetDM(self.snes, dm.dm) )
*
*/
@@ -160238,6 +169501,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_25setDM(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -160285,17 +169549,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_24setDM(struct PyPetscSNESObjec
/* "PETSc/SNES.pyx":133
*
- * def setDM(self, DM dm not None):
+ * def setDM(self, DM dm):
* CHKERR( SNESSetDM(self.snes, dm.dm) ) # <<<<<<<<<<<<<<
*
* # --- FAS ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetDM(__pyx_v_self->snes, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 133, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetDM(__pyx_v_self->snes, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 133, __pyx_L1_error)
/* "PETSc/SNES.pyx":132
* return dm
*
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
* CHKERR( SNESSetDM(self.snes, dm.dm) )
*
*/
@@ -160315,7 +169579,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_24setDM(struct PyPetscSNESObjec
/* "PETSc/SNES.pyx":136
*
* # --- FAS ---
- * def setFASInterpolation(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setFASInterpolation(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetInterpolation(self.snes, clevel, mat.mat) )
*/
@@ -160337,7 +169601,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_27setFASInterpolation(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -160346,6 +169612,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_27setFASInterpolation(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else {
@@ -160394,27 +169661,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_26setFASInterpolation(struct Py
/* "PETSc/SNES.pyx":137
* # --- FAS ---
- * def setFASInterpolation(self, level, Mat mat not None):
+ * def setFASInterpolation(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( SNESFASSetInterpolation(self.snes, clevel, mat.mat) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 137, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 137, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":138
- * def setFASInterpolation(self, level, Mat mat not None):
+ * def setFASInterpolation(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetInterpolation(self.snes, clevel, mat.mat) ) # <<<<<<<<<<<<<<
*
* def getFASInterpolation(self, level):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetInterpolation(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 138, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetInterpolation(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 138, __pyx_L1_error)
/* "PETSc/SNES.pyx":136
*
* # --- FAS ---
- * def setFASInterpolation(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setFASInterpolation(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetInterpolation(self.snes, clevel, mat.mat) )
*/
@@ -160455,6 +169722,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_29getFASInterpolation(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -160506,7 +169774,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_28getFASInterpolation(struct Py
* cdef Mat mat = Mat()
* CHKERR( SNESFASGetInterpolation(self.snes, clevel, &mat.mat) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 141, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 141, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":142
@@ -160528,7 +169796,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_28getFASInterpolation(struct Py
* PetscINCREF(mat.obj)
* return mat
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetInterpolation(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 143, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetInterpolation(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 143, __pyx_L1_error)
/* "PETSc/SNES.pyx":144
* cdef Mat mat = Mat()
@@ -160544,7 +169812,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_28getFASInterpolation(struct Py
* PetscINCREF(mat.obj)
* return mat # <<<<<<<<<<<<<<
*
- * def setFASRestriction(self, level, Mat mat not None):
+ * def setFASRestriction(self, level, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_mat));
@@ -160574,7 +169842,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_28getFASInterpolation(struct Py
/* "PETSc/SNES.pyx":147
* return mat
*
- * def setFASRestriction(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setFASRestriction(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetRestriction(self.snes, clevel, mat.mat) )
*/
@@ -160596,7 +169864,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_31setFASRestriction(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -160605,6 +169875,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_31setFASRestriction(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else {
@@ -160653,27 +169924,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_30setFASRestriction(struct PyPe
/* "PETSc/SNES.pyx":148
*
- * def setFASRestriction(self, level, Mat mat not None):
+ * def setFASRestriction(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( SNESFASSetRestriction(self.snes, clevel, mat.mat) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 148, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 148, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":149
- * def setFASRestriction(self, level, Mat mat not None):
+ * def setFASRestriction(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetRestriction(self.snes, clevel, mat.mat) ) # <<<<<<<<<<<<<<
*
* def getFASRestriction(self, level):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetRestriction(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 149, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetRestriction(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 149, __pyx_L1_error)
/* "PETSc/SNES.pyx":147
* return mat
*
- * def setFASRestriction(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setFASRestriction(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetRestriction(self.snes, clevel, mat.mat) )
*/
@@ -160714,6 +169985,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_33getFASRestriction(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -160765,7 +170037,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_32getFASRestriction(struct PyPe
* cdef Mat mat = Mat()
* CHKERR( SNESFASGetRestriction(self.snes, clevel, &mat.mat) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 152, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 152, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":153
@@ -160787,7 +170059,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_32getFASRestriction(struct PyPe
* PetscINCREF(mat.obj)
* return mat
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetRestriction(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 154, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetRestriction(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 154, __pyx_L1_error)
/* "PETSc/SNES.pyx":155
* cdef Mat mat = Mat()
@@ -160803,7 +170075,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_32getFASRestriction(struct PyPe
* PetscINCREF(mat.obj)
* return mat # <<<<<<<<<<<<<<
*
- * def setFASInjection(self, level, Mat mat not None):
+ * def setFASInjection(self, level, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_mat));
@@ -160833,7 +170105,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_32getFASRestriction(struct PyPe
/* "PETSc/SNES.pyx":158
* return mat
*
- * def setFASInjection(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setFASInjection(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetInjection(self.snes, clevel, mat.mat) )
*/
@@ -160855,7 +170127,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_35setFASInjection(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -160864,6 +170138,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_35setFASInjection(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
else {
@@ -160912,27 +170187,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_34setFASInjection(struct PyPets
/* "PETSc/SNES.pyx":159
*
- * def setFASInjection(self, level, Mat mat not None):
+ * def setFASInjection(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( SNESFASSetInjection(self.snes, clevel, mat.mat) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 159, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 159, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":160
- * def setFASInjection(self, level, Mat mat not None):
+ * def setFASInjection(self, level, Mat mat):
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetInjection(self.snes, clevel, mat.mat) ) # <<<<<<<<<<<<<<
*
* def getFASInjection(self, level):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetInjection(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 160, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetInjection(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_mat->mat)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 160, __pyx_L1_error)
/* "PETSc/SNES.pyx":158
* return mat
*
- * def setFASInjection(self, level, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setFASInjection(self, level, Mat mat): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetInjection(self.snes, clevel, mat.mat) )
*/
@@ -160973,6 +170248,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_37getFASInjection(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -161024,7 +170300,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_36getFASInjection(struct PyPets
* cdef Mat mat = Mat()
* CHKERR( SNESFASGetInjection(self.snes, clevel, &mat.mat) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 163, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 163, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":164
@@ -161046,7 +170322,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_36getFASInjection(struct PyPets
* PetscINCREF(mat.obj)
* return mat
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetInjection(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 165, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetInjection(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 165, __pyx_L1_error)
/* "PETSc/SNES.pyx":166
* cdef Mat mat = Mat()
@@ -161062,7 +170338,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_36getFASInjection(struct PyPets
* PetscINCREF(mat.obj)
* return mat # <<<<<<<<<<<<<<
*
- * def setFASRScale(self, level, Vec vec not None):
+ * def setFASRScale(self, level, Vec vec):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_mat));
@@ -161092,7 +170368,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_36getFASInjection(struct PyPets
/* "PETSc/SNES.pyx":169
* return mat
*
- * def setFASRScale(self, level, Vec vec not None): # <<<<<<<<<<<<<<
+ * def setFASRScale(self, level, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetRScale(self.snes, clevel, vec.vec) )
*/
@@ -161114,7 +170390,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_39setFASRScale(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -161123,6 +170401,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_39setFASRScale(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
else {
@@ -161171,27 +170450,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_38setFASRScale(struct PyPetscSN
/* "PETSc/SNES.pyx":170
*
- * def setFASRScale(self, level, Vec vec not None):
+ * def setFASRScale(self, level, Vec vec):
* cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
* CHKERR( SNESFASSetRScale(self.snes, clevel, vec.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 170, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 170, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":171
- * def setFASRScale(self, level, Vec vec not None):
+ * def setFASRScale(self, level, Vec vec):
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetRScale(self.snes, clevel, vec.vec) ) # <<<<<<<<<<<<<<
*
* def setFASLevels(self, levels, comms=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetRScale(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_vec->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 171, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetRScale(__pyx_v_self->snes, __pyx_v_clevel, __pyx_v_vec->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 171, __pyx_L1_error)
/* "PETSc/SNES.pyx":169
* return mat
*
- * def setFASRScale(self, level, Vec vec not None): # <<<<<<<<<<<<<<
+ * def setFASRScale(self, level, Vec vec): # <<<<<<<<<<<<<<
* cdef PetscInt clevel = asInt(level)
* CHKERR( SNESFASSetRScale(self.snes, clevel, vec.vec) )
*/
@@ -161234,7 +170513,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_41setFASLevels(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -161243,6 +170524,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_41setFASLevels(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_levels)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comms);
@@ -161255,6 +170537,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_41setFASLevels(PyObject *__pyx_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -161313,7 +170596,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
* cdef MPI_Comm *ccomms = NULL
* cdef Py_ssize_t i = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 174, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_levels); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 174, __pyx_L1_error)
__pyx_v_clevels = __pyx_t_1;
/* "PETSc/SNES.pyx":175
@@ -161352,7 +170635,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
* raise ValueError("Must provide as many communicators as levels")
* CHKERR( PetscMalloc(sizeof(MPI_Comm)*<size_t>clevels, &ccomms) )
*/
- __pyx_t_4 = PyObject_Length(__pyx_v_comms); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 178, __pyx_L1_error)
+ __pyx_t_4 = PyObject_Length(__pyx_v_comms); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(36, 178, __pyx_L1_error)
__pyx_t_3 = ((__pyx_v_clevels != ((PetscInt)__pyx_t_4)) != 0);
if (__pyx_t_3) {
@@ -161363,7 +170646,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
* CHKERR( PetscMalloc(sizeof(MPI_Comm)*<size_t>clevels, &ccomms) )
* try:
*/
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__59, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 179, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__62, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 179, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_Raise(__pyx_t_5, 0, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
@@ -161385,7 +170668,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
* try:
* for i, comm in enumerate(comms):
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc(((sizeof(MPI_Comm)) * ((size_t)__pyx_v_clevels)), (&__pyx_v_ccomms))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(36, 180, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc(((sizeof(MPI_Comm)) * ((size_t)__pyx_v_clevels)), (&__pyx_v_ccomms))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(36, 180, __pyx_L1_error)
/* "PETSc/SNES.pyx":181
* raise ValueError("Must provide as many communicators as levels")
@@ -161416,7 +170699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
if (likely(!__pyx_t_8)) {
if (likely(PyList_CheckExact(__pyx_t_5))) {
if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_5)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_9 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(36, 182, __pyx_L6_error)
#else
__pyx_t_9 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(36, 182, __pyx_L6_error)
@@ -161424,7 +170707,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
#endif
} else {
if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(36, 182, __pyx_L6_error)
#else
__pyx_t_9 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(36, 182, __pyx_L6_error)
@@ -161436,7 +170719,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
if (unlikely(!__pyx_t_9)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(36, 182, __pyx_L6_error)
}
break;
@@ -161475,7 +170758,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
* finally:
* CHKERR( PetscFree(ccomms) )
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetLevels(__pyx_v_self->snes, __pyx_v_clevels, __pyx_v_ccomms)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(36, 184, __pyx_L6_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetLevels(__pyx_v_self->snes, __pyx_v_clevels, __pyx_v_ccomms)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(36, 184, __pyx_L6_error)
}
/* "PETSc/SNES.pyx":186
@@ -161487,7 +170770,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_ccomms)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(36, 186, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_ccomms)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(36, 186, __pyx_L1_error)
goto __pyx_L7;
}
/*exception exit:*/{
@@ -161507,9 +170790,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
__Pyx_XGOTREF(__pyx_t_18);
__pyx_t_6 = __pyx_lineno; __pyx_t_11 = __pyx_clineno; __pyx_t_12 = __pyx_filename;
{
- __pyx_t_19 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_ccomms)); if (unlikely(__pyx_t_19 == -1)) __PYX_ERR(36, 186, __pyx_L11_error)
+ __pyx_t_19 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_ccomms)); if (unlikely(__pyx_t_19 == ((int)-1))) __PYX_ERR(36, 186, __pyx_L11_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_16);
__Pyx_XGIVEREF(__pyx_t_17);
@@ -161524,7 +170806,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
__pyx_lineno = __pyx_t_6; __pyx_clineno = __pyx_t_11; __pyx_filename = __pyx_t_12;
goto __pyx_L1_error;
__pyx_L11_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_16);
__Pyx_XGIVEREF(__pyx_t_17);
@@ -161558,7 +170839,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_40setFASLevels(struct PyPetscSN
* def getFASLevels(self):
*/
/*else*/ {
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetLevels(__pyx_v_self->snes, __pyx_v_clevels, __pyx_v_ccomms)); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(36, 188, __pyx_L1_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASSetLevels(__pyx_v_self->snes, __pyx_v_clevels, __pyx_v_ccomms)); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(36, 188, __pyx_L1_error)
}
__pyx_L3:;
@@ -161634,7 +170915,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_42getFASLevels(struct PyPetscSN
* return toInt(levels)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetLevels(__pyx_v_self->snes, (&__pyx_v_levels))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 192, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetLevels(__pyx_v_self->snes, (&__pyx_v_levels))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 192, __pyx_L1_error)
/* "PETSc/SNES.pyx":193
* cdef PetscInt levels = 0
@@ -161693,6 +170974,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_45getFASCycleSNES(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -161744,7 +171026,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_44getFASCycleSNES(struct PyPets
* cdef SNES lsnes = SNES()
* CHKERR( SNESFASGetCycleSNES(self.snes, clevel, &lsnes.snes) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 196, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 196, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":197
@@ -161766,7 +171048,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_44getFASCycleSNES(struct PyPets
* PetscINCREF(lsnes.obj)
* return lsnes
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetCycleSNES(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_lsnes->snes))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 198, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetCycleSNES(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_lsnes->snes))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 198, __pyx_L1_error)
/* "PETSc/SNES.pyx":199
* cdef SNES lsnes = SNES()
@@ -161861,7 +171143,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_46getFASCoarseSolve(struct PyPe
* PetscINCREF(smooth.obj)
* return smooth
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetCoarseSolve(__pyx_v_self->snes, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 204, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetCoarseSolve(__pyx_v_self->snes, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 204, __pyx_L1_error)
/* "PETSc/SNES.pyx":205
* cdef SNES smooth = SNES()
@@ -161928,6 +171210,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_49getFASSmoother(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -161979,7 +171262,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_48getFASSmoother(struct PyPetsc
* cdef SNES smooth = SNES()
* CHKERR( SNESFASGetSmoother(self.snes, clevel, &smooth.snes) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 209, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 209, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":210
@@ -162001,7 +171284,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_48getFASSmoother(struct PyPetsc
* PetscINCREF(smooth.obj)
* return smooth
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetSmoother(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 211, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetSmoother(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 211, __pyx_L1_error)
/* "PETSc/SNES.pyx":212
* cdef SNES smooth = SNES()
@@ -162068,6 +171351,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_51getFASSmootherDown(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -162119,7 +171403,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_50getFASSmootherDown(struct PyP
* cdef SNES smooth = SNES()
* CHKERR( SNESFASGetSmootherDown(self.snes, clevel, &smooth.snes) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 216, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 216, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":217
@@ -162141,7 +171425,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_50getFASSmootherDown(struct PyP
* PetscINCREF(smooth.obj)
* return smooth
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetSmootherDown(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 218, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetSmootherDown(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 218, __pyx_L1_error)
/* "PETSc/SNES.pyx":219
* cdef SNES smooth = SNES()
@@ -162208,6 +171492,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_53getFASSmootherUp(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -162259,7 +171544,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_52getFASSmootherUp(struct PyPet
* cdef SNES smooth = SNES()
* CHKERR( SNESFASGetSmootherUp(self.snes, clevel, &smooth.snes) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 223, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 223, __pyx_L1_error)
__pyx_v_clevel = __pyx_t_1;
/* "PETSc/SNES.pyx":224
@@ -162281,7 +171566,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_52getFASSmootherUp(struct PyPet
* PetscINCREF(smooth.obj)
* return smooth
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetSmootherUp(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 225, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESFASGetSmootherUp(__pyx_v_self->snes, __pyx_v_clevel, (&__pyx_v_smooth->snes))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 225, __pyx_L1_error)
/* "PETSc/SNES.pyx":226
* cdef SNES smooth = SNES()
@@ -162376,7 +171661,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_54getNPC(struct PyPetscSNESObje
* PetscINCREF(snes.obj)
* return snes
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNPC(__pyx_v_self->snes, (&__pyx_v_snes->snes))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 232, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNPC(__pyx_v_self->snes, (&__pyx_v_snes->snes))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 232, __pyx_L1_error)
/* "PETSc/SNES.pyx":233
* cdef SNES snes = SNES()
@@ -162423,8 +171708,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_54getNPC(struct PyPetscSNESObje
* return snes
*
* def hasNPC(self): # <<<<<<<<<<<<<<
- * cdef PetscBool has_npc = PETSC_FALSE
- * CHKERR( SNESHasNPC(self.snes, &has_npc) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESHasNPC(self.snes, &flag) )
*/
/* Python wrapper */
@@ -162445,7 +171730,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_57hasNPC(PyObject *__pyx_v_self
}
static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_56hasNPC(struct PyPetscSNESObject *__pyx_v_self) {
- PetscBool __pyx_v_has_npc;
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
@@ -162455,30 +171740,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_56hasNPC(struct PyPetscSNESObje
/* "PETSc/SNES.pyx":237
*
* def hasNPC(self):
- * cdef PetscBool has_npc = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( SNESHasNPC(self.snes, &has_npc) )
- * return <bint> has_npc
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( SNESHasNPC(self.snes, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_has_npc = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
/* "PETSc/SNES.pyx":238
* def hasNPC(self):
- * cdef PetscBool has_npc = PETSC_FALSE
- * CHKERR( SNESHasNPC(self.snes, &has_npc) ) # <<<<<<<<<<<<<<
- * return <bint> has_npc
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESHasNPC(self.snes, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESHasNPC(__pyx_v_self->snes, (&__pyx_v_has_npc))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 238, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESHasNPC(__pyx_v_self->snes, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 238, __pyx_L1_error)
/* "PETSc/SNES.pyx":239
- * cdef PetscBool has_npc = PETSC_FALSE
- * CHKERR( SNESHasNPC(self.snes, &has_npc) )
- * return <bint> has_npc # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESHasNPC(self.snes, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
- * def setNPC(self, SNES snes not None):
+ * def setNPC(self, SNES snes):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_has_npc); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 239, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 239, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
@@ -162488,8 +171773,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_56hasNPC(struct PyPetscSNESObje
* return snes
*
* def hasNPC(self): # <<<<<<<<<<<<<<
- * cdef PetscBool has_npc = PETSC_FALSE
- * CHKERR( SNESHasNPC(self.snes, &has_npc) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESHasNPC(self.snes, &flag) )
*/
/* function exit code */
@@ -162504,9 +171789,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_56hasNPC(struct PyPetscSNESObje
}
/* "PETSc/SNES.pyx":241
- * return <bint> has_npc
+ * return toBool(flag)
*
- * def setNPC(self, SNES snes not None): # <<<<<<<<<<<<<<
+ * def setNPC(self, SNES snes): # <<<<<<<<<<<<<<
* CHKERR( SNESSetNPC(self.snes, snes.snes) )
*
*/
@@ -162527,6 +171812,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_59setNPC(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -162574,17 +171860,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_58setNPC(struct PyPetscSNESObje
/* "PETSc/SNES.pyx":242
*
- * def setNPC(self, SNES snes not None):
+ * def setNPC(self, SNES snes):
* CHKERR( SNESSetNPC(self.snes, snes.snes) ) # <<<<<<<<<<<<<<
*
* # --- user Function/Jacobian routines ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetNPC(__pyx_v_self->snes, __pyx_v_snes->snes)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 242, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetNPC(__pyx_v_self->snes, __pyx_v_snes->snes)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 242, __pyx_L1_error)
/* "PETSc/SNES.pyx":241
- * return <bint> has_npc
+ * return toBool(flag)
*
- * def setNPC(self, SNES snes not None): # <<<<<<<<<<<<<<
+ * def setNPC(self, SNES snes): # <<<<<<<<<<<<<<
* CHKERR( SNESSetNPC(self.snes, snes.snes) )
*
*/
@@ -162629,8 +171915,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_61setInitialGuess(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -162639,11 +171928,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_61setInitialGuess(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_initialguess)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -162656,7 +171947,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_61setInitialGuess(PyObject *__p
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -162728,7 +172021,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_60setInitialGuess(struct PyPets
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 249, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -162773,7 +172066,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_60setInitialGuess(struct PyPets
* else:
* self.set_attr('__initialguess__', None)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetComputeInitialGuess(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 252, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetComputeInitialGuess(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_InitialGuess, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 252, __pyx_L1_error)
/* "PETSc/SNES.pyx":247
*
@@ -162804,7 +172097,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_60setInitialGuess(struct PyPets
*
* def getInitialGuess(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetComputeInitialGuess(__pyx_v_self->snes, NULL, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 255, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetComputeInitialGuess(__pyx_v_self->snes, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 255, __pyx_L1_error)
}
__pyx_L3:;
@@ -162925,9 +172218,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_65setFunction(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -162936,16 +172233,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_65setFunction(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_function)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setFunction", 0, 2, 4, 1); __PYX_ERR(36, 260, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -162958,7 +172258,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_65setFunction(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -162978,7 +172280,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_65setFunction(PyObject *__pyx_v
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "f", 0))) __PYX_ERR(36, 260, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(36, 260, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_64setFunction(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_function, __pyx_v_f, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
@@ -163062,7 +172364,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_64setFunction(struct PyPetscSNE
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 265, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 265, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
@@ -163107,7 +172409,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_64setFunction(struct PyPetscSNE
* else:
* CHKERR( SNESSetFunction(self.snes, fvec, NULL, NULL) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetFunction(__pyx_v_self->snes, __pyx_v_fvec, __pyx_f_8petsc4py_5PETSc_SNES_Function, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(36, 268, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetFunction(__pyx_v_self->snes, __pyx_v_fvec, __pyx_f_8petsc4py_5PETSc_SNES_Function, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(36, 268, __pyx_L1_error)
/* "PETSc/SNES.pyx":263
* cdef PetscVec fvec=NULL
@@ -163127,7 +172429,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_64setFunction(struct PyPetscSNE
* def getFunction(self):
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetFunction(__pyx_v_self->snes, __pyx_v_fvec, NULL, NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(36, 270, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetFunction(__pyx_v_self->snes, __pyx_v_fvec, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(36, 270, __pyx_L1_error)
}
__pyx_L4:;
@@ -163208,7 +172510,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_66getFunction(struct PyPetscSNE
* PetscINCREF(f.obj)
* cdef object function = self.get_attr('__function__')
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetFunction(__pyx_v_self->snes, (&__pyx_v_f->vec), NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 274, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetFunction(__pyx_v_self->snes, (&__pyx_v_f->vec), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 274, __pyx_L1_error)
/* "PETSc/SNES.pyx":275
* cdef Vec f = Vec()
@@ -163300,8 +172602,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_69setUpdate(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -163310,11 +172615,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_69setUpdate(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_update)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -163327,7 +172634,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_69setUpdate(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -163399,7 +172708,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_68setUpdate(struct PyPetscSNESO
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 282, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -163444,7 +172753,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_68setUpdate(struct PyPetscSNESO
* else:
* self.set_attr('__update__', None)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUpdate(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Update)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 285, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUpdate(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Update)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 285, __pyx_L1_error)
/* "PETSc/SNES.pyx":280
*
@@ -163475,7 +172784,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_68setUpdate(struct PyPetscSNESO
*
* def getUpdate(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUpdate(__pyx_v_self->snes, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 288, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUpdate(__pyx_v_self->snes, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 288, __pyx_L1_error)
}
__pyx_L3:;
@@ -163539,7 +172848,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_70getUpdate(struct PyPetscSNESO
* def getUpdate(self):
* return self.get_attr('__update__') # <<<<<<<<<<<<<<
*
- * def setJacobian(self, jacobian, Mat J, Mat P=None, args=None, kargs=None):
+ * def setJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__update__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 291, __pyx_L1_error)
@@ -163570,14 +172879,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_70getUpdate(struct PyPetscSNESO
/* "PETSc/SNES.pyx":293
* return self.get_attr('__update__')
*
- * def setJacobian(self, jacobian, Mat J, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * def setJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
* cdef PetscMat Jmat=NULL
* if J is not None: Jmat = J.mat
*/
/* Python wrapper */
static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_73setJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_72setJacobian[] = "SNES.setJacobian(self, jacobian, Mat J, Mat P=None, args=None, kargs=None)";
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_72setJacobian[] = "SNES.setJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None)";
static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_73setJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_jacobian = 0;
struct PyPetscMatObject *__pyx_v_J = 0;
@@ -163590,6 +172899,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_73setJacobian(PyObject *__pyx_v
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_jacobian,&__pyx_n_s_J,&__pyx_n_s_P,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
PyObject* values[5] = {0,0,0,0,0};
+ values[1] = (PyObject *)((struct PyPetscMatObject *)Py_None);
values[2] = (PyObject *)((struct PyPetscMatObject *)Py_None);
values[3] = ((PyObject *)Py_None);
values[4] = ((PyObject *)Py_None);
@@ -163598,10 +172908,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_73setJacobian(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -163610,21 +172925,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_73setJacobian(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
- if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
- else {
- __Pyx_RaiseArgtupleInvalid("setJacobian", 0, 2, 5, 1); __PYX_ERR(36, 293, __pyx_L3_error)
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J);
+ if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -163637,10 +172956,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_73setJacobian(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
@@ -163653,7 +172976,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_73setJacobian(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setJacobian", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 293, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setJacobian", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 293, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -163689,7 +173012,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_72setJacobian(struct PyPetscSNE
/* "PETSc/SNES.pyx":294
*
- * def setJacobian(self, jacobian, Mat J, Mat P=None, args=None, kargs=None):
+ * def setJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
* cdef PetscMat Jmat=NULL # <<<<<<<<<<<<<<
* if J is not None: Jmat = J.mat
* cdef PetscMat Pmat=Jmat
@@ -163697,7 +173020,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_72setJacobian(struct PyPetscSNE
__pyx_v_Jmat = NULL;
/* "PETSc/SNES.pyx":295
- * def setJacobian(self, jacobian, Mat J, Mat P=None, args=None, kargs=None):
+ * def setJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
* cdef PetscMat Jmat=NULL
* if J is not None: Jmat = J.mat # <<<<<<<<<<<<<<
* cdef PetscMat Pmat=Jmat
@@ -163768,7 +173091,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_72setJacobian(struct PyPetscSNE
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 300, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 300, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
@@ -163813,7 +173136,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_72setJacobian(struct PyPetscSNE
* else:
* CHKERR( SNESSetJacobian(self.snes, Jmat, Pmat, NULL, NULL) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetJacobian(__pyx_v_self->snes, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_SNES_Jacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(36, 303, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetJacobian(__pyx_v_self->snes, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_SNES_Jacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(36, 303, __pyx_L1_error)
/* "PETSc/SNES.pyx":298
* cdef PetscMat Pmat=Jmat
@@ -163833,14 +173156,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_72setJacobian(struct PyPetscSNE
* def getJacobian(self):
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetJacobian(__pyx_v_self->snes, __pyx_v_Jmat, __pyx_v_Pmat, NULL, NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(36, 305, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetJacobian(__pyx_v_self->snes, __pyx_v_Jmat, __pyx_v_Pmat, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(36, 305, __pyx_L1_error)
}
__pyx_L5:;
/* "PETSc/SNES.pyx":293
* return self.get_attr('__update__')
*
- * def setJacobian(self, jacobian, Mat J, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * def setJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
* cdef PetscMat Jmat=NULL
* if J is not None: Jmat = J.mat
*/
@@ -163927,7 +173250,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_74getJacobian(struct PyPetscSNE
* PetscINCREF(J.obj)
* PetscINCREF(P.obj)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetJacobian(__pyx_v_self->snes, (&__pyx_v_J->mat), (&__pyx_v_P->mat), NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 310, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetJacobian(__pyx_v_self->snes, (&__pyx_v_J->mat), (&__pyx_v_P->mat), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 310, __pyx_L1_error)
/* "PETSc/SNES.pyx":311
* cdef Mat P = Mat()
@@ -164032,8 +173355,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_77setObjective(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -164042,11 +173368,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_77setObjective(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_objective)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -164059,7 +173387,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_77setObjective(PyObject *__pyx_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -164131,7 +173461,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_76setObjective(struct PyPetscSN
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 319, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 319, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -164176,7 +173506,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_76setObjective(struct PyPetscSN
* else:
* CHKERR( SNESSetObjective(self.snes, NULL, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetObjective(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Objective, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 322, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetObjective(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Objective, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 322, __pyx_L1_error)
/* "PETSc/SNES.pyx":317
*
@@ -164196,7 +173526,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_76setObjective(struct PyPetscSN
* def getObjective(self):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetObjective(__pyx_v_self->snes, NULL, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 324, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetObjective(__pyx_v_self->snes, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 324, __pyx_L1_error)
}
__pyx_L3:;
@@ -164264,7 +173594,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_78getObjective(struct PyPetscSN
* cdef object objective = self.get_attr('__objective__')
* return objective
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetObjective(__pyx_v_self->snes, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 327, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetObjective(__pyx_v_self->snes, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 327, __pyx_L1_error)
/* "PETSc/SNES.pyx":328
* def getObjective(self):
@@ -164283,7 +173613,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_78getObjective(struct PyPetscSN
* cdef object objective = self.get_attr('__objective__')
* return objective # <<<<<<<<<<<<<<
*
- * def computeFunction(self, Vec x not None, Vec f not None):
+ * def computeFunction(self, Vec x, Vec f):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_objective);
@@ -164313,7 +173643,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_78getObjective(struct PyPetscSN
/* "PETSc/SNES.pyx":331
* return objective
*
- * def computeFunction(self, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeFunction(self, Vec x, Vec f): # <<<<<<<<<<<<<<
* CHKERR( SNESComputeFunction(self.snes, x.vec, f.vec) )
*
*/
@@ -164335,7 +173665,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_81computeFunction(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -164344,6 +173676,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_81computeFunction(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
else {
@@ -164391,17 +173724,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_80computeFunction(struct PyPets
/* "PETSc/SNES.pyx":332
*
- * def computeFunction(self, Vec x not None, Vec f not None):
+ * def computeFunction(self, Vec x, Vec f):
* CHKERR( SNESComputeFunction(self.snes, x.vec, f.vec) ) # <<<<<<<<<<<<<<
*
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None):
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESComputeFunction(__pyx_v_self->snes, __pyx_v_x->vec, __pyx_v_f->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 332, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESComputeFunction(__pyx_v_self->snes, __pyx_v_x->vec, __pyx_v_f->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 332, __pyx_L1_error)
/* "PETSc/SNES.pyx":331
* return objective
*
- * def computeFunction(self, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeFunction(self, Vec x, Vec f): # <<<<<<<<<<<<<<
* CHKERR( SNESComputeFunction(self.snes, x.vec, f.vec) )
*
*/
@@ -164421,7 +173754,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_80computeFunction(struct PyPets
/* "PETSc/SNES.pyx":334
* CHKERR( SNESComputeFunction(self.snes, x.vec, f.vec) )
*
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
*/
@@ -164445,8 +173778,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_83computeJacobian(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -164455,11 +173791,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_83computeJacobian(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("computeJacobian", 0, 2, 3, 1); __PYX_ERR(36, 334, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
@@ -164472,6 +173810,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_83computeJacobian(PyObject *__p
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -164517,7 +173856,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_82computeJacobian(struct PyPets
/* "PETSc/SNES.pyx":335
*
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None):
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None):
* cdef PetscMat jmat = J.mat, pmat = J.mat # <<<<<<<<<<<<<<
* if P is not None: pmat = P.mat
* CHKERR( SNESComputeJacobian(self.snes, x.vec, jmat, pmat) )
@@ -164528,7 +173867,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_82computeJacobian(struct PyPets
__pyx_v_pmat = __pyx_t_1;
/* "PETSc/SNES.pyx":336
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None):
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None):
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat # <<<<<<<<<<<<<<
* CHKERR( SNESComputeJacobian(self.snes, x.vec, jmat, pmat) )
@@ -164546,14 +173885,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_82computeJacobian(struct PyPets
* if P is not None: pmat = P.mat
* CHKERR( SNESComputeJacobian(self.snes, x.vec, jmat, pmat) ) # <<<<<<<<<<<<<<
*
- * def computeObjective(self, Vec x not None):
+ * def computeObjective(self, Vec x):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESComputeJacobian(__pyx_v_self->snes, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 337, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESComputeJacobian(__pyx_v_self->snes, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 337, __pyx_L1_error)
/* "PETSc/SNES.pyx":334
* CHKERR( SNESComputeFunction(self.snes, x.vec, f.vec) )
*
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
*/
@@ -164573,7 +173912,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_82computeJacobian(struct PyPets
/* "PETSc/SNES.pyx":339
* CHKERR( SNESComputeJacobian(self.snes, x.vec, jmat, pmat) )
*
- * def computeObjective(self, Vec x not None): # <<<<<<<<<<<<<<
+ * def computeObjective(self, Vec x): # <<<<<<<<<<<<<<
* cdef PetscReal o = 0
* CHKERR( SNESComputeObjective(self.snes, x.vec, &o) )
*/
@@ -164594,6 +173933,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_85computeObjective(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -164643,7 +173983,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_84computeObjective(struct PyPet
/* "PETSc/SNES.pyx":340
*
- * def computeObjective(self, Vec x not None):
+ * def computeObjective(self, Vec x):
* cdef PetscReal o = 0 # <<<<<<<<<<<<<<
* CHKERR( SNESComputeObjective(self.snes, x.vec, &o) )
* return toReal(o)
@@ -164651,20 +173991,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_84computeObjective(struct PyPet
__pyx_v_o = 0.0;
/* "PETSc/SNES.pyx":341
- * def computeObjective(self, Vec x not None):
+ * def computeObjective(self, Vec x):
* cdef PetscReal o = 0
* CHKERR( SNESComputeObjective(self.snes, x.vec, &o) ) # <<<<<<<<<<<<<<
* return toReal(o)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESComputeObjective(__pyx_v_self->snes, __pyx_v_x->vec, (&__pyx_v_o))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 341, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESComputeObjective(__pyx_v_self->snes, __pyx_v_x->vec, (&__pyx_v_o))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 341, __pyx_L1_error)
/* "PETSc/SNES.pyx":342
* cdef PetscReal o = 0
* CHKERR( SNESComputeObjective(self.snes, x.vec, &o) )
* return toReal(o) # <<<<<<<<<<<<<<
*
- * # --- tolerances and convergence ---
+ * def setNGS(self, ngs, args=None, kargs=None):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_o); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 342, __pyx_L1_error)
@@ -164676,7 +174016,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_84computeObjective(struct PyPet
/* "PETSc/SNES.pyx":339
* CHKERR( SNESComputeJacobian(self.snes, x.vec, jmat, pmat) )
*
- * def computeObjective(self, Vec x not None): # <<<<<<<<<<<<<<
+ * def computeObjective(self, Vec x): # <<<<<<<<<<<<<<
* cdef PetscReal o = 0
* CHKERR( SNESComputeObjective(self.snes, x.vec, &o) )
*/
@@ -164692,7 +174032,429 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_84computeObjective(struct PyPet
return __pyx_r;
}
-/* "PETSc/SNES.pyx":346
+/* "PETSc/SNES.pyx":344
+ * return toReal(o)
+ *
+ * def setNGS(self, ngs, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setNGS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_86setNGS[] = "SNES.setNGS(self, ngs, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setNGS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_ngs = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setNGS (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_ngs,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ngs)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNGS") < 0)) __PYX_ERR(36, 344, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_ngs = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setNGS", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 344, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.setNGS", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_86setNGS(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_ngs, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setNGS(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_ngs, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setNGS", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/SNES.pyx":345
+ *
+ * def setNGS(self, ngs, args=None, kargs=None):
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (ngs, args, kargs)
+ */
+ __pyx_t_1 = (__pyx_v_args == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/SNES.pyx":346
+ * def setNGS(self, ngs, args=None, kargs=None):
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (ngs, args, kargs)
+ * self.set_attr('__ngs__', context)
+ */
+ __pyx_t_2 = (__pyx_v_kargs == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 346, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/SNES.pyx":347
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (ngs, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__ngs__', context)
+ * CHKERR( SNESSetNGS(self.snes, SNES_NGS, <void*>context) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 347, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_ngs);
+ __Pyx_GIVEREF(__pyx_v_ngs);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_ngs);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/SNES.pyx":348
+ * if kargs is None: kargs = {}
+ * context = (ngs, args, kargs)
+ * self.set_attr('__ngs__', context) # <<<<<<<<<<<<<<
+ * CHKERR( SNESSetNGS(self.snes, SNES_NGS, <void*>context) )
+ *
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ngs__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 348, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/SNES.pyx":349
+ * context = (ngs, args, kargs)
+ * self.set_attr('__ngs__', context)
+ * CHKERR( SNESSetNGS(self.snes, SNES_NGS, <void*>context) ) # <<<<<<<<<<<<<<
+ *
+ * def getNGS(self):
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetNGS(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_NGS, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 349, __pyx_L1_error)
+
+ /* "PETSc/SNES.pyx":344
+ * return toReal(o)
+ *
+ * def setNGS(self, ngs, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.setNGS", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":351
+ * CHKERR( SNESSetNGS(self.snes, SNES_NGS, <void*>context) )
+ *
+ * def getNGS(self): # <<<<<<<<<<<<<<
+ * CHKERR( SNESGetNGS(self.snes, NULL, NULL) )
+ * cdef object ngs = self.get_attr('__ngs__')
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_89getNGS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_88getNGS[] = "SNES.getNGS(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_89getNGS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getNGS (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getNGS", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getNGS", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_88getNGS(((struct PyPetscSNESObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getNGS(struct PyPetscSNESObject *__pyx_v_self) {
+ PyObject *__pyx_v_ngs = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getNGS", 0);
+
+ /* "PETSc/SNES.pyx":352
+ *
+ * def getNGS(self):
+ * CHKERR( SNESGetNGS(self.snes, NULL, NULL) ) # <<<<<<<<<<<<<<
+ * cdef object ngs = self.get_attr('__ngs__')
+ * return ngs
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNGS(__pyx_v_self->snes, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 352, __pyx_L1_error)
+
+ /* "PETSc/SNES.pyx":353
+ * def getNGS(self):
+ * CHKERR( SNESGetNGS(self.snes, NULL, NULL) )
+ * cdef object ngs = self.get_attr('__ngs__') # <<<<<<<<<<<<<<
+ * return ngs
+ *
+ */
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ngs__")); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 353, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_v_ngs = __pyx_t_2;
+ __pyx_t_2 = 0;
+
+ /* "PETSc/SNES.pyx":354
+ * CHKERR( SNESGetNGS(self.snes, NULL, NULL) )
+ * cdef object ngs = self.get_attr('__ngs__')
+ * return ngs # <<<<<<<<<<<<<<
+ *
+ * def computeNGS(self, Vec x, Vec b=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(__pyx_v_ngs);
+ __pyx_r = __pyx_v_ngs;
+ goto __pyx_L0;
+
+ /* "PETSc/SNES.pyx":351
+ * CHKERR( SNESSetNGS(self.snes, SNES_NGS, <void*>context) )
+ *
+ * def getNGS(self): # <<<<<<<<<<<<<<
+ * CHKERR( SNESGetNGS(self.snes, NULL, NULL) )
+ * cdef object ngs = self.get_attr('__ngs__')
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.getNGS", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_ngs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":356
+ * return ngs
+ *
+ * def computeNGS(self, Vec x, Vec b=None): # <<<<<<<<<<<<<<
+ * cdef PetscVec bvec = NULL
+ * if b is not None: bvec = b.vec
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_91computeNGS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_90computeNGS[] = "SNES.computeNGS(self, Vec x, Vec b=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_91computeNGS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_x = 0;
+ struct PyPetscVecObject *__pyx_v_b = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("computeNGS (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_x,&__pyx_n_s_b,0};
+ PyObject* values[2] = {0,0};
+ values[1] = (PyObject *)((struct PyPetscVecObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeNGS") < 0)) __PYX_ERR(36, 356, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_x = ((struct PyPetscVecObject *)values[0]);
+ __pyx_v_b = ((struct PyPetscVecObject *)values[1]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("computeNGS", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 356, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.computeNGS", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(36, 356, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(36, 356, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_90computeNGS(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_x, __pyx_v_b);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_90computeNGS(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_b) {
+ Vec __pyx_v_bvec;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ Vec __pyx_t_3;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("computeNGS", 0);
+
+ /* "PETSc/SNES.pyx":357
+ *
+ * def computeNGS(self, Vec x, Vec b=None):
+ * cdef PetscVec bvec = NULL # <<<<<<<<<<<<<<
+ * if b is not None: bvec = b.vec
+ * CHKERR( SNESComputeNGS(self.snes, bvec, x.vec) )
+ */
+ __pyx_v_bvec = NULL;
+
+ /* "PETSc/SNES.pyx":358
+ * def computeNGS(self, Vec x, Vec b=None):
+ * cdef PetscVec bvec = NULL
+ * if b is not None: bvec = b.vec # <<<<<<<<<<<<<<
+ * CHKERR( SNESComputeNGS(self.snes, bvec, x.vec) )
+ *
+ */
+ __pyx_t_1 = (((PyObject *)__pyx_v_b) != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __pyx_v_b->vec;
+ __pyx_v_bvec = __pyx_t_3;
+ }
+
+ /* "PETSc/SNES.pyx":359
+ * cdef PetscVec bvec = NULL
+ * if b is not None: bvec = b.vec
+ * CHKERR( SNESComputeNGS(self.snes, bvec, x.vec) ) # <<<<<<<<<<<<<<
+ *
+ * # --- tolerances and convergence ---
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESComputeNGS(__pyx_v_self->snes, __pyx_v_bvec, __pyx_v_x->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 359, __pyx_L1_error)
+
+ /* "PETSc/SNES.pyx":356
+ * return ngs
+ *
+ * def computeNGS(self, Vec x, Vec b=None): # <<<<<<<<<<<<<<
+ * cdef PetscVec bvec = NULL
+ * if b is not None: bvec = b.vec
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.computeNGS", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":363
* # --- tolerances and convergence ---
*
* def setTolerances(self, rtol=None, atol=None, stol=None, max_it=None): # <<<<<<<<<<<<<<
@@ -164701,9 +174463,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_84computeObjective(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_86setTolerances[] = "SNES.setTolerances(self, rtol=None, atol=None, stol=None, max_it=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_93setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_92setTolerances[] = "SNES.setTolerances(self, rtol=None, atol=None, stol=None, max_it=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_93setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_rtol = 0;
PyObject *__pyx_v_atol = 0;
PyObject *__pyx_v_stol = 0;
@@ -164723,9 +174485,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setTolerances(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -164736,16 +174502,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setTolerances(PyObject *__pyx
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rtol);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_atol);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_stol);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_it);
@@ -164753,14 +174522,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setTolerances(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTolerances") < 0)) __PYX_ERR(36, 346, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTolerances") < 0)) __PYX_ERR(36, 363, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -164772,20 +174545,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_87setTolerances(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTolerances", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 346, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTolerances", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 363, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setTolerances", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_rtol, __pyx_v_atol, __pyx_v_stol, __pyx_v_max_it);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_92setTolerances(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_rtol, __pyx_v_atol, __pyx_v_stol, __pyx_v_max_it);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol, PyObject *__pyx_v_stol, PyObject *__pyx_v_max_it) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92setTolerances(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol, PyObject *__pyx_v_stol, PyObject *__pyx_v_max_it) {
PetscReal __pyx_v_crtol;
PetscReal __pyx_v_catol;
PetscReal __pyx_v_cstol;
@@ -164799,7 +174572,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
int __pyx_t_5;
__Pyx_RefNannySetupContext("setTolerances", 0);
- /* "PETSc/SNES.pyx":348
+ /* "PETSc/SNES.pyx":365
* def setTolerances(self, rtol=None, atol=None, stol=None, max_it=None):
* cdef PetscReal crtol, catol, cstol
* crtol = catol = cstol = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -164810,7 +174583,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
__pyx_v_catol = PETSC_DEFAULT;
__pyx_v_cstol = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":349
+ /* "PETSc/SNES.pyx":366
* cdef PetscReal crtol, catol, cstol
* crtol = catol = cstol = PETSC_DEFAULT
* cdef PetscInt cmaxit = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -164819,7 +174592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
*/
__pyx_v_cmaxit = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":350
+ /* "PETSc/SNES.pyx":367
* crtol = catol = cstol = PETSC_DEFAULT
* cdef PetscInt cmaxit = PETSC_DEFAULT
* if rtol is not None: crtol = asReal(rtol) # <<<<<<<<<<<<<<
@@ -164829,11 +174602,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
__pyx_t_1 = (__pyx_v_rtol != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 350, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 367, __pyx_L1_error)
__pyx_v_crtol = __pyx_t_3;
}
- /* "PETSc/SNES.pyx":351
+ /* "PETSc/SNES.pyx":368
* cdef PetscInt cmaxit = PETSC_DEFAULT
* if rtol is not None: crtol = asReal(rtol)
* if atol is not None: catol = asReal(atol) # <<<<<<<<<<<<<<
@@ -164843,11 +174616,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
__pyx_t_2 = (__pyx_v_atol != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 351, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 368, __pyx_L1_error)
__pyx_v_catol = __pyx_t_3;
}
- /* "PETSc/SNES.pyx":352
+ /* "PETSc/SNES.pyx":369
* if rtol is not None: crtol = asReal(rtol)
* if atol is not None: catol = asReal(atol)
* if stol is not None: cstol = asReal(stol) # <<<<<<<<<<<<<<
@@ -164857,11 +174630,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
__pyx_t_1 = (__pyx_v_stol != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_stol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 352, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_stol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 369, __pyx_L1_error)
__pyx_v_cstol = __pyx_t_3;
}
- /* "PETSc/SNES.pyx":353
+ /* "PETSc/SNES.pyx":370
* if atol is not None: catol = asReal(atol)
* if stol is not None: cstol = asReal(stol)
* if max_it is not None: cmaxit = asInt(max_it) # <<<<<<<<<<<<<<
@@ -164871,20 +174644,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
__pyx_t_2 = (__pyx_v_max_it != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_it); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(36, 353, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_it); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 370, __pyx_L1_error)
__pyx_v_cmaxit = __pyx_t_4;
}
- /* "PETSc/SNES.pyx":354
+ /* "PETSc/SNES.pyx":371
* if stol is not None: cstol = asReal(stol)
* if max_it is not None: cmaxit = asInt(max_it)
* CHKERR( SNESSetTolerances(self.snes, catol, crtol, cstol, # <<<<<<<<<<<<<<
* cmaxit, PETSC_DEFAULT) )
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetTolerances(__pyx_v_self->snes, __pyx_v_catol, __pyx_v_crtol, __pyx_v_cstol, __pyx_v_cmaxit, PETSC_DEFAULT)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(36, 354, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetTolerances(__pyx_v_self->snes, __pyx_v_catol, __pyx_v_crtol, __pyx_v_cstol, __pyx_v_cmaxit, PETSC_DEFAULT)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(36, 371, __pyx_L1_error)
- /* "PETSc/SNES.pyx":346
+ /* "PETSc/SNES.pyx":363
* # --- tolerances and convergence ---
*
* def setTolerances(self, rtol=None, atol=None, stol=None, max_it=None): # <<<<<<<<<<<<<<
@@ -164904,7 +174677,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":357
+/* "PETSc/SNES.pyx":374
* cmaxit, PETSC_DEFAULT) )
*
* def getTolerances(self): # <<<<<<<<<<<<<<
@@ -164913,23 +174686,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_86setTolerances(struct PyPetscS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_89getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_88getTolerances[] = "SNES.getTolerances(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_89getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_94getTolerances[] = "SNES.getTolerances(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getTolerances (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getTolerances", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTolerances", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_94getTolerances(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94getTolerances(struct PyPetscSNESObject *__pyx_v_self) {
PetscReal __pyx_v_crtol;
PetscReal __pyx_v_catol;
PetscReal __pyx_v_cstol;
@@ -164944,7 +174717,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscS
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("getTolerances", 0);
- /* "PETSc/SNES.pyx":358
+ /* "PETSc/SNES.pyx":375
*
* def getTolerances(self):
* cdef PetscReal crtol=0, catol=0, cstol=0 # <<<<<<<<<<<<<<
@@ -164955,7 +174728,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscS
__pyx_v_catol = 0.0;
__pyx_v_cstol = 0.0;
- /* "PETSc/SNES.pyx":359
+ /* "PETSc/SNES.pyx":376
* def getTolerances(self):
* cdef PetscReal crtol=0, catol=0, cstol=0
* cdef PetscInt cmaxit=0 # <<<<<<<<<<<<<<
@@ -164964,16 +174737,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscS
*/
__pyx_v_cmaxit = 0;
- /* "PETSc/SNES.pyx":360
+ /* "PETSc/SNES.pyx":377
* cdef PetscReal crtol=0, catol=0, cstol=0
* cdef PetscInt cmaxit=0
* CHKERR( SNESGetTolerances(self.snes, &catol, &crtol, &cstol, # <<<<<<<<<<<<<<
* &cmaxit, NULL) )
* return (toReal(crtol), toReal(catol), toReal(cstol), toInt(cmaxit))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetTolerances(__pyx_v_self->snes, (&__pyx_v_catol), (&__pyx_v_crtol), (&__pyx_v_cstol), (&__pyx_v_cmaxit), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 360, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetTolerances(__pyx_v_self->snes, (&__pyx_v_catol), (&__pyx_v_crtol), (&__pyx_v_cstol), (&__pyx_v_cmaxit), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 377, __pyx_L1_error)
- /* "PETSc/SNES.pyx":362
+ /* "PETSc/SNES.pyx":379
* CHKERR( SNESGetTolerances(self.snes, &catol, &crtol, &cstol,
* &cmaxit, NULL) )
* return (toReal(crtol), toReal(catol), toReal(cstol), toInt(cmaxit)) # <<<<<<<<<<<<<<
@@ -164981,15 +174754,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscS
* def setNormSchedule(self, normsched):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_crtol); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 362, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_crtol); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_catol); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 362, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_catol); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_cstol); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 362, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_cstol); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_cmaxit); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 362, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_cmaxit); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(4); if (unlikely(!__pyx_t_6)) __PYX_ERR(36, 362, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(4); if (unlikely(!__pyx_t_6)) __PYX_ERR(36, 379, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2);
@@ -165007,7 +174780,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscS
__pyx_t_6 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":357
+ /* "PETSc/SNES.pyx":374
* cmaxit, PETSC_DEFAULT) )
*
* def getTolerances(self): # <<<<<<<<<<<<<<
@@ -165030,7 +174803,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":364
+/* "PETSc/SNES.pyx":381
* return (toReal(crtol), toReal(catol), toReal(cstol), toInt(cmaxit))
*
* def setNormSchedule(self, normsched): # <<<<<<<<<<<<<<
@@ -165039,9 +174812,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_88getTolerances(struct PyPetscS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_91setNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_90setNormSchedule[] = "SNES.setNormSchedule(self, normsched)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_91setNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_97setNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_96setNormSchedule[] = "SNES.setNormSchedule(self, normsched)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_97setNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_normsched = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -165054,6 +174827,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_91setNormSchedule(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -165064,7 +174838,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_91setNormSchedule(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNormSchedule") < 0)) __PYX_ERR(36, 364, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setNormSchedule") < 0)) __PYX_ERR(36, 381, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -165075,37 +174849,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_91setNormSchedule(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setNormSchedule", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 364, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setNormSchedule", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 381, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setNormSchedule", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_90setNormSchedule(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_normsched);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_96setNormSchedule(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_normsched);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_90setNormSchedule(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_normsched) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_96setNormSchedule(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_normsched) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
SNESNormSchedule __pyx_t_1;
int __pyx_t_2;
__Pyx_RefNannySetupContext("setNormSchedule", 0);
- /* "PETSc/SNES.pyx":365
+ /* "PETSc/SNES.pyx":382
*
* def setNormSchedule(self, normsched):
* CHKERR( SNESSetNormSchedule(self.snes, normsched) ) # <<<<<<<<<<<<<<
*
* def getNormSchedule(self):
*/
- __pyx_t_1 = ((SNESNormSchedule)__Pyx_PyInt_As_SNESNormSchedule(__pyx_v_normsched)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 365, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetNormSchedule(__pyx_v_self->snes, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 365, __pyx_L1_error)
+ __pyx_t_1 = ((SNESNormSchedule)__Pyx_PyInt_As_SNESNormSchedule(__pyx_v_normsched)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 382, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetNormSchedule(__pyx_v_self->snes, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 382, __pyx_L1_error)
- /* "PETSc/SNES.pyx":364
+ /* "PETSc/SNES.pyx":381
* return (toReal(crtol), toReal(catol), toReal(cstol), toInt(cmaxit))
*
* def setNormSchedule(self, normsched): # <<<<<<<<<<<<<<
@@ -165125,7 +174899,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_90setNormSchedule(struct PyPets
return __pyx_r;
}
-/* "PETSc/SNES.pyx":367
+/* "PETSc/SNES.pyx":384
* CHKERR( SNESSetNormSchedule(self.snes, normsched) )
*
* def getNormSchedule(self): # <<<<<<<<<<<<<<
@@ -165134,23 +174908,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_90setNormSchedule(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_93getNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_92getNormSchedule[] = "SNES.getNormSchedule(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_93getNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_99getNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_98getNormSchedule[] = "SNES.getNormSchedule(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_99getNormSchedule(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getNormSchedule (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getNormSchedule", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getNormSchedule", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_98getNormSchedule(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98getNormSchedule(struct PyPetscSNESObject *__pyx_v_self) {
SNESNormSchedule __pyx_v_normsched;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -165158,7 +174932,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getNormSchedule", 0);
- /* "PETSc/SNES.pyx":368
+ /* "PETSc/SNES.pyx":385
*
* def getNormSchedule(self):
* cdef PetscSNESNormSchedule normsched = SNES_NORM_NONE # <<<<<<<<<<<<<<
@@ -165167,16 +174941,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(struct PyPets
*/
__pyx_v_normsched = SNES_NORM_NONE;
- /* "PETSc/SNES.pyx":369
+ /* "PETSc/SNES.pyx":386
* def getNormSchedule(self):
* cdef PetscSNESNormSchedule normsched = SNES_NORM_NONE
* CHKERR( SNESGetNormSchedule(self.snes, &normsched) ) # <<<<<<<<<<<<<<
* return normsched
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNormSchedule(__pyx_v_self->snes, (&__pyx_v_normsched))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 369, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNormSchedule(__pyx_v_self->snes, (&__pyx_v_normsched))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 386, __pyx_L1_error)
- /* "PETSc/SNES.pyx":370
+ /* "PETSc/SNES.pyx":387
* cdef PetscSNESNormSchedule normsched = SNES_NORM_NONE
* CHKERR( SNESGetNormSchedule(self.snes, &normsched) )
* return normsched # <<<<<<<<<<<<<<
@@ -165184,13 +174958,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(struct PyPets
* def setConvergenceTest(self, converged, args=None, kargs=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_SNESNormSchedule(__pyx_v_normsched); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 370, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_SNESNormSchedule(__pyx_v_normsched); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":367
+ /* "PETSc/SNES.pyx":384
* CHKERR( SNESSetNormSchedule(self.snes, normsched) )
*
* def getNormSchedule(self): # <<<<<<<<<<<<<<
@@ -165209,7 +174983,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(struct PyPets
return __pyx_r;
}
-/* "PETSc/SNES.pyx":372
+/* "PETSc/SNES.pyx":389
* return normsched
*
* def setConvergenceTest(self, converged, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -165218,9 +174992,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_92getNormSchedule(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95setConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_94setConvergenceTest[] = "SNES.setConvergenceTest(self, converged, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95setConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_100setConvergenceTest[] = "SNES.setConvergenceTest(self, converged, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_converged = 0;
PyObject *__pyx_v_args = 0;
PyObject *__pyx_v_kargs = 0;
@@ -165237,8 +175011,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95setConvergenceTest(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -165247,11 +175024,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95setConvergenceTest(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_converged)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -165259,12 +175038,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95setConvergenceTest(PyObject *
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceTest") < 0)) __PYX_ERR(36, 372, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceTest") < 0)) __PYX_ERR(36, 389, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -165276,20 +175057,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_95setConvergenceTest(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConvergenceTest", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 372, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConvergenceTest", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 389, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setConvergenceTest", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_converged, __pyx_v_args, __pyx_v_kargs);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceTest(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_converged, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_converged, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_converged, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -165301,7 +175082,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/SNES.pyx":373
+ /* "PETSc/SNES.pyx":390
*
* def setConvergenceTest(self, converged, args=None, kargs=None):
* if converged is not None: # <<<<<<<<<<<<<<
@@ -165312,7 +175093,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/SNES.pyx":374
+ /* "PETSc/SNES.pyx":391
* def setConvergenceTest(self, converged, args=None, kargs=None):
* if converged is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -165326,7 +175107,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/SNES.pyx":375
+ /* "PETSc/SNES.pyx":392
* if converged is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -165336,20 +175117,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 375, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 392, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/SNES.pyx":376
+ /* "PETSc/SNES.pyx":393
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (converged, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__converged__', context)
* CHKERR( SNESSetConvergenceTest(self.snes, SNES_Converged, <void*>context, NULL) )
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 376, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 393, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_converged);
__Pyx_GIVEREF(__pyx_v_converged);
@@ -165363,27 +175144,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
__pyx_v_context = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":377
+ /* "PETSc/SNES.pyx":394
* if kargs is None: kargs = {}
* context = (converged, args, kargs)
* self.set_attr('__converged__', context) # <<<<<<<<<<<<<<
* CHKERR( SNESSetConvergenceTest(self.snes, SNES_Converged, <void*>context, NULL) )
* else:
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 377, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 394, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":378
+ /* "PETSc/SNES.pyx":395
* context = (converged, args, kargs)
* self.set_attr('__converged__', context)
* CHKERR( SNESSetConvergenceTest(self.snes, SNES_Converged, <void*>context, NULL) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( SNESSetConvergenceTest(self.snes, SNESConvergedDefault, NULL, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergenceTest(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Converged, ((void *)__pyx_v_context), NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 378, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergenceTest(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Converged, ((void *)__pyx_v_context), NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 395, __pyx_L1_error)
- /* "PETSc/SNES.pyx":373
+ /* "PETSc/SNES.pyx":390
*
* def setConvergenceTest(self, converged, args=None, kargs=None):
* if converged is not None: # <<<<<<<<<<<<<<
@@ -165393,7 +175174,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
goto __pyx_L3;
}
- /* "PETSc/SNES.pyx":380
+ /* "PETSc/SNES.pyx":397
* CHKERR( SNESSetConvergenceTest(self.snes, SNES_Converged, <void*>context, NULL) )
* else:
* CHKERR( SNESSetConvergenceTest(self.snes, SNESConvergedDefault, NULL, NULL) ) # <<<<<<<<<<<<<<
@@ -165401,22 +175182,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
*
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergenceTest(__pyx_v_self->snes, SNESConvergedDefault, NULL, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 380, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergenceTest(__pyx_v_self->snes, SNESConvergedDefault, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 397, __pyx_L1_error)
- /* "PETSc/SNES.pyx":381
+ /* "PETSc/SNES.pyx":398
* else:
* CHKERR( SNESSetConvergenceTest(self.snes, SNESConvergedDefault, NULL, NULL) )
* self.set_attr('__converged__', None) # <<<<<<<<<<<<<<
*
* def getConvergenceTest(self):
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 381, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__"), Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 398, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
__pyx_L3:;
- /* "PETSc/SNES.pyx":372
+ /* "PETSc/SNES.pyx":389
* return normsched
*
* def setConvergenceTest(self, converged, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -165440,7 +175221,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
return __pyx_r;
}
-/* "PETSc/SNES.pyx":383
+/* "PETSc/SNES.pyx":400
* self.set_attr('__converged__', None)
*
* def getConvergenceTest(self): # <<<<<<<<<<<<<<
@@ -165449,29 +175230,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_94setConvergenceTest(struct PyP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_97getConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_96getConvergenceTest[] = "SNES.getConvergenceTest(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_97getConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_103getConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_102getConvergenceTest[] = "SNES.getConvergenceTest(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_103getConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getConvergenceTest (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getConvergenceTest", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getConvergenceTest", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_96getConvergenceTest(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceTest(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_96getConvergenceTest(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceTest(struct PyPetscSNESObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getConvergenceTest", 0);
- /* "PETSc/SNES.pyx":384
+ /* "PETSc/SNES.pyx":401
*
* def getConvergenceTest(self):
* return self.get_attr('__converged__') # <<<<<<<<<<<<<<
@@ -165479,13 +175260,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_96getConvergenceTest(struct PyP
* def callConvergenceTest(self, its, xnorm, ynorm, fnorm):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 384, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__converged__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 401, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":383
+ /* "PETSc/SNES.pyx":400
* self.set_attr('__converged__', None)
*
* def getConvergenceTest(self): # <<<<<<<<<<<<<<
@@ -165504,7 +175285,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_96getConvergenceTest(struct PyP
return __pyx_r;
}
-/* "PETSc/SNES.pyx":386
+/* "PETSc/SNES.pyx":403
* return self.get_attr('__converged__')
*
* def callConvergenceTest(self, its, xnorm, ynorm, fnorm): # <<<<<<<<<<<<<<
@@ -165513,9 +175294,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_96getConvergenceTest(struct PyP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_99callConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_98callConvergenceTest[] = "SNES.callConvergenceTest(self, its, xnorm, ynorm, fnorm)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_99callConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105callConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_104callConvergenceTest[] = "SNES.callConvergenceTest(self, its, xnorm, ynorm, fnorm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105callConvergenceTest(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_its = 0;
PyObject *__pyx_v_xnorm = 0;
PyObject *__pyx_v_ynorm = 0;
@@ -165531,9 +175312,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_99callConvergenceTest(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -165542,24 +175327,27 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_99callConvergenceTest(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_its)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xnorm)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, 1); __PYX_ERR(36, 386, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, 1); __PYX_ERR(36, 403, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ynorm)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, 2); __PYX_ERR(36, 386, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, 2); __PYX_ERR(36, 403, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fnorm)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, 3); __PYX_ERR(36, 386, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, 3); __PYX_ERR(36, 403, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "callConvergenceTest") < 0)) __PYX_ERR(36, 386, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "callConvergenceTest") < 0)) __PYX_ERR(36, 403, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
goto __pyx_L5_argtuple_error;
@@ -165576,20 +175364,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_99callConvergenceTest(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 386, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("callConvergenceTest", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 403, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.callConvergenceTest", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_its, __pyx_v_xnorm, __pyx_v_ynorm, __pyx_v_fnorm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_104callConvergenceTest(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_its, __pyx_v_xnorm, __pyx_v_ynorm, __pyx_v_fnorm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_xnorm, PyObject *__pyx_v_ynorm, PyObject *__pyx_v_fnorm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_104callConvergenceTest(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_xnorm, PyObject *__pyx_v_ynorm, PyObject *__pyx_v_fnorm) {
PetscInt __pyx_v_ival;
PetscReal __pyx_v_rval1;
PetscReal __pyx_v_rval2;
@@ -165603,47 +175391,47 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(struct Py
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("callConvergenceTest", 0);
- /* "PETSc/SNES.pyx":387
+ /* "PETSc/SNES.pyx":404
*
* def callConvergenceTest(self, its, xnorm, ynorm, fnorm):
* cdef PetscInt ival = asInt(its) # <<<<<<<<<<<<<<
* cdef PetscReal rval1 = asReal(xnorm)
* cdef PetscReal rval2 = asReal(ynorm)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 387, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 404, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/SNES.pyx":388
+ /* "PETSc/SNES.pyx":405
* def callConvergenceTest(self, its, xnorm, ynorm, fnorm):
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval1 = asReal(xnorm) # <<<<<<<<<<<<<<
* cdef PetscReal rval2 = asReal(ynorm)
* cdef PetscReal rval3 = asReal(fnorm)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_xnorm); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 388, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_xnorm); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 405, __pyx_L1_error)
__pyx_v_rval1 = __pyx_t_2;
- /* "PETSc/SNES.pyx":389
+ /* "PETSc/SNES.pyx":406
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval1 = asReal(xnorm)
* cdef PetscReal rval2 = asReal(ynorm) # <<<<<<<<<<<<<<
* cdef PetscReal rval3 = asReal(fnorm)
* cdef PetscSNESConvergedReason reason = SNES_CONVERGED_ITERATING
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_ynorm); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 389, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_ynorm); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 406, __pyx_L1_error)
__pyx_v_rval2 = __pyx_t_2;
- /* "PETSc/SNES.pyx":390
+ /* "PETSc/SNES.pyx":407
* cdef PetscReal rval1 = asReal(xnorm)
* cdef PetscReal rval2 = asReal(ynorm)
* cdef PetscReal rval3 = asReal(fnorm) # <<<<<<<<<<<<<<
* cdef PetscSNESConvergedReason reason = SNES_CONVERGED_ITERATING
* CHKERR( SNESConvergenceTestCall(self.snes, ival,
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fnorm); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 390, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_fnorm); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 407, __pyx_L1_error)
__pyx_v_rval3 = __pyx_t_2;
- /* "PETSc/SNES.pyx":391
+ /* "PETSc/SNES.pyx":408
* cdef PetscReal rval2 = asReal(ynorm)
* cdef PetscReal rval3 = asReal(fnorm)
* cdef PetscSNESConvergedReason reason = SNES_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -165652,16 +175440,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(struct Py
*/
__pyx_v_reason = SNES_CONVERGED_ITERATING;
- /* "PETSc/SNES.pyx":392
+ /* "PETSc/SNES.pyx":409
* cdef PetscReal rval3 = asReal(fnorm)
* cdef PetscSNESConvergedReason reason = SNES_CONVERGED_ITERATING
* CHKERR( SNESConvergenceTestCall(self.snes, ival, # <<<<<<<<<<<<<<
* rval1, rval2, rval3, &reason) )
* return reason
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESConvergenceTestCall(__pyx_v_self->snes, __pyx_v_ival, __pyx_v_rval1, __pyx_v_rval2, __pyx_v_rval3, (&__pyx_v_reason))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 392, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESConvergenceTestCall(__pyx_v_self->snes, __pyx_v_ival, __pyx_v_rval1, __pyx_v_rval2, __pyx_v_rval3, (&__pyx_v_reason))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 409, __pyx_L1_error)
- /* "PETSc/SNES.pyx":394
+ /* "PETSc/SNES.pyx":411
* CHKERR( SNESConvergenceTestCall(self.snes, ival,
* rval1, rval2, rval3, &reason) )
* return reason # <<<<<<<<<<<<<<
@@ -165669,13 +175457,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(struct Py
* def setConvergenceHistory(self, length=None, reset=False):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_4 = __Pyx_PyInt_From_SNESConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 394, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyInt_From_SNESConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 411, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_r = __pyx_t_4;
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":386
+ /* "PETSc/SNES.pyx":403
* return self.get_attr('__converged__')
*
* def callConvergenceTest(self, its, xnorm, ynorm, fnorm): # <<<<<<<<<<<<<<
@@ -165694,7 +175482,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":396
+/* "PETSc/SNES.pyx":413
* return reason
*
* def setConvergenceHistory(self, length=None, reset=False): # <<<<<<<<<<<<<<
@@ -165703,9 +175491,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_98callConvergenceTest(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_100setConvergenceHistory[] = "SNES.setConvergenceHistory(self, length=None, reset=False)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_107setConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_106setConvergenceHistory[] = "SNES.setConvergenceHistory(self, length=None, reset=False)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_107setConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_length = 0;
PyObject *__pyx_v_reset = 0;
PyObject *__pyx_r = 0;
@@ -165721,7 +175509,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceHistory(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -165732,6 +175522,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceHistory(PyObje
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_length);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_reset);
@@ -165739,12 +175530,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceHistory(PyObje
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceHistory") < 0)) __PYX_ERR(36, 396, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergenceHistory") < 0)) __PYX_ERR(36, 413, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -165754,20 +175547,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceHistory(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConvergenceHistory", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 396, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConvergenceHistory", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 413, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setConvergenceHistory", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_length, __pyx_v_reset);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_106setConvergenceHistory(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_length, __pyx_v_reset);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_length, PyObject *__pyx_v_reset) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_106setConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_length, PyObject *__pyx_v_reset) {
PetscReal *__pyx_v_rdata;
PetscInt *__pyx_v_idata;
PetscInt __pyx_v_size;
@@ -165784,7 +175577,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
int __pyx_t_6;
__Pyx_RefNannySetupContext("setConvergenceHistory", 0);
- /* "PETSc/SNES.pyx":397
+ /* "PETSc/SNES.pyx":414
*
* def setConvergenceHistory(self, length=None, reset=False):
* cdef PetscReal *rdata = NULL # <<<<<<<<<<<<<<
@@ -165793,7 +175586,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
*/
__pyx_v_rdata = NULL;
- /* "PETSc/SNES.pyx":398
+ /* "PETSc/SNES.pyx":415
* def setConvergenceHistory(self, length=None, reset=False):
* cdef PetscReal *rdata = NULL
* cdef PetscInt *idata = NULL # <<<<<<<<<<<<<<
@@ -165802,7 +175595,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
*/
__pyx_v_idata = NULL;
- /* "PETSc/SNES.pyx":399
+ /* "PETSc/SNES.pyx":416
* cdef PetscReal *rdata = NULL
* cdef PetscInt *idata = NULL
* cdef PetscInt size = 1000 # <<<<<<<<<<<<<<
@@ -165811,7 +175604,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
*/
__pyx_v_size = 0x3E8;
- /* "PETSc/SNES.pyx":400
+ /* "PETSc/SNES.pyx":417
* cdef PetscInt *idata = NULL
* cdef PetscInt size = 1000
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -165820,7 +175613,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/SNES.pyx":401
+ /* "PETSc/SNES.pyx":418
* cdef PetscInt size = 1000
* cdef PetscBool flag = PETSC_FALSE
* if length is True: pass # <<<<<<<<<<<<<<
@@ -165833,7 +175626,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
goto __pyx_L3;
}
- /* "PETSc/SNES.pyx":402
+ /* "PETSc/SNES.pyx":419
* cdef PetscBool flag = PETSC_FALSE
* if length is True: pass
* elif length is not None: size = asInt(length) # <<<<<<<<<<<<<<
@@ -165843,12 +175636,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
__pyx_t_2 = (__pyx_v_length != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_length); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(36, 402, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_length); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 419, __pyx_L1_error)
__pyx_v_size = __pyx_t_3;
}
__pyx_L3:;
- /* "PETSc/SNES.pyx":403
+ /* "PETSc/SNES.pyx":420
* if length is True: pass
* elif length is not None: size = asInt(length)
* if size < 0: size = 1000 # <<<<<<<<<<<<<<
@@ -165860,56 +175653,56 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
__pyx_v_size = 0x3E8;
}
- /* "PETSc/SNES.pyx":404
+ /* "PETSc/SNES.pyx":421
* elif length is not None: size = asInt(length)
* if size < 0: size = 1000
* if reset: flag = PETSC_TRUE # <<<<<<<<<<<<<<
* cdef object rhist = oarray_r(empty_r(size), NULL, &rdata)
* cdef object ihist = oarray_i(empty_i(size), NULL, &idata)
*/
- __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_reset); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(36, 404, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_reset); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(36, 421, __pyx_L1_error)
if (__pyx_t_1) {
__pyx_v_flag = PETSC_TRUE;
}
- /* "PETSc/SNES.pyx":405
+ /* "PETSc/SNES.pyx":422
* if size < 0: size = 1000
* if reset: flag = PETSC_TRUE
* cdef object rhist = oarray_r(empty_r(size), NULL, &rdata) # <<<<<<<<<<<<<<
* cdef object ihist = oarray_i(empty_i(size), NULL, &idata)
* self.set_attr('__history__', (rhist, ihist))
*/
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_size)); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 405, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_r(__pyx_v_size)); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 422, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_4, NULL, (&__pyx_v_rdata))); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 405, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_r(__pyx_t_4, NULL, (&__pyx_v_rdata))); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 422, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_v_rhist = __pyx_t_5;
__pyx_t_5 = 0;
- /* "PETSc/SNES.pyx":406
+ /* "PETSc/SNES.pyx":423
* if reset: flag = PETSC_TRUE
* cdef object rhist = oarray_r(empty_r(size), NULL, &rdata)
* cdef object ihist = oarray_i(empty_i(size), NULL, &idata) # <<<<<<<<<<<<<<
* self.set_attr('__history__', (rhist, ihist))
* CHKERR( SNESSetConvergenceHistory(self.snes, rdata, idata, size, flag) )
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_size)); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 406, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_i(__pyx_v_size)); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_5, NULL, (&__pyx_v_idata))); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 406, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_i(__pyx_t_5, NULL, (&__pyx_v_idata))); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_v_ihist = __pyx_t_4;
__pyx_t_4 = 0;
- /* "PETSc/SNES.pyx":407
+ /* "PETSc/SNES.pyx":424
* cdef object rhist = oarray_r(empty_r(size), NULL, &rdata)
* cdef object ihist = oarray_i(empty_i(size), NULL, &idata)
* self.set_attr('__history__', (rhist, ihist)) # <<<<<<<<<<<<<<
* CHKERR( SNESSetConvergenceHistory(self.snes, rdata, idata, size, flag) )
*
*/
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 407, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_rhist);
__Pyx_GIVEREF(__pyx_v_rhist);
@@ -165917,21 +175710,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
__Pyx_INCREF(__pyx_v_ihist);
__Pyx_GIVEREF(__pyx_v_ihist);
PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_ihist);
- __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__history__"), __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 407, __pyx_L1_error)
+ __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__history__"), __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- /* "PETSc/SNES.pyx":408
+ /* "PETSc/SNES.pyx":425
* cdef object ihist = oarray_i(empty_i(size), NULL, &idata)
* self.set_attr('__history__', (rhist, ihist))
* CHKERR( SNESSetConvergenceHistory(self.snes, rdata, idata, size, flag) ) # <<<<<<<<<<<<<<
*
* def getConvergenceHistory(self):
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergenceHistory(__pyx_v_self->snes, __pyx_v_rdata, __pyx_v_idata, __pyx_v_size, __pyx_v_flag)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(36, 408, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergenceHistory(__pyx_v_self->snes, __pyx_v_rdata, __pyx_v_idata, __pyx_v_size, __pyx_v_flag)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(36, 425, __pyx_L1_error)
- /* "PETSc/SNES.pyx":396
+ /* "PETSc/SNES.pyx":413
* return reason
*
* def setConvergenceHistory(self, length=None, reset=False): # <<<<<<<<<<<<<<
@@ -165955,7 +175748,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
return __pyx_r;
}
-/* "PETSc/SNES.pyx":410
+/* "PETSc/SNES.pyx":427
* CHKERR( SNESSetConvergenceHistory(self.snes, rdata, idata, size, flag) )
*
* def getConvergenceHistory(self): # <<<<<<<<<<<<<<
@@ -165964,23 +175757,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_100setConvergenceHistory(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_103getConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_102getConvergenceHistory[] = "SNES.getConvergenceHistory(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_103getConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109getConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_108getConvergenceHistory[] = "SNES.getConvergenceHistory(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109getConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getConvergenceHistory (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getConvergenceHistory", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getConvergenceHistory", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_108getConvergenceHistory(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108getConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self) {
PetscReal *__pyx_v_rdata;
PetscInt *__pyx_v_idata;
PetscInt __pyx_v_size;
@@ -165992,7 +175785,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getConvergenceHistory", 0);
- /* "PETSc/SNES.pyx":411
+ /* "PETSc/SNES.pyx":428
*
* def getConvergenceHistory(self):
* cdef PetscReal *rdata = NULL # <<<<<<<<<<<<<<
@@ -166001,7 +175794,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
*/
__pyx_v_rdata = NULL;
- /* "PETSc/SNES.pyx":412
+ /* "PETSc/SNES.pyx":429
* def getConvergenceHistory(self):
* cdef PetscReal *rdata = NULL
* cdef PetscInt *idata = NULL # <<<<<<<<<<<<<<
@@ -166010,7 +175803,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
*/
__pyx_v_idata = NULL;
- /* "PETSc/SNES.pyx":413
+ /* "PETSc/SNES.pyx":430
* cdef PetscReal *rdata = NULL
* cdef PetscInt *idata = NULL
* cdef PetscInt size = 0 # <<<<<<<<<<<<<<
@@ -166019,40 +175812,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
*/
__pyx_v_size = 0;
- /* "PETSc/SNES.pyx":414
+ /* "PETSc/SNES.pyx":431
* cdef PetscInt *idata = NULL
* cdef PetscInt size = 0
* CHKERR( SNESGetConvergenceHistory(self.snes, &rdata, &idata, &size) ) # <<<<<<<<<<<<<<
* cdef object rhist = array_r(size, rdata)
* cdef object ihist = array_i(size, idata)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetConvergenceHistory(__pyx_v_self->snes, (&__pyx_v_rdata), (&__pyx_v_idata), (&__pyx_v_size))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 414, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetConvergenceHistory(__pyx_v_self->snes, (&__pyx_v_rdata), (&__pyx_v_idata), (&__pyx_v_size))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 431, __pyx_L1_error)
- /* "PETSc/SNES.pyx":415
+ /* "PETSc/SNES.pyx":432
* cdef PetscInt size = 0
* CHKERR( SNESGetConvergenceHistory(self.snes, &rdata, &idata, &size) )
* cdef object rhist = array_r(size, rdata) # <<<<<<<<<<<<<<
* cdef object ihist = array_i(size, idata)
* return (rhist, ihist)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_size, __pyx_v_rdata)); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 415, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_size, __pyx_v_rdata)); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_rhist = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/SNES.pyx":416
+ /* "PETSc/SNES.pyx":433
* CHKERR( SNESGetConvergenceHistory(self.snes, &rdata, &idata, &size) )
* cdef object rhist = array_r(size, rdata)
* cdef object ihist = array_i(size, idata) # <<<<<<<<<<<<<<
* return (rhist, ihist)
*
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_size, __pyx_v_idata)); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 416, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_size, __pyx_v_idata)); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_ihist = __pyx_t_2;
__pyx_t_2 = 0;
- /* "PETSc/SNES.pyx":417
+ /* "PETSc/SNES.pyx":434
* cdef object rhist = array_r(size, rdata)
* cdef object ihist = array_i(size, idata)
* return (rhist, ihist) # <<<<<<<<<<<<<<
@@ -166060,7 +175853,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
* def logConvergenceHistory(self, norm, linear_its=0):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 417, __pyx_L1_error)
+ __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_rhist);
__Pyx_GIVEREF(__pyx_v_rhist);
@@ -166072,7 +175865,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":410
+ /* "PETSc/SNES.pyx":427
* CHKERR( SNESSetConvergenceHistory(self.snes, rdata, idata, size, flag) )
*
* def getConvergenceHistory(self): # <<<<<<<<<<<<<<
@@ -166093,7 +175886,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
return __pyx_r;
}
-/* "PETSc/SNES.pyx":419
+/* "PETSc/SNES.pyx":436
* return (rhist, ihist)
*
* def logConvergenceHistory(self, norm, linear_its=0): # <<<<<<<<<<<<<<
@@ -166102,9 +175895,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_102getConvergenceHistory(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105logConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_104logConvergenceHistory[] = "SNES.logConvergenceHistory(self, norm, linear_its=0)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105logConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_111logConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_110logConvergenceHistory[] = "SNES.logConvergenceHistory(self, norm, linear_its=0)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_111logConvergenceHistory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_norm = 0;
PyObject *__pyx_v_linear_its = 0;
PyObject *__pyx_r = 0;
@@ -166119,7 +175912,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105logConvergenceHistory(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -166128,6 +175923,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105logConvergenceHistory(PyObje
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_norm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_linear_its);
@@ -166135,11 +175931,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105logConvergenceHistory(PyObje
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "logConvergenceHistory") < 0)) __PYX_ERR(36, 419, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "logConvergenceHistory") < 0)) __PYX_ERR(36, 436, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -166150,20 +175947,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_105logConvergenceHistory(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("logConvergenceHistory", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 419, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("logConvergenceHistory", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 436, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.logConvergenceHistory", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_104logConvergenceHistory(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_norm, __pyx_v_linear_its);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_110logConvergenceHistory(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_norm, __pyx_v_linear_its);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_104logConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_norm, PyObject *__pyx_v_linear_its) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_110logConvergenceHistory(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_norm, PyObject *__pyx_v_linear_its) {
PetscReal __pyx_v_rval;
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
@@ -166173,36 +175970,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_104logConvergenceHistory(struct
int __pyx_t_3;
__Pyx_RefNannySetupContext("logConvergenceHistory", 0);
- /* "PETSc/SNES.pyx":420
+ /* "PETSc/SNES.pyx":437
*
* def logConvergenceHistory(self, norm, linear_its=0):
* cdef PetscReal rval = asReal(norm) # <<<<<<<<<<<<<<
* cdef PetscInt ival = asInt(linear_its)
* CHKERR( SNESLogConvergenceHistory(self.snes, rval, ival) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_norm); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 420, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_norm); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 437, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/SNES.pyx":421
+ /* "PETSc/SNES.pyx":438
* def logConvergenceHistory(self, norm, linear_its=0):
* cdef PetscReal rval = asReal(norm)
* cdef PetscInt ival = asInt(linear_its) # <<<<<<<<<<<<<<
* CHKERR( SNESLogConvergenceHistory(self.snes, rval, ival) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_linear_its); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(36, 421, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_linear_its); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 438, __pyx_L1_error)
__pyx_v_ival = __pyx_t_2;
- /* "PETSc/SNES.pyx":422
+ /* "PETSc/SNES.pyx":439
* cdef PetscReal rval = asReal(norm)
* cdef PetscInt ival = asInt(linear_its)
* CHKERR( SNESLogConvergenceHistory(self.snes, rval, ival) ) # <<<<<<<<<<<<<<
*
* def setResetCounters(self, reset=True):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESLogConvergenceHistory(__pyx_v_self->snes, __pyx_v_rval, __pyx_v_ival)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 422, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESLogConvergenceHistory(__pyx_v_self->snes, __pyx_v_rval, __pyx_v_ival)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 439, __pyx_L1_error)
- /* "PETSc/SNES.pyx":419
+ /* "PETSc/SNES.pyx":436
* return (rhist, ihist)
*
* def logConvergenceHistory(self, norm, linear_its=0): # <<<<<<<<<<<<<<
@@ -166222,7 +176019,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_104logConvergenceHistory(struct
return __pyx_r;
}
-/* "PETSc/SNES.pyx":424
+/* "PETSc/SNES.pyx":441
* CHKERR( SNESLogConvergenceHistory(self.snes, rval, ival) )
*
* def setResetCounters(self, reset=True): # <<<<<<<<<<<<<<
@@ -166231,9 +176028,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_104logConvergenceHistory(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_107setResetCounters(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_106setResetCounters[] = "SNES.setResetCounters(self, reset=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_107setResetCounters(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_113setResetCounters(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_112setResetCounters[] = "SNES.setResetCounters(self, reset=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_113setResetCounters(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_reset = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -166247,6 +176044,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_107setResetCounters(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -166259,11 +176057,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_107setResetCounters(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setResetCounters") < 0)) __PYX_ERR(36, 424, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setResetCounters") < 0)) __PYX_ERR(36, 441, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -166272,20 +176071,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_107setResetCounters(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setResetCounters", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 424, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setResetCounters", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 441, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setResetCounters", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_106setResetCounters(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_reset);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_112setResetCounters(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_reset);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_106setResetCounters(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reset) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_112setResetCounters(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reset) {
PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -166293,26 +176092,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_106setResetCounters(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("setResetCounters", 0);
- /* "PETSc/SNES.pyx":425
+ /* "PETSc/SNES.pyx":442
*
* def setResetCounters(self, reset=True):
* cdef PetscBool flag = reset # <<<<<<<<<<<<<<
* CHKERR( SNESSetCountersReset(self.snes, flag) )
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_reset)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 425, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_reset)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 442, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/SNES.pyx":426
+ /* "PETSc/SNES.pyx":443
* def setResetCounters(self, reset=True):
* cdef PetscBool flag = reset
* CHKERR( SNESSetCountersReset(self.snes, flag) ) # <<<<<<<<<<<<<<
*
* # --- monitoring ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetCountersReset(__pyx_v_self->snes, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 426, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetCountersReset(__pyx_v_self->snes, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 443, __pyx_L1_error)
- /* "PETSc/SNES.pyx":424
+ /* "PETSc/SNES.pyx":441
* CHKERR( SNESLogConvergenceHistory(self.snes, rval, ival) )
*
* def setResetCounters(self, reset=True): # <<<<<<<<<<<<<<
@@ -166332,7 +176131,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_106setResetCounters(struct PyPe
return __pyx_r;
}
-/* "PETSc/SNES.pyx":430
+/* "PETSc/SNES.pyx":447
* # --- monitoring ---
*
* def setMonitor(self, monitor, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -166341,9 +176140,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_106setResetCounters(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_108setMonitor[] = "SNES.setMonitor(self, monitor, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_115setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_114setMonitor[] = "SNES.setMonitor(self, monitor, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_115setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_monitor = 0;
PyObject *__pyx_v_args = 0;
PyObject *__pyx_v_kargs = 0;
@@ -166360,8 +176159,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109setMonitor(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -166370,11 +176172,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109setMonitor(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_monitor)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -166382,12 +176186,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109setMonitor(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMonitor") < 0)) __PYX_ERR(36, 430, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMonitor") < 0)) __PYX_ERR(36, 447, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -166399,20 +176205,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_109setMonitor(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMonitor", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 430, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMonitor", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 447, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setMonitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_monitor, __pyx_v_args, __pyx_v_kargs);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_114setMonitor(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_monitor, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_114setMonitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
PyObject *__pyx_v_monitorlist = 0;
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
@@ -166426,7 +176232,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/SNES.pyx":431
+ /* "PETSc/SNES.pyx":448
*
* def setMonitor(self, monitor, args=None, kargs=None):
* if monitor is None: return # <<<<<<<<<<<<<<
@@ -166441,19 +176247,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
goto __pyx_L0;
}
- /* "PETSc/SNES.pyx":432
+ /* "PETSc/SNES.pyx":449
* def setMonitor(self, monitor, args=None, kargs=None):
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__') # <<<<<<<<<<<<<<
* if monitorlist is None:
* monitorlist = []
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 432, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 449, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_monitorlist = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":433
+ /* "PETSc/SNES.pyx":450
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None: # <<<<<<<<<<<<<<
@@ -166464,39 +176270,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/SNES.pyx":434
+ /* "PETSc/SNES.pyx":451
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None:
* monitorlist = [] # <<<<<<<<<<<<<<
* self.set_attr('__monitor__', monitorlist)
* CHKERR( SNESMonitorSet(self.snes, SNES_Monitor, NULL, NULL) )
*/
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 434, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 451, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_monitorlist, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":435
+ /* "PETSc/SNES.pyx":452
* if monitorlist is None:
* monitorlist = []
* self.set_attr('__monitor__', monitorlist) # <<<<<<<<<<<<<<
* CHKERR( SNESMonitorSet(self.snes, SNES_Monitor, NULL, NULL) )
* if args is None: args = ()
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), __pyx_v_monitorlist); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 435, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), __pyx_v_monitorlist); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 452, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":436
+ /* "PETSc/SNES.pyx":453
* monitorlist = []
* self.set_attr('__monitor__', monitorlist)
* CHKERR( SNESMonitorSet(self.snes, SNES_Monitor, NULL, NULL) ) # <<<<<<<<<<<<<<
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESMonitorSet(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 436, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESMonitorSet(__pyx_v_self->snes, __pyx_f_8petsc4py_5PETSc_SNES_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 453, __pyx_L1_error)
- /* "PETSc/SNES.pyx":433
+ /* "PETSc/SNES.pyx":450
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None: # <<<<<<<<<<<<<<
@@ -166505,7 +176311,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
*/
}
- /* "PETSc/SNES.pyx":437
+ /* "PETSc/SNES.pyx":454
* self.set_attr('__monitor__', monitorlist)
* CHKERR( SNESMonitorSet(self.snes, SNES_Monitor, NULL, NULL) )
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -166519,7 +176325,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/SNES.pyx":438
+ /* "PETSc/SNES.pyx":455
* CHKERR( SNESMonitorSet(self.snes, SNES_Monitor, NULL, NULL) )
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -166529,20 +176335,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 438, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/SNES.pyx":439
+ /* "PETSc/SNES.pyx":456
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (monitor, args, kargs) # <<<<<<<<<<<<<<
* monitorlist.append(context)
*
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 439, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 456, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_monitor);
__Pyx_GIVEREF(__pyx_v_monitor);
@@ -166556,16 +176362,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
__pyx_v_context = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":440
+ /* "PETSc/SNES.pyx":457
* if kargs is None: kargs = {}
* context = (monitor, args, kargs)
* monitorlist.append(context) # <<<<<<<<<<<<<<
*
* def getMonitor(self):
*/
- __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_v_context); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(36, 440, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_v_context); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(36, 457, __pyx_L1_error)
- /* "PETSc/SNES.pyx":430
+ /* "PETSc/SNES.pyx":447
* # --- monitoring ---
*
* def setMonitor(self, monitor, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -166590,7 +176396,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
return __pyx_r;
}
-/* "PETSc/SNES.pyx":442
+/* "PETSc/SNES.pyx":459
* monitorlist.append(context)
*
* def getMonitor(self): # <<<<<<<<<<<<<<
@@ -166599,29 +176405,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_108setMonitor(struct PyPetscSNE
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_111getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_110getMonitor[] = "SNES.getMonitor(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_111getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_117getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_116getMonitor[] = "SNES.getMonitor(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_117getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getMonitor (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getMonitor", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMonitor", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_110getMonitor(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_116getMonitor(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_110getMonitor(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116getMonitor(struct PyPetscSNESObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getMonitor", 0);
- /* "PETSc/SNES.pyx":443
+ /* "PETSc/SNES.pyx":460
*
* def getMonitor(self):
* return self.get_attr('__monitor__') # <<<<<<<<<<<<<<
@@ -166629,13 +176435,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_110getMonitor(struct PyPetscSNE
* def cancelMonitor(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 443, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 460, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":442
+ /* "PETSc/SNES.pyx":459
* monitorlist.append(context)
*
* def getMonitor(self): # <<<<<<<<<<<<<<
@@ -166654,7 +176460,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_110getMonitor(struct PyPetscSNE
return __pyx_r;
}
-/* "PETSc/SNES.pyx":445
+/* "PETSc/SNES.pyx":462
* return self.get_attr('__monitor__')
*
* def cancelMonitor(self): # <<<<<<<<<<<<<<
@@ -166663,50 +176469,50 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_110getMonitor(struct PyPetscSNE
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_113cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_112cancelMonitor[] = "SNES.cancelMonitor(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_113cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_119cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_118cancelMonitor[] = "SNES.cancelMonitor(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_119cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cancelMonitor (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("cancelMonitor", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "cancelMonitor", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_112cancelMonitor(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_118cancelMonitor(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_112cancelMonitor(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118cancelMonitor(struct PyPetscSNESObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("cancelMonitor", 0);
- /* "PETSc/SNES.pyx":446
+ /* "PETSc/SNES.pyx":463
*
* def cancelMonitor(self):
* CHKERR( SNESMonitorCancel(self.snes) ) # <<<<<<<<<<<<<<
* self.set_attr('__monitor__', None)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESMonitorCancel(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 446, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESMonitorCancel(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 463, __pyx_L1_error)
- /* "PETSc/SNES.pyx":447
+ /* "PETSc/SNES.pyx":464
* def cancelMonitor(self):
* CHKERR( SNESMonitorCancel(self.snes) )
* self.set_attr('__monitor__', None) # <<<<<<<<<<<<<<
*
* def monitor(self, its, rnorm):
*/
- __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 447, __pyx_L1_error)
+ __pyx_t_2 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_SNES *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), Py_None); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 464, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- /* "PETSc/SNES.pyx":445
+ /* "PETSc/SNES.pyx":462
* return self.get_attr('__monitor__')
*
* def cancelMonitor(self): # <<<<<<<<<<<<<<
@@ -166727,7 +176533,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_112cancelMonitor(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/SNES.pyx":449
+/* "PETSc/SNES.pyx":466
* self.set_attr('__monitor__', None)
*
* def monitor(self, its, rnorm): # <<<<<<<<<<<<<<
@@ -166736,9 +176542,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_112cancelMonitor(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_115monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_114monitor[] = "SNES.monitor(self, its, rnorm)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_115monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_121monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_120monitor[] = "SNES.monitor(self, its, rnorm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_121monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_its = 0;
PyObject *__pyx_v_rnorm = 0;
PyObject *__pyx_r = 0;
@@ -166752,7 +176558,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_115monitor(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -166761,14 +176569,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_115monitor(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_its)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rnorm)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, 1); __PYX_ERR(36, 449, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, 1); __PYX_ERR(36, 466, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "monitor") < 0)) __PYX_ERR(36, 449, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "monitor") < 0)) __PYX_ERR(36, 466, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -166781,20 +176590,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_115monitor(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 449, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("monitor", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 466, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.monitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_114monitor(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_its, __pyx_v_rnorm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_120monitor(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_its, __pyx_v_rnorm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_114monitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_rnorm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120monitor(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its, PyObject *__pyx_v_rnorm) {
PetscInt __pyx_v_ival;
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
@@ -166804,36 +176613,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_114monitor(struct PyPetscSNESOb
int __pyx_t_3;
__Pyx_RefNannySetupContext("monitor", 0);
- /* "PETSc/SNES.pyx":450
+ /* "PETSc/SNES.pyx":467
*
* def monitor(self, its, rnorm):
* cdef PetscInt ival = asInt(its) # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(rnorm)
* CHKERR( SNESMonitor(self.snes, ival, rval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 450, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 467, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/SNES.pyx":451
+ /* "PETSc/SNES.pyx":468
* def monitor(self, its, rnorm):
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval = asReal(rnorm) # <<<<<<<<<<<<<<
* CHKERR( SNESMonitor(self.snes, ival, rval) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 451, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rnorm); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 468, __pyx_L1_error)
__pyx_v_rval = __pyx_t_2;
- /* "PETSc/SNES.pyx":452
+ /* "PETSc/SNES.pyx":469
* cdef PetscInt ival = asInt(its)
* cdef PetscReal rval = asReal(rnorm)
* CHKERR( SNESMonitor(self.snes, ival, rval) ) # <<<<<<<<<<<<<<
*
* # --- more tolerances ---
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESMonitor(__pyx_v_self->snes, __pyx_v_ival, __pyx_v_rval)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 452, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESMonitor(__pyx_v_self->snes, __pyx_v_ival, __pyx_v_rval)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 469, __pyx_L1_error)
- /* "PETSc/SNES.pyx":449
+ /* "PETSc/SNES.pyx":466
* self.set_attr('__monitor__', None)
*
* def monitor(self, its, rnorm): # <<<<<<<<<<<<<<
@@ -166853,7 +176662,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_114monitor(struct PyPetscSNESOb
return __pyx_r;
}
-/* "PETSc/SNES.pyx":456
+/* "PETSc/SNES.pyx":473
* # --- more tolerances ---
*
* def setMaxFunctionEvaluations(self, max_funcs): # <<<<<<<<<<<<<<
@@ -166862,9 +176671,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_114monitor(struct PyPetscSNESOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_117setMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations[] = "SNES.setMaxFunctionEvaluations(self, max_funcs)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_117setMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_122setMaxFunctionEvaluations[] = "SNES.setMaxFunctionEvaluations(self, max_funcs)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_max_funcs = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -166877,6 +176686,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_117setMaxFunctionEvaluations(Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -166887,7 +176697,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_117setMaxFunctionEvaluations(Py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxFunctionEvaluations") < 0)) __PYX_ERR(36, 456, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxFunctionEvaluations") < 0)) __PYX_ERR(36, 473, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -166898,20 +176708,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_117setMaxFunctionEvaluations(Py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMaxFunctionEvaluations", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 456, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMaxFunctionEvaluations", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 473, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setMaxFunctionEvaluations", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_max_funcs);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxFunctionEvaluations(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_max_funcs);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_funcs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_funcs) {
PetscReal __pyx_v_r;
PetscInt __pyx_v_i;
PetscInt __pyx_v_ival;
@@ -166921,7 +176731,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(st
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMaxFunctionEvaluations", 0);
- /* "PETSc/SNES.pyx":457
+ /* "PETSc/SNES.pyx":474
*
* def setMaxFunctionEvaluations(self, max_funcs):
* cdef PetscReal r = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -166930,7 +176740,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(st
*/
__pyx_v_r = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":458
+ /* "PETSc/SNES.pyx":475
* def setMaxFunctionEvaluations(self, max_funcs):
* cdef PetscReal r = PETSC_DEFAULT
* cdef PetscInt i = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -166939,26 +176749,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(st
*/
__pyx_v_i = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":459
+ /* "PETSc/SNES.pyx":476
* cdef PetscReal r = PETSC_DEFAULT
* cdef PetscInt i = PETSC_DEFAULT
* cdef PetscInt ival = asInt(max_funcs) # <<<<<<<<<<<<<<
* CHKERR( SNESSetTolerances(self.snes, r, r, r, i, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_funcs); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 459, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_funcs); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 476, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/SNES.pyx":460
+ /* "PETSc/SNES.pyx":477
* cdef PetscInt i = PETSC_DEFAULT
* cdef PetscInt ival = asInt(max_funcs)
* CHKERR( SNESSetTolerances(self.snes, r, r, r, i, ival) ) # <<<<<<<<<<<<<<
*
* def getMaxFunctionEvaluations(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetTolerances(__pyx_v_self->snes, __pyx_v_r, __pyx_v_r, __pyx_v_r, __pyx_v_i, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 460, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetTolerances(__pyx_v_self->snes, __pyx_v_r, __pyx_v_r, __pyx_v_r, __pyx_v_i, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 477, __pyx_L1_error)
- /* "PETSc/SNES.pyx":456
+ /* "PETSc/SNES.pyx":473
* # --- more tolerances ---
*
* def setMaxFunctionEvaluations(self, max_funcs): # <<<<<<<<<<<<<<
@@ -166978,7 +176788,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(st
return __pyx_r;
}
-/* "PETSc/SNES.pyx":462
+/* "PETSc/SNES.pyx":479
* CHKERR( SNESSetTolerances(self.snes, r, r, r, i, ival) )
*
* def getMaxFunctionEvaluations(self): # <<<<<<<<<<<<<<
@@ -166987,23 +176797,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations(st
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_119getMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations[] = "SNES.getMaxFunctionEvaluations(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_119getMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_125getMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_124getMaxFunctionEvaluations[] = "SNES.getMaxFunctionEvaluations(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_125getMaxFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getMaxFunctionEvaluations (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getMaxFunctionEvaluations", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxFunctionEvaluations", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxFunctionEvaluations(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self) {
PetscReal *__pyx_v_r;
PetscInt *__pyx_v_i;
PetscInt __pyx_v_ival;
@@ -167013,7 +176823,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(st
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getMaxFunctionEvaluations", 0);
- /* "PETSc/SNES.pyx":463
+ /* "PETSc/SNES.pyx":480
*
* def getMaxFunctionEvaluations(self):
* cdef PetscReal *r = NULL # <<<<<<<<<<<<<<
@@ -167022,7 +176832,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(st
*/
__pyx_v_r = NULL;
- /* "PETSc/SNES.pyx":464
+ /* "PETSc/SNES.pyx":481
* def getMaxFunctionEvaluations(self):
* cdef PetscReal *r = NULL
* cdef PetscInt *i = NULL # <<<<<<<<<<<<<<
@@ -167031,7 +176841,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(st
*/
__pyx_v_i = NULL;
- /* "PETSc/SNES.pyx":465
+ /* "PETSc/SNES.pyx":482
* cdef PetscReal *r = NULL
* cdef PetscInt *i = NULL
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -167040,16 +176850,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(st
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":466
+ /* "PETSc/SNES.pyx":483
* cdef PetscInt *i = NULL
* cdef PetscInt ival = 0
* CHKERR( SNESGetTolerances(self.snes, r, r, r, i, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetTolerances(__pyx_v_self->snes, __pyx_v_r, __pyx_v_r, __pyx_v_r, __pyx_v_i, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 466, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetTolerances(__pyx_v_self->snes, __pyx_v_r, __pyx_v_r, __pyx_v_r, __pyx_v_i, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 483, __pyx_L1_error)
- /* "PETSc/SNES.pyx":467
+ /* "PETSc/SNES.pyx":484
* cdef PetscInt ival = 0
* CHKERR( SNESGetTolerances(self.snes, r, r, r, i, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -167057,13 +176867,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(st
* def getFunctionEvaluations(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 467, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 484, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":462
+ /* "PETSc/SNES.pyx":479
* CHKERR( SNESSetTolerances(self.snes, r, r, r, i, ival) )
*
* def getMaxFunctionEvaluations(self): # <<<<<<<<<<<<<<
@@ -167082,7 +176892,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(st
return __pyx_r;
}
-/* "PETSc/SNES.pyx":469
+/* "PETSc/SNES.pyx":486
* return toInt(ival)
*
* def getFunctionEvaluations(self): # <<<<<<<<<<<<<<
@@ -167091,23 +176901,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations(st
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_121getFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations[] = "SNES.getFunctionEvaluations(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_121getFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_127getFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_126getFunctionEvaluations[] = "SNES.getFunctionEvaluations(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_127getFunctionEvaluations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getFunctionEvaluations (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getFunctionEvaluations", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getFunctionEvaluations", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_126getFunctionEvaluations(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getFunctionEvaluations(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167115,7 +176925,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(struc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getFunctionEvaluations", 0);
- /* "PETSc/SNES.pyx":470
+ /* "PETSc/SNES.pyx":487
*
* def getFunctionEvaluations(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -167124,16 +176934,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(struc
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":471
+ /* "PETSc/SNES.pyx":488
* def getFunctionEvaluations(self):
* cdef PetscInt ival = 0
* CHKERR( SNESGetNumberFunctionEvals(self.snes, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNumberFunctionEvals(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 471, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNumberFunctionEvals(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 488, __pyx_L1_error)
- /* "PETSc/SNES.pyx":472
+ /* "PETSc/SNES.pyx":489
* cdef PetscInt ival = 0
* CHKERR( SNESGetNumberFunctionEvals(self.snes, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -167141,13 +176951,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(struc
* def setMaxStepFailures(self, max_fails):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 472, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 489, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":469
+ /* "PETSc/SNES.pyx":486
* return toInt(ival)
*
* def getFunctionEvaluations(self): # <<<<<<<<<<<<<<
@@ -167166,7 +176976,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(struc
return __pyx_r;
}
-/* "PETSc/SNES.pyx":474
+/* "PETSc/SNES.pyx":491
* return toInt(ival)
*
* def setMaxStepFailures(self, max_fails): # <<<<<<<<<<<<<<
@@ -167175,9 +176985,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations(struc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_122setMaxStepFailures[] = "SNES.setMaxStepFailures(self, max_fails)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_128setMaxStepFailures[] = "SNES.setMaxStepFailures(self, max_fails)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_max_fails = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -167190,6 +177000,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxStepFailures(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -167200,7 +177011,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxStepFailures(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxStepFailures") < 0)) __PYX_ERR(36, 474, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxStepFailures") < 0)) __PYX_ERR(36, 491, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -167211,20 +177022,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxStepFailures(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMaxStepFailures", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 474, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMaxStepFailures", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 491, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setMaxStepFailures", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxStepFailures(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_max_fails);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxStepFailures(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_max_fails);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167232,26 +177043,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxStepFailures(struct Py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMaxStepFailures", 0);
- /* "PETSc/SNES.pyx":475
+ /* "PETSc/SNES.pyx":492
*
* def setMaxStepFailures(self, max_fails):
* cdef PetscInt ival = asInt(max_fails) # <<<<<<<<<<<<<<
* CHKERR( SNESSetMaxNonlinearStepFailures(self.snes, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_fails); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 475, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_fails); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 492, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/SNES.pyx":476
+ /* "PETSc/SNES.pyx":493
* def setMaxStepFailures(self, max_fails):
* cdef PetscInt ival = asInt(max_fails)
* CHKERR( SNESSetMaxNonlinearStepFailures(self.snes, ival) ) # <<<<<<<<<<<<<<
*
* def getMaxStepFailures(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetMaxNonlinearStepFailures(__pyx_v_self->snes, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 476, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetMaxNonlinearStepFailures(__pyx_v_self->snes, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 493, __pyx_L1_error)
- /* "PETSc/SNES.pyx":474
+ /* "PETSc/SNES.pyx":491
* return toInt(ival)
*
* def setMaxStepFailures(self, max_fails): # <<<<<<<<<<<<<<
@@ -167271,7 +177082,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxStepFailures(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":478
+/* "PETSc/SNES.pyx":495
* CHKERR( SNESSetMaxNonlinearStepFailures(self.snes, ival) )
*
* def getMaxStepFailures(self): # <<<<<<<<<<<<<<
@@ -167280,23 +177091,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_122setMaxStepFailures(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_125getMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_124getMaxStepFailures[] = "SNES.getMaxStepFailures(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_125getMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_131getMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_130getMaxStepFailures[] = "SNES.getMaxStepFailures(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_131getMaxStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getMaxStepFailures (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getMaxStepFailures", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxStepFailures", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxStepFailures(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxStepFailures(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167304,7 +177115,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(struct Py
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getMaxStepFailures", 0);
- /* "PETSc/SNES.pyx":479
+ /* "PETSc/SNES.pyx":496
*
* def getMaxStepFailures(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -167313,16 +177124,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(struct Py
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":480
+ /* "PETSc/SNES.pyx":497
* def getMaxStepFailures(self):
* cdef PetscInt ival = 0
* CHKERR( SNESGetMaxNonlinearStepFailures(self.snes, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetMaxNonlinearStepFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 480, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetMaxNonlinearStepFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 497, __pyx_L1_error)
- /* "PETSc/SNES.pyx":481
+ /* "PETSc/SNES.pyx":498
* cdef PetscInt ival = 0
* CHKERR( SNESGetMaxNonlinearStepFailures(self.snes, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -167330,13 +177141,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(struct Py
* def getStepFailures(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 481, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 498, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":478
+ /* "PETSc/SNES.pyx":495
* CHKERR( SNESSetMaxNonlinearStepFailures(self.snes, ival) )
*
* def getMaxStepFailures(self): # <<<<<<<<<<<<<<
@@ -167355,7 +177166,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":483
+/* "PETSc/SNES.pyx":500
* return toInt(ival)
*
* def getStepFailures(self): # <<<<<<<<<<<<<<
@@ -167364,23 +177175,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_124getMaxStepFailures(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_127getStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_126getStepFailures[] = "SNES.getStepFailures(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_127getStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_133getStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_132getStepFailures[] = "SNES.getStepFailures(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_133getStepFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getStepFailures (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getStepFailures", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getStepFailures", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_132getStepFailures(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getStepFailures(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167388,7 +177199,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(struct PyPet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getStepFailures", 0);
- /* "PETSc/SNES.pyx":484
+ /* "PETSc/SNES.pyx":501
*
* def getStepFailures(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -167397,16 +177208,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(struct PyPet
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":485
+ /* "PETSc/SNES.pyx":502
* def getStepFailures(self):
* cdef PetscInt ival = 0
* CHKERR( SNESGetNonlinearStepFailures(self.snes, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNonlinearStepFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 485, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetNonlinearStepFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 502, __pyx_L1_error)
- /* "PETSc/SNES.pyx":486
+ /* "PETSc/SNES.pyx":503
* cdef PetscInt ival = 0
* CHKERR( SNESGetNonlinearStepFailures(self.snes, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -167414,13 +177225,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(struct PyPet
* def setMaxKSPFailures(self, max_fails):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 486, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 503, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":483
+ /* "PETSc/SNES.pyx":500
* return toInt(ival)
*
* def getStepFailures(self): # <<<<<<<<<<<<<<
@@ -167439,7 +177250,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(struct PyPet
return __pyx_r;
}
-/* "PETSc/SNES.pyx":488
+/* "PETSc/SNES.pyx":505
* return toInt(ival)
*
* def setMaxKSPFailures(self, max_fails): # <<<<<<<<<<<<<<
@@ -167448,9 +177259,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_126getStepFailures(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures[] = "SNES.setMaxKSPFailures(self, max_fails)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_135setMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_134setMaxKSPFailures[] = "SNES.setMaxKSPFailures(self, max_fails)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_135setMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_max_fails = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -167463,6 +177274,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxKSPFailures(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -167473,7 +177285,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxKSPFailures(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxKSPFailures") < 0)) __PYX_ERR(36, 488, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxKSPFailures") < 0)) __PYX_ERR(36, 505, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -167484,20 +177296,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxKSPFailures(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMaxKSPFailures", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 488, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMaxKSPFailures", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 505, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setMaxKSPFailures", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_max_fails);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_134setMaxKSPFailures(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_max_fails);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_134setMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_max_fails) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167505,26 +177317,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures(struct PyP
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMaxKSPFailures", 0);
- /* "PETSc/SNES.pyx":489
+ /* "PETSc/SNES.pyx":506
*
* def setMaxKSPFailures(self, max_fails):
* cdef PetscInt ival = asInt(max_fails) # <<<<<<<<<<<<<<
* CHKERR( SNESSetMaxLinearSolveFailures(self.snes, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_fails); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 489, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_fails); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 506, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/SNES.pyx":490
+ /* "PETSc/SNES.pyx":507
* def setMaxKSPFailures(self, max_fails):
* cdef PetscInt ival = asInt(max_fails)
* CHKERR( SNESSetMaxLinearSolveFailures(self.snes, ival) ) # <<<<<<<<<<<<<<
*
* def getMaxKSPFailures(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetMaxLinearSolveFailures(__pyx_v_self->snes, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 490, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetMaxLinearSolveFailures(__pyx_v_self->snes, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 507, __pyx_L1_error)
- /* "PETSc/SNES.pyx":488
+ /* "PETSc/SNES.pyx":505
* return toInt(ival)
*
* def setMaxKSPFailures(self, max_fails): # <<<<<<<<<<<<<<
@@ -167544,7 +177356,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures(struct PyP
return __pyx_r;
}
-/* "PETSc/SNES.pyx":492
+/* "PETSc/SNES.pyx":509
* CHKERR( SNESSetMaxLinearSolveFailures(self.snes, ival) )
*
* def getMaxKSPFailures(self): # <<<<<<<<<<<<<<
@@ -167553,23 +177365,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures(struct PyP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_131getMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures[] = "SNES.getMaxKSPFailures(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_131getMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_137getMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_136getMaxKSPFailures[] = "SNES.getMaxKSPFailures(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_137getMaxKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getMaxKSPFailures (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getMaxKSPFailures", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxKSPFailures", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_136getMaxKSPFailures(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_136getMaxKSPFailures(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167577,7 +177389,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(struct PyP
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getMaxKSPFailures", 0);
- /* "PETSc/SNES.pyx":493
+ /* "PETSc/SNES.pyx":510
*
* def getMaxKSPFailures(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -167586,16 +177398,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(struct PyP
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":494
+ /* "PETSc/SNES.pyx":511
* def getMaxKSPFailures(self):
* cdef PetscInt ival = 0
* CHKERR( SNESGetMaxLinearSolveFailures(self.snes, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetMaxLinearSolveFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 494, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetMaxLinearSolveFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 511, __pyx_L1_error)
- /* "PETSc/SNES.pyx":495
+ /* "PETSc/SNES.pyx":512
* cdef PetscInt ival = 0
* CHKERR( SNESGetMaxLinearSolveFailures(self.snes, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -167603,13 +177415,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(struct PyP
* def getKSPFailures(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 495, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 512, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":492
+ /* "PETSc/SNES.pyx":509
* CHKERR( SNESSetMaxLinearSolveFailures(self.snes, ival) )
*
* def getMaxKSPFailures(self): # <<<<<<<<<<<<<<
@@ -167628,7 +177440,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(struct PyP
return __pyx_r;
}
-/* "PETSc/SNES.pyx":497
+/* "PETSc/SNES.pyx":514
* return toInt(ival)
*
* def getKSPFailures(self): # <<<<<<<<<<<<<<
@@ -167637,23 +177449,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures(struct PyP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_133getKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_132getKSPFailures[] = "SNES.getKSPFailures(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_133getKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139getKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_138getKSPFailures[] = "SNES.getKSPFailures(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139getKSPFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getKSPFailures (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getKSPFailures", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getKSPFailures", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_138getKSPFailures(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138getKSPFailures(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167661,7 +177473,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getKSPFailures", 0);
- /* "PETSc/SNES.pyx":498
+ /* "PETSc/SNES.pyx":515
*
* def getKSPFailures(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -167670,16 +177482,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(struct PyPets
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":499
+ /* "PETSc/SNES.pyx":516
* def getKSPFailures(self):
* cdef PetscInt ival = 0
* CHKERR( SNESGetLinearSolveFailures(self.snes, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetLinearSolveFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 499, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetLinearSolveFailures(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 516, __pyx_L1_error)
- /* "PETSc/SNES.pyx":500
+ /* "PETSc/SNES.pyx":517
* cdef PetscInt ival = 0
* CHKERR( SNESGetLinearSolveFailures(self.snes, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -167687,13 +177499,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(struct PyPets
* setMaxNonlinearStepFailures = setMaxStepFailures
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 500, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 517, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":497
+ /* "PETSc/SNES.pyx":514
* return toInt(ival)
*
* def getKSPFailures(self): # <<<<<<<<<<<<<<
@@ -167712,7 +177524,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(struct PyPets
return __pyx_r;
}
-/* "PETSc/SNES.pyx":511
+/* "PETSc/SNES.pyx":528
* # --- solving ---
*
* def setUp(self): # <<<<<<<<<<<<<<
@@ -167721,38 +177533,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_132getKSPFailures(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_135setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_134setUp[] = "SNES.setUp(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_135setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_141setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_140setUp[] = "SNES.setUp(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_141setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("setUp (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("setUp", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "setUp", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_134setUp(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_140setUp(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_134setUp(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_140setUp(struct PyPetscSNESObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setUp", 0);
- /* "PETSc/SNES.pyx":512
+ /* "PETSc/SNES.pyx":529
*
* def setUp(self):
* CHKERR( SNESSetUp(self.snes) ) # <<<<<<<<<<<<<<
*
* def reset(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUp(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 512, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUp(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 529, __pyx_L1_error)
- /* "PETSc/SNES.pyx":511
+ /* "PETSc/SNES.pyx":528
* # --- solving ---
*
* def setUp(self): # <<<<<<<<<<<<<<
@@ -167772,7 +177584,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_134setUp(struct PyPetscSNESObje
return __pyx_r;
}
-/* "PETSc/SNES.pyx":514
+/* "PETSc/SNES.pyx":531
* CHKERR( SNESSetUp(self.snes) )
*
* def reset(self): # <<<<<<<<<<<<<<
@@ -167781,38 +177593,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_134setUp(struct PyPetscSNESObje
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_137reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_136reset[] = "SNES.reset(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_137reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_143reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_142reset[] = "SNES.reset(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_143reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("reset (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("reset", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "reset", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_136reset(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_142reset(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_136reset(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142reset(struct PyPetscSNESObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("reset", 0);
- /* "PETSc/SNES.pyx":515
+ /* "PETSc/SNES.pyx":532
*
* def reset(self):
* CHKERR( SNESReset(self.snes) ) # <<<<<<<<<<<<<<
*
- * def solve(self, Vec b, Vec x not None):
+ * def solve(self, Vec b or None, Vec x):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESReset(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 515, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESReset(__pyx_v_self->snes)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 532, __pyx_L1_error)
- /* "PETSc/SNES.pyx":514
+ /* "PETSc/SNES.pyx":531
* CHKERR( SNESSetUp(self.snes) )
*
* def reset(self): # <<<<<<<<<<<<<<
@@ -167832,18 +177644,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_136reset(struct PyPetscSNESObje
return __pyx_r;
}
-/* "PETSc/SNES.pyx":517
+/* "PETSc/SNES.pyx":534
* CHKERR( SNESReset(self.snes) )
*
- * def solve(self, Vec b, Vec x not None): # <<<<<<<<<<<<<<
+ * def solve(self, Vec b or None, Vec x): # <<<<<<<<<<<<<<
* cdef PetscVec rhs = NULL
* if b is not None: rhs = b.vec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_138solve[] = "SNES.solve(self, Vec b, Vec x)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_145solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_144solve[] = "SNES.solve(self, Vec b, Vec x)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_145solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_b = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
PyObject *__pyx_r = 0;
@@ -167857,7 +177669,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139solve(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -167866,14 +177680,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139solve(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_b)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, 1); __PYX_ERR(36, 517, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, 1); __PYX_ERR(36, 534, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(36, 517, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(36, 534, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -167886,15 +177701,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139solve(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 517, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("solve", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 534, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(36, 517, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(36, 517, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_138solve(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "b", 0))) __PYX_ERR(36, 534, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(36, 534, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_144solve(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_b, __pyx_v_x);
/* function exit code */
goto __pyx_L0;
@@ -167905,7 +177720,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_139solve(PyObject *__pyx_v_self
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138solve(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_144solve(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_b, struct PyPetscVecObject *__pyx_v_x) {
Vec __pyx_v_rhs;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -167915,17 +177730,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138solve(struct PyPetscSNESObje
int __pyx_t_4;
__Pyx_RefNannySetupContext("solve", 0);
- /* "PETSc/SNES.pyx":518
+ /* "PETSc/SNES.pyx":535
*
- * def solve(self, Vec b, Vec x not None):
+ * def solve(self, Vec b or None, Vec x):
* cdef PetscVec rhs = NULL # <<<<<<<<<<<<<<
* if b is not None: rhs = b.vec
* CHKERR( SNESSolve(self.snes, rhs, x.vec) )
*/
__pyx_v_rhs = NULL;
- /* "PETSc/SNES.pyx":519
- * def solve(self, Vec b, Vec x not None):
+ /* "PETSc/SNES.pyx":536
+ * def solve(self, Vec b or None, Vec x):
* cdef PetscVec rhs = NULL
* if b is not None: rhs = b.vec # <<<<<<<<<<<<<<
* CHKERR( SNESSolve(self.snes, rhs, x.vec) )
@@ -167938,19 +177753,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138solve(struct PyPetscSNESObje
__pyx_v_rhs = __pyx_t_3;
}
- /* "PETSc/SNES.pyx":520
+ /* "PETSc/SNES.pyx":537
* cdef PetscVec rhs = NULL
* if b is not None: rhs = b.vec
* CHKERR( SNESSolve(self.snes, rhs, x.vec) ) # <<<<<<<<<<<<<<
*
* def setConvergedReason(self, reason):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSolve(__pyx_v_self->snes, __pyx_v_rhs, __pyx_v_x->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(36, 520, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSolve(__pyx_v_self->snes, __pyx_v_rhs, __pyx_v_x->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(36, 537, __pyx_L1_error)
- /* "PETSc/SNES.pyx":517
+ /* "PETSc/SNES.pyx":534
* CHKERR( SNESReset(self.snes) )
*
- * def solve(self, Vec b, Vec x not None): # <<<<<<<<<<<<<<
+ * def solve(self, Vec b or None, Vec x): # <<<<<<<<<<<<<<
* cdef PetscVec rhs = NULL
* if b is not None: rhs = b.vec
*/
@@ -167967,7 +177782,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138solve(struct PyPetscSNESObje
return __pyx_r;
}
-/* "PETSc/SNES.pyx":522
+/* "PETSc/SNES.pyx":539
* CHKERR( SNESSolve(self.snes, rhs, x.vec) )
*
* def setConvergedReason(self, reason): # <<<<<<<<<<<<<<
@@ -167976,9 +177791,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_138solve(struct PyPetscSNESObje
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_141setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_140setConvergedReason[] = "SNES.setConvergedReason(self, reason)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_141setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_147setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_146setConvergedReason[] = "SNES.setConvergedReason(self, reason)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_147setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_reason = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -167991,6 +177806,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_141setConvergedReason(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -168001,7 +177817,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_141setConvergedReason(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergedReason") < 0)) __PYX_ERR(36, 522, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergedReason") < 0)) __PYX_ERR(36, 539, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -168012,20 +177828,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_141setConvergedReason(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConvergedReason", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 522, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConvergedReason", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 539, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setConvergedReason", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_140setConvergedReason(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_reason);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_146setConvergedReason(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_reason);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_140setConvergedReason(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reason) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_146setConvergedReason(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_reason) {
SNESConvergedReason __pyx_v_eval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168033,26 +177849,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_140setConvergedReason(struct Py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setConvergedReason", 0);
- /* "PETSc/SNES.pyx":523
+ /* "PETSc/SNES.pyx":540
*
* def setConvergedReason(self, reason):
* cdef PetscSNESConvergedReason eval = reason # <<<<<<<<<<<<<<
* CHKERR( SNESSetConvergedReason(self.snes, eval) )
*
*/
- __pyx_t_1 = ((SNESConvergedReason)__Pyx_PyInt_As_SNESConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 523, __pyx_L1_error)
+ __pyx_t_1 = ((SNESConvergedReason)__Pyx_PyInt_As_SNESConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 540, __pyx_L1_error)
__pyx_v_eval = __pyx_t_1;
- /* "PETSc/SNES.pyx":524
+ /* "PETSc/SNES.pyx":541
* def setConvergedReason(self, reason):
* cdef PetscSNESConvergedReason eval = reason
* CHKERR( SNESSetConvergedReason(self.snes, eval) ) # <<<<<<<<<<<<<<
*
* def getConvergedReason(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergedReason(__pyx_v_self->snes, __pyx_v_eval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 524, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetConvergedReason(__pyx_v_self->snes, __pyx_v_eval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 541, __pyx_L1_error)
- /* "PETSc/SNES.pyx":522
+ /* "PETSc/SNES.pyx":539
* CHKERR( SNESSolve(self.snes, rhs, x.vec) )
*
* def setConvergedReason(self, reason): # <<<<<<<<<<<<<<
@@ -168072,7 +177888,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_140setConvergedReason(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":526
+/* "PETSc/SNES.pyx":543
* CHKERR( SNESSetConvergedReason(self.snes, eval) )
*
* def getConvergedReason(self): # <<<<<<<<<<<<<<
@@ -168081,23 +177897,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_140setConvergedReason(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_143getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_142getConvergedReason[] = "SNES.getConvergedReason(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_143getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_149getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_148getConvergedReason[] = "SNES.getConvergedReason(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_149getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getConvergedReason (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getConvergedReason", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getConvergedReason", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_148getConvergedReason(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getConvergedReason(struct PyPetscSNESObject *__pyx_v_self) {
SNESConvergedReason __pyx_v_reason;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168105,7 +177921,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(struct Py
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getConvergedReason", 0);
- /* "PETSc/SNES.pyx":527
+ /* "PETSc/SNES.pyx":544
*
* def getConvergedReason(self):
* cdef PetscSNESConvergedReason reason = SNES_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -168114,16 +177930,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(struct Py
*/
__pyx_v_reason = SNES_CONVERGED_ITERATING;
- /* "PETSc/SNES.pyx":528
+ /* "PETSc/SNES.pyx":545
* def getConvergedReason(self):
* cdef PetscSNESConvergedReason reason = SNES_CONVERGED_ITERATING
* CHKERR( SNESGetConvergedReason(self.snes, &reason) ) # <<<<<<<<<<<<<<
* return reason
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetConvergedReason(__pyx_v_self->snes, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 528, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetConvergedReason(__pyx_v_self->snes, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 545, __pyx_L1_error)
- /* "PETSc/SNES.pyx":529
+ /* "PETSc/SNES.pyx":546
* cdef PetscSNESConvergedReason reason = SNES_CONVERGED_ITERATING
* CHKERR( SNESGetConvergedReason(self.snes, &reason) )
* return reason # <<<<<<<<<<<<<<
@@ -168131,13 +177947,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(struct Py
* def setIterationNumber(self, its):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_SNESConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 529, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_SNESConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 546, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":526
+ /* "PETSc/SNES.pyx":543
* CHKERR( SNESSetConvergedReason(self.snes, eval) )
*
* def getConvergedReason(self): # <<<<<<<<<<<<<<
@@ -168156,7 +177972,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":531
+/* "PETSc/SNES.pyx":548
* return reason
*
* def setIterationNumber(self, its): # <<<<<<<<<<<<<<
@@ -168165,9 +177981,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_142getConvergedReason(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_145setIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_144setIterationNumber[] = "SNES.setIterationNumber(self, its)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_145setIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_151setIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_150setIterationNumber[] = "SNES.setIterationNumber(self, its)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_151setIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_its = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -168180,6 +177996,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_145setIterationNumber(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -168190,7 +178007,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_145setIterationNumber(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIterationNumber") < 0)) __PYX_ERR(36, 531, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIterationNumber") < 0)) __PYX_ERR(36, 548, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -168201,20 +178018,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_145setIterationNumber(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setIterationNumber", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 531, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setIterationNumber", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 548, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setIterationNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_144setIterationNumber(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_its);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_150setIterationNumber(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_its);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_144setIterationNumber(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150setIterationNumber(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_its) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168222,26 +178039,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_144setIterationNumber(struct Py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setIterationNumber", 0);
- /* "PETSc/SNES.pyx":532
+ /* "PETSc/SNES.pyx":549
*
* def setIterationNumber(self, its):
* cdef PetscInt ival = asInt(its) # <<<<<<<<<<<<<<
* CHKERR( SNESSetIterationNumber(self.snes, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(36, 532, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_its); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 549, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
- /* "PETSc/SNES.pyx":533
+ /* "PETSc/SNES.pyx":550
* def setIterationNumber(self, its):
* cdef PetscInt ival = asInt(its)
* CHKERR( SNESSetIterationNumber(self.snes, ival) ) # <<<<<<<<<<<<<<
*
* def getIterationNumber(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetIterationNumber(__pyx_v_self->snes, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 533, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetIterationNumber(__pyx_v_self->snes, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 550, __pyx_L1_error)
- /* "PETSc/SNES.pyx":531
+ /* "PETSc/SNES.pyx":548
* return reason
*
* def setIterationNumber(self, its): # <<<<<<<<<<<<<<
@@ -168261,7 +178078,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_144setIterationNumber(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":535
+/* "PETSc/SNES.pyx":552
* CHKERR( SNESSetIterationNumber(self.snes, ival) )
*
* def getIterationNumber(self): # <<<<<<<<<<<<<<
@@ -168270,23 +178087,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_144setIterationNumber(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_147getIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_146getIterationNumber[] = "SNES.getIterationNumber(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_147getIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_153getIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_152getIterationNumber[] = "SNES.getIterationNumber(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_153getIterationNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getIterationNumber (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getIterationNumber", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getIterationNumber", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_146getIterationNumber(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_152getIterationNumber(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_146getIterationNumber(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_152getIterationNumber(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168294,7 +178111,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_146getIterationNumber(struct Py
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getIterationNumber", 0);
- /* "PETSc/SNES.pyx":536
+ /* "PETSc/SNES.pyx":553
*
* def getIterationNumber(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -168303,30 +178120,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_146getIterationNumber(struct Py
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":537
+ /* "PETSc/SNES.pyx":554
* def getIterationNumber(self):
* cdef PetscInt ival = 0
* CHKERR( SNESGetIterationNumber(self.snes, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetIterationNumber(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 537, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetIterationNumber(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 554, __pyx_L1_error)
- /* "PETSc/SNES.pyx":538
+ /* "PETSc/SNES.pyx":555
* cdef PetscInt ival = 0
* CHKERR( SNESGetIterationNumber(self.snes, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
*
- * def getLinearSolveIterations(self):
+ * def setFunctionNorm(self, norm):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 538, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 555, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":535
+ /* "PETSc/SNES.pyx":552
* CHKERR( SNESSetIterationNumber(self.snes, ival) )
*
* def getIterationNumber(self): # <<<<<<<<<<<<<<
@@ -168345,32 +178162,222 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_146getIterationNumber(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":540
+/* "PETSc/SNES.pyx":557
* return toInt(ival)
*
+ * def setFunctionNorm(self, norm): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(norm)
+ * CHKERR( SNESSetFunctionNorm(self.snes, rval) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setFunctionNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_154setFunctionNorm[] = "SNES.setFunctionNorm(self, norm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setFunctionNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_norm = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setFunctionNorm (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_norm,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_norm)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setFunctionNorm") < 0)) __PYX_ERR(36, 557, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_norm = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setFunctionNorm", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 557, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.setFunctionNorm", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_154setFunctionNorm(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_norm);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_154setFunctionNorm(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_norm) {
+ PetscReal __pyx_v_rval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscReal __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setFunctionNorm", 0);
+
+ /* "PETSc/SNES.pyx":558
+ *
+ * def setFunctionNorm(self, norm):
+ * cdef PetscReal rval = asReal(norm) # <<<<<<<<<<<<<<
+ * CHKERR( SNESSetFunctionNorm(self.snes, rval) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_norm); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 558, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_1;
+
+ /* "PETSc/SNES.pyx":559
+ * def setFunctionNorm(self, norm):
+ * cdef PetscReal rval = asReal(norm)
+ * CHKERR( SNESSetFunctionNorm(self.snes, rval) ) # <<<<<<<<<<<<<<
+ *
+ * def getFunctionNorm(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetFunctionNorm(__pyx_v_self->snes, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 559, __pyx_L1_error)
+
+ /* "PETSc/SNES.pyx":557
+ * return toInt(ival)
+ *
+ * def setFunctionNorm(self, norm): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(norm)
+ * CHKERR( SNESSetFunctionNorm(self.snes, rval) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.setFunctionNorm", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":561
+ * CHKERR( SNESSetFunctionNorm(self.snes, rval) )
+ *
+ * def getFunctionNorm(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( SNESGetFunctionNorm(self.snes, &rval) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_157getFunctionNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_156getFunctionNorm[] = "SNES.getFunctionNorm(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_157getFunctionNorm(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getFunctionNorm (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getFunctionNorm", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getFunctionNorm", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_156getFunctionNorm(((struct PyPetscSNESObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getFunctionNorm(struct PyPetscSNESObject *__pyx_v_self) {
+ PetscReal __pyx_v_rval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getFunctionNorm", 0);
+
+ /* "PETSc/SNES.pyx":562
+ *
+ * def getFunctionNorm(self):
+ * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
+ * CHKERR( SNESGetFunctionNorm(self.snes, &rval) )
+ * return toReal(rval)
+ */
+ __pyx_v_rval = 0.0;
+
+ /* "PETSc/SNES.pyx":563
+ * def getFunctionNorm(self):
+ * cdef PetscReal rval = 0
+ * CHKERR( SNESGetFunctionNorm(self.snes, &rval) ) # <<<<<<<<<<<<<<
+ * return toReal(rval)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetFunctionNorm(__pyx_v_self->snes, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 563, __pyx_L1_error)
+
+ /* "PETSc/SNES.pyx":564
+ * cdef PetscReal rval = 0
+ * CHKERR( SNESGetFunctionNorm(self.snes, &rval) )
+ * return toReal(rval) # <<<<<<<<<<<<<<
+ *
+ * def getLinearSolveIterations(self):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 564, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/SNES.pyx":561
+ * CHKERR( SNESSetFunctionNorm(self.snes, rval) )
+ *
+ * def getFunctionNorm(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( SNESGetFunctionNorm(self.snes, &rval) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.getFunctionNorm", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":566
+ * return toReal(rval)
+ *
* def getLinearSolveIterations(self): # <<<<<<<<<<<<<<
* cdef PetscInt ival = 0
* CHKERR( SNESGetLinearSolveIterations(self.snes, &ival) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_149getLinearSolveIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations[] = "SNES.getLinearSolveIterations(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_149getLinearSolveIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159getLinearSolveIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_158getLinearSolveIterations[] = "SNES.getLinearSolveIterations(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159getLinearSolveIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getLinearSolveIterations (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getLinearSolveIterations", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getLinearSolveIterations", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_158getLinearSolveIterations(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_158getLinearSolveIterations(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168378,7 +178385,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(str
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getLinearSolveIterations", 0);
- /* "PETSc/SNES.pyx":541
+ /* "PETSc/SNES.pyx":567
*
* def getLinearSolveIterations(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
@@ -168387,16 +178394,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(str
*/
__pyx_v_ival = 0;
- /* "PETSc/SNES.pyx":542
+ /* "PETSc/SNES.pyx":568
* def getLinearSolveIterations(self):
* cdef PetscInt ival = 0
* CHKERR( SNESGetLinearSolveIterations(self.snes, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetLinearSolveIterations(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 542, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetLinearSolveIterations(__pyx_v_self->snes, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 568, __pyx_L1_error)
- /* "PETSc/SNES.pyx":543
+ /* "PETSc/SNES.pyx":569
* cdef PetscInt ival = 0
* CHKERR( SNESGetLinearSolveIterations(self.snes, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
@@ -168404,14 +178411,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(str
* def getRhs(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 543, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 569, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":540
- * return toInt(ival)
+ /* "PETSc/SNES.pyx":566
+ * return toReal(rval)
*
* def getLinearSolveIterations(self): # <<<<<<<<<<<<<<
* cdef PetscInt ival = 0
@@ -168429,7 +178436,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(str
return __pyx_r;
}
-/* "PETSc/SNES.pyx":545
+/* "PETSc/SNES.pyx":571
* return toInt(ival)
*
* def getRhs(self): # <<<<<<<<<<<<<<
@@ -168438,23 +178445,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations(str
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_151getRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_150getRhs[] = "SNES.getRhs(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_151getRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_161getRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_160getRhs[] = "SNES.getRhs(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_161getRhs(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getRhs (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getRhs", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRhs", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_160getRhs(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getRhs(struct PyPetscSNESObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_vec = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168462,28 +178469,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(struct PyPetscSNESObj
int __pyx_t_2;
__Pyx_RefNannySetupContext("getRhs", 0);
- /* "PETSc/SNES.pyx":546
+ /* "PETSc/SNES.pyx":572
*
* def getRhs(self):
* cdef Vec vec = Vec() # <<<<<<<<<<<<<<
* CHKERR( SNESGetRhs(self.snes, &vec.vec) )
* PetscINCREF(vec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 546, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 572, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":547
+ /* "PETSc/SNES.pyx":573
* def getRhs(self):
* cdef Vec vec = Vec()
* CHKERR( SNESGetRhs(self.snes, &vec.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(vec.obj)
* return vec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetRhs(__pyx_v_self->snes, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 547, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetRhs(__pyx_v_self->snes, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 573, __pyx_L1_error)
- /* "PETSc/SNES.pyx":548
+ /* "PETSc/SNES.pyx":574
* cdef Vec vec = Vec()
* CHKERR( SNESGetRhs(self.snes, &vec.vec) )
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -168492,7 +178499,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(struct PyPetscSNESObj
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/SNES.pyx":549
+ /* "PETSc/SNES.pyx":575
* CHKERR( SNESGetRhs(self.snes, &vec.vec) )
* PetscINCREF(vec.obj)
* return vec # <<<<<<<<<<<<<<
@@ -168504,7 +178511,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(struct PyPetscSNESObj
__pyx_r = ((PyObject *)__pyx_v_vec);
goto __pyx_L0;
- /* "PETSc/SNES.pyx":545
+ /* "PETSc/SNES.pyx":571
* return toInt(ival)
*
* def getRhs(self): # <<<<<<<<<<<<<<
@@ -168524,7 +178531,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(struct PyPetscSNESObj
return __pyx_r;
}
-/* "PETSc/SNES.pyx":551
+/* "PETSc/SNES.pyx":577
* return vec
*
* def getSolution(self): # <<<<<<<<<<<<<<
@@ -168533,23 +178540,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_150getRhs(struct PyPetscSNESObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_153getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_152getSolution[] = "SNES.getSolution(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_153getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_162getSolution[] = "SNES.getSolution(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getSolution (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getSolution", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSolution", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_152getSolution(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_162getSolution(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_152getSolution(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162getSolution(struct PyPetscSNESObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_vec = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168557,28 +178564,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_152getSolution(struct PyPetscSN
int __pyx_t_2;
__Pyx_RefNannySetupContext("getSolution", 0);
- /* "PETSc/SNES.pyx":552
+ /* "PETSc/SNES.pyx":578
*
* def getSolution(self):
* cdef Vec vec = Vec() # <<<<<<<<<<<<<<
* CHKERR( SNESGetSolution(self.snes, &vec.vec) )
* PetscINCREF(vec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 552, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 578, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":553
+ /* "PETSc/SNES.pyx":579
* def getSolution(self):
* cdef Vec vec = Vec()
* CHKERR( SNESGetSolution(self.snes, &vec.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(vec.obj)
* return vec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetSolution(__pyx_v_self->snes, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 553, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetSolution(__pyx_v_self->snes, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 579, __pyx_L1_error)
- /* "PETSc/SNES.pyx":554
+ /* "PETSc/SNES.pyx":580
* cdef Vec vec = Vec()
* CHKERR( SNESGetSolution(self.snes, &vec.vec) )
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -168587,19 +178594,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_152getSolution(struct PyPetscSN
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/SNES.pyx":555
+ /* "PETSc/SNES.pyx":581
* CHKERR( SNESGetSolution(self.snes, &vec.vec) )
* PetscINCREF(vec.obj)
* return vec # <<<<<<<<<<<<<<
*
- * def setSolution(self, Vec vec not None):
+ * def setSolution(self, Vec vec):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_vec));
__pyx_r = ((PyObject *)__pyx_v_vec);
goto __pyx_L0;
- /* "PETSc/SNES.pyx":551
+ /* "PETSc/SNES.pyx":577
* return vec
*
* def getSolution(self): # <<<<<<<<<<<<<<
@@ -168619,18 +178626,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_152getSolution(struct PyPetscSN
return __pyx_r;
}
-/* "PETSc/SNES.pyx":557
+/* "PETSc/SNES.pyx":583
* return vec
*
- * def setSolution(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def setSolution(self, Vec vec): # <<<<<<<<<<<<<<
* CHKERR( SNESSetSolution(self.snes, vec.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_154setSolution[] = "SNES.setSolution(self, Vec vec)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_165setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_164setSolution[] = "SNES.setSolution(self, Vec vec)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_165setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_vec = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -168643,6 +178650,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setSolution(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -168653,7 +178661,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setSolution(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSolution") < 0)) __PYX_ERR(36, 557, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSolution") < 0)) __PYX_ERR(36, 583, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -168664,14 +178672,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setSolution(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setSolution", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 557, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSolution", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 583, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(36, 557, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_154setSolution(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_vec);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(36, 583, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_164setSolution(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_vec);
/* function exit code */
goto __pyx_L0;
@@ -168682,25 +178690,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_155setSolution(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_154setSolution(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vec) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_164setSolution(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vec) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setSolution", 0);
- /* "PETSc/SNES.pyx":558
+ /* "PETSc/SNES.pyx":584
*
- * def setSolution(self, Vec vec not None):
+ * def setSolution(self, Vec vec):
* CHKERR( SNESSetSolution(self.snes, vec.vec) ) # <<<<<<<<<<<<<<
*
* def getSolutionUpdate(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetSolution(__pyx_v_self->snes, __pyx_v_vec->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 558, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetSolution(__pyx_v_self->snes, __pyx_v_vec->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 584, __pyx_L1_error)
- /* "PETSc/SNES.pyx":557
+ /* "PETSc/SNES.pyx":583
* return vec
*
- * def setSolution(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def setSolution(self, Vec vec): # <<<<<<<<<<<<<<
* CHKERR( SNESSetSolution(self.snes, vec.vec) )
*
*/
@@ -168717,7 +178725,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_154setSolution(struct PyPetscSN
return __pyx_r;
}
-/* "PETSc/SNES.pyx":560
+/* "PETSc/SNES.pyx":586
* CHKERR( SNESSetSolution(self.snes, vec.vec) )
*
* def getSolutionUpdate(self): # <<<<<<<<<<<<<<
@@ -168726,23 +178734,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_154setSolution(struct PyPetscSN
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_157getSolutionUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_156getSolutionUpdate[] = "SNES.getSolutionUpdate(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_157getSolutionUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167getSolutionUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_166getSolutionUpdate[] = "SNES.getSolutionUpdate(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167getSolutionUpdate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getSolutionUpdate (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getSolutionUpdate", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSolutionUpdate", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_156getSolutionUpdate(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_166getSolutionUpdate(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getSolutionUpdate(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166getSolutionUpdate(struct PyPetscSNESObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_vec = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168750,28 +178758,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getSolutionUpdate(struct PyP
int __pyx_t_2;
__Pyx_RefNannySetupContext("getSolutionUpdate", 0);
- /* "PETSc/SNES.pyx":561
+ /* "PETSc/SNES.pyx":587
*
* def getSolutionUpdate(self):
* cdef Vec vec = Vec() # <<<<<<<<<<<<<<
* CHKERR( SNESGetSolutionUpdate(self.snes, &vec.vec) )
* PetscINCREF(vec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 561, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 587, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_vec = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":562
+ /* "PETSc/SNES.pyx":588
* def getSolutionUpdate(self):
* cdef Vec vec = Vec()
* CHKERR( SNESGetSolutionUpdate(self.snes, &vec.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(vec.obj)
* return vec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetSolutionUpdate(__pyx_v_self->snes, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 562, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetSolutionUpdate(__pyx_v_self->snes, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 588, __pyx_L1_error)
- /* "PETSc/SNES.pyx":563
+ /* "PETSc/SNES.pyx":589
* cdef Vec vec = Vec()
* CHKERR( SNESGetSolutionUpdate(self.snes, &vec.vec) )
* PetscINCREF(vec.obj) # <<<<<<<<<<<<<<
@@ -168780,7 +178788,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getSolutionUpdate(struct PyP
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vec->__pyx_base.obj);
- /* "PETSc/SNES.pyx":564
+ /* "PETSc/SNES.pyx":590
* CHKERR( SNESGetSolutionUpdate(self.snes, &vec.vec) )
* PetscINCREF(vec.obj)
* return vec # <<<<<<<<<<<<<<
@@ -168792,7 +178800,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getSolutionUpdate(struct PyP
__pyx_r = ((PyObject *)__pyx_v_vec);
goto __pyx_L0;
- /* "PETSc/SNES.pyx":560
+ /* "PETSc/SNES.pyx":586
* CHKERR( SNESSetSolution(self.snes, vec.vec) )
*
* def getSolutionUpdate(self): # <<<<<<<<<<<<<<
@@ -168812,18 +178820,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_156getSolutionUpdate(struct PyP
return __pyx_r;
}
-/* "PETSc/SNES.pyx":568
+/* "PETSc/SNES.pyx":594
* # --- linear solver ---
*
- * def setKSP(self, KSP ksp not None): # <<<<<<<<<<<<<<
+ * def setKSP(self, KSP ksp): # <<<<<<<<<<<<<<
* CHKERR( SNESSetKSP(self.snes, ksp.ksp) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159setKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_158setKSP[] = "SNES.setKSP(self, KSP ksp)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159setKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_169setKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_168setKSP[] = "SNES.setKSP(self, KSP ksp)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_169setKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscKSPObject *__pyx_v_ksp = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -168836,6 +178844,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159setKSP(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -168846,7 +178855,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159setKSP(PyObject *__pyx_v_sel
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setKSP") < 0)) __PYX_ERR(36, 568, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setKSP") < 0)) __PYX_ERR(36, 594, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -168857,14 +178866,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159setKSP(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setKSP", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 568, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setKSP", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 594, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setKSP", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ksp), __pyx_ptype_8petsc4py_5PETSc_KSP, 0, "ksp", 0))) __PYX_ERR(36, 568, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_158setKSP(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_ksp);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ksp), __pyx_ptype_8petsc4py_5PETSc_KSP, 0, "ksp", 0))) __PYX_ERR(36, 594, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_168setKSP(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_ksp);
/* function exit code */
goto __pyx_L0;
@@ -168875,25 +178884,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_159setKSP(PyObject *__pyx_v_sel
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_158setKSP(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscKSPObject *__pyx_v_ksp) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168setKSP(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscKSPObject *__pyx_v_ksp) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setKSP", 0);
- /* "PETSc/SNES.pyx":569
+ /* "PETSc/SNES.pyx":595
*
- * def setKSP(self, KSP ksp not None):
+ * def setKSP(self, KSP ksp):
* CHKERR( SNESSetKSP(self.snes, ksp.ksp) ) # <<<<<<<<<<<<<<
*
* def getKSP(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetKSP(__pyx_v_self->snes, __pyx_v_ksp->ksp)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 569, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetKSP(__pyx_v_self->snes, __pyx_v_ksp->ksp)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 595, __pyx_L1_error)
- /* "PETSc/SNES.pyx":568
+ /* "PETSc/SNES.pyx":594
* # --- linear solver ---
*
- * def setKSP(self, KSP ksp not None): # <<<<<<<<<<<<<<
+ * def setKSP(self, KSP ksp): # <<<<<<<<<<<<<<
* CHKERR( SNESSetKSP(self.snes, ksp.ksp) )
*
*/
@@ -168910,7 +178919,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_158setKSP(struct PyPetscSNESObj
return __pyx_r;
}
-/* "PETSc/SNES.pyx":571
+/* "PETSc/SNES.pyx":597
* CHKERR( SNESSetKSP(self.snes, ksp.ksp) )
*
* def getKSP(self): # <<<<<<<<<<<<<<
@@ -168919,23 +178928,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_158setKSP(struct PyPetscSNESObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_161getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_160getKSP[] = "SNES.getKSP(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_161getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_171getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_170getKSP[] = "SNES.getKSP(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_171getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getKSP (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getKSP", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getKSP", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_170getKSP(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_170getKSP(struct PyPetscSNESObject *__pyx_v_self) {
struct PyPetscKSPObject *__pyx_v_ksp = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -168943,28 +178952,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(struct PyPetscSNESObj
int __pyx_t_2;
__Pyx_RefNannySetupContext("getKSP", 0);
- /* "PETSc/SNES.pyx":572
+ /* "PETSc/SNES.pyx":598
*
* def getKSP(self):
* cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
* CHKERR( SNESGetKSP(self.snes, &ksp.ksp) )
* PetscINCREF(ksp.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 572, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 598, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":573
+ /* "PETSc/SNES.pyx":599
* def getKSP(self):
* cdef KSP ksp = KSP()
* CHKERR( SNESGetKSP(self.snes, &ksp.ksp) ) # <<<<<<<<<<<<<<
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetKSP(__pyx_v_self->snes, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 573, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetKSP(__pyx_v_self->snes, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 599, __pyx_L1_error)
- /* "PETSc/SNES.pyx":574
+ /* "PETSc/SNES.pyx":600
* cdef KSP ksp = KSP()
* CHKERR( SNESGetKSP(self.snes, &ksp.ksp) )
* PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
@@ -168973,7 +178982,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(struct PyPetscSNESObj
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
- /* "PETSc/SNES.pyx":575
+ /* "PETSc/SNES.pyx":601
* CHKERR( SNESGetKSP(self.snes, &ksp.ksp) )
* PetscINCREF(ksp.obj)
* return ksp # <<<<<<<<<<<<<<
@@ -168985,7 +178994,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(struct PyPetscSNESObj
__pyx_r = ((PyObject *)__pyx_v_ksp);
goto __pyx_L0;
- /* "PETSc/SNES.pyx":571
+ /* "PETSc/SNES.pyx":597
* CHKERR( SNESSetKSP(self.snes, ksp.ksp) )
*
* def getKSP(self): # <<<<<<<<<<<<<<
@@ -169005,7 +179014,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(struct PyPetscSNESObj
return __pyx_r;
}
-/* "PETSc/SNES.pyx":577
+/* "PETSc/SNES.pyx":603
* return ksp
*
* def setUseEW(self, flag=True, *targs, **kargs): # <<<<<<<<<<<<<<
@@ -169014,9 +179023,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_160getKSP(struct PyPetscSNESObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163setUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_162setUseEW[] = "SNES.setUseEW(self, flag=True, *targs, **kargs)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163setUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_173setUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_172setUseEW[] = "SNES.setUseEW(self, flag=True, *targs, **kargs)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_173setUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_flag = 0;
PyObject *__pyx_v_targs = 0;
PyObject *__pyx_v_kargs = 0;
@@ -169046,6 +179055,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163setUseEW(PyObject *__pyx_v_s
switch (pos_args) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
kw_args = PyDict_Size(__pyx_kwds);
@@ -169058,12 +179068,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163setUseEW(PyObject *__pyx_v_s
}
if (unlikely(kw_args > 0)) {
const Py_ssize_t used_pos_args = (pos_args < 1) ? pos_args : 1;
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kargs, values, used_pos_args, "setUseEW") < 0)) __PYX_ERR(36, 577, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kargs, values, used_pos_args, "setUseEW") < 0)) __PYX_ERR(36, 603, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
}
@@ -169077,7 +179088,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163setUseEW(PyObject *__pyx_v_s
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_162setUseEW(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_flag, __pyx_v_targs, __pyx_v_kargs);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_172setUseEW(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_flag, __pyx_v_targs, __pyx_v_kargs);
/* function exit code */
__Pyx_XDECREF(__pyx_v_targs);
@@ -169086,7 +179097,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_163setUseEW(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162setUseEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag, PyObject *__pyx_v_targs, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_172setUseEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag, PyObject *__pyx_v_targs, PyObject *__pyx_v_kargs) {
PetscBool __pyx_v_bval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -169098,26 +179109,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162setUseEW(struct PyPetscSNESO
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("setUseEW", 0);
- /* "PETSc/SNES.pyx":578
+ /* "PETSc/SNES.pyx":604
*
* def setUseEW(self, flag=True, *targs, **kargs):
* cdef PetscBool bval = flag # <<<<<<<<<<<<<<
* CHKERR( SNESKSPSetUseEW(self.snes, bval) )
* if targs or kargs: self.setParamsEW(*targs, **kargs)
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 578, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 604, __pyx_L1_error)
__pyx_v_bval = __pyx_t_1;
- /* "PETSc/SNES.pyx":579
+ /* "PETSc/SNES.pyx":605
* def setUseEW(self, flag=True, *targs, **kargs):
* cdef PetscBool bval = flag
* CHKERR( SNESKSPSetUseEW(self.snes, bval) ) # <<<<<<<<<<<<<<
* if targs or kargs: self.setParamsEW(*targs, **kargs)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPSetUseEW(__pyx_v_self->snes, __pyx_v_bval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 579, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPSetUseEW(__pyx_v_self->snes, __pyx_v_bval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 605, __pyx_L1_error)
- /* "PETSc/SNES.pyx":580
+ /* "PETSc/SNES.pyx":606
* cdef PetscBool bval = flag
* CHKERR( SNESKSPSetUseEW(self.snes, bval) )
* if targs or kargs: self.setParamsEW(*targs, **kargs) # <<<<<<<<<<<<<<
@@ -169130,19 +179141,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162setUseEW(struct PyPetscSNESO
__pyx_t_3 = __pyx_t_4;
goto __pyx_L4_bool_binop_done;
}
- __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_kargs); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(36, 580, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_kargs); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(36, 606, __pyx_L1_error)
__pyx_t_3 = __pyx_t_4;
__pyx_L4_bool_binop_done:;
if (__pyx_t_3) {
- __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setParamsEW); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 580, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setParamsEW); if (unlikely(!__pyx_t_5)) __PYX_ERR(36, 606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_v_targs, __pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(36, 580, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_v_targs, __pyx_v_kargs); if (unlikely(!__pyx_t_6)) __PYX_ERR(36, 606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
}
- /* "PETSc/SNES.pyx":577
+ /* "PETSc/SNES.pyx":603
* return ksp
*
* def setUseEW(self, flag=True, *targs, **kargs): # <<<<<<<<<<<<<<
@@ -169164,7 +179175,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162setUseEW(struct PyPetscSNESO
return __pyx_r;
}
-/* "PETSc/SNES.pyx":582
+/* "PETSc/SNES.pyx":608
* if targs or kargs: self.setParamsEW(*targs, **kargs)
*
* def getUseEW(self): # <<<<<<<<<<<<<<
@@ -169173,23 +179184,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_162setUseEW(struct PyPetscSNESO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_165getUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_164getUseEW[] = "SNES.getUseEW(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_165getUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_175getUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_174getUseEW[] = "SNES.getUseEW(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_175getUseEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getUseEW (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getUseEW", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getUseEW", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_164getUseEW(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_174getUseEW(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_164getUseEW(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_174getUseEW(struct PyPetscSNESObject *__pyx_v_self) {
PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -169197,39 +179208,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_164getUseEW(struct PyPetscSNESO
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getUseEW", 0);
- /* "PETSc/SNES.pyx":583
+ /* "PETSc/SNES.pyx":609
*
* def getUseEW(self):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( SNESKSPGetUseEW(self.snes, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/SNES.pyx":584
+ /* "PETSc/SNES.pyx":610
* def getUseEW(self):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( SNESKSPGetUseEW(self.snes, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPGetUseEW(__pyx_v_self->snes, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 584, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPGetUseEW(__pyx_v_self->snes, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 610, __pyx_L1_error)
- /* "PETSc/SNES.pyx":585
+ /* "PETSc/SNES.pyx":611
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( SNESKSPGetUseEW(self.snes, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setParamsEW(self, version=None,
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 585, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":582
+ /* "PETSc/SNES.pyx":608
* if targs or kargs: self.setParamsEW(*targs, **kargs)
*
* def getUseEW(self): # <<<<<<<<<<<<<<
@@ -169248,8 +179259,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_164getUseEW(struct PyPetscSNESO
return __pyx_r;
}
-/* "PETSc/SNES.pyx":587
- * return <bint> flag
+/* "PETSc/SNES.pyx":613
+ * return toBool(flag)
*
* def setParamsEW(self, version=None, # <<<<<<<<<<<<<<
* rtol_0=None, rtol_max=None,
@@ -169257,9 +179268,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_164getUseEW(struct PyPetscSNESO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_166setParamsEW[] = "SNES.setParamsEW(self, version=None, rtol_0=None, rtol_max=None, gamma=None, alpha=None, alpha2=None, threshold=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_177setParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_176setParamsEW[] = "SNES.setParamsEW(self, version=None, rtol_0=None, rtol_max=None, gamma=None, alpha=None, alpha2=None, threshold=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_177setParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_version = 0;
PyObject *__pyx_v_rtol_0 = 0;
PyObject *__pyx_v_rtol_max = 0;
@@ -169275,7 +179286,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
PyObject* values[7] = {0,0,0,0,0,0,0};
values[0] = ((PyObject *)Py_None);
- /* "PETSc/SNES.pyx":588
+ /* "PETSc/SNES.pyx":614
*
* def setParamsEW(self, version=None,
* rtol_0=None, rtol_max=None, # <<<<<<<<<<<<<<
@@ -169285,7 +179296,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
values[1] = ((PyObject *)Py_None);
values[2] = ((PyObject *)Py_None);
- /* "PETSc/SNES.pyx":589
+ /* "PETSc/SNES.pyx":615
* def setParamsEW(self, version=None,
* rtol_0=None, rtol_max=None,
* gamma=None, alpha=None, alpha2=None, # <<<<<<<<<<<<<<
@@ -169296,7 +179307,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
values[4] = ((PyObject *)Py_None);
values[5] = ((PyObject *)Py_None);
- /* "PETSc/SNES.pyx":590
+ /* "PETSc/SNES.pyx":616
* rtol_0=None, rtol_max=None,
* gamma=None, alpha=None, alpha2=None,
* threshold=None): # <<<<<<<<<<<<<<
@@ -169309,12 +179320,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -169325,31 +179343,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_version);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rtol_0);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rtol_max);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gamma);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha2);
if (value) { values[5] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 6:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_threshold);
@@ -169357,17 +179381,24 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setParamsEW") < 0)) __PYX_ERR(36, 587, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setParamsEW") < 0)) __PYX_ERR(36, 613, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -169382,16 +179413,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setParamsEW", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 587, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setParamsEW", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 613, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setParamsEW", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_version, __pyx_v_rtol_0, __pyx_v_rtol_max, __pyx_v_gamma, __pyx_v_alpha, __pyx_v_alpha2, __pyx_v_threshold);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_176setParamsEW(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_version, __pyx_v_rtol_0, __pyx_v_rtol_max, __pyx_v_gamma, __pyx_v_alpha, __pyx_v_alpha2, __pyx_v_threshold);
- /* "PETSc/SNES.pyx":587
- * return <bint> flag
+ /* "PETSc/SNES.pyx":613
+ * return toBool(flag)
*
* def setParamsEW(self, version=None, # <<<<<<<<<<<<<<
* rtol_0=None, rtol_max=None,
@@ -169403,7 +179434,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_version, PyObject *__pyx_v_rtol_0, PyObject *__pyx_v_rtol_max, PyObject *__pyx_v_gamma, PyObject *__pyx_v_alpha, PyObject *__pyx_v_alpha2, PyObject *__pyx_v_threshold) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_176setParamsEW(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_version, PyObject *__pyx_v_rtol_0, PyObject *__pyx_v_rtol_max, PyObject *__pyx_v_gamma, PyObject *__pyx_v_alpha, PyObject *__pyx_v_alpha2, PyObject *__pyx_v_threshold) {
PetscInt __pyx_v_cversion;
PetscReal __pyx_v_crtol_0;
PetscReal __pyx_v_crtol_max;
@@ -169420,7 +179451,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
int __pyx_t_5;
__Pyx_RefNannySetupContext("setParamsEW", 0);
- /* "PETSc/SNES.pyx":591
+ /* "PETSc/SNES.pyx":617
* gamma=None, alpha=None, alpha2=None,
* threshold=None):
* cdef PetscInt cversion = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -169429,7 +179460,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
__pyx_v_cversion = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":592
+ /* "PETSc/SNES.pyx":618
* threshold=None):
* cdef PetscInt cversion = PETSC_DEFAULT
* cdef PetscReal crtol_0 = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -169438,7 +179469,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
__pyx_v_crtol_0 = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":593
+ /* "PETSc/SNES.pyx":619
* cdef PetscInt cversion = PETSC_DEFAULT
* cdef PetscReal crtol_0 = PETSC_DEFAULT
* cdef PetscReal crtol_max = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -169447,7 +179478,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
__pyx_v_crtol_max = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":594
+ /* "PETSc/SNES.pyx":620
* cdef PetscReal crtol_0 = PETSC_DEFAULT
* cdef PetscReal crtol_max = PETSC_DEFAULT
* cdef PetscReal cgamma = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -169456,7 +179487,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
__pyx_v_cgamma = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":595
+ /* "PETSc/SNES.pyx":621
* cdef PetscReal crtol_max = PETSC_DEFAULT
* cdef PetscReal cgamma = PETSC_DEFAULT
* cdef PetscReal calpha = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -169465,7 +179496,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
__pyx_v_calpha = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":596
+ /* "PETSc/SNES.pyx":622
* cdef PetscReal cgamma = PETSC_DEFAULT
* cdef PetscReal calpha = PETSC_DEFAULT
* cdef PetscReal calpha2 = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -169474,7 +179505,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
__pyx_v_calpha2 = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":597
+ /* "PETSc/SNES.pyx":623
* cdef PetscReal calpha = PETSC_DEFAULT
* cdef PetscReal calpha2 = PETSC_DEFAULT
* cdef PetscReal cthreshold = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -169483,7 +179514,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
__pyx_v_cthreshold = PETSC_DEFAULT;
- /* "PETSc/SNES.pyx":598
+ /* "PETSc/SNES.pyx":624
* cdef PetscReal calpha2 = PETSC_DEFAULT
* cdef PetscReal cthreshold = PETSC_DEFAULT
* if version is not None: cversion = asInt(version) # <<<<<<<<<<<<<<
@@ -169493,11 +179524,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
__pyx_t_1 = (__pyx_v_version != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_version); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(36, 598, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_version); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 624, __pyx_L1_error)
__pyx_v_cversion = __pyx_t_3;
}
- /* "PETSc/SNES.pyx":599
+ /* "PETSc/SNES.pyx":625
* cdef PetscReal cthreshold = PETSC_DEFAULT
* if version is not None: cversion = asInt(version)
* if rtol_0 is not None: crtol_0 = asReal(rtol_0) # <<<<<<<<<<<<<<
@@ -169507,11 +179538,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
__pyx_t_2 = (__pyx_v_rtol_0 != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol_0); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 599, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol_0); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 625, __pyx_L1_error)
__pyx_v_crtol_0 = __pyx_t_4;
}
- /* "PETSc/SNES.pyx":600
+ /* "PETSc/SNES.pyx":626
* if version is not None: cversion = asInt(version)
* if rtol_0 is not None: crtol_0 = asReal(rtol_0)
* if rtol_max is not None: crtol_max = asReal(rtol_max) # <<<<<<<<<<<<<<
@@ -169521,11 +179552,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
__pyx_t_1 = (__pyx_v_rtol_max != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol_max); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 600, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol_max); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 626, __pyx_L1_error)
__pyx_v_crtol_max = __pyx_t_4;
}
- /* "PETSc/SNES.pyx":601
+ /* "PETSc/SNES.pyx":627
* if rtol_0 is not None: crtol_0 = asReal(rtol_0)
* if rtol_max is not None: crtol_max = asReal(rtol_max)
* if gamma is not None: cgamma = asReal(gamma) # <<<<<<<<<<<<<<
@@ -169535,11 +179566,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
__pyx_t_2 = (__pyx_v_gamma != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gamma); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 601, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gamma); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 627, __pyx_L1_error)
__pyx_v_cgamma = __pyx_t_4;
}
- /* "PETSc/SNES.pyx":602
+ /* "PETSc/SNES.pyx":628
* if rtol_max is not None: crtol_max = asReal(rtol_max)
* if gamma is not None: cgamma = asReal(gamma)
* if alpha is not None: calpha = asReal(alpha) # <<<<<<<<<<<<<<
@@ -169549,11 +179580,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
__pyx_t_1 = (__pyx_v_alpha != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 602, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 628, __pyx_L1_error)
__pyx_v_calpha = __pyx_t_4;
}
- /* "PETSc/SNES.pyx":603
+ /* "PETSc/SNES.pyx":629
* if gamma is not None: cgamma = asReal(gamma)
* if alpha is not None: calpha = asReal(alpha)
* if alpha2 is not None: calpha2 = asReal(alpha2) # <<<<<<<<<<<<<<
@@ -169563,11 +179594,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
__pyx_t_2 = (__pyx_v_alpha2 != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha2); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 603, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha2); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 629, __pyx_L1_error)
__pyx_v_calpha2 = __pyx_t_4;
}
- /* "PETSc/SNES.pyx":604
+ /* "PETSc/SNES.pyx":630
* if alpha is not None: calpha = asReal(alpha)
* if alpha2 is not None: calpha2 = asReal(alpha2)
* if threshold is not None: cthreshold = asReal(threshold) # <<<<<<<<<<<<<<
@@ -169577,21 +179608,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
__pyx_t_1 = (__pyx_v_threshold != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_threshold); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(36, 604, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_threshold); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(36, 630, __pyx_L1_error)
__pyx_v_cthreshold = __pyx_t_4;
}
- /* "PETSc/SNES.pyx":605
+ /* "PETSc/SNES.pyx":631
* if alpha2 is not None: calpha2 = asReal(alpha2)
* if threshold is not None: cthreshold = asReal(threshold)
* CHKERR( SNESKSPSetParametersEW( # <<<<<<<<<<<<<<
* self.snes, cversion, crtol_0, crtol_max,
* cgamma, calpha, calpha2, cthreshold) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPSetParametersEW(__pyx_v_self->snes, __pyx_v_cversion, __pyx_v_crtol_0, __pyx_v_crtol_max, __pyx_v_cgamma, __pyx_v_calpha, __pyx_v_calpha2, __pyx_v_cthreshold)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(36, 605, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPSetParametersEW(__pyx_v_self->snes, __pyx_v_cversion, __pyx_v_crtol_0, __pyx_v_crtol_max, __pyx_v_cgamma, __pyx_v_calpha, __pyx_v_calpha2, __pyx_v_cthreshold)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(36, 631, __pyx_L1_error)
- /* "PETSc/SNES.pyx":587
- * return <bint> flag
+ /* "PETSc/SNES.pyx":613
+ * return toBool(flag)
*
* def setParamsEW(self, version=None, # <<<<<<<<<<<<<<
* rtol_0=None, rtol_max=None,
@@ -169610,7 +179641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
return __pyx_r;
}
-/* "PETSc/SNES.pyx":609
+/* "PETSc/SNES.pyx":635
* cgamma, calpha, calpha2, cthreshold) )
*
* def getParamsEW(self): # <<<<<<<<<<<<<<
@@ -169619,23 +179650,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_166setParamsEW(struct PyPetscSN
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_169getParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_168getParamsEW[] = "SNES.getParamsEW(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_169getParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179getParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_178getParamsEW[] = "SNES.getParamsEW(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179getParamsEW(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getParamsEW (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getParamsEW", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getParamsEW", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_178getParamsEW(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_178getParamsEW(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_version;
PetscReal __pyx_v_rtol_0;
PetscReal __pyx_v_rtol_max;
@@ -169650,7 +179681,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getParamsEW", 0);
- /* "PETSc/SNES.pyx":610
+ /* "PETSc/SNES.pyx":636
*
* def getParamsEW(self):
* cdef PetscInt version=0 # <<<<<<<<<<<<<<
@@ -169659,7 +179690,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
*/
__pyx_v_version = 0;
- /* "PETSc/SNES.pyx":611
+ /* "PETSc/SNES.pyx":637
* def getParamsEW(self):
* cdef PetscInt version=0
* cdef PetscReal rtol_0=0, rtol_max=0 # <<<<<<<<<<<<<<
@@ -169669,7 +179700,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
__pyx_v_rtol_0 = 0.0;
__pyx_v_rtol_max = 0.0;
- /* "PETSc/SNES.pyx":612
+ /* "PETSc/SNES.pyx":638
* cdef PetscInt version=0
* cdef PetscReal rtol_0=0, rtol_max=0
* cdef PetscReal gamma=0, alpha=0, alpha2=0 # <<<<<<<<<<<<<<
@@ -169680,7 +179711,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
__pyx_v_alpha = 0.0;
__pyx_v_alpha2 = 0.0;
- /* "PETSc/SNES.pyx":613
+ /* "PETSc/SNES.pyx":639
* cdef PetscReal rtol_0=0, rtol_max=0
* cdef PetscReal gamma=0, alpha=0, alpha2=0
* cdef PetscReal threshold=0 # <<<<<<<<<<<<<<
@@ -169689,16 +179720,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
*/
__pyx_v_threshold = 0.0;
- /* "PETSc/SNES.pyx":614
+ /* "PETSc/SNES.pyx":640
* cdef PetscReal gamma=0, alpha=0, alpha2=0
* cdef PetscReal threshold=0
* CHKERR( SNESKSPGetParametersEW( # <<<<<<<<<<<<<<
* self.snes, &version, &rtol_0, &rtol_max,
* &gamma, &alpha, &alpha2, &threshold) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPGetParametersEW(__pyx_v_self->snes, (&__pyx_v_version), (&__pyx_v_rtol_0), (&__pyx_v_rtol_max), (&__pyx_v_gamma), (&__pyx_v_alpha), (&__pyx_v_alpha2), (&__pyx_v_threshold))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 614, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESKSPGetParametersEW(__pyx_v_self->snes, (&__pyx_v_version), (&__pyx_v_rtol_0), (&__pyx_v_rtol_max), (&__pyx_v_gamma), (&__pyx_v_alpha), (&__pyx_v_alpha2), (&__pyx_v_threshold))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 640, __pyx_L1_error)
- /* "PETSc/SNES.pyx":617
+ /* "PETSc/SNES.pyx":643
* self.snes, &version, &rtol_0, &rtol_max,
* &gamma, &alpha, &alpha2, &threshold) )
* return {'version' : toInt(version), # <<<<<<<<<<<<<<
@@ -169706,89 +179737,89 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
* 'rtol_max' : toReal(rtol_max),
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 617, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_version); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 617, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_version); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_version, __pyx_t_3) < 0) __PYX_ERR(36, 617, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_version, __pyx_t_3) < 0) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":618
+ /* "PETSc/SNES.pyx":644
* &gamma, &alpha, &alpha2, &threshold) )
* return {'version' : toInt(version),
* 'rtol_0' : toReal(rtol_0), # <<<<<<<<<<<<<<
* 'rtol_max' : toReal(rtol_max),
* 'gamma' : toReal(gamma),
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rtol_0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 618, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rtol_0); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 644, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol_0, __pyx_t_3) < 0) __PYX_ERR(36, 617, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol_0, __pyx_t_3) < 0) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":619
+ /* "PETSc/SNES.pyx":645
* return {'version' : toInt(version),
* 'rtol_0' : toReal(rtol_0),
* 'rtol_max' : toReal(rtol_max), # <<<<<<<<<<<<<<
* 'gamma' : toReal(gamma),
* 'alpha' : toReal(alpha),
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rtol_max); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 619, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rtol_max); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 645, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol_max, __pyx_t_3) < 0) __PYX_ERR(36, 617, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol_max, __pyx_t_3) < 0) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":620
+ /* "PETSc/SNES.pyx":646
* 'rtol_0' : toReal(rtol_0),
* 'rtol_max' : toReal(rtol_max),
* 'gamma' : toReal(gamma), # <<<<<<<<<<<<<<
* 'alpha' : toReal(alpha),
* 'alpha2' : toReal(alpha2),
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_gamma); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 620, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_gamma); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 646, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_gamma, __pyx_t_3) < 0) __PYX_ERR(36, 617, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_gamma, __pyx_t_3) < 0) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":621
+ /* "PETSc/SNES.pyx":647
* 'rtol_max' : toReal(rtol_max),
* 'gamma' : toReal(gamma),
* 'alpha' : toReal(alpha), # <<<<<<<<<<<<<<
* 'alpha2' : toReal(alpha2),
* 'threshold' : toReal(threshold),}
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_alpha); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 621, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_alpha); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 647, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_alpha, __pyx_t_3) < 0) __PYX_ERR(36, 617, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_alpha, __pyx_t_3) < 0) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":622
+ /* "PETSc/SNES.pyx":648
* 'gamma' : toReal(gamma),
* 'alpha' : toReal(alpha),
* 'alpha2' : toReal(alpha2), # <<<<<<<<<<<<<<
* 'threshold' : toReal(threshold),}
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_alpha2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 622, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_alpha2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 648, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_alpha2, __pyx_t_3) < 0) __PYX_ERR(36, 617, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_alpha2, __pyx_t_3) < 0) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":623
+ /* "PETSc/SNES.pyx":649
* 'alpha' : toReal(alpha),
* 'alpha2' : toReal(alpha2),
* 'threshold' : toReal(threshold),} # <<<<<<<<<<<<<<
*
* # --- matrix free / finite diferences ---
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_threshold); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 623, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_threshold); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 649, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_threshold, __pyx_t_3) < 0) __PYX_ERR(36, 617, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_threshold, __pyx_t_3) < 0) __PYX_ERR(36, 643, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":609
+ /* "PETSc/SNES.pyx":635
* cgamma, calpha, calpha2, cthreshold) )
*
* def getParamsEW(self): # <<<<<<<<<<<<<<
@@ -169808,7 +179839,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
return __pyx_r;
}
-/* "PETSc/SNES.pyx":627
+/* "PETSc/SNES.pyx":653
* # --- matrix free / finite diferences ---
*
* def setUseMF(self, flag=True): # <<<<<<<<<<<<<<
@@ -169817,9 +179848,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_168getParamsEW(struct PyPetscSN
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_171setUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_170setUseMF[] = "SNES.setUseMF(self, flag=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_171setUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_181setUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_180setUseMF[] = "SNES.setUseMF(self, flag=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_181setUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_flag = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -169833,6 +179864,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_171setUseMF(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -169845,11 +179877,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_171setUseMF(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseMF") < 0)) __PYX_ERR(36, 627, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseMF") < 0)) __PYX_ERR(36, 653, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -169858,20 +179891,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_171setUseMF(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setUseMF", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 627, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setUseMF", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 653, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setUseMF", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_170setUseMF(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_flag);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_180setUseMF(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_flag);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_170setUseMF(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180setUseMF(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag) {
PetscBool __pyx_v_bval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -169879,26 +179912,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_170setUseMF(struct PyPetscSNESO
int __pyx_t_2;
__Pyx_RefNannySetupContext("setUseMF", 0);
- /* "PETSc/SNES.pyx":628
+ /* "PETSc/SNES.pyx":654
*
* def setUseMF(self, flag=True):
* cdef PetscBool bval = flag # <<<<<<<<<<<<<<
* CHKERR( SNESSetUseMFFD(self.snes, bval) )
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 628, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 654, __pyx_L1_error)
__pyx_v_bval = __pyx_t_1;
- /* "PETSc/SNES.pyx":629
+ /* "PETSc/SNES.pyx":655
* def setUseMF(self, flag=True):
* cdef PetscBool bval = flag
* CHKERR( SNESSetUseMFFD(self.snes, bval) ) # <<<<<<<<<<<<<<
*
* def getUseMF(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUseMFFD(__pyx_v_self->snes, __pyx_v_bval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 629, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUseMFFD(__pyx_v_self->snes, __pyx_v_bval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 655, __pyx_L1_error)
- /* "PETSc/SNES.pyx":627
+ /* "PETSc/SNES.pyx":653
* # --- matrix free / finite diferences ---
*
* def setUseMF(self, flag=True): # <<<<<<<<<<<<<<
@@ -169918,77 +179951,77 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_170setUseMF(struct PyPetscSNESO
return __pyx_r;
}
-/* "PETSc/SNES.pyx":631
+/* "PETSc/SNES.pyx":657
* CHKERR( SNESSetUseMFFD(self.snes, bval) )
*
* def getUseMF(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseMFFD(self.snes, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseMFFD(self.snes, &flag) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_173getUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_172getUseMF[] = "SNES.getUseMF(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_173getUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183getUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_182getUseMF[] = "SNES.getUseMF(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183getUseMF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getUseMF (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getUseMF", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getUseMF", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_172getUseMF(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_182getUseMF(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_172getUseMF(struct PyPetscSNESObject *__pyx_v_self) {
- PetscBool __pyx_v_bval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182getUseMF(struct PyPetscSNESObject *__pyx_v_self) {
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getUseMF", 0);
- /* "PETSc/SNES.pyx":632
+ /* "PETSc/SNES.pyx":658
*
* def getUseMF(self):
- * cdef PetscBool bval = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( SNESGetUseMFFD(self.snes, &bval) )
- * return <bint> bval
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( SNESGetUseMFFD(self.snes, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_bval = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/SNES.pyx":633
+ /* "PETSc/SNES.pyx":659
* def getUseMF(self):
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseMFFD(self.snes, &bval) ) # <<<<<<<<<<<<<<
- * return <bint> bval
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseMFFD(self.snes, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetUseMFFD(__pyx_v_self->snes, (&__pyx_v_bval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 633, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetUseMFFD(__pyx_v_self->snes, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 659, __pyx_L1_error)
- /* "PETSc/SNES.pyx":634
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseMFFD(self.snes, &bval) )
- * return <bint> bval # <<<<<<<<<<<<<<
+ /* "PETSc/SNES.pyx":660
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseMFFD(self.snes, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setUseFD(self, flag=True):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_bval); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 634, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 660, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":631
+ /* "PETSc/SNES.pyx":657
* CHKERR( SNESSetUseMFFD(self.snes, bval) )
*
* def getUseMF(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseMFFD(self.snes, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseMFFD(self.snes, &flag) )
*/
/* function exit code */
@@ -170002,8 +180035,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_172getUseMF(struct PyPetscSNESO
return __pyx_r;
}
-/* "PETSc/SNES.pyx":636
- * return <bint> bval
+/* "PETSc/SNES.pyx":662
+ * return toBool(flag)
*
* def setUseFD(self, flag=True): # <<<<<<<<<<<<<<
* cdef PetscBool bval = flag
@@ -170011,9 +180044,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_172getUseMF(struct PyPetscSNESO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_175setUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_174setUseFD[] = "SNES.setUseFD(self, flag=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_175setUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_185setUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_184setUseFD[] = "SNES.setUseFD(self, flag=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_185setUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_flag = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -170027,6 +180060,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_175setUseFD(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170039,11 +180073,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_175setUseFD(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseFD") < 0)) __PYX_ERR(36, 636, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setUseFD") < 0)) __PYX_ERR(36, 662, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170052,20 +180087,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_175setUseFD(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setUseFD", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 636, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setUseFD", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 662, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setUseFD", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_174setUseFD(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_flag);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_184setUseFD(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_flag);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_174setUseFD(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_184setUseFD(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_flag) {
PetscBool __pyx_v_bval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -170073,27 +180108,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_174setUseFD(struct PyPetscSNESO
int __pyx_t_2;
__Pyx_RefNannySetupContext("setUseFD", 0);
- /* "PETSc/SNES.pyx":637
+ /* "PETSc/SNES.pyx":663
*
* def setUseFD(self, flag=True):
* cdef PetscBool bval = flag # <<<<<<<<<<<<<<
* CHKERR( SNESSetUseFDColoring(self.snes, bval) )
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 637, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 663, __pyx_L1_error)
__pyx_v_bval = __pyx_t_1;
- /* "PETSc/SNES.pyx":638
+ /* "PETSc/SNES.pyx":664
* def setUseFD(self, flag=True):
* cdef PetscBool bval = flag
* CHKERR( SNESSetUseFDColoring(self.snes, bval) ) # <<<<<<<<<<<<<<
*
* def getUseFD(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUseFDColoring(__pyx_v_self->snes, __pyx_v_bval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 638, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetUseFDColoring(__pyx_v_self->snes, __pyx_v_bval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 664, __pyx_L1_error)
- /* "PETSc/SNES.pyx":636
- * return <bint> bval
+ /* "PETSc/SNES.pyx":662
+ * return toBool(flag)
*
* def setUseFD(self, flag=True): # <<<<<<<<<<<<<<
* cdef PetscBool bval = flag
@@ -170112,77 +180147,77 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_174setUseFD(struct PyPetscSNESO
return __pyx_r;
}
-/* "PETSc/SNES.pyx":640
+/* "PETSc/SNES.pyx":666
* CHKERR( SNESSetUseFDColoring(self.snes, bval) )
*
* def getUseFD(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseFDColoring(self.snes, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseFDColoring(self.snes, &flag) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_177getUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_176getUseFD[] = "SNES.getUseFD(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_177getUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_187getUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_186getUseFD[] = "SNES.getUseFD(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_187getUseFD(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getUseFD (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getUseFD", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getUseFD", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_176getUseFD(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_186getUseFD(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_176getUseFD(struct PyPetscSNESObject *__pyx_v_self) {
- PetscBool __pyx_v_bval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getUseFD(struct PyPetscSNESObject *__pyx_v_self) {
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getUseFD", 0);
- /* "PETSc/SNES.pyx":641
+ /* "PETSc/SNES.pyx":667
*
* def getUseFD(self):
- * cdef PetscBool bval = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( SNESGetUseFDColoring(self.snes, &bval) )
- * return <bint> bval
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( SNESGetUseFDColoring(self.snes, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_bval = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/SNES.pyx":642
+ /* "PETSc/SNES.pyx":668
* def getUseFD(self):
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseFDColoring(self.snes, &bval) ) # <<<<<<<<<<<<<<
- * return <bint> bval
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseFDColoring(self.snes, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetUseFDColoring(__pyx_v_self->snes, (&__pyx_v_bval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 642, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESGetUseFDColoring(__pyx_v_self->snes, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 668, __pyx_L1_error)
- /* "PETSc/SNES.pyx":643
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseFDColoring(self.snes, &bval) )
- * return <bint> bval # <<<<<<<<<<<<<<
+ /* "PETSc/SNES.pyx":669
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseFDColoring(self.snes, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* # --- VI ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_bval); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 643, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":640
+ /* "PETSc/SNES.pyx":666
* CHKERR( SNESSetUseFDColoring(self.snes, bval) )
*
* def getUseFD(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( SNESGetUseFDColoring(self.snes, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( SNESGetUseFDColoring(self.snes, &flag) )
*/
/* function exit code */
@@ -170196,18 +180231,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_176getUseFD(struct PyPetscSNESO
return __pyx_r;
}
-/* "PETSc/SNES.pyx":647
+/* "PETSc/SNES.pyx":673
* # --- VI ---
*
- * def setVariableBounds(self, Vec xl not None, Vec xu not None): # <<<<<<<<<<<<<<
+ * def setVariableBounds(self, Vec xl, Vec xu): # <<<<<<<<<<<<<<
* CHKERR( SNESVISetVariableBounds(self.snes, xl.vec, xu.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179setVariableBounds(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_178setVariableBounds[] = "SNES.setVariableBounds(self, Vec xl, Vec xu)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179setVariableBounds(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_189setVariableBounds(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_188setVariableBounds[] = "SNES.setVariableBounds(self, Vec xl, Vec xu)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_189setVariableBounds(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_xl = 0;
struct PyPetscVecObject *__pyx_v_xu = 0;
PyObject *__pyx_r = 0;
@@ -170221,7 +180256,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179setVariableBounds(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170230,14 +180267,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179setVariableBounds(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xl)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xu)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setVariableBounds", 1, 2, 2, 1); __PYX_ERR(36, 647, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setVariableBounds", 1, 2, 2, 1); __PYX_ERR(36, 673, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setVariableBounds") < 0)) __PYX_ERR(36, 647, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setVariableBounds") < 0)) __PYX_ERR(36, 673, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -170250,15 +180288,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179setVariableBounds(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setVariableBounds", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 647, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setVariableBounds", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 673, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setVariableBounds", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xl", 0))) __PYX_ERR(36, 647, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xu), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xu", 0))) __PYX_ERR(36, 647, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_178setVariableBounds(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_xl, __pyx_v_xu);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xl", 0))) __PYX_ERR(36, 673, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xu), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xu", 0))) __PYX_ERR(36, 673, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_188setVariableBounds(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_xl, __pyx_v_xu);
/* function exit code */
goto __pyx_L0;
@@ -170269,25 +180307,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_179setVariableBounds(PyObject *
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_178setVariableBounds(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_xl, struct PyPetscVecObject *__pyx_v_xu) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setVariableBounds(struct PyPetscSNESObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_xl, struct PyPetscVecObject *__pyx_v_xu) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setVariableBounds", 0);
- /* "PETSc/SNES.pyx":648
+ /* "PETSc/SNES.pyx":674
*
- * def setVariableBounds(self, Vec xl not None, Vec xu not None):
+ * def setVariableBounds(self, Vec xl, Vec xu):
* CHKERR( SNESVISetVariableBounds(self.snes, xl.vec, xu.vec) ) # <<<<<<<<<<<<<<
*
* def getVIInactiveSet(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESVISetVariableBounds(__pyx_v_self->snes, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 648, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESVISetVariableBounds(__pyx_v_self->snes, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 674, __pyx_L1_error)
- /* "PETSc/SNES.pyx":647
+ /* "PETSc/SNES.pyx":673
* # --- VI ---
*
- * def setVariableBounds(self, Vec xl not None, Vec xu not None): # <<<<<<<<<<<<<<
+ * def setVariableBounds(self, Vec xl, Vec xu): # <<<<<<<<<<<<<<
* CHKERR( SNESVISetVariableBounds(self.snes, xl.vec, xu.vec) )
*
*/
@@ -170304,7 +180342,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_178setVariableBounds(struct PyP
return __pyx_r;
}
-/* "PETSc/SNES.pyx":650
+/* "PETSc/SNES.pyx":676
* CHKERR( SNESVISetVariableBounds(self.snes, xl.vec, xu.vec) )
*
* def getVIInactiveSet(self): # <<<<<<<<<<<<<<
@@ -170313,23 +180351,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_178setVariableBounds(struct PyP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_181getVIInactiveSet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_180getVIInactiveSet[] = "SNES.getVIInactiveSet(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_181getVIInactiveSet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_191getVIInactiveSet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_190getVIInactiveSet[] = "SNES.getVIInactiveSet(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_191getVIInactiveSet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getVIInactiveSet (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getVIInactiveSet", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getVIInactiveSet", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_190getVIInactiveSet(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getVIInactiveSet(struct PyPetscSNESObject *__pyx_v_self) {
struct PyPetscISObject *__pyx_v_inact = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -170337,28 +180375,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("getVIInactiveSet", 0);
- /* "PETSc/SNES.pyx":651
+ /* "PETSc/SNES.pyx":677
*
* def getVIInactiveSet(self):
* cdef IS inact = IS() # <<<<<<<<<<<<<<
* CHKERR( SNESVIGetInactiveSet(self.snes, &inact.iset) )
* PetscINCREF(inact.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 651, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 677, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_inact = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":652
+ /* "PETSc/SNES.pyx":678
* def getVIInactiveSet(self):
* cdef IS inact = IS()
* CHKERR( SNESVIGetInactiveSet(self.snes, &inact.iset) ) # <<<<<<<<<<<<<<
* PetscINCREF(inact.obj)
* return inact
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESVIGetInactiveSet(__pyx_v_self->snes, (&__pyx_v_inact->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 652, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESVIGetInactiveSet(__pyx_v_self->snes, (&__pyx_v_inact->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 678, __pyx_L1_error)
- /* "PETSc/SNES.pyx":653
+ /* "PETSc/SNES.pyx":679
* cdef IS inact = IS()
* CHKERR( SNESVIGetInactiveSet(self.snes, &inact.iset) )
* PetscINCREF(inact.obj) # <<<<<<<<<<<<<<
@@ -170367,7 +180405,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(struct PyPe
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_inact->__pyx_base.obj);
- /* "PETSc/SNES.pyx":654
+ /* "PETSc/SNES.pyx":680
* CHKERR( SNESVIGetInactiveSet(self.snes, &inact.iset) )
* PetscINCREF(inact.obj)
* return inact # <<<<<<<<<<<<<<
@@ -170379,7 +180417,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(struct PyPe
__pyx_r = ((PyObject *)__pyx_v_inact);
goto __pyx_L0;
- /* "PETSc/SNES.pyx":650
+ /* "PETSc/SNES.pyx":676
* CHKERR( SNESVISetVariableBounds(self.snes, xl.vec, xu.vec) )
*
* def getVIInactiveSet(self): # <<<<<<<<<<<<<<
@@ -170399,7 +180437,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(struct PyPe
return __pyx_r;
}
-/* "PETSc/SNES.pyx":658
+/* "PETSc/SNES.pyx":684
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -170408,9 +180446,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_180getVIInactiveSet(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_182createPython[] = "SNES.createPython(self, context=None, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_193createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_192createPython[] = "SNES.createPython(self, context=None, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_193createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_context = 0;
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
@@ -170426,7 +180464,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183createPython(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170437,6 +180477,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183createPython(PyObject *__pyx
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_context);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -170444,12 +180485,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183createPython(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(36, 658, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(36, 684, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170459,20 +180502,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_183createPython(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 658, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 684, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.createPython", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_context, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_192createPython(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_context, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_192createPython(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
SNES __pyx_v_newsnes;
PyObject *__pyx_r = NULL;
@@ -170481,17 +180524,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscS
int __pyx_t_2;
__Pyx_RefNannySetupContext("createPython", 0);
- /* "PETSc/SNES.pyx":659
+ /* "PETSc/SNES.pyx":685
*
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscSNES newsnes = NULL
* CHKERR( SNESCreate(ccomm, &newsnes) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 659, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(36, 685, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/SNES.pyx":660
+ /* "PETSc/SNES.pyx":686
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscSNES newsnes = NULL # <<<<<<<<<<<<<<
@@ -170500,16 +180543,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscS
*/
__pyx_v_newsnes = NULL;
- /* "PETSc/SNES.pyx":661
+ /* "PETSc/SNES.pyx":687
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscSNES newsnes = NULL
* CHKERR( SNESCreate(ccomm, &newsnes) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.snes = newsnes
* CHKERR( SNESSetType(self.snes, SNESPYTHON) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCreate(__pyx_v_ccomm, (&__pyx_v_newsnes))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 661, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCreate(__pyx_v_ccomm, (&__pyx_v_newsnes))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 687, __pyx_L1_error)
- /* "PETSc/SNES.pyx":662
+ /* "PETSc/SNES.pyx":688
* cdef PetscSNES newsnes = NULL
* CHKERR( SNESCreate(ccomm, &newsnes) )
* PetscCLEAR(self.obj); self.snes = newsnes # <<<<<<<<<<<<<<
@@ -170519,25 +180562,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscS
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->snes = __pyx_v_newsnes;
- /* "PETSc/SNES.pyx":663
+ /* "PETSc/SNES.pyx":689
* CHKERR( SNESCreate(ccomm, &newsnes) )
* PetscCLEAR(self.obj); self.snes = newsnes
* CHKERR( SNESSetType(self.snes, SNESPYTHON) ) # <<<<<<<<<<<<<<
* CHKERR( SNESPythonSetContext(self.snes, <void*>context) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetType(__pyx_v_self->snes, SNESPYTHON)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 663, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESSetType(__pyx_v_self->snes, SNESPYTHON)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 689, __pyx_L1_error)
- /* "PETSc/SNES.pyx":664
+ /* "PETSc/SNES.pyx":690
* PetscCLEAR(self.obj); self.snes = newsnes
* CHKERR( SNESSetType(self.snes, SNESPYTHON) )
* CHKERR( SNESPythonSetContext(self.snes, <void*>context) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonSetContext(__pyx_v_self->snes, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 664, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonSetContext(__pyx_v_self->snes, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 690, __pyx_L1_error)
- /* "PETSc/SNES.pyx":665
+ /* "PETSc/SNES.pyx":691
* CHKERR( SNESSetType(self.snes, SNESPYTHON) )
* CHKERR( SNESPythonSetContext(self.snes, <void*>context) )
* return self # <<<<<<<<<<<<<<
@@ -170549,7 +180592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscS
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/SNES.pyx":658
+ /* "PETSc/SNES.pyx":684
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -170567,7 +180610,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":667
+/* "PETSc/SNES.pyx":693
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -170576,9 +180619,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_182createPython(struct PyPetscS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_185setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_184setPythonContext[] = "SNES.setPythonContext(self, context)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_185setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_195setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_194setPythonContext[] = "SNES.setPythonContext(self, context)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_195setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_context = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -170591,6 +180634,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_185setPythonContext(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170601,7 +180645,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_185setPythonContext(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(36, 667, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(36, 693, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -170612,35 +180656,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_185setPythonContext(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 667, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 693, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setPythonContext", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_184setPythonContext(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_context);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_194setPythonContext(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_context);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_184setPythonContext(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_194setPythonContext(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_context) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPythonContext", 0);
- /* "PETSc/SNES.pyx":668
+ /* "PETSc/SNES.pyx":694
*
* def setPythonContext(self, context):
* CHKERR( SNESPythonSetContext(self.snes, <void*>context) ) # <<<<<<<<<<<<<<
*
* def getPythonContext(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonSetContext(__pyx_v_self->snes, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 668, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonSetContext(__pyx_v_self->snes, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 694, __pyx_L1_error)
- /* "PETSc/SNES.pyx":667
+ /* "PETSc/SNES.pyx":693
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -170660,7 +180704,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_184setPythonContext(struct PyPe
return __pyx_r;
}
-/* "PETSc/SNES.pyx":670
+/* "PETSc/SNES.pyx":696
* CHKERR( SNESPythonSetContext(self.snes, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -170669,23 +180713,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_184setPythonContext(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_187getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_186getPythonContext[] = "SNES.getPythonContext(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_187getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_197getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_196getPythonContext[] = "SNES.getPythonContext(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_197getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getPythonContext (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getPythonContext", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPythonContext", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_196getPythonContext(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_196getPythonContext(struct PyPetscSNESObject *__pyx_v_self) {
void *__pyx_v_context;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -170693,7 +180737,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("getPythonContext", 0);
- /* "PETSc/SNES.pyx":671
+ /* "PETSc/SNES.pyx":697
*
* def getPythonContext(self):
* cdef void *context = NULL # <<<<<<<<<<<<<<
@@ -170702,16 +180746,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPe
*/
__pyx_v_context = NULL;
- /* "PETSc/SNES.pyx":672
+ /* "PETSc/SNES.pyx":698
* def getPythonContext(self):
* cdef void *context = NULL
* CHKERR( SNESPythonGetContext(self.snes, &context) ) # <<<<<<<<<<<<<<
* if context == NULL: return None
* else: return <object> context
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonGetContext(__pyx_v_self->snes, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 672, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonGetContext(__pyx_v_self->snes, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 698, __pyx_L1_error)
- /* "PETSc/SNES.pyx":673
+ /* "PETSc/SNES.pyx":699
* cdef void *context = NULL
* CHKERR( SNESPythonGetContext(self.snes, &context) )
* if context == NULL: return None # <<<<<<<<<<<<<<
@@ -170726,7 +180770,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPe
goto __pyx_L0;
}
- /* "PETSc/SNES.pyx":674
+ /* "PETSc/SNES.pyx":700
* CHKERR( SNESPythonGetContext(self.snes, &context) )
* if context == NULL: return None
* else: return <object> context # <<<<<<<<<<<<<<
@@ -170740,7 +180784,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPe
goto __pyx_L0;
}
- /* "PETSc/SNES.pyx":670
+ /* "PETSc/SNES.pyx":696
* CHKERR( SNESPythonSetContext(self.snes, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -170758,7 +180802,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPe
return __pyx_r;
}
-/* "PETSc/SNES.pyx":676
+/* "PETSc/SNES.pyx":702
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -170767,9 +180811,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_186getPythonContext(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_189setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_188setPythonType[] = "SNES.setPythonType(self, py_type)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_189setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_199setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_198setPythonType[] = "SNES.setPythonType(self, py_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_199setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_py_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -170782,6 +180826,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_189setPythonType(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170792,7 +180837,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_189setPythonType(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(36, 676, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(36, 702, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -170803,20 +180848,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_189setPythonType(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 676, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 702, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.setPythonType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_188setPythonType(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_py_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_198setPythonType(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_py_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setPythonType(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_py_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_198setPythonType(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_py_type) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -170825,7 +180870,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setPythonType(struct PyPetsc
__Pyx_RefNannySetupContext("setPythonType", 0);
__Pyx_INCREF(__pyx_v_py_type);
- /* "PETSc/SNES.pyx":677
+ /* "PETSc/SNES.pyx":703
*
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -170834,28 +180879,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setPythonType(struct PyPetsc
*/
__pyx_v_cval = NULL;
- /* "PETSc/SNES.pyx":678
+ /* "PETSc/SNES.pyx":704
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( SNESPythonSetType(self.snes, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 678, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 704, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_py_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":679
+ /* "PETSc/SNES.pyx":705
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval)
* CHKERR( SNESPythonSetType(self.snes, cval) ) # <<<<<<<<<<<<<<
*
* # --- Composite ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonSetType(__pyx_v_self->snes, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(36, 679, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESPythonSetType(__pyx_v_self->snes, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(36, 705, __pyx_L1_error)
- /* "PETSc/SNES.pyx":676
+ /* "PETSc/SNES.pyx":702
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -170877,7 +180922,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setPythonType(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/SNES.pyx":683
+/* "PETSc/SNES.pyx":709
* # --- Composite ---
*
* def getCompositeSNES(self, n): # <<<<<<<<<<<<<<
@@ -170886,9 +180931,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_188setPythonType(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_191getCompositeSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_190getCompositeSNES[] = "SNES.getCompositeSNES(self, n)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_191getCompositeSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_201getCompositeSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_200getCompositeSNES[] = "SNES.getCompositeSNES(self, n)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_201getCompositeSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_n = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -170901,6 +180946,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_191getCompositeSNES(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -170911,7 +180957,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_191getCompositeSNES(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getCompositeSNES") < 0)) __PYX_ERR(36, 683, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getCompositeSNES") < 0)) __PYX_ERR(36, 709, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -170922,20 +180968,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_191getCompositeSNES(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getCompositeSNES", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 683, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getCompositeSNES", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 709, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.SNES.getCompositeSNES", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_n);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_200getCompositeSNES(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_n);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_n) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_200getCompositeSNES(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_n) {
PetscInt __pyx_v_cn;
struct PyPetscSNESObject *__pyx_v_snes = 0;
PyObject *__pyx_r = NULL;
@@ -170945,38 +180991,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(struct PyPe
int __pyx_t_3;
__Pyx_RefNannySetupContext("getCompositeSNES", 0);
- /* "PETSc/SNES.pyx":685
+ /* "PETSc/SNES.pyx":711
* def getCompositeSNES(self, n):
* cdef PetscInt cn
* cdef SNES snes = SNES() # <<<<<<<<<<<<<<
* cn = asInt(n)
* CHKERR( SNESCompositeGetSNES(self.snes, cn, &snes.snes) )
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 685, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 711, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_snes = ((struct PyPetscSNESObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":686
+ /* "PETSc/SNES.pyx":712
* cdef PetscInt cn
* cdef SNES snes = SNES()
* cn = asInt(n) # <<<<<<<<<<<<<<
* CHKERR( SNESCompositeGetSNES(self.snes, cn, &snes.snes) )
* PetscINCREF(snes.obj)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(36, 686, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 712, __pyx_L1_error)
__pyx_v_cn = __pyx_t_2;
- /* "PETSc/SNES.pyx":687
+ /* "PETSc/SNES.pyx":713
* cdef SNES snes = SNES()
* cn = asInt(n)
* CHKERR( SNESCompositeGetSNES(self.snes, cn, &snes.snes) ) # <<<<<<<<<<<<<<
* PetscINCREF(snes.obj)
* return snes
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCompositeGetSNES(__pyx_v_self->snes, __pyx_v_cn, (&__pyx_v_snes->snes))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(36, 687, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCompositeGetSNES(__pyx_v_self->snes, __pyx_v_cn, (&__pyx_v_snes->snes))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 713, __pyx_L1_error)
- /* "PETSc/SNES.pyx":688
+ /* "PETSc/SNES.pyx":714
* cn = asInt(n)
* CHKERR( SNESCompositeGetSNES(self.snes, cn, &snes.snes) )
* PetscINCREF(snes.obj) # <<<<<<<<<<<<<<
@@ -170985,7 +181031,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(struct PyPe
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_snes->__pyx_base.obj);
- /* "PETSc/SNES.pyx":689
+ /* "PETSc/SNES.pyx":715
* CHKERR( SNESCompositeGetSNES(self.snes, cn, &snes.snes) )
* PetscINCREF(snes.obj)
* return snes # <<<<<<<<<<<<<<
@@ -170997,7 +181043,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(struct PyPe
__pyx_r = ((PyObject *)__pyx_v_snes);
goto __pyx_L0;
- /* "PETSc/SNES.pyx":683
+ /* "PETSc/SNES.pyx":709
* # --- Composite ---
*
* def getCompositeSNES(self, n): # <<<<<<<<<<<<<<
@@ -171017,7 +181063,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(struct PyPe
return __pyx_r;
}
-/* "PETSc/SNES.pyx":691
+/* "PETSc/SNES.pyx":717
* return snes
*
* def getCompositeNumber(self): # <<<<<<<<<<<<<<
@@ -171026,23 +181072,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_190getCompositeSNES(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_193getCompositeNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_4SNES_192getCompositeNumber[] = "SNES.getCompositeNumber(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_193getCompositeNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_203getCompositeNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_202getCompositeNumber[] = "SNES.getCompositeNumber(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_203getCompositeNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getCompositeNumber (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getCompositeNumber", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCompositeNumber", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_192getCompositeNumber(((struct PyPetscSNESObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_202getCompositeNumber(((struct PyPetscSNESObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_192getCompositeNumber(struct PyPetscSNESObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_202getCompositeNumber(struct PyPetscSNESObject *__pyx_v_self) {
PetscInt __pyx_v_cn;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -171050,7 +181096,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_192getCompositeNumber(struct Py
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getCompositeNumber", 0);
- /* "PETSc/SNES.pyx":692
+ /* "PETSc/SNES.pyx":718
*
* def getCompositeNumber(self):
* cdef PetscInt cn = 0 # <<<<<<<<<<<<<<
@@ -171059,30 +181105,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_192getCompositeNumber(struct Py
*/
__pyx_v_cn = 0;
- /* "PETSc/SNES.pyx":693
+ /* "PETSc/SNES.pyx":719
* def getCompositeNumber(self):
* cdef PetscInt cn = 0
* CHKERR( SNESCompositeGetNumber(self.snes, &cn) ) # <<<<<<<<<<<<<<
* return toInt(cn)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCompositeGetNumber(__pyx_v_self->snes, (&__pyx_v_cn))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(36, 693, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESCompositeGetNumber(__pyx_v_self->snes, (&__pyx_v_cn))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 719, __pyx_L1_error)
- /* "PETSc/SNES.pyx":694
+ /* "PETSc/SNES.pyx":720
* cdef PetscInt cn = 0
* CHKERR( SNESCompositeGetNumber(self.snes, &cn) )
* return toInt(cn) # <<<<<<<<<<<<<<
*
- * # --- application context ---
+ * # --- NASM ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_cn); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 694, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_cn); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 720, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":691
+ /* "PETSc/SNES.pyx":717
* return snes
*
* def getCompositeNumber(self): # <<<<<<<<<<<<<<
@@ -171101,7 +181147,232 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_192getCompositeNumber(struct Py
return __pyx_r;
}
-/* "PETSc/SNES.pyx":699
+/* "PETSc/SNES.pyx":724
+ * # --- NASM ---
+ *
+ * def getNASMSNES(self, n): # <<<<<<<<<<<<<<
+ * cdef PetscInt cn = asInt(n)
+ * cdef SNES snes = SNES()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_205getNASMSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_204getNASMSNES[] = "SNES.getNASMSNES(self, n)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_205getNASMSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_n = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getNASMSNES (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_n,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_n)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getNASMSNES") < 0)) __PYX_ERR(36, 724, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_n = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("getNASMSNES", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(36, 724, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.getNASMSNES", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_204getNASMSNES(((struct PyPetscSNESObject *)__pyx_v_self), __pyx_v_n);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_204getNASMSNES(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_n) {
+ PetscInt __pyx_v_cn;
+ struct PyPetscSNESObject *__pyx_v_snes = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ int __pyx_t_3;
+ __Pyx_RefNannySetupContext("getNASMSNES", 0);
+
+ /* "PETSc/SNES.pyx":725
+ *
+ * def getNASMSNES(self, n):
+ * cdef PetscInt cn = asInt(n) # <<<<<<<<<<<<<<
+ * cdef SNES snes = SNES()
+ * CHKERR( SNESNASMGetSNES(self.snes, cn, &snes.snes) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(36, 725, __pyx_L1_error)
+ __pyx_v_cn = __pyx_t_1;
+
+ /* "PETSc/SNES.pyx":726
+ * def getNASMSNES(self, n):
+ * cdef PetscInt cn = asInt(n)
+ * cdef SNES snes = SNES() # <<<<<<<<<<<<<<
+ * CHKERR( SNESNASMGetSNES(self.snes, cn, &snes.snes) )
+ * PetscINCREF(snes.obj)
+ */
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 726, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_v_snes = ((struct PyPetscSNESObject *)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/SNES.pyx":727
+ * cdef PetscInt cn = asInt(n)
+ * cdef SNES snes = SNES()
+ * CHKERR( SNESNASMGetSNES(self.snes, cn, &snes.snes) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(snes.obj)
+ * return snes
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESNASMGetSNES(__pyx_v_self->snes, __pyx_v_cn, (&__pyx_v_snes->snes))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(36, 727, __pyx_L1_error)
+
+ /* "PETSc/SNES.pyx":728
+ * cdef SNES snes = SNES()
+ * CHKERR( SNESNASMGetSNES(self.snes, cn, &snes.snes) )
+ * PetscINCREF(snes.obj) # <<<<<<<<<<<<<<
+ * return snes
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_snes->__pyx_base.obj);
+
+ /* "PETSc/SNES.pyx":729
+ * CHKERR( SNESNASMGetSNES(self.snes, cn, &snes.snes) )
+ * PetscINCREF(snes.obj)
+ * return snes # <<<<<<<<<<<<<<
+ *
+ * def getNASMNumber(self):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_snes));
+ __pyx_r = ((PyObject *)__pyx_v_snes);
+ goto __pyx_L0;
+
+ /* "PETSc/SNES.pyx":724
+ * # --- NASM ---
+ *
+ * def getNASMSNES(self, n): # <<<<<<<<<<<<<<
+ * cdef PetscInt cn = asInt(n)
+ * cdef SNES snes = SNES()
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.getNASMSNES", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_snes);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":731
+ * return snes
+ *
+ * def getNASMNumber(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt cn = 0
+ * CHKERR( SNESNASMGetNumber(self.snes, &cn) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_207getNASMNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_4SNES_206getNASMNumber[] = "SNES.getNASMNumber(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_207getNASMNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getNASMNumber (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getNASMNumber", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getNASMNumber", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_206getNASMNumber(((struct PyPetscSNESObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_206getNASMNumber(struct PyPetscSNESObject *__pyx_v_self) {
+ PetscInt __pyx_v_cn;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getNASMNumber", 0);
+
+ /* "PETSc/SNES.pyx":732
+ *
+ * def getNASMNumber(self):
+ * cdef PetscInt cn = 0 # <<<<<<<<<<<<<<
+ * CHKERR( SNESNASMGetNumber(self.snes, &cn) )
+ * return toInt(cn)
+ */
+ __pyx_v_cn = 0;
+
+ /* "PETSc/SNES.pyx":733
+ * def getNASMNumber(self):
+ * cdef PetscInt cn = 0
+ * CHKERR( SNESNASMGetNumber(self.snes, &cn) ) # <<<<<<<<<<<<<<
+ * return toInt(cn)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(SNESNASMGetNumber(__pyx_v_self->snes, (&__pyx_v_cn))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(36, 733, __pyx_L1_error)
+
+ /* "PETSc/SNES.pyx":734
+ * cdef PetscInt cn = 0
+ * CHKERR( SNESNASMGetNumber(self.snes, &cn) )
+ * return toInt(cn) # <<<<<<<<<<<<<<
+ *
+ * # --- application context ---
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_cn); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 734, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/SNES.pyx":731
+ * return snes
+ *
+ * def getNASMNumber(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt cn = 0
+ * CHKERR( SNESNASMGetNumber(self.snes, &cn) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.getNASMNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":739
*
* property appctx:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171130,7 +181401,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6appctx___get__(struct PyPetscS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":700
+ /* "PETSc/SNES.pyx":740
* property appctx:
* def __get__(self):
* return self.getAppCtx() # <<<<<<<<<<<<<<
@@ -171138,10 +181409,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6appctx___get__(struct PyPetscS
* self.setAppCtx(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 700, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 740, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171151,10 +181422,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6appctx___get__(struct PyPetscS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 700, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 740, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 700, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 740, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -171162,7 +181433,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6appctx___get__(struct PyPetscS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":699
+ /* "PETSc/SNES.pyx":739
*
* property appctx:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171183,7 +181454,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6appctx___get__(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":701
+/* "PETSc/SNES.pyx":741
* def __get__(self):
* return self.getAppCtx()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -171213,17 +181484,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6appctx_2__set__(struct PyPetscSNESOb
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":702
+ /* "PETSc/SNES.pyx":742
* return self.getAppCtx()
* def __set__(self, value):
* self.setAppCtx(value) # <<<<<<<<<<<<<<
*
* # --- discretization space ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 702, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 742, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171233,23 +181504,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6appctx_2__set__(struct PyPetscSNESOb
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 702, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 742, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 702, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 702, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 742, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 742, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 742, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 742, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":701
+ /* "PETSc/SNES.pyx":741
* def __get__(self):
* return self.getAppCtx()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -171272,7 +181561,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6appctx_2__set__(struct PyPetscSNESOb
return __pyx_r;
}
-/* "PETSc/SNES.pyx":707
+/* "PETSc/SNES.pyx":747
*
* property dm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171301,7 +181590,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_2dm___get__(struct PyPetscSNESO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":708
+ /* "PETSc/SNES.pyx":748
* property dm:
* def __get__(self):
* return self.getDM() # <<<<<<<<<<<<<<
@@ -171309,10 +181598,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_2dm___get__(struct PyPetscSNESO
* self.setDM(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 708, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 748, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171322,10 +181611,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_2dm___get__(struct PyPetscSNESO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 708, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 748, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 708, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 748, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -171333,7 +181622,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_2dm___get__(struct PyPetscSNESO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":707
+ /* "PETSc/SNES.pyx":747
*
* property dm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171354,7 +181643,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_2dm___get__(struct PyPetscSNESO
return __pyx_r;
}
-/* "PETSc/SNES.pyx":709
+/* "PETSc/SNES.pyx":749
* def __get__(self):
* return self.getDM()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -171384,17 +181673,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_2dm_2__set__(struct PyPetscSNESObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":710
+ /* "PETSc/SNES.pyx":750
* return self.getDM()
* def __set__(self, value):
* self.setDM(value) # <<<<<<<<<<<<<<
*
* # --- nonlinear preconditioner ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 710, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171404,23 +181693,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_2dm_2__set__(struct PyPetscSNESObject
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 710, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 710, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 710, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 750, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 750, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 750, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 750, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":709
+ /* "PETSc/SNES.pyx":749
* def __get__(self):
* return self.getDM()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -171443,7 +181750,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_2dm_2__set__(struct PyPetscSNESObject
return __pyx_r;
}
-/* "PETSc/SNES.pyx":715
+/* "PETSc/SNES.pyx":755
*
* property npc:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171472,7 +181779,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3npc___get__(struct PyPetscSNES
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":716
+ /* "PETSc/SNES.pyx":756
* property npc:
* def __get__(self):
* return self.getNPC() # <<<<<<<<<<<<<<
@@ -171480,10 +181787,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3npc___get__(struct PyPetscSNES
* self.setNPC(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getNPC); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 716, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getNPC); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 756, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171493,10 +181800,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3npc___get__(struct PyPetscSNES
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 716, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 756, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 716, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 756, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -171504,7 +181811,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3npc___get__(struct PyPetscSNES
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":715
+ /* "PETSc/SNES.pyx":755
*
* property npc:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171525,7 +181832,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3npc___get__(struct PyPetscSNES
return __pyx_r;
}
-/* "PETSc/SNES.pyx":717
+/* "PETSc/SNES.pyx":757
* def __get__(self):
* return self.getNPC()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -171555,17 +181862,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3npc_2__set__(struct PyPetscSNESObjec
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":718
+ /* "PETSc/SNES.pyx":758
* return self.getNPC()
* def __set__(self, value):
* self.setNPC(value) # <<<<<<<<<<<<<<
*
* # --- vectors ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setNPC); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 718, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setNPC); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 758, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171575,23 +181882,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3npc_2__set__(struct PyPetscSNESObjec
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 718, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 758, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 718, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 718, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":717
+ /* "PETSc/SNES.pyx":757
* def __get__(self):
* return self.getNPC()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -171614,7 +181939,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3npc_2__set__(struct PyPetscSNESObjec
return __pyx_r;
}
-/* "PETSc/SNES.pyx":723
+/* "PETSc/SNES.pyx":763
*
* property vec_sol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171643,7 +181968,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_sol___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":724
+ /* "PETSc/SNES.pyx":764
* property vec_sol:
* def __get__(self):
* return self.getSolution() # <<<<<<<<<<<<<<
@@ -171651,10 +181976,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_sol___get__(struct PyPetsc
* property vec_upd:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 724, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 764, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171664,10 +181989,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_sol___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 724, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 764, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 724, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 764, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -171675,7 +182000,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_sol___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":723
+ /* "PETSc/SNES.pyx":763
*
* property vec_sol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171696,7 +182021,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_sol___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/SNES.pyx":727
+/* "PETSc/SNES.pyx":767
*
* property vec_upd:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171725,7 +182050,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_upd___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":728
+ /* "PETSc/SNES.pyx":768
* property vec_upd:
* def __get__(self):
* return self.getSolutionUpdate() # <<<<<<<<<<<<<<
@@ -171733,10 +182058,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_upd___get__(struct PyPetsc
* property vec_rhs:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolutionUpdate); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 728, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolutionUpdate); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 768, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171746,10 +182071,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_upd___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 728, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 768, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 728, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 768, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -171757,7 +182082,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_upd___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":727
+ /* "PETSc/SNES.pyx":767
*
* property vec_upd:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171778,7 +182103,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_upd___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/SNES.pyx":731
+/* "PETSc/SNES.pyx":771
*
* property vec_rhs:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171807,7 +182132,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_rhs___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":732
+ /* "PETSc/SNES.pyx":772
* property vec_rhs:
* def __get__(self):
* return self.getRhs() # <<<<<<<<<<<<<<
@@ -171815,10 +182140,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_rhs___get__(struct PyPetsc
* # --- linear solver ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRhs); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 732, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRhs); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 772, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171828,10 +182153,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_rhs___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 732, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 772, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 732, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 772, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -171839,7 +182164,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_rhs___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":731
+ /* "PETSc/SNES.pyx":771
*
* property vec_rhs:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171860,7 +182185,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7vec_rhs___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/SNES.pyx":737
+/* "PETSc/SNES.pyx":777
*
* property ksp:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171889,7 +182214,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3ksp___get__(struct PyPetscSNES
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":738
+ /* "PETSc/SNES.pyx":778
* property ksp:
* def __get__(self):
* return self.getKSP() # <<<<<<<<<<<<<<
@@ -171897,10 +182222,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3ksp___get__(struct PyPetscSNES
* self.setKSP(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getKSP); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 738, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getKSP); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 778, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171910,10 +182235,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3ksp___get__(struct PyPetscSNES
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 738, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 778, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 738, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 778, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -171921,7 +182246,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3ksp___get__(struct PyPetscSNES
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":737
+ /* "PETSc/SNES.pyx":777
*
* property ksp:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -171942,7 +182267,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3ksp___get__(struct PyPetscSNES
return __pyx_r;
}
-/* "PETSc/SNES.pyx":739
+/* "PETSc/SNES.pyx":779
* def __get__(self):
* return self.getKSP()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -171972,17 +182297,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3ksp_2__set__(struct PyPetscSNESObjec
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":740
+ /* "PETSc/SNES.pyx":780
* return self.getKSP()
* def __set__(self, value):
* self.setKSP(value) # <<<<<<<<<<<<<<
*
* property use_ew:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setKSP); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 740, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setKSP); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 780, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -171992,23 +182317,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3ksp_2__set__(struct PyPetscSNESObjec
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 740, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 780, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 740, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 740, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 780, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 780, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 780, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 780, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":739
+ /* "PETSc/SNES.pyx":779
* def __get__(self):
* return self.getKSP()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172031,7 +182374,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3ksp_2__set__(struct PyPetscSNESObjec
return __pyx_r;
}
-/* "PETSc/SNES.pyx":743
+/* "PETSc/SNES.pyx":783
*
* property use_ew:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172060,7 +182403,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew___get__(struct PyPetscS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":744
+ /* "PETSc/SNES.pyx":784
* property use_ew:
* def __get__(self):
* return self.getUseEW() # <<<<<<<<<<<<<<
@@ -172068,10 +182411,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew___get__(struct PyPetscS
* self.setUseEW(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getUseEW); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 744, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getUseEW); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 784, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172081,10 +182424,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew___get__(struct PyPetscS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 744, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 784, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 744, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 784, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -172092,7 +182435,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew___get__(struct PyPetscS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":743
+ /* "PETSc/SNES.pyx":783
*
* property use_ew:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172113,7 +182456,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew___get__(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":745
+/* "PETSc/SNES.pyx":785
* def __get__(self):
* return self.getUseEW()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172143,17 +182486,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew_2__set__(struct PyPetscSNESOb
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":746
+ /* "PETSc/SNES.pyx":786
* return self.getUseEW()
* def __set__(self, value):
* self.setUseEW(value) # <<<<<<<<<<<<<<
*
* # --- tolerances ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setUseEW); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 746, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setUseEW); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 786, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172163,23 +182506,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew_2__set__(struct PyPetscSNESOb
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 746, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 786, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 746, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 746, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 786, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 786, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 786, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 786, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":745
+ /* "PETSc/SNES.pyx":785
* def __get__(self):
* return self.getUseEW()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172202,7 +182563,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_ew_2__set__(struct PyPetscSNESOb
return __pyx_r;
}
-/* "PETSc/SNES.pyx":751
+/* "PETSc/SNES.pyx":791
*
* property rtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172231,7 +182592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4rtol___get__(struct PyPetscSNE
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":752
+ /* "PETSc/SNES.pyx":792
* property rtol:
* def __get__(self):
* return self.getTolerances()[0] # <<<<<<<<<<<<<<
@@ -172239,10 +182600,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4rtol___get__(struct PyPetscSNE
* self.setTolerances(rtol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 752, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 792, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172252,21 +182613,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4rtol___get__(struct PyPetscSNE
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 752, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 792, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 752, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 792, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 752, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 792, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":751
+ /* "PETSc/SNES.pyx":791
*
* property rtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172287,7 +182648,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4rtol___get__(struct PyPetscSNE
return __pyx_r;
}
-/* "PETSc/SNES.pyx":753
+/* "PETSc/SNES.pyx":793
* def __get__(self):
* return self.getTolerances()[0]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172316,25 +182677,25 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_4rtol_2__set__(struct PyPetscSNESObje
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":754
+ /* "PETSc/SNES.pyx":794
* return self.getTolerances()[0]
* def __set__(self, value):
* self.setTolerances(rtol=value) # <<<<<<<<<<<<<<
*
* property atol:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 754, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 794, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 754, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 794, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol, __pyx_v_value) < 0) __PYX_ERR(36, 754, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 754, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol, __pyx_v_value) < 0) __PYX_ERR(36, 794, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 794, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":753
+ /* "PETSc/SNES.pyx":793
* def __get__(self):
* return self.getTolerances()[0]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172356,7 +182717,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_4rtol_2__set__(struct PyPetscSNESObje
return __pyx_r;
}
-/* "PETSc/SNES.pyx":757
+/* "PETSc/SNES.pyx":797
*
* property atol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172385,7 +182746,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4atol___get__(struct PyPetscSNE
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":758
+ /* "PETSc/SNES.pyx":798
* property atol:
* def __get__(self):
* return self.getTolerances()[1] # <<<<<<<<<<<<<<
@@ -172393,10 +182754,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4atol___get__(struct PyPetscSNE
* self.setTolerances(atol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 798, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172406,21 +182767,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4atol___get__(struct PyPetscSNE
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 798, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 798, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 758, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 798, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":757
+ /* "PETSc/SNES.pyx":797
*
* property atol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172441,7 +182802,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4atol___get__(struct PyPetscSNE
return __pyx_r;
}
-/* "PETSc/SNES.pyx":759
+/* "PETSc/SNES.pyx":799
* def __get__(self):
* return self.getTolerances()[1]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172470,25 +182831,25 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_4atol_2__set__(struct PyPetscSNESObje
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":760
+ /* "PETSc/SNES.pyx":800
* return self.getTolerances()[1]
* def __set__(self, value):
* self.setTolerances(atol=value) # <<<<<<<<<<<<<<
*
* property stol:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 760, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 760, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_atol, __pyx_v_value) < 0) __PYX_ERR(36, 760, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 760, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_atol, __pyx_v_value) < 0) __PYX_ERR(36, 800, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":759
+ /* "PETSc/SNES.pyx":799
* def __get__(self):
* return self.getTolerances()[1]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172510,7 +182871,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_4atol_2__set__(struct PyPetscSNESObje
return __pyx_r;
}
-/* "PETSc/SNES.pyx":763
+/* "PETSc/SNES.pyx":803
*
* property stol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172539,7 +182900,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4stol___get__(struct PyPetscSNE
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":764
+ /* "PETSc/SNES.pyx":804
* property stol:
* def __get__(self):
* return self.getTolerances()[2] # <<<<<<<<<<<<<<
@@ -172547,10 +182908,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4stol___get__(struct PyPetscSNE
* self.setTolerances(stol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 764, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 804, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172560,21 +182921,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4stol___get__(struct PyPetscSNE
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 764, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 804, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 764, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 804, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 764, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 804, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":763
+ /* "PETSc/SNES.pyx":803
*
* property stol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172595,7 +182956,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4stol___get__(struct PyPetscSNE
return __pyx_r;
}
-/* "PETSc/SNES.pyx":765
+/* "PETSc/SNES.pyx":805
* def __get__(self):
* return self.getTolerances()[2]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172624,25 +182985,25 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_4stol_2__set__(struct PyPetscSNESObje
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":766
+ /* "PETSc/SNES.pyx":806
* return self.getTolerances()[2]
* def __set__(self, value):
* self.setTolerances(stol=value) # <<<<<<<<<<<<<<
*
* property max_it:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 766, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 806, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 766, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 806, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_stol, __pyx_v_value) < 0) __PYX_ERR(36, 766, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 766, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_stol, __pyx_v_value) < 0) __PYX_ERR(36, 806, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 806, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":765
+ /* "PETSc/SNES.pyx":805
* def __get__(self):
* return self.getTolerances()[2]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172664,7 +183025,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_4stol_2__set__(struct PyPetscSNESObje
return __pyx_r;
}
-/* "PETSc/SNES.pyx":769
+/* "PETSc/SNES.pyx":809
*
* property max_it:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172693,7 +183054,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6max_it___get__(struct PyPetscS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":770
+ /* "PETSc/SNES.pyx":810
* property max_it:
* def __get__(self):
* return self.getTolerances()[3] # <<<<<<<<<<<<<<
@@ -172701,10 +183062,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6max_it___get__(struct PyPetscS
* self.setTolerances(max_it=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 770, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 810, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172714,21 +183075,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6max_it___get__(struct PyPetscS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 770, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 810, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 770, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 810, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 770, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 810, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":769
+ /* "PETSc/SNES.pyx":809
*
* property max_it:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172749,7 +183110,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6max_it___get__(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":771
+/* "PETSc/SNES.pyx":811
* def __get__(self):
* return self.getTolerances()[3]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172778,25 +183139,25 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6max_it_2__set__(struct PyPetscSNESOb
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":772
+ /* "PETSc/SNES.pyx":812
* return self.getTolerances()[3]
* def __set__(self, value):
* self.setTolerances(max_it=value) # <<<<<<<<<<<<<<
*
* # --- more tolerances ---
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 772, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 812, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 772, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 812, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_max_it, __pyx_v_value) < 0) __PYX_ERR(36, 772, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 772, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_max_it, __pyx_v_value) < 0) __PYX_ERR(36, 812, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(36, 812, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/SNES.pyx":771
+ /* "PETSc/SNES.pyx":811
* def __get__(self):
* return self.getTolerances()[3]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172818,7 +183179,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6max_it_2__set__(struct PyPetscSNESOb
return __pyx_r;
}
-/* "PETSc/SNES.pyx":777
+/* "PETSc/SNES.pyx":817
*
* property max_funcs:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172847,7 +183208,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs___get__(struct PyPet
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":778
+ /* "PETSc/SNES.pyx":818
* property max_funcs:
* def __get__(self):
* return self.getMaxFunctionEvaluations() # <<<<<<<<<<<<<<
@@ -172855,10 +183216,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs___get__(struct PyPet
* self.setMaxFunctionEvaluations(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getMaxFunctionEvaluations); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 778, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getMaxFunctionEvaluations); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 818, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172868,10 +183229,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs___get__(struct PyPet
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 778, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 818, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 778, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 818, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -172879,7 +183240,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs___get__(struct PyPet
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":777
+ /* "PETSc/SNES.pyx":817
*
* property max_funcs:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -172900,7 +183261,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs___get__(struct PyPet
return __pyx_r;
}
-/* "PETSc/SNES.pyx":779
+/* "PETSc/SNES.pyx":819
* def __get__(self):
* return self.getMaxFunctionEvaluations()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172930,17 +183291,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs_2__set__(struct PyPetscSNE
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":780
+ /* "PETSc/SNES.pyx":820
* return self.getMaxFunctionEvaluations()
* def __set__(self, value):
* self.setMaxFunctionEvaluations(value) # <<<<<<<<<<<<<<
*
* # --- iteration ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setMaxFunctionEvaluations); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 780, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setMaxFunctionEvaluations); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 820, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -172950,23 +183311,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs_2__set__(struct PyPetscSNE
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 780, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 820, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 780, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 780, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 820, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 820, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 820, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 820, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":779
+ /* "PETSc/SNES.pyx":819
* def __get__(self):
* return self.getMaxFunctionEvaluations()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -172989,7 +183368,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_9max_funcs_2__set__(struct PyPetscSNE
return __pyx_r;
}
-/* "PETSc/SNES.pyx":785
+/* "PETSc/SNES.pyx":825
*
* property its:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173018,7 +183397,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3its___get__(struct PyPetscSNES
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":786
+ /* "PETSc/SNES.pyx":826
* property its:
* def __get__(self):
* return self.getIterationNumber() # <<<<<<<<<<<<<<
@@ -173026,10 +183405,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3its___get__(struct PyPetscSNES
* self.setIterationNumber(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 786, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 826, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173039,10 +183418,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3its___get__(struct PyPetscSNES
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 786, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 826, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 786, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 826, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -173050,7 +183429,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3its___get__(struct PyPetscSNES
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":785
+ /* "PETSc/SNES.pyx":825
*
* property its:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173071,7 +183450,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_3its___get__(struct PyPetscSNES
return __pyx_r;
}
-/* "PETSc/SNES.pyx":787
+/* "PETSc/SNES.pyx":827
* def __get__(self):
* return self.getIterationNumber()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173101,17 +183480,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3its_2__set__(struct PyPetscSNESObjec
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":788
+ /* "PETSc/SNES.pyx":828
* return self.getIterationNumber()
* def __set__(self, value):
* self.setIterationNumber(value) # <<<<<<<<<<<<<<
*
- * property history:
+ * property norm:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 788, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 828, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173121,23 +183500,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3its_2__set__(struct PyPetscSNESObjec
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 788, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 828, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 788, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 788, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 828, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 828, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 828, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 828, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":787
+ /* "PETSc/SNES.pyx":827
* def __get__(self):
* return self.getIterationNumber()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173160,7 +183557,196 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_3its_2__set__(struct PyPetscSNESObjec
return __pyx_r;
}
-/* "PETSc/SNES.pyx":791
+/* "PETSc/SNES.pyx":831
+ *
+ * property norm:
+ * def __get__(self): # <<<<<<<<<<<<<<
+ * return self.getFunctionNorm()
+ * def __set__(self, value):
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_4norm_1__get__(PyObject *__pyx_v_self); /*proto*/
+static PyObject *__pyx_pw_8petsc4py_5PETSc_4SNES_4norm_1__get__(PyObject *__pyx_v_self) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("__get__ (wrapper)", 0);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_4norm___get__(((struct PyPetscSNESObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_4norm___get__(struct PyPetscSNESObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ PyObject *__pyx_t_2 = NULL;
+ PyObject *__pyx_t_3 = NULL;
+ __Pyx_RefNannySetupContext("__get__", 0);
+
+ /* "PETSc/SNES.pyx":832
+ * property norm:
+ * def __get__(self):
+ * return self.getFunctionNorm() # <<<<<<<<<<<<<<
+ * def __set__(self, value):
+ * self.setFunctionNorm(value)
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getFunctionNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 832, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = NULL;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
+ __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
+ if (likely(__pyx_t_3)) {
+ PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_3);
+ __Pyx_INCREF(function);
+ __Pyx_DECREF_SET(__pyx_t_2, function);
+ }
+ }
+ if (__pyx_t_3) {
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 832, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ } else {
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 832, __pyx_L1_error)
+ }
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/SNES.pyx":831
+ *
+ * property norm:
+ * def __get__(self): # <<<<<<<<<<<<<<
+ * return self.getFunctionNorm()
+ * def __set__(self, value):
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.norm.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":833
+ * def __get__(self):
+ * return self.getFunctionNorm()
+ * def __set__(self, value): # <<<<<<<<<<<<<<
+ * self.setFunctionNorm(value)
+ *
+ */
+
+/* Python wrapper */
+static int __pyx_pw_8petsc4py_5PETSc_4SNES_4norm_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
+static int __pyx_pw_8petsc4py_5PETSc_4SNES_4norm_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("__set__ (wrapper)", 0);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_4SNES_4norm_2__set__(((struct PyPetscSNESObject *)__pyx_v_self), ((PyObject *)__pyx_v_value));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static int __pyx_pf_8petsc4py_5PETSc_4SNES_4norm_2__set__(struct PyPetscSNESObject *__pyx_v_self, PyObject *__pyx_v_value) {
+ int __pyx_r;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ PyObject *__pyx_t_2 = NULL;
+ PyObject *__pyx_t_3 = NULL;
+ PyObject *__pyx_t_4 = NULL;
+ __Pyx_RefNannySetupContext("__set__", 0);
+
+ /* "PETSc/SNES.pyx":834
+ * return self.getFunctionNorm()
+ * def __set__(self, value):
+ * self.setFunctionNorm(value) # <<<<<<<<<<<<<<
+ *
+ * property history:
+ */
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setFunctionNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 834, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = NULL;
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
+ __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
+ if (likely(__pyx_t_3)) {
+ PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
+ __Pyx_INCREF(__pyx_t_3);
+ __Pyx_INCREF(function);
+ __Pyx_DECREF_SET(__pyx_t_2, function);
+ }
+ }
+ if (!__pyx_t_3) {
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 834, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ } else {
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 834, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 834, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 834, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 834, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
+ }
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+
+ /* "PETSc/SNES.pyx":833
+ * def __get__(self):
+ * return self.getFunctionNorm()
+ * def __set__(self, value): # <<<<<<<<<<<<<<
+ * self.setFunctionNorm(value)
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = 0;
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_AddTraceback("petsc4py.PETSc.SNES.norm.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = -1;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/SNES.pyx":837
*
* property history:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173189,7 +183775,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7history___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":792
+ /* "PETSc/SNES.pyx":838
* property history:
* def __get__(self):
* return self.getConvergenceHistory() # <<<<<<<<<<<<<<
@@ -173197,10 +183783,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7history___get__(struct PyPetsc
* # --- convergence ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergenceHistory); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 792, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergenceHistory); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 838, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173210,10 +183796,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7history___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 792, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 838, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 792, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 838, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -173221,7 +183807,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7history___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":791
+ /* "PETSc/SNES.pyx":837
*
* property history:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173242,7 +183828,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_7history___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/SNES.pyx":797
+/* "PETSc/SNES.pyx":843
*
* property reason:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173271,7 +183857,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6reason___get__(struct PyPetscS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":798
+ /* "PETSc/SNES.pyx":844
* property reason:
* def __get__(self):
* return self.getConvergedReason() # <<<<<<<<<<<<<<
@@ -173279,10 +183865,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6reason___get__(struct PyPetscS
* self.setConvergedReason(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 798, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 844, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173292,10 +183878,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6reason___get__(struct PyPetscS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 798, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 844, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 798, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 844, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -173303,7 +183889,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6reason___get__(struct PyPetscS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":797
+ /* "PETSc/SNES.pyx":843
*
* property reason:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173324,7 +183910,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6reason___get__(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":799
+/* "PETSc/SNES.pyx":845
* def __get__(self):
* return self.getConvergedReason()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173354,17 +183940,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6reason_2__set__(struct PyPetscSNESOb
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":800
+ /* "PETSc/SNES.pyx":846
* return self.getConvergedReason()
* def __set__(self, value):
* self.setConvergedReason(value) # <<<<<<<<<<<<<<
*
* property iterating:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 800, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 846, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173374,23 +183960,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6reason_2__set__(struct PyPetscSNESOb
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 800, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 846, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 800, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 800, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 846, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 846, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 846, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 846, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":799
+ /* "PETSc/SNES.pyx":845
* def __get__(self):
* return self.getConvergedReason()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173413,7 +184017,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6reason_2__set__(struct PyPetscSNESOb
return __pyx_r;
}
-/* "PETSc/SNES.pyx":803
+/* "PETSc/SNES.pyx":849
*
* property iterating:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173441,7 +184045,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9iterating___get__(struct PyPet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":804
+ /* "PETSc/SNES.pyx":850
* property iterating:
* def __get__(self):
* return self.reason == 0 # <<<<<<<<<<<<<<
@@ -173449,16 +184053,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9iterating___get__(struct PyPet
* property converged:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 804, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 850, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyInt_EqObjC(__pyx_t_1, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 804, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_EqObjC(__pyx_t_1, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 850, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":803
+ /* "PETSc/SNES.pyx":849
*
* property iterating:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173478,7 +184082,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9iterating___get__(struct PyPet
return __pyx_r;
}
-/* "PETSc/SNES.pyx":807
+/* "PETSc/SNES.pyx":853
*
* property converged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173506,7 +184110,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9converged___get__(struct PyPet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":808
+ /* "PETSc/SNES.pyx":854
* property converged:
* def __get__(self):
* return self.reason > 0 # <<<<<<<<<<<<<<
@@ -173514,15 +184118,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9converged___get__(struct PyPet
* property diverged:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 808, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 854, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 808, __pyx_L1_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 854, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":807
+ /* "PETSc/SNES.pyx":853
*
* property converged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173542,7 +184146,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_9converged___get__(struct PyPet
return __pyx_r;
}
-/* "PETSc/SNES.pyx":811
+/* "PETSc/SNES.pyx":857
*
* property diverged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173570,7 +184174,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_8diverged___get__(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":812
+ /* "PETSc/SNES.pyx":858
* property diverged:
* def __get__(self):
* return self.reason < 0 # <<<<<<<<<<<<<<
@@ -173578,15 +184182,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_8diverged___get__(struct PyPets
* # --- matrix free / finite diferences ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 812, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 858, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 812, __pyx_L1_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 858, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":811
+ /* "PETSc/SNES.pyx":857
*
* property diverged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173606,7 +184210,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_8diverged___get__(struct PyPets
return __pyx_r;
}
-/* "PETSc/SNES.pyx":817
+/* "PETSc/SNES.pyx":863
*
* property use_mf:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173635,7 +184239,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf___get__(struct PyPetscS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":818
+ /* "PETSc/SNES.pyx":864
* property use_mf:
* def __get__(self):
* return self.getUseMF() # <<<<<<<<<<<<<<
@@ -173643,10 +184247,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf___get__(struct PyPetscS
* self.setUseMF(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getUseMF); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 818, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getUseMF); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 864, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173656,10 +184260,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf___get__(struct PyPetscS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 818, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 864, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 818, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 864, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -173667,7 +184271,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf___get__(struct PyPetscS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":817
+ /* "PETSc/SNES.pyx":863
*
* property use_mf:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173688,7 +184292,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf___get__(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":819
+/* "PETSc/SNES.pyx":865
* def __get__(self):
* return self.getUseMF()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173718,17 +184322,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf_2__set__(struct PyPetscSNESOb
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":820
+ /* "PETSc/SNES.pyx":866
* return self.getUseMF()
* def __set__(self, value):
* self.setUseMF(value) # <<<<<<<<<<<<<<
*
* property use_fd:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setUseMF); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 820, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setUseMF); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173738,23 +184342,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf_2__set__(struct PyPetscSNESOb
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 820, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 820, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 820, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 866, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 866, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 866, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 866, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":819
+ /* "PETSc/SNES.pyx":865
* def __get__(self):
* return self.getUseMF()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173777,7 +184399,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_mf_2__set__(struct PyPetscSNESOb
return __pyx_r;
}
-/* "PETSc/SNES.pyx":823
+/* "PETSc/SNES.pyx":869
*
* property use_fd:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173806,7 +184428,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd___get__(struct PyPetscS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/SNES.pyx":824
+ /* "PETSc/SNES.pyx":870
* property use_fd:
* def __get__(self):
* return self.getUseFD() # <<<<<<<<<<<<<<
@@ -173814,10 +184436,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd___get__(struct PyPetscS
* self.setUseFD(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getUseFD); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 824, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getUseFD); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 870, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173827,10 +184449,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd___get__(struct PyPetscS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 824, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 870, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 824, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 870, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -173838,7 +184460,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd___get__(struct PyPetscS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/SNES.pyx":823
+ /* "PETSc/SNES.pyx":869
*
* property use_fd:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -173859,7 +184481,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd___get__(struct PyPetscS
return __pyx_r;
}
-/* "PETSc/SNES.pyx":825
+/* "PETSc/SNES.pyx":871
* def __get__(self):
* return self.getUseFD()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173889,17 +184511,17 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd_2__set__(struct PyPetscSNESOb
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/SNES.pyx":826
+ /* "PETSc/SNES.pyx":872
* return self.getUseFD()
* def __set__(self, value):
* self.setUseFD(value) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setUseFD); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 826, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setUseFD); if (unlikely(!__pyx_t_2)) __PYX_ERR(36, 872, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -173909,23 +184531,41 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd_2__set__(struct PyPetscSNESOb
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 826, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 872, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 826, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 826, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 872, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 872, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(36, 872, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(36, 872, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/SNES.pyx":825
+ /* "PETSc/SNES.pyx":871
* def __get__(self):
* return self.getUseFD()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -173948,7 +184588,7 @@ static int __pyx_pf_8petsc4py_5PETSc_4SNES_6use_fd_2__set__(struct PyPetscSNESOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":80
+/* "PETSc/TS.pyx":91
* # --- xxx ---
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -173977,7 +184617,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS___cinit__(struct PyPetscTSObject *__pyx
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("__cinit__", 0);
- /* "PETSc/TS.pyx":81
+ /* "PETSc/TS.pyx":92
*
* def __cinit__(self):
* self.obj = <PetscObject*> &self.ts # <<<<<<<<<<<<<<
@@ -173986,7 +184626,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS___cinit__(struct PyPetscTSObject *__pyx
*/
__pyx_v_self->__pyx_base.obj = ((PetscObject *)(&__pyx_v_self->ts));
- /* "PETSc/TS.pyx":82
+ /* "PETSc/TS.pyx":93
* def __cinit__(self):
* self.obj = <PetscObject*> &self.ts
* self.ts = NULL # <<<<<<<<<<<<<<
@@ -173995,7 +184635,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS___cinit__(struct PyPetscTSObject *__pyx
*/
__pyx_v_self->ts = NULL;
- /* "PETSc/TS.pyx":80
+ /* "PETSc/TS.pyx":91
* # --- xxx ---
*
* def __cinit__(self): # <<<<<<<<<<<<<<
@@ -174009,7 +184649,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS___cinit__(struct PyPetscTSObject *__pyx
return __pyx_r;
}
-/* "PETSc/TS.pyx":86
+/* "PETSc/TS.pyx":97
* # --- xxx ---
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -174034,6 +184674,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_3view(PyObject *__pyx_v_self, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174046,11 +184687,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_3view(PyObject *__pyx_v_self, PyO
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(37, 86, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "view") < 0)) __PYX_ERR(37, 97, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174059,13 +184701,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_3view(PyObject *__pyx_v_self, PyO
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 86, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("view", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 97, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.view", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(37, 86, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(37, 97, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_2view(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
@@ -174087,7 +184729,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2view(struct PyPetscTSObject *__p
int __pyx_t_4;
__Pyx_RefNannySetupContext("view", 0);
- /* "PETSc/TS.pyx":87
+ /* "PETSc/TS.pyx":98
*
* def view(self, Viewer viewer=None):
* cdef PetscViewer cviewer = NULL # <<<<<<<<<<<<<<
@@ -174096,7 +184738,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2view(struct PyPetscTSObject *__p
*/
__pyx_v_cviewer = NULL;
- /* "PETSc/TS.pyx":88
+ /* "PETSc/TS.pyx":99
* def view(self, Viewer viewer=None):
* cdef PetscViewer cviewer = NULL
* if viewer is not None: cviewer = viewer.vwr # <<<<<<<<<<<<<<
@@ -174110,16 +184752,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2view(struct PyPetscTSObject *__p
__pyx_v_cviewer = __pyx_t_3;
}
- /* "PETSc/TS.pyx":89
+ /* "PETSc/TS.pyx":100
* cdef PetscViewer cviewer = NULL
* if viewer is not None: cviewer = viewer.vwr
* CHKERR( TSView(self.ts, cviewer) ) # <<<<<<<<<<<<<<
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSView(__pyx_v_self->ts, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 89, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSView(__pyx_v_self->ts, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 100, __pyx_L1_error)
- /* "PETSc/TS.pyx":86
+ /* "PETSc/TS.pyx":97
* # --- xxx ---
*
* def view(self, Viewer viewer=None): # <<<<<<<<<<<<<<
@@ -174139,10 +184781,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2view(struct PyPetscTSObject *__p
return __pyx_r;
}
-/* "PETSc/TS.pyx":91
+/* "PETSc/TS.pyx":102
* CHKERR( TSView(self.ts, cviewer) )
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* CHKERR( TSLoad(self.ts, viewer.vwr) )
*
*/
@@ -174163,6 +184805,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_5load(PyObject *__pyx_v_self, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174173,7 +184816,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_5load(PyObject *__pyx_v_self, PyO
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "load") < 0)) __PYX_ERR(37, 91, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "load") < 0)) __PYX_ERR(37, 102, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -174184,13 +184827,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_5load(PyObject *__pyx_v_self, PyO
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("load", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 91, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("load", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 102, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.load", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 0, "viewer", 0))) __PYX_ERR(37, 91, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 0, "viewer", 0))) __PYX_ERR(37, 102, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_4load(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_viewer);
/* function exit code */
@@ -174208,19 +184851,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4load(struct PyPetscTSObject *__p
int __pyx_t_1;
__Pyx_RefNannySetupContext("load", 0);
- /* "PETSc/TS.pyx":92
+ /* "PETSc/TS.pyx":103
*
- * def load(self, Viewer viewer not None):
+ * def load(self, Viewer viewer):
* CHKERR( TSLoad(self.ts, viewer.vwr) ) # <<<<<<<<<<<<<<
*
* def destroy(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSLoad(__pyx_v_self->ts, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 92, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSLoad(__pyx_v_self->ts, __pyx_v_viewer->vwr)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 103, __pyx_L1_error)
- /* "PETSc/TS.pyx":91
+ /* "PETSc/TS.pyx":102
* CHKERR( TSView(self.ts, cviewer) )
*
- * def load(self, Viewer viewer not None): # <<<<<<<<<<<<<<
+ * def load(self, Viewer viewer): # <<<<<<<<<<<<<<
* CHKERR( TSLoad(self.ts, viewer.vwr) )
*
*/
@@ -174237,7 +184880,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4load(struct PyPetscTSObject *__p
return __pyx_r;
}
-/* "PETSc/TS.pyx":94
+/* "PETSc/TS.pyx":105
* CHKERR( TSLoad(self.ts, viewer.vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -174268,16 +184911,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6destroy(struct PyPetscTSObject *
int __pyx_t_1;
__Pyx_RefNannySetupContext("destroy", 0);
- /* "PETSc/TS.pyx":95
+ /* "PETSc/TS.pyx":106
*
* def destroy(self):
* CHKERR( TSDestroy(&self.ts) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSDestroy((&__pyx_v_self->ts))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 95, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSDestroy((&__pyx_v_self->ts))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 106, __pyx_L1_error)
- /* "PETSc/TS.pyx":96
+ /* "PETSc/TS.pyx":107
* def destroy(self):
* CHKERR( TSDestroy(&self.ts) )
* return self # <<<<<<<<<<<<<<
@@ -174289,7 +184932,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6destroy(struct PyPetscTSObject *
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/TS.pyx":94
+ /* "PETSc/TS.pyx":105
* CHKERR( TSLoad(self.ts, viewer.vwr) )
*
* def destroy(self): # <<<<<<<<<<<<<<
@@ -174307,7 +184950,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6destroy(struct PyPetscTSObject *
return __pyx_r;
}
-/* "PETSc/TS.pyx":98
+/* "PETSc/TS.pyx":109
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -174332,6 +184975,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_9create(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174344,11 +184988,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_9create(PyObject *__pyx_v_self, P
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(37, 98, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create") < 0)) __PYX_ERR(37, 109, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174357,7 +185002,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_9create(PyObject *__pyx_v_self, P
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 98, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("create", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 109, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.create", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -174379,17 +185024,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8create(struct PyPetscTSObject *_
int __pyx_t_2;
__Pyx_RefNannySetupContext("create", 0);
- /* "PETSc/TS.pyx":99
+ /* "PETSc/TS.pyx":110
*
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscTS newts = NULL
* CHKERR( TSCreate(ccomm, &newts) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 99, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 110, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/TS.pyx":100
+ /* "PETSc/TS.pyx":111
* def create(self, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscTS newts = NULL # <<<<<<<<<<<<<<
@@ -174398,16 +185043,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8create(struct PyPetscTSObject *_
*/
__pyx_v_newts = NULL;
- /* "PETSc/TS.pyx":101
+ /* "PETSc/TS.pyx":112
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscTS newts = NULL
* CHKERR( TSCreate(ccomm, &newts) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.ts = newts
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSCreate(__pyx_v_ccomm, (&__pyx_v_newts))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 101, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSCreate(__pyx_v_ccomm, (&__pyx_v_newts))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 112, __pyx_L1_error)
- /* "PETSc/TS.pyx":102
+ /* "PETSc/TS.pyx":113
* cdef PetscTS newts = NULL
* CHKERR( TSCreate(ccomm, &newts) )
* PetscCLEAR(self.obj); self.ts = newts # <<<<<<<<<<<<<<
@@ -174417,7 +185062,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8create(struct PyPetscTSObject *_
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->ts = __pyx_v_newts;
- /* "PETSc/TS.pyx":103
+ /* "PETSc/TS.pyx":114
* CHKERR( TSCreate(ccomm, &newts) )
* PetscCLEAR(self.obj); self.ts = newts
* return self # <<<<<<<<<<<<<<
@@ -174429,7 +185074,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8create(struct PyPetscTSObject *_
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/TS.pyx":98
+ /* "PETSc/TS.pyx":109
* return self
*
* def create(self, comm=None): # <<<<<<<<<<<<<<
@@ -174447,7 +185092,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8create(struct PyPetscTSObject *_
return __pyx_r;
}
-/* "PETSc/TS.pyx":105
+/* "PETSc/TS.pyx":116
* return self
*
* def clone(self): # <<<<<<<<<<<<<<
@@ -174480,28 +185125,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_10clone(struct PyPetscTSObject *_
int __pyx_t_2;
__Pyx_RefNannySetupContext("clone", 0);
- /* "PETSc/TS.pyx":106
+ /* "PETSc/TS.pyx":117
*
* def clone(self):
* cdef TS ts = TS() # <<<<<<<<<<<<<<
* CHKERR( TSClone(self.ts, &ts.ts) )
* return ts
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_TS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 106, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_TS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 117, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_ts = ((struct PyPetscTSObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":107
+ /* "PETSc/TS.pyx":118
* def clone(self):
* cdef TS ts = TS()
* CHKERR( TSClone(self.ts, &ts.ts) ) # <<<<<<<<<<<<<<
* return ts
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSClone(__pyx_v_self->ts, (&__pyx_v_ts->ts))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 107, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSClone(__pyx_v_self->ts, (&__pyx_v_ts->ts))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 118, __pyx_L1_error)
- /* "PETSc/TS.pyx":108
+ /* "PETSc/TS.pyx":119
* cdef TS ts = TS()
* CHKERR( TSClone(self.ts, &ts.ts) )
* return ts # <<<<<<<<<<<<<<
@@ -174513,7 +185158,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_10clone(struct PyPetscTSObject *_
__pyx_r = ((PyObject *)__pyx_v_ts);
goto __pyx_L0;
- /* "PETSc/TS.pyx":105
+ /* "PETSc/TS.pyx":116
* return self
*
* def clone(self): # <<<<<<<<<<<<<<
@@ -174533,7 +185178,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_10clone(struct PyPetscTSObject *_
return __pyx_r;
}
-/* "PETSc/TS.pyx":110
+/* "PETSc/TS.pyx":121
* return ts
*
* def setType(self, ts_type): # <<<<<<<<<<<<<<
@@ -174557,6 +185202,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_13setType(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174567,7 +185213,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_13setType(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(37, 110, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setType") < 0)) __PYX_ERR(37, 121, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -174578,7 +185224,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_13setType(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 110, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 121, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -174600,7 +185246,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12setType(struct PyPetscTSObject
__Pyx_RefNannySetupContext("setType", 0);
__Pyx_INCREF(__pyx_v_ts_type);
- /* "PETSc/TS.pyx":111
+ /* "PETSc/TS.pyx":122
*
* def setType(self, ts_type):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -174609,28 +185255,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12setType(struct PyPetscTSObject
*/
__pyx_v_cval = NULL;
- /* "PETSc/TS.pyx":112
+ /* "PETSc/TS.pyx":123
* def setType(self, ts_type):
* cdef const_char *cval = NULL
* ts_type = str2bytes(ts_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( TSSetType(self.ts, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ts_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 112, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ts_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 123, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_ts_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":113
+ /* "PETSc/TS.pyx":124
* cdef const_char *cval = NULL
* ts_type = str2bytes(ts_type, &cval)
* CHKERR( TSSetType(self.ts, cval) ) # <<<<<<<<<<<<<<
*
- * def getType(self):
+ * def setRKType(self, ts_type):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetType(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 113, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetType(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 124, __pyx_L1_error)
- /* "PETSc/TS.pyx":110
+ /* "PETSc/TS.pyx":121
* return ts
*
* def setType(self, ts_type): # <<<<<<<<<<<<<<
@@ -174652,32 +185298,152 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12setType(struct PyPetscTSObject
return __pyx_r;
}
-/* "PETSc/TS.pyx":115
+/* "PETSc/TS.pyx":126
+ * CHKERR( TSSetType(self.ts, cval) )
+ *
+ * def setRKType(self, ts_type): # <<<<<<<<<<<<<<
+ * cdef const_char *cval = NULL
+ * ts_type = str2bytes(ts_type, &cval)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_15setRKType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_14setRKType[] = "TS.setRKType(self, ts_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_15setRKType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_ts_type = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setRKType (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_ts_type,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ts_type)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRKType") < 0)) __PYX_ERR(37, 126, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_ts_type = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setRKType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 126, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setRKType", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_14setRKType(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_ts_type);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14setRKType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_ts_type) {
+ const char *__pyx_v_cval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setRKType", 0);
+ __Pyx_INCREF(__pyx_v_ts_type);
+
+ /* "PETSc/TS.pyx":127
+ *
+ * def setRKType(self, ts_type):
+ * cdef const_char *cval = NULL # <<<<<<<<<<<<<<
+ * ts_type = str2bytes(ts_type, &cval)
+ * CHKERR( TSRKSetType(self.ts, cval) )
+ */
+ __pyx_v_cval = NULL;
+
+ /* "PETSc/TS.pyx":128
+ * def setRKType(self, ts_type):
+ * cdef const_char *cval = NULL
+ * ts_type = str2bytes(ts_type, &cval) # <<<<<<<<<<<<<<
+ * CHKERR( TSRKSetType(self.ts, cval) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_ts_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 128, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_ts_type, __pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/TS.pyx":129
+ * cdef const_char *cval = NULL
+ * ts_type = str2bytes(ts_type, &cval)
+ * CHKERR( TSRKSetType(self.ts, cval) ) # <<<<<<<<<<<<<<
+ *
+ * def getType(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSRKSetType(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 129, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":126
* CHKERR( TSSetType(self.ts, cval) )
*
+ * def setRKType(self, ts_type): # <<<<<<<<<<<<<<
+ * cdef const_char *cval = NULL
+ * ts_type = str2bytes(ts_type, &cval)
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setRKType", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_ts_type);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":131
+ * CHKERR( TSRKSetType(self.ts, cval) )
+ *
* def getType(self): # <<<<<<<<<<<<<<
* cdef PetscTSType cval = NULL
* CHKERR( TSGetType(self.ts, &cval) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_15getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_14getType[] = "TS.getType(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_15getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_17getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_16getType[] = "TS.getType(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_17getType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getType (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getType", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getType", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_14getType(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_16getType(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14getType(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_16getType(struct PyPetscTSObject *__pyx_v_self) {
const char* __pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -174685,7 +185451,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14getType(struct PyPetscTSObject
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getType", 0);
- /* "PETSc/TS.pyx":116
+ /* "PETSc/TS.pyx":132
*
* def getType(self):
* cdef PetscTSType cval = NULL # <<<<<<<<<<<<<<
@@ -174694,31 +185460,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14getType(struct PyPetscTSObject
*/
__pyx_v_cval = NULL;
- /* "PETSc/TS.pyx":117
+ /* "PETSc/TS.pyx":133
* def getType(self):
* cdef PetscTSType cval = NULL
* CHKERR( TSGetType(self.ts, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetType(__pyx_v_self->ts, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 117, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetType(__pyx_v_self->ts, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 133, __pyx_L1_error)
- /* "PETSc/TS.pyx":118
+ /* "PETSc/TS.pyx":134
* cdef PetscTSType cval = NULL
* CHKERR( TSGetType(self.ts, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
*
- * def setProblemType(self, ptype):
+ * def getRKType(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 118, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 134, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":115
- * CHKERR( TSSetType(self.ts, cval) )
+ /* "PETSc/TS.pyx":131
+ * CHKERR( TSRKSetType(self.ts, cval) )
*
* def getType(self): # <<<<<<<<<<<<<<
* cdef PetscTSType cval = NULL
@@ -174736,7 +185502,91 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14getType(struct PyPetscTSObject
return __pyx_r;
}
-/* "PETSc/TS.pyx":120
+/* "PETSc/TS.pyx":136
+ * return bytes2str(cval)
+ *
+ * def getRKType(self): # <<<<<<<<<<<<<<
+ * cdef PetscTSRKType cval = NULL
+ * CHKERR( TSRKGetType(self.ts, &cval) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_19getRKType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_18getRKType[] = "TS.getRKType(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_19getRKType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getRKType (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getRKType", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRKType", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_18getRKType(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getRKType(struct PyPetscTSObject *__pyx_v_self) {
+ const char* __pyx_v_cval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getRKType", 0);
+
+ /* "PETSc/TS.pyx":137
+ *
+ * def getRKType(self):
+ * cdef PetscTSRKType cval = NULL # <<<<<<<<<<<<<<
+ * CHKERR( TSRKGetType(self.ts, &cval) )
+ * return bytes2str(cval)
+ */
+ __pyx_v_cval = NULL;
+
+ /* "PETSc/TS.pyx":138
+ * def getRKType(self):
+ * cdef PetscTSRKType cval = NULL
+ * CHKERR( TSRKGetType(self.ts, &cval) ) # <<<<<<<<<<<<<<
+ * return bytes2str(cval)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSRKGetType(__pyx_v_self->ts, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 138, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":139
+ * cdef PetscTSRKType cval = NULL
+ * CHKERR( TSRKGetType(self.ts, &cval) )
+ * return bytes2str(cval) # <<<<<<<<<<<<<<
+ *
+ * def setProblemType(self, ptype):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 139, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":136
+ * return bytes2str(cval)
+ *
+ * def getRKType(self): # <<<<<<<<<<<<<<
+ * cdef PetscTSRKType cval = NULL
+ * CHKERR( TSRKGetType(self.ts, &cval) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getRKType", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":141
* return bytes2str(cval)
*
* def setProblemType(self, ptype): # <<<<<<<<<<<<<<
@@ -174745,9 +185595,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_14getType(struct PyPetscTSObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_17setProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_16setProblemType[] = "TS.setProblemType(self, ptype)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_17setProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_21setProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_20setProblemType[] = "TS.setProblemType(self, ptype)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_21setProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_ptype = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -174760,6 +185610,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_17setProblemType(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174770,7 +185621,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_17setProblemType(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setProblemType") < 0)) __PYX_ERR(37, 120, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setProblemType") < 0)) __PYX_ERR(37, 141, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -174781,37 +185632,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_17setProblemType(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setProblemType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 120, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setProblemType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 141, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setProblemType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_16setProblemType(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_ptype);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_20setProblemType(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_ptype);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_16setProblemType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_ptype) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_20setProblemType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_ptype) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
TSProblemType __pyx_t_1;
int __pyx_t_2;
__Pyx_RefNannySetupContext("setProblemType", 0);
- /* "PETSc/TS.pyx":121
+ /* "PETSc/TS.pyx":142
*
* def setProblemType(self, ptype):
* CHKERR( TSSetProblemType(self.ts, ptype) ) # <<<<<<<<<<<<<<
*
* def getProblemType(self):
*/
- __pyx_t_1 = ((TSProblemType)__Pyx_PyInt_As_TSProblemType(__pyx_v_ptype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 121, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetProblemType(__pyx_v_self->ts, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 121, __pyx_L1_error)
+ __pyx_t_1 = ((TSProblemType)__Pyx_PyInt_As_TSProblemType(__pyx_v_ptype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 142, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetProblemType(__pyx_v_self->ts, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 142, __pyx_L1_error)
- /* "PETSc/TS.pyx":120
+ /* "PETSc/TS.pyx":141
* return bytes2str(cval)
*
* def setProblemType(self, ptype): # <<<<<<<<<<<<<<
@@ -174831,7 +185682,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_16setProblemType(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":123
+/* "PETSc/TS.pyx":144
* CHKERR( TSSetProblemType(self.ts, ptype) )
*
* def getProblemType(self): # <<<<<<<<<<<<<<
@@ -174840,23 +185691,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_16setProblemType(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_19getProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_18getProblemType[] = "TS.getProblemType(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_19getProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_23getProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_22getProblemType[] = "TS.getProblemType(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_23getProblemType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getProblemType (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getProblemType", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getProblemType", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_22getProblemType(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getProblemType(struct PyPetscTSObject *__pyx_v_self) {
TSProblemType __pyx_v_ptype;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -174864,7 +185715,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(struct PyPetscTS
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getProblemType", 0);
- /* "PETSc/TS.pyx":124
+ /* "PETSc/TS.pyx":145
*
* def getProblemType(self):
* cdef PetscTSProblemType ptype = TS_NONLINEAR # <<<<<<<<<<<<<<
@@ -174873,16 +185724,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(struct PyPetscTS
*/
__pyx_v_ptype = TS_NONLINEAR;
- /* "PETSc/TS.pyx":125
+ /* "PETSc/TS.pyx":146
* def getProblemType(self):
* cdef PetscTSProblemType ptype = TS_NONLINEAR
* CHKERR( TSGetProblemType(self.ts, &ptype) ) # <<<<<<<<<<<<<<
* return ptype
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetProblemType(__pyx_v_self->ts, (&__pyx_v_ptype))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 125, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetProblemType(__pyx_v_self->ts, (&__pyx_v_ptype))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 146, __pyx_L1_error)
- /* "PETSc/TS.pyx":126
+ /* "PETSc/TS.pyx":147
* cdef PetscTSProblemType ptype = TS_NONLINEAR
* CHKERR( TSGetProblemType(self.ts, &ptype) )
* return ptype # <<<<<<<<<<<<<<
@@ -174890,13 +185741,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(struct PyPetscTS
* def setEquationType(self, eqtype):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_TSProblemType(__pyx_v_ptype); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 126, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_TSProblemType(__pyx_v_ptype); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 147, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":123
+ /* "PETSc/TS.pyx":144
* CHKERR( TSSetProblemType(self.ts, ptype) )
*
* def getProblemType(self): # <<<<<<<<<<<<<<
@@ -174915,7 +185766,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":128
+/* "PETSc/TS.pyx":149
* return ptype
*
* def setEquationType(self, eqtype): # <<<<<<<<<<<<<<
@@ -174924,9 +185775,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_18getProblemType(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_21setEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_20setEquationType[] = "TS.setEquationType(self, eqtype)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_21setEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_25setEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_24setEquationType[] = "TS.setEquationType(self, eqtype)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_25setEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_eqtype = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -174939,6 +185790,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_21setEquationType(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -174949,7 +185801,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_21setEquationType(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setEquationType") < 0)) __PYX_ERR(37, 128, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setEquationType") < 0)) __PYX_ERR(37, 149, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -174960,37 +185812,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_21setEquationType(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setEquationType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 128, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setEquationType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 149, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setEquationType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_20setEquationType(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_eqtype);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_24setEquationType(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_eqtype);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_20setEquationType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_eqtype) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setEquationType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_eqtype) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
TSEquationType __pyx_t_1;
int __pyx_t_2;
__Pyx_RefNannySetupContext("setEquationType", 0);
- /* "PETSc/TS.pyx":129
+ /* "PETSc/TS.pyx":150
*
* def setEquationType(self, eqtype):
* CHKERR( TSSetEquationType(self.ts, eqtype) ) # <<<<<<<<<<<<<<
*
* def getEquationType(self):
*/
- __pyx_t_1 = ((TSEquationType)__Pyx_PyInt_As_TSEquationType(__pyx_v_eqtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 129, __pyx_L1_error)
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetEquationType(__pyx_v_self->ts, __pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 129, __pyx_L1_error)
+ __pyx_t_1 = ((TSEquationType)__Pyx_PyInt_As_TSEquationType(__pyx_v_eqtype)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 150, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetEquationType(__pyx_v_self->ts, __pyx_t_1)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 150, __pyx_L1_error)
- /* "PETSc/TS.pyx":128
+ /* "PETSc/TS.pyx":149
* return ptype
*
* def setEquationType(self, eqtype): # <<<<<<<<<<<<<<
@@ -175010,7 +185862,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_20setEquationType(struct PyPetscT
return __pyx_r;
}
-/* "PETSc/TS.pyx":131
+/* "PETSc/TS.pyx":152
* CHKERR( TSSetEquationType(self.ts, eqtype) )
*
* def getEquationType(self): # <<<<<<<<<<<<<<
@@ -175019,23 +185871,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_20setEquationType(struct PyPetscT
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_23getEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_22getEquationType[] = "TS.getEquationType(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_23getEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_27getEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_26getEquationType[] = "TS.getEquationType(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_27getEquationType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getEquationType (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getEquationType", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getEquationType", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_26getEquationType(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getEquationType(struct PyPetscTSObject *__pyx_v_self) {
TSEquationType __pyx_v_eqtype;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -175043,7 +185895,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(struct PyPetscT
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getEquationType", 0);
- /* "PETSc/TS.pyx":132
+ /* "PETSc/TS.pyx":153
*
* def getEquationType(self):
* cdef PetscTSEquationType eqtype = TS_EQ_UNSPECIFIED # <<<<<<<<<<<<<<
@@ -175052,16 +185904,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(struct PyPetscT
*/
__pyx_v_eqtype = TS_EQ_UNSPECIFIED;
- /* "PETSc/TS.pyx":133
+ /* "PETSc/TS.pyx":154
* def getEquationType(self):
* cdef PetscTSEquationType eqtype = TS_EQ_UNSPECIFIED
* CHKERR( TSGetEquationType(self.ts, &eqtype) ) # <<<<<<<<<<<<<<
* return eqtype
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetEquationType(__pyx_v_self->ts, (&__pyx_v_eqtype))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 133, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetEquationType(__pyx_v_self->ts, (&__pyx_v_eqtype))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 154, __pyx_L1_error)
- /* "PETSc/TS.pyx":134
+ /* "PETSc/TS.pyx":155
* cdef PetscTSEquationType eqtype = TS_EQ_UNSPECIFIED
* CHKERR( TSGetEquationType(self.ts, &eqtype) )
* return eqtype # <<<<<<<<<<<<<<
@@ -175069,13 +185921,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(struct PyPetscT
* def setOptionsPrefix(self, prefix):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_TSEquationType(__pyx_v_eqtype); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 134, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_TSEquationType(__pyx_v_eqtype); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 155, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":131
+ /* "PETSc/TS.pyx":152
* CHKERR( TSSetEquationType(self.ts, eqtype) )
*
* def getEquationType(self): # <<<<<<<<<<<<<<
@@ -175094,7 +185946,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(struct PyPetscT
return __pyx_r;
}
-/* "PETSc/TS.pyx":136
+/* "PETSc/TS.pyx":157
* return eqtype
*
* def setOptionsPrefix(self, prefix): # <<<<<<<<<<<<<<
@@ -175103,9 +185955,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_22getEquationType(struct PyPetscT
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_25setOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_24setOptionsPrefix[] = "TS.setOptionsPrefix(self, prefix)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_25setOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_29setOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_28setOptionsPrefix[] = "TS.setOptionsPrefix(self, prefix)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_29setOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_prefix = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -175118,6 +185970,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_25setOptionsPrefix(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -175128,7 +185981,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_25setOptionsPrefix(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOptionsPrefix") < 0)) __PYX_ERR(37, 136, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setOptionsPrefix") < 0)) __PYX_ERR(37, 157, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -175139,20 +185992,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_25setOptionsPrefix(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setOptionsPrefix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 136, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setOptionsPrefix", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 157, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setOptionsPrefix", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_24setOptionsPrefix(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_prefix);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_28setOptionsPrefix(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_prefix);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setOptionsPrefix(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prefix) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_28setOptionsPrefix(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prefix) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -175161,7 +186014,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setOptionsPrefix(struct PyPetsc
__Pyx_RefNannySetupContext("setOptionsPrefix", 0);
__Pyx_INCREF(__pyx_v_prefix);
- /* "PETSc/TS.pyx":137
+ /* "PETSc/TS.pyx":158
*
* def setOptionsPrefix(self, prefix):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -175170,28 +186023,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setOptionsPrefix(struct PyPetsc
*/
__pyx_v_cval = NULL;
- /* "PETSc/TS.pyx":138
+ /* "PETSc/TS.pyx":159
* def setOptionsPrefix(self, prefix):
* cdef const_char *cval = NULL
* prefix = str2bytes(prefix, &cval) # <<<<<<<<<<<<<<
* CHKERR( TSSetOptionsPrefix(self.ts, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_prefix, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 138, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_prefix, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 159, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_prefix, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":139
+ /* "PETSc/TS.pyx":160
* cdef const_char *cval = NULL
* prefix = str2bytes(prefix, &cval)
* CHKERR( TSSetOptionsPrefix(self.ts, cval) ) # <<<<<<<<<<<<<<
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetOptionsPrefix(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 139, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetOptionsPrefix(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 160, __pyx_L1_error)
- /* "PETSc/TS.pyx":136
+ /* "PETSc/TS.pyx":157
* return eqtype
*
* def setOptionsPrefix(self, prefix): # <<<<<<<<<<<<<<
@@ -175213,7 +186066,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setOptionsPrefix(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":141
+/* "PETSc/TS.pyx":162
* CHKERR( TSSetOptionsPrefix(self.ts, cval) )
*
* def getOptionsPrefix(self): # <<<<<<<<<<<<<<
@@ -175222,23 +186075,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_24setOptionsPrefix(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_27getOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_26getOptionsPrefix[] = "TS.getOptionsPrefix(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_27getOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_31getOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_30getOptionsPrefix[] = "TS.getOptionsPrefix(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_31getOptionsPrefix(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getOptionsPrefix (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getOptionsPrefix", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getOptionsPrefix", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_30getOptionsPrefix(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_30getOptionsPrefix(struct PyPetscTSObject *__pyx_v_self) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -175246,7 +186099,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getOptionsPrefix", 0);
- /* "PETSc/TS.pyx":142
+ /* "PETSc/TS.pyx":163
*
* def getOptionsPrefix(self):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -175255,16 +186108,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(struct PyPetsc
*/
__pyx_v_cval = NULL;
- /* "PETSc/TS.pyx":143
+ /* "PETSc/TS.pyx":164
* def getOptionsPrefix(self):
* cdef const_char *cval = NULL
* CHKERR( TSGetOptionsPrefix(self.ts, &cval) ) # <<<<<<<<<<<<<<
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetOptionsPrefix(__pyx_v_self->ts, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 143, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetOptionsPrefix(__pyx_v_self->ts, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 164, __pyx_L1_error)
- /* "PETSc/TS.pyx":144
+ /* "PETSc/TS.pyx":165
* cdef const_char *cval = NULL
* CHKERR( TSGetOptionsPrefix(self.ts, &cval) )
* return bytes2str(cval) # <<<<<<<<<<<<<<
@@ -175272,13 +186125,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(struct PyPetsc
* def setFromOptions(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 144, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 165, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":141
+ /* "PETSc/TS.pyx":162
* CHKERR( TSSetOptionsPrefix(self.ts, cval) )
*
* def getOptionsPrefix(self): # <<<<<<<<<<<<<<
@@ -175297,7 +186150,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":146
+/* "PETSc/TS.pyx":167
* return bytes2str(cval)
*
* def setFromOptions(self): # <<<<<<<<<<<<<<
@@ -175306,38 +186159,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_26getOptionsPrefix(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_29setFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_28setFromOptions[] = "TS.setFromOptions(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_29setFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_33setFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_32setFromOptions[] = "TS.setFromOptions(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_33setFromOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("setFromOptions (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("setFromOptions", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "setFromOptions", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_28setFromOptions(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_32setFromOptions(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_28setFromOptions(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_32setFromOptions(struct PyPetscTSObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setFromOptions", 0);
- /* "PETSc/TS.pyx":147
+ /* "PETSc/TS.pyx":168
*
* def setFromOptions(self):
* CHKERR( TSSetFromOptions(self.ts) ) # <<<<<<<<<<<<<<
*
* # --- application context ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetFromOptions(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 147, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetFromOptions(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 168, __pyx_L1_error)
- /* "PETSc/TS.pyx":146
+ /* "PETSc/TS.pyx":167
* return bytes2str(cval)
*
* def setFromOptions(self): # <<<<<<<<<<<<<<
@@ -175357,7 +186210,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_28setFromOptions(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":151
+/* "PETSc/TS.pyx":172
* # --- application context ---
*
* def setAppCtx(self, appctx): # <<<<<<<<<<<<<<
@@ -175366,9 +186219,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_28setFromOptions(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_31setAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_30setAppCtx[] = "TS.setAppCtx(self, appctx)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_31setAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_34setAppCtx[] = "TS.setAppCtx(self, appctx)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_appctx = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -175381,6 +186234,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_31setAppCtx(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -175391,7 +186245,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_31setAppCtx(PyObject *__pyx_v_sel
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAppCtx") < 0)) __PYX_ERR(37, 151, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAppCtx") < 0)) __PYX_ERR(37, 172, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -175402,37 +186256,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_31setAppCtx(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setAppCtx", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 151, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAppCtx", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 172, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setAppCtx", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_30setAppCtx(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_appctx);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_34setAppCtx(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_appctx);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_30setAppCtx(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_appctx) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setAppCtx(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_appctx) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("setAppCtx", 0);
- /* "PETSc/TS.pyx":152
+ /* "PETSc/TS.pyx":173
*
* def setAppCtx(self, appctx):
* self.set_attr('__appctx__', appctx) # <<<<<<<<<<<<<<
*
* def getAppCtx(self):
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__"), __pyx_v_appctx); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 152, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__"), __pyx_v_appctx); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 173, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":151
+ /* "PETSc/TS.pyx":172
* # --- application context ---
*
* def setAppCtx(self, appctx): # <<<<<<<<<<<<<<
@@ -175453,7 +186307,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_30setAppCtx(struct PyPetscTSObjec
return __pyx_r;
}
-/* "PETSc/TS.pyx":154
+/* "PETSc/TS.pyx":175
* self.set_attr('__appctx__', appctx)
*
* def getAppCtx(self): # <<<<<<<<<<<<<<
@@ -175462,29 +186316,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_30setAppCtx(struct PyPetscTSObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_33getAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_32getAppCtx[] = "TS.getAppCtx(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_33getAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37getAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_36getAppCtx[] = "TS.getAppCtx(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37getAppCtx(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getAppCtx (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getAppCtx", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getAppCtx", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_32getAppCtx(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_36getAppCtx(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_32getAppCtx(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36getAppCtx(struct PyPetscTSObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getAppCtx", 0);
- /* "PETSc/TS.pyx":155
+ /* "PETSc/TS.pyx":176
*
* def getAppCtx(self):
* return self.get_attr('__appctx__') # <<<<<<<<<<<<<<
@@ -175492,13 +186346,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_32getAppCtx(struct PyPetscTSObjec
* # --- user RHS Function/Jacobian routines ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 155, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 176, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":154
+ /* "PETSc/TS.pyx":175
* self.set_attr('__appctx__', appctx)
*
* def getAppCtx(self): # <<<<<<<<<<<<<<
@@ -175517,7 +186371,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_32getAppCtx(struct PyPetscTSObjec
return __pyx_r;
}
-/* "PETSc/TS.pyx":159
+/* "PETSc/TS.pyx":180
* # --- user RHS Function/Jacobian routines ---
*
* def setRHSFunction(self, function, Vec f=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -175526,9 +186380,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_32getAppCtx(struct PyPetscTSObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_34setRHSFunction[] = "TS.setRHSFunction(self, function, Vec f=None, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39setRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_38setRHSFunction[] = "TS.setRHSFunction(self, function, Vec f=None, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39setRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_function = 0;
struct PyPetscVecObject *__pyx_v_f = 0;
PyObject *__pyx_v_args = 0;
@@ -175547,9 +186401,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -175558,16 +186416,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_function)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -175575,13 +186436,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRHSFunction") < 0)) __PYX_ERR(37, 159, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRHSFunction") < 0)) __PYX_ERR(37, 180, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -175594,14 +186458,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setRHSFunction", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 159, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setRHSFunction", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 180, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setRHSFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "f", 0))) __PYX_ERR(37, 159, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_function, __pyx_v_f, __pyx_v_args, __pyx_v_kargs);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "f", 0))) __PYX_ERR(37, 180, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_38setRHSFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_function, __pyx_v_f, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
goto __pyx_L0;
@@ -175612,7 +186476,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_38setRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
Vec __pyx_v_fvec;
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
@@ -175626,7 +186490,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":160
+ /* "PETSc/TS.pyx":181
*
* def setRHSFunction(self, function, Vec f=None, args=None, kargs=None):
* cdef PetscVec fvec=NULL # <<<<<<<<<<<<<<
@@ -175635,7 +186499,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
*/
__pyx_v_fvec = NULL;
- /* "PETSc/TS.pyx":161
+ /* "PETSc/TS.pyx":182
* def setRHSFunction(self, function, Vec f=None, args=None, kargs=None):
* cdef PetscVec fvec=NULL
* if f is not None: fvec = f.vec # <<<<<<<<<<<<<<
@@ -175649,7 +186513,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
__pyx_v_fvec = __pyx_t_3;
}
- /* "PETSc/TS.pyx":162
+ /* "PETSc/TS.pyx":183
* cdef PetscVec fvec=NULL
* if f is not None: fvec = f.vec
* if function is not None: # <<<<<<<<<<<<<<
@@ -175660,7 +186524,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/TS.pyx":163
+ /* "PETSc/TS.pyx":184
* if f is not None: fvec = f.vec
* if function is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -175674,7 +186538,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/TS.pyx":164
+ /* "PETSc/TS.pyx":185
* if function is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -175684,20 +186548,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 164, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/TS.pyx":165
+ /* "PETSc/TS.pyx":186
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (function, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__rhsfunction__', context)
* CHKERR( TSSetRHSFunction(self.ts, fvec, TS_RHSFunction, <void*>context) )
*/
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 165, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_function);
__Pyx_GIVEREF(__pyx_v_function);
@@ -175711,27 +186575,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
__pyx_v_context = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/TS.pyx":166
+ /* "PETSc/TS.pyx":187
* if kargs is None: kargs = {}
* context = (function, args, kargs)
* self.set_attr('__rhsfunction__', context) # <<<<<<<<<<<<<<
* CHKERR( TSSetRHSFunction(self.ts, fvec, TS_RHSFunction, <void*>context) )
* else:
*/
- __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsfunction__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 166, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsfunction__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 187, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":167
+ /* "PETSc/TS.pyx":188
* context = (function, args, kargs)
* self.set_attr('__rhsfunction__', context)
* CHKERR( TSSetRHSFunction(self.ts, fvec, TS_RHSFunction, <void*>context) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( TSSetRHSFunction(self.ts, fvec, NULL, NULL) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSFunction(__pyx_v_self->ts, __pyx_v_fvec, __pyx_f_8petsc4py_5PETSc_TS_RHSFunction, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 167, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSFunction(__pyx_v_self->ts, __pyx_v_fvec, __pyx_f_8petsc4py_5PETSc_TS_RHSFunction, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 188, __pyx_L1_error)
- /* "PETSc/TS.pyx":162
+ /* "PETSc/TS.pyx":183
* cdef PetscVec fvec=NULL
* if f is not None: fvec = f.vec
* if function is not None: # <<<<<<<<<<<<<<
@@ -175741,7 +186605,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
goto __pyx_L4;
}
- /* "PETSc/TS.pyx":169
+ /* "PETSc/TS.pyx":190
* CHKERR( TSSetRHSFunction(self.ts, fvec, TS_RHSFunction, <void*>context) )
* else:
* CHKERR( TSSetRHSFunction(self.ts, fvec, NULL, NULL) ) # <<<<<<<<<<<<<<
@@ -175749,11 +186613,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
* def setRHSJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSFunction(__pyx_v_self->ts, __pyx_v_fvec, NULL, NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 169, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSFunction(__pyx_v_self->ts, __pyx_v_fvec, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 190, __pyx_L1_error)
}
__pyx_L4:;
- /* "PETSc/TS.pyx":159
+ /* "PETSc/TS.pyx":180
* # --- user RHS Function/Jacobian routines ---
*
* def setRHSFunction(self, function, Vec f=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -175777,7 +186641,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":171
+/* "PETSc/TS.pyx":192
* CHKERR( TSSetRHSFunction(self.ts, fvec, NULL, NULL) )
*
* def setRHSJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -175786,9 +186650,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_34setRHSFunction(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_36setRHSJacobian[] = "TS.setRHSJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41setRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_40setRHSJacobian[] = "TS.setRHSJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41setRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_jacobian = 0;
struct PyPetscMatObject *__pyx_v_J = 0;
struct PyPetscMatObject *__pyx_v_P = 0;
@@ -175809,10 +186673,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -175821,21 +186690,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -175843,14 +186716,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRHSJacobian") < 0)) __PYX_ERR(37, 171, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRHSJacobian") < 0)) __PYX_ERR(37, 192, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -175864,15 +186741,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setRHSJacobian", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 171, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setRHSJacobian", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 192, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setRHSJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "J", 0))) __PYX_ERR(37, 171, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 171, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_jacobian, __pyx_v_J, __pyx_v_P, __pyx_v_args, __pyx_v_kargs);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "J", 0))) __PYX_ERR(37, 192, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 192, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_40setRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_jacobian, __pyx_v_J, __pyx_v_P, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
goto __pyx_L0;
@@ -175883,7 +186760,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_40setRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
Mat __pyx_v_Jmat;
Mat __pyx_v_Pmat;
PyObject *__pyx_v_context = NULL;
@@ -175898,7 +186775,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":172
+ /* "PETSc/TS.pyx":193
*
* def setRHSJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
* cdef PetscMat Jmat=NULL # <<<<<<<<<<<<<<
@@ -175907,7 +186784,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
*/
__pyx_v_Jmat = NULL;
- /* "PETSc/TS.pyx":173
+ /* "PETSc/TS.pyx":194
* def setRHSJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
* cdef PetscMat Jmat=NULL
* if J is not None: Jmat = J.mat # <<<<<<<<<<<<<<
@@ -175921,7 +186798,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
__pyx_v_Jmat = __pyx_t_3;
}
- /* "PETSc/TS.pyx":174
+ /* "PETSc/TS.pyx":195
* cdef PetscMat Jmat=NULL
* if J is not None: Jmat = J.mat
* cdef PetscMat Pmat=Jmat # <<<<<<<<<<<<<<
@@ -175930,7 +186807,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
*/
__pyx_v_Pmat = __pyx_v_Jmat;
- /* "PETSc/TS.pyx":175
+ /* "PETSc/TS.pyx":196
* if J is not None: Jmat = J.mat
* cdef PetscMat Pmat=Jmat
* if P is not None: Pmat = P.mat # <<<<<<<<<<<<<<
@@ -175944,7 +186821,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
__pyx_v_Pmat = __pyx_t_3;
}
- /* "PETSc/TS.pyx":176
+ /* "PETSc/TS.pyx":197
* cdef PetscMat Pmat=Jmat
* if P is not None: Pmat = P.mat
* if jacobian is not None: # <<<<<<<<<<<<<<
@@ -175955,7 +186832,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/TS.pyx":177
+ /* "PETSc/TS.pyx":198
* if P is not None: Pmat = P.mat
* if jacobian is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -175969,7 +186846,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/TS.pyx":178
+ /* "PETSc/TS.pyx":199
* if jacobian is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -175979,20 +186856,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 178, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 199, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/TS.pyx":179
+ /* "PETSc/TS.pyx":200
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (jacobian, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__rhsjacobian__', context)
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, TS_RHSJacobian, <void*>context) )
*/
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 179, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 200, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_jacobian);
__Pyx_GIVEREF(__pyx_v_jacobian);
@@ -176006,27 +186883,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
__pyx_v_context = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/TS.pyx":180
+ /* "PETSc/TS.pyx":201
* if kargs is None: kargs = {}
* context = (jacobian, args, kargs)
* self.set_attr('__rhsjacobian__', context) # <<<<<<<<<<<<<<
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, TS_RHSJacobian, <void*>context) )
* else:
*/
- __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsjacobian__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 180, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsjacobian__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":181
+ /* "PETSc/TS.pyx":202
* context = (jacobian, args, kargs)
* self.set_attr('__rhsjacobian__', context)
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, TS_RHSJacobian, <void*>context) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 181, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TS_RHSJacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 202, __pyx_L1_error)
- /* "PETSc/TS.pyx":176
+ /* "PETSc/TS.pyx":197
* cdef PetscMat Pmat=Jmat
* if P is not None: Pmat = P.mat
* if jacobian is not None: # <<<<<<<<<<<<<<
@@ -176036,19 +186913,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
goto __pyx_L5;
}
- /* "PETSc/TS.pyx":183
+ /* "PETSc/TS.pyx":204
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, TS_RHSJacobian, <void*>context) )
* else:
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, NULL, NULL) ) # <<<<<<<<<<<<<<
*
- * def computeRHSFunction(self, t, Vec x not None, Vec f not None):
+ * def computeRHSFunction(self, t, Vec x, Vec f):
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, NULL, NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 183, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetRHSJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 204, __pyx_L1_error)
}
__pyx_L5:;
- /* "PETSc/TS.pyx":171
+ /* "PETSc/TS.pyx":192
* CHKERR( TSSetRHSFunction(self.ts, fvec, NULL, NULL) )
*
* def setRHSJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -176072,18 +186949,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_36setRHSJacobian(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":185
+/* "PETSc/TS.pyx":206
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*
- * def computeRHSFunction(self, t, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeRHSFunction(self, t, Vec x, Vec f): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* CHKERR( TSComputeRHSFunction(self.ts, time, x.vec, f.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39computeRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_38computeRHSFunction[] = "TS.computeRHSFunction(self, t, Vec x, Vec f)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39computeRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_42computeRHSFunction[] = "TS.computeRHSFunction(self, t, Vec x, Vec f)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_t = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_f = 0;
@@ -176098,8 +186975,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39computeRHSFunction(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -176108,19 +186988,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39computeRHSFunction(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSFunction", 1, 3, 3, 1); __PYX_ERR(37, 185, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSFunction", 1, 3, 3, 1); __PYX_ERR(37, 206, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSFunction", 1, 3, 3, 2); __PYX_ERR(37, 185, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSFunction", 1, 3, 3, 2); __PYX_ERR(37, 206, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSFunction") < 0)) __PYX_ERR(37, 185, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSFunction") < 0)) __PYX_ERR(37, 206, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -176135,15 +187017,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39computeRHSFunction(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("computeRHSFunction", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 185, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSFunction", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 206, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.computeRHSFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 185, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(37, 185, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_38computeRHSFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_f);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 206, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(37, 206, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_f);
/* function exit code */
goto __pyx_L0;
@@ -176154,7 +187036,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_39computeRHSFunction(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_38computeRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f) {
PetscReal __pyx_v_time;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -176162,29 +187044,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_38computeRHSFunction(struct PyPet
int __pyx_t_2;
__Pyx_RefNannySetupContext("computeRHSFunction", 0);
- /* "PETSc/TS.pyx":186
+ /* "PETSc/TS.pyx":207
*
- * def computeRHSFunction(self, t, Vec x not None, Vec f not None):
+ * def computeRHSFunction(self, t, Vec x, Vec f):
* cdef PetscReal time = asReal(t) # <<<<<<<<<<<<<<
* CHKERR( TSComputeRHSFunction(self.ts, time, x.vec, f.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 186, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 207, __pyx_L1_error)
__pyx_v_time = __pyx_t_1;
- /* "PETSc/TS.pyx":187
- * def computeRHSFunction(self, t, Vec x not None, Vec f not None):
+ /* "PETSc/TS.pyx":208
+ * def computeRHSFunction(self, t, Vec x, Vec f):
* cdef PetscReal time = asReal(t)
* CHKERR( TSComputeRHSFunction(self.ts, time, x.vec, f.vec) ) # <<<<<<<<<<<<<<
*
- * def computeRHSFunctionLinear(self, t, Vec x not None, Vec f not None):
+ * def computeRHSFunctionLinear(self, t, Vec x, Vec f):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSFunction(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_f->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 187, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSFunction(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_f->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 208, __pyx_L1_error)
- /* "PETSc/TS.pyx":185
+ /* "PETSc/TS.pyx":206
* CHKERR( TSSetRHSJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*
- * def computeRHSFunction(self, t, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeRHSFunction(self, t, Vec x, Vec f): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* CHKERR( TSComputeRHSFunction(self.ts, time, x.vec, f.vec) )
*/
@@ -176201,18 +187083,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_38computeRHSFunction(struct PyPet
return __pyx_r;
}
-/* "PETSc/TS.pyx":189
+/* "PETSc/TS.pyx":210
* CHKERR( TSComputeRHSFunction(self.ts, time, x.vec, f.vec) )
*
- * def computeRHSFunctionLinear(self, t, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeRHSFunctionLinear(self, t, Vec x, Vec f): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* CHKERR( TSComputeRHSFunctionLinear(self.ts, time, x.vec, f.vec, NULL) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41computeRHSFunctionLinear(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_40computeRHSFunctionLinear[] = "TS.computeRHSFunctionLinear(self, t, Vec x, Vec f)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41computeRHSFunctionLinear(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSFunctionLinear(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_44computeRHSFunctionLinear[] = "TS.computeRHSFunctionLinear(self, t, Vec x, Vec f)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSFunctionLinear(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_t = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_f = 0;
@@ -176227,8 +187109,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41computeRHSFunctionLinear(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -176237,19 +187122,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41computeRHSFunctionLinear(PyObje
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSFunctionLinear", 1, 3, 3, 1); __PYX_ERR(37, 189, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSFunctionLinear", 1, 3, 3, 1); __PYX_ERR(37, 210, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSFunctionLinear", 1, 3, 3, 2); __PYX_ERR(37, 189, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSFunctionLinear", 1, 3, 3, 2); __PYX_ERR(37, 210, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSFunctionLinear") < 0)) __PYX_ERR(37, 189, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSFunctionLinear") < 0)) __PYX_ERR(37, 210, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -176264,15 +187151,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41computeRHSFunctionLinear(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("computeRHSFunctionLinear", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 189, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSFunctionLinear", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 210, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.computeRHSFunctionLinear", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 189, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(37, 189, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_40computeRHSFunctionLinear(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_f);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 210, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(37, 210, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSFunctionLinear(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_f);
/* function exit code */
goto __pyx_L0;
@@ -176283,7 +187170,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_41computeRHSFunctionLinear(PyObje
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_40computeRHSFunctionLinear(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSFunctionLinear(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_f) {
PetscReal __pyx_v_time;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -176291,29 +187178,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_40computeRHSFunctionLinear(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("computeRHSFunctionLinear", 0);
- /* "PETSc/TS.pyx":190
+ /* "PETSc/TS.pyx":211
*
- * def computeRHSFunctionLinear(self, t, Vec x not None, Vec f not None):
+ * def computeRHSFunctionLinear(self, t, Vec x, Vec f):
* cdef PetscReal time = asReal(t) # <<<<<<<<<<<<<<
* CHKERR( TSComputeRHSFunctionLinear(self.ts, time, x.vec, f.vec, NULL) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 190, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 211, __pyx_L1_error)
__pyx_v_time = __pyx_t_1;
- /* "PETSc/TS.pyx":191
- * def computeRHSFunctionLinear(self, t, Vec x not None, Vec f not None):
+ /* "PETSc/TS.pyx":212
+ * def computeRHSFunctionLinear(self, t, Vec x, Vec f):
* cdef PetscReal time = asReal(t)
* CHKERR( TSComputeRHSFunctionLinear(self.ts, time, x.vec, f.vec, NULL) ) # <<<<<<<<<<<<<<
*
- * def computeRHSJacobian(self, t, Vec x not None, Mat J not None, Mat P=None):
+ * def computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSFunctionLinear(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_f->vec, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 191, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSFunctionLinear(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_f->vec, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 212, __pyx_L1_error)
- /* "PETSc/TS.pyx":189
+ /* "PETSc/TS.pyx":210
* CHKERR( TSComputeRHSFunction(self.ts, time, x.vec, f.vec) )
*
- * def computeRHSFunctionLinear(self, t, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeRHSFunctionLinear(self, t, Vec x, Vec f): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* CHKERR( TSComputeRHSFunctionLinear(self.ts, time, x.vec, f.vec, NULL) )
*/
@@ -176330,18 +187217,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_40computeRHSFunctionLinear(struct
return __pyx_r;
}
-/* "PETSc/TS.pyx":193
+/* "PETSc/TS.pyx":214
* CHKERR( TSComputeRHSFunctionLinear(self.ts, time, x.vec, f.vec, NULL) )
*
- * def computeRHSJacobian(self, t, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_42computeRHSJacobian[] = "TS.computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_47computeRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_46computeRHSJacobian[] = "TS.computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_47computeRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_t = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscMatObject *__pyx_v_J = 0;
@@ -176358,9 +187245,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -176369,16 +187260,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSJacobian", 0, 3, 4, 1); __PYX_ERR(37, 193, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSJacobian", 0, 3, 4, 1); __PYX_ERR(37, 214, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSJacobian", 0, 3, 4, 2); __PYX_ERR(37, 193, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSJacobian", 0, 3, 4, 2); __PYX_ERR(37, 214, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
@@ -176386,11 +187280,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSJacobian") < 0)) __PYX_ERR(37, 193, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSJacobian") < 0)) __PYX_ERR(37, 214, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -176405,16 +187300,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("computeRHSJacobian", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 193, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSJacobian", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 214, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.computeRHSJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 193, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 193, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 193, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_J, __pyx_v_P);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 214, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 214, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 214, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_46computeRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_J, __pyx_v_P);
/* function exit code */
goto __pyx_L0;
@@ -176425,7 +187320,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46computeRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P) {
PetscReal __pyx_v_time;
Mat __pyx_v_jmat;
Mat __pyx_v_pmat;
@@ -176438,18 +187333,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSJacobian(struct PyPet
int __pyx_t_5;
__Pyx_RefNannySetupContext("computeRHSJacobian", 0);
- /* "PETSc/TS.pyx":194
+ /* "PETSc/TS.pyx":215
*
- * def computeRHSJacobian(self, t, Vec x not None, Mat J not None, Mat P=None):
+ * def computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None):
* cdef PetscReal time = asReal(t) # <<<<<<<<<<<<<<
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 194, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 215, __pyx_L1_error)
__pyx_v_time = __pyx_t_1;
- /* "PETSc/TS.pyx":195
- * def computeRHSJacobian(self, t, Vec x not None, Mat J not None, Mat P=None):
+ /* "PETSc/TS.pyx":216
+ * def computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None):
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat # <<<<<<<<<<<<<<
* if P is not None: pmat = P.mat
@@ -176460,7 +187355,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSJacobian(struct PyPet
__pyx_t_2 = __pyx_v_J->mat;
__pyx_v_pmat = __pyx_t_2;
- /* "PETSc/TS.pyx":196
+ /* "PETSc/TS.pyx":217
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat # <<<<<<<<<<<<<<
@@ -176474,19 +187369,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSJacobian(struct PyPet
__pyx_v_pmat = __pyx_t_2;
}
- /* "PETSc/TS.pyx":197
+ /* "PETSc/TS.pyx":218
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
* CHKERR( TSComputeRHSJacobian(self.ts, time, x.vec, jmat, pmat) ) # <<<<<<<<<<<<<<
*
- * def computeRHSJacobianConstant(self, t, Vec x not None, Mat J not None, Mat P=None):
+ * def computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSJacobian(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 197, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSJacobian(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 218, __pyx_L1_error)
- /* "PETSc/TS.pyx":193
+ /* "PETSc/TS.pyx":214
* CHKERR( TSComputeRHSFunctionLinear(self.ts, time, x.vec, f.vec, NULL) )
*
- * def computeRHSJacobian(self, t, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeRHSJacobian(self, t, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat
*/
@@ -176503,18 +187398,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_42computeRHSJacobian(struct PyPet
return __pyx_r;
}
-/* "PETSc/TS.pyx":199
+/* "PETSc/TS.pyx":220
* CHKERR( TSComputeRHSJacobian(self.ts, time, x.vec, jmat, pmat) )
*
- * def computeRHSJacobianConstant(self, t, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant[] = "TS.computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_49computeRHSJacobianConstant(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_48computeRHSJacobianConstant[] = "TS.computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_49computeRHSJacobianConstant(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_t = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscMatObject *__pyx_v_J = 0;
@@ -176531,9 +187426,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -176542,16 +187441,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSJacobianConstant", 0, 3, 4, 1); __PYX_ERR(37, 199, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSJacobianConstant", 0, 3, 4, 1); __PYX_ERR(37, 220, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeRHSJacobianConstant", 0, 3, 4, 2); __PYX_ERR(37, 199, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSJacobianConstant", 0, 3, 4, 2); __PYX_ERR(37, 220, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
@@ -176559,11 +187461,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant(PyOb
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSJacobianConstant") < 0)) __PYX_ERR(37, 199, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeRHSJacobianConstant") < 0)) __PYX_ERR(37, 220, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -176578,16 +187481,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant(PyOb
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("computeRHSJacobianConstant", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 199, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeRHSJacobianConstant", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 220, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.computeRHSJacobianConstant", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 199, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 199, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 199, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_J, __pyx_v_P);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 220, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 220, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 220, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_48computeRHSJacobianConstant(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_J, __pyx_v_P);
/* function exit code */
goto __pyx_L0;
@@ -176598,7 +187501,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant(PyOb
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48computeRHSJacobianConstant(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P) {
PetscReal __pyx_v_time;
Mat __pyx_v_jmat;
Mat __pyx_v_pmat;
@@ -176611,18 +187514,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(stru
int __pyx_t_5;
__Pyx_RefNannySetupContext("computeRHSJacobianConstant", 0);
- /* "PETSc/TS.pyx":200
+ /* "PETSc/TS.pyx":221
*
- * def computeRHSJacobianConstant(self, t, Vec x not None, Mat J not None, Mat P=None):
+ * def computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None):
* cdef PetscReal time = asReal(t) # <<<<<<<<<<<<<<
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 200, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 221, __pyx_L1_error)
__pyx_v_time = __pyx_t_1;
- /* "PETSc/TS.pyx":201
- * def computeRHSJacobianConstant(self, t, Vec x not None, Mat J not None, Mat P=None):
+ /* "PETSc/TS.pyx":222
+ * def computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None):
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat # <<<<<<<<<<<<<<
* if P is not None: pmat = P.mat
@@ -176633,7 +187536,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(stru
__pyx_t_2 = __pyx_v_J->mat;
__pyx_v_pmat = __pyx_t_2;
- /* "PETSc/TS.pyx":202
+ /* "PETSc/TS.pyx":223
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat # <<<<<<<<<<<<<<
@@ -176647,19 +187550,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(stru
__pyx_v_pmat = __pyx_t_2;
}
- /* "PETSc/TS.pyx":203
+ /* "PETSc/TS.pyx":224
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
* CHKERR( TSComputeRHSJacobianConstant(self.ts, time, x.vec, jmat, pmat, NULL) ) # <<<<<<<<<<<<<<
*
* def getRHSFunction(self):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSJacobianConstant(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat, NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 203, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeRHSJacobianConstant(__pyx_v_self->ts, __pyx_v_time, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 224, __pyx_L1_error)
- /* "PETSc/TS.pyx":199
+ /* "PETSc/TS.pyx":220
* CHKERR( TSComputeRHSJacobian(self.ts, time, x.vec, jmat, pmat) )
*
- * def computeRHSJacobianConstant(self, t, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeRHSJacobianConstant(self, t, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* cdef PetscReal time = asReal(t)
* cdef PetscMat jmat = J.mat, pmat = J.mat
*/
@@ -176676,7 +187579,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(stru
return __pyx_r;
}
-/* "PETSc/TS.pyx":205
+/* "PETSc/TS.pyx":226
* CHKERR( TSComputeRHSJacobianConstant(self.ts, time, x.vec, jmat, pmat, NULL) )
*
* def getRHSFunction(self): # <<<<<<<<<<<<<<
@@ -176685,23 +187588,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant(stru
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_47getRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_46getRHSFunction[] = "TS.getRHSFunction(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_47getRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51getRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_50getRHSFunction[] = "TS.getRHSFunction(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51getRHSFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getRHSFunction (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getRHSFunction", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRHSFunction", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_50getRHSFunction(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50getRHSFunction(struct PyPetscTSObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_f = 0;
PyObject *__pyx_v_function = 0;
PyObject *__pyx_r = NULL;
@@ -176710,28 +187613,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTS
int __pyx_t_2;
__Pyx_RefNannySetupContext("getRHSFunction", 0);
- /* "PETSc/TS.pyx":206
+ /* "PETSc/TS.pyx":227
*
* def getRHSFunction(self):
* cdef Vec f = Vec() # <<<<<<<<<<<<<<
* CHKERR( TSGetRHSFunction(self.ts, &f.vec, NULL, NULL) )
* PetscINCREF(f.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 206, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_f = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":207
+ /* "PETSc/TS.pyx":228
* def getRHSFunction(self):
* cdef Vec f = Vec()
* CHKERR( TSGetRHSFunction(self.ts, &f.vec, NULL, NULL) ) # <<<<<<<<<<<<<<
* PetscINCREF(f.obj)
* cdef object function = self.get_attr('__rhsfunction__')
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetRHSFunction(__pyx_v_self->ts, (&__pyx_v_f->vec), NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 207, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetRHSFunction(__pyx_v_self->ts, (&__pyx_v_f->vec), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 228, __pyx_L1_error)
- /* "PETSc/TS.pyx":208
+ /* "PETSc/TS.pyx":229
* cdef Vec f = Vec()
* CHKERR( TSGetRHSFunction(self.ts, &f.vec, NULL, NULL) )
* PetscINCREF(f.obj) # <<<<<<<<<<<<<<
@@ -176740,19 +187643,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTS
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_f->__pyx_base.obj);
- /* "PETSc/TS.pyx":209
+ /* "PETSc/TS.pyx":230
* CHKERR( TSGetRHSFunction(self.ts, &f.vec, NULL, NULL) )
* PetscINCREF(f.obj)
* cdef object function = self.get_attr('__rhsfunction__') # <<<<<<<<<<<<<<
* return (f, function)
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsfunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 209, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsfunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_function = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":210
+ /* "PETSc/TS.pyx":231
* PetscINCREF(f.obj)
* cdef object function = self.get_attr('__rhsfunction__')
* return (f, function) # <<<<<<<<<<<<<<
@@ -176760,7 +187663,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTS
* def getRHSJacobian(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 210, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 231, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_f));
__Pyx_GIVEREF(((PyObject *)__pyx_v_f));
@@ -176772,7 +187675,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":205
+ /* "PETSc/TS.pyx":226
* CHKERR( TSComputeRHSJacobianConstant(self.ts, time, x.vec, jmat, pmat, NULL) )
*
* def getRHSFunction(self): # <<<<<<<<<<<<<<
@@ -176793,7 +187696,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":212
+/* "PETSc/TS.pyx":233
* return (f, function)
*
* def getRHSJacobian(self): # <<<<<<<<<<<<<<
@@ -176802,23 +187705,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_46getRHSFunction(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_49getRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_48getRHSJacobian[] = "TS.getRHSJacobian(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_49getRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53getRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_52getRHSJacobian[] = "TS.getRHSJacobian(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53getRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getRHSJacobian (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getRHSJacobian", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRHSJacobian", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_52getRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52getRHSJacobian(struct PyPetscTSObject *__pyx_v_self) {
struct PyPetscMatObject *__pyx_v_J = 0;
struct PyPetscMatObject *__pyx_v_P = 0;
PyObject *__pyx_v_jacobian = 0;
@@ -176828,32 +187731,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTS
int __pyx_t_2;
__Pyx_RefNannySetupContext("getRHSJacobian", 0);
- /* "PETSc/TS.pyx":213
+ /* "PETSc/TS.pyx":234
*
* def getRHSJacobian(self):
* cdef Mat J = Mat(), P = Mat() # <<<<<<<<<<<<<<
* CHKERR( TSGetRHSJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
* PetscINCREF(J.obj); PetscINCREF(P.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 213, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 234, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_J = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 213, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 234, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_P = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":214
+ /* "PETSc/TS.pyx":235
* def getRHSJacobian(self):
* cdef Mat J = Mat(), P = Mat()
* CHKERR( TSGetRHSJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) ) # <<<<<<<<<<<<<<
* PetscINCREF(J.obj); PetscINCREF(P.obj)
* cdef object jacobian = self.get_attr('__rhsjacobian__')
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetRHSJacobian(__pyx_v_self->ts, (&__pyx_v_J->mat), (&__pyx_v_P->mat), NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 214, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetRHSJacobian(__pyx_v_self->ts, (&__pyx_v_J->mat), (&__pyx_v_P->mat), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 235, __pyx_L1_error)
- /* "PETSc/TS.pyx":215
+ /* "PETSc/TS.pyx":236
* cdef Mat J = Mat(), P = Mat()
* CHKERR( TSGetRHSJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
* PetscINCREF(J.obj); PetscINCREF(P.obj) # <<<<<<<<<<<<<<
@@ -176863,19 +187766,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTS
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_J->__pyx_base.obj);
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_P->__pyx_base.obj);
- /* "PETSc/TS.pyx":216
+ /* "PETSc/TS.pyx":237
* CHKERR( TSGetRHSJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
* PetscINCREF(J.obj); PetscINCREF(P.obj)
* cdef object jacobian = self.get_attr('__rhsjacobian__') # <<<<<<<<<<<<<<
* return (J, P, jacobian)
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsjacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 216, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__rhsjacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 237, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_jacobian = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":217
+ /* "PETSc/TS.pyx":238
* PetscINCREF(J.obj); PetscINCREF(P.obj)
* cdef object jacobian = self.get_attr('__rhsjacobian__')
* return (J, P, jacobian) # <<<<<<<<<<<<<<
@@ -176883,7 +187786,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTS
* # --- user Implicit Function/Jacobian routines ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 217, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 238, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_J));
__Pyx_GIVEREF(((PyObject *)__pyx_v_J));
@@ -176898,7 +187801,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":212
+ /* "PETSc/TS.pyx":233
* return (f, function)
*
* def getRHSJacobian(self): # <<<<<<<<<<<<<<
@@ -176920,7 +187823,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":221
+/* "PETSc/TS.pyx":242
* # --- user Implicit Function/Jacobian routines ---
*
* def setIFunction(self, function, Vec f=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -176929,9 +187832,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_48getRHSJacobian(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_50setIFunction[] = "TS.setIFunction(self, function, Vec f=None, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55setIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_54setIFunction[] = "TS.setIFunction(self, function, Vec f=None, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55setIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_function = 0;
struct PyPetscVecObject *__pyx_v_f = 0;
PyObject *__pyx_v_args = 0;
@@ -176950,9 +187853,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -176961,16 +187868,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_function)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -176978,13 +187888,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIFunction") < 0)) __PYX_ERR(37, 221, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIFunction") < 0)) __PYX_ERR(37, 242, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -176997,14 +187910,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setIFunction", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 221, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setIFunction", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 242, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setIFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "f", 0))) __PYX_ERR(37, 221, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_function, __pyx_v_f, __pyx_v_args, __pyx_v_kargs);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "f", 0))) __PYX_ERR(37, 242, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_54setIFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_function, __pyx_v_f, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
goto __pyx_L0;
@@ -177015,7 +187928,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction(PyObject *__pyx_v_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_54setIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
Vec __pyx_v_fvec;
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
@@ -177029,7 +187942,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":222
+ /* "PETSc/TS.pyx":243
*
* def setIFunction(self, function, Vec f=None, args=None, kargs=None):
* cdef PetscVec fvec=NULL # <<<<<<<<<<<<<<
@@ -177038,7 +187951,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
*/
__pyx_v_fvec = NULL;
- /* "PETSc/TS.pyx":223
+ /* "PETSc/TS.pyx":244
* def setIFunction(self, function, Vec f=None, args=None, kargs=None):
* cdef PetscVec fvec=NULL
* if f is not None: fvec = f.vec # <<<<<<<<<<<<<<
@@ -177052,7 +187965,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
__pyx_v_fvec = __pyx_t_3;
}
- /* "PETSc/TS.pyx":224
+ /* "PETSc/TS.pyx":245
* cdef PetscVec fvec=NULL
* if f is not None: fvec = f.vec
* if function is not None: # <<<<<<<<<<<<<<
@@ -177063,7 +187976,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/TS.pyx":225
+ /* "PETSc/TS.pyx":246
* if f is not None: fvec = f.vec
* if function is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -177077,7 +187990,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/TS.pyx":226
+ /* "PETSc/TS.pyx":247
* if function is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -177087,20 +188000,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 226, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 247, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/TS.pyx":227
+ /* "PETSc/TS.pyx":248
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (function, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__ifunction__', context)
* CHKERR( TSSetIFunction(self.ts, fvec, TS_IFunction, <void*>context) )
*/
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 227, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 248, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_function);
__Pyx_GIVEREF(__pyx_v_function);
@@ -177114,27 +188027,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
__pyx_v_context = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/TS.pyx":228
+ /* "PETSc/TS.pyx":249
* if kargs is None: kargs = {}
* context = (function, args, kargs)
* self.set_attr('__ifunction__', context) # <<<<<<<<<<<<<<
* CHKERR( TSSetIFunction(self.ts, fvec, TS_IFunction, <void*>context) )
* else:
*/
- __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ifunction__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 228, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ifunction__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 249, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":229
+ /* "PETSc/TS.pyx":250
* context = (function, args, kargs)
* self.set_attr('__ifunction__', context)
* CHKERR( TSSetIFunction(self.ts, fvec, TS_IFunction, <void*>context) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( TSSetIFunction(self.ts, fvec, NULL, NULL) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIFunction(__pyx_v_self->ts, __pyx_v_fvec, __pyx_f_8petsc4py_5PETSc_TS_IFunction, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 229, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIFunction(__pyx_v_self->ts, __pyx_v_fvec, __pyx_f_8petsc4py_5PETSc_TS_IFunction, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 250, __pyx_L1_error)
- /* "PETSc/TS.pyx":224
+ /* "PETSc/TS.pyx":245
* cdef PetscVec fvec=NULL
* if f is not None: fvec = f.vec
* if function is not None: # <<<<<<<<<<<<<<
@@ -177144,7 +188057,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
goto __pyx_L4;
}
- /* "PETSc/TS.pyx":231
+ /* "PETSc/TS.pyx":252
* CHKERR( TSSetIFunction(self.ts, fvec, TS_IFunction, <void*>context) )
* else:
* CHKERR( TSSetIFunction(self.ts, fvec, NULL, NULL) ) # <<<<<<<<<<<<<<
@@ -177152,11 +188065,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
* def setIJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIFunction(__pyx_v_self->ts, __pyx_v_fvec, NULL, NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 231, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIFunction(__pyx_v_self->ts, __pyx_v_fvec, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 252, __pyx_L1_error)
}
__pyx_L4:;
- /* "PETSc/TS.pyx":221
+ /* "PETSc/TS.pyx":242
* # --- user Implicit Function/Jacobian routines ---
*
* def setIFunction(self, function, Vec f=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -177180,7 +188093,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":233
+/* "PETSc/TS.pyx":254
* CHKERR( TSSetIFunction(self.ts, fvec, NULL, NULL) )
*
* def setIJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -177189,9 +188102,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_50setIFunction(struct PyPetscTSOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_52setIJacobian[] = "TS.setIJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57setIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_56setIJacobian[] = "TS.setIJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57setIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_jacobian = 0;
struct PyPetscMatObject *__pyx_v_J = 0;
struct PyPetscMatObject *__pyx_v_P = 0;
@@ -177212,10 +188125,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -177224,21 +188142,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -177246,14 +188168,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIJacobian") < 0)) __PYX_ERR(37, 233, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setIJacobian") < 0)) __PYX_ERR(37, 254, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -177267,15 +188193,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setIJacobian", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 233, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setIJacobian", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 254, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setIJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "J", 0))) __PYX_ERR(37, 233, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 233, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_jacobian, __pyx_v_J, __pyx_v_P, __pyx_v_args, __pyx_v_kargs);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "J", 0))) __PYX_ERR(37, 254, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 254, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_56setIJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_jacobian, __pyx_v_J, __pyx_v_P, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
goto __pyx_L0;
@@ -177286,7 +188212,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian(PyObject *__pyx_v_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56setIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
Mat __pyx_v_Jmat;
Mat __pyx_v_Pmat;
PyObject *__pyx_v_context = NULL;
@@ -177301,7 +188227,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":234
+ /* "PETSc/TS.pyx":255
*
* def setIJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
* cdef PetscMat Jmat=NULL # <<<<<<<<<<<<<<
@@ -177310,7 +188236,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
*/
__pyx_v_Jmat = NULL;
- /* "PETSc/TS.pyx":235
+ /* "PETSc/TS.pyx":256
* def setIJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
* cdef PetscMat Jmat=NULL
* if J is not None: Jmat = J.mat # <<<<<<<<<<<<<<
@@ -177324,7 +188250,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
__pyx_v_Jmat = __pyx_t_3;
}
- /* "PETSc/TS.pyx":236
+ /* "PETSc/TS.pyx":257
* cdef PetscMat Jmat=NULL
* if J is not None: Jmat = J.mat
* cdef PetscMat Pmat=Jmat # <<<<<<<<<<<<<<
@@ -177333,7 +188259,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
*/
__pyx_v_Pmat = __pyx_v_Jmat;
- /* "PETSc/TS.pyx":237
+ /* "PETSc/TS.pyx":258
* if J is not None: Jmat = J.mat
* cdef PetscMat Pmat=Jmat
* if P is not None: Pmat = P.mat # <<<<<<<<<<<<<<
@@ -177347,7 +188273,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
__pyx_v_Pmat = __pyx_t_3;
}
- /* "PETSc/TS.pyx":238
+ /* "PETSc/TS.pyx":259
* cdef PetscMat Pmat=Jmat
* if P is not None: Pmat = P.mat
* if jacobian is not None: # <<<<<<<<<<<<<<
@@ -177358,7 +188284,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/TS.pyx":239
+ /* "PETSc/TS.pyx":260
* if P is not None: Pmat = P.mat
* if jacobian is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -177372,7 +188298,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/TS.pyx":240
+ /* "PETSc/TS.pyx":261
* if jacobian is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -177382,20 +188308,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 240, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 261, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
}
- /* "PETSc/TS.pyx":241
+ /* "PETSc/TS.pyx":262
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (jacobian, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__ijacobian__', context)
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, TS_IJacobian, <void*>context) )
*/
- __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 241, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 262, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_jacobian);
__Pyx_GIVEREF(__pyx_v_jacobian);
@@ -177409,27 +188335,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
__pyx_v_context = ((PyObject*)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/TS.pyx":242
+ /* "PETSc/TS.pyx":263
* if kargs is None: kargs = {}
* context = (jacobian, args, kargs)
* self.set_attr('__ijacobian__', context) # <<<<<<<<<<<<<<
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, TS_IJacobian, <void*>context) )
* else:
*/
- __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ijacobian__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 242, __pyx_L1_error)
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ijacobian__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 263, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":243
+ /* "PETSc/TS.pyx":264
* context = (jacobian, args, kargs)
* self.set_attr('__ijacobian__', context)
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, TS_IJacobian, <void*>context) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TS_IJacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 243, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TS_IJacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 264, __pyx_L1_error)
- /* "PETSc/TS.pyx":238
+ /* "PETSc/TS.pyx":259
* cdef PetscMat Pmat=Jmat
* if P is not None: Pmat = P.mat
* if jacobian is not None: # <<<<<<<<<<<<<<
@@ -177439,7 +188365,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
goto __pyx_L5;
}
- /* "PETSc/TS.pyx":245
+ /* "PETSc/TS.pyx":266
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, TS_IJacobian, <void*>context) )
* else:
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, NULL, NULL) ) # <<<<<<<<<<<<<<
@@ -177447,11 +188373,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
* def computeIFunction(self,
*/
/*else*/ {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, NULL, NULL)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 245, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetIJacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 266, __pyx_L1_error)
}
__pyx_L5:;
- /* "PETSc/TS.pyx":233
+ /* "PETSc/TS.pyx":254
* CHKERR( TSSetIFunction(self.ts, fvec, NULL, NULL) )
*
* def setIJacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -177475,18 +188401,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_52setIJacobian(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":247
+/* "PETSc/TS.pyx":268
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*
* def computeIFunction(self, # <<<<<<<<<<<<<<
- * t, Vec x not None, Vec xdot not None,
- * Vec f not None, imex=False):
+ * t, Vec x, Vec xdot,
+ * Vec f, imex=False):
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_54computeIFunction[] = "TS.computeIFunction(self, t, Vec x, Vec xdot, Vec f, imex=False)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_59computeIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_58computeIFunction[] = "TS.computeIFunction(self, t, Vec x, Vec xdot, Vec f, imex=False)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_59computeIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_t = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_xdot = 0;
@@ -177499,10 +188425,10 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__py
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,&__pyx_n_s_x,&__pyx_n_s_xdot,&__pyx_n_s_f,&__pyx_n_s_imex,0};
PyObject* values[5] = {0,0,0,0,0};
- /* "PETSc/TS.pyx":249
+ /* "PETSc/TS.pyx":270
* def computeIFunction(self,
- * t, Vec x not None, Vec xdot not None,
- * Vec f not None, imex=False): # <<<<<<<<<<<<<<
+ * t, Vec x, Vec xdot,
+ * Vec f, imex=False): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(t)
* cdef PetscBool bval = imex
*/
@@ -177512,10 +188438,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -177524,21 +188455,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, 1); __PYX_ERR(37, 247, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, 1); __PYX_ERR(37, 268, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xdot)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, 2); __PYX_ERR(37, 247, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, 2); __PYX_ERR(37, 268, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, 3); __PYX_ERR(37, 247, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, 3); __PYX_ERR(37, 268, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_imex);
@@ -177546,11 +188481,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeIFunction") < 0)) __PYX_ERR(37, 247, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeIFunction") < 0)) __PYX_ERR(37, 268, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
@@ -177567,23 +188503,23 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 247, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIFunction", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 268, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.computeIFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 248, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdot", 0))) __PYX_ERR(37, 248, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(37, 249, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_54computeIFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_xdot, __pyx_v_f, __pyx_v_imex);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 269, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdot", 0))) __PYX_ERR(37, 269, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(37, 270, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_58computeIFunction(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_xdot, __pyx_v_f, __pyx_v_imex);
- /* "PETSc/TS.pyx":247
+ /* "PETSc/TS.pyx":268
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*
* def computeIFunction(self, # <<<<<<<<<<<<<<
- * t, Vec x not None, Vec xdot not None,
- * Vec f not None, imex=False):
+ * t, Vec x, Vec xdot,
+ * Vec f, imex=False):
*/
/* function exit code */
@@ -177595,7 +188531,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction(PyObject *__py
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_54computeIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_imex) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58computeIFunction(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_imex) {
PetscReal __pyx_v_rval;
PetscBool __pyx_v_bval;
PyObject *__pyx_r = NULL;
@@ -177605,41 +188541,41 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_54computeIFunction(struct PyPetsc
int __pyx_t_3;
__Pyx_RefNannySetupContext("computeIFunction", 0);
- /* "PETSc/TS.pyx":250
- * t, Vec x not None, Vec xdot not None,
- * Vec f not None, imex=False):
+ /* "PETSc/TS.pyx":271
+ * t, Vec x, Vec xdot,
+ * Vec f, imex=False):
* cdef PetscReal rval = asReal(t) # <<<<<<<<<<<<<<
* cdef PetscBool bval = imex
* CHKERR( TSComputeIFunction(self.ts, rval, x.vec, xdot.vec,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 250, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 271, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/TS.pyx":251
- * Vec f not None, imex=False):
+ /* "PETSc/TS.pyx":272
+ * Vec f, imex=False):
* cdef PetscReal rval = asReal(t)
* cdef PetscBool bval = imex # <<<<<<<<<<<<<<
* CHKERR( TSComputeIFunction(self.ts, rval, x.vec, xdot.vec,
* f.vec, bval) )
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_imex)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 251, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_imex)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 272, __pyx_L1_error)
__pyx_v_bval = __pyx_t_2;
- /* "PETSc/TS.pyx":252
+ /* "PETSc/TS.pyx":273
* cdef PetscReal rval = asReal(t)
* cdef PetscBool bval = imex
* CHKERR( TSComputeIFunction(self.ts, rval, x.vec, xdot.vec, # <<<<<<<<<<<<<<
* f.vec, bval) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeIFunction(__pyx_v_self->ts, __pyx_v_rval, __pyx_v_x->vec, __pyx_v_xdot->vec, __pyx_v_f->vec, __pyx_v_bval)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(37, 252, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeIFunction(__pyx_v_self->ts, __pyx_v_rval, __pyx_v_x->vec, __pyx_v_xdot->vec, __pyx_v_f->vec, __pyx_v_bval)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(37, 273, __pyx_L1_error)
- /* "PETSc/TS.pyx":247
+ /* "PETSc/TS.pyx":268
* CHKERR( TSSetIJacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*
* def computeIFunction(self, # <<<<<<<<<<<<<<
- * t, Vec x not None, Vec xdot not None,
- * Vec f not None, imex=False):
+ * t, Vec x, Vec xdot,
+ * Vec f, imex=False):
*/
/* function exit code */
@@ -177654,18 +188590,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_54computeIFunction(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":255
+/* "PETSc/TS.pyx":276
* f.vec, bval) )
*
* def computeIJacobian(self, # <<<<<<<<<<<<<<
- * t, Vec x not None, Vec xdot not None, a,
- * Mat J not None, Mat P=None, imex=False):
+ * t, Vec x, Vec xdot, a,
+ * Mat J, Mat P=None, imex=False):
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_56computeIJacobian[] = "TS.computeIJacobian(self, t, Vec x, Vec xdot, a, Mat J, Mat P=None, imex=False)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_61computeIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_60computeIJacobian[] = "TS.computeIJacobian(self, t, Vec x, Vec xdot, a, Mat J, Mat P=None, imex=False)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_61computeIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_t = 0;
struct PyPetscVecObject *__pyx_v_x = 0;
struct PyPetscVecObject *__pyx_v_xdot = 0;
@@ -177680,10 +188616,10 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__py
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,&__pyx_n_s_x,&__pyx_n_s_xdot,&__pyx_n_s_a,&__pyx_n_s_J,&__pyx_n_s_P,&__pyx_n_s_imex,0};
PyObject* values[7] = {0,0,0,0,0,0,0};
- /* "PETSc/TS.pyx":257
+ /* "PETSc/TS.pyx":278
* def computeIJacobian(self,
- * t, Vec x not None, Vec xdot not None, a,
- * Mat J not None, Mat P=None, imex=False): # <<<<<<<<<<<<<<
+ * t, Vec x, Vec xdot, a,
+ * Mat J, Mat P=None, imex=False): # <<<<<<<<<<<<<<
* cdef PetscReal rval1 = asReal(t)
* cdef PetscReal rval2 = asReal(a)
*/
@@ -177694,12 +188630,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -177708,31 +188651,37 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 1); __PYX_ERR(37, 255, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 1); __PYX_ERR(37, 276, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xdot)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 2); __PYX_ERR(37, 255, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 2); __PYX_ERR(37, 276, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_a)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 3); __PYX_ERR(37, 255, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 3); __PYX_ERR(37, 276, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 4:
if (likely((values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 4); __PYX_ERR(37, 255, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, 4); __PYX_ERR(37, 276, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
if (value) { values[5] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 6:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_imex);
@@ -177740,12 +188689,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeIJacobian") < 0)) __PYX_ERR(37, 255, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeIJacobian") < 0)) __PYX_ERR(37, 276, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
@@ -177765,24 +188716,24 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 255, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeIJacobian", 0, 5, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 276, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.computeIJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 256, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdot", 0))) __PYX_ERR(37, 256, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 257, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 257, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_xdot, __pyx_v_a, __pyx_v_J, __pyx_v_P, __pyx_v_imex);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 277, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdot", 0))) __PYX_ERR(37, 277, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 278, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 278, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_60computeIJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_xdot, __pyx_v_a, __pyx_v_J, __pyx_v_P, __pyx_v_imex);
- /* "PETSc/TS.pyx":255
+ /* "PETSc/TS.pyx":276
* f.vec, bval) )
*
* def computeIJacobian(self, # <<<<<<<<<<<<<<
- * t, Vec x not None, Vec xdot not None, a,
- * Mat J not None, Mat P=None, imex=False):
+ * t, Vec x, Vec xdot, a,
+ * Mat J, Mat P=None, imex=False):
*/
/* function exit code */
@@ -177794,7 +188745,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian(PyObject *__py
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, PyObject *__pyx_v_a, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_imex) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60computeIJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, PyObject *__pyx_v_a, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_imex) {
PetscReal __pyx_v_rval1;
PetscReal __pyx_v_rval2;
PetscBool __pyx_v_bval;
@@ -177810,37 +188761,37 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(struct PyPetsc
int __pyx_t_6;
__Pyx_RefNannySetupContext("computeIJacobian", 0);
- /* "PETSc/TS.pyx":258
- * t, Vec x not None, Vec xdot not None, a,
- * Mat J not None, Mat P=None, imex=False):
+ /* "PETSc/TS.pyx":279
+ * t, Vec x, Vec xdot, a,
+ * Mat J, Mat P=None, imex=False):
* cdef PetscReal rval1 = asReal(t) # <<<<<<<<<<<<<<
* cdef PetscReal rval2 = asReal(a)
* cdef PetscBool bval = imex
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 258, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 279, __pyx_L1_error)
__pyx_v_rval1 = __pyx_t_1;
- /* "PETSc/TS.pyx":259
- * Mat J not None, Mat P=None, imex=False):
+ /* "PETSc/TS.pyx":280
+ * Mat J, Mat P=None, imex=False):
* cdef PetscReal rval1 = asReal(t)
* cdef PetscReal rval2 = asReal(a) # <<<<<<<<<<<<<<
* cdef PetscBool bval = imex
* cdef PetscMat jmat = J.mat, pmat = J.mat
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_a); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 259, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_a); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 280, __pyx_L1_error)
__pyx_v_rval2 = __pyx_t_1;
- /* "PETSc/TS.pyx":260
+ /* "PETSc/TS.pyx":281
* cdef PetscReal rval1 = asReal(t)
* cdef PetscReal rval2 = asReal(a)
* cdef PetscBool bval = imex # <<<<<<<<<<<<<<
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_imex)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 260, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_imex)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 281, __pyx_L1_error)
__pyx_v_bval = __pyx_t_2;
- /* "PETSc/TS.pyx":261
+ /* "PETSc/TS.pyx":282
* cdef PetscReal rval2 = asReal(a)
* cdef PetscBool bval = imex
* cdef PetscMat jmat = J.mat, pmat = J.mat # <<<<<<<<<<<<<<
@@ -177852,7 +188803,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(struct PyPetsc
__pyx_t_3 = __pyx_v_J->mat;
__pyx_v_pmat = __pyx_t_3;
- /* "PETSc/TS.pyx":262
+ /* "PETSc/TS.pyx":283
* cdef PetscBool bval = imex
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat # <<<<<<<<<<<<<<
@@ -177866,21 +188817,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(struct PyPetsc
__pyx_v_pmat = __pyx_t_3;
}
- /* "PETSc/TS.pyx":263
+ /* "PETSc/TS.pyx":284
* cdef PetscMat jmat = J.mat, pmat = J.mat
* if P is not None: pmat = P.mat
* CHKERR( TSComputeIJacobian(self.ts, rval1, x.vec, xdot.vec, rval2, # <<<<<<<<<<<<<<
* jmat, pmat, bval) )
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeIJacobian(__pyx_v_self->ts, __pyx_v_rval1, __pyx_v_x->vec, __pyx_v_xdot->vec, __pyx_v_rval2, __pyx_v_jmat, __pyx_v_pmat, __pyx_v_bval)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(37, 263, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeIJacobian(__pyx_v_self->ts, __pyx_v_rval1, __pyx_v_x->vec, __pyx_v_xdot->vec, __pyx_v_rval2, __pyx_v_jmat, __pyx_v_pmat, __pyx_v_bval)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(37, 284, __pyx_L1_error)
- /* "PETSc/TS.pyx":255
+ /* "PETSc/TS.pyx":276
* f.vec, bval) )
*
* def computeIJacobian(self, # <<<<<<<<<<<<<<
- * t, Vec x not None, Vec xdot not None, a,
- * Mat J not None, Mat P=None, imex=False):
+ * t, Vec x, Vec xdot, a,
+ * Mat J, Mat P=None, imex=False):
*/
/* function exit code */
@@ -177895,7 +188846,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":266
+/* "PETSc/TS.pyx":287
* jmat, pmat, bval) )
*
* def getIFunction(self): # <<<<<<<<<<<<<<
@@ -177904,23 +188855,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_56computeIJacobian(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_59getIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_58getIFunction[] = "TS.getIFunction(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_59getIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_63getIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_62getIFunction[] = "TS.getIFunction(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_63getIFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getIFunction (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getIFunction", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getIFunction", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_62getIFunction(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_62getIFunction(struct PyPetscTSObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_f = 0;
PyObject *__pyx_v_function = 0;
PyObject *__pyx_r = NULL;
@@ -177929,28 +188880,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSOb
int __pyx_t_2;
__Pyx_RefNannySetupContext("getIFunction", 0);
- /* "PETSc/TS.pyx":267
+ /* "PETSc/TS.pyx":288
*
* def getIFunction(self):
* cdef Vec f = Vec() # <<<<<<<<<<<<<<
* CHKERR( TSGetIFunction(self.ts, &f.vec, NULL, NULL) )
* PetscINCREF(f.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 267, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 288, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_f = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":268
+ /* "PETSc/TS.pyx":289
* def getIFunction(self):
* cdef Vec f = Vec()
* CHKERR( TSGetIFunction(self.ts, &f.vec, NULL, NULL) ) # <<<<<<<<<<<<<<
* PetscINCREF(f.obj)
* cdef object function = self.get_attr('__ifunction__')
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetIFunction(__pyx_v_self->ts, (&__pyx_v_f->vec), NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 268, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetIFunction(__pyx_v_self->ts, (&__pyx_v_f->vec), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 289, __pyx_L1_error)
- /* "PETSc/TS.pyx":269
+ /* "PETSc/TS.pyx":290
* cdef Vec f = Vec()
* CHKERR( TSGetIFunction(self.ts, &f.vec, NULL, NULL) )
* PetscINCREF(f.obj) # <<<<<<<<<<<<<<
@@ -177959,19 +188910,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSOb
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_f->__pyx_base.obj);
- /* "PETSc/TS.pyx":270
+ /* "PETSc/TS.pyx":291
* CHKERR( TSGetIFunction(self.ts, &f.vec, NULL, NULL) )
* PetscINCREF(f.obj)
* cdef object function = self.get_attr('__ifunction__') # <<<<<<<<<<<<<<
* return (f, function)
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ifunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 270, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ifunction__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 291, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_function = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":271
+ /* "PETSc/TS.pyx":292
* PetscINCREF(f.obj)
* cdef object function = self.get_attr('__ifunction__')
* return (f, function) # <<<<<<<<<<<<<<
@@ -177979,7 +188930,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSOb
* def getIJacobian(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 271, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 292, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_f));
__Pyx_GIVEREF(((PyObject *)__pyx_v_f));
@@ -177991,7 +188942,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSOb
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":266
+ /* "PETSc/TS.pyx":287
* jmat, pmat, bval) )
*
* def getIFunction(self): # <<<<<<<<<<<<<<
@@ -178012,7 +188963,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":273
+/* "PETSc/TS.pyx":294
* return (f, function)
*
* def getIJacobian(self): # <<<<<<<<<<<<<<
@@ -178021,23 +188972,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_58getIFunction(struct PyPetscTSOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_61getIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_60getIJacobian[] = "TS.getIJacobian(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_61getIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_65getIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_64getIJacobian[] = "TS.getIJacobian(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_65getIJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getIJacobian (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getIJacobian", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getIJacobian", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_60getIJacobian(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_64getIJacobian(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60getIJacobian(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_64getIJacobian(struct PyPetscTSObject *__pyx_v_self) {
struct PyPetscMatObject *__pyx_v_J = 0;
struct PyPetscMatObject *__pyx_v_P = 0;
PyObject *__pyx_v_jacobian = 0;
@@ -178047,32 +188998,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60getIJacobian(struct PyPetscTSOb
int __pyx_t_2;
__Pyx_RefNannySetupContext("getIJacobian", 0);
- /* "PETSc/TS.pyx":274
+ /* "PETSc/TS.pyx":295
*
* def getIJacobian(self):
* cdef Mat J = Mat(), P = Mat() # <<<<<<<<<<<<<<
* CHKERR( TSGetIJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
* PetscINCREF(J.obj); PetscINCREF(P.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 274, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 295, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_J = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 274, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 295, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_P = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":275
+ /* "PETSc/TS.pyx":296
* def getIJacobian(self):
* cdef Mat J = Mat(), P = Mat()
* CHKERR( TSGetIJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) ) # <<<<<<<<<<<<<<
* PetscINCREF(J.obj); PetscINCREF(P.obj)
* cdef object jacobian = self.get_attr('__ijacobian__')
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetIJacobian(__pyx_v_self->ts, (&__pyx_v_J->mat), (&__pyx_v_P->mat), NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 275, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetIJacobian(__pyx_v_self->ts, (&__pyx_v_J->mat), (&__pyx_v_P->mat), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 296, __pyx_L1_error)
- /* "PETSc/TS.pyx":276
+ /* "PETSc/TS.pyx":297
* cdef Mat J = Mat(), P = Mat()
* CHKERR( TSGetIJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
* PetscINCREF(J.obj); PetscINCREF(P.obj) # <<<<<<<<<<<<<<
@@ -178082,27 +189033,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60getIJacobian(struct PyPetscTSOb
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_J->__pyx_base.obj);
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_P->__pyx_base.obj);
- /* "PETSc/TS.pyx":277
+ /* "PETSc/TS.pyx":298
* CHKERR( TSGetIJacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
* PetscINCREF(J.obj); PetscINCREF(P.obj)
* cdef object jacobian = self.get_attr('__ijacobian__') # <<<<<<<<<<<<<<
* return (J, P, jacobian)
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ijacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 277, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__ijacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 298, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_jacobian = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":278
+ /* "PETSc/TS.pyx":299
* PetscINCREF(J.obj); PetscINCREF(P.obj)
* cdef object jacobian = self.get_attr('__ijacobian__')
* return (J, P, jacobian) # <<<<<<<<<<<<<<
*
- * # --- solution vector ---
+ * def setI2Function(self, function, Vec f=None, args=None, kargs=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 278, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 299, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_J));
__Pyx_GIVEREF(((PyObject *)__pyx_v_J));
@@ -178117,7 +189068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60getIJacobian(struct PyPetscTSOb
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":273
+ /* "PETSc/TS.pyx":294
* return (f, function)
*
* def getIJacobian(self): # <<<<<<<<<<<<<<
@@ -178139,59 +189090,101 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_60getIJacobian(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":282
- * # --- solution vector ---
- *
- * def setSolution(self, Vec u not None): # <<<<<<<<<<<<<<
- * CHKERR( TSSetSolution(self.ts, u.vec) )
+/* "PETSc/TS.pyx":301
+ * return (J, P, jacobian)
*
+ * def setI2Function(self, function, Vec f=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * cdef PetscVec fvec=NULL
+ * if f is not None: fvec = f.vec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_63setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_62setSolution[] = "TS.setSolution(self, Vec u)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_63setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- struct PyPetscVecObject *__pyx_v_u = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_67setI2Function(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_66setI2Function[] = "TS.setI2Function(self, function, Vec f=None, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_67setI2Function(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_function = 0;
+ struct PyPetscVecObject *__pyx_v_f = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setSolution (wrapper)", 0);
+ __Pyx_RefNannySetupContext("setI2Function (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_u,0};
- PyObject* values[1] = {0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_function,&__pyx_n_s_f,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[4] = {0,0,0,0};
+ values[1] = (PyObject *)((struct PyPetscVecObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u)) != 0)) kw_args--;
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_function)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[3] = value; kw_args--; }
+ }
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSolution") < 0)) __PYX_ERR(37, 282, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setI2Function") < 0)) __PYX_ERR(37, 301, __pyx_L3_error)
}
- } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
- goto __pyx_L5_argtuple_error;
} else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
}
- __pyx_v_u = ((struct PyPetscVecObject *)values[0]);
+ __pyx_v_function = values[0];
+ __pyx_v_f = ((struct PyPetscVecObject *)values[1]);
+ __pyx_v_args = values[2];
+ __pyx_v_kargs = values[3];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setSolution", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 282, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setI2Function", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 301, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setI2Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "u", 0))) __PYX_ERR(37, 282, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_62setSolution(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_u);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "f", 0))) __PYX_ERR(37, 301, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_66setI2Function(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_function, __pyx_v_f, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
goto __pyx_L0;
@@ -178202,499 +189195,580 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_63setSolution(PyObject *__pyx_v_s
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_62setSolution(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_66setI2Function(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_function, struct PyPetscVecObject *__pyx_v_f, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ Vec __pyx_v_fvec;
+ PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- __Pyx_RefNannySetupContext("setSolution", 0);
-
- /* "PETSc/TS.pyx":283
- *
- * def setSolution(self, Vec u not None):
- * CHKERR( TSSetSolution(self.ts, u.vec) ) # <<<<<<<<<<<<<<
- *
- * def getSolution(self):
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetSolution(__pyx_v_self->ts, __pyx_v_u->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 283, __pyx_L1_error)
-
- /* "PETSc/TS.pyx":282
- * # --- solution vector ---
- *
- * def setSolution(self, Vec u not None): # <<<<<<<<<<<<<<
- * CHKERR( TSSetSolution(self.ts, u.vec) )
- *
- */
-
- /* function exit code */
- __pyx_r = Py_None; __Pyx_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = NULL;
- __pyx_L0:;
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-/* "PETSc/TS.pyx":285
- * CHKERR( TSSetSolution(self.ts, u.vec) )
- *
- * def getSolution(self): # <<<<<<<<<<<<<<
- * cdef Vec u = Vec()
- * CHKERR( TSGetSolution(self.ts, &u.vec) )
- */
-
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_65getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_64getSolution[] = "TS.getSolution(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_65getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getSolution (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getSolution", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSolution", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_64getSolution(((struct PyPetscTSObject *)__pyx_v_self));
-
- /* function exit code */
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_64getSolution(struct PyPetscTSObject *__pyx_v_self) {
- struct PyPetscVecObject *__pyx_v_u = 0;
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
- __Pyx_RefNannySetupContext("getSolution", 0);
+ Vec __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ int __pyx_t_5;
+ __Pyx_RefNannySetupContext("setI2Function", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":286
+ /* "PETSc/TS.pyx":302
*
- * def getSolution(self):
- * cdef Vec u = Vec() # <<<<<<<<<<<<<<
- * CHKERR( TSGetSolution(self.ts, &u.vec) )
- * PetscINCREF(u.obj)
+ * def setI2Function(self, function, Vec f=None, args=None, kargs=None):
+ * cdef PetscVec fvec=NULL # <<<<<<<<<<<<<<
+ * if f is not None: fvec = f.vec
+ * if function is not None:
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 286, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_v_u = ((struct PyPetscVecObject *)__pyx_t_1);
- __pyx_t_1 = 0;
+ __pyx_v_fvec = NULL;
- /* "PETSc/TS.pyx":287
- * def getSolution(self):
- * cdef Vec u = Vec()
- * CHKERR( TSGetSolution(self.ts, &u.vec) ) # <<<<<<<<<<<<<<
- * PetscINCREF(u.obj)
- * return u
+ /* "PETSc/TS.pyx":303
+ * def setI2Function(self, function, Vec f=None, args=None, kargs=None):
+ * cdef PetscVec fvec=NULL
+ * if f is not None: fvec = f.vec # <<<<<<<<<<<<<<
+ * if function is not None:
+ * if args is None: args = ()
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSolution(__pyx_v_self->ts, (&__pyx_v_u->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 287, __pyx_L1_error)
+ __pyx_t_1 = (((PyObject *)__pyx_v_f) != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __pyx_v_f->vec;
+ __pyx_v_fvec = __pyx_t_3;
+ }
- /* "PETSc/TS.pyx":288
- * cdef Vec u = Vec()
- * CHKERR( TSGetSolution(self.ts, &u.vec) )
- * PetscINCREF(u.obj) # <<<<<<<<<<<<<<
- * return u
- *
+ /* "PETSc/TS.pyx":304
+ * cdef PetscVec fvec=NULL
+ * if f is not None: fvec = f.vec
+ * if function is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
*/
- __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_u->__pyx_base.obj);
+ __pyx_t_2 = (__pyx_v_function != Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
- /* "PETSc/TS.pyx":289
- * CHKERR( TSGetSolution(self.ts, &u.vec) )
- * PetscINCREF(u.obj)
- * return u # <<<<<<<<<<<<<<
- *
- * # --- inner solver ---
+ /* "PETSc/TS.pyx":305
+ * if f is not None: fvec = f.vec
+ * if function is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (function, args, kargs)
*/
- __Pyx_XDECREF(__pyx_r);
- __Pyx_INCREF(((PyObject *)__pyx_v_u));
- __pyx_r = ((PyObject *)__pyx_v_u);
- goto __pyx_L0;
+ __pyx_t_1 = (__pyx_v_args == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
- /* "PETSc/TS.pyx":285
- * CHKERR( TSSetSolution(self.ts, u.vec) )
- *
- * def getSolution(self): # <<<<<<<<<<<<<<
- * cdef Vec u = Vec()
- * CHKERR( TSGetSolution(self.ts, &u.vec) )
+ /* "PETSc/TS.pyx":306
+ * if function is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (function, args, kargs)
+ * self.set_attr('__i2function__', context)
*/
+ __pyx_t_2 = (__pyx_v_kargs == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 306, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
+ __pyx_t_4 = 0;
+ }
- /* function exit code */
- __pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = NULL;
- __pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_u);
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-/* "PETSc/TS.pyx":293
- * # --- inner solver ---
- *
- * def getSNES(self): # <<<<<<<<<<<<<<
- * cdef SNES snes = SNES()
- * CHKERR( TSGetSNES(self.ts, &snes.snes) )
+ /* "PETSc/TS.pyx":307
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (function, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__i2function__', context)
+ * CHKERR( TSSetI2Function(self.ts, fvec, TS_I2Function, <void*>context) )
*/
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 307, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_INCREF(__pyx_v_function);
+ __Pyx_GIVEREF(__pyx_v_function);
+ PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_function);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_4);
+ __pyx_t_4 = 0;
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_67getSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_66getSNES[] = "TS.getSNES(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_67getSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getSNES (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getSNES", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSNES", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_66getSNES(((struct PyPetscTSObject *)__pyx_v_self));
-
- /* function exit code */
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_66getSNES(struct PyPetscTSObject *__pyx_v_self) {
- struct PyPetscSNESObject *__pyx_v_snes = 0;
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
- int __pyx_t_2;
- __Pyx_RefNannySetupContext("getSNES", 0);
-
- /* "PETSc/TS.pyx":294
- *
- * def getSNES(self):
- * cdef SNES snes = SNES() # <<<<<<<<<<<<<<
- * CHKERR( TSGetSNES(self.ts, &snes.snes) )
- * PetscINCREF(snes.obj)
+ /* "PETSc/TS.pyx":308
+ * if kargs is None: kargs = {}
+ * context = (function, args, kargs)
+ * self.set_attr('__i2function__', context) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetI2Function(self.ts, fvec, TS_I2Function, <void*>context) )
+ * else:
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 294, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_v_snes = ((struct PyPetscSNESObject *)__pyx_t_1);
- __pyx_t_1 = 0;
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__i2function__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 308, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":295
- * def getSNES(self):
- * cdef SNES snes = SNES()
- * CHKERR( TSGetSNES(self.ts, &snes.snes) ) # <<<<<<<<<<<<<<
- * PetscINCREF(snes.obj)
- * return snes
+ /* "PETSc/TS.pyx":309
+ * context = (function, args, kargs)
+ * self.set_attr('__i2function__', context)
+ * CHKERR( TSSetI2Function(self.ts, fvec, TS_I2Function, <void*>context) ) # <<<<<<<<<<<<<<
+ * else:
+ * CHKERR( TSSetI2Function(self.ts, fvec, NULL, NULL) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSNES(__pyx_v_self->ts, (&__pyx_v_snes->snes))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 295, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetI2Function(__pyx_v_self->ts, __pyx_v_fvec, __pyx_f_8petsc4py_5PETSc_TS_I2Function, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 309, __pyx_L1_error)
- /* "PETSc/TS.pyx":296
- * cdef SNES snes = SNES()
- * CHKERR( TSGetSNES(self.ts, &snes.snes) )
- * PetscINCREF(snes.obj) # <<<<<<<<<<<<<<
- * return snes
- *
+ /* "PETSc/TS.pyx":304
+ * cdef PetscVec fvec=NULL
+ * if f is not None: fvec = f.vec
+ * if function is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
*/
- __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_snes->__pyx_base.obj);
+ goto __pyx_L4;
+ }
- /* "PETSc/TS.pyx":297
- * CHKERR( TSGetSNES(self.ts, &snes.snes) )
- * PetscINCREF(snes.obj)
- * return snes # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":311
+ * CHKERR( TSSetI2Function(self.ts, fvec, TS_I2Function, <void*>context) )
+ * else:
+ * CHKERR( TSSetI2Function(self.ts, fvec, NULL, NULL) ) # <<<<<<<<<<<<<<
*
- * def getKSP(self):
+ * def setI2Jacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
*/
- __Pyx_XDECREF(__pyx_r);
- __Pyx_INCREF(((PyObject *)__pyx_v_snes));
- __pyx_r = ((PyObject *)__pyx_v_snes);
- goto __pyx_L0;
+ /*else*/ {
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetI2Function(__pyx_v_self->ts, __pyx_v_fvec, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 311, __pyx_L1_error)
+ }
+ __pyx_L4:;
- /* "PETSc/TS.pyx":293
- * # --- inner solver ---
+ /* "PETSc/TS.pyx":301
+ * return (J, P, jacobian)
*
- * def getSNES(self): # <<<<<<<<<<<<<<
- * cdef SNES snes = SNES()
- * CHKERR( TSGetSNES(self.ts, &snes.snes) )
+ * def setI2Function(self, function, Vec f=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * cdef PetscVec fvec=NULL
+ * if f is not None: fvec = f.vec
*/
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getSNES", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setI2Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_snes);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":299
- * return snes
+/* "PETSc/TS.pyx":313
+ * CHKERR( TSSetI2Function(self.ts, fvec, NULL, NULL) )
*
- * def getKSP(self): # <<<<<<<<<<<<<<
- * cdef KSP ksp = KSP()
- * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
+ * def setI2Jacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * cdef PetscMat Jmat=NULL
+ * if J is not None: Jmat = J.mat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_69getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_68getKSP[] = "TS.getKSP(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_69getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_69setI2Jacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_68setI2Jacobian[] = "TS.setI2Jacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_69setI2Jacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_jacobian = 0;
+ struct PyPetscMatObject *__pyx_v_J = 0;
+ struct PyPetscMatObject *__pyx_v_P = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getKSP (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getKSP", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getKSP", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_68getKSP(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RefNannySetupContext("setI2Jacobian (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_jacobian,&__pyx_n_s_J,&__pyx_n_s_P,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[5] = {0,0,0,0,0};
+ values[1] = (PyObject *)((struct PyPetscMatObject *)Py_None);
+ values[2] = (PyObject *)((struct PyPetscMatObject *)Py_None);
+ values[3] = ((PyObject *)Py_None);
+ values[4] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[3] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 4:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[4] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setI2Jacobian") < 0)) __PYX_ERR(37, 313, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_jacobian = values[0];
+ __pyx_v_J = ((struct PyPetscMatObject *)values[1]);
+ __pyx_v_P = ((struct PyPetscMatObject *)values[2]);
+ __pyx_v_args = values[3];
+ __pyx_v_kargs = values[4];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setI2Jacobian", 0, 1, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 313, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setI2Jacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "J", 0))) __PYX_ERR(37, 313, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 313, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_68setI2Jacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_jacobian, __pyx_v_J, __pyx_v_P, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_68getKSP(struct PyPetscTSObject *__pyx_v_self) {
- struct PyPetscKSPObject *__pyx_v_ksp = 0;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_68setI2Jacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_jacobian, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ Mat __pyx_v_Jmat;
+ Mat __pyx_v_Pmat;
+ PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_1;
int __pyx_t_2;
- __Pyx_RefNannySetupContext("getKSP", 0);
+ Mat __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ int __pyx_t_5;
+ __Pyx_RefNannySetupContext("setI2Jacobian", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":300
+ /* "PETSc/TS.pyx":314
*
- * def getKSP(self):
- * cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
- * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
- * PetscINCREF(ksp.obj)
+ * def setI2Jacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
+ * cdef PetscMat Jmat=NULL # <<<<<<<<<<<<<<
+ * if J is not None: Jmat = J.mat
+ * cdef PetscMat Pmat=Jmat
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 300, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
- __pyx_t_1 = 0;
+ __pyx_v_Jmat = NULL;
- /* "PETSc/TS.pyx":301
- * def getKSP(self):
- * cdef KSP ksp = KSP()
- * CHKERR( TSGetKSP(self.ts, &ksp.ksp) ) # <<<<<<<<<<<<<<
- * PetscINCREF(ksp.obj)
- * return ksp
+ /* "PETSc/TS.pyx":315
+ * def setI2Jacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None):
+ * cdef PetscMat Jmat=NULL
+ * if J is not None: Jmat = J.mat # <<<<<<<<<<<<<<
+ * cdef PetscMat Pmat=Jmat
+ * if P is not None: Pmat = P.mat
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetKSP(__pyx_v_self->ts, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 301, __pyx_L1_error)
+ __pyx_t_1 = (((PyObject *)__pyx_v_J) != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __pyx_v_J->mat;
+ __pyx_v_Jmat = __pyx_t_3;
+ }
- /* "PETSc/TS.pyx":302
- * cdef KSP ksp = KSP()
- * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
- * PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
- * return ksp
- *
+ /* "PETSc/TS.pyx":316
+ * cdef PetscMat Jmat=NULL
+ * if J is not None: Jmat = J.mat
+ * cdef PetscMat Pmat=Jmat # <<<<<<<<<<<<<<
+ * if P is not None: Pmat = P.mat
+ * if jacobian is not None:
*/
- __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
+ __pyx_v_Pmat = __pyx_v_Jmat;
- /* "PETSc/TS.pyx":303
- * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
- * PetscINCREF(ksp.obj)
- * return ksp # <<<<<<<<<<<<<<
- *
- * # --- discretization space ---
+ /* "PETSc/TS.pyx":317
+ * if J is not None: Jmat = J.mat
+ * cdef PetscMat Pmat=Jmat
+ * if P is not None: Pmat = P.mat # <<<<<<<<<<<<<<
+ * if jacobian is not None:
+ * if args is None: args = ()
*/
- __Pyx_XDECREF(__pyx_r);
- __Pyx_INCREF(((PyObject *)__pyx_v_ksp));
- __pyx_r = ((PyObject *)__pyx_v_ksp);
- goto __pyx_L0;
+ __pyx_t_2 = (((PyObject *)__pyx_v_P) != Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __pyx_t_3 = __pyx_v_P->mat;
+ __pyx_v_Pmat = __pyx_t_3;
+ }
- /* "PETSc/TS.pyx":299
- * return snes
- *
- * def getKSP(self): # <<<<<<<<<<<<<<
- * cdef KSP ksp = KSP()
- * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
+ /* "PETSc/TS.pyx":318
+ * cdef PetscMat Pmat=Jmat
+ * if P is not None: Pmat = P.mat
+ * if jacobian is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
*/
+ __pyx_t_1 = (__pyx_v_jacobian != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
- /* function exit code */
- __pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getKSP", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = NULL;
- __pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_ksp);
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-/* "PETSc/TS.pyx":307
- * # --- discretization space ---
- *
- * def getDM(self): # <<<<<<<<<<<<<<
- * cdef PetscDM newdm = NULL
- * CHKERR( TSGetDM(self.ts, &newdm) )
+ /* "PETSc/TS.pyx":319
+ * if P is not None: Pmat = P.mat
+ * if jacobian is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (jacobian, args, kargs)
*/
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_71getDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_70getDM[] = "TS.getDM(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_71getDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getDM (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getDM", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDM", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_70getDM(((struct PyPetscTSObject *)__pyx_v_self));
-
- /* function exit code */
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_70getDM(struct PyPetscTSObject *__pyx_v_self) {
- DM __pyx_v_newdm;
- struct PyPetscDMObject *__pyx_v_dm = 0;
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- int __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- PyObject *__pyx_t_3 = NULL;
- __Pyx_RefNannySetupContext("getDM", 0);
-
- /* "PETSc/TS.pyx":308
- *
- * def getDM(self):
- * cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
- * CHKERR( TSGetDM(self.ts, &newdm) )
- * cdef DM dm = subtype_DM(newdm)()
+ /* "PETSc/TS.pyx":320
+ * if jacobian is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (jacobian, args, kargs)
+ * self.set_attr('__i2jacobian__', context)
*/
- __pyx_v_newdm = NULL;
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 320, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
+ __pyx_t_4 = 0;
+ }
- /* "PETSc/TS.pyx":309
- * def getDM(self):
- * cdef PetscDM newdm = NULL
- * CHKERR( TSGetDM(self.ts, &newdm) ) # <<<<<<<<<<<<<<
- * cdef DM dm = subtype_DM(newdm)()
- * dm.dm = newdm
+ /* "PETSc/TS.pyx":321
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (jacobian, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__i2jacobian__', context)
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, TS_I2Jacobian, <void*>context) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDM(__pyx_v_self->ts, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 309, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 321, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_INCREF(__pyx_v_jacobian);
+ __Pyx_GIVEREF(__pyx_v_jacobian);
+ PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_jacobian);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_4);
+ __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":310
- * cdef PetscDM newdm = NULL
- * CHKERR( TSGetDM(self.ts, &newdm) )
- * cdef DM dm = subtype_DM(newdm)() # <<<<<<<<<<<<<<
- * dm.dm = newdm
- * PetscINCREF(dm.obj)
+ /* "PETSc/TS.pyx":322
+ * if kargs is None: kargs = {}
+ * context = (jacobian, args, kargs)
+ * self.set_attr('__i2jacobian__', context) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, TS_I2Jacobian, <void*>context) )
+ * else:
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 310, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 310, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(37, 310, __pyx_L1_error)
- __pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_3);
- __pyx_t_3 = 0;
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__i2jacobian__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 322, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":311
- * CHKERR( TSGetDM(self.ts, &newdm) )
- * cdef DM dm = subtype_DM(newdm)()
- * dm.dm = newdm # <<<<<<<<<<<<<<
- * PetscINCREF(dm.obj)
- * return dm
+ /* "PETSc/TS.pyx":323
+ * context = (jacobian, args, kargs)
+ * self.set_attr('__i2jacobian__', context)
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, TS_I2Jacobian, <void*>context) ) # <<<<<<<<<<<<<<
+ * else:
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*/
- __pyx_v_dm->dm = __pyx_v_newdm;
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetI2Jacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TS_I2Jacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 323, __pyx_L1_error)
- /* "PETSc/TS.pyx":312
- * cdef DM dm = subtype_DM(newdm)()
- * dm.dm = newdm
- * PetscINCREF(dm.obj) # <<<<<<<<<<<<<<
- * return dm
- *
+ /* "PETSc/TS.pyx":318
+ * cdef PetscMat Pmat=Jmat
+ * if P is not None: Pmat = P.mat
+ * if jacobian is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
*/
- __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_dm->__pyx_base.obj);
+ goto __pyx_L5;
+ }
- /* "PETSc/TS.pyx":313
- * dm.dm = newdm
- * PetscINCREF(dm.obj)
- * return dm # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":325
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, TS_I2Jacobian, <void*>context) )
+ * else:
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, NULL, NULL) ) # <<<<<<<<<<<<<<
*
- * def setDM(self, DM dm not None):
+ * def computeI2Function(self, t, Vec x, Vec xdot, Vec xdotdot, Vec f):
*/
- __Pyx_XDECREF(__pyx_r);
- __Pyx_INCREF(((PyObject *)__pyx_v_dm));
- __pyx_r = ((PyObject *)__pyx_v_dm);
- goto __pyx_L0;
+ /*else*/ {
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetI2Jacobian(__pyx_v_self->ts, __pyx_v_Jmat, __pyx_v_Pmat, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 325, __pyx_L1_error)
+ }
+ __pyx_L5:;
- /* "PETSc/TS.pyx":307
- * # --- discretization space ---
+ /* "PETSc/TS.pyx":313
+ * CHKERR( TSSetI2Function(self.ts, fvec, NULL, NULL) )
*
- * def getDM(self): # <<<<<<<<<<<<<<
- * cdef PetscDM newdm = NULL
- * CHKERR( TSGetDM(self.ts, &newdm) )
+ * def setI2Jacobian(self, jacobian, Mat J=None, Mat P=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * cdef PetscMat Jmat=NULL
+ * if J is not None: Jmat = J.mat
*/
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_XDECREF(__pyx_t_3);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setI2Jacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_dm);
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":315
- * return dm
- *
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
- * CHKERR( TSSetDM(self.ts, dm.dm) )
+/* "PETSc/TS.pyx":327
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*
+ * def computeI2Function(self, t, Vec x, Vec xdot, Vec xdotdot, Vec f): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSComputeI2Function(self.ts, rval, x.vec, xdot.vec, xdotdot.vec,
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_73setDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_72setDM[] = "TS.setDM(self, DM dm)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_73setDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- struct PyPetscDMObject *__pyx_v_dm = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_71computeI2Function(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_70computeI2Function[] = "TS.computeI2Function(self, t, Vec x, Vec xdot, Vec xdotdot, Vec f)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_71computeI2Function(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_t = 0;
+ struct PyPetscVecObject *__pyx_v_x = 0;
+ struct PyPetscVecObject *__pyx_v_xdot = 0;
+ struct PyPetscVecObject *__pyx_v_xdotdot = 0;
+ struct PyPetscVecObject *__pyx_v_f = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setDM (wrapper)", 0);
+ __Pyx_RefNannySetupContext("computeI2Function (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_dm,0};
- PyObject* values[1] = {0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,&__pyx_n_s_x,&__pyx_n_s_xdot,&__pyx_n_s_xdotdot,&__pyx_n_s_f,0};
+ PyObject* values[5] = {0,0,0,0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dm)) != 0)) kw_args--;
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Function", 1, 5, 5, 1); __PYX_ERR(37, 327, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xdot)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Function", 1, 5, 5, 2); __PYX_ERR(37, 327, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xdotdot)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Function", 1, 5, 5, 3); __PYX_ERR(37, 327, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 4:
+ if (likely((values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Function", 1, 5, 5, 4); __PYX_ERR(37, 327, __pyx_L3_error)
+ }
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDM") < 0)) __PYX_ERR(37, 315, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeI2Function") < 0)) __PYX_ERR(37, 327, __pyx_L3_error)
}
- } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 5) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
}
- __pyx_v_dm = ((struct PyPetscDMObject *)values[0]);
+ __pyx_v_t = values[0];
+ __pyx_v_x = ((struct PyPetscVecObject *)values[1]);
+ __pyx_v_xdot = ((struct PyPetscVecObject *)values[2]);
+ __pyx_v_xdotdot = ((struct PyPetscVecObject *)values[3]);
+ __pyx_v_f = ((struct PyPetscVecObject *)values[4]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 315, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeI2Function", 1, 5, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 327, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.computeI2Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(37, 315, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_72setDM(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_dm);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 327, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdot", 0))) __PYX_ERR(37, 327, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdotdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdotdot", 0))) __PYX_ERR(37, 327, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "f", 0))) __PYX_ERR(37, 327, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_70computeI2Function(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_xdot, __pyx_v_xdotdot, __pyx_v_f);
/* function exit code */
goto __pyx_L0;
@@ -178705,34 +189779,46 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_73setDM(PyObject *__pyx_v_self, P
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_72setDM(struct PyPetscTSObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_70computeI2Function(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_xdotdot, struct PyPetscVecObject *__pyx_v_f) {
+ PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
- __Pyx_RefNannySetupContext("setDM", 0);
+ PetscReal __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("computeI2Function", 0);
- /* "PETSc/TS.pyx":316
- *
- * def setDM(self, DM dm not None):
- * CHKERR( TSSetDM(self.ts, dm.dm) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":328
*
- * # --- customization ---
+ * def computeI2Function(self, t, Vec x, Vec xdot, Vec xdotdot, Vec f):
+ * cdef PetscReal rval = asReal(t) # <<<<<<<<<<<<<<
+ * CHKERR( TSComputeI2Function(self.ts, rval, x.vec, xdot.vec, xdotdot.vec,
+ * f.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetDM(__pyx_v_self->ts, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 316, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 328, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_1;
- /* "PETSc/TS.pyx":315
- * return dm
+ /* "PETSc/TS.pyx":329
+ * def computeI2Function(self, t, Vec x, Vec xdot, Vec xdotdot, Vec f):
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSComputeI2Function(self.ts, rval, x.vec, xdot.vec, xdotdot.vec, # <<<<<<<<<<<<<<
+ * f.vec) )
*
- * def setDM(self, DM dm not None): # <<<<<<<<<<<<<<
- * CHKERR( TSSetDM(self.ts, dm.dm) )
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeI2Function(__pyx_v_self->ts, __pyx_v_rval, __pyx_v_x->vec, __pyx_v_xdot->vec, __pyx_v_xdotdot->vec, __pyx_v_f->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 329, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":327
+ * CHKERR( TSSetI2Jacobian(self.ts, Jmat, Pmat, NULL, NULL) )
*
+ * def computeI2Function(self, t, Vec x, Vec xdot, Vec xdotdot, Vec f): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSComputeI2Function(self.ts, rval, x.vec, xdot.vec, xdotdot.vec,
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.computeI2Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -178740,30 +189826,53 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_72setDM(struct PyPetscTSObject *_
return __pyx_r;
}
-/* "PETSc/TS.pyx":320
- * # --- customization ---
+/* "PETSc/TS.pyx":332
+ * f.vec) )
*
- * def setTime(self, t): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(t)
- * CHKERR( TSSetTime(self.ts, rval) )
+ * def computeI2Jacobian(self, t, Vec x, Vec xdot, Vec xdotdot, v, a, Mat J, Mat P=None): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval1 = asReal(t)
+ * cdef PetscReal rval2 = asReal(v)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_75setTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_74setTime[] = "TS.setTime(self, t)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_75setTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_73computeI2Jacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_72computeI2Jacobian[] = "TS.computeI2Jacobian(self, t, Vec x, Vec xdot, Vec xdotdot, v, a, Mat J, Mat P=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_73computeI2Jacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_t = 0;
+ struct PyPetscVecObject *__pyx_v_x = 0;
+ struct PyPetscVecObject *__pyx_v_xdot = 0;
+ struct PyPetscVecObject *__pyx_v_xdotdot = 0;
+ PyObject *__pyx_v_v = 0;
+ PyObject *__pyx_v_a = 0;
+ struct PyPetscMatObject *__pyx_v_J = 0;
+ struct PyPetscMatObject *__pyx_v_P = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setTime (wrapper)", 0);
+ __Pyx_RefNannySetupContext("computeI2Jacobian (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,0};
- PyObject* values[1] = {0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,&__pyx_n_s_x,&__pyx_n_s_xdot,&__pyx_n_s_xdotdot,&__pyx_n_s_v,&__pyx_n_s_a,&__pyx_n_s_J,&__pyx_n_s_P,0};
+ PyObject* values[8] = {0,0,0,0,0,0,0,0};
+ values[7] = (PyObject *)((struct PyPetscMatObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
+ CYTHON_FALLTHROUGH;
+ case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
+ case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -178772,72 +189881,193 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_75setTime(PyObject *__pyx_v_self,
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Jacobian", 0, 7, 8, 1); __PYX_ERR(37, 332, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xdot)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Jacobian", 0, 7, 8, 2); __PYX_ERR(37, 332, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xdotdot)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Jacobian", 0, 7, 8, 3); __PYX_ERR(37, 332, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 4:
+ if (likely((values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Jacobian", 0, 7, 8, 4); __PYX_ERR(37, 332, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 5:
+ if (likely((values[5] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_a)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Jacobian", 0, 7, 8, 5); __PYX_ERR(37, 332, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 6:
+ if (likely((values[6] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("computeI2Jacobian", 0, 7, 8, 6); __PYX_ERR(37, 332, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 7:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
+ if (value) { values[7] = value; kw_args--; }
+ }
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTime") < 0)) __PYX_ERR(37, 320, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeI2Jacobian") < 0)) __PYX_ERR(37, 332, __pyx_L3_error)
}
- } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
- goto __pyx_L5_argtuple_error;
} else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
+ CYTHON_FALLTHROUGH;
+ case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
}
__pyx_v_t = values[0];
+ __pyx_v_x = ((struct PyPetscVecObject *)values[1]);
+ __pyx_v_xdot = ((struct PyPetscVecObject *)values[2]);
+ __pyx_v_xdotdot = ((struct PyPetscVecObject *)values[3]);
+ __pyx_v_v = values[4];
+ __pyx_v_a = values[5];
+ __pyx_v_J = ((struct PyPetscMatObject *)values[6]);
+ __pyx_v_P = ((struct PyPetscMatObject *)values[7]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTime", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 320, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeI2Jacobian", 0, 7, 8, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 332, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.computeI2Jacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_74setTime(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 332, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdot", 0))) __PYX_ERR(37, 332, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_xdotdot), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "xdotdot", 0))) __PYX_ERR(37, 332, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 332, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_P), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "P", 0))) __PYX_ERR(37, 332, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_72computeI2Jacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_xdot, __pyx_v_xdotdot, __pyx_v_v, __pyx_v_a, __pyx_v_J, __pyx_v_P);
/* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_74setTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t) {
- PetscReal __pyx_v_rval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_72computeI2Jacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscVecObject *__pyx_v_xdot, struct PyPetscVecObject *__pyx_v_xdotdot, PyObject *__pyx_v_v, PyObject *__pyx_v_a, struct PyPetscMatObject *__pyx_v_J, struct PyPetscMatObject *__pyx_v_P) {
+ PetscReal __pyx_v_rval1;
+ PetscReal __pyx_v_rval2;
+ PetscReal __pyx_v_rval3;
+ Mat __pyx_v_jmat;
+ Mat __pyx_v_pmat;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PetscReal __pyx_t_1;
- int __pyx_t_2;
- __Pyx_RefNannySetupContext("setTime", 0);
+ Mat __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ int __pyx_t_5;
+ __Pyx_RefNannySetupContext("computeI2Jacobian", 0);
- /* "PETSc/TS.pyx":321
- *
- * def setTime(self, t):
- * cdef PetscReal rval = asReal(t) # <<<<<<<<<<<<<<
- * CHKERR( TSSetTime(self.ts, rval) )
+ /* "PETSc/TS.pyx":333
*
+ * def computeI2Jacobian(self, t, Vec x, Vec xdot, Vec xdotdot, v, a, Mat J, Mat P=None):
+ * cdef PetscReal rval1 = asReal(t) # <<<<<<<<<<<<<<
+ * cdef PetscReal rval2 = asReal(v)
+ * cdef PetscReal rval3 = asReal(a)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 321, __pyx_L1_error)
- __pyx_v_rval = __pyx_t_1;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 333, __pyx_L1_error)
+ __pyx_v_rval1 = __pyx_t_1;
- /* "PETSc/TS.pyx":322
- * def setTime(self, t):
- * cdef PetscReal rval = asReal(t)
- * CHKERR( TSSetTime(self.ts, rval) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":334
+ * def computeI2Jacobian(self, t, Vec x, Vec xdot, Vec xdotdot, v, a, Mat J, Mat P=None):
+ * cdef PetscReal rval1 = asReal(t)
+ * cdef PetscReal rval2 = asReal(v) # <<<<<<<<<<<<<<
+ * cdef PetscReal rval3 = asReal(a)
+ * cdef PetscMat jmat = J.mat, pmat = J.mat
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_v); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 334, __pyx_L1_error)
+ __pyx_v_rval2 = __pyx_t_1;
+
+ /* "PETSc/TS.pyx":335
+ * cdef PetscReal rval1 = asReal(t)
+ * cdef PetscReal rval2 = asReal(v)
+ * cdef PetscReal rval3 = asReal(a) # <<<<<<<<<<<<<<
+ * cdef PetscMat jmat = J.mat, pmat = J.mat
+ * if P is not None: pmat = P.mat
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_a); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 335, __pyx_L1_error)
+ __pyx_v_rval3 = __pyx_t_1;
+
+ /* "PETSc/TS.pyx":336
+ * cdef PetscReal rval2 = asReal(v)
+ * cdef PetscReal rval3 = asReal(a)
+ * cdef PetscMat jmat = J.mat, pmat = J.mat # <<<<<<<<<<<<<<
+ * if P is not None: pmat = P.mat
+ * CHKERR( TSComputeI2Jacobian(self.ts, rval1, x.vec, xdot.vec, xdotdot.vec, rval2, rval3,
+ */
+ __pyx_t_2 = __pyx_v_J->mat;
+ __pyx_v_jmat = __pyx_t_2;
+ __pyx_t_2 = __pyx_v_J->mat;
+ __pyx_v_pmat = __pyx_t_2;
+
+ /* "PETSc/TS.pyx":337
+ * cdef PetscReal rval3 = asReal(a)
+ * cdef PetscMat jmat = J.mat, pmat = J.mat
+ * if P is not None: pmat = P.mat # <<<<<<<<<<<<<<
+ * CHKERR( TSComputeI2Jacobian(self.ts, rval1, x.vec, xdot.vec, xdotdot.vec, rval2, rval3,
+ * jmat, pmat) )
+ */
+ __pyx_t_3 = (((PyObject *)__pyx_v_P) != Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ __pyx_t_2 = __pyx_v_P->mat;
+ __pyx_v_pmat = __pyx_t_2;
+ }
+
+ /* "PETSc/TS.pyx":338
+ * cdef PetscMat jmat = J.mat, pmat = J.mat
+ * if P is not None: pmat = P.mat
+ * CHKERR( TSComputeI2Jacobian(self.ts, rval1, x.vec, xdot.vec, xdotdot.vec, rval2, rval3, # <<<<<<<<<<<<<<
+ * jmat, pmat) )
*
- * def getTime(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetTime(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 322, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSComputeI2Jacobian(__pyx_v_self->ts, __pyx_v_rval1, __pyx_v_x->vec, __pyx_v_xdot->vec, __pyx_v_xdotdot->vec, __pyx_v_rval2, __pyx_v_rval3, __pyx_v_jmat, __pyx_v_pmat)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 338, __pyx_L1_error)
- /* "PETSc/TS.pyx":320
- * # --- customization ---
+ /* "PETSc/TS.pyx":332
+ * f.vec) )
*
- * def setTime(self, t): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(t)
- * CHKERR( TSSetTime(self.ts, rval) )
+ * def computeI2Jacobian(self, t, Vec x, Vec xdot, Vec xdotdot, v, a, Mat J, Mat P=None): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval1 = asReal(t)
+ * cdef PetscReal rval2 = asReal(v)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.computeI2Jacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -178845,300 +190075,489 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_74setTime(struct PyPetscTSObject
return __pyx_r;
}
-/* "PETSc/TS.pyx":324
- * CHKERR( TSSetTime(self.ts, rval) )
+/* "PETSc/TS.pyx":341
+ * jmat, pmat) )
*
- * def getTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetTime(self.ts, &rval) )
+ * def getI2Function(self): # <<<<<<<<<<<<<<
+ * cdef Vec f = Vec()
+ * CHKERR( TSGetI2Function(self.ts, &f.vec, NULL, NULL) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_77getTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_76getTime[] = "TS.getTime(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_77getTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_75getI2Function(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_74getI2Function[] = "TS.getI2Function(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_75getI2Function(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getTime (wrapper)", 0);
+ __Pyx_RefNannySetupContext("getI2Function (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTime", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_76getTime(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("getI2Function", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getI2Function", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_74getI2Function(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_76getTime(struct PyPetscTSObject *__pyx_v_self) {
- PetscReal __pyx_v_rval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_74getI2Function(struct PyPetscTSObject *__pyx_v_self) {
+ struct PyPetscVecObject *__pyx_v_f = 0;
+ PyObject *__pyx_v_function = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getTime", 0);
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getI2Function", 0);
- /* "PETSc/TS.pyx":325
+ /* "PETSc/TS.pyx":342
*
- * def getTime(self):
- * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetTime(self.ts, &rval) )
- * return toReal(rval)
+ * def getI2Function(self):
+ * cdef Vec f = Vec() # <<<<<<<<<<<<<<
+ * CHKERR( TSGetI2Function(self.ts, &f.vec, NULL, NULL) )
+ * PetscINCREF(f.obj)
*/
- __pyx_v_rval = 0.0;
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 342, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_f = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":326
- * def getTime(self):
- * cdef PetscReal rval = 0
- * CHKERR( TSGetTime(self.ts, &rval) ) # <<<<<<<<<<<<<<
- * return toReal(rval)
- *
+ /* "PETSc/TS.pyx":343
+ * def getI2Function(self):
+ * cdef Vec f = Vec()
+ * CHKERR( TSGetI2Function(self.ts, &f.vec, NULL, NULL) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(f.obj)
+ * cdef object function = self.get_attr('__i2function__')
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTime(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 326, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetI2Function(__pyx_v_self->ts, (&__pyx_v_f->vec), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 343, __pyx_L1_error)
- /* "PETSc/TS.pyx":327
- * cdef PetscReal rval = 0
- * CHKERR( TSGetTime(self.ts, &rval) )
- * return toReal(rval) # <<<<<<<<<<<<<<
- *
- * def getPrevTime(self):
+ /* "PETSc/TS.pyx":344
+ * cdef Vec f = Vec()
+ * CHKERR( TSGetI2Function(self.ts, &f.vec, NULL, NULL) )
+ * PetscINCREF(f.obj) # <<<<<<<<<<<<<<
+ * cdef object function = self.get_attr('__i2function__')
+ * return (f, function)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_f->__pyx_base.obj);
+
+ /* "PETSc/TS.pyx":345
+ * CHKERR( TSGetI2Function(self.ts, &f.vec, NULL, NULL) )
+ * PetscINCREF(f.obj)
+ * cdef object function = self.get_attr('__i2function__') # <<<<<<<<<<<<<<
+ * return (f, function)
+ *
+ */
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__i2function__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 345, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_function = __pyx_t_1;
+ __pyx_t_1 = 0;
+
+ /* "PETSc/TS.pyx":346
+ * PetscINCREF(f.obj)
+ * cdef object function = self.get_attr('__i2function__')
+ * return (f, function) # <<<<<<<<<<<<<<
+ *
+ * def getI2Jacobian(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 327, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_r = __pyx_t_2;
- __pyx_t_2 = 0;
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 346, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_INCREF(((PyObject *)__pyx_v_f));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_f));
+ PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_f));
+ __Pyx_INCREF(__pyx_v_function);
+ __Pyx_GIVEREF(__pyx_v_function);
+ PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_function);
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":324
- * CHKERR( TSSetTime(self.ts, rval) )
+ /* "PETSc/TS.pyx":341
+ * jmat, pmat) )
*
- * def getTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetTime(self.ts, &rval) )
+ * def getI2Function(self): # <<<<<<<<<<<<<<
+ * cdef Vec f = Vec()
+ * CHKERR( TSGetI2Function(self.ts, &f.vec, NULL, NULL) )
*/
/* function exit code */
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getI2Function", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_f);
+ __Pyx_XDECREF(__pyx_v_function);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":329
- * return toReal(rval)
+/* "PETSc/TS.pyx":348
+ * return (f, function)
*
- * def getPrevTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetPrevTime(self.ts, &rval) )
+ * def getI2Jacobian(self): # <<<<<<<<<<<<<<
+ * cdef Mat J = Mat(), P = Mat()
+ * CHKERR( TSGetI2Jacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_79getPrevTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_78getPrevTime[] = "TS.getPrevTime(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_79getPrevTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_77getI2Jacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_76getI2Jacobian[] = "TS.getI2Jacobian(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_77getI2Jacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getPrevTime (wrapper)", 0);
+ __Pyx_RefNannySetupContext("getI2Jacobian (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getPrevTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPrevTime", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_78getPrevTime(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("getI2Jacobian", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getI2Jacobian", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_76getI2Jacobian(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_78getPrevTime(struct PyPetscTSObject *__pyx_v_self) {
- PetscReal __pyx_v_rval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_76getI2Jacobian(struct PyPetscTSObject *__pyx_v_self) {
+ struct PyPetscMatObject *__pyx_v_J = 0;
+ struct PyPetscMatObject *__pyx_v_P = 0;
+ PyObject *__pyx_v_jacobian = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getPrevTime", 0);
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getI2Jacobian", 0);
- /* "PETSc/TS.pyx":330
+ /* "PETSc/TS.pyx":349
*
- * def getPrevTime(self):
- * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetPrevTime(self.ts, &rval) )
- * return toReal(rval)
+ * def getI2Jacobian(self):
+ * cdef Mat J = Mat(), P = Mat() # <<<<<<<<<<<<<<
+ * CHKERR( TSGetI2Jacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
+ * PetscINCREF(J.obj); PetscINCREF(P.obj)
*/
- __pyx_v_rval = 0.0;
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 349, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_J = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 349, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_P = ((struct PyPetscMatObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":331
- * def getPrevTime(self):
- * cdef PetscReal rval = 0
- * CHKERR( TSGetPrevTime(self.ts, &rval) ) # <<<<<<<<<<<<<<
- * return toReal(rval)
+ /* "PETSc/TS.pyx":350
+ * def getI2Jacobian(self):
+ * cdef Mat J = Mat(), P = Mat()
+ * CHKERR( TSGetI2Jacobian(self.ts, &J.mat, &P.mat, NULL, NULL) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(J.obj); PetscINCREF(P.obj)
+ * cdef object jacobian = self.get_attr('__i2jacobian__')
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetI2Jacobian(__pyx_v_self->ts, (&__pyx_v_J->mat), (&__pyx_v_P->mat), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 350, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":351
+ * cdef Mat J = Mat(), P = Mat()
+ * CHKERR( TSGetI2Jacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
+ * PetscINCREF(J.obj); PetscINCREF(P.obj) # <<<<<<<<<<<<<<
+ * cdef object jacobian = self.get_attr('__i2jacobian__')
+ * return (J, P, jacobian)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_J->__pyx_base.obj);
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_P->__pyx_base.obj);
+
+ /* "PETSc/TS.pyx":352
+ * CHKERR( TSGetI2Jacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
+ * PetscINCREF(J.obj); PetscINCREF(P.obj)
+ * cdef object jacobian = self.get_attr('__i2jacobian__') # <<<<<<<<<<<<<<
+ * return (J, P, jacobian)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetPrevTime(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 331, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__i2jacobian__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 352, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_jacobian = __pyx_t_1;
+ __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":332
- * cdef PetscReal rval = 0
- * CHKERR( TSGetPrevTime(self.ts, &rval) )
- * return toReal(rval) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":353
+ * PetscINCREF(J.obj); PetscINCREF(P.obj)
+ * cdef object jacobian = self.get_attr('__i2jacobian__')
+ * return (J, P, jacobian) # <<<<<<<<<<<<<<
*
- * def getSolveTime(self):
+ * # --- solution vector ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 332, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_r = __pyx_t_2;
- __pyx_t_2 = 0;
+ __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 353, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_INCREF(((PyObject *)__pyx_v_J));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_J));
+ PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_J));
+ __Pyx_INCREF(((PyObject *)__pyx_v_P));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_P));
+ PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_P));
+ __Pyx_INCREF(__pyx_v_jacobian);
+ __Pyx_GIVEREF(__pyx_v_jacobian);
+ PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_jacobian);
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":329
- * return toReal(rval)
+ /* "PETSc/TS.pyx":348
+ * return (f, function)
*
- * def getPrevTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetPrevTime(self.ts, &rval) )
+ * def getI2Jacobian(self): # <<<<<<<<<<<<<<
+ * cdef Mat J = Mat(), P = Mat()
+ * CHKERR( TSGetI2Jacobian(self.ts, &J.mat, &P.mat, NULL, NULL) )
*/
/* function exit code */
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getPrevTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getI2Jacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_J);
+ __Pyx_XDECREF((PyObject *)__pyx_v_P);
+ __Pyx_XDECREF(__pyx_v_jacobian);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":334
- * return toReal(rval)
+/* "PETSc/TS.pyx":357
+ * # --- solution vector ---
+ *
+ * def setSolution(self, Vec u): # <<<<<<<<<<<<<<
+ * CHKERR( TSSetSolution(self.ts, u.vec) )
*
- * def getSolveTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetSolveTime(self.ts, &rval) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_81getSolveTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_80getSolveTime[] = "TS.getSolveTime(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_81getSolveTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_79setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_78setSolution[] = "TS.setSolution(self, Vec u)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_79setSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_u = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getSolveTime (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getSolveTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSolveTime", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_80getSolveTime(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RefNannySetupContext("setSolution (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_u,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSolution") < 0)) __PYX_ERR(37, 357, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_u = ((struct PyPetscVecObject *)values[0]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setSolution", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 357, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "u", 0))) __PYX_ERR(37, 357, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_78setSolution(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_u);
/* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_80getSolveTime(struct PyPetscTSObject *__pyx_v_self) {
- PetscReal __pyx_v_rval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_78setSolution(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getSolveTime", 0);
+ __Pyx_RefNannySetupContext("setSolution", 0);
- /* "PETSc/TS.pyx":335
+ /* "PETSc/TS.pyx":358
*
- * def getSolveTime(self):
- * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetSolveTime(self.ts, &rval) )
- * return toReal(rval)
+ * def setSolution(self, Vec u):
+ * CHKERR( TSSetSolution(self.ts, u.vec) ) # <<<<<<<<<<<<<<
+ *
+ * def getSolution(self):
*/
- __pyx_v_rval = 0.0;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetSolution(__pyx_v_self->ts, __pyx_v_u->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 358, __pyx_L1_error)
- /* "PETSc/TS.pyx":336
- * def getSolveTime(self):
- * cdef PetscReal rval = 0
- * CHKERR( TSGetSolveTime(self.ts, &rval) ) # <<<<<<<<<<<<<<
- * return toReal(rval)
+ /* "PETSc/TS.pyx":357
+ * # --- solution vector ---
+ *
+ * def setSolution(self, Vec u): # <<<<<<<<<<<<<<
+ * CHKERR( TSSetSolution(self.ts, u.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSolveTime(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 336, __pyx_L1_error)
- /* "PETSc/TS.pyx":337
- * cdef PetscReal rval = 0
- * CHKERR( TSGetSolveTime(self.ts, &rval) )
- * return toReal(rval) # <<<<<<<<<<<<<<
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":360
+ * CHKERR( TSSetSolution(self.ts, u.vec) )
+ *
+ * def getSolution(self): # <<<<<<<<<<<<<<
+ * cdef Vec u = Vec()
+ * CHKERR( TSGetSolution(self.ts, &u.vec) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_81getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_80getSolution[] = "TS.getSolution(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_81getSolution(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getSolution (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getSolution", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSolution", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_80getSolution(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_80getSolution(struct PyPetscTSObject *__pyx_v_self) {
+ struct PyPetscVecObject *__pyx_v_u = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getSolution", 0);
+
+ /* "PETSc/TS.pyx":361
+ *
+ * def getSolution(self):
+ * cdef Vec u = Vec() # <<<<<<<<<<<<<<
+ * CHKERR( TSGetSolution(self.ts, &u.vec) )
+ * PetscINCREF(u.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 361, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_u = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/TS.pyx":362
+ * def getSolution(self):
+ * cdef Vec u = Vec()
+ * CHKERR( TSGetSolution(self.ts, &u.vec) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(u.obj)
+ * return u
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSolution(__pyx_v_self->ts, (&__pyx_v_u->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 362, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":363
+ * cdef Vec u = Vec()
+ * CHKERR( TSGetSolution(self.ts, &u.vec) )
+ * PetscINCREF(u.obj) # <<<<<<<<<<<<<<
+ * return u
*
- * def setInitialTimeStep(self, initial_time, initial_time_step):
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_u->__pyx_base.obj);
+
+ /* "PETSc/TS.pyx":364
+ * CHKERR( TSGetSolution(self.ts, &u.vec) )
+ * PetscINCREF(u.obj)
+ * return u # <<<<<<<<<<<<<<
+ *
+ * def setSolution2(self, Vec u, Vec v):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 337, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_r = __pyx_t_2;
- __pyx_t_2 = 0;
+ __Pyx_INCREF(((PyObject *)__pyx_v_u));
+ __pyx_r = ((PyObject *)__pyx_v_u);
goto __pyx_L0;
- /* "PETSc/TS.pyx":334
- * return toReal(rval)
+ /* "PETSc/TS.pyx":360
+ * CHKERR( TSSetSolution(self.ts, u.vec) )
*
- * def getSolveTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetSolveTime(self.ts, &rval) )
+ * def getSolution(self): # <<<<<<<<<<<<<<
+ * cdef Vec u = Vec()
+ * CHKERR( TSGetSolution(self.ts, &u.vec) )
*/
/* function exit code */
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getSolveTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getSolution", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_u);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":339
- * return toReal(rval)
+/* "PETSc/TS.pyx":366
+ * return u
+ *
+ * def setSolution2(self, Vec u, Vec v): # <<<<<<<<<<<<<<
+ * CHKERR( TS2SetSolution(self.ts, u.vec, v.vec) )
*
- * def setInitialTimeStep(self, initial_time, initial_time_step): # <<<<<<<<<<<<<<
- * cdef PetscReal rval1 = asReal(initial_time)
- * cdef PetscReal rval2 = asReal(initial_time_step)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_83setInitialTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_82setInitialTimeStep[] = "TS.setInitialTimeStep(self, initial_time, initial_time_step)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_83setInitialTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_initial_time = 0;
- PyObject *__pyx_v_initial_time_step = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_83setSolution2(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_82setSolution2[] = "TS.setSolution2(self, Vec u, Vec v)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_83setSolution2(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_u = 0;
+ struct PyPetscVecObject *__pyx_v_v = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setInitialTimeStep (wrapper)", 0);
+ __Pyx_RefNannySetupContext("setSolution2 (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_initial_time,&__pyx_n_s_initial_time_step,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_u,&__pyx_n_s_v,0};
PyObject* values[2] = {0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_initial_time)) != 0)) kw_args--;
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
- if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_initial_time_step)) != 0)) kw_args--;
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setInitialTimeStep", 1, 2, 2, 1); __PYX_ERR(37, 339, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSolution2", 1, 2, 2, 1); __PYX_ERR(37, 366, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setInitialTimeStep") < 0)) __PYX_ERR(37, 339, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSolution2") < 0)) __PYX_ERR(37, 366, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -179146,75 +190565,58 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_83setInitialTimeStep(PyObject *__
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
}
- __pyx_v_initial_time = values[0];
- __pyx_v_initial_time_step = values[1];
+ __pyx_v_u = ((struct PyPetscVecObject *)values[0]);
+ __pyx_v_v = ((struct PyPetscVecObject *)values[1]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setInitialTimeStep", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 339, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSolution2", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 366, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setInitialTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setSolution2", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_82setInitialTimeStep(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_initial_time, __pyx_v_initial_time_step);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "u", 0))) __PYX_ERR(37, 366, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "v", 0))) __PYX_ERR(37, 366, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_82setSolution2(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_u, __pyx_v_v);
/* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_82setInitialTimeStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_initial_time, PyObject *__pyx_v_initial_time_step) {
- PetscReal __pyx_v_rval1;
- PetscReal __pyx_v_rval2;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_82setSolution2(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u, struct PyPetscVecObject *__pyx_v_v) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PetscReal __pyx_t_1;
- int __pyx_t_2;
- __Pyx_RefNannySetupContext("setInitialTimeStep", 0);
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("setSolution2", 0);
- /* "PETSc/TS.pyx":340
+ /* "PETSc/TS.pyx":367
*
- * def setInitialTimeStep(self, initial_time, initial_time_step):
- * cdef PetscReal rval1 = asReal(initial_time) # <<<<<<<<<<<<<<
- * cdef PetscReal rval2 = asReal(initial_time_step)
- * CHKERR( TSSetInitialTimeStep(self.ts, rval1, rval2) )
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_initial_time); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 340, __pyx_L1_error)
- __pyx_v_rval1 = __pyx_t_1;
-
- /* "PETSc/TS.pyx":341
- * def setInitialTimeStep(self, initial_time, initial_time_step):
- * cdef PetscReal rval1 = asReal(initial_time)
- * cdef PetscReal rval2 = asReal(initial_time_step) # <<<<<<<<<<<<<<
- * CHKERR( TSSetInitialTimeStep(self.ts, rval1, rval2) )
+ * def setSolution2(self, Vec u, Vec v):
+ * CHKERR( TS2SetSolution(self.ts, u.vec, v.vec) ) # <<<<<<<<<<<<<<
*
+ * def getSolution2(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_initial_time_step); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 341, __pyx_L1_error)
- __pyx_v_rval2 = __pyx_t_1;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TS2SetSolution(__pyx_v_self->ts, __pyx_v_u->vec, __pyx_v_v->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 367, __pyx_L1_error)
- /* "PETSc/TS.pyx":342
- * cdef PetscReal rval1 = asReal(initial_time)
- * cdef PetscReal rval2 = asReal(initial_time_step)
- * CHKERR( TSSetInitialTimeStep(self.ts, rval1, rval2) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":366
+ * return u
*
- * def setTimeStep(self, time_step):
- */
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetInitialTimeStep(__pyx_v_self->ts, __pyx_v_rval1, __pyx_v_rval2)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 342, __pyx_L1_error)
-
- /* "PETSc/TS.pyx":339
- * return toReal(rval)
+ * def setSolution2(self, Vec u, Vec v): # <<<<<<<<<<<<<<
+ * CHKERR( TS2SetSolution(self.ts, u.vec, v.vec) )
*
- * def setInitialTimeStep(self, initial_time, initial_time_step): # <<<<<<<<<<<<<<
- * cdef PetscReal rval1 = asReal(initial_time)
- * cdef PetscReal rval2 = asReal(initial_time_step)
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setInitialTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setSolution2", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -179222,585 +190624,534 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_82setInitialTimeStep(struct PyPet
return __pyx_r;
}
-/* "PETSc/TS.pyx":344
- * CHKERR( TSSetInitialTimeStep(self.ts, rval1, rval2) )
+/* "PETSc/TS.pyx":369
+ * CHKERR( TS2SetSolution(self.ts, u.vec, v.vec) )
*
- * def setTimeStep(self, time_step): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(time_step)
- * CHKERR( TSSetTimeStep(self.ts, rval) )
+ * def getSolution2(self): # <<<<<<<<<<<<<<
+ * cdef Vec u = Vec()
+ * cdef Vec v = Vec()
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_85setTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_84setTimeStep[] = "TS.setTimeStep(self, time_step)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_85setTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_time_step = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_85getSolution2(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_84getSolution2[] = "TS.getSolution2(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_85getSolution2(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setTimeStep (wrapper)", 0);
- {
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_time_step,0};
- PyObject* values[1] = {0};
- if (unlikely(__pyx_kwds)) {
- Py_ssize_t kw_args;
- const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
- switch (pos_args) {
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- kw_args = PyDict_Size(__pyx_kwds);
- switch (pos_args) {
- case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_time_step)) != 0)) kw_args--;
- else goto __pyx_L5_argtuple_error;
- }
- if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTimeStep") < 0)) __PYX_ERR(37, 344, __pyx_L3_error)
- }
- } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
- goto __pyx_L5_argtuple_error;
- } else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- }
- __pyx_v_time_step = values[0];
- }
- goto __pyx_L4_argument_unpacking_done;
- __pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTimeStep", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 344, __pyx_L3_error)
- __pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __Pyx_RefNannyFinishContext();
- return NULL;
- __pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_84setTimeStep(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_time_step);
+ __Pyx_RefNannySetupContext("getSolution2 (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getSolution2", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSolution2", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_84getSolution2(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_84setTimeStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_time_step) {
- PetscReal __pyx_v_rval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_84getSolution2(struct PyPetscTSObject *__pyx_v_self) {
+ struct PyPetscVecObject *__pyx_v_u = 0;
+ struct PyPetscVecObject *__pyx_v_v = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PetscReal __pyx_t_1;
+ PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
- __Pyx_RefNannySetupContext("setTimeStep", 0);
+ __Pyx_RefNannySetupContext("getSolution2", 0);
- /* "PETSc/TS.pyx":345
+ /* "PETSc/TS.pyx":370
*
- * def setTimeStep(self, time_step):
- * cdef PetscReal rval = asReal(time_step) # <<<<<<<<<<<<<<
- * CHKERR( TSSetTimeStep(self.ts, rval) )
+ * def getSolution2(self):
+ * cdef Vec u = Vec() # <<<<<<<<<<<<<<
+ * cdef Vec v = Vec()
+ * CHKERR( TS2GetSolution(self.ts, &u.vec, &v.vec) )
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 370, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_u = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/TS.pyx":371
+ * def getSolution2(self):
+ * cdef Vec u = Vec()
+ * cdef Vec v = Vec() # <<<<<<<<<<<<<<
+ * CHKERR( TS2GetSolution(self.ts, &u.vec, &v.vec) )
+ * PetscINCREF(u.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 371, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_v = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/TS.pyx":372
+ * cdef Vec u = Vec()
+ * cdef Vec v = Vec()
+ * CHKERR( TS2GetSolution(self.ts, &u.vec, &v.vec) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(u.obj)
+ * PetscINCREF(v.obj)
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TS2GetSolution(__pyx_v_self->ts, (&__pyx_v_u->vec), (&__pyx_v_v->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 372, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":373
+ * cdef Vec v = Vec()
+ * CHKERR( TS2GetSolution(self.ts, &u.vec, &v.vec) )
+ * PetscINCREF(u.obj) # <<<<<<<<<<<<<<
+ * PetscINCREF(v.obj)
+ * return (u, v)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_u->__pyx_base.obj);
+
+ /* "PETSc/TS.pyx":374
+ * CHKERR( TS2GetSolution(self.ts, &u.vec, &v.vec) )
+ * PetscINCREF(u.obj)
+ * PetscINCREF(v.obj) # <<<<<<<<<<<<<<
+ * return (u, v)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_time_step); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 345, __pyx_L1_error)
- __pyx_v_rval = __pyx_t_1;
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_v->__pyx_base.obj);
- /* "PETSc/TS.pyx":346
- * def setTimeStep(self, time_step):
- * cdef PetscReal rval = asReal(time_step)
- * CHKERR( TSSetTimeStep(self.ts, rval) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":375
+ * PetscINCREF(u.obj)
+ * PetscINCREF(v.obj)
+ * return (u, v) # <<<<<<<<<<<<<<
*
- * def getTimeStep(self):
+ * # --- inner solver ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetTimeStep(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 346, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 375, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_INCREF(((PyObject *)__pyx_v_u));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_u));
+ PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_u));
+ __Pyx_INCREF(((PyObject *)__pyx_v_v));
+ __Pyx_GIVEREF(((PyObject *)__pyx_v_v));
+ PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_v));
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
- /* "PETSc/TS.pyx":344
- * CHKERR( TSSetInitialTimeStep(self.ts, rval1, rval2) )
+ /* "PETSc/TS.pyx":369
+ * CHKERR( TS2SetSolution(self.ts, u.vec, v.vec) )
*
- * def setTimeStep(self, time_step): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(time_step)
- * CHKERR( TSSetTimeStep(self.ts, rval) )
+ * def getSolution2(self): # <<<<<<<<<<<<<<
+ * cdef Vec u = Vec()
+ * cdef Vec v = Vec()
*/
/* function exit code */
- __pyx_r = Py_None; __Pyx_INCREF(Py_None);
- goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getSolution2", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_u);
+ __Pyx_XDECREF((PyObject *)__pyx_v_v);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":348
- * CHKERR( TSSetTimeStep(self.ts, rval) )
+/* "PETSc/TS.pyx":379
+ * # --- inner solver ---
*
- * def getTimeStep(self): # <<<<<<<<<<<<<<
- * cdef PetscReal tstep = 0
- * CHKERR( TSGetTimeStep(self.ts, &tstep) )
+ * def getSNES(self): # <<<<<<<<<<<<<<
+ * cdef SNES snes = SNES()
+ * CHKERR( TSGetSNES(self.ts, &snes.snes) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_87getTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_86getTimeStep[] = "TS.getTimeStep(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_87getTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_87getSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_86getSNES[] = "TS.getSNES(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_87getSNES(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getTimeStep (wrapper)", 0);
+ __Pyx_RefNannySetupContext("getSNES (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getTimeStep", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTimeStep", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_86getTimeStep(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("getSNES", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSNES", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_86getSNES(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_86getTimeStep(struct PyPetscTSObject *__pyx_v_self) {
- PetscReal __pyx_v_tstep;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_86getSNES(struct PyPetscTSObject *__pyx_v_self) {
+ struct PyPetscSNESObject *__pyx_v_snes = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getTimeStep", 0);
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getSNES", 0);
- /* "PETSc/TS.pyx":349
+ /* "PETSc/TS.pyx":380
*
- * def getTimeStep(self):
- * cdef PetscReal tstep = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetTimeStep(self.ts, &tstep) )
- * return toReal(tstep)
+ * def getSNES(self):
+ * cdef SNES snes = SNES() # <<<<<<<<<<<<<<
+ * CHKERR( TSGetSNES(self.ts, &snes.snes) )
+ * PetscINCREF(snes.obj)
*/
- __pyx_v_tstep = 0.0;
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SNES), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 380, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_snes = ((struct PyPetscSNESObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":350
- * def getTimeStep(self):
- * cdef PetscReal tstep = 0
- * CHKERR( TSGetTimeStep(self.ts, &tstep) ) # <<<<<<<<<<<<<<
- * return toReal(tstep)
+ /* "PETSc/TS.pyx":381
+ * def getSNES(self):
+ * cdef SNES snes = SNES()
+ * CHKERR( TSGetSNES(self.ts, &snes.snes) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(snes.obj)
+ * return snes
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSNES(__pyx_v_self->ts, (&__pyx_v_snes->snes))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 381, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":382
+ * cdef SNES snes = SNES()
+ * CHKERR( TSGetSNES(self.ts, &snes.snes) )
+ * PetscINCREF(snes.obj) # <<<<<<<<<<<<<<
+ * return snes
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTimeStep(__pyx_v_self->ts, (&__pyx_v_tstep))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 350, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_snes->__pyx_base.obj);
- /* "PETSc/TS.pyx":351
- * cdef PetscReal tstep = 0
- * CHKERR( TSGetTimeStep(self.ts, &tstep) )
- * return toReal(tstep) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":383
+ * CHKERR( TSGetSNES(self.ts, &snes.snes) )
+ * PetscINCREF(snes.obj)
+ * return snes # <<<<<<<<<<<<<<
*
- * def setStepNumber(self, step_number):
+ * def getKSP(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_tstep); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 351, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_r = __pyx_t_2;
- __pyx_t_2 = 0;
+ __Pyx_INCREF(((PyObject *)__pyx_v_snes));
+ __pyx_r = ((PyObject *)__pyx_v_snes);
goto __pyx_L0;
- /* "PETSc/TS.pyx":348
- * CHKERR( TSSetTimeStep(self.ts, rval) )
+ /* "PETSc/TS.pyx":379
+ * # --- inner solver ---
*
- * def getTimeStep(self): # <<<<<<<<<<<<<<
- * cdef PetscReal tstep = 0
- * CHKERR( TSGetTimeStep(self.ts, &tstep) )
+ * def getSNES(self): # <<<<<<<<<<<<<<
+ * cdef SNES snes = SNES()
+ * CHKERR( TSGetSNES(self.ts, &snes.snes) )
*/
/* function exit code */
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getSNES", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_snes);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":353
- * return toReal(tstep)
+/* "PETSc/TS.pyx":385
+ * return snes
*
- * def setStepNumber(self, step_number): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = asInt(step_number)
- * CHKERR( TSSetTimeStepNumber(self.ts, ival) )
+ * def getKSP(self): # <<<<<<<<<<<<<<
+ * cdef KSP ksp = KSP()
+ * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_89setStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_88setStepNumber[] = "TS.setStepNumber(self, step_number)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_89setStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_step_number = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_89getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_88getKSP[] = "TS.getKSP(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_89getKSP(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setStepNumber (wrapper)", 0);
- {
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_step_number,0};
- PyObject* values[1] = {0};
- if (unlikely(__pyx_kwds)) {
- Py_ssize_t kw_args;
- const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
- switch (pos_args) {
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- kw_args = PyDict_Size(__pyx_kwds);
- switch (pos_args) {
- case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_step_number)) != 0)) kw_args--;
- else goto __pyx_L5_argtuple_error;
- }
- if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setStepNumber") < 0)) __PYX_ERR(37, 353, __pyx_L3_error)
- }
- } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
- goto __pyx_L5_argtuple_error;
- } else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- }
- __pyx_v_step_number = values[0];
- }
- goto __pyx_L4_argument_unpacking_done;
- __pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setStepNumber", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 353, __pyx_L3_error)
- __pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setStepNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __Pyx_RefNannyFinishContext();
- return NULL;
- __pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_88setStepNumber(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_step_number);
+ __Pyx_RefNannySetupContext("getKSP (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getKSP", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getKSP", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_88getKSP(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_88setStepNumber(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step_number) {
- PetscInt __pyx_v_ival;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_88getKSP(struct PyPetscTSObject *__pyx_v_self) {
+ struct PyPetscKSPObject *__pyx_v_ksp = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PetscInt __pyx_t_1;
+ PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
- __Pyx_RefNannySetupContext("setStepNumber", 0);
+ __Pyx_RefNannySetupContext("getKSP", 0);
- /* "PETSc/TS.pyx":354
+ /* "PETSc/TS.pyx":386
*
- * def setStepNumber(self, step_number):
- * cdef PetscInt ival = asInt(step_number) # <<<<<<<<<<<<<<
- * CHKERR( TSSetTimeStepNumber(self.ts, ival) )
+ * def getKSP(self):
+ * cdef KSP ksp = KSP() # <<<<<<<<<<<<<<
+ * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
+ * PetscINCREF(ksp.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_KSP), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 386, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_ksp = ((struct PyPetscKSPObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/TS.pyx":387
+ * def getKSP(self):
+ * cdef KSP ksp = KSP()
+ * CHKERR( TSGetKSP(self.ts, &ksp.ksp) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(ksp.obj)
+ * return ksp
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetKSP(__pyx_v_self->ts, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 387, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":388
+ * cdef KSP ksp = KSP()
+ * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
+ * PetscINCREF(ksp.obj) # <<<<<<<<<<<<<<
+ * return ksp
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step_number); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(37, 354, __pyx_L1_error)
- __pyx_v_ival = __pyx_t_1;
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_ksp->__pyx_base.obj);
- /* "PETSc/TS.pyx":355
- * def setStepNumber(self, step_number):
- * cdef PetscInt ival = asInt(step_number)
- * CHKERR( TSSetTimeStepNumber(self.ts, ival) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":389
+ * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
+ * PetscINCREF(ksp.obj)
+ * return ksp # <<<<<<<<<<<<<<
*
- * def getStepNumber(self):
+ * # --- discretization space ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetTimeStepNumber(__pyx_v_self->ts, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 355, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_ksp));
+ __pyx_r = ((PyObject *)__pyx_v_ksp);
+ goto __pyx_L0;
- /* "PETSc/TS.pyx":353
- * return toReal(tstep)
+ /* "PETSc/TS.pyx":385
+ * return snes
*
- * def setStepNumber(self, step_number): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = asInt(step_number)
- * CHKERR( TSSetTimeStepNumber(self.ts, ival) )
+ * def getKSP(self): # <<<<<<<<<<<<<<
+ * cdef KSP ksp = KSP()
+ * CHKERR( TSGetKSP(self.ts, &ksp.ksp) )
*/
/* function exit code */
- __pyx_r = Py_None; __Pyx_INCREF(Py_None);
- goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setStepNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getKSP", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_ksp);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":357
- * CHKERR( TSSetTimeStepNumber(self.ts, ival) )
+/* "PETSc/TS.pyx":393
+ * # --- discretization space ---
*
- * def getStepNumber(self): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * CHKERR( TSGetTimeStepNumber(self.ts, &ival) )
+ * def getDM(self): # <<<<<<<<<<<<<<
+ * cdef PetscDM newdm = NULL
+ * CHKERR( TSGetDM(self.ts, &newdm) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_91getStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_90getStepNumber[] = "TS.getStepNumber(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_91getStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_91getDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_90getDM[] = "TS.getDM(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_91getDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getStepNumber (wrapper)", 0);
+ __Pyx_RefNannySetupContext("getDM (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getStepNumber", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getStepNumber", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_90getStepNumber(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("getDM", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDM", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_90getDM(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_90getStepNumber(struct PyPetscTSObject *__pyx_v_self) {
- PetscInt __pyx_v_ival;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_90getDM(struct PyPetscTSObject *__pyx_v_self) {
+ DM __pyx_v_newdm;
+ struct PyPetscDMObject *__pyx_v_dm = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getStepNumber", 0);
+ PyObject *__pyx_t_3 = NULL;
+ __Pyx_RefNannySetupContext("getDM", 0);
- /* "PETSc/TS.pyx":358
+ /* "PETSc/TS.pyx":394
*
- * def getStepNumber(self):
- * cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetTimeStepNumber(self.ts, &ival) )
- * return toInt(ival)
+ * def getDM(self):
+ * cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
+ * CHKERR( TSGetDM(self.ts, &newdm) )
+ * cdef DM dm = subtype_DM(newdm)()
*/
- __pyx_v_ival = 0;
+ __pyx_v_newdm = NULL;
- /* "PETSc/TS.pyx":359
- * def getStepNumber(self):
- * cdef PetscInt ival = 0
- * CHKERR( TSGetTimeStepNumber(self.ts, &ival) ) # <<<<<<<<<<<<<<
- * return toInt(ival)
+ /* "PETSc/TS.pyx":395
+ * def getDM(self):
+ * cdef PetscDM newdm = NULL
+ * CHKERR( TSGetDM(self.ts, &newdm) ) # <<<<<<<<<<<<<<
+ * cdef DM dm = subtype_DM(newdm)()
+ * dm.dm = newdm
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDM(__pyx_v_self->ts, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 395, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":396
+ * cdef PetscDM newdm = NULL
+ * CHKERR( TSGetDM(self.ts, &newdm) )
+ * cdef DM dm = subtype_DM(newdm)() # <<<<<<<<<<<<<<
+ * dm.dm = newdm
+ * PetscINCREF(dm.obj)
+ */
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 396, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 396, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(37, 396, __pyx_L1_error)
+ __pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":397
+ * CHKERR( TSGetDM(self.ts, &newdm) )
+ * cdef DM dm = subtype_DM(newdm)()
+ * dm.dm = newdm # <<<<<<<<<<<<<<
+ * PetscINCREF(dm.obj)
+ * return dm
+ */
+ __pyx_v_dm->dm = __pyx_v_newdm;
+
+ /* "PETSc/TS.pyx":398
+ * cdef DM dm = subtype_DM(newdm)()
+ * dm.dm = newdm
+ * PetscINCREF(dm.obj) # <<<<<<<<<<<<<<
+ * return dm
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTimeStepNumber(__pyx_v_self->ts, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 359, __pyx_L1_error)
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_dm->__pyx_base.obj);
- /* "PETSc/TS.pyx":360
- * cdef PetscInt ival = 0
- * CHKERR( TSGetTimeStepNumber(self.ts, &ival) )
- * return toInt(ival) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":399
+ * dm.dm = newdm
+ * PetscINCREF(dm.obj)
+ * return dm # <<<<<<<<<<<<<<
*
- * def setMaxTime(self, max_time):
+ * def setDM(self, DM dm):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 360, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_r = __pyx_t_2;
- __pyx_t_2 = 0;
+ __Pyx_INCREF(((PyObject *)__pyx_v_dm));
+ __pyx_r = ((PyObject *)__pyx_v_dm);
goto __pyx_L0;
- /* "PETSc/TS.pyx":357
- * CHKERR( TSSetTimeStepNumber(self.ts, ival) )
+ /* "PETSc/TS.pyx":393
+ * # --- discretization space ---
*
- * def getStepNumber(self): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * CHKERR( TSGetTimeStepNumber(self.ts, &ival) )
+ * def getDM(self): # <<<<<<<<<<<<<<
+ * cdef PetscDM newdm = NULL
+ * CHKERR( TSGetDM(self.ts, &newdm) )
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getStepNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_dm);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":362
- * return toInt(ival)
+/* "PETSc/TS.pyx":401
+ * return dm
+ *
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
+ * CHKERR( TSSetDM(self.ts, dm.dm) )
*
- * def setMaxTime(self, max_time): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * cdef PetscReal rval = asReal(max_time)
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_93setMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_92setMaxTime[] = "TS.setMaxTime(self, max_time)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_93setMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_max_time = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_93setDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_92setDM[] = "TS.setDM(self, DM dm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_93setDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscDMObject *__pyx_v_dm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setMaxTime (wrapper)", 0);
+ __Pyx_RefNannySetupContext("setDM (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_max_time,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_dm,0};
PyObject* values[1] = {0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_time)) != 0)) kw_args--;
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxTime") < 0)) __PYX_ERR(37, 362, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDM") < 0)) __PYX_ERR(37, 401, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
- __pyx_v_max_time = values[0];
+ __pyx_v_dm = ((struct PyPetscDMObject *)values[0]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMaxTime", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 362, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 401, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_92setMaxTime(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_max_time);
-
- /* function exit code */
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_92setMaxTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_time) {
- PetscInt __pyx_v_ival;
- PetscReal __pyx_v_rval;
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- PetscReal __pyx_t_1;
- int __pyx_t_2;
- __Pyx_RefNannySetupContext("setMaxTime", 0);
-
- /* "PETSc/TS.pyx":363
- *
- * def setMaxTime(self, max_time):
- * cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(max_time)
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) )
- */
- __pyx_v_ival = 0;
-
- /* "PETSc/TS.pyx":364
- * def setMaxTime(self, max_time):
- * cdef PetscInt ival = 0
- * cdef PetscReal rval = asReal(max_time) # <<<<<<<<<<<<<<
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) )
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_max_time); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 364, __pyx_L1_error)
- __pyx_v_rval = __pyx_t_1;
-
- /* "PETSc/TS.pyx":365
- * cdef PetscInt ival = 0
- * cdef PetscReal rval = asReal(max_time)
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) ) # <<<<<<<<<<<<<<
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
- *
- */
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDuration(__pyx_v_self->ts, (&__pyx_v_ival), NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 365, __pyx_L1_error)
-
- /* "PETSc/TS.pyx":366
- * cdef PetscReal rval = asReal(max_time)
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) )
- * CHKERR( TSSetDuration(self.ts, ival, rval) ) # <<<<<<<<<<<<<<
- *
- * def getMaxTime(self):
- */
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetDuration(__pyx_v_self->ts, __pyx_v_ival, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 366, __pyx_L1_error)
-
- /* "PETSc/TS.pyx":362
- * return toInt(ival)
- *
- * def setMaxTime(self, max_time): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * cdef PetscReal rval = asReal(max_time)
- */
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(37, 401, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_92setDM(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_dm);
/* function exit code */
- __pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-/* "PETSc/TS.pyx":368
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
- *
- * def getMaxTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) )
- */
-
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_95getMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_94getMaxTime[] = "TS.getMaxTime(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_95getMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getMaxTime (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getMaxTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxTime", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_94getMaxTime(((struct PyPetscTSObject *)__pyx_v_self));
-
- /* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_94getMaxTime(struct PyPetscTSObject *__pyx_v_self) {
- PetscReal __pyx_v_rval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_92setDM(struct PyPetscTSObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getMaxTime", 0);
+ __Pyx_RefNannySetupContext("setDM", 0);
- /* "PETSc/TS.pyx":369
+ /* "PETSc/TS.pyx":402
*
- * def getMaxTime(self):
- * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) )
- * return toReal(rval)
- */
- __pyx_v_rval = 0.0;
-
- /* "PETSc/TS.pyx":370
- * def getMaxTime(self):
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) ) # <<<<<<<<<<<<<<
- * return toReal(rval)
+ * def setDM(self, DM dm):
+ * CHKERR( TSSetDM(self.ts, dm.dm) ) # <<<<<<<<<<<<<<
*
+ * # --- customization ---
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDuration(__pyx_v_self->ts, NULL, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 370, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetDM(__pyx_v_self->ts, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 402, __pyx_L1_error)
- /* "PETSc/TS.pyx":371
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) )
- * return toReal(rval) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":401
+ * return dm
*
- * def setMaxSteps(self, max_steps):
- */
- __Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 371, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_r = __pyx_t_2;
- __pyx_t_2 = 0;
- goto __pyx_L0;
-
- /* "PETSc/TS.pyx":368
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+ * def setDM(self, DM dm): # <<<<<<<<<<<<<<
+ * CHKERR( TSSetDM(self.ts, dm.dm) )
*
- * def getMaxTime(self): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) )
*/
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getMaxTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -179808,123 +191159,105 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_94getMaxTime(struct PyPetscTSObje
return __pyx_r;
}
-/* "PETSc/TS.pyx":373
- * return toReal(rval)
+/* "PETSc/TS.pyx":406
+ * # --- customization ---
*
- * def setMaxSteps(self, max_steps): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = asInt(max_steps)
- * cdef PetscReal rval = 0
+ * def setTime(self, t): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSSetTime(self.ts, rval) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_97setMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_96setMaxSteps[] = "TS.setMaxSteps(self, max_steps)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_97setMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_max_steps = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_95setTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_94setTime[] = "TS.setTime(self, t)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_95setTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_t = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setMaxSteps (wrapper)", 0);
+ __Pyx_RefNannySetupContext("setTime (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_max_steps,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,0};
PyObject* values[1] = {0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_steps)) != 0)) kw_args--;
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxSteps") < 0)) __PYX_ERR(37, 373, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTime") < 0)) __PYX_ERR(37, 406, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
}
- __pyx_v_max_steps = values[0];
+ __pyx_v_t = values[0];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMaxSteps", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 373, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTime", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 406, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_96setMaxSteps(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_max_steps);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_94setTime(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_96setMaxSteps(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_steps) {
- PetscInt __pyx_v_ival;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_94setTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PetscInt __pyx_t_1;
+ PetscReal __pyx_t_1;
int __pyx_t_2;
- __Pyx_RefNannySetupContext("setMaxSteps", 0);
+ __Pyx_RefNannySetupContext("setTime", 0);
- /* "PETSc/TS.pyx":374
+ /* "PETSc/TS.pyx":407
*
- * def setMaxSteps(self, max_steps):
- * cdef PetscInt ival = asInt(max_steps) # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) )
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_steps); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(37, 374, __pyx_L1_error)
- __pyx_v_ival = __pyx_t_1;
-
- /* "PETSc/TS.pyx":375
- * def setMaxSteps(self, max_steps):
- * cdef PetscInt ival = asInt(max_steps)
- * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) )
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
- */
- __pyx_v_rval = 0.0;
-
- /* "PETSc/TS.pyx":376
- * cdef PetscInt ival = asInt(max_steps)
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) ) # <<<<<<<<<<<<<<
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+ * def setTime(self, t):
+ * cdef PetscReal rval = asReal(t) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetTime(self.ts, rval) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDuration(__pyx_v_self->ts, NULL, (&__pyx_v_rval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 376, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 407, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_1;
- /* "PETSc/TS.pyx":377
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, NULL, &rval) )
- * CHKERR( TSSetDuration(self.ts, ival, rval) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":408
+ * def setTime(self, t):
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSSetTime(self.ts, rval) ) # <<<<<<<<<<<<<<
*
- * def getMaxSteps(self):
+ * def getTime(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetDuration(__pyx_v_self->ts, __pyx_v_ival, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 377, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetTime(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 408, __pyx_L1_error)
- /* "PETSc/TS.pyx":373
- * return toReal(rval)
+ /* "PETSc/TS.pyx":406
+ * # --- customization ---
*
- * def setMaxSteps(self, max_steps): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = asInt(max_steps)
- * cdef PetscReal rval = 0
+ * def setTime(self, t): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSSetTime(self.ts, rval) )
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -179932,83 +191265,83 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_96setMaxSteps(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":379
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+/* "PETSc/TS.pyx":410
+ * CHKERR( TSSetTime(self.ts, rval) )
*
- * def getMaxSteps(self): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) )
+ * def getTime(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetTime(self.ts, &rval) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_99getMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_98getMaxSteps[] = "TS.getMaxSteps(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_99getMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_97getTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_96getTime[] = "TS.getTime(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_97getTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getMaxSteps (wrapper)", 0);
+ __Pyx_RefNannySetupContext("getTime (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getMaxSteps", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxSteps", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_98getMaxSteps(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("getTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTime", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_96getTime(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_98getMaxSteps(struct PyPetscTSObject *__pyx_v_self) {
- PetscInt __pyx_v_ival;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_96getTime(struct PyPetscTSObject *__pyx_v_self) {
+ PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getMaxSteps", 0);
+ __Pyx_RefNannySetupContext("getTime", 0);
- /* "PETSc/TS.pyx":380
+ /* "PETSc/TS.pyx":411
*
- * def getMaxSteps(self):
- * cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) )
- * return toInt(ival)
+ * def getTime(self):
+ * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
+ * CHKERR( TSGetTime(self.ts, &rval) )
+ * return toReal(rval)
*/
- __pyx_v_ival = 0;
+ __pyx_v_rval = 0.0;
- /* "PETSc/TS.pyx":381
- * def getMaxSteps(self):
- * cdef PetscInt ival = 0
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) ) # <<<<<<<<<<<<<<
- * return toInt(ival)
+ /* "PETSc/TS.pyx":412
+ * def getTime(self):
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetTime(self.ts, &rval) ) # <<<<<<<<<<<<<<
+ * return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDuration(__pyx_v_self->ts, (&__pyx_v_ival), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 381, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTime(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 412, __pyx_L1_error)
- /* "PETSc/TS.pyx":382
- * cdef PetscInt ival = 0
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) )
- * return toInt(ival) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":413
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetTime(self.ts, &rval) )
+ * return toReal(rval) # <<<<<<<<<<<<<<
*
- * def setDuration(self, max_time, max_steps=None):
+ * def getPrevTime(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 382, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 413, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":379
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+ /* "PETSc/TS.pyx":410
+ * CHKERR( TSSetTime(self.ts, rval) )
*
- * def getMaxSteps(self): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * CHKERR( TSGetDuration(self.ts, &ival, NULL) )
+ * def getTime(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetTime(self.ts, &rval) )
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getMaxSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -180016,165 +191349,463 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_98getMaxSteps(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":384
- * return toInt(ival)
+/* "PETSc/TS.pyx":415
+ * return toReal(rval)
*
- * def setDuration(self, max_time, max_steps=None): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
+ * def getPrevTime(self): # <<<<<<<<<<<<<<
* cdef PetscReal rval = 0
+ * CHKERR( TSGetPrevTime(self.ts, &rval) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_101setDuration(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_100setDuration[] = "TS.setDuration(self, max_time, max_steps=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_101setDuration(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_max_time = 0;
- PyObject *__pyx_v_max_steps = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_99getPrevTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_98getPrevTime[] = "TS.getPrevTime(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_99getPrevTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setDuration (wrapper)", 0);
- {
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_max_time,&__pyx_n_s_max_steps,0};
- PyObject* values[2] = {0,0};
- values[1] = ((PyObject *)Py_None);
- if (unlikely(__pyx_kwds)) {
- Py_ssize_t kw_args;
- const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
- switch (pos_args) {
- case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- kw_args = PyDict_Size(__pyx_kwds);
- switch (pos_args) {
- case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_time)) != 0)) kw_args--;
- else goto __pyx_L5_argtuple_error;
- case 1:
- if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_steps);
- if (value) { values[1] = value; kw_args--; }
- }
- }
- if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDuration") < 0)) __PYX_ERR(37, 384, __pyx_L3_error)
- }
- } else {
- switch (PyTuple_GET_SIZE(__pyx_args)) {
- case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- break;
- default: goto __pyx_L5_argtuple_error;
- }
- }
- __pyx_v_max_time = values[0];
- __pyx_v_max_steps = values[1];
- }
- goto __pyx_L4_argument_unpacking_done;
- __pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDuration", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 384, __pyx_L3_error)
- __pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setDuration", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __Pyx_RefNannyFinishContext();
- return NULL;
- __pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_100setDuration(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_max_time, __pyx_v_max_steps);
+ __Pyx_RefNannySetupContext("getPrevTime (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getPrevTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPrevTime", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_98getPrevTime(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_100setDuration(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_time, PyObject *__pyx_v_max_steps) {
- PetscInt __pyx_v_ival;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_98getPrevTime(struct PyPetscTSObject *__pyx_v_self) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- int __pyx_t_2;
- int __pyx_t_3;
- PetscInt __pyx_t_4;
- PetscReal __pyx_t_5;
- __Pyx_RefNannySetupContext("setDuration", 0);
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getPrevTime", 0);
- /* "PETSc/TS.pyx":385
+ /* "PETSc/TS.pyx":416
*
- * def setDuration(self, max_time, max_steps=None):
- * cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) )
+ * def getPrevTime(self):
+ * cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
+ * CHKERR( TSGetPrevTime(self.ts, &rval) )
+ * return toReal(rval)
*/
- __pyx_v_ival = 0;
+ __pyx_v_rval = 0.0;
- /* "PETSc/TS.pyx":386
- * def setDuration(self, max_time, max_steps=None):
- * cdef PetscInt ival = 0
+ /* "PETSc/TS.pyx":417
+ * def getPrevTime(self):
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetPrevTime(self.ts, &rval) ) # <<<<<<<<<<<<<<
+ * return toReal(rval)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetPrevTime(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 417, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":418
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetPrevTime(self.ts, &rval) )
+ * return toReal(rval) # <<<<<<<<<<<<<<
+ *
+ * def getSolveTime(self):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 418, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":415
+ * return toReal(rval)
+ *
+ * def getPrevTime(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetPrevTime(self.ts, &rval) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getPrevTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":420
+ * return toReal(rval)
+ *
+ * def getSolveTime(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetSolveTime(self.ts, &rval) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_101getSolveTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_100getSolveTime[] = "TS.getSolveTime(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_101getSolveTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getSolveTime (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getSolveTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSolveTime", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_100getSolveTime(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_100getSolveTime(struct PyPetscTSObject *__pyx_v_self) {
+ PetscReal __pyx_v_rval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getSolveTime", 0);
+
+ /* "PETSc/TS.pyx":421
+ *
+ * def getSolveTime(self):
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) )
- * if max_steps is not None: ival = asInt(max_steps)
+ * CHKERR( TSGetSolveTime(self.ts, &rval) )
+ * return toReal(rval)
*/
__pyx_v_rval = 0.0;
- /* "PETSc/TS.pyx":387
- * cdef PetscInt ival = 0
+ /* "PETSc/TS.pyx":422
+ * def getSolveTime(self):
* cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) ) # <<<<<<<<<<<<<<
- * if max_steps is not None: ival = asInt(max_steps)
- * if max_time is not None: rval = asReal(max_time)
+ * CHKERR( TSGetSolveTime(self.ts, &rval) ) # <<<<<<<<<<<<<<
+ * return toReal(rval)
+ *
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDuration(__pyx_v_self->ts, (&__pyx_v_ival), (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 387, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSolveTime(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 422, __pyx_L1_error)
- /* "PETSc/TS.pyx":388
+ /* "PETSc/TS.pyx":423
* cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) )
- * if max_steps is not None: ival = asInt(max_steps) # <<<<<<<<<<<<<<
- * if max_time is not None: rval = asReal(max_time)
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+ * CHKERR( TSGetSolveTime(self.ts, &rval) )
+ * return toReal(rval) # <<<<<<<<<<<<<<
+ *
+ * def setTimeStep(self, time_step):
*/
- __pyx_t_2 = (__pyx_v_max_steps != Py_None);
- __pyx_t_3 = (__pyx_t_2 != 0);
- if (__pyx_t_3) {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_steps); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(37, 388, __pyx_L1_error)
- __pyx_v_ival = __pyx_t_4;
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 423, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":420
+ * return toReal(rval)
+ *
+ * def getSolveTime(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetSolveTime(self.ts, &rval) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getSolveTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":425
+ * return toReal(rval)
+ *
+ * def setTimeStep(self, time_step): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(time_step)
+ * CHKERR( TSSetTimeStep(self.ts, rval) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_103setTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_102setTimeStep[] = "TS.setTimeStep(self, time_step)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_103setTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_time_step = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setTimeStep (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_time_step,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_time_step)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTimeStep") < 0)) __PYX_ERR(37, 425, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_time_step = values[0];
}
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setTimeStep", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 425, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_102setTimeStep(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_time_step);
- /* "PETSc/TS.pyx":389
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) )
- * if max_steps is not None: ival = asInt(max_steps)
- * if max_time is not None: rval = asReal(max_time) # <<<<<<<<<<<<<<
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_102setTimeStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_time_step) {
+ PetscReal __pyx_v_rval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscReal __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setTimeStep", 0);
+
+ /* "PETSc/TS.pyx":426
+ *
+ * def setTimeStep(self, time_step):
+ * cdef PetscReal rval = asReal(time_step) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetTimeStep(self.ts, rval) )
*
*/
- __pyx_t_3 = (__pyx_v_max_time != Py_None);
- __pyx_t_2 = (__pyx_t_3 != 0);
- if (__pyx_t_2) {
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_max_time); if (unlikely(__pyx_t_5 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 389, __pyx_L1_error)
- __pyx_v_rval = __pyx_t_5;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_time_step); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 426, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_1;
+
+ /* "PETSc/TS.pyx":427
+ * def setTimeStep(self, time_step):
+ * cdef PetscReal rval = asReal(time_step)
+ * CHKERR( TSSetTimeStep(self.ts, rval) ) # <<<<<<<<<<<<<<
+ *
+ * def getTimeStep(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetTimeStep(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 427, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":425
+ * return toReal(rval)
+ *
+ * def setTimeStep(self, time_step): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(time_step)
+ * CHKERR( TSSetTimeStep(self.ts, rval) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":429
+ * CHKERR( TSSetTimeStep(self.ts, rval) )
+ *
+ * def getTimeStep(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal tstep = 0
+ * CHKERR( TSGetTimeStep(self.ts, &tstep) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_105getTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_104getTimeStep[] = "TS.getTimeStep(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_105getTimeStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getTimeStep (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getTimeStep", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTimeStep", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_104getTimeStep(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_104getTimeStep(struct PyPetscTSObject *__pyx_v_self) {
+ PetscReal __pyx_v_tstep;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getTimeStep", 0);
+
+ /* "PETSc/TS.pyx":430
+ *
+ * def getTimeStep(self):
+ * cdef PetscReal tstep = 0 # <<<<<<<<<<<<<<
+ * CHKERR( TSGetTimeStep(self.ts, &tstep) )
+ * return toReal(tstep)
+ */
+ __pyx_v_tstep = 0.0;
+
+ /* "PETSc/TS.pyx":431
+ * def getTimeStep(self):
+ * cdef PetscReal tstep = 0
+ * CHKERR( TSGetTimeStep(self.ts, &tstep) ) # <<<<<<<<<<<<<<
+ * return toReal(tstep)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTimeStep(__pyx_v_self->ts, (&__pyx_v_tstep))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 431, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":432
+ * cdef PetscReal tstep = 0
+ * CHKERR( TSGetTimeStep(self.ts, &tstep) )
+ * return toReal(tstep) # <<<<<<<<<<<<<<
+ *
+ * def setStepNumber(self, step_number):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_tstep); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 432, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":429
+ * CHKERR( TSSetTimeStep(self.ts, rval) )
+ *
+ * def getTimeStep(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal tstep = 0
+ * CHKERR( TSGetTimeStep(self.ts, &tstep) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getTimeStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":434
+ * return toReal(tstep)
+ *
+ * def setStepNumber(self, step_number): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(step_number)
+ * CHKERR( TSSetStepNumber(self.ts, ival) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_107setStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_106setStepNumber[] = "TS.setStepNumber(self, step_number)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_107setStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_step_number = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setStepNumber (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_step_number,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_step_number)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setStepNumber") < 0)) __PYX_ERR(37, 434, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_step_number = values[0];
}
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setStepNumber", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 434, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setStepNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_106setStepNumber(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_step_number);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
- /* "PETSc/TS.pyx":390
- * if max_steps is not None: ival = asInt(max_steps)
- * if max_time is not None: rval = asReal(max_time)
- * CHKERR( TSSetDuration(self.ts, ival, rval) ) # <<<<<<<<<<<<<<
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106setStepNumber(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step_number) {
+ PetscInt __pyx_v_ival;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setStepNumber", 0);
+
+ /* "PETSc/TS.pyx":435
+ *
+ * def setStepNumber(self, step_number):
+ * cdef PetscInt ival = asInt(step_number) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetStepNumber(self.ts, ival) )
*
- * def getDuration(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetDuration(__pyx_v_self->ts, __pyx_v_ival, __pyx_v_rval)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 390, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step_number); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(37, 435, __pyx_L1_error)
+ __pyx_v_ival = __pyx_t_1;
- /* "PETSc/TS.pyx":384
- * return toInt(ival)
+ /* "PETSc/TS.pyx":436
+ * def setStepNumber(self, step_number):
+ * cdef PetscInt ival = asInt(step_number)
+ * CHKERR( TSSetStepNumber(self.ts, ival) ) # <<<<<<<<<<<<<<
*
- * def setDuration(self, max_time, max_steps=None): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * cdef PetscReal rval = 0
+ * def getStepNumber(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetStepNumber(__pyx_v_self->ts, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 436, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":434
+ * return toReal(tstep)
+ *
+ * def setStepNumber(self, step_number): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(step_number)
+ * CHKERR( TSSetStepNumber(self.ts, ival) )
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setDuration", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setStepNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -180182,107 +191813,273 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_100setDuration(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":392
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+/* "PETSc/TS.pyx":438
+ * CHKERR( TSSetStepNumber(self.ts, ival) )
*
- * def getDuration(self): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
- * cdef PetscReal rval = 0
+ * def getStepNumber(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = 0
+ * CHKERR( TSGetStepNumber(self.ts, &ival) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_103getDuration(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_102getDuration[] = "TS.getDuration(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_103getDuration(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_109getStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_108getStepNumber[] = "TS.getStepNumber(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_109getStepNumber(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getDuration (wrapper)", 0);
+ __Pyx_RefNannySetupContext("getStepNumber (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getDuration", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDuration", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_102getDuration(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("getStepNumber", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getStepNumber", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_108getStepNumber(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_102getDuration(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getStepNumber(struct PyPetscTSObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
- PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
- PyObject *__pyx_t_3 = NULL;
- PyObject *__pyx_t_4 = NULL;
- __Pyx_RefNannySetupContext("getDuration", 0);
+ __Pyx_RefNannySetupContext("getStepNumber", 0);
- /* "PETSc/TS.pyx":393
+ /* "PETSc/TS.pyx":439
*
- * def getDuration(self):
- * cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
- * cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) )
+ * def getStepNumber(self):
+ * cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
+ * CHKERR( TSGetStepNumber(self.ts, &ival) )
+ * return toInt(ival)
*/
__pyx_v_ival = 0;
- /* "PETSc/TS.pyx":394
- * def getDuration(self):
- * cdef PetscInt ival = 0
+ /* "PETSc/TS.pyx":440
+ * def getStepNumber(self):
+ * cdef PetscInt ival = 0
+ * CHKERR( TSGetStepNumber(self.ts, &ival) ) # <<<<<<<<<<<<<<
+ * return toInt(ival)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetStepNumber(__pyx_v_self->ts, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 440, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":441
+ * cdef PetscInt ival = 0
+ * CHKERR( TSGetStepNumber(self.ts, &ival) )
+ * return toInt(ival) # <<<<<<<<<<<<<<
+ *
+ * def setMaxTime(self, max_time):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 441, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":438
+ * CHKERR( TSSetStepNumber(self.ts, ival) )
+ *
+ * def getStepNumber(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = 0
+ * CHKERR( TSGetStepNumber(self.ts, &ival) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getStepNumber", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":443
+ * return toInt(ival)
+ *
+ * def setMaxTime(self, max_time): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(max_time)
+ * CHKERR( TSSetMaxTime(self.ts, rval) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_110setMaxTime[] = "TS.setMaxTime(self, max_time)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_max_time = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setMaxTime (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_max_time,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_time)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxTime") < 0)) __PYX_ERR(37, 443, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_max_time = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setMaxTime", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 443, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_110setMaxTime(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_max_time);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_110setMaxTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_time) {
+ PetscReal __pyx_v_rval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscReal __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setMaxTime", 0);
+
+ /* "PETSc/TS.pyx":444
+ *
+ * def setMaxTime(self, max_time):
+ * cdef PetscReal rval = asReal(max_time) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetMaxTime(self.ts, rval) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_max_time); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 444, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_1;
+
+ /* "PETSc/TS.pyx":445
+ * def setMaxTime(self, max_time):
+ * cdef PetscReal rval = asReal(max_time)
+ * CHKERR( TSSetMaxTime(self.ts, rval) ) # <<<<<<<<<<<<<<
+ *
+ * def getMaxTime(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetMaxTime(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 445, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":443
+ * return toInt(ival)
+ *
+ * def setMaxTime(self, max_time): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(max_time)
+ * CHKERR( TSSetMaxTime(self.ts, rval) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":447
+ * CHKERR( TSSetMaxTime(self.ts, rval) )
+ *
+ * def getMaxTime(self): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = 0
+ * CHKERR( TSGetMaxTime(self.ts, &rval) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_113getMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_112getMaxTime[] = "TS.getMaxTime(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_113getMaxTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getMaxTime (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getMaxTime", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxTime", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_112getMaxTime(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getMaxTime(struct PyPetscTSObject *__pyx_v_self) {
+ PetscReal __pyx_v_rval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getMaxTime", 0);
+
+ /* "PETSc/TS.pyx":448
+ *
+ * def getMaxTime(self):
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) )
- * return (toReal(rval), toInt(ival))
+ * CHKERR( TSGetMaxTime(self.ts, &rval) )
+ * return toReal(rval)
*/
__pyx_v_rval = 0.0;
- /* "PETSc/TS.pyx":395
- * cdef PetscInt ival = 0
+ /* "PETSc/TS.pyx":449
+ * def getMaxTime(self):
* cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) ) # <<<<<<<<<<<<<<
- * return (toReal(rval), toInt(ival))
+ * CHKERR( TSGetMaxTime(self.ts, &rval) ) # <<<<<<<<<<<<<<
+ * return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetDuration(__pyx_v_self->ts, (&__pyx_v_ival), (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 395, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetMaxTime(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 449, __pyx_L1_error)
- /* "PETSc/TS.pyx":396
+ /* "PETSc/TS.pyx":450
* cdef PetscReal rval = 0
- * CHKERR( TSGetDuration(self.ts, &ival, &rval) )
- * return (toReal(rval), toInt(ival)) # <<<<<<<<<<<<<<
+ * CHKERR( TSGetMaxTime(self.ts, &rval) )
+ * return toReal(rval) # <<<<<<<<<<<<<<
*
- * def getTotalSteps(self):
+ * def setMaxSteps(self, max_steps):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 396, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 450, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 396, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 396, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_2);
- PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
- __Pyx_GIVEREF(__pyx_t_3);
- PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3);
+ __pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
- __pyx_t_3 = 0;
- __pyx_r = __pyx_t_4;
- __pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":392
- * CHKERR( TSSetDuration(self.ts, ival, rval) )
+ /* "PETSc/TS.pyx":447
+ * CHKERR( TSSetMaxTime(self.ts, rval) )
*
- * def getDuration(self): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = 0
+ * def getMaxTime(self): # <<<<<<<<<<<<<<
* cdef PetscReal rval = 0
+ * CHKERR( TSGetMaxTime(self.ts, &rval) )
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
- __Pyx_XDECREF(__pyx_t_3);
- __Pyx_XDECREF(__pyx_t_4);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getDuration", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getMaxTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -180290,83 +192087,189 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_102getDuration(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":398
- * return (toReal(rval), toInt(ival))
+/* "PETSc/TS.pyx":452
+ * return toReal(rval)
*
- * def getTotalSteps(self): # <<<<<<<<<<<<<<
+ * def setMaxSteps(self, max_steps): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(max_steps)
+ * CHKERR( TSSetMaxSteps(self.ts, ival) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_114setMaxSteps[] = "TS.setMaxSteps(self, max_steps)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_max_steps = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setMaxSteps (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_max_steps,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_max_steps)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxSteps") < 0)) __PYX_ERR(37, 452, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_max_steps = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setMaxSteps", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 452, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSteps(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_max_steps);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSteps(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_max_steps) {
+ PetscInt __pyx_v_ival;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setMaxSteps", 0);
+
+ /* "PETSc/TS.pyx":453
+ *
+ * def setMaxSteps(self, max_steps):
+ * cdef PetscInt ival = asInt(max_steps) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetMaxSteps(self.ts, ival) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_max_steps); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(37, 453, __pyx_L1_error)
+ __pyx_v_ival = __pyx_t_1;
+
+ /* "PETSc/TS.pyx":454
+ * def setMaxSteps(self, max_steps):
+ * cdef PetscInt ival = asInt(max_steps)
+ * CHKERR( TSSetMaxSteps(self.ts, ival) ) # <<<<<<<<<<<<<<
+ *
+ * def getMaxSteps(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetMaxSteps(__pyx_v_self->ts, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 454, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":452
+ * return toReal(rval)
+ *
+ * def setMaxSteps(self, max_steps): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(max_steps)
+ * CHKERR( TSSetMaxSteps(self.ts, ival) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":456
+ * CHKERR( TSSetMaxSteps(self.ts, ival) )
+ *
+ * def getMaxSteps(self): # <<<<<<<<<<<<<<
* cdef PetscInt ival = 0
- * CHKERR( TSGetTotalSteps(self.ts, &ival) )
+ * CHKERR( TSGetMaxSteps(self.ts, &ival) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_105getTotalSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_104getTotalSteps[] = "TS.getTotalSteps(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_105getTotalSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_117getMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_116getMaxSteps[] = "TS.getMaxSteps(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_117getMaxSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getTotalSteps (wrapper)", 0);
+ __Pyx_RefNannySetupContext("getMaxSteps (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getTotalSteps", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTotalSteps", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_104getTotalSteps(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("getMaxSteps", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxSteps", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_116getMaxSteps(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_104getTotalSteps(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getMaxSteps(struct PyPetscTSObject *__pyx_v_self) {
PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
- __Pyx_RefNannySetupContext("getTotalSteps", 0);
+ __Pyx_RefNannySetupContext("getMaxSteps", 0);
- /* "PETSc/TS.pyx":399
+ /* "PETSc/TS.pyx":457
*
- * def getTotalSteps(self):
+ * def getMaxSteps(self):
* cdef PetscInt ival = 0 # <<<<<<<<<<<<<<
- * CHKERR( TSGetTotalSteps(self.ts, &ival) )
+ * CHKERR( TSGetMaxSteps(self.ts, &ival) )
* return toInt(ival)
*/
__pyx_v_ival = 0;
- /* "PETSc/TS.pyx":400
- * def getTotalSteps(self):
+ /* "PETSc/TS.pyx":458
+ * def getMaxSteps(self):
* cdef PetscInt ival = 0
- * CHKERR( TSGetTotalSteps(self.ts, &ival) ) # <<<<<<<<<<<<<<
+ * CHKERR( TSGetMaxSteps(self.ts, &ival) ) # <<<<<<<<<<<<<<
* return toInt(ival)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTotalSteps(__pyx_v_self->ts, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 400, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetMaxSteps(__pyx_v_self->ts, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 458, __pyx_L1_error)
- /* "PETSc/TS.pyx":401
+ /* "PETSc/TS.pyx":459
* cdef PetscInt ival = 0
- * CHKERR( TSGetTotalSteps(self.ts, &ival) )
+ * CHKERR( TSGetMaxSteps(self.ts, &ival) )
* return toInt(ival) # <<<<<<<<<<<<<<
*
* def getSNESIterations(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 401, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ival); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 459, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":398
- * return (toReal(rval), toInt(ival))
+ /* "PETSc/TS.pyx":456
+ * CHKERR( TSSetMaxSteps(self.ts, ival) )
*
- * def getTotalSteps(self): # <<<<<<<<<<<<<<
+ * def getMaxSteps(self): # <<<<<<<<<<<<<<
* cdef PetscInt ival = 0
- * CHKERR( TSGetTotalSteps(self.ts, &ival) )
+ * CHKERR( TSGetMaxSteps(self.ts, &ival) )
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getTotalSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getMaxSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -180374,7 +192277,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_104getTotalSteps(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":403
+/* "PETSc/TS.pyx":461
* return toInt(ival)
*
* def getSNESIterations(self): # <<<<<<<<<<<<<<
@@ -180383,23 +192286,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_104getTotalSteps(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_107getSNESIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_106getSNESIterations[] = "TS.getSNESIterations(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_107getSNESIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_119getSNESIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_118getSNESIterations[] = "TS.getSNESIterations(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_119getSNESIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getSNESIterations (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getSNESIterations", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSNESIterations", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_118getSNESIterations(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_118getSNESIterations(struct PyPetscTSObject *__pyx_v_self) {
PetscInt __pyx_v_n;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -180407,7 +192310,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(struct PyPet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getSNESIterations", 0);
- /* "PETSc/TS.pyx":404
+ /* "PETSc/TS.pyx":462
*
* def getSNESIterations(self):
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -180416,16 +192319,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(struct PyPet
*/
__pyx_v_n = 0;
- /* "PETSc/TS.pyx":405
+ /* "PETSc/TS.pyx":463
* def getSNESIterations(self):
* cdef PetscInt n = 0
* CHKERR( TSGetSNESIterations(self.ts, &n) ) # <<<<<<<<<<<<<<
* return toInt(n)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSNESIterations(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 405, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSNESIterations(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 463, __pyx_L1_error)
- /* "PETSc/TS.pyx":406
+ /* "PETSc/TS.pyx":464
* cdef PetscInt n = 0
* CHKERR( TSGetSNESIterations(self.ts, &n) )
* return toInt(n) # <<<<<<<<<<<<<<
@@ -180433,13 +192336,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(struct PyPet
* def getKSPIterations(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 406, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 464, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":403
+ /* "PETSc/TS.pyx":461
* return toInt(ival)
*
* def getSNESIterations(self): # <<<<<<<<<<<<<<
@@ -180458,7 +192361,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(struct PyPet
return __pyx_r;
}
-/* "PETSc/TS.pyx":408
+/* "PETSc/TS.pyx":466
* return toInt(n)
*
* def getKSPIterations(self): # <<<<<<<<<<<<<<
@@ -180467,23 +192370,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_106getSNESIterations(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_109getKSPIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_108getKSPIterations[] = "TS.getKSPIterations(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_109getKSPIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121getKSPIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_120getKSPIterations[] = "TS.getKSPIterations(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121getKSPIterations(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getKSPIterations (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getKSPIterations", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getKSPIterations", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_120getKSPIterations(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120getKSPIterations(struct PyPetscTSObject *__pyx_v_self) {
PetscInt __pyx_v_n;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -180491,7 +192394,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(struct PyPets
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getKSPIterations", 0);
- /* "PETSc/TS.pyx":409
+ /* "PETSc/TS.pyx":467
*
* def getKSPIterations(self):
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -180500,16 +192403,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(struct PyPets
*/
__pyx_v_n = 0;
- /* "PETSc/TS.pyx":410
+ /* "PETSc/TS.pyx":468
* def getKSPIterations(self):
* cdef PetscInt n = 0
* CHKERR( TSGetKSPIterations(self.ts, &n) ) # <<<<<<<<<<<<<<
* return toInt(n)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetKSPIterations(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 410, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetKSPIterations(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 468, __pyx_L1_error)
- /* "PETSc/TS.pyx":411
+ /* "PETSc/TS.pyx":469
* cdef PetscInt n = 0
* CHKERR( TSGetKSPIterations(self.ts, &n) )
* return toInt(n) # <<<<<<<<<<<<<<
@@ -180517,13 +192420,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(struct PyPets
* def setMaxStepRejections(self, n):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 411, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 469, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":408
+ /* "PETSc/TS.pyx":466
* return toInt(n)
*
* def getKSPIterations(self): # <<<<<<<<<<<<<<
@@ -180542,7 +192445,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(struct PyPets
return __pyx_r;
}
-/* "PETSc/TS.pyx":413
+/* "PETSc/TS.pyx":471
* return toInt(n)
*
* def setMaxStepRejections(self, n): # <<<<<<<<<<<<<<
@@ -180551,9 +192454,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_108getKSPIterations(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_110setMaxStepRejections[] = "TS.setMaxStepRejections(self, n)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_123setMaxStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_122setMaxStepRejections[] = "TS.setMaxStepRejections(self, n)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_123setMaxStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_n = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -180566,6 +192469,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxStepRejections(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -180576,7 +192480,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxStepRejections(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxStepRejections") < 0)) __PYX_ERR(37, 413, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxStepRejections") < 0)) __PYX_ERR(37, 471, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -180587,20 +192491,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxStepRejections(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMaxStepRejections", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 413, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMaxStepRejections", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 471, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxStepRejections", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_110setMaxStepRejections(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_n);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_122setMaxStepRejections(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_n);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_110setMaxStepRejections(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122setMaxStepRejections(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n) {
PetscInt __pyx_v_rej;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -180608,26 +192512,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_110setMaxStepRejections(struct Py
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMaxStepRejections", 0);
- /* "PETSc/TS.pyx":414
+ /* "PETSc/TS.pyx":472
*
* def setMaxStepRejections(self, n):
* cdef PetscInt rej = asInt(n) # <<<<<<<<<<<<<<
* CHKERR( TSSetMaxStepRejections(self.ts, rej))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(37, 414, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(37, 472, __pyx_L1_error)
__pyx_v_rej = __pyx_t_1;
- /* "PETSc/TS.pyx":415
+ /* "PETSc/TS.pyx":473
* def setMaxStepRejections(self, n):
* cdef PetscInt rej = asInt(n)
* CHKERR( TSSetMaxStepRejections(self.ts, rej)) # <<<<<<<<<<<<<<
*
* #def getMaxStepRejections(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetMaxStepRejections(__pyx_v_self->ts, __pyx_v_rej)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 415, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetMaxStepRejections(__pyx_v_self->ts, __pyx_v_rej)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 473, __pyx_L1_error)
- /* "PETSc/TS.pyx":413
+ /* "PETSc/TS.pyx":471
* return toInt(n)
*
* def setMaxStepRejections(self, n): # <<<<<<<<<<<<<<
@@ -180647,7 +192551,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_110setMaxStepRejections(struct Py
return __pyx_r;
}
-/* "PETSc/TS.pyx":422
+/* "PETSc/TS.pyx":480
* # return toInt(n)
*
* def getStepRejections(self): # <<<<<<<<<<<<<<
@@ -180656,23 +192560,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_110setMaxStepRejections(struct Py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_113getStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_112getStepRejections[] = "TS.getStepRejections(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_113getStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_125getStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_124getStepRejections[] = "TS.getStepRejections(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_125getStepRejections(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getStepRejections (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getStepRejections", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getStepRejections", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_124getStepRejections(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_124getStepRejections(struct PyPetscTSObject *__pyx_v_self) {
PetscInt __pyx_v_n;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -180680,7 +192584,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(struct PyPet
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getStepRejections", 0);
- /* "PETSc/TS.pyx":423
+ /* "PETSc/TS.pyx":481
*
* def getStepRejections(self):
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -180689,16 +192593,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(struct PyPet
*/
__pyx_v_n = 0;
- /* "PETSc/TS.pyx":424
+ /* "PETSc/TS.pyx":482
* def getStepRejections(self):
* cdef PetscInt n = 0
* CHKERR( TSGetStepRejections(self.ts, &n) ) # <<<<<<<<<<<<<<
* return toInt(n)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetStepRejections(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 424, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetStepRejections(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 482, __pyx_L1_error)
- /* "PETSc/TS.pyx":425
+ /* "PETSc/TS.pyx":483
* cdef PetscInt n = 0
* CHKERR( TSGetStepRejections(self.ts, &n) )
* return toInt(n) # <<<<<<<<<<<<<<
@@ -180706,13 +192610,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(struct PyPet
* def setMaxSNESFailures(self, n):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 425, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 483, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":422
+ /* "PETSc/TS.pyx":480
* # return toInt(n)
*
* def getStepRejections(self): # <<<<<<<<<<<<<<
@@ -180731,7 +192635,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(struct PyPet
return __pyx_r;
}
-/* "PETSc/TS.pyx":427
+/* "PETSc/TS.pyx":485
* return toInt(n)
*
* def setMaxSNESFailures(self, n): # <<<<<<<<<<<<<<
@@ -180740,9 +192644,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_112getStepRejections(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_114setMaxSNESFailures[] = "TS.setMaxSNESFailures(self, n)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_127setMaxSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_126setMaxSNESFailures[] = "TS.setMaxSNESFailures(self, n)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_127setMaxSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_n = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -180755,6 +192659,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSNESFailures(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -180765,7 +192670,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSNESFailures(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxSNESFailures") < 0)) __PYX_ERR(37, 427, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMaxSNESFailures") < 0)) __PYX_ERR(37, 485, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -180776,20 +192681,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSNESFailures(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMaxSNESFailures", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 427, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMaxSNESFailures", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 485, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setMaxSNESFailures", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSNESFailures(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_n);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_126setMaxSNESFailures(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_n);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSNESFailures(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_126setMaxSNESFailures(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_n) {
PetscInt __pyx_v_fails;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -180797,26 +192702,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSNESFailures(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("setMaxSNESFailures", 0);
- /* "PETSc/TS.pyx":428
+ /* "PETSc/TS.pyx":486
*
* def setMaxSNESFailures(self, n):
* cdef PetscInt fails = asInt(n) # <<<<<<<<<<<<<<
* CHKERR( TSSetMaxSNESFailures(self.ts, fails))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(37, 428, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(37, 486, __pyx_L1_error)
__pyx_v_fails = __pyx_t_1;
- /* "PETSc/TS.pyx":429
+ /* "PETSc/TS.pyx":487
* def setMaxSNESFailures(self, n):
* cdef PetscInt fails = asInt(n)
* CHKERR( TSSetMaxSNESFailures(self.ts, fails)) # <<<<<<<<<<<<<<
*
* #def getMaxSNESFailures(self, n):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetMaxSNESFailures(__pyx_v_self->ts, __pyx_v_fails)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 429, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetMaxSNESFailures(__pyx_v_self->ts, __pyx_v_fails)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 487, __pyx_L1_error)
- /* "PETSc/TS.pyx":427
+ /* "PETSc/TS.pyx":485
* return toInt(n)
*
* def setMaxSNESFailures(self, n): # <<<<<<<<<<<<<<
@@ -180836,7 +192741,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSNESFailures(struct PyPe
return __pyx_r;
}
-/* "PETSc/TS.pyx":436
+/* "PETSc/TS.pyx":494
* # return toInt(n)
*
* def getSNESFailures(self): # <<<<<<<<<<<<<<
@@ -180845,23 +192750,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_114setMaxSNESFailures(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_117getSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_116getSNESFailures[] = "TS.getSNESFailures(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_117getSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_129getSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_128getSNESFailures[] = "TS.getSNESFailures(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_129getSNESFailures(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getSNESFailures (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getSNESFailures", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getSNESFailures", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_128getSNESFailures(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getSNESFailures(struct PyPetscTSObject *__pyx_v_self) {
PetscInt __pyx_v_n;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -180869,7 +192774,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getSNESFailures", 0);
- /* "PETSc/TS.pyx":437
+ /* "PETSc/TS.pyx":495
*
* def getSNESFailures(self):
* cdef PetscInt n = 0 # <<<<<<<<<<<<<<
@@ -180878,16 +192783,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(struct PyPetsc
*/
__pyx_v_n = 0;
- /* "PETSc/TS.pyx":438
+ /* "PETSc/TS.pyx":496
* def getSNESFailures(self):
* cdef PetscInt n = 0
* CHKERR( TSGetSNESFailures(self.ts, &n) ) # <<<<<<<<<<<<<<
* return toInt(n)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSNESFailures(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 438, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSNESFailures(__pyx_v_self->ts, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 496, __pyx_L1_error)
- /* "PETSc/TS.pyx":439
+ /* "PETSc/TS.pyx":497
* cdef PetscInt n = 0
* CHKERR( TSGetSNESFailures(self.ts, &n) )
* return toInt(n) # <<<<<<<<<<<<<<
@@ -180895,13 +192800,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(struct PyPetsc
* def setErrorIfStepFails(self, flag=True):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 439, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 497, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":436
+ /* "PETSc/TS.pyx":494
* # return toInt(n)
*
* def getSNESFailures(self): # <<<<<<<<<<<<<<
@@ -180920,7 +192825,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":441
+/* "PETSc/TS.pyx":499
* return toInt(n)
*
* def setErrorIfStepFails(self, flag=True): # <<<<<<<<<<<<<<
@@ -180929,9 +192834,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_116getSNESFailures(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_119setErrorIfStepFails(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_118setErrorIfStepFails[] = "TS.setErrorIfStepFails(self, flag=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_119setErrorIfStepFails(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setErrorIfStepFails(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_130setErrorIfStepFails[] = "TS.setErrorIfStepFails(self, flag=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setErrorIfStepFails(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_flag = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -180945,6 +192850,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_119setErrorIfStepFails(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -180957,11 +192863,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_119setErrorIfStepFails(PyObject *
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setErrorIfStepFails") < 0)) __PYX_ERR(37, 441, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setErrorIfStepFails") < 0)) __PYX_ERR(37, 499, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -180970,20 +192877,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_119setErrorIfStepFails(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setErrorIfStepFails", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 441, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setErrorIfStepFails", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 499, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setErrorIfStepFails", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_118setErrorIfStepFails(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_flag);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_130setErrorIfStepFails(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_flag);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_118setErrorIfStepFails(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setErrorIfStepFails(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag) {
PetscBool __pyx_v_bval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -180991,26 +192898,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_118setErrorIfStepFails(struct PyP
int __pyx_t_2;
__Pyx_RefNannySetupContext("setErrorIfStepFails", 0);
- /* "PETSc/TS.pyx":442
+ /* "PETSc/TS.pyx":500
*
* def setErrorIfStepFails(self, flag=True):
* cdef PetscBool bval = flag # <<<<<<<<<<<<<<
* CHKERR( TSSetErrorIfStepFails(self.ts, bval))
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 442, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 500, __pyx_L1_error)
__pyx_v_bval = __pyx_t_1;
- /* "PETSc/TS.pyx":443
+ /* "PETSc/TS.pyx":501
* def setErrorIfStepFails(self, flag=True):
* cdef PetscBool bval = flag
* CHKERR( TSSetErrorIfStepFails(self.ts, bval)) # <<<<<<<<<<<<<<
*
* def setTolerances(self, rtol=None, atol=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetErrorIfStepFails(__pyx_v_self->ts, __pyx_v_bval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 443, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetErrorIfStepFails(__pyx_v_self->ts, __pyx_v_bval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 501, __pyx_L1_error)
- /* "PETSc/TS.pyx":441
+ /* "PETSc/TS.pyx":499
* return toInt(n)
*
* def setErrorIfStepFails(self, flag=True): # <<<<<<<<<<<<<<
@@ -181030,7 +192937,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_118setErrorIfStepFails(struct PyP
return __pyx_r;
}
-/* "PETSc/TS.pyx":445
+/* "PETSc/TS.pyx":503
* CHKERR( TSSetErrorIfStepFails(self.ts, bval))
*
* def setTolerances(self, rtol=None, atol=None): # <<<<<<<<<<<<<<
@@ -181039,9 +192946,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_118setErrorIfStepFails(struct PyP
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_120setTolerances[] = "TS.setTolerances(self, rtol=None, atol=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_133setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_132setTolerances[] = "TS.setTolerances(self, rtol=None, atol=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_133setTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_rtol = 0;
PyObject *__pyx_v_atol = 0;
PyObject *__pyx_r = 0;
@@ -181057,7 +192964,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121setTolerances(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -181068,6 +192977,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121setTolerances(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rtol);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_atol);
@@ -181075,12 +192985,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121setTolerances(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTolerances") < 0)) __PYX_ERR(37, 445, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTolerances") < 0)) __PYX_ERR(37, 503, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -181090,20 +193002,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_121setTolerances(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTolerances", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 445, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTolerances", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 503, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setTolerances", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_rtol, __pyx_v_atol);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_132setTolerances(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_rtol, __pyx_v_atol);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_132setTolerances(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_rtol, PyObject *__pyx_v_atol) {
PetscReal __pyx_v_rrtol;
PetscReal __pyx_v_ratol;
Vec __pyx_v_vrtol;
@@ -181117,7 +193029,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
int __pyx_t_5;
__Pyx_RefNannySetupContext("setTolerances", 0);
- /* "PETSc/TS.pyx":446
+ /* "PETSc/TS.pyx":504
*
* def setTolerances(self, rtol=None, atol=None):
* cdef PetscReal rrtol = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -181126,7 +193038,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
*/
__pyx_v_rrtol = PETSC_DEFAULT;
- /* "PETSc/TS.pyx":447
+ /* "PETSc/TS.pyx":505
* def setTolerances(self, rtol=None, atol=None):
* cdef PetscReal rrtol = PETSC_DEFAULT
* cdef PetscReal ratol = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -181135,7 +193047,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
*/
__pyx_v_ratol = PETSC_DEFAULT;
- /* "PETSc/TS.pyx":448
+ /* "PETSc/TS.pyx":506
* cdef PetscReal rrtol = PETSC_DEFAULT
* cdef PetscReal ratol = PETSC_DEFAULT
* cdef PetscVec vrtol = NULL # <<<<<<<<<<<<<<
@@ -181144,7 +193056,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
*/
__pyx_v_vrtol = NULL;
- /* "PETSc/TS.pyx":449
+ /* "PETSc/TS.pyx":507
* cdef PetscReal ratol = PETSC_DEFAULT
* cdef PetscVec vrtol = NULL
* cdef PetscVec vatol = NULL # <<<<<<<<<<<<<<
@@ -181153,7 +193065,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
*/
__pyx_v_vatol = NULL;
- /* "PETSc/TS.pyx":450
+ /* "PETSc/TS.pyx":508
* cdef PetscVec vrtol = NULL
* cdef PetscVec vatol = NULL
* if rtol is None: # <<<<<<<<<<<<<<
@@ -181166,7 +193078,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
goto __pyx_L3;
}
- /* "PETSc/TS.pyx":452
+ /* "PETSc/TS.pyx":510
* if rtol is None:
* pass
* elif isinstance(rtol, Vec): # <<<<<<<<<<<<<<
@@ -181177,7 +193089,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/TS.pyx":453
+ /* "PETSc/TS.pyx":511
* pass
* elif isinstance(rtol, Vec):
* vrtol = (<Vec>rtol).vec # <<<<<<<<<<<<<<
@@ -181187,7 +193099,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
__pyx_t_3 = ((struct PyPetscVecObject *)__pyx_v_rtol)->vec;
__pyx_v_vrtol = __pyx_t_3;
- /* "PETSc/TS.pyx":452
+ /* "PETSc/TS.pyx":510
* if rtol is None:
* pass
* elif isinstance(rtol, Vec): # <<<<<<<<<<<<<<
@@ -181197,7 +193109,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
goto __pyx_L3;
}
- /* "PETSc/TS.pyx":455
+ /* "PETSc/TS.pyx":513
* vrtol = (<Vec>rtol).vec
* else:
* rrtol = asReal(rtol) # <<<<<<<<<<<<<<
@@ -181205,12 +193117,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
* pass
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 455, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_rtol); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 513, __pyx_L1_error)
__pyx_v_rrtol = __pyx_t_4;
}
__pyx_L3:;
- /* "PETSc/TS.pyx":456
+ /* "PETSc/TS.pyx":514
* else:
* rrtol = asReal(rtol)
* if atol is None: # <<<<<<<<<<<<<<
@@ -181223,7 +193135,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
goto __pyx_L4;
}
- /* "PETSc/TS.pyx":458
+ /* "PETSc/TS.pyx":516
* if atol is None:
* pass
* elif isinstance(atol, Vec): # <<<<<<<<<<<<<<
@@ -181234,7 +193146,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/TS.pyx":459
+ /* "PETSc/TS.pyx":517
* pass
* elif isinstance(atol, Vec):
* vatol = (<Vec>atol).vec # <<<<<<<<<<<<<<
@@ -181244,7 +193156,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
__pyx_t_3 = ((struct PyPetscVecObject *)__pyx_v_atol)->vec;
__pyx_v_vatol = __pyx_t_3;
- /* "PETSc/TS.pyx":458
+ /* "PETSc/TS.pyx":516
* if atol is None:
* pass
* elif isinstance(atol, Vec): # <<<<<<<<<<<<<<
@@ -181254,7 +193166,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
goto __pyx_L4;
}
- /* "PETSc/TS.pyx":461
+ /* "PETSc/TS.pyx":519
* vatol = (<Vec>atol).vec
* else:
* ratol = asReal(atol) # <<<<<<<<<<<<<<
@@ -181262,21 +193174,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
*
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_4 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 461, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_atol); if (unlikely(__pyx_t_4 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 519, __pyx_L1_error)
__pyx_v_ratol = __pyx_t_4;
}
__pyx_L4:;
- /* "PETSc/TS.pyx":462
+ /* "PETSc/TS.pyx":520
* else:
* ratol = asReal(atol)
* CHKERR( TSSetTolerances(self.ts, ratol, vatol, rrtol, vrtol) ) # <<<<<<<<<<<<<<
*
* def getTolerances(self):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetTolerances(__pyx_v_self->ts, __pyx_v_ratol, __pyx_v_vatol, __pyx_v_rrtol, __pyx_v_vrtol)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 462, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetTolerances(__pyx_v_self->ts, __pyx_v_ratol, __pyx_v_vatol, __pyx_v_rrtol, __pyx_v_vrtol)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 520, __pyx_L1_error)
- /* "PETSc/TS.pyx":445
+ /* "PETSc/TS.pyx":503
* CHKERR( TSSetErrorIfStepFails(self.ts, bval))
*
* def setTolerances(self, rtol=None, atol=None): # <<<<<<<<<<<<<<
@@ -181296,7 +193208,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":464
+/* "PETSc/TS.pyx":522
* CHKERR( TSSetTolerances(self.ts, ratol, vatol, rrtol, vrtol) )
*
* def getTolerances(self): # <<<<<<<<<<<<<<
@@ -181305,23 +193217,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_120setTolerances(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_123getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_122getTolerances[] = "TS.getTolerances(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_123getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_135getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_134getTolerances[] = "TS.getTolerances(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_135getTolerances(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getTolerances (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getTolerances", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTolerances", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_134getTolerances(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_134getTolerances(struct PyPetscTSObject *__pyx_v_self) {
PetscReal __pyx_v_rrtol;
PetscReal __pyx_v_ratol;
Vec __pyx_v_vrtol;
@@ -181335,7 +193247,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getTolerances", 0);
- /* "PETSc/TS.pyx":465
+ /* "PETSc/TS.pyx":523
*
* def getTolerances(self):
* cdef PetscReal rrtol = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -181344,7 +193256,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
*/
__pyx_v_rrtol = PETSC_DEFAULT;
- /* "PETSc/TS.pyx":466
+ /* "PETSc/TS.pyx":524
* def getTolerances(self):
* cdef PetscReal rrtol = PETSC_DEFAULT
* cdef PetscReal ratol = PETSC_DEFAULT # <<<<<<<<<<<<<<
@@ -181353,7 +193265,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
*/
__pyx_v_ratol = PETSC_DEFAULT;
- /* "PETSc/TS.pyx":467
+ /* "PETSc/TS.pyx":525
* cdef PetscReal rrtol = PETSC_DEFAULT
* cdef PetscReal ratol = PETSC_DEFAULT
* cdef PetscVec vrtol = NULL # <<<<<<<<<<<<<<
@@ -181362,7 +193274,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
*/
__pyx_v_vrtol = NULL;
- /* "PETSc/TS.pyx":468
+ /* "PETSc/TS.pyx":526
* cdef PetscReal ratol = PETSC_DEFAULT
* cdef PetscVec vrtol = NULL
* cdef PetscVec vatol = NULL # <<<<<<<<<<<<<<
@@ -181371,16 +193283,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
*/
__pyx_v_vatol = NULL;
- /* "PETSc/TS.pyx":469
+ /* "PETSc/TS.pyx":527
* cdef PetscVec vrtol = NULL
* cdef PetscVec vatol = NULL
* CHKERR( TSGetTolerances(self.ts, &ratol, &vatol, &rrtol, &vrtol) ) # <<<<<<<<<<<<<<
* cdef object rtol = None
* if vrtol != NULL:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTolerances(__pyx_v_self->ts, (&__pyx_v_ratol), (&__pyx_v_vatol), (&__pyx_v_rrtol), (&__pyx_v_vrtol))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 469, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetTolerances(__pyx_v_self->ts, (&__pyx_v_ratol), (&__pyx_v_vatol), (&__pyx_v_rrtol), (&__pyx_v_vrtol))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 527, __pyx_L1_error)
- /* "PETSc/TS.pyx":470
+ /* "PETSc/TS.pyx":528
* cdef PetscVec vatol = NULL
* CHKERR( TSGetTolerances(self.ts, &ratol, &vatol, &rrtol, &vrtol) )
* cdef object rtol = None # <<<<<<<<<<<<<<
@@ -181390,7 +193302,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
__Pyx_INCREF(Py_None);
__pyx_v_rtol = Py_None;
- /* "PETSc/TS.pyx":471
+ /* "PETSc/TS.pyx":529
* CHKERR( TSGetTolerances(self.ts, &ratol, &vatol, &rrtol, &vrtol) )
* cdef object rtol = None
* if vrtol != NULL: # <<<<<<<<<<<<<<
@@ -181400,19 +193312,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
__pyx_t_2 = ((__pyx_v_vrtol != NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/TS.pyx":472
+ /* "PETSc/TS.pyx":530
* cdef object rtol = None
* if vrtol != NULL:
* rtol = ref_Vec(vrtol) # <<<<<<<<<<<<<<
* else:
* rtol = toReal(rrtol)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_vrtol)); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 472, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_vrtol)); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 530, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_rtol, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/TS.pyx":471
+ /* "PETSc/TS.pyx":529
* CHKERR( TSGetTolerances(self.ts, &ratol, &vatol, &rrtol, &vrtol) )
* cdef object rtol = None
* if vrtol != NULL: # <<<<<<<<<<<<<<
@@ -181422,7 +193334,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
goto __pyx_L3;
}
- /* "PETSc/TS.pyx":474
+ /* "PETSc/TS.pyx":532
* rtol = ref_Vec(vrtol)
* else:
* rtol = toReal(rrtol) # <<<<<<<<<<<<<<
@@ -181430,14 +193342,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
* if vatol != NULL:
*/
/*else*/ {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rrtol); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 474, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rrtol); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 532, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_rtol, __pyx_t_3);
__pyx_t_3 = 0;
}
__pyx_L3:;
- /* "PETSc/TS.pyx":475
+ /* "PETSc/TS.pyx":533
* else:
* rtol = toReal(rrtol)
* cdef object atol = None # <<<<<<<<<<<<<<
@@ -181447,7 +193359,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
__Pyx_INCREF(Py_None);
__pyx_v_atol = Py_None;
- /* "PETSc/TS.pyx":476
+ /* "PETSc/TS.pyx":534
* rtol = toReal(rrtol)
* cdef object atol = None
* if vatol != NULL: # <<<<<<<<<<<<<<
@@ -181457,19 +193369,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
__pyx_t_2 = ((__pyx_v_vatol != NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/TS.pyx":477
+ /* "PETSc/TS.pyx":535
* cdef object atol = None
* if vatol != NULL:
* atol = ref_Vec(vatol) # <<<<<<<<<<<<<<
* else:
* atol = toReal(ratol)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_vatol)); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 477, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec(__pyx_v_vatol)); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 535, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_atol, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/TS.pyx":476
+ /* "PETSc/TS.pyx":534
* rtol = toReal(rrtol)
* cdef object atol = None
* if vatol != NULL: # <<<<<<<<<<<<<<
@@ -181479,7 +193391,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
goto __pyx_L4;
}
- /* "PETSc/TS.pyx":479
+ /* "PETSc/TS.pyx":537
* atol = ref_Vec(vatol)
* else:
* atol = toReal(ratol) # <<<<<<<<<<<<<<
@@ -181487,14 +193399,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
*
*/
/*else*/ {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_ratol); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 479, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_ratol); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_atol, __pyx_t_3);
__pyx_t_3 = 0;
}
__pyx_L4:;
- /* "PETSc/TS.pyx":480
+ /* "PETSc/TS.pyx":538
* else:
* atol = toReal(ratol)
* return (rtol, atol) # <<<<<<<<<<<<<<
@@ -181502,7 +193414,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
* def setExactFinalTime(self, option):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 480, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 538, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_rtol);
__Pyx_GIVEREF(__pyx_v_rtol);
@@ -181514,7 +193426,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":464
+ /* "PETSc/TS.pyx":522
* CHKERR( TSSetTolerances(self.ts, ratol, vatol, rrtol, vrtol) )
*
* def getTolerances(self): # <<<<<<<<<<<<<<
@@ -181535,7 +193447,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":482
+/* "PETSc/TS.pyx":540
* return (rtol, atol)
*
* def setExactFinalTime(self, option): # <<<<<<<<<<<<<<
@@ -181544,9 +193456,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_122getTolerances(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_125setExactFinalTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_124setExactFinalTime[] = "TS.setExactFinalTime(self, option)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_125setExactFinalTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137setExactFinalTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_136setExactFinalTime[] = "TS.setExactFinalTime(self, option)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137setExactFinalTime(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_option = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -181559,6 +193471,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_125setExactFinalTime(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -181569,7 +193482,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_125setExactFinalTime(PyObject *__
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setExactFinalTime") < 0)) __PYX_ERR(37, 482, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setExactFinalTime") < 0)) __PYX_ERR(37, 540, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -181580,20 +193493,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_125setExactFinalTime(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setExactFinalTime", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 482, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setExactFinalTime", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 540, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setExactFinalTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_124setExactFinalTime(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_option);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_136setExactFinalTime(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_option);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_124setExactFinalTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_option) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_136setExactFinalTime(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_option) {
TSExactFinalTimeOption __pyx_v_oval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -181601,26 +193514,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_124setExactFinalTime(struct PyPet
int __pyx_t_2;
__Pyx_RefNannySetupContext("setExactFinalTime", 0);
- /* "PETSc/TS.pyx":483
+ /* "PETSc/TS.pyx":541
*
* def setExactFinalTime(self, option):
* cdef PetscTSExactFinalTimeOption oval = option # <<<<<<<<<<<<<<
* CHKERR( TSSetExactFinalTime(self.ts, oval) )
*
*/
- __pyx_t_1 = ((TSExactFinalTimeOption)__Pyx_PyInt_As_TSExactFinalTimeOption(__pyx_v_option)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 483, __pyx_L1_error)
+ __pyx_t_1 = ((TSExactFinalTimeOption)__Pyx_PyInt_As_TSExactFinalTimeOption(__pyx_v_option)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 541, __pyx_L1_error)
__pyx_v_oval = __pyx_t_1;
- /* "PETSc/TS.pyx":484
+ /* "PETSc/TS.pyx":542
* def setExactFinalTime(self, option):
* cdef PetscTSExactFinalTimeOption oval = option
* CHKERR( TSSetExactFinalTime(self.ts, oval) ) # <<<<<<<<<<<<<<
*
* def setConvergedReason(self, reason):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetExactFinalTime(__pyx_v_self->ts, __pyx_v_oval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 484, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetExactFinalTime(__pyx_v_self->ts, __pyx_v_oval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 542, __pyx_L1_error)
- /* "PETSc/TS.pyx":482
+ /* "PETSc/TS.pyx":540
* return (rtol, atol)
*
* def setExactFinalTime(self, option): # <<<<<<<<<<<<<<
@@ -181640,7 +193553,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_124setExactFinalTime(struct PyPet
return __pyx_r;
}
-/* "PETSc/TS.pyx":486
+/* "PETSc/TS.pyx":544
* CHKERR( TSSetExactFinalTime(self.ts, oval) )
*
* def setConvergedReason(self, reason): # <<<<<<<<<<<<<<
@@ -181649,9 +193562,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_124setExactFinalTime(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_127setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_126setConvergedReason[] = "TS.setConvergedReason(self, reason)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_127setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_139setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_138setConvergedReason[] = "TS.setConvergedReason(self, reason)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_139setConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_reason = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -181664,6 +193577,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_127setConvergedReason(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -181674,7 +193588,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_127setConvergedReason(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergedReason") < 0)) __PYX_ERR(37, 486, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConvergedReason") < 0)) __PYX_ERR(37, 544, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -181685,20 +193599,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_127setConvergedReason(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConvergedReason", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 486, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConvergedReason", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 544, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setConvergedReason", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_126setConvergedReason(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_reason);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_138setConvergedReason(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_reason);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_126setConvergedReason(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_reason) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_138setConvergedReason(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_reason) {
TSConvergedReason __pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -181706,26 +193620,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_126setConvergedReason(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("setConvergedReason", 0);
- /* "PETSc/TS.pyx":487
+ /* "PETSc/TS.pyx":545
*
* def setConvergedReason(self, reason):
* cdef PetscTSConvergedReason cval = reason # <<<<<<<<<<<<<<
* CHKERR( TSSetConvergedReason(self.ts, cval) )
*
*/
- __pyx_t_1 = ((TSConvergedReason)__Pyx_PyInt_As_TSConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 487, __pyx_L1_error)
+ __pyx_t_1 = ((TSConvergedReason)__Pyx_PyInt_As_TSConvergedReason(__pyx_v_reason)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 545, __pyx_L1_error)
__pyx_v_cval = __pyx_t_1;
- /* "PETSc/TS.pyx":488
+ /* "PETSc/TS.pyx":546
* def setConvergedReason(self, reason):
* cdef PetscTSConvergedReason cval = reason
* CHKERR( TSSetConvergedReason(self.ts, cval) ) # <<<<<<<<<<<<<<
*
* def getConvergedReason(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetConvergedReason(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 488, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetConvergedReason(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 546, __pyx_L1_error)
- /* "PETSc/TS.pyx":486
+ /* "PETSc/TS.pyx":544
* CHKERR( TSSetExactFinalTime(self.ts, oval) )
*
* def setConvergedReason(self, reason): # <<<<<<<<<<<<<<
@@ -181745,7 +193659,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_126setConvergedReason(struct PyPe
return __pyx_r;
}
-/* "PETSc/TS.pyx":490
+/* "PETSc/TS.pyx":548
* CHKERR( TSSetConvergedReason(self.ts, cval) )
*
* def getConvergedReason(self): # <<<<<<<<<<<<<<
@@ -181754,23 +193668,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_126setConvergedReason(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_129getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_128getConvergedReason[] = "TS.getConvergedReason(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_129getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_141getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_140getConvergedReason[] = "TS.getConvergedReason(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_141getConvergedReason(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getConvergedReason (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getConvergedReason", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getConvergedReason", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_140getConvergedReason(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_140getConvergedReason(struct PyPetscTSObject *__pyx_v_self) {
TSConvergedReason __pyx_v_reason;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -181778,7 +193692,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(struct PyPe
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getConvergedReason", 0);
- /* "PETSc/TS.pyx":491
+ /* "PETSc/TS.pyx":549
*
* def getConvergedReason(self):
* cdef PetscTSConvergedReason reason = TS_CONVERGED_ITERATING # <<<<<<<<<<<<<<
@@ -181787,16 +193701,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(struct PyPe
*/
__pyx_v_reason = TS_CONVERGED_ITERATING;
- /* "PETSc/TS.pyx":492
+ /* "PETSc/TS.pyx":550
* def getConvergedReason(self):
* cdef PetscTSConvergedReason reason = TS_CONVERGED_ITERATING
* CHKERR( TSGetConvergedReason(self.ts, &reason) ) # <<<<<<<<<<<<<<
* return reason
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetConvergedReason(__pyx_v_self->ts, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 492, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetConvergedReason(__pyx_v_self->ts, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 550, __pyx_L1_error)
- /* "PETSc/TS.pyx":493
+ /* "PETSc/TS.pyx":551
* cdef PetscTSConvergedReason reason = TS_CONVERGED_ITERATING
* CHKERR( TSGetConvergedReason(self.ts, &reason) )
* return reason # <<<<<<<<<<<<<<
@@ -181804,13 +193718,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(struct PyPe
* # --- monitoring ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_TSConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 493, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_From_TSConvergedReason(__pyx_v_reason); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 551, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":490
+ /* "PETSc/TS.pyx":548
* CHKERR( TSSetConvergedReason(self.ts, cval) )
*
* def getConvergedReason(self): # <<<<<<<<<<<<<<
@@ -181829,7 +193743,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(struct PyPe
return __pyx_r;
}
-/* "PETSc/TS.pyx":497
+/* "PETSc/TS.pyx":555
* # --- monitoring ---
*
* def setMonitor(self, monitor, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -181838,9 +193752,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_128getConvergedReason(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_130setMonitor[] = "TS.setMonitor(self, monitor, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_143setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_142setMonitor[] = "TS.setMonitor(self, monitor, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_143setMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_monitor = 0;
PyObject *__pyx_v_args = 0;
PyObject *__pyx_v_kargs = 0;
@@ -181857,8 +193771,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setMonitor(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -181867,11 +193784,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setMonitor(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_monitor)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -181879,12 +193798,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setMonitor(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMonitor") < 0)) __PYX_ERR(37, 497, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMonitor") < 0)) __PYX_ERR(37, 555, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -181896,20 +193817,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_131setMonitor(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMonitor", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 497, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMonitor", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 555, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setMonitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_monitor, __pyx_v_args, __pyx_v_kargs);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_142setMonitor(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_monitor, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_142setMonitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_monitor, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
PyObject *__pyx_v_monitorlist = 0;
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
@@ -181923,7 +193844,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":498
+ /* "PETSc/TS.pyx":556
*
* def setMonitor(self, monitor, args=None, kargs=None):
* if monitor is None: return # <<<<<<<<<<<<<<
@@ -181938,19 +193859,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
goto __pyx_L0;
}
- /* "PETSc/TS.pyx":499
+ /* "PETSc/TS.pyx":557
* def setMonitor(self, monitor, args=None, kargs=None):
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__') # <<<<<<<<<<<<<<
* if monitorlist is None:
* monitorlist = []
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 499, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 557, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_monitorlist = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/TS.pyx":500
+ /* "PETSc/TS.pyx":558
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None: # <<<<<<<<<<<<<<
@@ -181961,39 +193882,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- /* "PETSc/TS.pyx":501
+ /* "PETSc/TS.pyx":559
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None:
* monitorlist = [] # <<<<<<<<<<<<<<
* self.set_attr('__monitor__', monitorlist)
* CHKERR( TSMonitorSet(self.ts, TS_Monitor, NULL, NULL) )
*/
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 501, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 559, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_monitorlist, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/TS.pyx":502
+ /* "PETSc/TS.pyx":560
* if monitorlist is None:
* monitorlist = []
* self.set_attr('__monitor__', monitorlist) # <<<<<<<<<<<<<<
* CHKERR( TSMonitorSet(self.ts, TS_Monitor, NULL, NULL) )
* if args is None: args = ()
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), __pyx_v_monitorlist); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 502, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), __pyx_v_monitorlist); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 560, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/TS.pyx":503
+ /* "PETSc/TS.pyx":561
* monitorlist = []
* self.set_attr('__monitor__', monitorlist)
* CHKERR( TSMonitorSet(self.ts, TS_Monitor, NULL, NULL) ) # <<<<<<<<<<<<<<
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSMonitorSet(__pyx_v_self->ts, __pyx_f_8petsc4py_5PETSc_TS_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 503, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSMonitorSet(__pyx_v_self->ts, __pyx_f_8petsc4py_5PETSc_TS_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 561, __pyx_L1_error)
- /* "PETSc/TS.pyx":500
+ /* "PETSc/TS.pyx":558
* if monitor is None: return
* cdef object monitorlist = self.get_attr('__monitor__')
* if monitorlist is None: # <<<<<<<<<<<<<<
@@ -182002,7 +193923,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
*/
}
- /* "PETSc/TS.pyx":504
+ /* "PETSc/TS.pyx":562
* self.set_attr('__monitor__', monitorlist)
* CHKERR( TSMonitorSet(self.ts, TS_Monitor, NULL, NULL) )
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -182016,7 +193937,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/TS.pyx":505
+ /* "PETSc/TS.pyx":563
* CHKERR( TSMonitorSet(self.ts, TS_Monitor, NULL, NULL) )
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -182026,20 +193947,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 505, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/TS.pyx":506
+ /* "PETSc/TS.pyx":564
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (monitor, args, kargs) # <<<<<<<<<<<<<<
* monitorlist.append(context)
*
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 506, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_monitor);
__Pyx_GIVEREF(__pyx_v_monitor);
@@ -182053,16 +193974,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
__pyx_v_context = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/TS.pyx":507
+ /* "PETSc/TS.pyx":565
* if kargs is None: kargs = {}
* context = (monitor, args, kargs)
* monitorlist.append(context) # <<<<<<<<<<<<<<
*
* def getMonitor(self):
*/
- __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_v_context); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(37, 507, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_v_context); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 565, __pyx_L1_error)
- /* "PETSc/TS.pyx":497
+ /* "PETSc/TS.pyx":555
* # --- monitoring ---
*
* def setMonitor(self, monitor, args=None, kargs=None): # <<<<<<<<<<<<<<
@@ -182087,7 +194008,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":509
+/* "PETSc/TS.pyx":567
* monitorlist.append(context)
*
* def getMonitor(self): # <<<<<<<<<<<<<<
@@ -182096,29 +194017,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_130setMonitor(struct PyPetscTSObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_133getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_132getMonitor[] = "TS.getMonitor(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_133getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_145getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_144getMonitor[] = "TS.getMonitor(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_145getMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getMonitor (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getMonitor", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMonitor", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_132getMonitor(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_144getMonitor(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_132getMonitor(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_144getMonitor(struct PyPetscTSObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
__Pyx_RefNannySetupContext("getMonitor", 0);
- /* "PETSc/TS.pyx":510
+ /* "PETSc/TS.pyx":568
*
* def getMonitor(self):
* return self.get_attr('__monitor__') # <<<<<<<<<<<<<<
@@ -182126,13 +194047,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_132getMonitor(struct PyPetscTSObj
* def cancelMonitor(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 510, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 568, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":509
+ /* "PETSc/TS.pyx":567
* monitorlist.append(context)
*
* def getMonitor(self): # <<<<<<<<<<<<<<
@@ -182151,7 +194072,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_132getMonitor(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":512
+/* "PETSc/TS.pyx":570
* return self.get_attr('__monitor__')
*
* def cancelMonitor(self): # <<<<<<<<<<<<<<
@@ -182160,50 +194081,50 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_132getMonitor(struct PyPetscTSObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_135cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_134cancelMonitor[] = "TS.cancelMonitor(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_135cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_147cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_146cancelMonitor[] = "TS.cancelMonitor(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_147cancelMonitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("cancelMonitor (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("cancelMonitor", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "cancelMonitor", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_134cancelMonitor(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_146cancelMonitor(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_134cancelMonitor(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_146cancelMonitor(struct PyPetscTSObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PyObject *__pyx_t_1 = NULL;
int __pyx_t_2;
__Pyx_RefNannySetupContext("cancelMonitor", 0);
- /* "PETSc/TS.pyx":513
+ /* "PETSc/TS.pyx":571
*
* def cancelMonitor(self):
* self.set_attr('__monitor__', None) # <<<<<<<<<<<<<<
* CHKERR( TSMonitorCancel(self.ts) )
*
*/
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 513, __pyx_L1_error)
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__monitor__"), Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 571, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":514
+ /* "PETSc/TS.pyx":572
* def cancelMonitor(self):
* self.set_attr('__monitor__', None)
* CHKERR( TSMonitorCancel(self.ts) ) # <<<<<<<<<<<<<<
*
* def monitor(self, step, time, Vec u=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSMonitorCancel(__pyx_v_self->ts)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 514, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSMonitorCancel(__pyx_v_self->ts)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 572, __pyx_L1_error)
- /* "PETSc/TS.pyx":512
+ /* "PETSc/TS.pyx":570
* return self.get_attr('__monitor__')
*
* def cancelMonitor(self): # <<<<<<<<<<<<<<
@@ -182224,7 +194145,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_134cancelMonitor(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":516
+/* "PETSc/TS.pyx":574
* CHKERR( TSMonitorCancel(self.ts) )
*
* def monitor(self, step, time, Vec u=None): # <<<<<<<<<<<<<<
@@ -182233,9 +194154,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_134cancelMonitor(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_136monitor[] = "TS.monitor(self, step, time, Vec u=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_149monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_148monitor[] = "TS.monitor(self, step, time, Vec u=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_149monitor(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_step = 0;
PyObject *__pyx_v_time = 0;
struct PyPetscVecObject *__pyx_v_u = 0;
@@ -182251,8 +194172,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137monitor(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -182261,11 +194185,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137monitor(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_step)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_time)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("monitor", 0, 2, 3, 1); __PYX_ERR(37, 516, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("monitor", 0, 2, 3, 1); __PYX_ERR(37, 574, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u);
@@ -182273,11 +194199,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137monitor(PyObject *__pyx_v_self
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "monitor") < 0)) __PYX_ERR(37, 516, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "monitor") < 0)) __PYX_ERR(37, 574, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -182290,654 +194217,2670 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_137monitor(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("monitor", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 516, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("monitor", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 574, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.monitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "u", 0))) __PYX_ERR(37, 516, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_136monitor(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_step, __pyx_v_time, __pyx_v_u);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "u", 0))) __PYX_ERR(37, 574, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_148monitor(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_step, __pyx_v_time, __pyx_v_u);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_148monitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step, PyObject *__pyx_v_time, struct PyPetscVecObject *__pyx_v_u) {
+ PetscInt __pyx_v_ival;
+ PetscReal __pyx_v_rval;
+ Vec __pyx_v_uvec;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ PetscReal __pyx_t_2;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ Vec __pyx_t_5;
+ int __pyx_t_6;
+ __Pyx_RefNannySetupContext("monitor", 0);
+
+ /* "PETSc/TS.pyx":575
+ *
+ * def monitor(self, step, time, Vec u=None):
+ * cdef PetscInt ival = asInt(step) # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(time)
+ * cdef PetscVec uvec = NULL
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(37, 575, __pyx_L1_error)
+ __pyx_v_ival = __pyx_t_1;
+
+ /* "PETSc/TS.pyx":576
+ * def monitor(self, step, time, Vec u=None):
+ * cdef PetscInt ival = asInt(step)
+ * cdef PetscReal rval = asReal(time) # <<<<<<<<<<<<<<
+ * cdef PetscVec uvec = NULL
+ * if u is not None: uvec = u.vec
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_time); if (unlikely(__pyx_t_2 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 576, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_2;
+
+ /* "PETSc/TS.pyx":577
+ * cdef PetscInt ival = asInt(step)
+ * cdef PetscReal rval = asReal(time)
+ * cdef PetscVec uvec = NULL # <<<<<<<<<<<<<<
+ * if u is not None: uvec = u.vec
+ * if uvec == NULL:
+ */
+ __pyx_v_uvec = NULL;
+
+ /* "PETSc/TS.pyx":578
+ * cdef PetscReal rval = asReal(time)
+ * cdef PetscVec uvec = NULL
+ * if u is not None: uvec = u.vec # <<<<<<<<<<<<<<
+ * if uvec == NULL:
+ * CHKERR( TSGetSolution(self.ts, &uvec) )
+ */
+ __pyx_t_3 = (((PyObject *)__pyx_v_u) != Py_None);
+ __pyx_t_4 = (__pyx_t_3 != 0);
+ if (__pyx_t_4) {
+ __pyx_t_5 = __pyx_v_u->vec;
+ __pyx_v_uvec = __pyx_t_5;
+ }
+
+ /* "PETSc/TS.pyx":579
+ * cdef PetscVec uvec = NULL
+ * if u is not None: uvec = u.vec
+ * if uvec == NULL: # <<<<<<<<<<<<<<
+ * CHKERR( TSGetSolution(self.ts, &uvec) )
+ * CHKERR( TSMonitor(self.ts, ival, rval, uvec) )
+ */
+ __pyx_t_4 = ((__pyx_v_uvec == NULL) != 0);
+ if (__pyx_t_4) {
+
+ /* "PETSc/TS.pyx":580
+ * if u is not None: uvec = u.vec
+ * if uvec == NULL:
+ * CHKERR( TSGetSolution(self.ts, &uvec) ) # <<<<<<<<<<<<<<
+ * CHKERR( TSMonitor(self.ts, ival, rval, uvec) )
+ *
+ */
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSolution(__pyx_v_self->ts, (&__pyx_v_uvec))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(37, 580, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":579
+ * cdef PetscVec uvec = NULL
+ * if u is not None: uvec = u.vec
+ * if uvec == NULL: # <<<<<<<<<<<<<<
+ * CHKERR( TSGetSolution(self.ts, &uvec) )
+ * CHKERR( TSMonitor(self.ts, ival, rval, uvec) )
+ */
+ }
+
+ /* "PETSc/TS.pyx":581
+ * if uvec == NULL:
+ * CHKERR( TSGetSolution(self.ts, &uvec) )
+ * CHKERR( TSMonitor(self.ts, ival, rval, uvec) ) # <<<<<<<<<<<<<<
+ *
+ * # --- solving ---
+ */
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSMonitor(__pyx_v_self->ts, __pyx_v_ival, __pyx_v_rval, __pyx_v_uvec)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(37, 581, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":574
+ * CHKERR( TSMonitorCancel(self.ts) )
+ *
+ * def monitor(self, step, time, Vec u=None): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(step)
+ * cdef PetscReal rval = asReal(time)
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.monitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":585
+ * # --- solving ---
+ *
+ * def setPreStep(self, prestep, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if prestep is not None:
+ * if args is None: args = ()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_151setPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_150setPreStep[] = "TS.setPreStep(self, prestep, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_151setPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_prestep = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setPreStep (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_prestep,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_prestep)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreStep") < 0)) __PYX_ERR(37, 585, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_prestep = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setPreStep", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 585, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setPreStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_150setPreStep(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_prestep, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_150setPreStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prestep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setPreStep", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/TS.pyx":586
+ *
+ * def setPreStep(self, prestep, args=None, kargs=None):
+ * if prestep is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_1 = (__pyx_v_prestep != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/TS.pyx":587
+ * def setPreStep(self, prestep, args=None, kargs=None):
+ * if prestep is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (prestep, args, kargs)
+ */
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/TS.pyx":588
+ * if prestep is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (prestep, args, kargs)
+ * self.set_attr('__prestep__', context)
+ */
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 588, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/TS.pyx":589
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (prestep, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__prestep__', context)
+ * CHKERR( TSSetPreStep(self.ts, TS_PreStep) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 589, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_prestep);
+ __Pyx_GIVEREF(__pyx_v_prestep);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_prestep);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":590
+ * if kargs is None: kargs = {}
+ * context = (prestep, args, kargs)
+ * self.set_attr('__prestep__', context) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetPreStep(self.ts, TS_PreStep) )
+ * else:
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__prestep__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 590, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":591
+ * context = (prestep, args, kargs)
+ * self.set_attr('__prestep__', context)
+ * CHKERR( TSSetPreStep(self.ts, TS_PreStep) ) # <<<<<<<<<<<<<<
+ * else:
+ * self.set_attr('__prestep__', None)
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPreStep(__pyx_v_self->ts, __pyx_f_8petsc4py_5PETSc_TS_PreStep)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 591, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":586
+ *
+ * def setPreStep(self, prestep, args=None, kargs=None):
+ * if prestep is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/TS.pyx":593
+ * CHKERR( TSSetPreStep(self.ts, TS_PreStep) )
+ * else:
+ * self.set_attr('__prestep__', None) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetPreStep(self.ts, NULL) )
+ *
+ */
+ /*else*/ {
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__prestep__"), Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 593, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":594
+ * else:
+ * self.set_attr('__prestep__', None)
+ * CHKERR( TSSetPreStep(self.ts, NULL) ) # <<<<<<<<<<<<<<
+ *
+ * def getPreStep(self):
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPreStep(__pyx_v_self->ts, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 594, __pyx_L1_error)
+ }
+ __pyx_L3:;
+
+ /* "PETSc/TS.pyx":585
+ * # --- solving ---
+ *
+ * def setPreStep(self, prestep, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if prestep is not None:
+ * if args is None: args = ()
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setPreStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":596
+ * CHKERR( TSSetPreStep(self.ts, NULL) )
+ *
+ * def getPreStep(self): # <<<<<<<<<<<<<<
+ * return self.get_attr('__prestep__')
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_153getPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_152getPreStep[] = "TS.getPreStep(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_153getPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getPreStep (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getPreStep", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPreStep", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_152getPreStep(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_152getPreStep(struct PyPetscTSObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ __Pyx_RefNannySetupContext("getPreStep", 0);
+
+ /* "PETSc/TS.pyx":597
+ *
+ * def getPreStep(self):
+ * return self.get_attr('__prestep__') # <<<<<<<<<<<<<<
+ *
+ * def setPostStep(self, poststep, args=None, kargs=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__prestep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 597, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":596
+ * CHKERR( TSSetPreStep(self.ts, NULL) )
+ *
+ * def getPreStep(self): # <<<<<<<<<<<<<<
+ * return self.get_attr('__prestep__')
+ *
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getPreStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":599
+ * return self.get_attr('__prestep__')
+ *
+ * def setPostStep(self, poststep, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if poststep is not None:
+ * if args is None: args = ()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_155setPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_154setPostStep[] = "TS.setPostStep(self, poststep, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_155setPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_poststep = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setPostStep (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_poststep,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_poststep)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPostStep") < 0)) __PYX_ERR(37, 599, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_poststep = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setPostStep", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 599, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setPostStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_154setPostStep(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_poststep, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_154setPostStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_poststep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setPostStep", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/TS.pyx":600
+ *
+ * def setPostStep(self, poststep, args=None, kargs=None):
+ * if poststep is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_1 = (__pyx_v_poststep != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/TS.pyx":601
+ * def setPostStep(self, poststep, args=None, kargs=None):
+ * if poststep is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (poststep, args, kargs)
+ */
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/TS.pyx":602
+ * if poststep is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (poststep, args, kargs)
+ * self.set_attr('__poststep__', context)
+ */
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 602, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/TS.pyx":603
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (poststep, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__poststep__', context)
+ * CHKERR( TSSetPostStep(self.ts, TS_PostStep) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 603, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_poststep);
+ __Pyx_GIVEREF(__pyx_v_poststep);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_poststep);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":604
+ * if kargs is None: kargs = {}
+ * context = (poststep, args, kargs)
+ * self.set_attr('__poststep__', context) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetPostStep(self.ts, TS_PostStep) )
+ * else:
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__poststep__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 604, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":605
+ * context = (poststep, args, kargs)
+ * self.set_attr('__poststep__', context)
+ * CHKERR( TSSetPostStep(self.ts, TS_PostStep) ) # <<<<<<<<<<<<<<
+ * else:
+ * self.set_attr('__poststep__', None)
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPostStep(__pyx_v_self->ts, __pyx_f_8petsc4py_5PETSc_TS_PostStep)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 605, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":600
+ *
+ * def setPostStep(self, poststep, args=None, kargs=None):
+ * if poststep is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/TS.pyx":607
+ * CHKERR( TSSetPostStep(self.ts, TS_PostStep) )
+ * else:
+ * self.set_attr('__poststep__', None) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetPostStep(self.ts, NULL) )
+ *
+ */
+ /*else*/ {
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__poststep__"), Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 607, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":608
+ * else:
+ * self.set_attr('__poststep__', None)
+ * CHKERR( TSSetPostStep(self.ts, NULL) ) # <<<<<<<<<<<<<<
+ *
+ * def getPostStep(self):
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPostStep(__pyx_v_self->ts, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 608, __pyx_L1_error)
+ }
+ __pyx_L3:;
+
+ /* "PETSc/TS.pyx":599
+ * return self.get_attr('__prestep__')
+ *
+ * def setPostStep(self, poststep, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if poststep is not None:
+ * if args is None: args = ()
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setPostStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":610
+ * CHKERR( TSSetPostStep(self.ts, NULL) )
+ *
+ * def getPostStep(self): # <<<<<<<<<<<<<<
+ * return self.get_attr('__poststep__')
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_157getPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_156getPostStep[] = "TS.getPostStep(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_157getPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getPostStep (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getPostStep", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPostStep", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_156getPostStep(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_156getPostStep(struct PyPetscTSObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ __Pyx_RefNannySetupContext("getPostStep", 0);
+
+ /* "PETSc/TS.pyx":611
+ *
+ * def getPostStep(self):
+ * return self.get_attr('__poststep__') # <<<<<<<<<<<<<<
+ *
+ * def setUp(self):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__poststep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 611, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":610
+ * CHKERR( TSSetPostStep(self.ts, NULL) )
+ *
+ * def getPostStep(self): # <<<<<<<<<<<<<<
+ * return self.get_attr('__poststep__')
+ *
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getPostStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":613
+ * return self.get_attr('__poststep__')
+ *
+ * def setUp(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSSetUp(self.ts) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_158setUp[] = "TS.setUp(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setUp (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("setUp", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "setUp", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_158setUp(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158setUp(struct PyPetscTSObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("setUp", 0);
+
+ /* "PETSc/TS.pyx":614
+ *
+ * def setUp(self):
+ * CHKERR( TSSetUp(self.ts) ) # <<<<<<<<<<<<<<
+ *
+ * def reset(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetUp(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 614, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":613
+ * return self.get_attr('__poststep__')
+ *
+ * def setUp(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSSetUp(self.ts) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setUp", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":616
+ * CHKERR( TSSetUp(self.ts) )
+ *
+ * def reset(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSReset(self.ts) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_161reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_160reset[] = "TS.reset(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_161reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("reset (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("reset", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "reset", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_160reset(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_160reset(struct PyPetscTSObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("reset", 0);
+
+ /* "PETSc/TS.pyx":617
+ *
+ * def reset(self):
+ * CHKERR( TSReset(self.ts) ) # <<<<<<<<<<<<<<
+ *
+ * def step(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSReset(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 617, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":616
+ * CHKERR( TSSetUp(self.ts) )
+ *
+ * def reset(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSReset(self.ts) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.reset", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":619
+ * CHKERR( TSReset(self.ts) )
+ *
+ * def step(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSStep(self.ts) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_163step(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_162step[] = "TS.step(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_163step(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("step (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("step", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "step", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_162step(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162step(struct PyPetscTSObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("step", 0);
+
+ /* "PETSc/TS.pyx":620
+ *
+ * def step(self):
+ * CHKERR( TSStep(self.ts) ) # <<<<<<<<<<<<<<
+ *
+ * def rollBack(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSStep(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 620, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":619
+ * CHKERR( TSReset(self.ts) )
+ *
+ * def step(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSStep(self.ts) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.step", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":622
+ * CHKERR( TSStep(self.ts) )
+ *
+ * def rollBack(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSRollBack(self.ts) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_165rollBack(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_164rollBack[] = "TS.rollBack(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_165rollBack(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("rollBack (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("rollBack", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "rollBack", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_164rollBack(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164rollBack(struct PyPetscTSObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("rollBack", 0);
+
+ /* "PETSc/TS.pyx":623
+ *
+ * def rollBack(self):
+ * CHKERR( TSRollBack(self.ts) ) # <<<<<<<<<<<<<<
+ *
+ * def solve(self, Vec u):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSRollBack(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 623, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":622
+ * CHKERR( TSStep(self.ts) )
+ *
+ * def rollBack(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSRollBack(self.ts) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.rollBack", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":625
+ * CHKERR( TSRollBack(self.ts) )
+ *
+ * def solve(self, Vec u): # <<<<<<<<<<<<<<
+ * CHKERR( TSSolve(self.ts, u.vec) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_167solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_166solve[] = "TS.solve(self, Vec u)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_167solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_u = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("solve (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_u,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(37, 625, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_u = ((struct PyPetscVecObject *)values[0]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("solve", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 625, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "u", 0))) __PYX_ERR(37, 625, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_166solve(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_u);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_166solve(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("solve", 0);
+
+ /* "PETSc/TS.pyx":626
+ *
+ * def solve(self, Vec u):
+ * CHKERR( TSSolve(self.ts, u.vec) ) # <<<<<<<<<<<<<<
+ *
+ * def interpolate(self, t, Vec u):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSolve(__pyx_v_self->ts, __pyx_v_u->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 626, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":625
+ * CHKERR( TSRollBack(self.ts) )
+ *
+ * def solve(self, Vec u): # <<<<<<<<<<<<<<
+ * CHKERR( TSSolve(self.ts, u.vec) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":628
+ * CHKERR( TSSolve(self.ts, u.vec) )
+ *
+ * def interpolate(self, t, Vec u): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSInterpolate(self.ts, rval, u.vec) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_169interpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_168interpolate[] = "TS.interpolate(self, t, Vec u)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_169interpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_t = 0;
+ struct PyPetscVecObject *__pyx_v_u = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("interpolate (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,&__pyx_n_s_u,0};
+ PyObject* values[2] = {0,0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("interpolate", 1, 2, 2, 1); __PYX_ERR(37, 628, __pyx_L3_error)
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "interpolate") < 0)) __PYX_ERR(37, 628, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ }
+ __pyx_v_t = values[0];
+ __pyx_v_u = ((struct PyPetscVecObject *)values[1]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("interpolate", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 628, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "u", 0))) __PYX_ERR(37, 628, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_168interpolate(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_u);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168interpolate(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_u) {
+ PetscReal __pyx_v_rval;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscReal __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("interpolate", 0);
+
+ /* "PETSc/TS.pyx":629
+ *
+ * def interpolate(self, t, Vec u):
+ * cdef PetscReal rval = asReal(t) # <<<<<<<<<<<<<<
+ * CHKERR( TSInterpolate(self.ts, rval, u.vec) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 629, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_1;
+
+ /* "PETSc/TS.pyx":630
+ * def interpolate(self, t, Vec u):
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSInterpolate(self.ts, rval, u.vec) ) # <<<<<<<<<<<<<<
+ *
+ * # --- Adjoint methods ---
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSInterpolate(__pyx_v_self->ts, __pyx_v_rval, __pyx_v_u->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 630, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":628
+ * CHKERR( TSSolve(self.ts, u.vec) )
+ *
+ * def interpolate(self, t, Vec u): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSInterpolate(self.ts, rval, u.vec) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":634
+ * # --- Adjoint methods ---
+ *
+ * def setSaveTrajectory(self): # <<<<<<<<<<<<<<
+ * CHKERR(TSSetSaveTrajectory(self.ts))
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_171setSaveTrajectory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_170setSaveTrajectory[] = "TS.setSaveTrajectory(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_171setSaveTrajectory(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setSaveTrajectory (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("setSaveTrajectory", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "setSaveTrajectory", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_170setSaveTrajectory(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_170setSaveTrajectory(struct PyPetscTSObject *__pyx_v_self) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("setSaveTrajectory", 0);
+
+ /* "PETSc/TS.pyx":635
+ *
+ * def setSaveTrajectory(self):
+ * CHKERR(TSSetSaveTrajectory(self.ts)) # <<<<<<<<<<<<<<
+ *
+ * def getCostIntegral(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetSaveTrajectory(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 635, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":634
+ * # --- Adjoint methods ---
+ *
+ * def setSaveTrajectory(self): # <<<<<<<<<<<<<<
+ * CHKERR(TSSetSaveTrajectory(self.ts))
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setSaveTrajectory", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":637
+ * CHKERR(TSSetSaveTrajectory(self.ts))
+ *
+ * def getCostIntegral(self): # <<<<<<<<<<<<<<
+ * cdef Vec cost = Vec()
+ * CHKERR( TSGetCostIntegral(self.ts, &cost.vec) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_173getCostIntegral(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_172getCostIntegral[] = "TS.getCostIntegral(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_173getCostIntegral(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getCostIntegral (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getCostIntegral", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCostIntegral", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_172getCostIntegral(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_172getCostIntegral(struct PyPetscTSObject *__pyx_v_self) {
+ struct PyPetscVecObject *__pyx_v_cost = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getCostIntegral", 0);
+
+ /* "PETSc/TS.pyx":638
+ *
+ * def getCostIntegral(self):
+ * cdef Vec cost = Vec() # <<<<<<<<<<<<<<
+ * CHKERR( TSGetCostIntegral(self.ts, &cost.vec) )
+ * PetscINCREF(cost.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 638, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_cost = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/TS.pyx":639
+ * def getCostIntegral(self):
+ * cdef Vec cost = Vec()
+ * CHKERR( TSGetCostIntegral(self.ts, &cost.vec) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(cost.obj)
+ * return cost
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetCostIntegral(__pyx_v_self->ts, (&__pyx_v_cost->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 639, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":640
+ * cdef Vec cost = Vec()
+ * CHKERR( TSGetCostIntegral(self.ts, &cost.vec) )
+ * PetscINCREF(cost.obj) # <<<<<<<<<<<<<<
+ * return cost
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_cost->__pyx_base.obj);
+
+ /* "PETSc/TS.pyx":641
+ * CHKERR( TSGetCostIntegral(self.ts, &cost.vec) )
+ * PetscINCREF(cost.obj)
+ * return cost # <<<<<<<<<<<<<<
+ *
+ * def setCostGradients(self, vl, vm=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_cost));
+ __pyx_r = ((PyObject *)__pyx_v_cost);
+ goto __pyx_L0;
+
+ /* "PETSc/TS.pyx":637
+ * CHKERR(TSSetSaveTrajectory(self.ts))
+ *
+ * def getCostIntegral(self): # <<<<<<<<<<<<<<
+ * cdef Vec cost = Vec()
+ * CHKERR( TSGetCostIntegral(self.ts, &cost.vec) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getCostIntegral", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_cost);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/TS.pyx":643
+ * return cost
+ *
+ * def setCostGradients(self, vl, vm=None): # <<<<<<<<<<<<<<
+ * cdef PetscInt n = 0;
+ * cdef PetscVec *vecl = NULL
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_175setCostGradients(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_174setCostGradients[] = "TS.setCostGradients(self, vl, vm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_175setCostGradients(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_vl = 0;
+ PyObject *__pyx_v_vm = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setCostGradients (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vl,&__pyx_n_s_vm,0};
+ PyObject* values[2] = {0,0};
+ values[1] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vl)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vm);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCostGradients") < 0)) __PYX_ERR(37, 643, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_vl = values[0];
+ __pyx_v_vm = values[1];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setCostGradients", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 643, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setCostGradients", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_174setCostGradients(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_vl, __pyx_v_vm);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_174setCostGradients(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_vl, PyObject *__pyx_v_vm) {
+ PetscInt __pyx_v_n;
+ Vec *__pyx_v_vecl;
+ Vec *__pyx_v_vecm;
+ PyObject *__pyx_v_mem1 = 0;
+ PyObject *__pyx_v_mem2 = 0;
+ long __pyx_v_i;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ Py_ssize_t __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ PetscInt __pyx_t_6;
+ Vec __pyx_t_7;
+ int __pyx_t_8;
+ __Pyx_RefNannySetupContext("setCostGradients", 0);
+ __Pyx_INCREF(__pyx_v_vl);
+ __Pyx_INCREF(__pyx_v_vm);
+
+ /* "PETSc/TS.pyx":644
+ *
+ * def setCostGradients(self, vl, vm=None):
+ * cdef PetscInt n = 0; # <<<<<<<<<<<<<<
+ * cdef PetscVec *vecl = NULL
+ * cdef PetscVec *vecm = NULL
+ */
+ __pyx_v_n = 0;
+
+ /* "PETSc/TS.pyx":645
+ * def setCostGradients(self, vl, vm=None):
+ * cdef PetscInt n = 0;
+ * cdef PetscVec *vecl = NULL # <<<<<<<<<<<<<<
+ * cdef PetscVec *vecm = NULL
+ * cdef mem1 = None, mem2 = None
+ */
+ __pyx_v_vecl = NULL;
+
+ /* "PETSc/TS.pyx":646
+ * cdef PetscInt n = 0;
+ * cdef PetscVec *vecl = NULL
+ * cdef PetscVec *vecm = NULL # <<<<<<<<<<<<<<
+ * cdef mem1 = None, mem2 = None
+ * if isinstance(vl, Vec): vl = [vl]
+ */
+ __pyx_v_vecm = NULL;
+
+ /* "PETSc/TS.pyx":647
+ * cdef PetscVec *vecl = NULL
+ * cdef PetscVec *vecm = NULL
+ * cdef mem1 = None, mem2 = None # <<<<<<<<<<<<<<
+ * if isinstance(vl, Vec): vl = [vl]
+ * if isinstance(vm, Vec): vm = [vm]
+ */
+ __Pyx_INCREF(Py_None);
+ __pyx_v_mem1 = Py_None;
+ __Pyx_INCREF(Py_None);
+ __pyx_v_mem2 = Py_None;
+
+ /* "PETSc/TS.pyx":648
+ * cdef PetscVec *vecm = NULL
+ * cdef mem1 = None, mem2 = None
+ * if isinstance(vl, Vec): vl = [vl] # <<<<<<<<<<<<<<
+ * if isinstance(vm, Vec): vm = [vm]
+ * if vl is not None:
+ */
+ __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_vl, __pyx_ptype_8petsc4py_5PETSc_Vec);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 648, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_vl);
+ __Pyx_GIVEREF(__pyx_v_vl);
+ PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_vl);
+ __Pyx_DECREF_SET(__pyx_v_vl, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/TS.pyx":649
+ * cdef mem1 = None, mem2 = None
+ * if isinstance(vl, Vec): vl = [vl]
+ * if isinstance(vm, Vec): vm = [vm] # <<<<<<<<<<<<<<
+ * if vl is not None:
+ * n = <PetscInt>len(vl)
+ */
+ __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_vm, __pyx_ptype_8petsc4py_5PETSc_Vec);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 649, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_vm);
+ __Pyx_GIVEREF(__pyx_v_vm);
+ PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_vm);
+ __Pyx_DECREF_SET(__pyx_v_vm, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/TS.pyx":650
+ * if isinstance(vl, Vec): vl = [vl]
+ * if isinstance(vm, Vec): vm = [vm]
+ * if vl is not None: # <<<<<<<<<<<<<<
+ * n = <PetscInt>len(vl)
+ * elif vm is not None:
+ */
+ __pyx_t_1 = (__pyx_v_vl != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/TS.pyx":651
+ * if isinstance(vm, Vec): vm = [vm]
+ * if vl is not None:
+ * n = <PetscInt>len(vl) # <<<<<<<<<<<<<<
+ * elif vm is not None:
+ * n = <PetscInt>len(vm)
+ */
+ __pyx_t_4 = PyObject_Length(__pyx_v_vl); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(37, 651, __pyx_L1_error)
+ __pyx_v_n = ((PetscInt)__pyx_t_4);
+
+ /* "PETSc/TS.pyx":650
+ * if isinstance(vl, Vec): vl = [vl]
+ * if isinstance(vm, Vec): vm = [vm]
+ * if vl is not None: # <<<<<<<<<<<<<<
+ * n = <PetscInt>len(vl)
+ * elif vm is not None:
+ */
+ goto __pyx_L5;
+ }
+
+ /* "PETSc/TS.pyx":652
+ * if vl is not None:
+ * n = <PetscInt>len(vl)
+ * elif vm is not None: # <<<<<<<<<<<<<<
+ * n = <PetscInt>len(vm)
+ * if vl is not None:
+ */
+ __pyx_t_2 = (__pyx_v_vm != Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+
+ /* "PETSc/TS.pyx":653
+ * n = <PetscInt>len(vl)
+ * elif vm is not None:
+ * n = <PetscInt>len(vm) # <<<<<<<<<<<<<<
+ * if vl is not None:
+ * assert len(vl) == <Py_ssize_t>n
+ */
+ __pyx_t_4 = PyObject_Length(__pyx_v_vm); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(37, 653, __pyx_L1_error)
+ __pyx_v_n = ((PetscInt)__pyx_t_4);
+
+ /* "PETSc/TS.pyx":652
+ * if vl is not None:
+ * n = <PetscInt>len(vl)
+ * elif vm is not None: # <<<<<<<<<<<<<<
+ * n = <PetscInt>len(vm)
+ * if vl is not None:
+ */
+ }
+ __pyx_L5:;
+
+ /* "PETSc/TS.pyx":654
+ * elif vm is not None:
+ * n = <PetscInt>len(vm)
+ * if vl is not None: # <<<<<<<<<<<<<<
+ * assert len(vl) == <Py_ssize_t>n
+ * mem1 = oarray_p(empty_p(n), NULL, <void**>&vecl)
+ */
+ __pyx_t_1 = (__pyx_v_vl != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/TS.pyx":655
+ * n = <PetscInt>len(vm)
+ * if vl is not None:
+ * assert len(vl) == <Py_ssize_t>n # <<<<<<<<<<<<<<
+ * mem1 = oarray_p(empty_p(n), NULL, <void**>&vecl)
+ * for i from 0 <= i < n:
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = PyObject_Length(__pyx_v_vl); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(37, 655, __pyx_L1_error)
+ if (unlikely(!((__pyx_t_4 == ((Py_ssize_t)__pyx_v_n)) != 0))) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(37, 655, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/TS.pyx":656
+ * if vl is not None:
+ * assert len(vl) == <Py_ssize_t>n
+ * mem1 = oarray_p(empty_p(n), NULL, <void**>&vecl) # <<<<<<<<<<<<<<
+ * for i from 0 <= i < n:
+ * vecl[i] = (<Vec?>vl[i]).vec
+ */
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 656, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_3, NULL, ((void **)(&__pyx_v_vecl)))); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 656, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF_SET(__pyx_v_mem1, __pyx_t_5);
+ __pyx_t_5 = 0;
+
+ /* "PETSc/TS.pyx":657
+ * assert len(vl) == <Py_ssize_t>n
+ * mem1 = oarray_p(empty_p(n), NULL, <void**>&vecl)
+ * for i from 0 <= i < n: # <<<<<<<<<<<<<<
+ * vecl[i] = (<Vec?>vl[i]).vec
+ * if vm is not None:
+ */
+ __pyx_t_6 = __pyx_v_n;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_6; __pyx_v_i++) {
+
+ /* "PETSc/TS.pyx":658
+ * mem1 = oarray_p(empty_p(n), NULL, <void**>&vecl)
+ * for i from 0 <= i < n:
+ * vecl[i] = (<Vec?>vl[i]).vec # <<<<<<<<<<<<<<
+ * if vm is not None:
+ * assert len(vm) == <Py_ssize_t>n
+ */
+ __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_vl, __pyx_v_i, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 658, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(37, 658, __pyx_L1_error)
+ __pyx_t_7 = ((struct PyPetscVecObject *)__pyx_t_5)->vec;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ (__pyx_v_vecl[__pyx_v_i]) = __pyx_t_7;
+ }
+
+ /* "PETSc/TS.pyx":654
+ * elif vm is not None:
+ * n = <PetscInt>len(vm)
+ * if vl is not None: # <<<<<<<<<<<<<<
+ * assert len(vl) == <Py_ssize_t>n
+ * mem1 = oarray_p(empty_p(n), NULL, <void**>&vecl)
+ */
+ }
+
+ /* "PETSc/TS.pyx":659
+ * for i from 0 <= i < n:
+ * vecl[i] = (<Vec?>vl[i]).vec
+ * if vm is not None: # <<<<<<<<<<<<<<
+ * assert len(vm) == <Py_ssize_t>n
+ * mem2 = oarray_p(empty_p(n), NULL, <void**>&vecm)
+ */
+ __pyx_t_2 = (__pyx_v_vm != Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+
+ /* "PETSc/TS.pyx":660
+ * vecl[i] = (<Vec?>vl[i]).vec
+ * if vm is not None:
+ * assert len(vm) == <Py_ssize_t>n # <<<<<<<<<<<<<<
+ * mem2 = oarray_p(empty_p(n), NULL, <void**>&vecm)
+ * for i from 0 <= i < n:
+ */
+ #ifndef CYTHON_WITHOUT_ASSERTIONS
+ if (unlikely(!Py_OptimizeFlag)) {
+ __pyx_t_4 = PyObject_Length(__pyx_v_vm); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(37, 660, __pyx_L1_error)
+ if (unlikely(!((__pyx_t_4 == ((Py_ssize_t)__pyx_v_n)) != 0))) {
+ PyErr_SetNone(PyExc_AssertionError);
+ __PYX_ERR(37, 660, __pyx_L1_error)
+ }
+ }
+ #endif
+
+ /* "PETSc/TS.pyx":661
+ * if vm is not None:
+ * assert len(vm) == <Py_ssize_t>n
+ * mem2 = oarray_p(empty_p(n), NULL, <void**>&vecm) # <<<<<<<<<<<<<<
+ * for i from 0 <= i < n:
+ * vecm[i] = (<Vec?>vm[i]).vec
+ */
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 661, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_5, NULL, ((void **)(&__pyx_v_vecm)))); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 661, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __Pyx_DECREF_SET(__pyx_v_mem2, __pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":662
+ * assert len(vm) == <Py_ssize_t>n
+ * mem2 = oarray_p(empty_p(n), NULL, <void**>&vecm)
+ * for i from 0 <= i < n: # <<<<<<<<<<<<<<
+ * vecm[i] = (<Vec?>vm[i]).vec
+ * self.set_attr('__costgradients_memory', (mem1, mem2))
+ */
+ __pyx_t_6 = __pyx_v_n;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_6; __pyx_v_i++) {
+
+ /* "PETSc/TS.pyx":663
+ * mem2 = oarray_p(empty_p(n), NULL, <void**>&vecm)
+ * for i from 0 <= i < n:
+ * vecm[i] = (<Vec?>vm[i]).vec # <<<<<<<<<<<<<<
+ * self.set_attr('__costgradients_memory', (mem1, mem2))
+ * CHKERR( TSSetCostGradients(self.ts, n, vecl, vecm) )
+ */
+ __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_vm, __pyx_v_i, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 663, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (!(likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_8petsc4py_5PETSc_Vec)))) __PYX_ERR(37, 663, __pyx_L1_error)
+ __pyx_t_7 = ((struct PyPetscVecObject *)__pyx_t_3)->vec;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ (__pyx_v_vecm[__pyx_v_i]) = __pyx_t_7;
+ }
+
+ /* "PETSc/TS.pyx":659
+ * for i from 0 <= i < n:
+ * vecl[i] = (<Vec?>vl[i]).vec
+ * if vm is not None: # <<<<<<<<<<<<<<
+ * assert len(vm) == <Py_ssize_t>n
+ * mem2 = oarray_p(empty_p(n), NULL, <void**>&vecm)
+ */
+ }
+
+ /* "PETSc/TS.pyx":664
+ * for i from 0 <= i < n:
+ * vecm[i] = (<Vec?>vm[i]).vec
+ * self.set_attr('__costgradients_memory', (mem1, mem2)) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetCostGradients(self.ts, n, vecl, vecm) )
+ *
+ */
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 664, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_mem1);
+ __Pyx_GIVEREF(__pyx_v_mem1);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_mem1);
+ __Pyx_INCREF(__pyx_v_mem2);
+ __Pyx_GIVEREF(__pyx_v_mem2);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_mem2);
+ __pyx_t_5 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__costgradients_memory"), __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 664, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+
+ /* "PETSc/TS.pyx":665
+ * vecm[i] = (<Vec?>vm[i]).vec
+ * self.set_attr('__costgradients_memory', (mem1, mem2))
+ * CHKERR( TSSetCostGradients(self.ts, n, vecl, vecm) ) # <<<<<<<<<<<<<<
+ *
+ * def getCostGradients(self):
+ */
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetCostGradients(__pyx_v_self->ts, __pyx_v_n, __pyx_v_vecl, __pyx_v_vecm)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(37, 665, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":643
+ * return cost
+ *
+ * def setCostGradients(self, vl, vm=None): # <<<<<<<<<<<<<<
+ * cdef PetscInt n = 0;
+ * cdef PetscVec *vecl = NULL
+ */
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setCostGradients", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_mem1);
+ __Pyx_XDECREF(__pyx_v_mem2);
+ __Pyx_XDECREF(__pyx_v_vl);
+ __Pyx_XDECREF(__pyx_v_vm);
+ __Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_136monitor(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_step, PyObject *__pyx_v_time, struct PyPetscVecObject *__pyx_v_u) {
- PetscInt __pyx_v_ival;
- PetscReal __pyx_v_rval;
- Vec __pyx_v_uvec;
+/* "PETSc/TS.pyx":667
+ * CHKERR( TSSetCostGradients(self.ts, n, vecl, vecm) )
+ *
+ * def getCostGradients(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt i = 0, n = 0
+ * cdef PetscVec *vecl = NULL
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177getCostGradients(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_176getCostGradients[] = "TS.getCostGradients(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177getCostGradients(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getCostGradients (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getCostGradients", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCostGradients", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_176getCostGradients(((struct PyPetscTSObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176getCostGradients(struct PyPetscTSObject *__pyx_v_self) {
+ PetscInt __pyx_v_i;
+ PetscInt __pyx_v_n;
+ Vec *__pyx_v_vecl;
+ Vec *__pyx_v_vecm;
+ PyObject *__pyx_v_vl = 0;
+ PyObject *__pyx_v_vm = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PetscInt __pyx_t_1;
- PetscReal __pyx_t_2;
- int __pyx_t_3;
- int __pyx_t_4;
- Vec __pyx_t_5;
- int __pyx_t_6;
- __Pyx_RefNannySetupContext("monitor", 0);
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ PetscInt __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ __Pyx_RefNannySetupContext("getCostGradients", 0);
- /* "PETSc/TS.pyx":517
+ /* "PETSc/TS.pyx":668
*
- * def monitor(self, step, time, Vec u=None):
- * cdef PetscInt ival = asInt(step) # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(time)
- * cdef PetscVec uvec = NULL
+ * def getCostGradients(self):
+ * cdef PetscInt i = 0, n = 0 # <<<<<<<<<<<<<<
+ * cdef PetscVec *vecl = NULL
+ * cdef PetscVec *vecm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_step); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(37, 517, __pyx_L1_error)
- __pyx_v_ival = __pyx_t_1;
+ __pyx_v_i = 0;
+ __pyx_v_n = 0;
- /* "PETSc/TS.pyx":518
- * def monitor(self, step, time, Vec u=None):
- * cdef PetscInt ival = asInt(step)
- * cdef PetscReal rval = asReal(time) # <<<<<<<<<<<<<<
- * cdef PetscVec uvec = NULL
- * if u is not None: uvec = u.vec
+ /* "PETSc/TS.pyx":669
+ * def getCostGradients(self):
+ * cdef PetscInt i = 0, n = 0
+ * cdef PetscVec *vecl = NULL # <<<<<<<<<<<<<<
+ * cdef PetscVec *vecm = NULL
+ * CHKERR( TSGetCostGradients(self.ts, &n, &vecl, &vecm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_time); if (unlikely(__pyx_t_2 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 518, __pyx_L1_error)
- __pyx_v_rval = __pyx_t_2;
+ __pyx_v_vecl = NULL;
- /* "PETSc/TS.pyx":519
- * cdef PetscInt ival = asInt(step)
- * cdef PetscReal rval = asReal(time)
- * cdef PetscVec uvec = NULL # <<<<<<<<<<<<<<
- * if u is not None: uvec = u.vec
- * if uvec == NULL:
+ /* "PETSc/TS.pyx":670
+ * cdef PetscInt i = 0, n = 0
+ * cdef PetscVec *vecl = NULL
+ * cdef PetscVec *vecm = NULL # <<<<<<<<<<<<<<
+ * CHKERR( TSGetCostGradients(self.ts, &n, &vecl, &vecm) )
+ * cdef object vl = None, vm = None
*/
- __pyx_v_uvec = NULL;
+ __pyx_v_vecm = NULL;
- /* "PETSc/TS.pyx":520
- * cdef PetscReal rval = asReal(time)
- * cdef PetscVec uvec = NULL
- * if u is not None: uvec = u.vec # <<<<<<<<<<<<<<
- * if uvec == NULL:
- * CHKERR( TSGetSolution(self.ts, &uvec) )
+ /* "PETSc/TS.pyx":671
+ * cdef PetscVec *vecl = NULL
+ * cdef PetscVec *vecm = NULL
+ * CHKERR( TSGetCostGradients(self.ts, &n, &vecl, &vecm) ) # <<<<<<<<<<<<<<
+ * cdef object vl = None, vm = None
+ * if vecl != NULL:
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetCostGradients(__pyx_v_self->ts, (&__pyx_v_n), (&__pyx_v_vecl), (&__pyx_v_vecm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 671, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":672
+ * cdef PetscVec *vecm = NULL
+ * CHKERR( TSGetCostGradients(self.ts, &n, &vecl, &vecm) )
+ * cdef object vl = None, vm = None # <<<<<<<<<<<<<<
+ * if vecl != NULL:
+ * vl = [ref_Vec(vecl[i]) for i from 0 <= i < n]
+ */
+ __Pyx_INCREF(Py_None);
+ __pyx_v_vl = Py_None;
+ __Pyx_INCREF(Py_None);
+ __pyx_v_vm = Py_None;
+
+ /* "PETSc/TS.pyx":673
+ * CHKERR( TSGetCostGradients(self.ts, &n, &vecl, &vecm) )
+ * cdef object vl = None, vm = None
+ * if vecl != NULL: # <<<<<<<<<<<<<<
+ * vl = [ref_Vec(vecl[i]) for i from 0 <= i < n]
+ * if vecm != NULL:
+ */
+ __pyx_t_2 = ((__pyx_v_vecl != NULL) != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/TS.pyx":674
+ * cdef object vl = None, vm = None
+ * if vecl != NULL:
+ * vl = [ref_Vec(vecl[i]) for i from 0 <= i < n] # <<<<<<<<<<<<<<
+ * if vecm != NULL:
+ * vm = [ref_Vec(vecm[i]) for i from 0 <= i < n]
+ */
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 674, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = __pyx_v_n;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_4; __pyx_v_i++) {
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_vecl[__pyx_v_i]))); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 674, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_5))) __PYX_ERR(37, 674, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ }
+ __Pyx_DECREF_SET(__pyx_v_vl, __pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/TS.pyx":673
+ * CHKERR( TSGetCostGradients(self.ts, &n, &vecl, &vecm) )
+ * cdef object vl = None, vm = None
+ * if vecl != NULL: # <<<<<<<<<<<<<<
+ * vl = [ref_Vec(vecl[i]) for i from 0 <= i < n]
+ * if vecm != NULL:
*/
- __pyx_t_3 = (((PyObject *)__pyx_v_u) != Py_None);
- __pyx_t_4 = (__pyx_t_3 != 0);
- if (__pyx_t_4) {
- __pyx_t_5 = __pyx_v_u->vec;
- __pyx_v_uvec = __pyx_t_5;
}
- /* "PETSc/TS.pyx":521
- * cdef PetscVec uvec = NULL
- * if u is not None: uvec = u.vec
- * if uvec == NULL: # <<<<<<<<<<<<<<
- * CHKERR( TSGetSolution(self.ts, &uvec) )
- * CHKERR( TSMonitor(self.ts, ival, rval, uvec) )
+ /* "PETSc/TS.pyx":675
+ * if vecl != NULL:
+ * vl = [ref_Vec(vecl[i]) for i from 0 <= i < n]
+ * if vecm != NULL: # <<<<<<<<<<<<<<
+ * vm = [ref_Vec(vecm[i]) for i from 0 <= i < n]
+ * return (vl, vm)
*/
- __pyx_t_4 = ((__pyx_v_uvec == NULL) != 0);
- if (__pyx_t_4) {
+ __pyx_t_2 = ((__pyx_v_vecm != NULL) != 0);
+ if (__pyx_t_2) {
- /* "PETSc/TS.pyx":522
- * if u is not None: uvec = u.vec
- * if uvec == NULL:
- * CHKERR( TSGetSolution(self.ts, &uvec) ) # <<<<<<<<<<<<<<
- * CHKERR( TSMonitor(self.ts, ival, rval, uvec) )
+ /* "PETSc/TS.pyx":676
+ * vl = [ref_Vec(vecl[i]) for i from 0 <= i < n]
+ * if vecm != NULL:
+ * vm = [ref_Vec(vecm[i]) for i from 0 <= i < n] # <<<<<<<<<<<<<<
+ * return (vl, vm)
*
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSGetSolution(__pyx_v_self->ts, (&__pyx_v_uvec))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(37, 522, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 676, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = __pyx_v_n;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_4; __pyx_v_i++) {
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_Vec((__pyx_v_vecm[__pyx_v_i]))); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 676, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_5))) __PYX_ERR(37, 676, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ }
+ __Pyx_DECREF_SET(__pyx_v_vm, __pyx_t_3);
+ __pyx_t_3 = 0;
- /* "PETSc/TS.pyx":521
- * cdef PetscVec uvec = NULL
- * if u is not None: uvec = u.vec
- * if uvec == NULL: # <<<<<<<<<<<<<<
- * CHKERR( TSGetSolution(self.ts, &uvec) )
- * CHKERR( TSMonitor(self.ts, ival, rval, uvec) )
+ /* "PETSc/TS.pyx":675
+ * if vecl != NULL:
+ * vl = [ref_Vec(vecl[i]) for i from 0 <= i < n]
+ * if vecm != NULL: # <<<<<<<<<<<<<<
+ * vm = [ref_Vec(vecm[i]) for i from 0 <= i < n]
+ * return (vl, vm)
*/
}
- /* "PETSc/TS.pyx":523
- * if uvec == NULL:
- * CHKERR( TSGetSolution(self.ts, &uvec) )
- * CHKERR( TSMonitor(self.ts, ival, rval, uvec) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":677
+ * if vecm != NULL:
+ * vm = [ref_Vec(vecm[i]) for i from 0 <= i < n]
+ * return (vl, vm) # <<<<<<<<<<<<<<
*
- * # --- solving ---
+ * def setCostIntegrand(self, Vec cost or None, rfunction,
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSMonitor(__pyx_v_self->ts, __pyx_v_ival, __pyx_v_rval, __pyx_v_uvec)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(37, 523, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 677, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_vl);
+ __Pyx_GIVEREF(__pyx_v_vl);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_vl);
+ __Pyx_INCREF(__pyx_v_vm);
+ __Pyx_GIVEREF(__pyx_v_vm);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_vm);
+ __pyx_r = __pyx_t_3;
+ __pyx_t_3 = 0;
+ goto __pyx_L0;
- /* "PETSc/TS.pyx":516
- * CHKERR( TSMonitorCancel(self.ts) )
+ /* "PETSc/TS.pyx":667
+ * CHKERR( TSSetCostGradients(self.ts, n, vecl, vecm) )
*
- * def monitor(self, step, time, Vec u=None): # <<<<<<<<<<<<<<
- * cdef PetscInt ival = asInt(step)
- * cdef PetscReal rval = asReal(time)
+ * def getCostGradients(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt i = 0, n = 0
+ * cdef PetscVec *vecl = NULL
*/
/* function exit code */
- __pyx_r = Py_None; __Pyx_INCREF(Py_None);
- goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.monitor", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.getCostGradients", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_vl);
+ __Pyx_XDECREF(__pyx_v_vm);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":527
- * # --- solving ---
+/* "PETSc/TS.pyx":679
+ * return (vl, vm)
*
- * def setPreStep(self, prestep, args=None, kargs=None): # <<<<<<<<<<<<<<
- * if prestep is not None:
- * if args is None: args = ()
+ * def setCostIntegrand(self, Vec cost or None, rfunction, # <<<<<<<<<<<<<<
+ * n=0, drdyfunction=None, drdpfunction=None,
+ * forward=True, args=None, kargs=None):
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_139setPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_138setPreStep[] = "TS.setPreStep(self, prestep, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_139setPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_prestep = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_179setCostIntegrand(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_178setCostIntegrand[] = "TS.setCostIntegrand(self, Vec cost, rfunction, n=0, drdyfunction=None, drdpfunction=None, forward=True, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_179setCostIntegrand(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_cost = 0;
+ PyObject *__pyx_v_rfunction = 0;
+ PyObject *__pyx_v_n = 0;
+ PyObject *__pyx_v_drdyfunction = 0;
+ PyObject *__pyx_v_drdpfunction = 0;
+ PyObject *__pyx_v_forward = 0;
PyObject *__pyx_v_args = 0;
PyObject *__pyx_v_kargs = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setPreStep (wrapper)", 0);
+ __Pyx_RefNannySetupContext("setCostIntegrand (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_prestep,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
- PyObject* values[3] = {0,0,0};
- values[1] = ((PyObject *)Py_None);
- values[2] = ((PyObject *)Py_None);
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_cost,&__pyx_n_s_rfunction,&__pyx_n_s_n,&__pyx_n_s_drdyfunction,&__pyx_n_s_drdpfunction,&__pyx_n_s_forward,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[8] = {0,0,0,0,0,0,0,0};
+ values[2] = ((PyObject *)__pyx_int_0);
+
+ /* "PETSc/TS.pyx":680
+ *
+ * def setCostIntegrand(self, Vec cost or None, rfunction,
+ * n=0, drdyfunction=None, drdpfunction=None, # <<<<<<<<<<<<<<
+ * forward=True, args=None, kargs=None):
+ * cdef PetscInt ival = asInt(n)
+ */
+ values[3] = ((PyObject *)Py_None);
+ values[4] = ((PyObject *)Py_None);
+
+ /* "PETSc/TS.pyx":681
+ * def setCostIntegrand(self, Vec cost or None, rfunction,
+ * n=0, drdyfunction=None, drdpfunction=None,
+ * forward=True, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(n)
+ * cdef PetscVec vec = NULL
+ */
+ values[5] = ((PyObject *)Py_True);
+ values[6] = ((PyObject *)Py_None);
+ values[7] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
+ CYTHON_FALLTHROUGH;
+ case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
+ case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_prestep)) != 0)) kw_args--;
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cost)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rfunction)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("setCostIntegrand", 0, 2, 8, 1); __PYX_ERR(37, 679, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_n);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_drdyfunction);
+ if (value) { values[3] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 4:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_drdpfunction);
+ if (value) { values[4] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 5:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_forward);
+ if (value) { values[5] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 6:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
- if (value) { values[1] = value; kw_args--; }
+ if (value) { values[6] = value; kw_args--; }
}
- case 2:
+ CYTHON_FALLTHROUGH;
+ case 7:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
- if (value) { values[2] = value; kw_args--; }
+ if (value) { values[7] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPreStep") < 0)) __PYX_ERR(37, 527, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCostIntegrand") < 0)) __PYX_ERR(37, 679, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
+ CYTHON_FALLTHROUGH;
+ case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
+ case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
}
- __pyx_v_prestep = values[0];
- __pyx_v_args = values[1];
- __pyx_v_kargs = values[2];
+ __pyx_v_cost = ((struct PyPetscVecObject *)values[0]);
+ __pyx_v_rfunction = values[1];
+ __pyx_v_n = values[2];
+ __pyx_v_drdyfunction = values[3];
+ __pyx_v_drdpfunction = values[4];
+ __pyx_v_forward = values[5];
+ __pyx_v_args = values[6];
+ __pyx_v_kargs = values[7];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPreStep", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 527, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCostIntegrand", 0, 2, 8, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 679, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setPreStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setCostIntegrand", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_138setPreStep(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_prestep, __pyx_v_args, __pyx_v_kargs);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_cost), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "cost", 0))) __PYX_ERR(37, 679, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_178setCostIntegrand(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_cost, __pyx_v_rfunction, __pyx_v_n, __pyx_v_drdyfunction, __pyx_v_drdpfunction, __pyx_v_forward, __pyx_v_args, __pyx_v_kargs);
+
+ /* "PETSc/TS.pyx":679
+ * return (vl, vm)
+ *
+ * def setCostIntegrand(self, Vec cost or None, rfunction, # <<<<<<<<<<<<<<
+ * n=0, drdyfunction=None, drdpfunction=None,
+ * forward=True, args=None, kargs=None):
+ */
/* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_138setPreStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_prestep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178setCostIntegrand(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_cost, PyObject *__pyx_v_rfunction, PyObject *__pyx_v_n, PyObject *__pyx_v_drdyfunction, PyObject *__pyx_v_drdpfunction, PyObject *__pyx_v_forward, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PetscInt __pyx_v_ival;
+ Vec __pyx_v_vec;
+ int (*__pyx_v_R)(TS, PetscReal, Vec, Vec, void *);
+ int (*__pyx_v_DRDY)(TS, PetscReal, Vec, Vec *, void *);
+ int (*__pyx_v_DRDP)(TS, PetscReal, Vec, Vec *, void *);
+ PetscBool __pyx_v_fwd;
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
+ PetscInt __pyx_t_1;
int __pyx_t_2;
- PyObject *__pyx_t_3 = NULL;
- int __pyx_t_4;
- __Pyx_RefNannySetupContext("setPreStep", 0);
+ int __pyx_t_3;
+ Vec __pyx_t_4;
+ PetscBool __pyx_t_5;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ int __pyx_t_8;
+ __Pyx_RefNannySetupContext("setCostIntegrand", 0);
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":528
- *
- * def setPreStep(self, prestep, args=None, kargs=None):
- * if prestep is not None: # <<<<<<<<<<<<<<
- * if args is None: args = ()
- * if kargs is None: kargs = {}
+ /* "PETSc/TS.pyx":682
+ * n=0, drdyfunction=None, drdpfunction=None,
+ * forward=True, args=None, kargs=None):
+ * cdef PetscInt ival = asInt(n) # <<<<<<<<<<<<<<
+ * cdef PetscVec vec = NULL
+ * cdef int (*R )(PetscTS,PetscReal,PetscVec,PetscVec, void*) nogil except PETSC_ERR_PYTHON
*/
- __pyx_t_1 = (__pyx_v_prestep != Py_None);
- __pyx_t_2 = (__pyx_t_1 != 0);
- if (__pyx_t_2) {
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_n); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(37, 682, __pyx_L1_error)
+ __pyx_v_ival = __pyx_t_1;
- /* "PETSc/TS.pyx":529
- * def setPreStep(self, prestep, args=None, kargs=None):
- * if prestep is not None:
- * if args is None: args = () # <<<<<<<<<<<<<<
- * if kargs is None: kargs = {}
- * context = (prestep, args, kargs)
+ /* "PETSc/TS.pyx":683
+ * forward=True, args=None, kargs=None):
+ * cdef PetscInt ival = asInt(n)
+ * cdef PetscVec vec = NULL # <<<<<<<<<<<<<<
+ * cdef int (*R )(PetscTS,PetscReal,PetscVec,PetscVec, void*) nogil except PETSC_ERR_PYTHON
+ * cdef int (*DRDY)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) nogil except PETSC_ERR_PYTHON
*/
- __pyx_t_2 = (__pyx_v_args == Py_None);
- __pyx_t_1 = (__pyx_t_2 != 0);
- if (__pyx_t_1) {
- __Pyx_INCREF(__pyx_empty_tuple);
- __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
- }
+ __pyx_v_vec = NULL;
- /* "PETSc/TS.pyx":530
- * if prestep is not None:
- * if args is None: args = ()
- * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
- * context = (prestep, args, kargs)
- * self.set_attr('__prestep__', context)
+ /* "PETSc/TS.pyx":687
+ * cdef int (*DRDY)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) nogil except PETSC_ERR_PYTHON
+ * cdef int (*DRDP)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) nogil except PETSC_ERR_PYTHON
+ * R = NULL; DRDY = NULL; DRDP = NULL; # <<<<<<<<<<<<<<
+ * if cost is not None: vec = (<Vec>cost).vec
+ * if rfunction is not None: R = TSAdjoint_CostIntegrand
*/
- __pyx_t_1 = (__pyx_v_kargs == Py_None);
- __pyx_t_2 = (__pyx_t_1 != 0);
- if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 530, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
- __pyx_t_3 = 0;
- }
+ __pyx_v_R = NULL;
+ __pyx_v_DRDY = NULL;
+ __pyx_v_DRDP = NULL;
- /* "PETSc/TS.pyx":531
- * if args is None: args = ()
- * if kargs is None: kargs = {}
- * context = (prestep, args, kargs) # <<<<<<<<<<<<<<
- * self.set_attr('__prestep__', context)
- * CHKERR( TSSetPreStep(self.ts, TS_PreStep) )
+ /* "PETSc/TS.pyx":688
+ * cdef int (*DRDP)(PetscTS,PetscReal,PetscVec,PetscVec[],void*) nogil except PETSC_ERR_PYTHON
+ * R = NULL; DRDY = NULL; DRDP = NULL;
+ * if cost is not None: vec = (<Vec>cost).vec # <<<<<<<<<<<<<<
+ * if rfunction is not None: R = TSAdjoint_CostIntegrand
+ * if drdyfunction is not None: DRDY = TSAdjoint_CostIntegrand_DY
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 531, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_INCREF(__pyx_v_prestep);
- __Pyx_GIVEREF(__pyx_v_prestep);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_prestep);
- __Pyx_INCREF(__pyx_v_args);
- __Pyx_GIVEREF(__pyx_v_args);
- PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
- __Pyx_INCREF(__pyx_v_kargs);
- __Pyx_GIVEREF(__pyx_v_kargs);
- PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
- __pyx_v_context = ((PyObject*)__pyx_t_3);
- __pyx_t_3 = 0;
+ __pyx_t_2 = (((PyObject *)__pyx_v_cost) != Py_None);
+ __pyx_t_3 = (__pyx_t_2 != 0);
+ if (__pyx_t_3) {
+ __pyx_t_4 = __pyx_v_cost->vec;
+ __pyx_v_vec = __pyx_t_4;
+ }
- /* "PETSc/TS.pyx":532
- * if kargs is None: kargs = {}
- * context = (prestep, args, kargs)
- * self.set_attr('__prestep__', context) # <<<<<<<<<<<<<<
- * CHKERR( TSSetPreStep(self.ts, TS_PreStep) )
- * else:
+ /* "PETSc/TS.pyx":689
+ * R = NULL; DRDY = NULL; DRDP = NULL;
+ * if cost is not None: vec = (<Vec>cost).vec
+ * if rfunction is not None: R = TSAdjoint_CostIntegrand # <<<<<<<<<<<<<<
+ * if drdyfunction is not None: DRDY = TSAdjoint_CostIntegrand_DY
+ * if drdpfunction is not None: DRDP = TSAdjoint_CostIntegrand_DP
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__prestep__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 532, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_3 = (__pyx_v_rfunction != Py_None);
+ __pyx_t_2 = (__pyx_t_3 != 0);
+ if (__pyx_t_2) {
+ __pyx_v_R = __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand;
+ }
- /* "PETSc/TS.pyx":533
- * context = (prestep, args, kargs)
- * self.set_attr('__prestep__', context)
- * CHKERR( TSSetPreStep(self.ts, TS_PreStep) ) # <<<<<<<<<<<<<<
- * else:
- * self.set_attr('__prestep__', None)
+ /* "PETSc/TS.pyx":690
+ * if cost is not None: vec = (<Vec>cost).vec
+ * if rfunction is not None: R = TSAdjoint_CostIntegrand
+ * if drdyfunction is not None: DRDY = TSAdjoint_CostIntegrand_DY # <<<<<<<<<<<<<<
+ * if drdpfunction is not None: DRDP = TSAdjoint_CostIntegrand_DP
+ * cdef PetscBool fwd = forward
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPreStep(__pyx_v_self->ts, __pyx_f_8petsc4py_5PETSc_TS_PreStep)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 533, __pyx_L1_error)
+ __pyx_t_2 = (__pyx_v_drdyfunction != Py_None);
+ __pyx_t_3 = (__pyx_t_2 != 0);
+ if (__pyx_t_3) {
+ __pyx_v_DRDY = __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand_DY;
+ }
- /* "PETSc/TS.pyx":528
- *
- * def setPreStep(self, prestep, args=None, kargs=None):
- * if prestep is not None: # <<<<<<<<<<<<<<
- * if args is None: args = ()
- * if kargs is None: kargs = {}
+ /* "PETSc/TS.pyx":691
+ * if rfunction is not None: R = TSAdjoint_CostIntegrand
+ * if drdyfunction is not None: DRDY = TSAdjoint_CostIntegrand_DY
+ * if drdpfunction is not None: DRDP = TSAdjoint_CostIntegrand_DP # <<<<<<<<<<<<<<
+ * cdef PetscBool fwd = forward
+ * if args is None: args = ()
*/
- goto __pyx_L3;
+ __pyx_t_3 = (__pyx_v_drdpfunction != Py_None);
+ __pyx_t_2 = (__pyx_t_3 != 0);
+ if (__pyx_t_2) {
+ __pyx_v_DRDP = __pyx_f_8petsc4py_5PETSc_TSAdjoint_CostIntegrand_DP;
}
- /* "PETSc/TS.pyx":535
- * CHKERR( TSSetPreStep(self.ts, TS_PreStep) )
- * else:
- * self.set_attr('__prestep__', None) # <<<<<<<<<<<<<<
- * CHKERR( TSSetPreStep(self.ts, NULL) )
- *
+ /* "PETSc/TS.pyx":692
+ * if drdyfunction is not None: DRDY = TSAdjoint_CostIntegrand_DY
+ * if drdpfunction is not None: DRDP = TSAdjoint_CostIntegrand_DP
+ * cdef PetscBool fwd = forward # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
*/
- /*else*/ {
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__prestep__"), Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 535, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_5 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_forward)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 692, __pyx_L1_error)
+ __pyx_v_fwd = __pyx_t_5;
- /* "PETSc/TS.pyx":536
- * else:
- * self.set_attr('__prestep__', None)
- * CHKERR( TSSetPreStep(self.ts, NULL) ) # <<<<<<<<<<<<<<
- *
- * def getPreStep(self):
+ /* "PETSc/TS.pyx":693
+ * if drdpfunction is not None: DRDP = TSAdjoint_CostIntegrand_DP
+ * cdef PetscBool fwd = forward
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = ((rfunction, drdyfunction, drdpfunction), args, kargs)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPreStep(__pyx_v_self->ts, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 536, __pyx_L1_error)
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_3 = (__pyx_t_2 != 0);
+ if (__pyx_t_3) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- __pyx_L3:;
- /* "PETSc/TS.pyx":527
- * # --- solving ---
- *
- * def setPreStep(self, prestep, args=None, kargs=None): # <<<<<<<<<<<<<<
- * if prestep is not None:
- * if args is None: args = ()
+ /* "PETSc/TS.pyx":694
+ * cdef PetscBool fwd = forward
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = ((rfunction, drdyfunction, drdpfunction), args, kargs)
+ * self.set_attr('__costintegrand__', context)
*/
+ __pyx_t_3 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_3 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_6 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_6)) __PYX_ERR(37, 694, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_6);
+ __pyx_t_6 = 0;
+ }
- /* function exit code */
- __pyx_r = Py_None; __Pyx_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_3);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setPreStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = NULL;
- __pyx_L0:;
- __Pyx_XDECREF(__pyx_v_context);
- __Pyx_XDECREF(__pyx_v_args);
- __Pyx_XDECREF(__pyx_v_kargs);
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
+ /* "PETSc/TS.pyx":695
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = ((rfunction, drdyfunction, drdpfunction), args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__costintegrand__', context)
+ * CHKERR( TSSetCostIntegrand(self.ts, ival, vec, R, DRDY, DRDP, fwd, <void*>context) )
+ */
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(37, 695, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __Pyx_INCREF(__pyx_v_rfunction);
+ __Pyx_GIVEREF(__pyx_v_rfunction);
+ PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_rfunction);
+ __Pyx_INCREF(__pyx_v_drdyfunction);
+ __Pyx_GIVEREF(__pyx_v_drdyfunction);
+ PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_drdyfunction);
+ __Pyx_INCREF(__pyx_v_drdpfunction);
+ __Pyx_GIVEREF(__pyx_v_drdpfunction);
+ PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_drdpfunction);
+ __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(37, 695, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_kargs);
+ __pyx_t_6 = 0;
+ __pyx_v_context = ((PyObject*)__pyx_t_7);
+ __pyx_t_7 = 0;
-/* "PETSc/TS.pyx":538
- * CHKERR( TSSetPreStep(self.ts, NULL) )
- *
- * def getPreStep(self): # <<<<<<<<<<<<<<
- * return self.get_attr('__prestep__')
+ /* "PETSc/TS.pyx":696
+ * if kargs is None: kargs = {}
+ * context = ((rfunction, drdyfunction, drdpfunction), args, kargs)
+ * self.set_attr('__costintegrand__', context) # <<<<<<<<<<<<<<
+ * CHKERR( TSSetCostIntegrand(self.ts, ival, vec, R, DRDY, DRDP, fwd, <void*>context) )
*
*/
+ __pyx_t_7 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__costintegrand__"), __pyx_v_context); if (unlikely(!__pyx_t_7)) __PYX_ERR(37, 696, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_141getPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_140getPreStep[] = "TS.getPreStep(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_141getPreStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getPreStep (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getPreStep", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPreStep", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_140getPreStep(((struct PyPetscTSObject *)__pyx_v_self));
-
- /* function exit code */
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_140getPreStep(struct PyPetscTSObject *__pyx_v_self) {
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
- __Pyx_RefNannySetupContext("getPreStep", 0);
-
- /* "PETSc/TS.pyx":539
- *
- * def getPreStep(self):
- * return self.get_attr('__prestep__') # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":697
+ * context = ((rfunction, drdyfunction, drdpfunction), args, kargs)
+ * self.set_attr('__costintegrand__', context)
+ * CHKERR( TSSetCostIntegrand(self.ts, ival, vec, R, DRDY, DRDP, fwd, <void*>context) ) # <<<<<<<<<<<<<<
*
- * def setPostStep(self, poststep, args=None, kargs=None):
+ * def adjointSetRHSJacobian(self, adjointjacobian, Mat A=None, args=None, kargs=None):
*/
- __Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__prestep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 539, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_r = __pyx_t_1;
- __pyx_t_1 = 0;
- goto __pyx_L0;
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetCostIntegrand(__pyx_v_self->ts, __pyx_v_ival, __pyx_v_vec, __pyx_v_R, __pyx_v_DRDY, __pyx_v_DRDP, __pyx_v_fwd, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(37, 697, __pyx_L1_error)
- /* "PETSc/TS.pyx":538
- * CHKERR( TSSetPreStep(self.ts, NULL) )
- *
- * def getPreStep(self): # <<<<<<<<<<<<<<
- * return self.get_attr('__prestep__')
+ /* "PETSc/TS.pyx":679
+ * return (vl, vm)
*
+ * def setCostIntegrand(self, Vec cost or None, rfunction, # <<<<<<<<<<<<<<
+ * n=0, drdyfunction=None, drdpfunction=None,
+ * forward=True, args=None, kargs=None):
*/
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getPreStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_7);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.setCostIntegrand", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/TS.pyx":541
- * return self.get_attr('__prestep__')
+/* "PETSc/TS.pyx":699
+ * CHKERR( TSSetCostIntegrand(self.ts, ival, vec, R, DRDY, DRDP, fwd, <void*>context) )
*
- * def setPostStep(self, poststep, args=None, kargs=None): # <<<<<<<<<<<<<<
- * if poststep is not None:
- * if args is None: args = ()
+ * def adjointSetRHSJacobian(self, adjointjacobian, Mat A=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * cdef PetscMat Amat=NULL
+ * if A is not None: Amat = A.mat
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_143setPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_142setPostStep[] = "TS.setPostStep(self, poststep, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_143setPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_poststep = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_181adjointSetRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_180adjointSetRHSJacobian[] = "TS.adjointSetRHSJacobian(self, adjointjacobian, Mat A=None, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_181adjointSetRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_adjointjacobian = 0;
+ struct PyPetscMatObject *__pyx_v_A = 0;
PyObject *__pyx_v_args = 0;
PyObject *__pyx_v_kargs = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setPostStep (wrapper)", 0);
+ __Pyx_RefNannySetupContext("adjointSetRHSJacobian (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_poststep,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
- PyObject* values[3] = {0,0,0};
- values[1] = ((PyObject *)Py_None);
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_adjointjacobian,&__pyx_n_s_A,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[4] = {0,0,0,0};
+ values[1] = (PyObject *)((struct PyPetscMatObject *)Py_None);
values[2] = ((PyObject *)Py_None);
+ values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_poststep)) != 0)) kw_args--;
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_adjointjacobian)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_A);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[3] = value; kw_args--; }
+ }
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPostStep") < 0)) __PYX_ERR(37, 541, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "adjointSetRHSJacobian") < 0)) __PYX_ERR(37, 699, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
}
- __pyx_v_poststep = values[0];
- __pyx_v_args = values[1];
- __pyx_v_kargs = values[2];
+ __pyx_v_adjointjacobian = values[0];
+ __pyx_v_A = ((struct PyPetscMatObject *)values[1]);
+ __pyx_v_args = values[2];
+ __pyx_v_kargs = values[3];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPostStep", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 541, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("adjointSetRHSJacobian", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 699, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setPostStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointSetRHSJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_142setPostStep(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_poststep, __pyx_v_args, __pyx_v_kargs);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_A), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "A", 0))) __PYX_ERR(37, 699, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_180adjointSetRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_adjointjacobian, __pyx_v_A, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_142setPostStep(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_poststep, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_180adjointSetRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_adjointjacobian, struct PyPetscMatObject *__pyx_v_A, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ Mat __pyx_v_Amat;
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
int __pyx_t_2;
- PyObject *__pyx_t_3 = NULL;
- int __pyx_t_4;
- __Pyx_RefNannySetupContext("setPostStep", 0);
+ Mat __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ int __pyx_t_5;
+ __Pyx_RefNannySetupContext("adjointSetRHSJacobian", 0);
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/TS.pyx":542
+ /* "PETSc/TS.pyx":700
*
- * def setPostStep(self, poststep, args=None, kargs=None):
- * if poststep is not None: # <<<<<<<<<<<<<<
+ * def adjointSetRHSJacobian(self, adjointjacobian, Mat A=None, args=None, kargs=None):
+ * cdef PetscMat Amat=NULL # <<<<<<<<<<<<<<
+ * if A is not None: Amat = A.mat
+ * if adjointjacobian is not None:
+ */
+ __pyx_v_Amat = NULL;
+
+ /* "PETSc/TS.pyx":701
+ * def adjointSetRHSJacobian(self, adjointjacobian, Mat A=None, args=None, kargs=None):
+ * cdef PetscMat Amat=NULL
+ * if A is not None: Amat = A.mat # <<<<<<<<<<<<<<
+ * if adjointjacobian is not None:
* if args is None: args = ()
- * if kargs is None: kargs = {}
*/
- __pyx_t_1 = (__pyx_v_poststep != Py_None);
+ __pyx_t_1 = (((PyObject *)__pyx_v_A) != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
+ __pyx_t_3 = __pyx_v_A->mat;
+ __pyx_v_Amat = __pyx_t_3;
+ }
- /* "PETSc/TS.pyx":543
- * def setPostStep(self, poststep, args=None, kargs=None):
- * if poststep is not None:
+ /* "PETSc/TS.pyx":702
+ * cdef PetscMat Amat=NULL
+ * if A is not None: Amat = A.mat
+ * if adjointjacobian is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_2 = (__pyx_v_adjointjacobian != Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+
+ /* "PETSc/TS.pyx":703
+ * if A is not None: Amat = A.mat
+ * if adjointjacobian is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
* if kargs is None: kargs = {}
- * context = (poststep, args, kargs)
+ * context = (adjointjacobian, args, kargs)
*/
- __pyx_t_2 = (__pyx_v_args == Py_None);
- __pyx_t_1 = (__pyx_t_2 != 0);
- if (__pyx_t_1) {
+ __pyx_t_1 = (__pyx_v_args == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
__Pyx_INCREF(__pyx_empty_tuple);
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/TS.pyx":544
- * if poststep is not None:
+ /* "PETSc/TS.pyx":704
+ * if adjointjacobian is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
- * context = (poststep, args, kargs)
- * self.set_attr('__poststep__', context)
+ * context = (adjointjacobian, args, kargs)
+ * self.set_attr('__adjointrhsjacobian__', context)
*/
- __pyx_t_1 = (__pyx_v_kargs == Py_None);
- __pyx_t_2 = (__pyx_t_1 != 0);
- if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 544, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
- __pyx_t_3 = 0;
+ __pyx_t_2 = (__pyx_v_kargs == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 704, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
+ __pyx_t_4 = 0;
}
- /* "PETSc/TS.pyx":545
+ /* "PETSc/TS.pyx":705
* if args is None: args = ()
* if kargs is None: kargs = {}
- * context = (poststep, args, kargs) # <<<<<<<<<<<<<<
- * self.set_attr('__poststep__', context)
- * CHKERR( TSSetPostStep(self.ts, TS_PostStep) )
+ * context = (adjointjacobian, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__adjointrhsjacobian__', context)
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, TSAdjoint_RHSJacobian, <void*>context) )
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 545, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_INCREF(__pyx_v_poststep);
- __Pyx_GIVEREF(__pyx_v_poststep);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_poststep);
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 705, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_INCREF(__pyx_v_adjointjacobian);
+ __Pyx_GIVEREF(__pyx_v_adjointjacobian);
+ PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_adjointjacobian);
__Pyx_INCREF(__pyx_v_args);
__Pyx_GIVEREF(__pyx_v_args);
- PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
__Pyx_GIVEREF(__pyx_v_kargs);
- PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
- __pyx_v_context = ((PyObject*)__pyx_t_3);
- __pyx_t_3 = 0;
+ PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_4);
+ __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":546
+ /* "PETSc/TS.pyx":706
* if kargs is None: kargs = {}
- * context = (poststep, args, kargs)
- * self.set_attr('__poststep__', context) # <<<<<<<<<<<<<<
- * CHKERR( TSSetPostStep(self.ts, TS_PostStep) )
+ * context = (adjointjacobian, args, kargs)
+ * self.set_attr('__adjointrhsjacobian__', context) # <<<<<<<<<<<<<<
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, TSAdjoint_RHSJacobian, <void*>context) )
* else:
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__poststep__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 546, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_4 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__adjointrhsjacobian__"), __pyx_v_context); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 706, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/TS.pyx":547
- * context = (poststep, args, kargs)
- * self.set_attr('__poststep__', context)
- * CHKERR( TSSetPostStep(self.ts, TS_PostStep) ) # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":707
+ * context = (adjointjacobian, args, kargs)
+ * self.set_attr('__adjointrhsjacobian__', context)
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, TSAdjoint_RHSJacobian, <void*>context) ) # <<<<<<<<<<<<<<
* else:
- * self.set_attr('__poststep__', None)
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, NULL, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPostStep(__pyx_v_self->ts, __pyx_f_8petsc4py_5PETSc_TS_PostStep)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 547, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAdjointSetRHSJacobian(__pyx_v_self->ts, __pyx_v_Amat, __pyx_f_8petsc4py_5PETSc_TSAdjoint_RHSJacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 707, __pyx_L1_error)
- /* "PETSc/TS.pyx":542
- *
- * def setPostStep(self, poststep, args=None, kargs=None):
- * if poststep is not None: # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":702
+ * cdef PetscMat Amat=NULL
+ * if A is not None: Amat = A.mat
+ * if adjointjacobian is not None: # <<<<<<<<<<<<<<
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- goto __pyx_L3;
+ goto __pyx_L4;
}
- /* "PETSc/TS.pyx":549
- * CHKERR( TSSetPostStep(self.ts, TS_PostStep) )
+ /* "PETSc/TS.pyx":709
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, TSAdjoint_RHSJacobian, <void*>context) )
* else:
- * self.set_attr('__poststep__', None) # <<<<<<<<<<<<<<
- * CHKERR( TSSetPostStep(self.ts, NULL) )
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, NULL, NULL) ) # <<<<<<<<<<<<<<
*
+ * def adjointComputeRHSJacobian(self, t, Vec x, Mat J):
*/
/*else*/ {
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__poststep__"), Py_None); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 549, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
-
- /* "PETSc/TS.pyx":550
- * else:
- * self.set_attr('__poststep__', None)
- * CHKERR( TSSetPostStep(self.ts, NULL) ) # <<<<<<<<<<<<<<
- *
- * def getPostStep(self):
- */
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetPostStep(__pyx_v_self->ts, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 550, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAdjointSetRHSJacobian(__pyx_v_self->ts, __pyx_v_Amat, NULL, NULL)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(37, 709, __pyx_L1_error)
}
- __pyx_L3:;
+ __pyx_L4:;
- /* "PETSc/TS.pyx":541
- * return self.get_attr('__prestep__')
+ /* "PETSc/TS.pyx":699
+ * CHKERR( TSSetCostIntegrand(self.ts, ival, vec, R, DRDY, DRDP, fwd, <void*>context) )
*
- * def setPostStep(self, poststep, args=None, kargs=None): # <<<<<<<<<<<<<<
- * if poststep is not None:
- * if args is None: args = ()
+ * def adjointSetRHSJacobian(self, adjointjacobian, Mat A=None, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * cdef PetscMat Amat=NULL
+ * if A is not None: Amat = A.mat
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_3);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setPostStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointSetRHSJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_context);
@@ -182948,123 +196891,133 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_142setPostStep(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":552
- * CHKERR( TSSetPostStep(self.ts, NULL) )
- *
- * def getPostStep(self): # <<<<<<<<<<<<<<
- * return self.get_attr('__poststep__')
+/* "PETSc/TS.pyx":711
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, NULL, NULL) )
*
+ * def adjointComputeRHSJacobian(self, t, Vec x, Mat J): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSAdjointComputeRHSJacobian(self.ts, rval, x.vec, J.mat) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_145getPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_144getPostStep[] = "TS.getPostStep(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_145getPostStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_183adjointComputeRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_182adjointComputeRHSJacobian[] = "TS.adjointComputeRHSJacobian(self, t, Vec x, Mat J)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_183adjointComputeRHSJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_t = 0;
+ struct PyPetscVecObject *__pyx_v_x = 0;
+ struct PyPetscMatObject *__pyx_v_J = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("getPostStep (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("getPostStep", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPostStep", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_144getPostStep(((struct PyPetscTSObject *)__pyx_v_self));
-
- /* function exit code */
+ __Pyx_RefNannySetupContext("adjointComputeRHSJacobian (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,&__pyx_n_s_x,&__pyx_n_s_J,0};
+ PyObject* values[3] = {0,0,0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("adjointComputeRHSJacobian", 1, 3, 3, 1); __PYX_ERR(37, 711, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("adjointComputeRHSJacobian", 1, 3, 3, 2); __PYX_ERR(37, 711, __pyx_L3_error)
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "adjointComputeRHSJacobian") < 0)) __PYX_ERR(37, 711, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ }
+ __pyx_v_t = values[0];
+ __pyx_v_x = ((struct PyPetscVecObject *)values[1]);
+ __pyx_v_J = ((struct PyPetscMatObject *)values[2]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("adjointComputeRHSJacobian", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 711, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointComputeRHSJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_144getPostStep(struct PyPetscTSObject *__pyx_v_self) {
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- PyObject *__pyx_t_1 = NULL;
- __Pyx_RefNannySetupContext("getPostStep", 0);
-
- /* "PETSc/TS.pyx":553
- *
- * def getPostStep(self):
- * return self.get_attr('__poststep__') # <<<<<<<<<<<<<<
- *
- * def setUp(self):
- */
- __Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TS *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__poststep__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 553, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __pyx_r = __pyx_t_1;
- __pyx_t_1 = 0;
- goto __pyx_L0;
-
- /* "PETSc/TS.pyx":552
- * CHKERR( TSSetPostStep(self.ts, NULL) )
- *
- * def getPostStep(self): # <<<<<<<<<<<<<<
- * return self.get_attr('__poststep__')
- *
- */
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "x", 0))) __PYX_ERR(37, 711, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_J), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "J", 0))) __PYX_ERR(37, 711, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_182adjointComputeRHSJacobian(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_x, __pyx_v_J);
/* function exit code */
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_1);
- __Pyx_AddTraceback("petsc4py.PETSc.TS.getPostStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-/* "PETSc/TS.pyx":555
- * return self.get_attr('__poststep__')
- *
- * def setUp(self): # <<<<<<<<<<<<<<
- * CHKERR( TSSetUp(self.ts) )
- *
- */
-
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_147setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_146setUp[] = "TS.setUp(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_147setUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("setUp (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("setUp", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "setUp", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_146setUp(((struct PyPetscTSObject *)__pyx_v_self));
-
- /* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_146setUp(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_182adjointComputeRHSJacobian(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_x, struct PyPetscMatObject *__pyx_v_J) {
+ PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
- __Pyx_RefNannySetupContext("setUp", 0);
+ PetscReal __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("adjointComputeRHSJacobian", 0);
- /* "PETSc/TS.pyx":556
+ /* "PETSc/TS.pyx":712
*
- * def setUp(self):
- * CHKERR( TSSetUp(self.ts) ) # <<<<<<<<<<<<<<
+ * def adjointComputeRHSJacobian(self, t, Vec x, Mat J):
+ * cdef PetscReal rval = asReal(t) # <<<<<<<<<<<<<<
+ * CHKERR( TSAdjointComputeRHSJacobian(self.ts, rval, x.vec, J.mat) )
*
- * def reset(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetUp(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 556, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 712, __pyx_L1_error)
+ __pyx_v_rval = __pyx_t_1;
- /* "PETSc/TS.pyx":555
- * return self.get_attr('__poststep__')
+ /* "PETSc/TS.pyx":713
+ * def adjointComputeRHSJacobian(self, t, Vec x, Mat J):
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSAdjointComputeRHSJacobian(self.ts, rval, x.vec, J.mat) ) # <<<<<<<<<<<<<<
*
- * def setUp(self): # <<<<<<<<<<<<<<
- * CHKERR( TSSetUp(self.ts) )
+ * def adjointSetSteps(self, adjoint_steps):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAdjointComputeRHSJacobian(__pyx_v_self->ts, __pyx_v_rval, __pyx_v_x->vec, __pyx_v_J->mat)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 713, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":711
+ * CHKERR( TSAdjointSetRHSJacobian(self.ts, Amat, NULL, NULL) )
*
+ * def adjointComputeRHSJacobian(self, t, Vec x, Mat J): # <<<<<<<<<<<<<<
+ * cdef PetscReal rval = asReal(t)
+ * CHKERR( TSAdjointComputeRHSJacobian(self.ts, rval, x.vec, J.mat) )
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.setUp", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointComputeRHSJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -183072,59 +197025,105 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_146setUp(struct PyPetscTSObject *
return __pyx_r;
}
-/* "PETSc/TS.pyx":558
- * CHKERR( TSSetUp(self.ts) )
- *
- * def reset(self): # <<<<<<<<<<<<<<
- * CHKERR( TSReset(self.ts) )
+/* "PETSc/TS.pyx":715
+ * CHKERR( TSAdjointComputeRHSJacobian(self.ts, rval, x.vec, J.mat) )
*
+ * def adjointSetSteps(self, adjoint_steps): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(adjoint_steps)
+ * CHKERR( TSAdjointSetSteps(self.ts, ival) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_149reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_148reset[] = "TS.reset(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_149reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_185adjointSetSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_184adjointSetSteps[] = "TS.adjointSetSteps(self, adjoint_steps)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_185adjointSetSteps(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_adjoint_steps = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("reset (wrapper)", 0);
- if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("reset", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "reset", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_148reset(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RefNannySetupContext("adjointSetSteps (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_adjoint_steps,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_adjoint_steps)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "adjointSetSteps") < 0)) __PYX_ERR(37, 715, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_adjoint_steps = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("adjointSetSteps", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 715, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointSetSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_184adjointSetSteps(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_adjoint_steps);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_148reset(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_184adjointSetSteps(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_adjoint_steps) {
+ PetscInt __pyx_v_ival;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- int __pyx_t_1;
- __Pyx_RefNannySetupContext("reset", 0);
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("adjointSetSteps", 0);
- /* "PETSc/TS.pyx":559
+ /* "PETSc/TS.pyx":716
*
- * def reset(self):
- * CHKERR( TSReset(self.ts) ) # <<<<<<<<<<<<<<
+ * def adjointSetSteps(self, adjoint_steps):
+ * cdef PetscInt ival = asInt(adjoint_steps) # <<<<<<<<<<<<<<
+ * CHKERR( TSAdjointSetSteps(self.ts, ival) )
*
- * def step(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSReset(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 559, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_adjoint_steps); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(37, 716, __pyx_L1_error)
+ __pyx_v_ival = __pyx_t_1;
- /* "PETSc/TS.pyx":558
- * CHKERR( TSSetUp(self.ts) )
+ /* "PETSc/TS.pyx":717
+ * def adjointSetSteps(self, adjoint_steps):
+ * cdef PetscInt ival = asInt(adjoint_steps)
+ * CHKERR( TSAdjointSetSteps(self.ts, ival) ) # <<<<<<<<<<<<<<
*
- * def reset(self): # <<<<<<<<<<<<<<
- * CHKERR( TSReset(self.ts) )
+ * def adjointSetUp(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAdjointSetSteps(__pyx_v_self->ts, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 717, __pyx_L1_error)
+
+ /* "PETSc/TS.pyx":715
+ * CHKERR( TSAdjointComputeRHSJacobian(self.ts, rval, x.vec, J.mat) )
*
+ * def adjointSetSteps(self, adjoint_steps): # <<<<<<<<<<<<<<
+ * cdef PetscInt ival = asInt(adjoint_steps)
+ * CHKERR( TSAdjointSetSteps(self.ts, ival) )
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.reset", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointSetSteps", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -183132,51 +197131,51 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_148reset(struct PyPetscTSObject *
return __pyx_r;
}
-/* "PETSc/TS.pyx":561
- * CHKERR( TSReset(self.ts) )
+/* "PETSc/TS.pyx":719
+ * CHKERR( TSAdjointSetSteps(self.ts, ival) )
*
- * def step(self): # <<<<<<<<<<<<<<
- * CHKERR( TSStep(self.ts) )
+ * def adjointSetUp(self): # <<<<<<<<<<<<<<
+ * CHKERR(TSAdjointSetUp(self.ts))
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_151step(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_150step[] = "TS.step(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_151step(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_187adjointSetUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_186adjointSetUp[] = "TS.adjointSetUp(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_187adjointSetUp(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("step (wrapper)", 0);
+ __Pyx_RefNannySetupContext("adjointSetUp (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("step", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "step", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_150step(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("adjointSetUp", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "adjointSetUp", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_186adjointSetUp(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_150step(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_186adjointSetUp(struct PyPetscTSObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- __Pyx_RefNannySetupContext("step", 0);
+ __Pyx_RefNannySetupContext("adjointSetUp", 0);
- /* "PETSc/TS.pyx":562
+ /* "PETSc/TS.pyx":720
*
- * def step(self):
- * CHKERR( TSStep(self.ts) ) # <<<<<<<<<<<<<<
+ * def adjointSetUp(self):
+ * CHKERR(TSAdjointSetUp(self.ts)) # <<<<<<<<<<<<<<
*
- * def rollBack(self):
+ * def adjointSolve(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSStep(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 562, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAdjointSetUp(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 720, __pyx_L1_error)
- /* "PETSc/TS.pyx":561
- * CHKERR( TSReset(self.ts) )
+ /* "PETSc/TS.pyx":719
+ * CHKERR( TSAdjointSetSteps(self.ts, ival) )
*
- * def step(self): # <<<<<<<<<<<<<<
- * CHKERR( TSStep(self.ts) )
+ * def adjointSetUp(self): # <<<<<<<<<<<<<<
+ * CHKERR(TSAdjointSetUp(self.ts))
*
*/
@@ -183184,7 +197183,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_150step(struct PyPetscTSObject *_
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.step", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointSetUp", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -183192,51 +197191,51 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_150step(struct PyPetscTSObject *_
return __pyx_r;
}
-/* "PETSc/TS.pyx":564
- * CHKERR( TSStep(self.ts) )
+/* "PETSc/TS.pyx":722
+ * CHKERR(TSAdjointSetUp(self.ts))
*
- * def rollBack(self): # <<<<<<<<<<<<<<
- * CHKERR( TSRollBack(self.ts) )
+ * def adjointSolve(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSAdjointSolve(self.ts) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_153rollBack(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_152rollBack[] = "TS.rollBack(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_153rollBack(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_189adjointSolve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_188adjointSolve[] = "TS.adjointSolve(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_189adjointSolve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("rollBack (wrapper)", 0);
+ __Pyx_RefNannySetupContext("adjointSolve (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
- __Pyx_RaiseArgtupleInvalid("rollBack", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
- if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "rollBack", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_152rollBack(((struct PyPetscTSObject *)__pyx_v_self));
+ __Pyx_RaiseArgtupleInvalid("adjointSolve", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "adjointSolve", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_188adjointSolve(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_152rollBack(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_188adjointSolve(struct PyPetscTSObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- __Pyx_RefNannySetupContext("rollBack", 0);
+ __Pyx_RefNannySetupContext("adjointSolve", 0);
- /* "PETSc/TS.pyx":565
+ /* "PETSc/TS.pyx":723
*
- * def rollBack(self):
- * CHKERR( TSRollBack(self.ts) ) # <<<<<<<<<<<<<<
+ * def adjointSolve(self):
+ * CHKERR( TSAdjointSolve(self.ts) ) # <<<<<<<<<<<<<<
*
- * def solve(self, Vec u not None):
+ * def adjointStep(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSRollBack(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 565, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAdjointSolve(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 723, __pyx_L1_error)
- /* "PETSc/TS.pyx":564
- * CHKERR( TSStep(self.ts) )
+ /* "PETSc/TS.pyx":722
+ * CHKERR(TSAdjointSetUp(self.ts))
*
- * def rollBack(self): # <<<<<<<<<<<<<<
- * CHKERR( TSRollBack(self.ts) )
+ * def adjointSolve(self): # <<<<<<<<<<<<<<
+ * CHKERR( TSAdjointSolve(self.ts) )
*
*/
@@ -183244,7 +197243,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_152rollBack(struct PyPetscTSObjec
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.rollBack", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointSolve", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -183252,216 +197251,59 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_152rollBack(struct PyPetscTSObjec
return __pyx_r;
}
-/* "PETSc/TS.pyx":567
- * CHKERR( TSRollBack(self.ts) )
+/* "PETSc/TS.pyx":725
+ * CHKERR( TSAdjointSolve(self.ts) )
*
- * def solve(self, Vec u not None): # <<<<<<<<<<<<<<
- * CHKERR( TSSolve(self.ts, u.vec) )
+ * def adjointStep(self): # <<<<<<<<<<<<<<
+ * CHKERR(TSAdjointStep(self.ts))
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_155solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_154solve[] = "TS.solve(self, Vec u)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_155solve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- struct PyPetscVecObject *__pyx_v_u = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_191adjointStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_190adjointStep[] = "TS.adjointStep(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_191adjointStep(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("solve (wrapper)", 0);
- {
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_u,0};
- PyObject* values[1] = {0};
- if (unlikely(__pyx_kwds)) {
- Py_ssize_t kw_args;
- const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
- switch (pos_args) {
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- kw_args = PyDict_Size(__pyx_kwds);
- switch (pos_args) {
- case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u)) != 0)) kw_args--;
- else goto __pyx_L5_argtuple_error;
- }
- if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "solve") < 0)) __PYX_ERR(37, 567, __pyx_L3_error)
- }
- } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
- goto __pyx_L5_argtuple_error;
- } else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- }
- __pyx_v_u = ((struct PyPetscVecObject *)values[0]);
- }
- goto __pyx_L4_argument_unpacking_done;
- __pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("solve", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 567, __pyx_L3_error)
- __pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __Pyx_RefNannyFinishContext();
- return NULL;
- __pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "u", 0))) __PYX_ERR(37, 567, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_154solve(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_u);
+ __Pyx_RefNannySetupContext("adjointStep (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("adjointStep", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "adjointStep", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_190adjointStep(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
- goto __pyx_L0;
- __pyx_L1_error:;
- __pyx_r = NULL;
- __pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_154solve(struct PyPetscTSObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_u) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_190adjointStep(struct PyPetscTSObject *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
- __Pyx_RefNannySetupContext("solve", 0);
-
- /* "PETSc/TS.pyx":568
- *
- * def solve(self, Vec u not None):
- * CHKERR( TSSolve(self.ts, u.vec) ) # <<<<<<<<<<<<<<
- *
- * def interpolate(self, t, Vec u not None):
- */
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSolve(__pyx_v_self->ts, __pyx_v_u->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 568, __pyx_L1_error)
-
- /* "PETSc/TS.pyx":567
- * CHKERR( TSRollBack(self.ts) )
- *
- * def solve(self, Vec u not None): # <<<<<<<<<<<<<<
- * CHKERR( TSSolve(self.ts, u.vec) )
- *
- */
-
- /* function exit code */
- __pyx_r = Py_None; __Pyx_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __pyx_r = NULL;
- __pyx_L0:;
- __Pyx_XGIVEREF(__pyx_r);
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
+ __Pyx_RefNannySetupContext("adjointStep", 0);
-/* "PETSc/TS.pyx":570
- * CHKERR( TSSolve(self.ts, u.vec) )
+ /* "PETSc/TS.pyx":726
*
- * def interpolate(self, t, Vec u not None): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(t)
- * CHKERR( TSInterpolate(self.ts, rval, u.vec) )
- */
-
-/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_157interpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_156interpolate[] = "TS.interpolate(self, t, Vec u)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_157interpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_t = 0;
- struct PyPetscVecObject *__pyx_v_u = 0;
- PyObject *__pyx_r = 0;
- __Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("interpolate (wrapper)", 0);
- {
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_t,&__pyx_n_s_u,0};
- PyObject* values[2] = {0,0};
- if (unlikely(__pyx_kwds)) {
- Py_ssize_t kw_args;
- const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
- switch (pos_args) {
- case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- kw_args = PyDict_Size(__pyx_kwds);
- switch (pos_args) {
- case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_t)) != 0)) kw_args--;
- else goto __pyx_L5_argtuple_error;
- case 1:
- if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_u)) != 0)) kw_args--;
- else {
- __Pyx_RaiseArgtupleInvalid("interpolate", 1, 2, 2, 1); __PYX_ERR(37, 570, __pyx_L3_error)
- }
- }
- if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "interpolate") < 0)) __PYX_ERR(37, 570, __pyx_L3_error)
- }
- } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
- goto __pyx_L5_argtuple_error;
- } else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- }
- __pyx_v_t = values[0];
- __pyx_v_u = ((struct PyPetscVecObject *)values[1]);
- }
- goto __pyx_L4_argument_unpacking_done;
- __pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("interpolate", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 570, __pyx_L3_error)
- __pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __Pyx_RefNannyFinishContext();
- return NULL;
- __pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "u", 0))) __PYX_ERR(37, 570, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_156interpolate(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_t, __pyx_v_u);
-
- /* function exit code */
- goto __pyx_L0;
- __pyx_L1_error:;
- __pyx_r = NULL;
- __pyx_L0:;
- __Pyx_RefNannyFinishContext();
- return __pyx_r;
-}
-
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_156interpolate(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_t, struct PyPetscVecObject *__pyx_v_u) {
- PetscReal __pyx_v_rval;
- PyObject *__pyx_r = NULL;
- __Pyx_RefNannyDeclarations
- PetscReal __pyx_t_1;
- int __pyx_t_2;
- __Pyx_RefNannySetupContext("interpolate", 0);
-
- /* "PETSc/TS.pyx":571
+ * def adjointStep(self):
+ * CHKERR(TSAdjointStep(self.ts)) # <<<<<<<<<<<<<<
*
- * def interpolate(self, t, Vec u not None):
- * cdef PetscReal rval = asReal(t) # <<<<<<<<<<<<<<
- * CHKERR( TSInterpolate(self.ts, rval, u.vec) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_t); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 571, __pyx_L1_error)
- __pyx_v_rval = __pyx_t_1;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAdjointStep(__pyx_v_self->ts)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 726, __pyx_L1_error)
- /* "PETSc/TS.pyx":572
- * def interpolate(self, t, Vec u not None):
- * cdef PetscReal rval = asReal(t)
- * CHKERR( TSInterpolate(self.ts, rval, u.vec) ) # <<<<<<<<<<<<<<
- *
+ /* "PETSc/TS.pyx":725
+ * CHKERR( TSAdjointSolve(self.ts) )
*
- */
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSInterpolate(__pyx_v_self->ts, __pyx_v_rval, __pyx_v_u->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 572, __pyx_L1_error)
-
- /* "PETSc/TS.pyx":570
- * CHKERR( TSSolve(self.ts, u.vec) )
+ * def adjointStep(self): # <<<<<<<<<<<<<<
+ * CHKERR(TSAdjointStep(self.ts))
*
- * def interpolate(self, t, Vec u not None): # <<<<<<<<<<<<<<
- * cdef PetscReal rval = asReal(t)
- * CHKERR( TSInterpolate(self.ts, rval, u.vec) )
*/
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.TS.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.TS.adjointStep", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
@@ -183469,7 +197311,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_156interpolate(struct PyPetscTSOb
return __pyx_r;
}
-/* "PETSc/TS.pyx":577
+/* "PETSc/TS.pyx":731
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -183478,9 +197320,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_156interpolate(struct PyPetscTSOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_158createPython[] = "TS.createPython(self, context=None, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_193createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_192createPython[] = "TS.createPython(self, context=None, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_193createPython(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_context = 0;
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
@@ -183496,7 +197338,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159createPython(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -183507,6 +197351,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159createPython(PyObject *__pyx_v
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_context);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -183514,12 +197359,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159createPython(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(37, 577, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createPython") < 0)) __PYX_ERR(37, 731, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -183529,20 +197376,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_159createPython(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 577, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createPython", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 731, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.createPython", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_158createPython(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_context, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_192createPython(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_context, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_192createPython(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
TS __pyx_v_newts;
PyObject *__pyx_r = NULL;
@@ -183551,17 +197398,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSO
int __pyx_t_2;
__Pyx_RefNannySetupContext("createPython", 0);
- /* "PETSc/TS.pyx":578
+ /* "PETSc/TS.pyx":732
*
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscTS newts = NULL
* CHKERR( TSCreate(ccomm, &newts) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 578, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 732, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/TS.pyx":579
+ /* "PETSc/TS.pyx":733
* def createPython(self, context=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscTS newts = NULL # <<<<<<<<<<<<<<
@@ -183570,16 +197417,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSO
*/
__pyx_v_newts = NULL;
- /* "PETSc/TS.pyx":580
+ /* "PETSc/TS.pyx":734
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscTS newts = NULL
* CHKERR( TSCreate(ccomm, &newts) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.ts = newts
* CHKERR( TSSetType(self.ts, TSPYTHON) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSCreate(__pyx_v_ccomm, (&__pyx_v_newts))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 580, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSCreate(__pyx_v_ccomm, (&__pyx_v_newts))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 734, __pyx_L1_error)
- /* "PETSc/TS.pyx":581
+ /* "PETSc/TS.pyx":735
* cdef PetscTS newts = NULL
* CHKERR( TSCreate(ccomm, &newts) )
* PetscCLEAR(self.obj); self.ts = newts # <<<<<<<<<<<<<<
@@ -183589,25 +197436,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSO
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.obj);
__pyx_v_self->ts = __pyx_v_newts;
- /* "PETSc/TS.pyx":582
+ /* "PETSc/TS.pyx":736
* CHKERR( TSCreate(ccomm, &newts) )
* PetscCLEAR(self.obj); self.ts = newts
* CHKERR( TSSetType(self.ts, TSPYTHON) ) # <<<<<<<<<<<<<<
* CHKERR( TSPythonSetContext(self.ts, <void*>context) )
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetType(__pyx_v_self->ts, TSPYTHON)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 582, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSSetType(__pyx_v_self->ts, TSPYTHON)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 736, __pyx_L1_error)
- /* "PETSc/TS.pyx":583
+ /* "PETSc/TS.pyx":737
* PetscCLEAR(self.obj); self.ts = newts
* CHKERR( TSSetType(self.ts, TSPYTHON) )
* CHKERR( TSPythonSetContext(self.ts, <void*>context) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonSetContext(__pyx_v_self->ts, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 583, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonSetContext(__pyx_v_self->ts, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 737, __pyx_L1_error)
- /* "PETSc/TS.pyx":584
+ /* "PETSc/TS.pyx":738
* CHKERR( TSSetType(self.ts, TSPYTHON) )
* CHKERR( TSPythonSetContext(self.ts, <void*>context) )
* return self # <<<<<<<<<<<<<<
@@ -183619,7 +197466,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSO
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/TS.pyx":577
+ /* "PETSc/TS.pyx":731
* # --- Python ---
*
* def createPython(self, context=None, comm=None): # <<<<<<<<<<<<<<
@@ -183637,7 +197484,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSO
return __pyx_r;
}
-/* "PETSc/TS.pyx":586
+/* "PETSc/TS.pyx":740
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -183646,9 +197493,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_158createPython(struct PyPetscTSO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_161setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_160setPythonContext[] = "TS.setPythonContext(self, context)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_161setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_195setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_194setPythonContext[] = "TS.setPythonContext(self, context)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_195setPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_context = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -183661,6 +197508,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_161setPythonContext(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -183671,7 +197519,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_161setPythonContext(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(37, 586, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonContext") < 0)) __PYX_ERR(37, 740, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -183682,35 +197530,35 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_161setPythonContext(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 586, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonContext", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 740, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setPythonContext", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_160setPythonContext(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_context);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_194setPythonContext(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_context);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_160setPythonContext(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_194setPythonContext(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_context) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPythonContext", 0);
- /* "PETSc/TS.pyx":587
+ /* "PETSc/TS.pyx":741
*
* def setPythonContext(self, context):
* CHKERR( TSPythonSetContext(self.ts, <void*>context) ) # <<<<<<<<<<<<<<
*
* def getPythonContext(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonSetContext(__pyx_v_self->ts, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 587, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonSetContext(__pyx_v_self->ts, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 741, __pyx_L1_error)
- /* "PETSc/TS.pyx":586
+ /* "PETSc/TS.pyx":740
* return self
*
* def setPythonContext(self, context): # <<<<<<<<<<<<<<
@@ -183730,7 +197578,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_160setPythonContext(struct PyPets
return __pyx_r;
}
-/* "PETSc/TS.pyx":589
+/* "PETSc/TS.pyx":743
* CHKERR( TSPythonSetContext(self.ts, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -183739,23 +197587,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_160setPythonContext(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_163getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_162getPythonContext[] = "TS.getPythonContext(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_163getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_197getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_196getPythonContext[] = "TS.getPythonContext(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_197getPythonContext(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getPythonContext (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getPythonContext", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPythonContext", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_196getPythonContext(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_196getPythonContext(struct PyPetscTSObject *__pyx_v_self) {
void *__pyx_v_context;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -183763,7 +197611,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("getPythonContext", 0);
- /* "PETSc/TS.pyx":590
+ /* "PETSc/TS.pyx":744
*
* def getPythonContext(self):
* cdef void *context = NULL # <<<<<<<<<<<<<<
@@ -183772,16 +197620,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPets
*/
__pyx_v_context = NULL;
- /* "PETSc/TS.pyx":591
+ /* "PETSc/TS.pyx":745
* def getPythonContext(self):
* cdef void *context = NULL
* CHKERR( TSPythonGetContext(self.ts, &context) ) # <<<<<<<<<<<<<<
* if context == NULL: return None
* else: return <object> context
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonGetContext(__pyx_v_self->ts, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 591, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonGetContext(__pyx_v_self->ts, (&__pyx_v_context))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 745, __pyx_L1_error)
- /* "PETSc/TS.pyx":592
+ /* "PETSc/TS.pyx":746
* cdef void *context = NULL
* CHKERR( TSPythonGetContext(self.ts, &context) )
* if context == NULL: return None # <<<<<<<<<<<<<<
@@ -183796,7 +197644,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPets
goto __pyx_L0;
}
- /* "PETSc/TS.pyx":593
+ /* "PETSc/TS.pyx":747
* CHKERR( TSPythonGetContext(self.ts, &context) )
* if context == NULL: return None
* else: return <object> context # <<<<<<<<<<<<<<
@@ -183810,7 +197658,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPets
goto __pyx_L0;
}
- /* "PETSc/TS.pyx":589
+ /* "PETSc/TS.pyx":743
* CHKERR( TSPythonSetContext(self.ts, <void*>context) )
*
* def getPythonContext(self): # <<<<<<<<<<<<<<
@@ -183828,7 +197676,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPets
return __pyx_r;
}
-/* "PETSc/TS.pyx":595
+/* "PETSc/TS.pyx":749
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -183837,9 +197685,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_162getPythonContext(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_165setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_164setPythonType[] = "TS.setPythonType(self, py_type)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_165setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_199setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_198setPythonType[] = "TS.setPythonType(self, py_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_199setPythonType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_py_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -183852,6 +197700,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_165setPythonType(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -183862,7 +197711,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_165setPythonType(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(37, 595, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPythonType") < 0)) __PYX_ERR(37, 749, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -183873,20 +197722,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_165setPythonType(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 595, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPythonType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 749, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setPythonType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_164setPythonType(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_py_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_198setPythonType(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_py_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164setPythonType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_py_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_198setPythonType(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_py_type) {
const char *__pyx_v_cval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -183895,7 +197744,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164setPythonType(struct PyPetscTS
__Pyx_RefNannySetupContext("setPythonType", 0);
__Pyx_INCREF(__pyx_v_py_type);
- /* "PETSc/TS.pyx":596
+ /* "PETSc/TS.pyx":750
*
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -183904,28 +197753,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164setPythonType(struct PyPetscTS
*/
__pyx_v_cval = NULL;
- /* "PETSc/TS.pyx":597
+ /* "PETSc/TS.pyx":751
* def setPythonType(self, py_type):
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval) # <<<<<<<<<<<<<<
* CHKERR( TSPythonSetType(self.ts, cval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 597, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_py_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 751, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_py_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/TS.pyx":598
+ /* "PETSc/TS.pyx":752
* cdef const_char *cval = NULL
* py_type = str2bytes(py_type, &cval)
* CHKERR( TSPythonSetType(self.ts, cval) ) # <<<<<<<<<<<<<<
*
* # --- Theta ---
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonSetType(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 598, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSPythonSetType(__pyx_v_self->ts, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 752, __pyx_L1_error)
- /* "PETSc/TS.pyx":595
+ /* "PETSc/TS.pyx":749
* else: return <object> context
*
* def setPythonType(self, py_type): # <<<<<<<<<<<<<<
@@ -183947,7 +197796,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164setPythonType(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":602
+/* "PETSc/TS.pyx":756
* # --- Theta ---
*
* def setTheta(self, theta): # <<<<<<<<<<<<<<
@@ -183956,9 +197805,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_164setPythonType(struct PyPetscTS
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_167setTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_166setTheta[] = "TS.setTheta(self, theta)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_167setTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_201setTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_200setTheta[] = "TS.setTheta(self, theta)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_201setTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_theta = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -183971,6 +197820,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_167setTheta(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -183981,7 +197831,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_167setTheta(PyObject *__pyx_v_sel
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTheta") < 0)) __PYX_ERR(37, 602, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTheta") < 0)) __PYX_ERR(37, 756, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -183992,20 +197842,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_167setTheta(PyObject *__pyx_v_sel
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTheta", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 602, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTheta", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 756, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setTheta", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_166setTheta(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_theta);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_200setTheta(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_theta);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_166setTheta(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_theta) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_200setTheta(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_theta) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -184013,26 +197863,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_166setTheta(struct PyPetscTSObjec
int __pyx_t_2;
__Pyx_RefNannySetupContext("setTheta", 0);
- /* "PETSc/TS.pyx":603
+ /* "PETSc/TS.pyx":757
*
* def setTheta(self, theta):
* cdef PetscReal rval = asReal(theta) # <<<<<<<<<<<<<<
* CHKERR( TSThetaSetTheta(self.ts, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_theta); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 603, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_theta); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 757, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/TS.pyx":604
+ /* "PETSc/TS.pyx":758
* def setTheta(self, theta):
* cdef PetscReal rval = asReal(theta)
* CHKERR( TSThetaSetTheta(self.ts, rval) ) # <<<<<<<<<<<<<<
*
* def getTheta(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaSetTheta(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 604, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaSetTheta(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 758, __pyx_L1_error)
- /* "PETSc/TS.pyx":602
+ /* "PETSc/TS.pyx":756
* # --- Theta ---
*
* def setTheta(self, theta): # <<<<<<<<<<<<<<
@@ -184052,7 +197902,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_166setTheta(struct PyPetscTSObjec
return __pyx_r;
}
-/* "PETSc/TS.pyx":606
+/* "PETSc/TS.pyx":760
* CHKERR( TSThetaSetTheta(self.ts, rval) )
*
* def getTheta(self): # <<<<<<<<<<<<<<
@@ -184061,23 +197911,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_166setTheta(struct PyPetscTSObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_169getTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_168getTheta[] = "TS.getTheta(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_169getTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_203getTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_202getTheta[] = "TS.getTheta(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_203getTheta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getTheta (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getTheta", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getTheta", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_202getTheta(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_202getTheta(struct PyPetscTSObject *__pyx_v_self) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -184085,7 +197935,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(struct PyPetscTSObjec
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getTheta", 0);
- /* "PETSc/TS.pyx":607
+ /* "PETSc/TS.pyx":761
*
* def getTheta(self):
* cdef PetscReal rval = 0 # <<<<<<<<<<<<<<
@@ -184094,16 +197944,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(struct PyPetscTSObjec
*/
__pyx_v_rval = 0.0;
- /* "PETSc/TS.pyx":608
+ /* "PETSc/TS.pyx":762
* def getTheta(self):
* cdef PetscReal rval = 0
* CHKERR( TSThetaGetTheta(self.ts, &rval) ) # <<<<<<<<<<<<<<
* return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaGetTheta(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 608, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaGetTheta(__pyx_v_self->ts, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 762, __pyx_L1_error)
- /* "PETSc/TS.pyx":609
+ /* "PETSc/TS.pyx":763
* cdef PetscReal rval = 0
* CHKERR( TSThetaGetTheta(self.ts, &rval) )
* return toReal(rval) # <<<<<<<<<<<<<<
@@ -184111,13 +197961,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(struct PyPetscTSObjec
* def setThetaEndpoint(self, flag=True):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 609, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 763, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":606
+ /* "PETSc/TS.pyx":760
* CHKERR( TSThetaSetTheta(self.ts, rval) )
*
* def getTheta(self): # <<<<<<<<<<<<<<
@@ -184136,7 +197986,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(struct PyPetscTSObjec
return __pyx_r;
}
-/* "PETSc/TS.pyx":611
+/* "PETSc/TS.pyx":765
* return toReal(rval)
*
* def setThetaEndpoint(self, flag=True): # <<<<<<<<<<<<<<
@@ -184145,9 +197995,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_168getTheta(struct PyPetscTSObjec
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_171setThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_170setThetaEndpoint[] = "TS.setThetaEndpoint(self, flag=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_171setThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_205setThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_204setThetaEndpoint[] = "TS.setThetaEndpoint(self, flag=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_205setThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_flag = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -184161,6 +198011,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_171setThetaEndpoint(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -184173,11 +198024,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_171setThetaEndpoint(PyObject *__p
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setThetaEndpoint") < 0)) __PYX_ERR(37, 611, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setThetaEndpoint") < 0)) __PYX_ERR(37, 765, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -184186,20 +198038,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_171setThetaEndpoint(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setThetaEndpoint", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 611, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setThetaEndpoint", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 765, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setThetaEndpoint", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_170setThetaEndpoint(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_flag);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_204setThetaEndpoint(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_flag);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_170setThetaEndpoint(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_204setThetaEndpoint(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_flag) {
PetscBool __pyx_v_bval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -184207,26 +198059,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_170setThetaEndpoint(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("setThetaEndpoint", 0);
- /* "PETSc/TS.pyx":612
+ /* "PETSc/TS.pyx":766
*
* def setThetaEndpoint(self, flag=True):
* cdef PetscBool bval = flag # <<<<<<<<<<<<<<
* CHKERR( TSThetaSetEndpoint(self.ts, bval) )
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 612, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_flag)); if (unlikely(PyErr_Occurred())) __PYX_ERR(37, 766, __pyx_L1_error)
__pyx_v_bval = __pyx_t_1;
- /* "PETSc/TS.pyx":613
+ /* "PETSc/TS.pyx":767
* def setThetaEndpoint(self, flag=True):
* cdef PetscBool bval = flag
* CHKERR( TSThetaSetEndpoint(self.ts, bval) ) # <<<<<<<<<<<<<<
*
* def getThetaEndpoint(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaSetEndpoint(__pyx_v_self->ts, __pyx_v_bval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 613, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaSetEndpoint(__pyx_v_self->ts, __pyx_v_bval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 767, __pyx_L1_error)
- /* "PETSc/TS.pyx":611
+ /* "PETSc/TS.pyx":765
* return toReal(rval)
*
* def setThetaEndpoint(self, flag=True): # <<<<<<<<<<<<<<
@@ -184246,77 +198098,77 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_170setThetaEndpoint(struct PyPets
return __pyx_r;
}
-/* "PETSc/TS.pyx":615
+/* "PETSc/TS.pyx":769
* CHKERR( TSThetaSetEndpoint(self.ts, bval) )
*
* def getThetaEndpoint(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( TSThetaGetEndpoint(self.ts, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( TSThetaGetEndpoint(self.ts, &flag) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_173getThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_172getThetaEndpoint[] = "TS.getThetaEndpoint(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_173getThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_207getThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_206getThetaEndpoint[] = "TS.getThetaEndpoint(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_207getThetaEndpoint(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getThetaEndpoint (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getThetaEndpoint", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getThetaEndpoint", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_172getThetaEndpoint(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_206getThetaEndpoint(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_172getThetaEndpoint(struct PyPetscTSObject *__pyx_v_self) {
- PetscBool __pyx_v_bval;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_206getThetaEndpoint(struct PyPetscTSObject *__pyx_v_self) {
+ PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getThetaEndpoint", 0);
- /* "PETSc/TS.pyx":616
+ /* "PETSc/TS.pyx":770
*
* def getThetaEndpoint(self):
- * cdef PetscBool bval = PETSC_FALSE # <<<<<<<<<<<<<<
- * CHKERR( TSThetaGetEndpoint(self.ts, &bval) )
- * return <bint> bval
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( TSThetaGetEndpoint(self.ts, &flag) )
+ * return toBool(flag)
*/
- __pyx_v_bval = PETSC_FALSE;
+ __pyx_v_flag = PETSC_FALSE;
- /* "PETSc/TS.pyx":617
+ /* "PETSc/TS.pyx":771
* def getThetaEndpoint(self):
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( TSThetaGetEndpoint(self.ts, &bval) ) # <<<<<<<<<<<<<<
- * return <bint> bval
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( TSThetaGetEndpoint(self.ts, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaGetEndpoint(__pyx_v_self->ts, (&__pyx_v_bval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 617, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSThetaGetEndpoint(__pyx_v_self->ts, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 771, __pyx_L1_error)
- /* "PETSc/TS.pyx":618
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( TSThetaGetEndpoint(self.ts, &bval) )
- * return <bint> bval # <<<<<<<<<<<<<<
+ /* "PETSc/TS.pyx":772
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( TSThetaGetEndpoint(self.ts, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* # --- Alpha ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_bval); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 618, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 772, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":615
+ /* "PETSc/TS.pyx":769
* CHKERR( TSThetaSetEndpoint(self.ts, bval) )
*
* def getThetaEndpoint(self): # <<<<<<<<<<<<<<
- * cdef PetscBool bval = PETSC_FALSE
- * CHKERR( TSThetaGetEndpoint(self.ts, &bval) )
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( TSThetaGetEndpoint(self.ts, &flag) )
*/
/* function exit code */
@@ -184330,7 +198182,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_172getThetaEndpoint(struct PyPets
return __pyx_r;
}
-/* "PETSc/TS.pyx":622
+/* "PETSc/TS.pyx":776
* # --- Alpha ---
*
* def setAlphaRadius(self, radius): # <<<<<<<<<<<<<<
@@ -184339,9 +198191,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_172getThetaEndpoint(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_175setAlphaRadius(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_174setAlphaRadius[] = "TS.setAlphaRadius(self, radius)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_175setAlphaRadius(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_209setAlphaRadius(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_208setAlphaRadius[] = "TS.setAlphaRadius(self, radius)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_209setAlphaRadius(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_radius = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -184354,6 +198206,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_175setAlphaRadius(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -184364,7 +198217,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_175setAlphaRadius(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAlphaRadius") < 0)) __PYX_ERR(37, 622, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAlphaRadius") < 0)) __PYX_ERR(37, 776, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -184375,20 +198228,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_175setAlphaRadius(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setAlphaRadius", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 622, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAlphaRadius", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 776, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setAlphaRadius", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_174setAlphaRadius(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_radius);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_208setAlphaRadius(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_radius);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_174setAlphaRadius(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_radius) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_208setAlphaRadius(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_radius) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -184396,26 +198249,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_174setAlphaRadius(struct PyPetscT
int __pyx_t_2;
__Pyx_RefNannySetupContext("setAlphaRadius", 0);
- /* "PETSc/TS.pyx":623
+ /* "PETSc/TS.pyx":777
*
* def setAlphaRadius(self, radius):
* cdef PetscReal rval = asReal(radius) # <<<<<<<<<<<<<<
* CHKERR( TSAlphaSetRadius(self.ts, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_radius); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 623, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_radius); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 777, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/TS.pyx":624
+ /* "PETSc/TS.pyx":778
* def setAlphaRadius(self, radius):
* cdef PetscReal rval = asReal(radius)
* CHKERR( TSAlphaSetRadius(self.ts, rval) ) # <<<<<<<<<<<<<<
*
* def setAlphaParams(self, alpha_m=None,alpha_f=None, gamma=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaSetRadius(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(37, 624, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaSetRadius(__pyx_v_self->ts, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(37, 778, __pyx_L1_error)
- /* "PETSc/TS.pyx":622
+ /* "PETSc/TS.pyx":776
* # --- Alpha ---
*
* def setAlphaRadius(self, radius): # <<<<<<<<<<<<<<
@@ -184435,7 +198288,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_174setAlphaRadius(struct PyPetscT
return __pyx_r;
}
-/* "PETSc/TS.pyx":626
+/* "PETSc/TS.pyx":780
* CHKERR( TSAlphaSetRadius(self.ts, rval) )
*
* def setAlphaParams(self, alpha_m=None,alpha_f=None, gamma=None): # <<<<<<<<<<<<<<
@@ -184444,9 +198297,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_174setAlphaRadius(struct PyPetscT
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177setAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_176setAlphaParams[] = "TS.setAlphaParams(self, alpha_m=None, alpha_f=None, gamma=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177setAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_211setAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_210setAlphaParams[] = "TS.setAlphaParams(self, alpha_m=None, alpha_f=None, gamma=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_211setAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_alpha_m = 0;
PyObject *__pyx_v_alpha_f = 0;
PyObject *__pyx_v_gamma = 0;
@@ -184464,8 +198317,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177setAlphaParams(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -184476,11 +198332,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177setAlphaParams(PyObject *__pyx
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha_m);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha_f);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gamma);
@@ -184488,13 +198346,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177setAlphaParams(PyObject *__pyx
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAlphaParams") < 0)) __PYX_ERR(37, 626, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAlphaParams") < 0)) __PYX_ERR(37, 780, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -184505,20 +198366,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_177setAlphaParams(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setAlphaParams", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 626, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAlphaParams", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(37, 780, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TS.setAlphaParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_alpha_m, __pyx_v_alpha_f, __pyx_v_gamma);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_210setAlphaParams(((struct PyPetscTSObject *)__pyx_v_self), __pyx_v_alpha_m, __pyx_v_alpha_f, __pyx_v_gamma);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_alpha_m, PyObject *__pyx_v_alpha_f, PyObject *__pyx_v_gamma) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_210setAlphaParams(struct PyPetscTSObject *__pyx_v_self, PyObject *__pyx_v_alpha_m, PyObject *__pyx_v_alpha_f, PyObject *__pyx_v_gamma) {
PetscReal __pyx_v_rval1;
PetscReal __pyx_v_rval2;
PetscReal __pyx_v_rval3;
@@ -184533,7 +198394,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
PetscReal __pyx_t_7;
__Pyx_RefNannySetupContext("setAlphaParams", 0);
- /* "PETSc/TS.pyx":627
+ /* "PETSc/TS.pyx":781
*
* def setAlphaParams(self, alpha_m=None,alpha_f=None, gamma=None):
* cdef PetscReal rval1 = 0, rval2 = 0, rval3 = 0 # <<<<<<<<<<<<<<
@@ -184544,7 +198405,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
__pyx_v_rval2 = 0.0;
__pyx_v_rval3 = 0.0;
- /* "PETSc/TS.pyx":628
+ /* "PETSc/TS.pyx":782
* def setAlphaParams(self, alpha_m=None,alpha_f=None, gamma=None):
* cdef PetscReal rval1 = 0, rval2 = 0, rval3 = 0
* try: CHKERR( TSAlphaGetParams(self.ts, &rval1, &rval2, &rval3) ) # <<<<<<<<<<<<<<
@@ -184559,16 +198420,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
__Pyx_XGOTREF(__pyx_t_2);
__Pyx_XGOTREF(__pyx_t_3);
/*try:*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaGetParams(__pyx_v_self->ts, (&__pyx_v_rval1), (&__pyx_v_rval2), (&__pyx_v_rval3))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 628, __pyx_L3_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaGetParams(__pyx_v_self->ts, (&__pyx_v_rval1), (&__pyx_v_rval2), (&__pyx_v_rval3))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 782, __pyx_L3_error)
}
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- goto __pyx_L10_try_end;
+ goto __pyx_L8_try_end;
__pyx_L3_error:;
- __Pyx_PyThreadState_assign
- /* "PETSc/TS.pyx":629
+ /* "PETSc/TS.pyx":783
* cdef PetscReal rval1 = 0, rval2 = 0, rval3 = 0
* try: CHKERR( TSAlphaGetParams(self.ts, &rval1, &rval2, &rval3) )
* except PetscError: pass # <<<<<<<<<<<<<<
@@ -184583,29 +198443,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
goto __pyx_L5_except_error;
__pyx_L5_except_error:;
- /* "PETSc/TS.pyx":628
+ /* "PETSc/TS.pyx":782
* def setAlphaParams(self, alpha_m=None,alpha_f=None, gamma=None):
* cdef PetscReal rval1 = 0, rval2 = 0, rval3 = 0
* try: CHKERR( TSAlphaGetParams(self.ts, &rval1, &rval2, &rval3) ) # <<<<<<<<<<<<<<
* except PetscError: pass
* if alpha_m is not None: rval1 = asReal(alpha_m)
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
goto __pyx_L1_error;
__pyx_L4_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
- __pyx_L10_try_end:;
+ __pyx_L8_try_end:;
}
- /* "PETSc/TS.pyx":630
+ /* "PETSc/TS.pyx":784
* try: CHKERR( TSAlphaGetParams(self.ts, &rval1, &rval2, &rval3) )
* except PetscError: pass
* if alpha_m is not None: rval1 = asReal(alpha_m) # <<<<<<<<<<<<<<
@@ -184615,11 +198473,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
__pyx_t_5 = (__pyx_v_alpha_m != Py_None);
__pyx_t_6 = (__pyx_t_5 != 0);
if (__pyx_t_6) {
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha_m); if (unlikely(__pyx_t_7 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 630, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha_m); if (unlikely(__pyx_t_7 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 784, __pyx_L1_error)
__pyx_v_rval1 = __pyx_t_7;
}
- /* "PETSc/TS.pyx":631
+ /* "PETSc/TS.pyx":785
* except PetscError: pass
* if alpha_m is not None: rval1 = asReal(alpha_m)
* if alpha_f is not None: rval2 = asReal(alpha_f) # <<<<<<<<<<<<<<
@@ -184629,11 +198487,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
__pyx_t_6 = (__pyx_v_alpha_f != Py_None);
__pyx_t_5 = (__pyx_t_6 != 0);
if (__pyx_t_5) {
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha_f); if (unlikely(__pyx_t_7 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 631, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_alpha_f); if (unlikely(__pyx_t_7 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 785, __pyx_L1_error)
__pyx_v_rval2 = __pyx_t_7;
}
- /* "PETSc/TS.pyx":632
+ /* "PETSc/TS.pyx":786
* if alpha_m is not None: rval1 = asReal(alpha_m)
* if alpha_f is not None: rval2 = asReal(alpha_f)
* if gamma is not None: rval3 = asReal(gamma) # <<<<<<<<<<<<<<
@@ -184643,20 +198501,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
__pyx_t_5 = (__pyx_v_gamma != Py_None);
__pyx_t_6 = (__pyx_t_5 != 0);
if (__pyx_t_6) {
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gamma); if (unlikely(__pyx_t_7 == -1.0 && PyErr_Occurred())) __PYX_ERR(37, 632, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gamma); if (unlikely(__pyx_t_7 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(37, 786, __pyx_L1_error)
__pyx_v_rval3 = __pyx_t_7;
}
- /* "PETSc/TS.pyx":633
+ /* "PETSc/TS.pyx":787
* if alpha_f is not None: rval2 = asReal(alpha_f)
* if gamma is not None: rval3 = asReal(gamma)
* CHKERR( TSAlphaSetParams(self.ts, rval1, rval2, rval3) ) # <<<<<<<<<<<<<<
*
* def getAlphaParams(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaSetParams(__pyx_v_self->ts, __pyx_v_rval1, __pyx_v_rval2, __pyx_v_rval3)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(37, 633, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaSetParams(__pyx_v_self->ts, __pyx_v_rval1, __pyx_v_rval2, __pyx_v_rval3)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(37, 787, __pyx_L1_error)
- /* "PETSc/TS.pyx":626
+ /* "PETSc/TS.pyx":780
* CHKERR( TSAlphaSetRadius(self.ts, rval) )
*
* def setAlphaParams(self, alpha_m=None,alpha_f=None, gamma=None): # <<<<<<<<<<<<<<
@@ -184676,7 +198534,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
return __pyx_r;
}
-/* "PETSc/TS.pyx":635
+/* "PETSc/TS.pyx":789
* CHKERR( TSAlphaSetParams(self.ts, rval1, rval2, rval3) )
*
* def getAlphaParams(self): # <<<<<<<<<<<<<<
@@ -184685,23 +198543,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_176setAlphaParams(struct PyPetscT
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_179getAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2TS_178getAlphaParams[] = "TS.getAlphaParams(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_179getAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_213getAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2TS_212getAlphaParams[] = "TS.getAlphaParams(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2TS_213getAlphaParams(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getAlphaParams (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getAlphaParams", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getAlphaParams", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(((struct PyPetscTSObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2TS_212getAlphaParams(((struct PyPetscTSObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(struct PyPetscTSObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_212getAlphaParams(struct PyPetscTSObject *__pyx_v_self) {
PetscReal __pyx_v_rval1;
PetscReal __pyx_v_rval2;
PetscReal __pyx_v_rval3;
@@ -184714,7 +198572,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(struct PyPetscT
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getAlphaParams", 0);
- /* "PETSc/TS.pyx":636
+ /* "PETSc/TS.pyx":790
*
* def getAlphaParams(self):
* cdef PetscReal rval1 = 0, rval2 = 0, rval3 = 0 # <<<<<<<<<<<<<<
@@ -184725,16 +198583,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(struct PyPetscT
__pyx_v_rval2 = 0.0;
__pyx_v_rval3 = 0.0;
- /* "PETSc/TS.pyx":637
+ /* "PETSc/TS.pyx":791
* def getAlphaParams(self):
* cdef PetscReal rval1 = 0, rval2 = 0, rval3 = 0
* CHKERR( TSAlphaGetParams(self.ts, &rval1, &rval2, &rval3) ) # <<<<<<<<<<<<<<
* return (toReal(rval1), toReal(rval2), toReal(rval3))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaGetParams(__pyx_v_self->ts, (&__pyx_v_rval1), (&__pyx_v_rval2), (&__pyx_v_rval3))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(37, 637, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TSAlphaGetParams(__pyx_v_self->ts, (&__pyx_v_rval1), (&__pyx_v_rval2), (&__pyx_v_rval3))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(37, 791, __pyx_L1_error)
- /* "PETSc/TS.pyx":638
+ /* "PETSc/TS.pyx":792
* cdef PetscReal rval1 = 0, rval2 = 0, rval3 = 0
* CHKERR( TSAlphaGetParams(self.ts, &rval1, &rval2, &rval3) )
* return (toReal(rval1), toReal(rval2), toReal(rval3)) # <<<<<<<<<<<<<<
@@ -184742,13 +198600,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(struct PyPetscT
* # --- application context ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 638, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 792, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 638, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 792, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 638, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval3); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 792, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 638, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(37, 792, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
@@ -184763,7 +198621,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(struct PyPetscT
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":635
+ /* "PETSc/TS.pyx":789
* CHKERR( TSAlphaSetParams(self.ts, rval1, rval2, rval3) )
*
* def getAlphaParams(self): # <<<<<<<<<<<<<<
@@ -184785,7 +198643,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_178getAlphaParams(struct PyPetscT
return __pyx_r;
}
-/* "PETSc/TS.pyx":643
+/* "PETSc/TS.pyx":797
*
* property appctx:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -184814,7 +198672,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6appctx___get__(struct PyPetscTSO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":644
+ /* "PETSc/TS.pyx":798
* property appctx:
* def __get__(self):
* return self.getAppCtx() # <<<<<<<<<<<<<<
@@ -184822,10 +198680,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6appctx___get__(struct PyPetscTSO
* self.setAppCtx(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 644, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 798, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -184835,10 +198693,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6appctx___get__(struct PyPetscTSO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 644, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 798, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 644, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 798, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -184846,7 +198704,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6appctx___get__(struct PyPetscTSO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":643
+ /* "PETSc/TS.pyx":797
*
* property appctx:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -184867,7 +198725,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6appctx___get__(struct PyPetscTSO
return __pyx_r;
}
-/* "PETSc/TS.pyx":645
+/* "PETSc/TS.pyx":799
* def __get__(self):
* return self.getAppCtx()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -184897,17 +198755,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_6appctx_2__set__(struct PyPetscTSObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":646
+ /* "PETSc/TS.pyx":800
* return self.getAppCtx()
* def __set__(self, value):
* self.setAppCtx(value) # <<<<<<<<<<<<<<
*
* # --- discretization space ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 646, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -184917,23 +198775,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_6appctx_2__set__(struct PyPetscTSObject
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 646, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 800, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 646, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 646, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 800, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 800, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 800, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 800, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":645
+ /* "PETSc/TS.pyx":799
* def __get__(self):
* return self.getAppCtx()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -184956,7 +198832,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_6appctx_2__set__(struct PyPetscTSObject
return __pyx_r;
}
-/* "PETSc/TS.pyx":651
+/* "PETSc/TS.pyx":805
*
* property dm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -184985,7 +198861,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2dm___get__(struct PyPetscTSObjec
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":652
+ /* "PETSc/TS.pyx":806
* property dm:
* def __get__(self):
* return self.getDM() # <<<<<<<<<<<<<<
@@ -184993,10 +198869,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2dm___get__(struct PyPetscTSObjec
* self.setDM(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 652, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 806, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185006,10 +198882,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2dm___get__(struct PyPetscTSObjec
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 652, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 806, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 652, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 806, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185017,7 +198893,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2dm___get__(struct PyPetscTSObjec
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":651
+ /* "PETSc/TS.pyx":805
*
* property dm:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185038,7 +198914,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_2dm___get__(struct PyPetscTSObjec
return __pyx_r;
}
-/* "PETSc/TS.pyx":653
+/* "PETSc/TS.pyx":807
* def __get__(self):
* return self.getDM()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185068,17 +198944,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_2dm_2__set__(struct PyPetscTSObject *__
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":654
+ /* "PETSc/TS.pyx":808
* return self.getDM()
* def __set__(self, value):
* self.setDM(value) # <<<<<<<<<<<<<<
*
* # --- xxx ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 654, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDM); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 808, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185088,23 +198964,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_2dm_2__set__(struct PyPetscTSObject *__
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 654, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 808, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 654, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 654, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 808, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 808, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 808, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 808, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":653
+ /* "PETSc/TS.pyx":807
* def __get__(self):
* return self.getDM()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185127,7 +199021,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_2dm_2__set__(struct PyPetscTSObject *__
return __pyx_r;
}
-/* "PETSc/TS.pyx":659
+/* "PETSc/TS.pyx":813
*
* property problem_type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185156,7 +199050,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12problem_type___get__(struct PyP
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":660
+ /* "PETSc/TS.pyx":814
* property problem_type:
* def __get__(self):
* return self.getProblemType() # <<<<<<<<<<<<<<
@@ -185164,10 +199058,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12problem_type___get__(struct PyP
* self.setProblemType(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getProblemType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 660, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getProblemType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185177,10 +199071,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12problem_type___get__(struct PyP
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 660, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 814, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 660, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 814, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185188,7 +199082,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12problem_type___get__(struct PyP
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":659
+ /* "PETSc/TS.pyx":813
*
* property problem_type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185209,7 +199103,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_12problem_type___get__(struct PyP
return __pyx_r;
}
-/* "PETSc/TS.pyx":661
+/* "PETSc/TS.pyx":815
* def __get__(self):
* return self.getProblemType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185239,17 +199133,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_12problem_type_2__set__(struct PyPetscT
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":662
+ /* "PETSc/TS.pyx":816
* return self.getProblemType()
* def __set__(self, value):
* self.setProblemType(value) # <<<<<<<<<<<<<<
*
* property equation_type:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setProblemType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 662, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setProblemType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 816, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185259,23 +199153,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_12problem_type_2__set__(struct PyPetscT
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 662, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 816, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 662, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 662, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 816, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 816, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 816, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 816, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":661
+ /* "PETSc/TS.pyx":815
* def __get__(self):
* return self.getProblemType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185298,7 +199210,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_12problem_type_2__set__(struct PyPetscT
return __pyx_r;
}
-/* "PETSc/TS.pyx":665
+/* "PETSc/TS.pyx":819
*
* property equation_type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185327,7 +199239,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_13equation_type___get__(struct Py
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":666
+ /* "PETSc/TS.pyx":820
* property equation_type:
* def __get__(self):
* return self.getEquationType() # <<<<<<<<<<<<<<
@@ -185335,10 +199247,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_13equation_type___get__(struct Py
* self.setEquationType(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getEquationType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 666, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getEquationType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 820, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185348,10 +199260,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_13equation_type___get__(struct Py
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 666, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 820, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 666, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 820, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185359,7 +199271,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_13equation_type___get__(struct Py
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":665
+ /* "PETSc/TS.pyx":819
*
* property equation_type:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185380,7 +199292,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_13equation_type___get__(struct Py
return __pyx_r;
}
-/* "PETSc/TS.pyx":667
+/* "PETSc/TS.pyx":821
* def __get__(self):
* return self.getEquationType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185410,17 +199322,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_13equation_type_2__set__(struct PyPetsc
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":668
+ /* "PETSc/TS.pyx":822
* return self.getEquationType()
* def __set__(self, value):
* self.setEquationType(value) # <<<<<<<<<<<<<<
*
* property snes:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setEquationType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 668, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setEquationType); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 822, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185430,23 +199342,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_13equation_type_2__set__(struct PyPetsc
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 668, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 822, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 668, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 668, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 822, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 822, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 822, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 822, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":667
+ /* "PETSc/TS.pyx":821
* def __get__(self):
* return self.getEquationType()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185469,7 +199399,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_13equation_type_2__set__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":671
+/* "PETSc/TS.pyx":825
*
* property snes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185498,7 +199428,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4snes___get__(struct PyPetscTSObj
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":672
+ /* "PETSc/TS.pyx":826
* property snes:
* def __get__(self):
* return self.getSNES() # <<<<<<<<<<<<<<
@@ -185506,10 +199436,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4snes___get__(struct PyPetscTSObj
* property ksp:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSNES); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 672, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSNES); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 826, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185519,10 +199449,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4snes___get__(struct PyPetscTSObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 672, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 826, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 672, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 826, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185530,7 +199460,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4snes___get__(struct PyPetscTSObj
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":671
+ /* "PETSc/TS.pyx":825
*
* property snes:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185551,7 +199481,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4snes___get__(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":675
+/* "PETSc/TS.pyx":829
*
* property ksp:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185580,7 +199510,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_3ksp___get__(struct PyPetscTSObje
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":676
+ /* "PETSc/TS.pyx":830
* property ksp:
* def __get__(self):
* return self.getKSP() # <<<<<<<<<<<<<<
@@ -185588,10 +199518,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_3ksp___get__(struct PyPetscTSObje
* property vec_sol:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getKSP); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 676, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getKSP); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 830, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185601,10 +199531,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_3ksp___get__(struct PyPetscTSObje
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 676, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 830, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 676, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 830, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185612,7 +199542,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_3ksp___get__(struct PyPetscTSObje
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":675
+ /* "PETSc/TS.pyx":829
*
* property ksp:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185633,7 +199563,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_3ksp___get__(struct PyPetscTSObje
return __pyx_r;
}
-/* "PETSc/TS.pyx":679
+/* "PETSc/TS.pyx":833
*
* property vec_sol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185662,7 +199592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_7vec_sol___get__(struct PyPetscTS
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":680
+ /* "PETSc/TS.pyx":834
* property vec_sol:
* def __get__(self):
* return self.getSolution() # <<<<<<<<<<<<<<
@@ -185670,10 +199600,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_7vec_sol___get__(struct PyPetscTS
* # --- xxx ---
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 680, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 834, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185683,10 +199613,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_7vec_sol___get__(struct PyPetscTS
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 680, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 834, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 680, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 834, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185694,7 +199624,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_7vec_sol___get__(struct PyPetscTS
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":679
+ /* "PETSc/TS.pyx":833
*
* property vec_sol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185715,7 +199645,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_7vec_sol___get__(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":685
+/* "PETSc/TS.pyx":839
*
* property time:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185744,7 +199674,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4time___get__(struct PyPetscTSObj
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":686
+ /* "PETSc/TS.pyx":840
* property time:
* def __get__(self):
* return self.getTime() # <<<<<<<<<<<<<<
@@ -185752,10 +199682,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4time___get__(struct PyPetscTSObj
* self.setTime(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 686, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 840, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185765,10 +199695,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4time___get__(struct PyPetscTSObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 686, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 840, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 686, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 840, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185776,7 +199706,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4time___get__(struct PyPetscTSObj
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":685
+ /* "PETSc/TS.pyx":839
*
* property time:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185797,7 +199727,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4time___get__(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":687
+/* "PETSc/TS.pyx":841
* def __get__(self):
* return self.getTime()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185827,17 +199757,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_4time_2__set__(struct PyPetscTSObject *
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":688
+ /* "PETSc/TS.pyx":842
* return self.getTime()
* def __set__(self, value):
* self.setTime(value) # <<<<<<<<<<<<<<
*
* property time_step:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 688, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 842, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185847,23 +199777,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_4time_2__set__(struct PyPetscTSObject *
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 688, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 842, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 688, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 688, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 842, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 842, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 842, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 842, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":687
+ /* "PETSc/TS.pyx":841
* def __get__(self):
* return self.getTime()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185886,7 +199834,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_4time_2__set__(struct PyPetscTSObject *
return __pyx_r;
}
-/* "PETSc/TS.pyx":691
+/* "PETSc/TS.pyx":845
*
* property time_step:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185915,7 +199863,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9time_step___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":692
+ /* "PETSc/TS.pyx":846
* property time_step:
* def __get__(self):
* return self.getTimeStep() # <<<<<<<<<<<<<<
@@ -185923,10 +199871,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9time_step___get__(struct PyPetsc
* self.setTimeStep(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTimeStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 692, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTimeStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 846, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -185936,10 +199884,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9time_step___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 692, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 846, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 692, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 846, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -185947,7 +199895,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9time_step___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":691
+ /* "PETSc/TS.pyx":845
*
* property time_step:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -185968,7 +199916,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9time_step___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":693
+/* "PETSc/TS.pyx":847
* def __get__(self):
* return self.getTimeStep()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -185998,17 +199946,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_9time_step_2__set__(struct PyPetscTSObj
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":694
+ /* "PETSc/TS.pyx":848
* return self.getTimeStep()
* def __set__(self, value):
* self.setTimeStep(value) # <<<<<<<<<<<<<<
*
* property step_number:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTimeStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 694, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTimeStep); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 848, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186018,23 +199966,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_9time_step_2__set__(struct PyPetscTSObj
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 694, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 848, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 694, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 694, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 848, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 848, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 848, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 848, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":693
+ /* "PETSc/TS.pyx":847
* def __get__(self):
* return self.getTimeStep()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186057,7 +200023,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_9time_step_2__set__(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":697
+/* "PETSc/TS.pyx":851
*
* property step_number:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186086,7 +200052,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_11step_number___get__(struct PyPe
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":698
+ /* "PETSc/TS.pyx":852
* property step_number:
* def __get__(self):
* return self.getStepNumber() # <<<<<<<<<<<<<<
@@ -186094,10 +200060,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_11step_number___get__(struct PyPe
* self.setStepNumber(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getStepNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 698, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getStepNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 852, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186107,10 +200073,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_11step_number___get__(struct PyPe
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 698, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 852, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 698, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 852, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -186118,7 +200084,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_11step_number___get__(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":697
+ /* "PETSc/TS.pyx":851
*
* property step_number:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186139,7 +200105,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_11step_number___get__(struct PyPe
return __pyx_r;
}
-/* "PETSc/TS.pyx":699
+/* "PETSc/TS.pyx":853
* def __get__(self):
* return self.getStepNumber()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186169,17 +200135,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_11step_number_2__set__(struct PyPetscTS
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":700
+ /* "PETSc/TS.pyx":854
* return self.getStepNumber()
* def __set__(self, value):
* self.setStepNumber(value) # <<<<<<<<<<<<<<
*
* property max_time:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setStepNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 700, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setStepNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 854, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186189,23 +200155,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_11step_number_2__set__(struct PyPetscTS
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 700, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 854, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 700, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 700, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 854, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 854, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 854, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 854, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":699
+ /* "PETSc/TS.pyx":853
* def __get__(self):
* return self.getStepNumber()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186228,7 +200212,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_11step_number_2__set__(struct PyPetscTS
return __pyx_r;
}
-/* "PETSc/TS.pyx":703
+/* "PETSc/TS.pyx":857
*
* property max_time:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186257,7 +200241,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8max_time___get__(struct PyPetscT
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":704
+ /* "PETSc/TS.pyx":858
* property max_time:
* def __get__(self):
* return self.getMaxTime() # <<<<<<<<<<<<<<
@@ -186265,10 +200249,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8max_time___get__(struct PyPetscT
* self.setMaxTime(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getMaxTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 704, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getMaxTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 858, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186278,10 +200262,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8max_time___get__(struct PyPetscT
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 704, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 858, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 704, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 858, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -186289,7 +200273,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8max_time___get__(struct PyPetscT
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":703
+ /* "PETSc/TS.pyx":857
*
* property max_time:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186310,7 +200294,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8max_time___get__(struct PyPetscT
return __pyx_r;
}
-/* "PETSc/TS.pyx":705
+/* "PETSc/TS.pyx":859
* def __get__(self):
* return self.getMaxTime()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186340,17 +200324,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_8max_time_2__set__(struct PyPetscTSObje
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":706
+ /* "PETSc/TS.pyx":860
* return self.getMaxTime()
* def __set__(self, value):
* self.setMaxTime(value) # <<<<<<<<<<<<<<
*
* property max_steps:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setMaxTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 706, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setMaxTime); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186360,23 +200344,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_8max_time_2__set__(struct PyPetscTSObje
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 706, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 860, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 706, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 706, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 860, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 860, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 860, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 860, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":705
+ /* "PETSc/TS.pyx":859
* def __get__(self):
* return self.getMaxTime()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186399,7 +200401,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_8max_time_2__set__(struct PyPetscTSObje
return __pyx_r;
}
-/* "PETSc/TS.pyx":709
+/* "PETSc/TS.pyx":863
*
* property max_steps:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186428,7 +200430,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9max_steps___get__(struct PyPetsc
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":710
+ /* "PETSc/TS.pyx":864
* property max_steps:
* def __get__(self):
* return self.getMaxSteps() # <<<<<<<<<<<<<<
@@ -186436,10 +200438,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9max_steps___get__(struct PyPetsc
* self.setMaxSteps(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getMaxSteps); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 710, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getMaxSteps); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 864, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186449,10 +200451,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9max_steps___get__(struct PyPetsc
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 710, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 864, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 710, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 864, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -186460,7 +200462,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9max_steps___get__(struct PyPetsc
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":709
+ /* "PETSc/TS.pyx":863
*
* property max_steps:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186481,7 +200483,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9max_steps___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":711
+/* "PETSc/TS.pyx":865
* def __get__(self):
* return self.getMaxSteps()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186511,17 +200513,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_9max_steps_2__set__(struct PyPetscTSObj
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":712
+ /* "PETSc/TS.pyx":866
* return self.getMaxSteps()
* def __set__(self, value):
* self.setMaxSteps(value) # <<<<<<<<<<<<<<
*
* # --- convergence ---
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setMaxSteps); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 712, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setMaxSteps); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186531,23 +200533,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_9max_steps_2__set__(struct PyPetscTSObj
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 712, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 866, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 712, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 712, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 866, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 866, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 866, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 866, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":711
+ /* "PETSc/TS.pyx":865
* def __get__(self):
* return self.getMaxSteps()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186570,7 +200590,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_9max_steps_2__set__(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":717
+/* "PETSc/TS.pyx":871
*
* property rtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186599,7 +200619,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4rtol___get__(struct PyPetscTSObj
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":718
+ /* "PETSc/TS.pyx":872
* property rtol:
* def __get__(self):
* return self.getTolerances()[0] # <<<<<<<<<<<<<<
@@ -186607,10 +200627,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4rtol___get__(struct PyPetscTSObj
* self.setTolerances(rtol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 718, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 872, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186620,21 +200640,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4rtol___get__(struct PyPetscTSObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 718, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 872, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 718, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 872, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 718, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 872, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":717
+ /* "PETSc/TS.pyx":871
*
* property rtol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186655,7 +200675,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4rtol___get__(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":719
+/* "PETSc/TS.pyx":873
* def __get__(self):
* return self.getTolerances()[0]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186684,25 +200704,25 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_4rtol_2__set__(struct PyPetscTSObject *
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":720
+ /* "PETSc/TS.pyx":874
* return self.getTolerances()[0]
* def __set__(self, value):
* self.setTolerances(rtol=value) # <<<<<<<<<<<<<<
*
* property atol:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 720, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 874, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 720, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 874, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol, __pyx_v_value) < 0) __PYX_ERR(37, 720, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 720, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rtol, __pyx_v_value) < 0) __PYX_ERR(37, 874, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 874, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/TS.pyx":719
+ /* "PETSc/TS.pyx":873
* def __get__(self):
* return self.getTolerances()[0]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186724,7 +200744,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_4rtol_2__set__(struct PyPetscTSObject *
return __pyx_r;
}
-/* "PETSc/TS.pyx":723
+/* "PETSc/TS.pyx":877
*
* property atol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186753,7 +200773,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4atol___get__(struct PyPetscTSObj
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":724
+ /* "PETSc/TS.pyx":878
* property atol:
* def __get__(self):
* return self.getTolerances()[1] # <<<<<<<<<<<<<<
@@ -186761,10 +200781,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4atol___get__(struct PyPetscTSObj
* self.setTolerances(atol=value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 724, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 878, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186774,21 +200794,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4atol___get__(struct PyPetscTSObj
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 724, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 878, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 724, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 878, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 724, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 878, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":723
+ /* "PETSc/TS.pyx":877
*
* property atol:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186809,7 +200829,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_4atol___get__(struct PyPetscTSObj
return __pyx_r;
}
-/* "PETSc/TS.pyx":725
+/* "PETSc/TS.pyx":879
* def __get__(self):
* return self.getTolerances()[1]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186838,25 +200858,25 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_4atol_2__set__(struct PyPetscTSObject *
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":726
+ /* "PETSc/TS.pyx":880
* return self.getTolerances()[1]
* def __set__(self, value):
* self.setTolerances(atol=value) # <<<<<<<<<<<<<<
*
* property reason:
*/
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 726, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setTolerances); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 880, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 726, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 880, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_atol, __pyx_v_value) < 0) __PYX_ERR(37, 726, __pyx_L1_error)
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 726, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_atol, __pyx_v_value) < 0) __PYX_ERR(37, 880, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(37, 880, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/TS.pyx":725
+ /* "PETSc/TS.pyx":879
* def __get__(self):
* return self.getTolerances()[1]
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186878,7 +200898,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_4atol_2__set__(struct PyPetscTSObject *
return __pyx_r;
}
-/* "PETSc/TS.pyx":729
+/* "PETSc/TS.pyx":883
*
* property reason:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186907,7 +200927,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6reason___get__(struct PyPetscTSO
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":730
+ /* "PETSc/TS.pyx":884
* property reason:
* def __get__(self):
* return self.getConvergedReason() # <<<<<<<<<<<<<<
@@ -186915,10 +200935,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6reason___get__(struct PyPetscTSO
* self.setConvergedReason(value)
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 730, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 884, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -186928,10 +200948,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6reason___get__(struct PyPetscTSO
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 730, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 884, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 730, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 884, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -186939,7 +200959,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6reason___get__(struct PyPetscTSO
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":729
+ /* "PETSc/TS.pyx":883
*
* property reason:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -186960,7 +200980,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_6reason___get__(struct PyPetscTSO
return __pyx_r;
}
-/* "PETSc/TS.pyx":731
+/* "PETSc/TS.pyx":885
* def __get__(self):
* return self.getConvergedReason()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -186990,17 +201010,17 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_6reason_2__set__(struct PyPetscTSObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("__set__", 0);
- /* "PETSc/TS.pyx":732
+ /* "PETSc/TS.pyx":886
* return self.getConvergedReason()
* def __set__(self, value):
* self.setConvergedReason(value) # <<<<<<<<<<<<<<
*
* property iterating:
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 732, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 886, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -187010,23 +201030,41 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_6reason_2__set__(struct PyPetscTSObject
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 732, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 886, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 732, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 732, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 886, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 886, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(37, 886, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 886, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/TS.pyx":731
+ /* "PETSc/TS.pyx":885
* def __get__(self):
* return self.getConvergedReason()
* def __set__(self, value): # <<<<<<<<<<<<<<
@@ -187049,7 +201087,7 @@ static int __pyx_pf_8petsc4py_5PETSc_2TS_6reason_2__set__(struct PyPetscTSObject
return __pyx_r;
}
-/* "PETSc/TS.pyx":735
+/* "PETSc/TS.pyx":889
*
* property iterating:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -187077,7 +201115,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9iterating___get__(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":736
+ /* "PETSc/TS.pyx":890
* property iterating:
* def __get__(self):
* return self.reason == 0 # <<<<<<<<<<<<<<
@@ -187085,16 +201123,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9iterating___get__(struct PyPetsc
* property converged:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 736, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 890, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = __Pyx_PyInt_EqObjC(__pyx_t_1, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 736, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyInt_EqObjC(__pyx_t_1, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 890, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":735
+ /* "PETSc/TS.pyx":889
*
* property iterating:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -187114,7 +201152,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9iterating___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":739
+/* "PETSc/TS.pyx":893
*
* property converged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -187142,7 +201180,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9converged___get__(struct PyPetsc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":740
+ /* "PETSc/TS.pyx":894
* property converged:
* def __get__(self):
* return self.reason > 0 # <<<<<<<<<<<<<<
@@ -187150,15 +201188,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9converged___get__(struct PyPetsc
* property diverged:
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 740, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 894, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 740, __pyx_L1_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 894, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":739
+ /* "PETSc/TS.pyx":893
*
* property converged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -187178,7 +201216,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_9converged___get__(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/TS.pyx":743
+/* "PETSc/TS.pyx":897
*
* property diverged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -187206,7 +201244,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8diverged___get__(struct PyPetscT
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("__get__", 0);
- /* "PETSc/TS.pyx":744
+ /* "PETSc/TS.pyx":898
* property diverged:
* def __get__(self):
* return self.reason < 0 # <<<<<<<<<<<<<<
@@ -187214,15 +201252,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2TS_8diverged___get__(struct PyPetscT
* # -----------------------------------------------------------------------------
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 744, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_reason); if (unlikely(!__pyx_t_1)) __PYX_ERR(37, 898, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 744, __pyx_L1_error)
+ __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(37, 898, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/TS.pyx":743
+ /* "PETSc/TS.pyx":897
*
* property diverged:
* def __get__(self): # <<<<<<<<<<<<<<
@@ -187328,6 +201366,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_3view(PyObject *__pyx_v_self, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -187345,6 +201384,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_3view(PyObject *__pyx_v_self, Py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -187411,7 +201451,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_2view(struct PyPetscTAOObject *_
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoView(__pyx_v_self->tao, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 71, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoView(__pyx_v_self->tao, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 71, __pyx_L1_error)
/* "PETSc/TAO.pyx":66
* self.tao = NULL
@@ -187471,7 +201511,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_4destroy(struct PyPetscTAOObject
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoDestroy((&__pyx_v_self->tao))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 76, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoDestroy((&__pyx_v_self->tao))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 76, __pyx_L1_error)
/* "PETSc/TAO.pyx":77
* """
@@ -187528,6 +201568,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_7create(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -187545,6 +201586,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_7create(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -187601,7 +201643,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_6create(struct PyPetscTAOObject
* PetscCLEAR(self.obj); self.tao = newtao
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoCreate(__pyx_v_ccomm, (&__pyx_v_newtao))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 84, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoCreate(__pyx_v_ccomm, (&__pyx_v_newtao))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 84, __pyx_L1_error)
/* "PETSc/TAO.pyx":85
* cdef PetscTAO newtao = NULL
@@ -187667,6 +201709,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_9setType(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -187738,7 +201781,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_8setType(struct PyPetscTAOObject
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetType(__pyx_v_self->tao, __pyx_v_ctype)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 93, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetType(__pyx_v_self->tao, __pyx_v_ctype)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 93, __pyx_L1_error)
/* "PETSc/TAO.pyx":88
* return self
@@ -187811,7 +201854,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_10getType(struct PyPetscTAOObjec
* return bytes2str(ctype)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetType(__pyx_v_self->tao, (&__pyx_v_ctype))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 99, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetType(__pyx_v_self->tao, (&__pyx_v_ctype))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 99, __pyx_L1_error)
/* "PETSc/TAO.pyx":100
* cdef PetscTAOType ctype = NULL
@@ -187870,6 +201913,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_13setOptionsPrefix(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -187941,7 +201985,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_12setOptionsPrefix(struct PyPets
*
* def getOptionsPrefix(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetOptionsPrefix(__pyx_v_self->tao, __pyx_v_cprefix)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 107, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetOptionsPrefix(__pyx_v_self->tao, __pyx_v_cprefix)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 107, __pyx_L1_error)
/* "PETSc/TAO.pyx":102
* return bytes2str(ctype)
@@ -188014,7 +202058,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_14getOptionsPrefix(struct PyPets
* return bytes2str(prefix)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetOptionsPrefix(__pyx_v_self->tao, (&__pyx_v_prefix))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 113, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetOptionsPrefix(__pyx_v_self->tao, (&__pyx_v_prefix))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 113, __pyx_L1_error)
/* "PETSc/TAO.pyx":114
* cdef const_char *prefix = NULL
@@ -188087,7 +202131,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_16setFromOptions(struct PyPetscT
*
* def setUp(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetFromOptions(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 119, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetFromOptions(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 119, __pyx_L1_error)
/* "PETSc/TAO.pyx":116
* return bytes2str(prefix)
@@ -188147,7 +202191,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_18setUp(struct PyPetscTAOObject
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetUp(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 124, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetUp(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 124, __pyx_L1_error)
/* "PETSc/TAO.pyx":121
* CHKERR( TaoSetFromOptions(self.tao) )
@@ -188193,6 +202237,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_21setInitialTrustRegionRadius(Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -188242,7 +202287,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_20setInitialTrustRegionRadius(st
* CHKERR( TaoSetInitialTrustRegionRadius(self.tao, cradius) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_radius); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(38, 129, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_radius); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(38, 129, __pyx_L1_error)
__pyx_v_cradius = __pyx_t_1;
/* "PETSc/TAO.pyx":130
@@ -188252,7 +202297,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_20setInitialTrustRegionRadius(st
*
* # --------------
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetInitialTrustRegionRadius(__pyx_v_self->tao, __pyx_v_cradius)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 130, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetInitialTrustRegionRadius(__pyx_v_self->tao, __pyx_v_cradius)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 130, __pyx_L1_error)
/* "PETSc/TAO.pyx":128
* #
@@ -188298,6 +202343,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_23setAppCtx(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -188406,7 +202452,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_24getAppCtx(struct PyPetscTAOObj
* def getAppCtx(self):
* return self.get_attr("__appctx__") # <<<<<<<<<<<<<<
*
- * def setInitial(self, Vec x not None):
+ * def setInitial(self, Vec x):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_1 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_TAO *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.get_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__appctx__")); if (unlikely(!__pyx_t_1)) __PYX_ERR(38, 138, __pyx_L1_error)
@@ -188437,7 +202483,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_24getAppCtx(struct PyPetscTAOObj
/* "PETSc/TAO.pyx":140
* return self.get_attr("__appctx__")
*
- * def setInitial(self, Vec x not None): # <<<<<<<<<<<<<<
+ * def setInitial(self, Vec x): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -188458,6 +202504,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_27setInitial(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -188510,12 +202557,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_26setInitial(struct PyPetscTAOOb
*
* def setObjective(self, objective, args=None, kargs=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetInitialVector(__pyx_v_self->tao, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 143, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetInitialVector(__pyx_v_self->tao, __pyx_v_x->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 143, __pyx_L1_error)
/* "PETSc/TAO.pyx":140
* return self.get_attr("__appctx__")
*
- * def setInitial(self, Vec x not None): # <<<<<<<<<<<<<<
+ * def setInitial(self, Vec x): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -188560,8 +202607,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_29setObjective(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -188570,11 +202620,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_29setObjective(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_objective)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -188587,7 +202639,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_29setObjective(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -188631,7 +202685,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_28setObjective(struct PyPetscTAO
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetObjectiveRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Objective, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 148, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetObjectiveRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Objective, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 148, __pyx_L1_error)
/* "PETSc/TAO.pyx":149
* """
@@ -188657,7 +202711,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_28setObjective(struct PyPetscTAO
__pyx_t_3 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 150, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 150, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
@@ -188748,9 +202802,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_31setSeparableObjective(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -188759,16 +202817,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_31setSeparableObjective(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_separable)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_O);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -188781,8 +202842,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_31setSeparableObjective(PyObject
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -188865,7 +202929,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_30setSeparableObjective(struct P
* TAO_SeparableObjective, NULL) )
* CHKERR( PetscObjectCompose(self.obj[0], "@sepobjvec", <PetscObject>Ovec) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetSeparableObjectiveRoutine(__pyx_v_self->tao, __pyx_v_Ovec, __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 159, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetSeparableObjectiveRoutine(__pyx_v_self->tao, __pyx_v_Ovec, __pyx_f_8petsc4py_5PETSc_TAO_SeparableObjective, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 159, __pyx_L1_error)
/* "PETSc/TAO.pyx":161
* CHKERR( TaoSetSeparableObjectiveRoutine(self.tao, Ovec,
@@ -188874,7 +202938,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_30setSeparableObjective(struct P
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectCompose((__pyx_v_self->__pyx_base.obj[0]), ((char *)"@sepobjvec"), ((PetscObject)__pyx_v_Ovec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 161, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectCompose((__pyx_v_self->__pyx_base.obj[0]), ((char *)"@sepobjvec"), ((PetscObject)__pyx_v_Ovec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 161, __pyx_L1_error)
/* "PETSc/TAO.pyx":162
* TAO_SeparableObjective, NULL) )
@@ -188900,7 +202964,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_30setSeparableObjective(struct P
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 163, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 163, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_5);
__pyx_t_5 = 0;
@@ -188981,8 +203045,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_33setGradient(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -188991,11 +203058,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_33setGradient(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gradient)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -189008,7 +203077,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_33setGradient(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -189052,7 +203123,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_32setGradient(struct PyPetscTAOO
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetGradientRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Gradient, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 169, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetGradientRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Gradient, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 169, __pyx_L1_error)
/* "PETSc/TAO.pyx":170
* """
@@ -189078,7 +203149,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_32setGradient(struct PyPetscTAOO
__pyx_t_3 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 171, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 171, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
@@ -189159,8 +203230,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_35setObjectiveGradient(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -189169,11 +203243,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_35setObjectiveGradient(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_objgrad)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -189186,7 +203262,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_35setObjectiveGradient(PyObject
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -189230,7 +203308,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_34setObjectiveGradient(struct Py
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetObjectiveAndGradientRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 177, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetObjectiveAndGradientRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_ObjGrad, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 177, __pyx_L1_error)
/* "PETSc/TAO.pyx":178
* """
@@ -189256,7 +203334,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_34setObjectiveGradient(struct Py
__pyx_t_3 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_3 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 179, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 179, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
@@ -189337,8 +203415,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_37setVariableBounds(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -189347,11 +203428,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_37setVariableBounds(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_varbounds)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -189364,7 +203447,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_37setVariableBounds(PyObject *__
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -189449,7 +203534,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_36setVariableBounds(struct PyPet
*/
if ((likely(PyTuple_CheckExact(__pyx_v_varbounds))) || (PyList_CheckExact(__pyx_v_varbounds))) {
PyObject* sequence = __pyx_v_varbounds;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -189459,7 +203544,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_36setVariableBounds(struct PyPet
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(38, 187, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
@@ -189525,7 +203610,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_36setVariableBounds(struct PyPet
* return
* if isinstance(varbounds, Vec):
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetVariableBounds(__pyx_v_self->tao, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(38, 189, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetVariableBounds(__pyx_v_self->tao, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(38, 189, __pyx_L1_error)
/* "PETSc/TAO.pyx":190
* xl = <Vec?> ol; xu = <Vec?> ou
@@ -189595,7 +203680,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_36setVariableBounds(struct PyPet
* return
* CHKERR( TaoSetVariableBoundsRoutine(self.tao, TAO_VarBounds, NULL) )
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetVariableBounds(__pyx_v_self->tao, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(38, 194, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetVariableBounds(__pyx_v_self->tao, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(38, 194, __pyx_L1_error)
/* "PETSc/TAO.pyx":195
* xl = <Vec?> ol; xu = <Vec?> ou
@@ -189624,7 +203709,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_36setVariableBounds(struct PyPet
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetVariableBoundsRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_VarBounds, NULL)); if (unlikely(__pyx_t_8 == -1)) __PYX_ERR(38, 196, __pyx_L1_error)
+ __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetVariableBoundsRoutine(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_VarBounds, NULL)); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(38, 196, __pyx_L1_error)
/* "PETSc/TAO.pyx":197
* return
@@ -189650,7 +203735,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_36setVariableBounds(struct PyPet
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 198, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_5);
__pyx_t_5 = 0;
@@ -189746,9 +203831,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_39setConstraints(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -189757,16 +203846,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_39setConstraints(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_constraints)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_C);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -189779,8 +203871,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_39setConstraints(PyObject *__pyx
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -189863,7 +203958,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_38setConstraints(struct PyPetscT
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConstraintsRoutine(__pyx_v_self->tao, __pyx_v_Cvec, __pyx_f_8petsc4py_5PETSc_TAO_Constraints, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 207, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConstraintsRoutine(__pyx_v_self->tao, __pyx_v_Cvec, __pyx_f_8petsc4py_5PETSc_TAO_Constraints, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 207, __pyx_L1_error)
/* "PETSc/TAO.pyx":208
* if C is not None: Cvec = C.vec
@@ -189889,7 +203984,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_38setConstraints(struct PyPetscT
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 209, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 209, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_5);
__pyx_t_5 = 0;
@@ -189982,10 +204077,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_41setHessian(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -189994,21 +204094,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_41setHessian(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_hessian)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_H);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -190021,9 +204125,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_41setHessian(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -190132,7 +204240,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_40setHessian(struct PyPetscTAOOb
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetHessianRoutine(__pyx_v_self->tao, __pyx_v_Hmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TAO_Hessian, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 218, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetHessianRoutine(__pyx_v_self->tao, __pyx_v_Hmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TAO_Hessian, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 218, __pyx_L1_error)
/* "PETSc/TAO.pyx":219
* if P is not None: Pmat = P.mat
@@ -190158,7 +204266,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_40setHessian(struct PyPetscTAOOb
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 220, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 220, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_5);
__pyx_t_5 = 0;
@@ -190251,10 +204359,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_43setJacobian(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -190263,21 +204376,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_43setJacobian(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -190290,9 +204407,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_43setJacobian(PyObject *__pyx_v_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -190401,7 +204522,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_42setJacobian(struct PyPetscTAOO
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetJacobianRoutine(__pyx_v_self->tao, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TAO_Jacobian, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 231, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetJacobianRoutine(__pyx_v_self->tao, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_f_8petsc4py_5PETSc_TAO_Jacobian, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 231, __pyx_L1_error)
/* "PETSc/TAO.pyx":232
* if P is not None: Pmat = P.mat
@@ -190427,7 +204548,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_42setJacobian(struct PyPetscTAOO
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 233, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 233, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_5);
__pyx_t_5 = 0;
@@ -190483,14 +204604,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_42setJacobian(struct PyPetscTAOO
/* "PETSc/TAO.pyx":238
* #
*
- * def setStateDesignIS(self, IS state, IS design): # <<<<<<<<<<<<<<
+ * def setStateDesignIS(self, IS state=None, IS design=None): # <<<<<<<<<<<<<<
* """
* """
*/
/* Python wrapper */
static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_45setStateDesignIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_3TAO_44setStateDesignIS[] = "TAO.setStateDesignIS(self, IS state, IS design)\n\n ";
+static char __pyx_doc_8petsc4py_5PETSc_3TAO_44setStateDesignIS[] = "TAO.setStateDesignIS(self, IS state=None, IS design=None)\n\n ";
static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_45setStateDesignIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_state = 0;
struct PyPetscISObject *__pyx_v_design = 0;
@@ -190500,41 +204621,52 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_45setStateDesignIS(PyObject *__p
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_state,&__pyx_n_s_design,0};
PyObject* values[2] = {0,0};
+ values[0] = (PyObject *)((struct PyPetscISObject *)Py_None);
+ values[1] = (PyObject *)((struct PyPetscISObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
- if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_state)) != 0)) kw_args--;
- else goto __pyx_L5_argtuple_error;
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_state);
+ if (value) { values[0] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
case 1:
- if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_design)) != 0)) kw_args--;
- else {
- __Pyx_RaiseArgtupleInvalid("setStateDesignIS", 1, 2, 2, 1); __PYX_ERR(38, 238, __pyx_L3_error)
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_design);
+ if (value) { values[1] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setStateDesignIS") < 0)) __PYX_ERR(38, 238, __pyx_L3_error)
}
- } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
- goto __pyx_L5_argtuple_error;
} else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
}
__pyx_v_state = ((struct PyPetscISObject *)values[0]);
__pyx_v_design = ((struct PyPetscISObject *)values[1]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setStateDesignIS", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(38, 238, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setStateDesignIS", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(38, 238, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.TAO.setStateDesignIS", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -190609,12 +204741,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_44setStateDesignIS(struct PyPets
*
* def setJacobianState(self, jacobian_state, Mat J=None, Mat P=None, Mat I=None,
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetStateDesignIS(__pyx_v_self->tao, __pyx_v_s_is, __pyx_v_d_is)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 244, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetStateDesignIS(__pyx_v_self->tao, __pyx_v_s_is, __pyx_v_d_is)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 244, __pyx_L1_error)
/* "PETSc/TAO.pyx":238
* #
*
- * def setStateDesignIS(self, IS state, IS design): # <<<<<<<<<<<<<<
+ * def setStateDesignIS(self, IS state=None, IS design=None): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -190673,11 +204805,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_47setJacobianState(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -190686,26 +204824,31 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_47setJacobianState(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian_state)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_I);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -190718,10 +204861,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_47setJacobianState(PyObject *__p
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -190856,7 +205004,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_46setJacobianState(struct PyPets
* TAO_JacobianState, NULL) )
* if args is None: args = ()
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetJacobianStateRoutine(__pyx_v_self->tao, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_v_Imat, __pyx_f_8petsc4py_5PETSc_TAO_JacobianState, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 256, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetJacobianStateRoutine(__pyx_v_self->tao, __pyx_v_Jmat, __pyx_v_Pmat, __pyx_v_Imat, __pyx_f_8petsc4py_5PETSc_TAO_JacobianState, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 256, __pyx_L1_error)
/* "PETSc/TAO.pyx":258
* CHKERR( TaoSetJacobianStateRoutine(self.tao, Jmat, Pmat, Imat,
@@ -190882,7 +205030,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_46setJacobianState(struct PyPets
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 259, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_5);
__pyx_t_5 = 0;
@@ -190973,9 +205121,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_49setJacobianDesign(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -190984,16 +205136,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_49setJacobianDesign(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian_design)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -191006,8 +205161,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_49setJacobianDesign(PyObject *__
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -191090,7 +205248,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_48setJacobianDesign(struct PyPet
* TAO_JacobianDesign, NULL) )
* if args is None: args = ()
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetJacobianDesignRoutine(__pyx_v_self->tao, __pyx_v_Jmat, __pyx_f_8petsc4py_5PETSc_TAO_JacobianDesign, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 268, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetJacobianDesignRoutine(__pyx_v_self->tao, __pyx_v_Jmat, __pyx_f_8petsc4py_5PETSc_TAO_JacobianDesign, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 268, __pyx_L1_error)
/* "PETSc/TAO.pyx":270
* CHKERR( TaoSetJacobianDesignRoutine(self.tao, Jmat,
@@ -191116,7 +205274,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_48setJacobianDesign(struct PyPet
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 271, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 271, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_5);
__pyx_t_5 = 0;
@@ -191172,7 +205330,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_48setJacobianDesign(struct PyPet
/* "PETSc/TAO.pyx":276
* # --------------
*
- * def computeObjective(self, Vec x not None): # <<<<<<<<<<<<<<
+ * def computeObjective(self, Vec x): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191193,6 +205351,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_51computeObjective(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -191256,14 +205415,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_50computeObjective(struct PyPets
* return toReal(f)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeObjective(__pyx_v_self->tao, __pyx_v_x->vec, (&__pyx_v_f))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 280, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeObjective(__pyx_v_self->tao, __pyx_v_x->vec, (&__pyx_v_f))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 280, __pyx_L1_error)
/* "PETSc/TAO.pyx":281
* cdef PetscReal f = 0
* CHKERR( TaoComputeObjective(self.tao, x.vec, &f) )
* return toReal(f) # <<<<<<<<<<<<<<
*
- * def computeSeparableObjective(self, Vec x not None, Vec f not None):
+ * def computeSeparableObjective(self, Vec x, Vec f):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_f); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 281, __pyx_L1_error)
@@ -191275,7 +205434,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_50computeObjective(struct PyPets
/* "PETSc/TAO.pyx":276
* # --------------
*
- * def computeObjective(self, Vec x not None): # <<<<<<<<<<<<<<
+ * def computeObjective(self, Vec x): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191294,7 +205453,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_50computeObjective(struct PyPets
/* "PETSc/TAO.pyx":283
* return toReal(f)
*
- * def computeSeparableObjective(self, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeSeparableObjective(self, Vec x, Vec f): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191316,7 +205475,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_53computeSeparableObjective(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -191325,6 +205486,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_53computeSeparableObjective(PyOb
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
else {
@@ -191375,14 +205537,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_52computeSeparableObjective(stru
* """
* CHKERR( TaoComputeSeparableObjective(self.tao, x.vec, f.vec) ) # <<<<<<<<<<<<<<
*
- * def computeGradient(self, Vec x not None, Vec g not None):
+ * def computeGradient(self, Vec x, Vec g):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeSeparableObjective(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_f->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 286, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeSeparableObjective(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_f->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 286, __pyx_L1_error)
/* "PETSc/TAO.pyx":283
* return toReal(f)
*
- * def computeSeparableObjective(self, Vec x not None, Vec f not None): # <<<<<<<<<<<<<<
+ * def computeSeparableObjective(self, Vec x, Vec f): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191402,7 +205564,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_52computeSeparableObjective(stru
/* "PETSc/TAO.pyx":288
* CHKERR( TaoComputeSeparableObjective(self.tao, x.vec, f.vec) )
*
- * def computeGradient(self, Vec x not None, Vec g not None): # <<<<<<<<<<<<<<
+ * def computeGradient(self, Vec x, Vec g): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191424,7 +205586,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_55computeGradient(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -191433,6 +205597,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_55computeGradient(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_g)) != 0)) kw_args--;
else {
@@ -191483,14 +205648,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_54computeGradient(struct PyPetsc
* """
* CHKERR( TaoComputeGradient(self.tao, x.vec, g.vec) ) # <<<<<<<<<<<<<<
*
- * def computeObjectiveGradient(self, Vec x not None, Vec g not None):
+ * def computeObjectiveGradient(self, Vec x, Vec g):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeGradient(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_g->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 291, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeGradient(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_g->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 291, __pyx_L1_error)
/* "PETSc/TAO.pyx":288
* CHKERR( TaoComputeSeparableObjective(self.tao, x.vec, f.vec) )
*
- * def computeGradient(self, Vec x not None, Vec g not None): # <<<<<<<<<<<<<<
+ * def computeGradient(self, Vec x, Vec g): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191510,7 +205675,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_54computeGradient(struct PyPetsc
/* "PETSc/TAO.pyx":293
* CHKERR( TaoComputeGradient(self.tao, x.vec, g.vec) )
*
- * def computeObjectiveGradient(self, Vec x not None, Vec g not None): # <<<<<<<<<<<<<<
+ * def computeObjectiveGradient(self, Vec x, Vec g): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191532,7 +205697,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_57computeObjectiveGradient(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -191541,6 +205708,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_57computeObjectiveGradient(PyObj
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_g)) != 0)) kw_args--;
else {
@@ -191604,14 +205772,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_56computeObjectiveGradient(struc
* return toReal(f)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeObjectiveAndGradient(__pyx_v_self->tao, __pyx_v_x->vec, (&__pyx_v_f), __pyx_v_g->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 297, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeObjectiveAndGradient(__pyx_v_self->tao, __pyx_v_x->vec, (&__pyx_v_f), __pyx_v_g->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 297, __pyx_L1_error)
/* "PETSc/TAO.pyx":298
* cdef PetscReal f = 0
* CHKERR( TaoComputeObjectiveAndGradient(self.tao, x.vec, &f, g.vec) )
* return toReal(f) # <<<<<<<<<<<<<<
*
- * def computeDualVariables(self, Vec xl not None, Vec xu not None):
+ * def computeDualVariables(self, Vec xl, Vec xu):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_f); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 298, __pyx_L1_error)
@@ -191623,7 +205791,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_56computeObjectiveGradient(struc
/* "PETSc/TAO.pyx":293
* CHKERR( TaoComputeGradient(self.tao, x.vec, g.vec) )
*
- * def computeObjectiveGradient(self, Vec x not None, Vec g not None): # <<<<<<<<<<<<<<
+ * def computeObjectiveGradient(self, Vec x, Vec g): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191642,7 +205810,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_56computeObjectiveGradient(struc
/* "PETSc/TAO.pyx":300
* return toReal(f)
*
- * def computeDualVariables(self, Vec xl not None, Vec xu not None): # <<<<<<<<<<<<<<
+ * def computeDualVariables(self, Vec xl, Vec xu): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191664,7 +205832,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_59computeDualVariables(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -191673,6 +205843,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_59computeDualVariables(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xl)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xu)) != 0)) kw_args--;
else {
@@ -191723,14 +205894,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_58computeDualVariables(struct Py
* """
* CHKERR( TaoComputeDualVariables(self.tao, xl.vec, xu.vec) ) # <<<<<<<<<<<<<<
*
- * def computeVariableBounds(self, Vec xl not None, Vec xu not None):
+ * def computeVariableBounds(self, Vec xl, Vec xu):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeDualVariables(__pyx_v_self->tao, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 303, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeDualVariables(__pyx_v_self->tao, __pyx_v_xl->vec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 303, __pyx_L1_error)
/* "PETSc/TAO.pyx":300
* return toReal(f)
*
- * def computeDualVariables(self, Vec xl not None, Vec xu not None): # <<<<<<<<<<<<<<
+ * def computeDualVariables(self, Vec xl, Vec xu): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191750,7 +205921,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_58computeDualVariables(struct Py
/* "PETSc/TAO.pyx":305
* CHKERR( TaoComputeDualVariables(self.tao, xl.vec, xu.vec) )
*
- * def computeVariableBounds(self, Vec xl not None, Vec xu not None): # <<<<<<<<<<<<<<
+ * def computeVariableBounds(self, Vec xl, Vec xu): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -191772,7 +205943,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_61computeVariableBounds(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -191781,6 +205954,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_61computeVariableBounds(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xl)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xu)) != 0)) kw_args--;
else {
@@ -191836,7 +206010,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
* cdef PetscVec Lvec = NULL, Uvec = NULL
* CHKERR( TaoGetVariableBounds(self.tao, &Lvec, &Uvec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeVariableBounds(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 308, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeVariableBounds(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 308, __pyx_L1_error)
/* "PETSc/TAO.pyx":309
* """
@@ -191855,7 +206029,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
* if xl.vec != NULL:
* if Lvec != NULL:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetVariableBounds(__pyx_v_self->tao, (&__pyx_v_Lvec), (&__pyx_v_Uvec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 310, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetVariableBounds(__pyx_v_self->tao, (&__pyx_v_Lvec), (&__pyx_v_Uvec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 310, __pyx_L1_error)
/* "PETSc/TAO.pyx":311
* cdef PetscVec Lvec = NULL, Uvec = NULL
@@ -191884,7 +206058,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
* else:
* CHKERR( VecSet(xl.vec, <PetscScalar>PETSC_NINFINITY) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_Lvec, __pyx_v_xl->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 313, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_Lvec, __pyx_v_xl->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 313, __pyx_L1_error)
/* "PETSc/TAO.pyx":312
* CHKERR( TaoGetVariableBounds(self.tao, &Lvec, &Uvec) )
@@ -191904,7 +206078,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
* if Uvec != NULL:
*/
/*else*/ {
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSet(__pyx_v_xl->vec, ((PetscScalar)PETSC_NINFINITY))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 315, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSet(__pyx_v_xl->vec, ((PetscScalar)PETSC_NINFINITY))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 315, __pyx_L1_error)
}
__pyx_L4:;
@@ -191944,7 +206118,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
* else:
* CHKERR( VecSet(xu.vec, <PetscScalar>PETSC_INFINITY) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_Uvec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 318, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCopy(__pyx_v_Uvec, __pyx_v_xu->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 318, __pyx_L1_error)
/* "PETSc/TAO.pyx":317
* CHKERR( VecSet(xl.vec, <PetscScalar>PETSC_NINFINITY) )
@@ -191961,10 +206135,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
* else:
* CHKERR( VecSet(xu.vec, <PetscScalar>PETSC_INFINITY) ) # <<<<<<<<<<<<<<
*
- * def computeConstraints(self, Vec x not None, Vec c not None):
+ * def computeConstraints(self, Vec x, Vec c):
*/
/*else*/ {
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSet(__pyx_v_xu->vec, ((PetscScalar)PETSC_INFINITY))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 320, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecSet(__pyx_v_xu->vec, ((PetscScalar)PETSC_INFINITY))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 320, __pyx_L1_error)
}
__pyx_L6:;
@@ -191980,7 +206154,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
/* "PETSc/TAO.pyx":305
* CHKERR( TaoComputeDualVariables(self.tao, xl.vec, xu.vec) )
*
- * def computeVariableBounds(self, Vec xl not None, Vec xu not None): # <<<<<<<<<<<<<<
+ * def computeVariableBounds(self, Vec xl, Vec xu): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -192000,7 +206174,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_60computeVariableBounds(struct P
/* "PETSc/TAO.pyx":322
* CHKERR( VecSet(xu.vec, <PetscScalar>PETSC_INFINITY) )
*
- * def computeConstraints(self, Vec x not None, Vec c not None): # <<<<<<<<<<<<<<
+ * def computeConstraints(self, Vec x, Vec c): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -192022,7 +206196,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_63computeConstraints(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192031,6 +206207,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_63computeConstraints(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_c)) != 0)) kw_args--;
else {
@@ -192081,14 +206258,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_62computeConstraints(struct PyPe
* """
* CHKERR( TaoComputeConstraints(self.tao, x.vec, c.vec) ) # <<<<<<<<<<<<<<
*
- * def computeHessian(self, Vec x not None, Mat H not None, Mat P=None):
+ * def computeHessian(self, Vec x, Mat H, Mat P=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeConstraints(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_c->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 325, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeConstraints(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_c->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 325, __pyx_L1_error)
/* "PETSc/TAO.pyx":322
* CHKERR( VecSet(xu.vec, <PetscScalar>PETSC_INFINITY) )
*
- * def computeConstraints(self, Vec x not None, Vec c not None): # <<<<<<<<<<<<<<
+ * def computeConstraints(self, Vec x, Vec c): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -192108,7 +206285,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_62computeConstraints(struct PyPe
/* "PETSc/TAO.pyx":327
* CHKERR( TaoComputeConstraints(self.tao, x.vec, c.vec) )
*
- * def computeHessian(self, Vec x not None, Mat H not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeHessian(self, Vec x, Mat H, Mat P=None): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -192132,8 +206309,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_65computeHessian(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192142,11 +206322,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_65computeHessian(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_H)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("computeHessian", 0, 2, 3, 1); __PYX_ERR(38, 327, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
@@ -192159,6 +206341,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_65computeHessian(PyObject *__pyx
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -192233,14 +206416,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_64computeHessian(struct PyPetscT
* if P is not None: pmat = P.mat
* CHKERR( TaoComputeHessian(self.tao, x.vec, hmat, pmat) ) # <<<<<<<<<<<<<<
*
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None):
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeHessian(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_hmat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 332, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeHessian(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_hmat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 332, __pyx_L1_error)
/* "PETSc/TAO.pyx":327
* CHKERR( TaoComputeConstraints(self.tao, x.vec, c.vec) )
*
- * def computeHessian(self, Vec x not None, Mat H not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeHessian(self, Vec x, Mat H, Mat P=None): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -192260,7 +206443,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_64computeHessian(struct PyPetscT
/* "PETSc/TAO.pyx":334
* CHKERR( TaoComputeHessian(self.tao, x.vec, hmat, pmat) )
*
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -192284,8 +206467,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_67computeJacobian(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192294,11 +206480,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_67computeJacobian(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_J)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("computeJacobian", 0, 2, 3, 1); __PYX_ERR(38, 334, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P);
@@ -192311,6 +206499,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_67computeJacobian(PyObject *__py
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -192387,12 +206576,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_66computeJacobian(struct PyPetsc
*
* # --------------
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeJacobian(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 339, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoComputeJacobian(__pyx_v_self->tao, __pyx_v_x->vec, __pyx_v_jmat, __pyx_v_pmat)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 339, __pyx_L1_error)
/* "PETSc/TAO.pyx":334
* CHKERR( TaoComputeHessian(self.tao, x.vec, hmat, pmat) )
*
- * def computeJacobian(self, Vec x not None, Mat J not None, Mat P=None): # <<<<<<<<<<<<<<
+ * def computeJacobian(self, Vec x, Mat J, Mat P=None): # <<<<<<<<<<<<<<
* """
* """
*/
@@ -192438,8 +206627,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_69setTolerances(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192450,11 +206642,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_69setTolerances(PyObject *__pyx_
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gatol);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_grtol);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gttol);
@@ -192467,8 +206661,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_69setTolerances(PyObject *__pyx_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192525,7 +206722,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_68setTolerances(struct PyPetscTA
__pyx_t_1 = (__pyx_v_gatol != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gatol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(38, 349, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gatol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(38, 349, __pyx_L1_error)
__pyx_v__gatol = __pyx_t_3;
}
@@ -192539,7 +206736,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_68setTolerances(struct PyPetscTA
__pyx_t_2 = (__pyx_v_grtol != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_grtol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(38, 350, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_grtol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(38, 350, __pyx_L1_error)
__pyx_v__grtol = __pyx_t_3;
}
@@ -192553,7 +206750,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_68setTolerances(struct PyPetscTA
__pyx_t_1 = (__pyx_v_gttol != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gttol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(38, 351, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_gttol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(38, 351, __pyx_L1_error)
__pyx_v__gttol = __pyx_t_3;
}
@@ -192564,7 +206761,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_68setTolerances(struct PyPetscTA
*
* def getTolerances(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetTolerances(__pyx_v_self->tao, __pyx_v__gatol, __pyx_v__grtol, __pyx_v__gttol)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 352, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetTolerances(__pyx_v_self->tao, __pyx_v__gatol, __pyx_v__grtol, __pyx_v__gttol)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 352, __pyx_L1_error)
/* "PETSc/TAO.pyx":345
* #
@@ -192642,7 +206839,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_70getTolerances(struct PyPetscTA
* return (toReal(_gatol), toReal(_grtol), toReal(_gttol))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetTolerances(__pyx_v_self->tao, (&__pyx_v__gatol), (&__pyx_v__grtol), (&__pyx_v__gttol))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 358, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetTolerances(__pyx_v_self->tao, (&__pyx_v__gatol), (&__pyx_v__grtol), (&__pyx_v__gttol))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 358, __pyx_L1_error)
/* "PETSc/TAO.pyx":359
* cdef PetscReal _gatol=PETSC_DEFAULT, _grtol=PETSC_DEFAULT, _gttol=PETSC_DEFAULT
@@ -192722,7 +206919,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_73setConstraintTolerances(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192733,6 +206932,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_73setConstraintTolerances(PyObje
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_catol);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_crtol);
@@ -192745,7 +206945,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_73setConstraintTolerances(PyObje
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192799,7 +207001,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_72setConstraintTolerances(struct
__pyx_t_1 = (__pyx_v_catol != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_catol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(38, 365, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_catol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(38, 365, __pyx_L1_error)
__pyx_v__catol = __pyx_t_3;
}
@@ -192813,7 +207015,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_72setConstraintTolerances(struct
__pyx_t_2 = (__pyx_v_crtol != Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_crtol); if (unlikely(__pyx_t_3 == -1.0 && PyErr_Occurred())) __PYX_ERR(38, 366, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_crtol); if (unlikely(__pyx_t_3 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(38, 366, __pyx_L1_error)
__pyx_v__crtol = __pyx_t_3;
}
@@ -192824,7 +207026,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_72setConstraintTolerances(struct
*
* def getConstraintTolerances(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConstraintTolerances(__pyx_v_self->tao, __pyx_v__catol, __pyx_v__crtol)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 367, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConstraintTolerances(__pyx_v_self->tao, __pyx_v__catol, __pyx_v__crtol)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 367, __pyx_L1_error)
/* "PETSc/TAO.pyx":361
* return (toReal(_gatol), toReal(_grtol), toReal(_gttol))
@@ -192899,7 +207101,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_74getConstraintTolerances(struct
* return (toReal(_catol), toReal(_crtol))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetConstraintTolerances(__pyx_v_self->tao, (&__pyx_v__catol), (&__pyx_v__crtol))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 373, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetConstraintTolerances(__pyx_v_self->tao, (&__pyx_v__catol), (&__pyx_v__crtol))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 373, __pyx_L1_error)
/* "PETSc/TAO.pyx":374
* cdef PetscReal _catol=PETSC_DEFAULT, _crtol=PETSC_DEFAULT
@@ -192974,8 +207176,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_77setConvergenceTest(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -192984,11 +207189,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_77setConvergenceTest(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_converged)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -193001,7 +207208,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_77setConvergenceTest(PyObject *_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -193056,7 +207265,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_76setConvergenceTest(struct PyPe
* self.set_attr('__converged__', None)
* else:
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergenceTest(__pyx_v_self->tao, TaoDefaultConvergenceTest, NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(38, 380, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergenceTest(__pyx_v_self->tao, TaoDefaultConvergenceTest, NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(38, 380, __pyx_L1_error)
/* "PETSc/TAO.pyx":381
* if converged is None:
@@ -193104,7 +207313,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_76setConvergenceTest(struct PyPe
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 384, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 384, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_4);
__pyx_t_4 = 0;
@@ -193140,7 +207349,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_76setConvergenceTest(struct PyPe
*
* def getConvergenceTest(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergenceTest(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Converged, NULL)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(38, 386, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergenceTest(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Converged, NULL)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(38, 386, __pyx_L1_error)
}
__pyx_L3:;
@@ -193256,6 +207465,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_81setConvergedReason(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -193315,7 +207525,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_80setConvergedReason(struct PyPe
*
* def getConvergedReason(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergedReason(__pyx_v_self->tao, __pyx_v_creason)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 397, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetConvergedReason(__pyx_v_self->tao, __pyx_v_creason)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 397, __pyx_L1_error)
/* "PETSc/TAO.pyx":393
* return self.get_attr('__converged__')
@@ -193386,7 +207596,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_82getConvergedReason(struct PyPe
* return creason
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetConvergedReason(__pyx_v_self->tao, (&__pyx_v_creason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 403, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetConvergedReason(__pyx_v_self->tao, (&__pyx_v_creason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 403, __pyx_L1_error)
/* "PETSc/TAO.pyx":404
* cdef PetscTAOConvergedReason creason = TAO_CONTINUE_ITERATING
@@ -193449,8 +207659,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_85setMonitor(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -193459,11 +207672,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_85setMonitor(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_monitor)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -193476,7 +207691,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_85setMonitor(PyObject *__pyx_v_s
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -193560,7 +207777,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_84setMonitor(struct PyPetscTAOOb
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetMonitor(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(38, 412, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetMonitor(__pyx_v_self->tao, __pyx_f_8petsc4py_5PETSc_TAO_Monitor, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(38, 412, __pyx_L1_error)
/* "PETSc/TAO.pyx":413
* if monitorlist is None:
@@ -193586,7 +207803,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_84setMonitor(struct PyPetscTAOOb
__pyx_t_2 = (__pyx_v_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(38, 414, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(38, 414, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -193649,7 +207866,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_84setMonitor(struct PyPetscTAOOb
__Pyx_INCREF(__pyx_v_kargs);
__Pyx_GIVEREF(__pyx_v_kargs);
PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
- __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_t_3); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(38, 417, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_monitorlist, __pyx_t_3); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(38, 417, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
}
__pyx_L4:;
@@ -193782,7 +207999,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_88cancelMonitor(struct PyPetscTA
* self.set_attr('__monitor__', None)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoCancelMonitors(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 427, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoCancelMonitors(__pyx_v_self->tao)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 427, __pyx_L1_error)
/* "PETSc/TAO.pyx":428
* """
@@ -193841,6 +208058,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_91solve(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -193858,6 +208076,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_91solve(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -193910,7 +208129,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_90solve(struct PyPetscTAOObject
* CHKERR( TaoSolve(self.tao) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetInitialVector(__pyx_v_self->tao, __pyx_v_x->vec)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(38, 436, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetInitialVector(__pyx_v_self->tao, __pyx_v_x->vec)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(38, 436, __pyx_L1_error)
/* "PETSc/TAO.pyx":435
* """
@@ -193928,7 +208147,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_90solve(struct PyPetscTAOObject
*
* def getSolution(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSolve(__pyx_v_self->tao)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(38, 437, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSolve(__pyx_v_self->tao)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(38, 437, __pyx_L1_error)
/* "PETSc/TAO.pyx":432
* #
@@ -194002,7 +208221,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_92getSolution(struct PyPetscTAOO
* PetscINCREF(vec.obj)
* return vec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionVector(__pyx_v_self->tao, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 443, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionVector(__pyx_v_self->tao, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 443, __pyx_L1_error)
/* "PETSc/TAO.pyx":444
* cdef Vec vec = Vec()
@@ -194097,7 +208316,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_94getGradient(struct PyPetscTAOO
* PetscINCREF(vec.obj)
* return vec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetGradientVector(__pyx_v_self->tao, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 451, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetGradientVector(__pyx_v_self->tao, (&__pyx_v_vec->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 451, __pyx_L1_error)
/* "PETSc/TAO.pyx":452
* cdef Vec vec = Vec()
@@ -194164,6 +208383,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_97setGradientNorm(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -194191,7 +208411,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_97setGradientNorm(PyObject *__py
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "mat", 0))) __PYX_ERR(38, 455, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(38, 455, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3TAO_96setGradientNorm(((struct PyPetscTAOObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -194216,7 +208436,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_96setGradientNorm(struct PyPetsc
*
* def getGradientNorm(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetGradientNorm(__pyx_v_self->tao, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 458, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoSetGradientNorm(__pyx_v_self->tao, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 458, __pyx_L1_error)
/* "PETSc/TAO.pyx":455
* return vec
@@ -194290,7 +208510,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_98getGradientNorm(struct PyPetsc
* PetscINCREF(mat.obj)
* return mat
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetGradientNorm(__pyx_v_self->tao, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 464, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetGradientNorm(__pyx_v_self->tao, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 464, __pyx_L1_error)
/* "PETSc/TAO.pyx":465
* cdef Mat mat = Mat()
@@ -194357,6 +208577,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_101setLMVMH0(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -194384,7 +208605,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_3TAO_101setLMVMH0(PyObject *__pyx_v_s
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 1, "mat", 0))) __PYX_ERR(38, 468, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(38, 468, __pyx_L1_error)
__pyx_r = __pyx_pf_8petsc4py_5PETSc_3TAO_100setLMVMH0(((struct PyPetscTAOObject *)__pyx_v_self), __pyx_v_mat);
/* function exit code */
@@ -194409,7 +208630,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_100setLMVMH0(struct PyPetscTAOOb
*
* def getLMVMH0(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoLMVMSetH0(__pyx_v_self->tao, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 471, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoLMVMSetH0(__pyx_v_self->tao, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 471, __pyx_L1_error)
/* "PETSc/TAO.pyx":468
* return mat
@@ -194483,7 +208704,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_102getLMVMH0(struct PyPetscTAOOb
* PetscINCREF(mat.obj)
* return mat
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoLMVMGetH0(__pyx_v_self->tao, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 477, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoLMVMGetH0(__pyx_v_self->tao, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 477, __pyx_L1_error)
/* "PETSc/TAO.pyx":478
* cdef Mat mat = Mat()
@@ -194578,7 +208799,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_104getLMVMH0KSP(struct PyPetscTA
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoLMVMGetH0KSP(__pyx_v_self->tao, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 485, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoLMVMGetH0KSP(__pyx_v_self->tao, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 485, __pyx_L1_error)
/* "PETSc/TAO.pyx":486
* cdef KSP ksp = KSP()
@@ -194678,7 +208899,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_106getVariableBounds(struct PyPe
* PetscINCREF(xl.obj); PetscINCREF(xu.obj)
* return (xl, xu)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetVariableBounds(__pyx_v_self->tao, (&__pyx_v_xl->vec), (&__pyx_v_xu->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 493, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetVariableBounds(__pyx_v_self->tao, (&__pyx_v_xl->vec), (&__pyx_v_xu->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 493, __pyx_L1_error)
/* "PETSc/TAO.pyx":494
* cdef Vec xl = Vec(), xu = Vec()
@@ -194780,7 +209001,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_108getIterationNumber(struct PyP
* return toInt(its)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, (&__pyx_v_its), NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 501, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, (&__pyx_v_its), NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 501, __pyx_L1_error)
/* "PETSc/TAO.pyx":502
* cdef PetscInt its=0
@@ -194864,7 +209085,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_110getObjectiveValue(struct PyPe
* return toReal(fval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, NULL, (&__pyx_v_fval), NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 508, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, NULL, (&__pyx_v_fval), NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 508, __pyx_L1_error)
/* "PETSc/TAO.pyx":509
* cdef PetscReal fval=0
@@ -194948,7 +209169,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_112getConvergedReason(struct PyP
* return reason
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetConvergedReason(__pyx_v_self->tao, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 517, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetConvergedReason(__pyx_v_self->tao, (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 517, __pyx_L1_error)
/* "PETSc/TAO.pyx":518
* cdef PetscTAOConvergedReason reason = TAO_CONTINUE_ITERATING
@@ -195055,7 +209276,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_114getSolutionNorm(struct PyPets
* return (toReal(fval), toReal(gnorm), toReal(cnorm))
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, NULL, (&__pyx_v_fval), (&__pyx_v_gnorm), (&__pyx_v_cnorm), NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 526, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, NULL, (&__pyx_v_fval), (&__pyx_v_gnorm), (&__pyx_v_cnorm), NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 526, __pyx_L1_error)
/* "PETSc/TAO.pyx":527
* cdef PetscReal fval=0
@@ -195189,7 +209410,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_116getSolutionStatus(struct PyPe
* &fval, &gnorm, &cnorm, &xdiff,
* &reason) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, (&__pyx_v_its), (&__pyx_v_fval), (&__pyx_v_gnorm), (&__pyx_v_cnorm), (&__pyx_v_xdiff), (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(38, 535, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetSolutionStatus(__pyx_v_self->tao, (&__pyx_v_its), (&__pyx_v_fval), (&__pyx_v_gnorm), (&__pyx_v_cnorm), (&__pyx_v_xdiff), (&__pyx_v_reason))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(38, 535, __pyx_L1_error)
/* "PETSc/TAO.pyx":538
* &fval, &gnorm, &cnorm, &xdiff,
@@ -195336,7 +209557,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_118getKSP(struct PyPetscTAOObjec
* PetscINCREF(ksp.obj)
* return ksp
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetKSP(__pyx_v_self->tao, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(38, 546, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(TaoGetKSP(__pyx_v_self->tao, (&__pyx_v_ksp->ksp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(38, 546, __pyx_L1_error)
/* "PETSc/TAO.pyx":547
* cdef KSP ksp = KSP()
@@ -195419,7 +209640,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_6appctx___get__(struct PyPetscTA
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -195501,7 +209722,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_6appctx_2__set__(struct PyPetscTAOObje
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setAppCtx); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -195514,15 +209735,33 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_6appctx_2__set__(struct PyPetscTAOObje
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(38, 556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 556, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_value);
- __Pyx_GIVEREF(__pyx_v_value);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(38, 556, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(38, 556, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_value};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(38, 556, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 556, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_value);
+ __Pyx_GIVEREF(__pyx_v_value);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_value);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(38, 556, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -195590,7 +209829,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_3ksp___get__(struct PyPetscTAOOb
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getKSP); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -195672,7 +209911,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_4ftol___get__(struct PyPetscTAOO
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getFunctionTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 568, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -195776,7 +210015,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_4ftol_2__set__(struct PyPetscTAOObject
*/
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setFunctionTolerances); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 571, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 571, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 571, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(38, 571, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
@@ -195849,7 +210088,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_4ftol_2__set__(struct PyPetscTAOObject
* property gtol:
*/
/*else*/ {
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__60, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 575, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__63, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 575, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -195919,7 +210158,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_4gtol___get__(struct PyPetscTAOO
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getGradientTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 579, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196023,7 +210262,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_4gtol_2__set__(struct PyPetscTAOObject
*/
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getGradientTolerances); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 582, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(38, 582, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
@@ -196096,7 +210335,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_4gtol_2__set__(struct PyPetscTAOObject
* property ctol:
*/
/*else*/ {
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__61, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 586, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__64, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 586, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -196166,7 +210405,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_4ctol___get__(struct PyPetscTAOO
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConstraintTolerances); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 590, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196270,7 +210509,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_4ctol_2__set__(struct PyPetscTAOObject
*/
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConstraintTolerances); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 593, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 593, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_5)) __PYX_ERR(38, 593, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(38, 593, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
@@ -196343,7 +210582,7 @@ static int __pyx_pf_8petsc4py_5PETSc_3TAO_4ctol_2__set__(struct PyPetscTAOObject
* # --- iteration ---
*/
/*else*/ {
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__62, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 597, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__65, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(38, 597, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_Raise(__pyx_t_4, 0, 0, 0);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
@@ -196413,7 +210652,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_3its___get__(struct PyPetscTAOOb
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getIterationNumber); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 603, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196495,7 +210734,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_5gnorm___get__(struct PyPetscTAO
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolutionNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 607, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196580,7 +210819,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_5cnorm___get__(struct PyPetscTAO
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolutionNorm); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196665,7 +210904,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_8solution___get__(struct PyPetsc
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSolution); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 615, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196747,7 +210986,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_9objective___get__(struct PyPets
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getObjectiveValue); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 619, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196829,7 +211068,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_8function___get__(struct PyPetsc
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getFunctionValue); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 623, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196911,7 +211150,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_8gradient___get__(struct PyPetsc
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getGradient); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 627, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -196993,7 +211232,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_3TAO_6reason___get__(struct PyPetscTA
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getConvergedReason); if (unlikely(!__pyx_t_2)) __PYX_ERR(38, 633, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -197314,6 +211553,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_3view(PyObject *__pyx_v_self, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -197331,6 +211571,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_3view(PyObject *__pyx_v_self, PyO
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -197397,7 +211638,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_2view(struct PyPetscAOObject *__p
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOView(__pyx_v_self->ao, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(39, 22, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOView(__pyx_v_self->ao, __pyx_v_cviewer)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(39, 22, __pyx_L1_error)
/* "PETSc/AO.pyx":19
* self.ao = NULL
@@ -197457,7 +211698,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_4destroy(struct PyPetscAOObject *
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(AODestroy((&__pyx_v_self->ao))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(39, 25, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(AODestroy((&__pyx_v_self->ao))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(39, 25, __pyx_L1_error)
/* "PETSc/AO.pyx":26
* def destroy(self):
@@ -197517,8 +211758,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_7createBasic(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -197527,11 +211771,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_7createBasic(PyObject *__pyx_v_se
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_app)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_petsc);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -197544,7 +211790,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_7createBasic(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -197698,7 +211946,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_6createBasic(struct PyPetscAOObje
* else:
* app = iarray_i(app, &napp, &idxapp)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateBasicIS(__pyx_v_isapp, __pyx_v_ispetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(39, 38, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateBasicIS(__pyx_v_isapp, __pyx_v_ispetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(39, 38, __pyx_L1_error)
/* "PETSc/AO.pyx":34
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
@@ -197778,7 +212026,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_6createBasic(struct PyPetscAOObje
* PetscCLEAR(self.obj); self.ao = newao
* return self
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateBasic(__pyx_v_ccomm, __pyx_v_napp, __pyx_v_idxapp, __pyx_v_idxpetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(39, 44, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateBasic(__pyx_v_ccomm, __pyx_v_napp, __pyx_v_idxapp, __pyx_v_idxpetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(39, 44, __pyx_L1_error)
}
__pyx_L3:;
@@ -197853,8 +212101,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_9createMemoryScalable(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -197863,11 +212114,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_9createMemoryScalable(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_app)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_petsc);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -197880,7 +212133,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_9createMemoryScalable(PyObject *_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -198034,7 +212289,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_8createMemoryScalable(struct PyPe
* else:
* app = iarray_i(app, &napp, &idxapp)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMemoryScalableIS(__pyx_v_isapp, __pyx_v_ispetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(39, 58, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMemoryScalableIS(__pyx_v_isapp, __pyx_v_ispetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(39, 58, __pyx_L1_error)
/* "PETSc/AO.pyx":54
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
@@ -198114,7 +212369,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_8createMemoryScalable(struct PyPe
* PetscCLEAR(self.obj); self.ao = newao
* return self
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMemoryScalable(__pyx_v_ccomm, __pyx_v_napp, __pyx_v_idxapp, __pyx_v_idxpetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(39, 64, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMemoryScalable(__pyx_v_ccomm, __pyx_v_napp, __pyx_v_idxapp, __pyx_v_idxpetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(39, 64, __pyx_L1_error)
}
__pyx_L3:;
@@ -198189,8 +212444,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_11createMapping(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -198199,11 +212457,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_11createMapping(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_app)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_petsc);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -198216,7 +212476,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_11createMapping(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -198370,7 +212632,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_10createMapping(struct PyPetscAOO
* else:
* app = iarray_i(app, &napp, &idxapp)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMappingIS(__pyx_v_isapp, __pyx_v_ispetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(39, 78, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMappingIS(__pyx_v_isapp, __pyx_v_ispetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(39, 78, __pyx_L1_error)
/* "PETSc/AO.pyx":74
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
@@ -198450,7 +212712,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_10createMapping(struct PyPetscAOO
* PetscCLEAR(self.obj); self.ao = newao
* return self
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMapping(__pyx_v_ccomm, __pyx_v_napp, __pyx_v_idxapp, __pyx_v_idxpetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(39, 84, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOCreateMapping(__pyx_v_ccomm, __pyx_v_napp, __pyx_v_idxapp, __pyx_v_idxpetsc, (&__pyx_v_newao))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(39, 84, __pyx_L1_error)
}
__pyx_L3:;
@@ -198546,7 +212808,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_12getType(struct PyPetscAOObject
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOGetType(__pyx_v_self->ao, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(39, 90, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOGetType(__pyx_v_self->ao, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(39, 90, __pyx_L1_error)
/* "PETSc/AO.pyx":91
* cdef PetscAOType cval = NULL
@@ -198605,6 +212867,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_15app2petsc(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -198700,7 +212963,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_14app2petsc(struct PyPetscAOObjec
* else:
* indices = oarray_i(indices, &nidx, &idx)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOApplicationToPetscIS(__pyx_v_self->ao, __pyx_v_iset)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(39, 98, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOApplicationToPetscIS(__pyx_v_self->ao, __pyx_v_iset)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(39, 98, __pyx_L1_error)
/* "PETSc/AO.pyx":96
* cdef PetscIS iset = NULL
@@ -198732,7 +212995,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_14app2petsc(struct PyPetscAOObjec
* return indices
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOApplicationToPetsc(__pyx_v_self->ao, __pyx_v_nidx, __pyx_v_idx)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(39, 101, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOApplicationToPetsc(__pyx_v_self->ao, __pyx_v_nidx, __pyx_v_idx)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(39, 101, __pyx_L1_error)
}
__pyx_L3:;
@@ -198792,6 +213055,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2AO_17petsc2app(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -198887,7 +213151,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_16petsc2app(struct PyPetscAOObjec
* else:
* indices = oarray_i(indices, &nidx, &idx)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOPetscToApplicationIS(__pyx_v_self->ao, __pyx_v_iset)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(39, 109, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOPetscToApplicationIS(__pyx_v_self->ao, __pyx_v_iset)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(39, 109, __pyx_L1_error)
/* "PETSc/AO.pyx":107
* cdef PetscIS iset = NULL
@@ -198919,7 +213183,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2AO_16petsc2app(struct PyPetscAOObjec
* return indices
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOPetscToApplication(__pyx_v_self->ao, __pyx_v_nidx, __pyx_v_idx)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(39, 112, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(AOPetscToApplication(__pyx_v_self->ao, __pyx_v_nidx, __pyx_v_idx)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(39, 112, __pyx_L1_error)
}
__pyx_L3:;
@@ -199041,6 +213305,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_3view(PyObject *__pyx_v_self, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -199058,6 +213323,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_3view(PyObject *__pyx_v_self, PyO
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -199124,7 +213390,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_2view(struct PyPetscDMObject *__p
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMView(__pyx_v_self->dm, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(40, 38, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMView(__pyx_v_self->dm, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 38, __pyx_L1_error)
/* "PETSc/DM.pyx":35
* self.dm = NULL
@@ -199184,7 +213450,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_4destroy(struct PyPetscDMObject *
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDestroy((&__pyx_v_self->dm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 41, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDestroy((&__pyx_v_self->dm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 41, __pyx_L1_error)
/* "PETSc/DM.pyx":42
* def destroy(self):
@@ -199241,6 +213507,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_7create(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -199258,6 +213525,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_7create(PyObject *__pyx_v_self, P
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -199314,7 +213582,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_6create(struct PyPetscDMObject *_
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 47, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 47, __pyx_L1_error)
/* "PETSc/DM.pyx":48
* cdef PetscDM newdm = NULL
@@ -199400,7 +213668,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_8clone(struct PyPetscDMObject *__
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -199428,7 +213696,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_8clone(struct PyPetscDMObject *__
* return dm
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMClone(__pyx_v_self->dm, (&__pyx_v_dm->dm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(40, 53, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMClone(__pyx_v_self->dm, (&__pyx_v_dm->dm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 53, __pyx_L1_error)
/* "PETSc/DM.pyx":54
* cdef DM dm = type(self)()
@@ -199488,6 +213756,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_11setType(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -199559,7 +213828,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_10setType(struct PyPetscDMObject
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetType(__pyx_v_self->dm, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 59, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetType(__pyx_v_self->dm, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 59, __pyx_L1_error)
/* "PETSc/DM.pyx":56
* return dm
@@ -199632,7 +213901,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_12getType(struct PyPetscDMObject
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetType(__pyx_v_self->dm, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 63, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetType(__pyx_v_self->dm, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 63, __pyx_L1_error)
/* "PETSc/DM.pyx":64
* cdef PetscDMType cval = NULL
@@ -199716,7 +213985,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_14getDimension(struct PyPetscDMOb
* return toInt(dim)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDimension(__pyx_v_self->dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 68, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDimension(__pyx_v_self->dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 68, __pyx_L1_error)
/* "PETSc/DM.pyx":69
* cdef PetscInt dim = 0
@@ -199775,6 +214044,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_17setDimension(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -199824,7 +214094,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_16setDimension(struct PyPetscDMOb
* CHKERR( DMSetDimension(self.dm, cdim) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 72, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 72, __pyx_L1_error)
__pyx_v_cdim = __pyx_t_1;
/* "PETSc/DM.pyx":73
@@ -199834,7 +214104,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_16setDimension(struct PyPetscDMOb
*
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDimension(__pyx_v_self->dm, __pyx_v_cdim)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 73, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDimension(__pyx_v_self->dm, __pyx_v_cdim)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 73, __pyx_L1_error)
/* "PETSc/DM.pyx":71
* return toInt(dim)
@@ -199880,6 +214150,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_19setOptionsPrefix(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -199951,7 +214222,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_18setOptionsPrefix(struct PyPetsc
*
* def setFromOptions(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetOptionsPrefix(__pyx_v_self->dm, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 79, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetOptionsPrefix(__pyx_v_self->dm, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 79, __pyx_L1_error)
/* "PETSc/DM.pyx":76
*
@@ -200013,7 +214284,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_20setFromOptions(struct PyPetscDM
*
* def setUp(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetFromOptions(__pyx_v_self->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 82, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetFromOptions(__pyx_v_self->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 82, __pyx_L1_error)
/* "PETSc/DM.pyx":81
* CHKERR( DMSetOptionsPrefix(self.dm, cval) )
@@ -200073,7 +214344,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_22setUp(struct PyPetscDMObject *_
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetUp(__pyx_v_self->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 85, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetUp(__pyx_v_self->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 85, __pyx_L1_error)
/* "PETSc/DM.pyx":86
* def setUp(self):
@@ -200129,6 +214400,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_25setAppCtx(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -200314,7 +214586,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_28getBlockSize(struct PyPetscDMOb
* return toInt(bs)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetBlockSize(__pyx_v_self->dm, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 100, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetBlockSize(__pyx_v_self->dm, (&__pyx_v_bs))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 100, __pyx_L1_error)
/* "PETSc/DM.pyx":101
* cdef PetscInt bs = 1
@@ -200373,6 +214645,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_31setVecType(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -200444,7 +214717,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_30setVecType(struct PyPetscDMObje
*
* def createGlobalVec(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetVecType(__pyx_v_self->dm, __pyx_v_vtype)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 106, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetVecType(__pyx_v_self->dm, __pyx_v_vtype)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 106, __pyx_L1_error)
/* "PETSc/DM.pyx":103
* return toInt(bs)
@@ -200520,7 +214793,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_32createGlobalVec(struct PyPetscD
* return vg
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateGlobalVector(__pyx_v_self->dm, (&__pyx_v_vg->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 110, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateGlobalVector(__pyx_v_self->dm, (&__pyx_v_vg->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 110, __pyx_L1_error)
/* "PETSc/DM.pyx":111
* cdef Vec vg = Vec()
@@ -200606,14 +214879,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_34createLocalVec(struct PyPetscDM
* return vl
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateLocalVector(__pyx_v_self->dm, (&__pyx_v_vl->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 115, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateLocalVector(__pyx_v_self->dm, (&__pyx_v_vl->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 115, __pyx_L1_error)
/* "PETSc/DM.pyx":116
* cdef Vec vl = Vec()
* CHKERR( DMCreateLocalVector(self.dm, &vl.vec) )
* return vl # <<<<<<<<<<<<<<
*
- * def globalToLocal(self, Vec vg not None, Vec vl not None, addv=None):
+ * def getGlobalVec(self):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_vl));
@@ -200643,15 +214916,421 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_34createLocalVec(struct PyPetscDM
/* "PETSc/DM.pyx":118
* return vl
*
- * def globalToLocal(self, Vec vg not None, Vec vl not None, addv=None): # <<<<<<<<<<<<<<
+ * def getGlobalVec(self): # <<<<<<<<<<<<<<
+ * cdef Vec vg = Vec()
+ * CHKERR( DMGetGlobalVector(self.dm, &vg.vec) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37getGlobalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_36getGlobalVec[] = "DM.getGlobalVec(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37getGlobalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getGlobalVec (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getGlobalVec", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getGlobalVec", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_36getGlobalVec(((struct PyPetscDMObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_36getGlobalVec(struct PyPetscDMObject *__pyx_v_self) {
+ struct PyPetscVecObject *__pyx_v_vg = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getGlobalVec", 0);
+
+ /* "PETSc/DM.pyx":119
+ *
+ * def getGlobalVec(self):
+ * cdef Vec vg = Vec() # <<<<<<<<<<<<<<
+ * CHKERR( DMGetGlobalVector(self.dm, &vg.vec) )
+ * PetscINCREF(vg.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 119, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_vg = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/DM.pyx":120
+ * def getGlobalVec(self):
+ * cdef Vec vg = Vec()
+ * CHKERR( DMGetGlobalVector(self.dm, &vg.vec) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(vg.obj)
+ * return vg
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetGlobalVector(__pyx_v_self->dm, (&__pyx_v_vg->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 120, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":121
+ * cdef Vec vg = Vec()
+ * CHKERR( DMGetGlobalVector(self.dm, &vg.vec) )
+ * PetscINCREF(vg.obj) # <<<<<<<<<<<<<<
+ * return vg
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vg->__pyx_base.obj);
+
+ /* "PETSc/DM.pyx":122
+ * CHKERR( DMGetGlobalVector(self.dm, &vg.vec) )
+ * PetscINCREF(vg.obj)
+ * return vg # <<<<<<<<<<<<<<
+ *
+ * def restoreGlobalVec(self, Vec vg):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_vg));
+ __pyx_r = ((PyObject *)__pyx_v_vg);
+ goto __pyx_L0;
+
+ /* "PETSc/DM.pyx":118
+ * return vl
+ *
+ * def getGlobalVec(self): # <<<<<<<<<<<<<<
+ * cdef Vec vg = Vec()
+ * CHKERR( DMGetGlobalVector(self.dm, &vg.vec) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.getGlobalVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_vg);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":124
+ * return vg
+ *
+ * def restoreGlobalVec(self, Vec vg): # <<<<<<<<<<<<<<
+ * CHKERR( PetscObjectDereference(<PetscObject>vg.vec) )
+ * CHKERR( DMRestoreGlobalVector(self.dm, &vg.vec) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39restoreGlobalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_38restoreGlobalVec[] = "DM.restoreGlobalVec(self, Vec vg)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39restoreGlobalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_vg = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("restoreGlobalVec (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vg,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vg)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "restoreGlobalVec") < 0)) __PYX_ERR(40, 124, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_vg = ((struct PyPetscVecObject *)values[0]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("restoreGlobalVec", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 124, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.restoreGlobalVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vg), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vg", 0))) __PYX_ERR(40, 124, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_38restoreGlobalVec(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vg);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_38restoreGlobalVec(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vg) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("restoreGlobalVec", 0);
+
+ /* "PETSc/DM.pyx":125
+ *
+ * def restoreGlobalVec(self, Vec vg):
+ * CHKERR( PetscObjectDereference(<PetscObject>vg.vec) ) # <<<<<<<<<<<<<<
+ * CHKERR( DMRestoreGlobalVector(self.dm, &vg.vec) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectDereference(((PetscObject)__pyx_v_vg->vec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 125, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":126
+ * def restoreGlobalVec(self, Vec vg):
+ * CHKERR( PetscObjectDereference(<PetscObject>vg.vec) )
+ * CHKERR( DMRestoreGlobalVector(self.dm, &vg.vec) ) # <<<<<<<<<<<<<<
+ *
+ * def getLocalVec(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRestoreGlobalVector(__pyx_v_self->dm, (&__pyx_v_vg->vec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 126, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":124
+ * return vg
+ *
+ * def restoreGlobalVec(self, Vec vg): # <<<<<<<<<<<<<<
+ * CHKERR( PetscObjectDereference(<PetscObject>vg.vec) )
+ * CHKERR( DMRestoreGlobalVector(self.dm, &vg.vec) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.restoreGlobalVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":128
+ * CHKERR( DMRestoreGlobalVector(self.dm, &vg.vec) )
+ *
+ * def getLocalVec(self): # <<<<<<<<<<<<<<
+ * cdef Vec vl = Vec()
+ * CHKERR( DMGetLocalVector(self.dm, &vl.vec) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41getLocalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_40getLocalVec[] = "DM.getLocalVec(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41getLocalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getLocalVec (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getLocalVec", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getLocalVec", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_40getLocalVec(((struct PyPetscDMObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_40getLocalVec(struct PyPetscDMObject *__pyx_v_self) {
+ struct PyPetscVecObject *__pyx_v_vl = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("getLocalVec", 0);
+
+ /* "PETSc/DM.pyx":129
+ *
+ * def getLocalVec(self):
+ * cdef Vec vl = Vec() # <<<<<<<<<<<<<<
+ * CHKERR( DMGetLocalVector(self.dm, &vl.vec) )
+ * PetscINCREF(vl.obj)
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 129, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_vl = ((struct PyPetscVecObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/DM.pyx":130
+ * def getLocalVec(self):
+ * cdef Vec vl = Vec()
+ * CHKERR( DMGetLocalVector(self.dm, &vl.vec) ) # <<<<<<<<<<<<<<
+ * PetscINCREF(vl.obj)
+ * return vl
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLocalVector(__pyx_v_self->dm, (&__pyx_v_vl->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 130, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":131
+ * cdef Vec vl = Vec()
+ * CHKERR( DMGetLocalVector(self.dm, &vl.vec) )
+ * PetscINCREF(vl.obj) # <<<<<<<<<<<<<<
+ * return vl
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_vl->__pyx_base.obj);
+
+ /* "PETSc/DM.pyx":132
+ * CHKERR( DMGetLocalVector(self.dm, &vl.vec) )
+ * PetscINCREF(vl.obj)
+ * return vl # <<<<<<<<<<<<<<
+ *
+ * def restoreLocalVec(self, Vec vl):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_vl));
+ __pyx_r = ((PyObject *)__pyx_v_vl);
+ goto __pyx_L0;
+
+ /* "PETSc/DM.pyx":128
+ * CHKERR( DMRestoreGlobalVector(self.dm, &vg.vec) )
+ *
+ * def getLocalVec(self): # <<<<<<<<<<<<<<
+ * cdef Vec vl = Vec()
+ * CHKERR( DMGetLocalVector(self.dm, &vl.vec) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.getLocalVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_vl);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":134
+ * return vl
+ *
+ * def restoreLocalVec(self, Vec vl): # <<<<<<<<<<<<<<
+ * CHKERR( PetscObjectDereference(<PetscObject>vl.vec) )
+ * CHKERR( DMRestoreLocalVector(self.dm, &vl.vec) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_43restoreLocalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_42restoreLocalVec[] = "DM.restoreLocalVec(self, Vec vl)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_43restoreLocalVec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_vl = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("restoreLocalVec (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_vl,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vl)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "restoreLocalVec") < 0)) __PYX_ERR(40, 134, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_vl = ((struct PyPetscVecObject *)values[0]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("restoreLocalVec", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 134, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.restoreLocalVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vl", 0))) __PYX_ERR(40, 134, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_42restoreLocalVec(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vl);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42restoreLocalVec(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("restoreLocalVec", 0);
+
+ /* "PETSc/DM.pyx":135
+ *
+ * def restoreLocalVec(self, Vec vl):
+ * CHKERR( PetscObjectDereference(<PetscObject>vl.vec) ) # <<<<<<<<<<<<<<
+ * CHKERR( DMRestoreLocalVector(self.dm, &vl.vec) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectDereference(((PetscObject)__pyx_v_vl->vec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 135, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":136
+ * def restoreLocalVec(self, Vec vl):
+ * CHKERR( PetscObjectDereference(<PetscObject>vl.vec) )
+ * CHKERR( DMRestoreLocalVector(self.dm, &vl.vec) ) # <<<<<<<<<<<<<<
+ *
+ * def globalToLocal(self, Vec vg, Vec vl, addv=None):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRestoreLocalVector(__pyx_v_self->dm, (&__pyx_v_vl->vec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 136, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":134
+ * return vl
+ *
+ * def restoreLocalVec(self, Vec vl): # <<<<<<<<<<<<<<
+ * CHKERR( PetscObjectDereference(<PetscObject>vl.vec) )
+ * CHKERR( DMRestoreLocalVector(self.dm, &vl.vec) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.restoreLocalVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":138
+ * CHKERR( DMRestoreLocalVector(self.dm, &vl.vec) )
+ *
+ * def globalToLocal(self, Vec vg, Vec vl, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMGlobalToLocalBegin(self.dm, vg.vec, im, vl.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_36globalToLocal[] = "DM.globalToLocal(self, Vec vg, Vec vl, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_45globalToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_44globalToLocal[] = "DM.globalToLocal(self, Vec vg, Vec vl, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_45globalToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_vg = 0;
struct PyPetscVecObject *__pyx_v_vl = 0;
PyObject *__pyx_v_addv = 0;
@@ -200667,8 +215346,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -200677,11 +215359,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vg)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vl)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("globalToLocal", 0, 2, 3, 1); __PYX_ERR(40, 118, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("globalToLocal", 0, 2, 3, 1); __PYX_ERR(40, 138, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -200689,11 +215373,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "globalToLocal") < 0)) __PYX_ERR(40, 118, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "globalToLocal") < 0)) __PYX_ERR(40, 138, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -200706,15 +215391,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("globalToLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 118, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("globalToLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 138, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.globalToLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vg), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vg", 0))) __PYX_ERR(40, 118, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vl", 0))) __PYX_ERR(40, 118, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_36globalToLocal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vg, __pyx_v_vl, __pyx_v_addv);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vg), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vg", 0))) __PYX_ERR(40, 138, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vl", 0))) __PYX_ERR(40, 138, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_44globalToLocal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vg, __pyx_v_vl, __pyx_v_addv);
/* function exit code */
goto __pyx_L0;
@@ -200725,7 +215410,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal(PyObject *__pyx_v
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_36globalToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vg, struct PyPetscVecObject *__pyx_v_vl, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44globalToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vg, struct PyPetscVecObject *__pyx_v_vl, PyObject *__pyx_v_addv) {
InsertMode __pyx_v_im;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -200733,38 +215418,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_36globalToLocal(struct PyPetscDMO
int __pyx_t_2;
__Pyx_RefNannySetupContext("globalToLocal", 0);
- /* "PETSc/DM.pyx":119
+ /* "PETSc/DM.pyx":139
*
- * def globalToLocal(self, Vec vg not None, Vec vl not None, addv=None):
+ * def globalToLocal(self, Vec vg, Vec vl, addv=None):
* cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( DMGlobalToLocalBegin(self.dm, vg.vec, im, vl.vec) )
* CHKERR( DMGlobalToLocalEnd (self.dm, vg.vec, im, vl.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(40, 119, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(40, 139, __pyx_L1_error)
__pyx_v_im = __pyx_t_1;
- /* "PETSc/DM.pyx":120
- * def globalToLocal(self, Vec vg not None, Vec vl not None, addv=None):
+ /* "PETSc/DM.pyx":140
+ * def globalToLocal(self, Vec vg, Vec vl, addv=None):
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMGlobalToLocalBegin(self.dm, vg.vec, im, vl.vec) ) # <<<<<<<<<<<<<<
* CHKERR( DMGlobalToLocalEnd (self.dm, vg.vec, im, vl.vec) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGlobalToLocalBegin(__pyx_v_self->dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vl->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 120, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGlobalToLocalBegin(__pyx_v_self->dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vl->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 140, __pyx_L1_error)
- /* "PETSc/DM.pyx":121
+ /* "PETSc/DM.pyx":141
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMGlobalToLocalBegin(self.dm, vg.vec, im, vl.vec) )
* CHKERR( DMGlobalToLocalEnd (self.dm, vg.vec, im, vl.vec) ) # <<<<<<<<<<<<<<
*
- * def localToGlobal(self, Vec vl not None, Vec vg not None, addv=None):
+ * def localToGlobal(self, Vec vl, Vec vg, addv=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGlobalToLocalEnd(__pyx_v_self->dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vl->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 121, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGlobalToLocalEnd(__pyx_v_self->dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vl->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 141, __pyx_L1_error)
- /* "PETSc/DM.pyx":118
- * return vl
+ /* "PETSc/DM.pyx":138
+ * CHKERR( DMRestoreLocalVector(self.dm, &vl.vec) )
*
- * def globalToLocal(self, Vec vg not None, Vec vl not None, addv=None): # <<<<<<<<<<<<<<
+ * def globalToLocal(self, Vec vg, Vec vl, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMGlobalToLocalBegin(self.dm, vg.vec, im, vl.vec) )
*/
@@ -200781,18 +215466,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_36globalToLocal(struct PyPetscDMO
return __pyx_r;
}
-/* "PETSc/DM.pyx":123
+/* "PETSc/DM.pyx":143
* CHKERR( DMGlobalToLocalEnd (self.dm, vg.vec, im, vl.vec) )
*
- * def localToGlobal(self, Vec vl not None, Vec vg not None, addv=None): # <<<<<<<<<<<<<<
+ * def localToGlobal(self, Vec vl, Vec vg, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToGlobalBegin(self.dm, vl.vec, im, vg.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_38localToGlobal[] = "DM.localToGlobal(self, Vec vl, Vec vg, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_47localToGlobal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_46localToGlobal[] = "DM.localToGlobal(self, Vec vl, Vec vg, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_47localToGlobal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_vl = 0;
struct PyPetscVecObject *__pyx_v_vg = 0;
PyObject *__pyx_v_addv = 0;
@@ -200808,8 +215493,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -200818,11 +215506,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vl)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("localToGlobal", 0, 2, 3, 1); __PYX_ERR(40, 123, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("localToGlobal", 0, 2, 3, 1); __PYX_ERR(40, 143, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -200830,11 +215520,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "localToGlobal") < 0)) __PYX_ERR(40, 123, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "localToGlobal") < 0)) __PYX_ERR(40, 143, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -200847,15 +215538,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("localToGlobal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 123, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("localToGlobal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 143, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.localToGlobal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vl", 0))) __PYX_ERR(40, 123, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vg), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vg", 0))) __PYX_ERR(40, 123, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_38localToGlobal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vl, __pyx_v_vg, __pyx_v_addv);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vl", 0))) __PYX_ERR(40, 143, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vg), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vg", 0))) __PYX_ERR(40, 143, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_46localToGlobal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vl, __pyx_v_vg, __pyx_v_addv);
/* function exit code */
goto __pyx_L0;
@@ -200866,7 +215557,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal(PyObject *__pyx_v
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_38localToGlobal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vg, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_46localToGlobal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vg, PyObject *__pyx_v_addv) {
InsertMode __pyx_v_im;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -200874,38 +215565,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_38localToGlobal(struct PyPetscDMO
int __pyx_t_2;
__Pyx_RefNannySetupContext("localToGlobal", 0);
- /* "PETSc/DM.pyx":124
+ /* "PETSc/DM.pyx":144
*
- * def localToGlobal(self, Vec vl not None, Vec vg not None, addv=None):
+ * def localToGlobal(self, Vec vl, Vec vg, addv=None):
* cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( DMLocalToGlobalBegin(self.dm, vl.vec, im, vg.vec) )
* CHKERR( DMLocalToGlobalEnd(self.dm, vl.vec, im, vg.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(40, 124, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(40, 144, __pyx_L1_error)
__pyx_v_im = __pyx_t_1;
- /* "PETSc/DM.pyx":125
- * def localToGlobal(self, Vec vl not None, Vec vg not None, addv=None):
+ /* "PETSc/DM.pyx":145
+ * def localToGlobal(self, Vec vl, Vec vg, addv=None):
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToGlobalBegin(self.dm, vl.vec, im, vg.vec) ) # <<<<<<<<<<<<<<
* CHKERR( DMLocalToGlobalEnd(self.dm, vl.vec, im, vg.vec) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToGlobalBegin(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 125, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToGlobalBegin(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 145, __pyx_L1_error)
- /* "PETSc/DM.pyx":126
+ /* "PETSc/DM.pyx":146
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToGlobalBegin(self.dm, vl.vec, im, vg.vec) )
* CHKERR( DMLocalToGlobalEnd(self.dm, vl.vec, im, vg.vec) ) # <<<<<<<<<<<<<<
*
- * def localToLocal(self, Vec vl not None, Vec vlg not None, addv=None):
+ * def localToLocal(self, Vec vl, Vec vlg, addv=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToGlobalEnd(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 126, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToGlobalEnd(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 146, __pyx_L1_error)
- /* "PETSc/DM.pyx":123
+ /* "PETSc/DM.pyx":143
* CHKERR( DMGlobalToLocalEnd (self.dm, vg.vec, im, vl.vec) )
*
- * def localToGlobal(self, Vec vl not None, Vec vg not None, addv=None): # <<<<<<<<<<<<<<
+ * def localToGlobal(self, Vec vl, Vec vg, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToGlobalBegin(self.dm, vl.vec, im, vg.vec) )
*/
@@ -200922,18 +215613,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_38localToGlobal(struct PyPetscDMO
return __pyx_r;
}
-/* "PETSc/DM.pyx":128
+/* "PETSc/DM.pyx":148
* CHKERR( DMLocalToGlobalEnd(self.dm, vl.vec, im, vg.vec) )
*
- * def localToLocal(self, Vec vl not None, Vec vlg not None, addv=None): # <<<<<<<<<<<<<<
+ * def localToLocal(self, Vec vl, Vec vlg, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToLocalBegin(self.dm, vl.vec, im, vlg.vec) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_40localToLocal[] = "DM.localToLocal(self, Vec vl, Vec vlg, addv=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49localToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_48localToLocal[] = "DM.localToLocal(self, Vec vl, Vec vlg, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49localToLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_vl = 0;
struct PyPetscVecObject *__pyx_v_vlg = 0;
PyObject *__pyx_v_addv = 0;
@@ -200949,8 +215640,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -200959,11 +215653,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vl)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vlg)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("localToLocal", 0, 2, 3, 1); __PYX_ERR(40, 128, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("localToLocal", 0, 2, 3, 1); __PYX_ERR(40, 148, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -200971,11 +215667,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "localToLocal") < 0)) __PYX_ERR(40, 128, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "localToLocal") < 0)) __PYX_ERR(40, 148, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -200988,15 +215685,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("localToLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 128, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("localToLocal", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 148, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.localToLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vl", 0))) __PYX_ERR(40, 128, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vlg), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vlg", 0))) __PYX_ERR(40, 128, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_40localToLocal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vl, __pyx_v_vlg, __pyx_v_addv);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vl), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vl", 0))) __PYX_ERR(40, 148, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vlg), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vlg", 0))) __PYX_ERR(40, 148, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_48localToLocal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_vl, __pyx_v_vlg, __pyx_v_addv);
/* function exit code */
goto __pyx_L0;
@@ -201007,7 +215704,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal(PyObject *__pyx_v_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_40localToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vlg, PyObject *__pyx_v_addv) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_48localToLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_vl, struct PyPetscVecObject *__pyx_v_vlg, PyObject *__pyx_v_addv) {
InsertMode __pyx_v_im;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201015,38 +215712,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_40localToLocal(struct PyPetscDMOb
int __pyx_t_2;
__Pyx_RefNannySetupContext("localToLocal", 0);
- /* "PETSc/DM.pyx":129
+ /* "PETSc/DM.pyx":149
*
- * def localToLocal(self, Vec vl not None, Vec vlg not None, addv=None):
+ * def localToLocal(self, Vec vl, Vec vlg, addv=None):
* cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( DMLocalToLocalBegin(self.dm, vl.vec, im, vlg.vec) )
* CHKERR( DMLocalToLocalEnd (self.dm, vl.vec, im, vlg.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(40, 129, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(40, 149, __pyx_L1_error)
__pyx_v_im = __pyx_t_1;
- /* "PETSc/DM.pyx":130
- * def localToLocal(self, Vec vl not None, Vec vlg not None, addv=None):
+ /* "PETSc/DM.pyx":150
+ * def localToLocal(self, Vec vl, Vec vlg, addv=None):
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToLocalBegin(self.dm, vl.vec, im, vlg.vec) ) # <<<<<<<<<<<<<<
* CHKERR( DMLocalToLocalEnd (self.dm, vl.vec, im, vlg.vec) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToLocalBegin(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vlg->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 130, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToLocalBegin(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vlg->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 150, __pyx_L1_error)
- /* "PETSc/DM.pyx":131
+ /* "PETSc/DM.pyx":151
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToLocalBegin(self.dm, vl.vec, im, vlg.vec) )
* CHKERR( DMLocalToLocalEnd (self.dm, vl.vec, im, vlg.vec) ) # <<<<<<<<<<<<<<
*
* def getLGMap(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToLocalEnd(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vlg->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 131, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMLocalToLocalEnd(__pyx_v_self->dm, __pyx_v_vl->vec, __pyx_v_im, __pyx_v_vlg->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 151, __pyx_L1_error)
- /* "PETSc/DM.pyx":128
+ /* "PETSc/DM.pyx":148
* CHKERR( DMLocalToGlobalEnd(self.dm, vl.vec, im, vg.vec) )
*
- * def localToLocal(self, Vec vl not None, Vec vlg not None, addv=None): # <<<<<<<<<<<<<<
+ * def localToLocal(self, Vec vl, Vec vlg, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMLocalToLocalBegin(self.dm, vl.vec, im, vlg.vec) )
*/
@@ -201063,7 +215760,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_40localToLocal(struct PyPetscDMOb
return __pyx_r;
}
-/* "PETSc/DM.pyx":133
+/* "PETSc/DM.pyx":153
* CHKERR( DMLocalToLocalEnd (self.dm, vl.vec, im, vlg.vec) )
*
* def getLGMap(self): # <<<<<<<<<<<<<<
@@ -201072,23 +215769,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_40localToLocal(struct PyPetscDMOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_43getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_42getLGMap[] = "DM.getLGMap(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_43getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_51getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_50getLGMap[] = "DM.getLGMap(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_51getLGMap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getLGMap (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getLGMap", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getLGMap", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_50getLGMap(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_50getLGMap(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscLGMapObject *__pyx_v_lgm = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201096,28 +215793,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(struct PyPetscDMObject
int __pyx_t_2;
__Pyx_RefNannySetupContext("getLGMap", 0);
- /* "PETSc/DM.pyx":134
+ /* "PETSc/DM.pyx":154
*
* def getLGMap(self):
* cdef LGMap lgm = LGMap() # <<<<<<<<<<<<<<
* CHKERR( DMGetLocalToGlobalMapping(self.dm, &lgm.lgm) )
* PetscINCREF(lgm.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 134, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 154, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_lgm = ((struct PyPetscLGMapObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":135
+ /* "PETSc/DM.pyx":155
* def getLGMap(self):
* cdef LGMap lgm = LGMap()
* CHKERR( DMGetLocalToGlobalMapping(self.dm, &lgm.lgm) ) # <<<<<<<<<<<<<<
* PetscINCREF(lgm.obj)
* return lgm
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLocalToGlobalMapping(__pyx_v_self->dm, (&__pyx_v_lgm->lgm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 135, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLocalToGlobalMapping(__pyx_v_self->dm, (&__pyx_v_lgm->lgm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 155, __pyx_L1_error)
- /* "PETSc/DM.pyx":136
+ /* "PETSc/DM.pyx":156
* cdef LGMap lgm = LGMap()
* CHKERR( DMGetLocalToGlobalMapping(self.dm, &lgm.lgm) )
* PetscINCREF(lgm.obj) # <<<<<<<<<<<<<<
@@ -201126,7 +215823,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(struct PyPetscDMObject
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_lgm->__pyx_base.obj);
- /* "PETSc/DM.pyx":137
+ /* "PETSc/DM.pyx":157
* CHKERR( DMGetLocalToGlobalMapping(self.dm, &lgm.lgm) )
* PetscINCREF(lgm.obj)
* return lgm # <<<<<<<<<<<<<<
@@ -201138,7 +215835,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(struct PyPetscDMObject
__pyx_r = ((PyObject *)__pyx_v_lgm);
goto __pyx_L0;
- /* "PETSc/DM.pyx":133
+ /* "PETSc/DM.pyx":153
* CHKERR( DMLocalToLocalEnd (self.dm, vl.vec, im, vlg.vec) )
*
* def getLGMap(self): # <<<<<<<<<<<<<<
@@ -201158,7 +215855,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(struct PyPetscDMObject
return __pyx_r;
}
-/* "PETSc/DM.pyx":141
+/* "PETSc/DM.pyx":161
* #
*
* def getCoordinateDM(self): # <<<<<<<<<<<<<<
@@ -201167,23 +215864,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_42getLGMap(struct PyPetscDMObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_45getCoordinateDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_44getCoordinateDM[] = "DM.getCoordinateDM(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_45getCoordinateDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53getCoordinateDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_52getCoordinateDM[] = "DM.getCoordinateDM(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53getCoordinateDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getCoordinateDM (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getCoordinateDM", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCoordinateDM", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_52getCoordinateDM(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_52getCoordinateDM(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscDMObject *__pyx_v_cdm = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201193,7 +215890,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscD
int __pyx_t_4;
__Pyx_RefNannySetupContext("getCoordinateDM", 0);
- /* "PETSc/DM.pyx":142
+ /* "PETSc/DM.pyx":162
*
* def getCoordinateDM(self):
* cdef DM cdm = type(self)() # <<<<<<<<<<<<<<
@@ -201202,7 +215899,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscD
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -201212,27 +215909,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscD
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 142, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 162, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 142, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 162, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 142, __pyx_L1_error)
+ if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 162, __pyx_L1_error)
__pyx_v_cdm = ((struct PyPetscDMObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":143
+ /* "PETSc/DM.pyx":163
* def getCoordinateDM(self):
* cdef DM cdm = type(self)()
* CHKERR( DMGetCoordinateDM(self.dm, &cdm.dm) ) # <<<<<<<<<<<<<<
* PetscINCREF(cdm.obj)
* return cdm
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinateDM(__pyx_v_self->dm, (&__pyx_v_cdm->dm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(40, 143, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinateDM(__pyx_v_self->dm, (&__pyx_v_cdm->dm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 163, __pyx_L1_error)
- /* "PETSc/DM.pyx":144
+ /* "PETSc/DM.pyx":164
* cdef DM cdm = type(self)()
* CHKERR( DMGetCoordinateDM(self.dm, &cdm.dm) )
* PetscINCREF(cdm.obj) # <<<<<<<<<<<<<<
@@ -201241,7 +215938,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscD
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_cdm->__pyx_base.obj);
- /* "PETSc/DM.pyx":145
+ /* "PETSc/DM.pyx":165
* CHKERR( DMGetCoordinateDM(self.dm, &cdm.dm) )
* PetscINCREF(cdm.obj)
* return cdm # <<<<<<<<<<<<<<
@@ -201253,7 +215950,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscD
__pyx_r = ((PyObject *)__pyx_v_cdm);
goto __pyx_L0;
- /* "PETSc/DM.pyx":141
+ /* "PETSc/DM.pyx":161
* #
*
* def getCoordinateDM(self): # <<<<<<<<<<<<<<
@@ -201275,7 +215972,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscD
return __pyx_r;
}
-/* "PETSc/DM.pyx":147
+/* "PETSc/DM.pyx":167
* return cdm
*
* def getCoordinateSection(self): # <<<<<<<<<<<<<<
@@ -201284,23 +215981,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_44getCoordinateDM(struct PyPetscD
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_47getCoordinateSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_46getCoordinateSection[] = "DM.getCoordinateSection(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_47getCoordinateSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_55getCoordinateSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_54getCoordinateSection[] = "DM.getCoordinateSection(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_55getCoordinateSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getCoordinateSection (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getCoordinateSection", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCoordinateSection", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_46getCoordinateSection(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinateSection(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_46getCoordinateSection(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinateSection(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscSectionObject *__pyx_v_sec = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201308,28 +216005,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_46getCoordinateSection(struct PyP
int __pyx_t_2;
__Pyx_RefNannySetupContext("getCoordinateSection", 0);
- /* "PETSc/DM.pyx":148
+ /* "PETSc/DM.pyx":168
*
* def getCoordinateSection(self):
* cdef Section sec = Section() # <<<<<<<<<<<<<<
* CHKERR( DMGetCoordinateSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 148, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 168, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_sec = ((struct PyPetscSectionObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":149
+ /* "PETSc/DM.pyx":169
* def getCoordinateSection(self):
* cdef Section sec = Section()
* CHKERR( DMGetCoordinateSection(self.dm, &sec.sec) ) # <<<<<<<<<<<<<<
* PetscINCREF(sec.obj)
* return sec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinateSection(__pyx_v_self->dm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 149, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinateSection(__pyx_v_self->dm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 169, __pyx_L1_error)
- /* "PETSc/DM.pyx":150
+ /* "PETSc/DM.pyx":170
* cdef Section sec = Section()
* CHKERR( DMGetCoordinateSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj) # <<<<<<<<<<<<<<
@@ -201338,19 +216035,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_46getCoordinateSection(struct PyP
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_sec->__pyx_base.obj);
- /* "PETSc/DM.pyx":151
+ /* "PETSc/DM.pyx":171
* CHKERR( DMGetCoordinateSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj)
* return sec # <<<<<<<<<<<<<<
*
- * def setCoordinates(self, Vec c not None):
+ * def setCoordinates(self, Vec c):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_sec));
__pyx_r = ((PyObject *)__pyx_v_sec);
goto __pyx_L0;
- /* "PETSc/DM.pyx":147
+ /* "PETSc/DM.pyx":167
* return cdm
*
* def getCoordinateSection(self): # <<<<<<<<<<<<<<
@@ -201370,18 +216067,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_46getCoordinateSection(struct PyP
return __pyx_r;
}
-/* "PETSc/DM.pyx":153
+/* "PETSc/DM.pyx":173
* return sec
*
- * def setCoordinates(self, Vec c not None): # <<<<<<<<<<<<<<
+ * def setCoordinates(self, Vec c): # <<<<<<<<<<<<<<
* CHKERR( DMSetCoordinates(self.dm, c.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49setCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_48setCoordinates[] = "DM.setCoordinates(self, Vec c)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49setCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_57setCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_56setCoordinates[] = "DM.setCoordinates(self, Vec c)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_57setCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_c = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -201394,6 +216091,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49setCoordinates(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -201404,7 +216102,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49setCoordinates(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCoordinates") < 0)) __PYX_ERR(40, 153, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCoordinates") < 0)) __PYX_ERR(40, 173, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -201415,14 +216113,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49setCoordinates(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setCoordinates", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 153, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCoordinates", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 173, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setCoordinates", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_c), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "c", 0))) __PYX_ERR(40, 153, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_48setCoordinates(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_c);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_c), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "c", 0))) __PYX_ERR(40, 173, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_56setCoordinates(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_c);
/* function exit code */
goto __pyx_L0;
@@ -201433,25 +216131,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_49setCoordinates(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_48setCoordinates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setCoordinates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setCoordinates", 0);
- /* "PETSc/DM.pyx":154
+ /* "PETSc/DM.pyx":174
*
- * def setCoordinates(self, Vec c not None):
+ * def setCoordinates(self, Vec c):
* CHKERR( DMSetCoordinates(self.dm, c.vec) ) # <<<<<<<<<<<<<<
*
* def getCoordinates(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetCoordinates(__pyx_v_self->dm, __pyx_v_c->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 154, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetCoordinates(__pyx_v_self->dm, __pyx_v_c->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 174, __pyx_L1_error)
- /* "PETSc/DM.pyx":153
+ /* "PETSc/DM.pyx":173
* return sec
*
- * def setCoordinates(self, Vec c not None): # <<<<<<<<<<<<<<
+ * def setCoordinates(self, Vec c): # <<<<<<<<<<<<<<
* CHKERR( DMSetCoordinates(self.dm, c.vec) )
*
*/
@@ -201468,7 +216166,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_48setCoordinates(struct PyPetscDM
return __pyx_r;
}
-/* "PETSc/DM.pyx":156
+/* "PETSc/DM.pyx":176
* CHKERR( DMSetCoordinates(self.dm, c.vec) )
*
* def getCoordinates(self): # <<<<<<<<<<<<<<
@@ -201477,23 +216175,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_48setCoordinates(struct PyPetscDM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_51getCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_50getCoordinates[] = "DM.getCoordinates(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_51getCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_59getCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_58getCoordinates[] = "DM.getCoordinates(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_59getCoordinates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getCoordinates (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getCoordinates", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCoordinates", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_50getCoordinates(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_58getCoordinates(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_50getCoordinates(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_58getCoordinates(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_c = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201501,28 +216199,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_50getCoordinates(struct PyPetscDM
int __pyx_t_2;
__Pyx_RefNannySetupContext("getCoordinates", 0);
- /* "PETSc/DM.pyx":157
+ /* "PETSc/DM.pyx":177
*
* def getCoordinates(self):
* cdef Vec c = Vec() # <<<<<<<<<<<<<<
* CHKERR( DMGetCoordinates(self.dm, &c.vec) )
* PetscINCREF(c.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 157, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 177, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_c = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":158
+ /* "PETSc/DM.pyx":178
* def getCoordinates(self):
* cdef Vec c = Vec()
* CHKERR( DMGetCoordinates(self.dm, &c.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(c.obj)
* return c
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinates(__pyx_v_self->dm, (&__pyx_v_c->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 158, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinates(__pyx_v_self->dm, (&__pyx_v_c->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 178, __pyx_L1_error)
- /* "PETSc/DM.pyx":159
+ /* "PETSc/DM.pyx":179
* cdef Vec c = Vec()
* CHKERR( DMGetCoordinates(self.dm, &c.vec) )
* PetscINCREF(c.obj) # <<<<<<<<<<<<<<
@@ -201531,19 +216229,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_50getCoordinates(struct PyPetscDM
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_c->__pyx_base.obj);
- /* "PETSc/DM.pyx":160
+ /* "PETSc/DM.pyx":180
* CHKERR( DMGetCoordinates(self.dm, &c.vec) )
* PetscINCREF(c.obj)
* return c # <<<<<<<<<<<<<<
*
- * def setCoordinatesLocal(self, Vec c not None):
+ * def setCoordinatesLocal(self, Vec c):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_c));
__pyx_r = ((PyObject *)__pyx_v_c);
goto __pyx_L0;
- /* "PETSc/DM.pyx":156
+ /* "PETSc/DM.pyx":176
* CHKERR( DMSetCoordinates(self.dm, c.vec) )
*
* def getCoordinates(self): # <<<<<<<<<<<<<<
@@ -201563,18 +216261,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_50getCoordinates(struct PyPetscDM
return __pyx_r;
}
-/* "PETSc/DM.pyx":162
+/* "PETSc/DM.pyx":182
* return c
*
- * def setCoordinatesLocal(self, Vec c not None): # <<<<<<<<<<<<<<
+ * def setCoordinatesLocal(self, Vec c): # <<<<<<<<<<<<<<
* CHKERR( DMSetCoordinatesLocal(self.dm, c.vec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53setCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_52setCoordinatesLocal[] = "DM.setCoordinatesLocal(self, Vec c)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53setCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61setCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_60setCoordinatesLocal[] = "DM.setCoordinatesLocal(self, Vec c)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61setCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscVecObject *__pyx_v_c = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -201587,6 +216285,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53setCoordinatesLocal(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -201597,7 +216296,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53setCoordinatesLocal(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCoordinatesLocal") < 0)) __PYX_ERR(40, 162, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCoordinatesLocal") < 0)) __PYX_ERR(40, 182, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -201608,14 +216307,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53setCoordinatesLocal(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setCoordinatesLocal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 162, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCoordinatesLocal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 182, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setCoordinatesLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_c), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "c", 0))) __PYX_ERR(40, 162, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_52setCoordinatesLocal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_c);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_c), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "c", 0))) __PYX_ERR(40, 182, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_60setCoordinatesLocal(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_c);
/* function exit code */
goto __pyx_L0;
@@ -201626,25 +216325,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_53setCoordinatesLocal(PyObject *_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_52setCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_60setCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_c) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setCoordinatesLocal", 0);
- /* "PETSc/DM.pyx":163
+ /* "PETSc/DM.pyx":183
*
- * def setCoordinatesLocal(self, Vec c not None):
+ * def setCoordinatesLocal(self, Vec c):
* CHKERR( DMSetCoordinatesLocal(self.dm, c.vec) ) # <<<<<<<<<<<<<<
*
* def getCoordinatesLocal(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetCoordinatesLocal(__pyx_v_self->dm, __pyx_v_c->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 163, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetCoordinatesLocal(__pyx_v_self->dm, __pyx_v_c->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 183, __pyx_L1_error)
- /* "PETSc/DM.pyx":162
+ /* "PETSc/DM.pyx":182
* return c
*
- * def setCoordinatesLocal(self, Vec c not None): # <<<<<<<<<<<<<<
+ * def setCoordinatesLocal(self, Vec c): # <<<<<<<<<<<<<<
* CHKERR( DMSetCoordinatesLocal(self.dm, c.vec) )
*
*/
@@ -201661,7 +216360,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_52setCoordinatesLocal(struct PyPe
return __pyx_r;
}
-/* "PETSc/DM.pyx":165
+/* "PETSc/DM.pyx":185
* CHKERR( DMSetCoordinatesLocal(self.dm, c.vec) )
*
* def getCoordinatesLocal(self): # <<<<<<<<<<<<<<
@@ -201670,23 +216369,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_52setCoordinatesLocal(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_55getCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_54getCoordinatesLocal[] = "DM.getCoordinatesLocal(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_55getCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63getCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_62getCoordinatesLocal[] = "DM.getCoordinatesLocal(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63getCoordinatesLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getCoordinatesLocal (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getCoordinatesLocal", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCoordinatesLocal", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_62getCoordinatesLocal(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_62getCoordinatesLocal(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscVecObject *__pyx_v_c = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201694,28 +216393,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("getCoordinatesLocal", 0);
- /* "PETSc/DM.pyx":166
+ /* "PETSc/DM.pyx":186
*
* def getCoordinatesLocal(self):
* cdef Vec c = Vec() # <<<<<<<<<<<<<<
* CHKERR( DMGetCoordinatesLocal(self.dm, &c.vec) )
* PetscINCREF(c.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 166, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_c = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":167
+ /* "PETSc/DM.pyx":187
* def getCoordinatesLocal(self):
* cdef Vec c = Vec()
* CHKERR( DMGetCoordinatesLocal(self.dm, &c.vec) ) # <<<<<<<<<<<<<<
* PetscINCREF(c.obj)
* return c
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinatesLocal(__pyx_v_self->dm, (&__pyx_v_c->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 167, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoordinatesLocal(__pyx_v_self->dm, (&__pyx_v_c->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 187, __pyx_L1_error)
- /* "PETSc/DM.pyx":168
+ /* "PETSc/DM.pyx":188
* cdef Vec c = Vec()
* CHKERR( DMGetCoordinatesLocal(self.dm, &c.vec) )
* PetscINCREF(c.obj) # <<<<<<<<<<<<<<
@@ -201724,7 +216423,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(struct PyPe
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_c->__pyx_base.obj);
- /* "PETSc/DM.pyx":169
+ /* "PETSc/DM.pyx":189
* CHKERR( DMGetCoordinatesLocal(self.dm, &c.vec) )
* PetscINCREF(c.obj)
* return c # <<<<<<<<<<<<<<
@@ -201736,7 +216435,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(struct PyPe
__pyx_r = ((PyObject *)__pyx_v_c);
goto __pyx_L0;
- /* "PETSc/DM.pyx":165
+ /* "PETSc/DM.pyx":185
* CHKERR( DMSetCoordinatesLocal(self.dm, c.vec) )
*
* def getCoordinatesLocal(self): # <<<<<<<<<<<<<<
@@ -201756,7 +216455,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(struct PyPe
return __pyx_r;
}
-/* "PETSc/DM.pyx":173
+/* "PETSc/DM.pyx":193
* #
*
* def setMatType(self, mat_type): # <<<<<<<<<<<<<<
@@ -201765,9 +216464,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_54getCoordinatesLocal(struct PyPe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_57setMatType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_56setMatType[] = "DM.setMatType(self, mat_type)\nSet matrix type to be used by DM.createMat";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_57setMatType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65setMatType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_64setMatType[] = "DM.setMatType(self, mat_type)\nSet matrix type to be used by DM.createMat";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65setMatType(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_mat_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -201780,6 +216479,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_57setMatType(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -201790,7 +216490,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_57setMatType(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMatType") < 0)) __PYX_ERR(40, 173, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMatType") < 0)) __PYX_ERR(40, 193, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -201801,20 +216501,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_57setMatType(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setMatType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 173, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMatType", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 193, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setMatType", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_56setMatType(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_mat_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_64setMatType(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_mat_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setMatType(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_mat_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64setMatType(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_mat_type) {
const char* __pyx_v_mtype;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201823,7 +216523,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setMatType(struct PyPetscDMObje
__Pyx_RefNannySetupContext("setMatType", 0);
__Pyx_INCREF(__pyx_v_mat_type);
- /* "PETSc/DM.pyx":175
+ /* "PETSc/DM.pyx":195
* def setMatType(self, mat_type):
* """Set matrix type to be used by DM.createMat"""
* cdef PetscMatType mtype = NULL # <<<<<<<<<<<<<<
@@ -201832,28 +216532,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setMatType(struct PyPetscDMObje
*/
__pyx_v_mtype = NULL;
- /* "PETSc/DM.pyx":176
+ /* "PETSc/DM.pyx":196
* """Set matrix type to be used by DM.createMat"""
* cdef PetscMatType mtype = NULL
* mat_type = str2bytes(mat_type, &mtype) # <<<<<<<<<<<<<<
* CHKERR( DMSetMatType(self.dm, mtype) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_mat_type, (&__pyx_v_mtype)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 176, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_mat_type, (&__pyx_v_mtype)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_mat_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":177
+ /* "PETSc/DM.pyx":197
* cdef PetscMatType mtype = NULL
* mat_type = str2bytes(mat_type, &mtype)
* CHKERR( DMSetMatType(self.dm, mtype) ) # <<<<<<<<<<<<<<
*
* def createMat(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetMatType(__pyx_v_self->dm, __pyx_v_mtype)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 177, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetMatType(__pyx_v_self->dm, __pyx_v_mtype)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 197, __pyx_L1_error)
- /* "PETSc/DM.pyx":173
+ /* "PETSc/DM.pyx":193
* #
*
* def setMatType(self, mat_type): # <<<<<<<<<<<<<<
@@ -201875,7 +216575,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setMatType(struct PyPetscDMObje
return __pyx_r;
}
-/* "PETSc/DM.pyx":179
+/* "PETSc/DM.pyx":199
* CHKERR( DMSetMatType(self.dm, mtype) )
*
* def createMat(self): # <<<<<<<<<<<<<<
@@ -201884,23 +216584,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_56setMatType(struct PyPetscDMObje
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_59createMat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_58createMat[] = "DM.createMat(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_59createMat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_67createMat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_66createMat[] = "DM.createMat(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_67createMat(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("createMat (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("createMat", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "createMat", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_58createMat(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_66createMat(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_58createMat(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66createMat(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscMatObject *__pyx_v_mat = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -201908,40 +216608,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_58createMat(struct PyPetscDMObjec
int __pyx_t_2;
__Pyx_RefNannySetupContext("createMat", 0);
- /* "PETSc/DM.pyx":180
+ /* "PETSc/DM.pyx":200
*
* def createMat(self):
* cdef Mat mat = Mat() # <<<<<<<<<<<<<<
* CHKERR( DMCreateMatrix(self.dm, &mat.mat) )
* return mat
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 180, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 200, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":181
+ /* "PETSc/DM.pyx":201
* def createMat(self):
* cdef Mat mat = Mat()
* CHKERR( DMCreateMatrix(self.dm, &mat.mat) ) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateMatrix(__pyx_v_self->dm, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 181, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateMatrix(__pyx_v_self->dm, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 201, __pyx_L1_error)
- /* "PETSc/DM.pyx":182
+ /* "PETSc/DM.pyx":202
* cdef Mat mat = Mat()
* CHKERR( DMCreateMatrix(self.dm, &mat.mat) )
* return mat # <<<<<<<<<<<<<<
*
- * def createInterpolation(self, DM dm not None):
+ * def createInterpolation(self, DM dm):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_mat));
__pyx_r = ((PyObject *)__pyx_v_mat);
goto __pyx_L0;
- /* "PETSc/DM.pyx":179
+ /* "PETSc/DM.pyx":199
* CHKERR( DMSetMatType(self.dm, mtype) )
*
* def createMat(self): # <<<<<<<<<<<<<<
@@ -201961,18 +216661,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_58createMat(struct PyPetscDMObjec
return __pyx_r;
}
-/* "PETSc/DM.pyx":184
+/* "PETSc/DM.pyx":204
* return mat
*
- * def createInterpolation(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def createInterpolation(self, DM dm): # <<<<<<<<<<<<<<
* cdef Mat A = Mat()
* cdef Vec scale = Vec()
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61createInterpolation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_60createInterpolation[] = "DM.createInterpolation(self, DM dm)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61createInterpolation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_69createInterpolation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_68createInterpolation[] = "DM.createInterpolation(self, DM dm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_69createInterpolation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscDMObject *__pyx_v_dm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -201985,6 +216685,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61createInterpolation(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -201995,7 +216696,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61createInterpolation(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createInterpolation") < 0)) __PYX_ERR(40, 184, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createInterpolation") < 0)) __PYX_ERR(40, 204, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -202006,14 +216707,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61createInterpolation(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createInterpolation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 184, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createInterpolation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 204, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.createInterpolation", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(40, 184, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_60createInterpolation(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(40, 204, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_68createInterpolation(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm);
/* function exit code */
goto __pyx_L0;
@@ -202024,7 +216725,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_61createInterpolation(PyObject *_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_60createInterpolation(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68createInterpolation(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
struct PyPetscMatObject *__pyx_v_A = 0;
struct PyPetscVecObject *__pyx_v_scale = 0;
PyObject *__pyx_r = NULL;
@@ -202033,48 +216734,48 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_60createInterpolation(struct PyPe
int __pyx_t_2;
__Pyx_RefNannySetupContext("createInterpolation", 0);
- /* "PETSc/DM.pyx":185
+ /* "PETSc/DM.pyx":205
*
- * def createInterpolation(self, DM dm not None):
+ * def createInterpolation(self, DM dm):
* cdef Mat A = Mat() # <<<<<<<<<<<<<<
* cdef Vec scale = Vec()
* CHKERR( DMCreateInterpolation(self.dm, dm.dm,
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 185, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 205, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_A = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":186
- * def createInterpolation(self, DM dm not None):
+ /* "PETSc/DM.pyx":206
+ * def createInterpolation(self, DM dm):
* cdef Mat A = Mat()
* cdef Vec scale = Vec() # <<<<<<<<<<<<<<
* CHKERR( DMCreateInterpolation(self.dm, dm.dm,
* &A.mat, &scale.vec))
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 186, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 206, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_scale = ((struct PyPetscVecObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":187
+ /* "PETSc/DM.pyx":207
* cdef Mat A = Mat()
* cdef Vec scale = Vec()
* CHKERR( DMCreateInterpolation(self.dm, dm.dm, # <<<<<<<<<<<<<<
* &A.mat, &scale.vec))
* return(A, scale)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateInterpolation(__pyx_v_self->dm, __pyx_v_dm->dm, (&__pyx_v_A->mat), (&__pyx_v_scale->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 187, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateInterpolation(__pyx_v_self->dm, __pyx_v_dm->dm, (&__pyx_v_A->mat), (&__pyx_v_scale->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 207, __pyx_L1_error)
- /* "PETSc/DM.pyx":189
+ /* "PETSc/DM.pyx":209
* CHKERR( DMCreateInterpolation(self.dm, dm.dm,
* &A.mat, &scale.vec))
* return(A, scale) # <<<<<<<<<<<<<<
*
- * def createInjection(self, DM dm not None):
+ * def createInjection(self, DM dm):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 189, __pyx_L1_error)
+ __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 209, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(((PyObject *)__pyx_v_A));
__Pyx_GIVEREF(((PyObject *)__pyx_v_A));
@@ -202086,10 +216787,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_60createInterpolation(struct PyPe
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":184
+ /* "PETSc/DM.pyx":204
* return mat
*
- * def createInterpolation(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def createInterpolation(self, DM dm): # <<<<<<<<<<<<<<
* cdef Mat A = Mat()
* cdef Vec scale = Vec()
*/
@@ -202107,18 +216808,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_60createInterpolation(struct PyPe
return __pyx_r;
}
-/* "PETSc/DM.pyx":191
+/* "PETSc/DM.pyx":211
* return(A, scale)
*
- * def createInjection(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def createInjection(self, DM dm): # <<<<<<<<<<<<<<
* cdef Mat inject = Mat()
* CHKERR( DMCreateInjection(self.dm, dm.dm, &inject.mat) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63createInjection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_62createInjection[] = "DM.createInjection(self, DM dm)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63createInjection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_71createInjection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_70createInjection[] = "DM.createInjection(self, DM dm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_71createInjection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscDMObject *__pyx_v_dm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -202131,6 +216832,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63createInjection(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202141,7 +216843,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63createInjection(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createInjection") < 0)) __PYX_ERR(40, 191, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createInjection") < 0)) __PYX_ERR(40, 211, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -202152,14 +216854,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63createInjection(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createInjection", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 191, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createInjection", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 211, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.createInjection", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(40, 191, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_62createInjection(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(40, 211, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_70createInjection(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm);
/* function exit code */
goto __pyx_L0;
@@ -202170,7 +216872,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_63createInjection(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_62createInjection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70createInjection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
struct PyPetscMatObject *__pyx_v_inject = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -202178,43 +216880,43 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_62createInjection(struct PyPetscD
int __pyx_t_2;
__Pyx_RefNannySetupContext("createInjection", 0);
- /* "PETSc/DM.pyx":192
+ /* "PETSc/DM.pyx":212
*
- * def createInjection(self, DM dm not None):
+ * def createInjection(self, DM dm):
* cdef Mat inject = Mat() # <<<<<<<<<<<<<<
* CHKERR( DMCreateInjection(self.dm, dm.dm, &inject.mat) )
* return inject
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 192, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_inject = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":193
- * def createInjection(self, DM dm not None):
+ /* "PETSc/DM.pyx":213
+ * def createInjection(self, DM dm):
* cdef Mat inject = Mat()
* CHKERR( DMCreateInjection(self.dm, dm.dm, &inject.mat) ) # <<<<<<<<<<<<<<
* return inject
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateInjection(__pyx_v_self->dm, __pyx_v_dm->dm, (&__pyx_v_inject->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 193, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateInjection(__pyx_v_self->dm, __pyx_v_dm->dm, (&__pyx_v_inject->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 213, __pyx_L1_error)
- /* "PETSc/DM.pyx":194
+ /* "PETSc/DM.pyx":214
* cdef Mat inject = Mat()
* CHKERR( DMCreateInjection(self.dm, dm.dm, &inject.mat) )
* return inject # <<<<<<<<<<<<<<
*
- * def createAggregates(self, DM dm not None):
+ * def createAggregates(self, DM dm):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_inject));
__pyx_r = ((PyObject *)__pyx_v_inject);
goto __pyx_L0;
- /* "PETSc/DM.pyx":191
+ /* "PETSc/DM.pyx":211
* return(A, scale)
*
- * def createInjection(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def createInjection(self, DM dm): # <<<<<<<<<<<<<<
* cdef Mat inject = Mat()
* CHKERR( DMCreateInjection(self.dm, dm.dm, &inject.mat) )
*/
@@ -202231,18 +216933,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_62createInjection(struct PyPetscD
return __pyx_r;
}
-/* "PETSc/DM.pyx":196
+/* "PETSc/DM.pyx":216
* return inject
*
- * def createAggregates(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def createAggregates(self, DM dm): # <<<<<<<<<<<<<<
* cdef Mat mat = Mat()
* CHKERR( DMCreateAggregates(self.dm, dm.dm, &mat.mat) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65createAggregates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_64createAggregates[] = "DM.createAggregates(self, DM dm)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65createAggregates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_73createAggregates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_72createAggregates[] = "DM.createAggregates(self, DM dm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_73createAggregates(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscDMObject *__pyx_v_dm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -202255,6 +216957,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65createAggregates(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202265,7 +216968,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65createAggregates(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAggregates") < 0)) __PYX_ERR(40, 196, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createAggregates") < 0)) __PYX_ERR(40, 216, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -202276,14 +216979,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65createAggregates(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createAggregates", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 196, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createAggregates", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 216, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.createAggregates", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(40, 196, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_64createAggregates(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dm), __pyx_ptype_8petsc4py_5PETSc_DM, 0, "dm", 0))) __PYX_ERR(40, 216, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_72createAggregates(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm);
/* function exit code */
goto __pyx_L0;
@@ -202294,7 +216997,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_65createAggregates(PyObject *__py
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64createAggregates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72createAggregates(struct PyPetscDMObject *__pyx_v_self, struct PyPetscDMObject *__pyx_v_dm) {
struct PyPetscMatObject *__pyx_v_mat = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -202302,28 +217005,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64createAggregates(struct PyPetsc
int __pyx_t_2;
__Pyx_RefNannySetupContext("createAggregates", 0);
- /* "PETSc/DM.pyx":197
+ /* "PETSc/DM.pyx":217
*
- * def createAggregates(self, DM dm not None):
+ * def createAggregates(self, DM dm):
* cdef Mat mat = Mat() # <<<<<<<<<<<<<<
* CHKERR( DMCreateAggregates(self.dm, dm.dm, &mat.mat) )
* return mat
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 197, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Mat), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_mat = ((struct PyPetscMatObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":198
- * def createAggregates(self, DM dm not None):
+ /* "PETSc/DM.pyx":218
+ * def createAggregates(self, DM dm):
* cdef Mat mat = Mat()
* CHKERR( DMCreateAggregates(self.dm, dm.dm, &mat.mat) ) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateAggregates(__pyx_v_self->dm, __pyx_v_dm->dm, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 198, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateAggregates(__pyx_v_self->dm, __pyx_v_dm->dm, (&__pyx_v_mat->mat))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 218, __pyx_L1_error)
- /* "PETSc/DM.pyx":199
+ /* "PETSc/DM.pyx":219
* cdef Mat mat = Mat()
* CHKERR( DMCreateAggregates(self.dm, dm.dm, &mat.mat) )
* return mat # <<<<<<<<<<<<<<
@@ -202335,10 +217038,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64createAggregates(struct PyPetsc
__pyx_r = ((PyObject *)__pyx_v_mat);
goto __pyx_L0;
- /* "PETSc/DM.pyx":196
+ /* "PETSc/DM.pyx":216
* return inject
*
- * def createAggregates(self, DM dm not None): # <<<<<<<<<<<<<<
+ * def createAggregates(self, DM dm): # <<<<<<<<<<<<<<
* cdef Mat mat = Mat()
* CHKERR( DMCreateAggregates(self.dm, dm.dm, &mat.mat) )
*/
@@ -202355,7 +217058,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64createAggregates(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/DM.pyx":201
+/* "PETSc/DM.pyx":221
* return mat
*
* def convert(self, dm_type): # <<<<<<<<<<<<<<
@@ -202364,9 +217067,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_64createAggregates(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_67convert(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_66convert[] = "DM.convert(self, dm_type)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_67convert(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_75convert(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_74convert[] = "DM.convert(self, dm_type)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_75convert(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_dm_type = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -202379,6 +217082,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_67convert(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202389,7 +217093,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_67convert(PyObject *__pyx_v_self,
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "convert") < 0)) __PYX_ERR(40, 201, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "convert") < 0)) __PYX_ERR(40, 221, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -202400,20 +217104,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_67convert(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("convert", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 201, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("convert", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 221, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_66convert(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm_type);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_74convert(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_dm_type);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_dm_type) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74convert(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_dm_type) {
const char *__pyx_v_cval;
DM __pyx_v_newdm;
struct PyPetscDMObject *__pyx_v_dm = 0;
@@ -202425,7 +217129,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
__Pyx_RefNannySetupContext("convert", 0);
__Pyx_INCREF(__pyx_v_dm_type);
- /* "PETSc/DM.pyx":202
+ /* "PETSc/DM.pyx":222
*
* def convert(self, dm_type):
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -202434,19 +217138,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
*/
__pyx_v_cval = NULL;
- /* "PETSc/DM.pyx":203
+ /* "PETSc/DM.pyx":223
* def convert(self, dm_type):
* cdef const_char *cval = NULL
* dm_type = str2bytes(dm_type, &cval) # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* CHKERR( DMConvert(self.dm, cval, &newdm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_dm_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 203, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_dm_type, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 223, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_dm_type, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":204
+ /* "PETSc/DM.pyx":224
* cdef const_char *cval = NULL
* dm_type = str2bytes(dm_type, &cval)
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -202455,25 +217159,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DM.pyx":205
+ /* "PETSc/DM.pyx":225
* dm_type = str2bytes(dm_type, &cval)
* cdef PetscDM newdm = NULL
* CHKERR( DMConvert(self.dm, cval, &newdm) ) # <<<<<<<<<<<<<<
* cdef DM dm = <DM>subtype_DM(newdm)()
* dm.dm = newdm
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMConvert(__pyx_v_self->dm, __pyx_v_cval, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 205, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMConvert(__pyx_v_self->dm, __pyx_v_cval, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 225, __pyx_L1_error)
- /* "PETSc/DM.pyx":206
+ /* "PETSc/DM.pyx":226
* cdef PetscDM newdm = NULL
* CHKERR( DMConvert(self.dm, cval, &newdm) )
* cdef DM dm = <DM>subtype_DM(newdm)() # <<<<<<<<<<<<<<
* dm.dm = newdm
* return dm
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 206, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 206, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __pyx_t_3;
@@ -202482,7 +217186,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
__pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":207
+ /* "PETSc/DM.pyx":227
* CHKERR( DMConvert(self.dm, cval, &newdm) )
* cdef DM dm = <DM>subtype_DM(newdm)()
* dm.dm = newdm # <<<<<<<<<<<<<<
@@ -202491,7 +217195,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
*/
__pyx_v_dm->dm = __pyx_v_newdm;
- /* "PETSc/DM.pyx":208
+ /* "PETSc/DM.pyx":228
* cdef DM dm = <DM>subtype_DM(newdm)()
* dm.dm = newdm
* return dm # <<<<<<<<<<<<<<
@@ -202503,7 +217207,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
__pyx_r = ((PyObject *)__pyx_v_dm);
goto __pyx_L0;
- /* "PETSc/DM.pyx":201
+ /* "PETSc/DM.pyx":221
* return mat
*
* def convert(self, dm_type): # <<<<<<<<<<<<<<
@@ -202525,7 +217229,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
return __pyx_r;
}
-/* "PETSc/DM.pyx":210
+/* "PETSc/DM.pyx":230
* return dm
*
* def refine(self, comm=None): # <<<<<<<<<<<<<<
@@ -202534,9 +217238,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_66convert(struct PyPetscDMObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_69refine(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_68refine[] = "DM.refine(self, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_69refine(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77refine(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_76refine[] = "DM.refine(self, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77refine(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -202550,6 +217254,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_69refine(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202562,11 +217267,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_69refine(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "refine") < 0)) __PYX_ERR(40, 210, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "refine") < 0)) __PYX_ERR(40, 230, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202575,20 +217281,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_69refine(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("refine", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 210, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("refine", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 230, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.refine", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_68refine(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_76refine(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_76refine(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_dmcomm;
DM __pyx_v_newdm;
struct PyPetscDMObject *__pyx_v_dm = 0;
@@ -202600,7 +217306,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("refine", 0);
- /* "PETSc/DM.pyx":211
+ /* "PETSc/DM.pyx":231
*
* def refine(self, comm=None):
* cdef MPI_Comm dmcomm = MPI_COMM_NULL # <<<<<<<<<<<<<<
@@ -202609,26 +217315,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *
*/
__pyx_v_dmcomm = MPI_COMM_NULL;
- /* "PETSc/DM.pyx":212
+ /* "PETSc/DM.pyx":232
* def refine(self, comm=None):
* cdef MPI_Comm dmcomm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &dmcomm) ) # <<<<<<<<<<<<<<
* dmcomm = def_Comm(comm, dmcomm)
* cdef PetscDM newdm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->dm), (&__pyx_v_dmcomm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 212, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->dm), (&__pyx_v_dmcomm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 232, __pyx_L1_error)
- /* "PETSc/DM.pyx":213
+ /* "PETSc/DM.pyx":233
* cdef MPI_Comm dmcomm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &dmcomm) )
* dmcomm = def_Comm(comm, dmcomm) # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* CHKERR( DMRefine(self.dm, dmcomm, &newdm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_dmcomm); if (unlikely(PyErr_Occurred())) __PYX_ERR(40, 213, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_dmcomm); if (unlikely(PyErr_Occurred())) __PYX_ERR(40, 233, __pyx_L1_error)
__pyx_v_dmcomm = __pyx_t_2;
- /* "PETSc/DM.pyx":214
+ /* "PETSc/DM.pyx":234
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &dmcomm) )
* dmcomm = def_Comm(comm, dmcomm)
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -202637,32 +217343,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DM.pyx":215
+ /* "PETSc/DM.pyx":235
* dmcomm = def_Comm(comm, dmcomm)
* cdef PetscDM newdm = NULL
* CHKERR( DMRefine(self.dm, dmcomm, &newdm) ) # <<<<<<<<<<<<<<
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRefine(__pyx_v_self->dm, __pyx_v_dmcomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 215, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRefine(__pyx_v_self->dm, __pyx_v_dmcomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 235, __pyx_L1_error)
- /* "PETSc/DM.pyx":216
+ /* "PETSc/DM.pyx":236
* cdef PetscDM newdm = NULL
* CHKERR( DMRefine(self.dm, dmcomm, &newdm) )
* cdef DM dm = subtype_DM(newdm)() # <<<<<<<<<<<<<<
* dm.dm = newdm
* return dm
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 216, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 236, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 216, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 236, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 216, __pyx_L1_error)
+ if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 236, __pyx_L1_error)
__pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/DM.pyx":217
+ /* "PETSc/DM.pyx":237
* CHKERR( DMRefine(self.dm, dmcomm, &newdm) )
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm # <<<<<<<<<<<<<<
@@ -202671,7 +217377,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *
*/
__pyx_v_dm->dm = __pyx_v_newdm;
- /* "PETSc/DM.pyx":218
+ /* "PETSc/DM.pyx":238
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
* return dm # <<<<<<<<<<<<<<
@@ -202683,7 +217389,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *
__pyx_r = ((PyObject *)__pyx_v_dm);
goto __pyx_L0;
- /* "PETSc/DM.pyx":210
+ /* "PETSc/DM.pyx":230
* return dm
*
* def refine(self, comm=None): # <<<<<<<<<<<<<<
@@ -202704,7 +217410,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *
return __pyx_r;
}
-/* "PETSc/DM.pyx":220
+/* "PETSc/DM.pyx":240
* return dm
*
* def coarsen(self, comm=None): # <<<<<<<<<<<<<<
@@ -202713,9 +217419,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_68refine(struct PyPetscDMObject *
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_71coarsen(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_70coarsen[] = "DM.coarsen(self, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_71coarsen(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_79coarsen(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_78coarsen[] = "DM.coarsen(self, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_79coarsen(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -202729,6 +217435,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_71coarsen(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202741,11 +217448,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_71coarsen(PyObject *__pyx_v_self,
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "coarsen") < 0)) __PYX_ERR(40, 220, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "coarsen") < 0)) __PYX_ERR(40, 240, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202754,20 +217462,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_71coarsen(PyObject *__pyx_v_self,
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("coarsen", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 220, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("coarsen", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 240, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.coarsen", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_78coarsen(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_78coarsen(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_dmcomm;
DM __pyx_v_newdm;
struct PyPetscDMObject *__pyx_v_dm = 0;
@@ -202779,7 +217487,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("coarsen", 0);
- /* "PETSc/DM.pyx":221
+ /* "PETSc/DM.pyx":241
*
* def coarsen(self, comm=None):
* cdef MPI_Comm dmcomm = MPI_COMM_NULL # <<<<<<<<<<<<<<
@@ -202788,26 +217496,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject
*/
__pyx_v_dmcomm = MPI_COMM_NULL;
- /* "PETSc/DM.pyx":222
+ /* "PETSc/DM.pyx":242
* def coarsen(self, comm=None):
* cdef MPI_Comm dmcomm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &dmcomm) ) # <<<<<<<<<<<<<<
* dmcomm = def_Comm(comm, dmcomm)
* cdef PetscDM newdm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->dm), (&__pyx_v_dmcomm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 222, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->dm), (&__pyx_v_dmcomm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 242, __pyx_L1_error)
- /* "PETSc/DM.pyx":223
+ /* "PETSc/DM.pyx":243
* cdef MPI_Comm dmcomm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &dmcomm) )
* dmcomm = def_Comm(comm, dmcomm) # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* CHKERR( DMCoarsen(self.dm, dmcomm, &newdm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_dmcomm); if (unlikely(PyErr_Occurred())) __PYX_ERR(40, 223, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_dmcomm); if (unlikely(PyErr_Occurred())) __PYX_ERR(40, 243, __pyx_L1_error)
__pyx_v_dmcomm = __pyx_t_2;
- /* "PETSc/DM.pyx":224
+ /* "PETSc/DM.pyx":244
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &dmcomm) )
* dmcomm = def_Comm(comm, dmcomm)
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -202816,32 +217524,32 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DM.pyx":225
+ /* "PETSc/DM.pyx":245
* dmcomm = def_Comm(comm, dmcomm)
* cdef PetscDM newdm = NULL
* CHKERR( DMCoarsen(self.dm, dmcomm, &newdm) ) # <<<<<<<<<<<<<<
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCoarsen(__pyx_v_self->dm, __pyx_v_dmcomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 225, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCoarsen(__pyx_v_self->dm, __pyx_v_dmcomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 245, __pyx_L1_error)
- /* "PETSc/DM.pyx":226
+ /* "PETSc/DM.pyx":246
* cdef PetscDM newdm = NULL
* CHKERR( DMCoarsen(self.dm, dmcomm, &newdm) )
* cdef DM dm = subtype_DM(newdm)() # <<<<<<<<<<<<<<
* dm.dm = newdm
* return dm
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 226, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM(__pyx_v_newdm)); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 226, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 226, __pyx_L1_error)
+ if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 246, __pyx_L1_error)
__pyx_v_dm = ((struct PyPetscDMObject *)__pyx_t_4);
__pyx_t_4 = 0;
- /* "PETSc/DM.pyx":227
+ /* "PETSc/DM.pyx":247
* CHKERR( DMCoarsen(self.dm, dmcomm, &newdm) )
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm # <<<<<<<<<<<<<<
@@ -202850,7 +217558,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject
*/
__pyx_v_dm->dm = __pyx_v_newdm;
- /* "PETSc/DM.pyx":228
+ /* "PETSc/DM.pyx":248
* cdef DM dm = subtype_DM(newdm)()
* dm.dm = newdm
* return dm # <<<<<<<<<<<<<<
@@ -202862,7 +217570,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject
__pyx_r = ((PyObject *)__pyx_v_dm);
goto __pyx_L0;
- /* "PETSc/DM.pyx":220
+ /* "PETSc/DM.pyx":240
* return dm
*
* def coarsen(self, comm=None): # <<<<<<<<<<<<<<
@@ -202883,7 +217591,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject
return __pyx_r;
}
-/* "PETSc/DM.pyx":230
+/* "PETSc/DM.pyx":250
* return dm
*
* def refineHierarchy(self, nlevels): # <<<<<<<<<<<<<<
@@ -202892,9 +217600,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_70coarsen(struct PyPetscDMObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_73refineHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_72refineHierarchy[] = "DM.refineHierarchy(self, nlevels)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_73refineHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81refineHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_80refineHierarchy[] = "DM.refineHierarchy(self, nlevels)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81refineHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_nlevels = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -202907,6 +217615,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_73refineHierarchy(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -202917,7 +217626,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_73refineHierarchy(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "refineHierarchy") < 0)) __PYX_ERR(40, 230, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "refineHierarchy") < 0)) __PYX_ERR(40, 250, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -202928,20 +217637,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_73refineHierarchy(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("refineHierarchy", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 230, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("refineHierarchy", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 250, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.refineHierarchy", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_nlevels);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_80refineHierarchy(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_nlevels);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_80refineHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels) {
PetscInt __pyx_v_i;
PetscInt __pyx_v_n;
DM *__pyx_v_newdmf;
@@ -202957,17 +217666,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
int __pyx_t_5;
__Pyx_RefNannySetupContext("refineHierarchy", 0);
- /* "PETSc/DM.pyx":231
+ /* "PETSc/DM.pyx":251
*
* def refineHierarchy(self, nlevels):
* cdef PetscInt i, n = asInt(nlevels) # <<<<<<<<<<<<<<
* cdef PetscDM *newdmf = NULL
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&newdmf)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nlevels); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 231, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nlevels); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 251, __pyx_L1_error)
__pyx_v_n = __pyx_t_1;
- /* "PETSc/DM.pyx":232
+ /* "PETSc/DM.pyx":252
* def refineHierarchy(self, nlevels):
* cdef PetscInt i, n = asInt(nlevels)
* cdef PetscDM *newdmf = NULL # <<<<<<<<<<<<<<
@@ -202976,31 +217685,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
*/
__pyx_v_newdmf = NULL;
- /* "PETSc/DM.pyx":233
+ /* "PETSc/DM.pyx":253
* cdef PetscInt i, n = asInt(nlevels)
* cdef PetscDM *newdmf = NULL
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&newdmf) # <<<<<<<<<<<<<<
* CHKERR( DMRefineHierarchy(self.dm, n, newdmf) )
* cdef DM dmf = None
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 233, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_2, NULL, ((void **)(&__pyx_v_newdmf)))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 233, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_2, NULL, ((void **)(&__pyx_v_newdmf)))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_tmp = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/DM.pyx":234
+ /* "PETSc/DM.pyx":254
* cdef PetscDM *newdmf = NULL
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&newdmf)
* CHKERR( DMRefineHierarchy(self.dm, n, newdmf) ) # <<<<<<<<<<<<<<
* cdef DM dmf = None
* cdef list hierarchy = []
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRefineHierarchy(__pyx_v_self->dm, __pyx_v_n, __pyx_v_newdmf)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(40, 234, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRefineHierarchy(__pyx_v_self->dm, __pyx_v_n, __pyx_v_newdmf)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 254, __pyx_L1_error)
- /* "PETSc/DM.pyx":235
+ /* "PETSc/DM.pyx":255
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&newdmf)
* CHKERR( DMRefineHierarchy(self.dm, n, newdmf) )
* cdef DM dmf = None # <<<<<<<<<<<<<<
@@ -203010,19 +217719,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
__Pyx_INCREF(Py_None);
__pyx_v_dmf = ((struct PyPetscDMObject *)Py_None);
- /* "PETSc/DM.pyx":236
+ /* "PETSc/DM.pyx":256
* CHKERR( DMRefineHierarchy(self.dm, n, newdmf) )
* cdef DM dmf = None
* cdef list hierarchy = [] # <<<<<<<<<<<<<<
* for i from 0 <= i < n:
* dmf = subtype_DM(newdmf[i])()
*/
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 236, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 256, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_hierarchy = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/DM.pyx":237
+ /* "PETSc/DM.pyx":257
* cdef DM dmf = None
* cdef list hierarchy = []
* for i from 0 <= i < n: # <<<<<<<<<<<<<<
@@ -203032,23 +217741,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
__pyx_t_1 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_1; __pyx_v_i++) {
- /* "PETSc/DM.pyx":238
+ /* "PETSc/DM.pyx":258
* cdef list hierarchy = []
* for i from 0 <= i < n:
* dmf = subtype_DM(newdmf[i])() # <<<<<<<<<<<<<<
* dmf.dm = newdmf[i]
* hierarchy.append(dmf)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM((__pyx_v_newdmf[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 238, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM((__pyx_v_newdmf[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 238, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 258, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 238, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 258, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_dmf, ((struct PyPetscDMObject *)__pyx_t_2));
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":239
+ /* "PETSc/DM.pyx":259
* for i from 0 <= i < n:
* dmf = subtype_DM(newdmf[i])()
* dmf.dm = newdmf[i] # <<<<<<<<<<<<<<
@@ -203057,17 +217766,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
*/
__pyx_v_dmf->dm = (__pyx_v_newdmf[__pyx_v_i]);
- /* "PETSc/DM.pyx":240
+ /* "PETSc/DM.pyx":260
* dmf = subtype_DM(newdmf[i])()
* dmf.dm = newdmf[i]
* hierarchy.append(dmf) # <<<<<<<<<<<<<<
* return hierarchy
*
*/
- __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_hierarchy, ((PyObject *)__pyx_v_dmf)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(40, 240, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_hierarchy, ((PyObject *)__pyx_v_dmf)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(40, 260, __pyx_L1_error)
}
- /* "PETSc/DM.pyx":241
+ /* "PETSc/DM.pyx":261
* dmf.dm = newdmf[i]
* hierarchy.append(dmf)
* return hierarchy # <<<<<<<<<<<<<<
@@ -203079,7 +217788,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
__pyx_r = __pyx_v_hierarchy;
goto __pyx_L0;
- /* "PETSc/DM.pyx":230
+ /* "PETSc/DM.pyx":250
* return dm
*
* def refineHierarchy(self, nlevels): # <<<<<<<<<<<<<<
@@ -203102,7 +217811,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
return __pyx_r;
}
-/* "PETSc/DM.pyx":243
+/* "PETSc/DM.pyx":263
* return hierarchy
*
* def coarsenHierarchy(self, nlevels): # <<<<<<<<<<<<<<
@@ -203111,9 +217820,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_72refineHierarchy(struct PyPetscD
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_75coarsenHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_74coarsenHierarchy[] = "DM.coarsenHierarchy(self, nlevels)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_75coarsenHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_83coarsenHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_82coarsenHierarchy[] = "DM.coarsenHierarchy(self, nlevels)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_83coarsenHierarchy(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_nlevels = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -203126,6 +217835,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_75coarsenHierarchy(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -203136,7 +217846,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_75coarsenHierarchy(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "coarsenHierarchy") < 0)) __PYX_ERR(40, 243, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "coarsenHierarchy") < 0)) __PYX_ERR(40, 263, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -203147,20 +217857,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_75coarsenHierarchy(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("coarsenHierarchy", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 243, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("coarsenHierarchy", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 263, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.coarsenHierarchy", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_nlevels);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_82coarsenHierarchy(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_nlevels);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_82coarsenHierarchy(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_nlevels) {
PetscInt __pyx_v_i;
PetscInt __pyx_v_n;
DM *__pyx_v_newdmc;
@@ -203176,17 +217886,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetsc
int __pyx_t_5;
__Pyx_RefNannySetupContext("coarsenHierarchy", 0);
- /* "PETSc/DM.pyx":244
+ /* "PETSc/DM.pyx":264
*
* def coarsenHierarchy(self, nlevels):
* cdef PetscInt i, n = asInt(nlevels) # <<<<<<<<<<<<<<
* cdef PetscDM *newdmc = NULL
* cdef object tmp = oarray_p(empty_p(n),NULL, <void**>&newdmc)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nlevels); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 244, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nlevels); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 264, __pyx_L1_error)
__pyx_v_n = __pyx_t_1;
- /* "PETSc/DM.pyx":245
+ /* "PETSc/DM.pyx":265
* def coarsenHierarchy(self, nlevels):
* cdef PetscInt i, n = asInt(nlevels)
* cdef PetscDM *newdmc = NULL # <<<<<<<<<<<<<<
@@ -203195,31 +217905,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetsc
*/
__pyx_v_newdmc = NULL;
- /* "PETSc/DM.pyx":246
+ /* "PETSc/DM.pyx":266
* cdef PetscInt i, n = asInt(nlevels)
* cdef PetscDM *newdmc = NULL
* cdef object tmp = oarray_p(empty_p(n),NULL, <void**>&newdmc) # <<<<<<<<<<<<<<
* CHKERR( DMCoarsenHierarchy(self.dm, n, newdmc) )
* cdef DM dmc = None
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 246, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_n)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 266, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_2, NULL, ((void **)(&__pyx_v_newdmc)))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 246, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_2, NULL, ((void **)(&__pyx_v_newdmc)))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 266, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_tmp = __pyx_t_3;
__pyx_t_3 = 0;
- /* "PETSc/DM.pyx":247
+ /* "PETSc/DM.pyx":267
* cdef PetscDM *newdmc = NULL
* cdef object tmp = oarray_p(empty_p(n),NULL, <void**>&newdmc)
* CHKERR( DMCoarsenHierarchy(self.dm, n, newdmc) ) # <<<<<<<<<<<<<<
* cdef DM dmc = None
* cdef list hierarchy = []
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCoarsenHierarchy(__pyx_v_self->dm, __pyx_v_n, __pyx_v_newdmc)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(40, 247, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCoarsenHierarchy(__pyx_v_self->dm, __pyx_v_n, __pyx_v_newdmc)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 267, __pyx_L1_error)
- /* "PETSc/DM.pyx":248
+ /* "PETSc/DM.pyx":268
* cdef object tmp = oarray_p(empty_p(n),NULL, <void**>&newdmc)
* CHKERR( DMCoarsenHierarchy(self.dm, n, newdmc) )
* cdef DM dmc = None # <<<<<<<<<<<<<<
@@ -203229,19 +217939,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetsc
__Pyx_INCREF(Py_None);
__pyx_v_dmc = ((struct PyPetscDMObject *)Py_None);
- /* "PETSc/DM.pyx":249
+ /* "PETSc/DM.pyx":269
* CHKERR( DMCoarsenHierarchy(self.dm, n, newdmc) )
* cdef DM dmc = None
* cdef list hierarchy = [] # <<<<<<<<<<<<<<
* for i from 0 <= i < n:
* dmc = subtype_DM(newdmc[i])()
*/
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 249, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 269, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_hierarchy = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/DM.pyx":250
+ /* "PETSc/DM.pyx":270
* cdef DM dmc = None
* cdef list hierarchy = []
* for i from 0 <= i < n: # <<<<<<<<<<<<<<
@@ -203251,23 +217961,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetsc
__pyx_t_1 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_1; __pyx_v_i++) {
- /* "PETSc/DM.pyx":251
+ /* "PETSc/DM.pyx":271
* cdef list hierarchy = []
* for i from 0 <= i < n:
* dmc = subtype_DM(newdmc[i])() # <<<<<<<<<<<<<<
* dmc.dm = newdmc[i]
* hierarchy.append(dmc)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM((__pyx_v_newdmc[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 251, __pyx_L1_error)
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM((__pyx_v_newdmc[__pyx_v_i]))); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 271, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 251, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 271, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 251, __pyx_L1_error)
+ if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 271, __pyx_L1_error)
__Pyx_DECREF_SET(__pyx_v_dmc, ((struct PyPetscDMObject *)__pyx_t_2));
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":252
+ /* "PETSc/DM.pyx":272
* for i from 0 <= i < n:
* dmc = subtype_DM(newdmc[i])()
* dmc.dm = newdmc[i] # <<<<<<<<<<<<<<
@@ -203276,29 +217986,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetsc
*/
__pyx_v_dmc->dm = (__pyx_v_newdmc[__pyx_v_i]);
- /* "PETSc/DM.pyx":253
+ /* "PETSc/DM.pyx":273
* dmc = subtype_DM(newdmc[i])()
* dmc.dm = newdmc[i]
* hierarchy.append(dmc) # <<<<<<<<<<<<<<
* return hierarchy
*
*/
- __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_hierarchy, ((PyObject *)__pyx_v_dmc)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(40, 253, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_hierarchy, ((PyObject *)__pyx_v_dmc)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(40, 273, __pyx_L1_error)
}
- /* "PETSc/DM.pyx":254
+ /* "PETSc/DM.pyx":274
* dmc.dm = newdmc[i]
* hierarchy.append(dmc)
* return hierarchy # <<<<<<<<<<<<<<
*
- * #
+ * def getRefineLevel(self):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_hierarchy);
__pyx_r = __pyx_v_hierarchy;
goto __pyx_L0;
- /* "PETSc/DM.pyx":243
+ /* "PETSc/DM.pyx":263
* return hierarchy
*
* def coarsenHierarchy(self, nlevels): # <<<<<<<<<<<<<<
@@ -203321,18 +218031,651 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_74coarsenHierarchy(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/DM.pyx":258
+/* "PETSc/DM.pyx":276
+ * return hierarchy
+ *
+ * def getRefineLevel(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetRefineLevel(self.dm, &n) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85getRefineLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_84getRefineLevel[] = "DM.getRefineLevel(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85getRefineLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getRefineLevel (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getRefineLevel", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRefineLevel", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_84getRefineLevel(((struct PyPetscDMObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_84getRefineLevel(struct PyPetscDMObject *__pyx_v_self) {
+ PetscInt __pyx_v_n;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getRefineLevel", 0);
+
+ /* "PETSc/DM.pyx":277
+ *
+ * def getRefineLevel(self):
+ * cdef PetscInt n = 0 # <<<<<<<<<<<<<<
+ * CHKERR( DMGetRefineLevel(self.dm, &n) )
+ * return toInt(n)
+ */
+ __pyx_v_n = 0;
+
+ /* "PETSc/DM.pyx":278
+ * def getRefineLevel(self):
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetRefineLevel(self.dm, &n) ) # <<<<<<<<<<<<<<
+ * return toInt(n)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetRefineLevel(__pyx_v_self->dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 278, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":279
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetRefineLevel(self.dm, &n) )
+ * return toInt(n) # <<<<<<<<<<<<<<
+ *
+ * def setRefineLevel(self, level):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 279, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DM.pyx":276
+ * return hierarchy
+ *
+ * def getRefineLevel(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetRefineLevel(self.dm, &n) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.getRefineLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":281
+ * return toInt(n)
+ *
+ * def setRefineLevel(self, level): # <<<<<<<<<<<<<<
+ * cdef PetscInt clevel = asInt(level)
+ * CHKERR( DMSetRefineLevel(self.dm, clevel) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_87setRefineLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_86setRefineLevel[] = "DM.setRefineLevel(self, level)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_87setRefineLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_level = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setRefineLevel (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_level,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRefineLevel") < 0)) __PYX_ERR(40, 281, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_level = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setRefineLevel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 281, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setRefineLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_86setRefineLevel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_level);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86setRefineLevel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_level) {
+ PetscInt __pyx_v_clevel;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setRefineLevel", 0);
+
+ /* "PETSc/DM.pyx":282
+ *
+ * def setRefineLevel(self, level):
+ * cdef PetscInt clevel = asInt(level) # <<<<<<<<<<<<<<
+ * CHKERR( DMSetRefineLevel(self.dm, clevel) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_level); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 282, __pyx_L1_error)
+ __pyx_v_clevel = __pyx_t_1;
+
+ /* "PETSc/DM.pyx":283
+ * def setRefineLevel(self, level):
+ * cdef PetscInt clevel = asInt(level)
+ * CHKERR( DMSetRefineLevel(self.dm, clevel) ) # <<<<<<<<<<<<<<
+ *
+ * def getCoarsenLevel(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetRefineLevel(__pyx_v_self->dm, __pyx_v_clevel)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 283, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":281
+ * return toInt(n)
+ *
+ * def setRefineLevel(self, level): # <<<<<<<<<<<<<<
+ * cdef PetscInt clevel = asInt(level)
+ * CHKERR( DMSetRefineLevel(self.dm, clevel) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setRefineLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":285
+ * CHKERR( DMSetRefineLevel(self.dm, clevel) )
+ *
+ * def getCoarsenLevel(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetCoarsenLevel(self.dm, &n) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_89getCoarsenLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_88getCoarsenLevel[] = "DM.getCoarsenLevel(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_89getCoarsenLevel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getCoarsenLevel (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getCoarsenLevel", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCoarsenLevel", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_88getCoarsenLevel(((struct PyPetscDMObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_88getCoarsenLevel(struct PyPetscDMObject *__pyx_v_self) {
+ PetscInt __pyx_v_n;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getCoarsenLevel", 0);
+
+ /* "PETSc/DM.pyx":286
+ *
+ * def getCoarsenLevel(self):
+ * cdef PetscInt n = 0 # <<<<<<<<<<<<<<
+ * CHKERR( DMGetCoarsenLevel(self.dm, &n) )
+ * return toInt(n)
+ */
+ __pyx_v_n = 0;
+
+ /* "PETSc/DM.pyx":287
+ * def getCoarsenLevel(self):
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetCoarsenLevel(self.dm, &n) ) # <<<<<<<<<<<<<<
+ * return toInt(n)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetCoarsenLevel(__pyx_v_self->dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 287, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":288
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetCoarsenLevel(self.dm, &n) )
+ * return toInt(n) # <<<<<<<<<<<<<<
+ *
+ * #
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_n); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 288, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DM.pyx":285
+ * CHKERR( DMSetRefineLevel(self.dm, clevel) )
+ *
+ * def getCoarsenLevel(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt n = 0
+ * CHKERR( DMGetCoarsenLevel(self.dm, &n) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.getCoarsenLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":292
+ * #
+ *
+ * def adaptLabel(self, label): # <<<<<<<<<<<<<<
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91adaptLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_90adaptLabel[] = "DM.adaptLabel(self, label)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91adaptLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_label = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("adaptLabel (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_label,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_label)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "adaptLabel") < 0)) __PYX_ERR(40, 292, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_label = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("adaptLabel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 292, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.adaptLabel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_90adaptLabel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_label);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_90adaptLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_label) {
+ const char *__pyx_v_cval;
+ DMLabel __pyx_v_clbl;
+ struct PyPetscDMObject *__pyx_v_newdm = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("adaptLabel", 0);
+ __Pyx_INCREF(__pyx_v_label);
+
+ /* "PETSc/DM.pyx":293
+ *
+ * def adaptLabel(self, label):
+ * cdef const_char *cval = NULL # <<<<<<<<<<<<<<
+ * cdef PetscDMLabel clbl = NULL
+ * label = str2bytes(label, &cval)
+ */
+ __pyx_v_cval = NULL;
+
+ /* "PETSc/DM.pyx":294
+ * def adaptLabel(self, label):
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL # <<<<<<<<<<<<<<
+ * label = str2bytes(label, &cval)
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ */
+ __pyx_v_clbl = NULL;
+
+ /* "PETSc/DM.pyx":295
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL
+ * label = str2bytes(label, &cval) # <<<<<<<<<<<<<<
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ * cdef DM newdm = DMPlex()
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_label, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 295, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_label, __pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/DM.pyx":296
+ * cdef PetscDMLabel clbl = NULL
+ * label = str2bytes(label, &cval)
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) ) # <<<<<<<<<<<<<<
+ * cdef DM newdm = DMPlex()
+ * CHKERR( DMAdaptLabel(self.dm, clbl, &newdm.dm) )
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabel(__pyx_v_self->dm, __pyx_v_cval, (&__pyx_v_clbl))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 296, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":297
+ * label = str2bytes(label, &cval)
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ * cdef DM newdm = DMPlex() # <<<<<<<<<<<<<<
+ * CHKERR( DMAdaptLabel(self.dm, clbl, &newdm.dm) )
+ * return newdm
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_DMPlex), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 297, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_newdm = ((struct PyPetscDMObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/DM.pyx":298
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ * cdef DM newdm = DMPlex()
+ * CHKERR( DMAdaptLabel(self.dm, clbl, &newdm.dm) ) # <<<<<<<<<<<<<<
+ * return newdm
+ *
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMAdaptLabel(__pyx_v_self->dm, __pyx_v_clbl, (&__pyx_v_newdm->dm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 298, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":299
+ * cdef DM newdm = DMPlex()
+ * CHKERR( DMAdaptLabel(self.dm, clbl, &newdm.dm) )
+ * return newdm # <<<<<<<<<<<<<<
+ *
+ * def adaptMetric(self, Vec metric, label=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_newdm));
+ __pyx_r = ((PyObject *)__pyx_v_newdm);
+ goto __pyx_L0;
+
+ /* "PETSc/DM.pyx":292
+ * #
+ *
+ * def adaptLabel(self, label): # <<<<<<<<<<<<<<
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.adaptLabel", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_newdm);
+ __Pyx_XDECREF(__pyx_v_label);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":301
+ * return newdm
+ *
+ * def adaptMetric(self, Vec metric, label=None): # <<<<<<<<<<<<<<
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_93adaptMetric(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_92adaptMetric[] = "DM.adaptMetric(self, Vec metric, label=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_93adaptMetric(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscVecObject *__pyx_v_metric = 0;
+ PyObject *__pyx_v_label = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("adaptMetric (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_metric,&__pyx_n_s_label,0};
+ PyObject* values[2] = {0,0};
+ values[1] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_metric)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_label);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "adaptMetric") < 0)) __PYX_ERR(40, 301, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_metric = ((struct PyPetscVecObject *)values[0]);
+ __pyx_v_label = values[1];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("adaptMetric", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 301, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.adaptMetric", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_metric), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "metric", 0))) __PYX_ERR(40, 301, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_92adaptMetric(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_metric, __pyx_v_label);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92adaptMetric(struct PyPetscDMObject *__pyx_v_self, struct PyPetscVecObject *__pyx_v_metric, PyObject *__pyx_v_label) {
+ const char *__pyx_v_cval;
+ DMLabel __pyx_v_clbl;
+ struct PyPetscDMObject *__pyx_v_newdm = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ int __pyx_t_3;
+ __Pyx_RefNannySetupContext("adaptMetric", 0);
+ __Pyx_INCREF(__pyx_v_label);
+
+ /* "PETSc/DM.pyx":302
+ *
+ * def adaptMetric(self, Vec metric, label=None):
+ * cdef const_char *cval = NULL # <<<<<<<<<<<<<<
+ * cdef PetscDMLabel clbl = NULL
+ * label = str2bytes(label, &cval)
+ */
+ __pyx_v_cval = NULL;
+
+ /* "PETSc/DM.pyx":303
+ * def adaptMetric(self, Vec metric, label=None):
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL # <<<<<<<<<<<<<<
+ * label = str2bytes(label, &cval)
+ * if cval == NULL: cval = b"" # XXX Should be fixed upstream
+ */
+ __pyx_v_clbl = NULL;
+
+ /* "PETSc/DM.pyx":304
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL
+ * label = str2bytes(label, &cval) # <<<<<<<<<<<<<<
+ * if cval == NULL: cval = b"" # XXX Should be fixed upstream
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_label, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 304, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_label, __pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/DM.pyx":305
+ * cdef PetscDMLabel clbl = NULL
+ * label = str2bytes(label, &cval)
+ * if cval == NULL: cval = b"" # XXX Should be fixed upstream # <<<<<<<<<<<<<<
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ * cdef DM newdm = DMPlex()
+ */
+ __pyx_t_2 = ((__pyx_v_cval == NULL) != 0);
+ if (__pyx_t_2) {
+ __pyx_v_cval = ((const char *)"");
+ }
+
+ /* "PETSc/DM.pyx":306
+ * label = str2bytes(label, &cval)
+ * if cval == NULL: cval = b"" # XXX Should be fixed upstream
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) ) # <<<<<<<<<<<<<<
+ * cdef DM newdm = DMPlex()
+ * CHKERR( DMAdaptMetric(self.dm, metric.vec, clbl, &newdm.dm) )
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabel(__pyx_v_self->dm, __pyx_v_cval, (&__pyx_v_clbl))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 306, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":307
+ * if cval == NULL: cval = b"" # XXX Should be fixed upstream
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ * cdef DM newdm = DMPlex() # <<<<<<<<<<<<<<
+ * CHKERR( DMAdaptMetric(self.dm, metric.vec, clbl, &newdm.dm) )
+ * return newdm
+ */
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_DMPlex), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 307, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_v_newdm = ((struct PyPetscDMObject *)__pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/DM.pyx":308
+ * CHKERR( DMGetLabel(self.dm, cval, &clbl) )
+ * cdef DM newdm = DMPlex()
+ * CHKERR( DMAdaptMetric(self.dm, metric.vec, clbl, &newdm.dm) ) # <<<<<<<<<<<<<<
+ * return newdm
+ *
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMAdaptMetric(__pyx_v_self->dm, __pyx_v_metric->vec, __pyx_v_clbl, (&__pyx_v_newdm->dm))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 308, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":309
+ * cdef DM newdm = DMPlex()
+ * CHKERR( DMAdaptMetric(self.dm, metric.vec, clbl, &newdm.dm) )
+ * return newdm # <<<<<<<<<<<<<<
+ *
* #
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_newdm));
+ __pyx_r = ((PyObject *)__pyx_v_newdm);
+ goto __pyx_L0;
+
+ /* "PETSc/DM.pyx":301
+ * return newdm
*
- * def setDefaultSection(self, Section sec not None): # <<<<<<<<<<<<<<
+ * def adaptMetric(self, Vec metric, label=None): # <<<<<<<<<<<<<<
+ * cdef const_char *cval = NULL
+ * cdef PetscDMLabel clbl = NULL
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.adaptMetric", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_newdm);
+ __Pyx_XDECREF(__pyx_v_label);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":313
+ * #
+ *
+ * def setDefaultSection(self, Section sec): # <<<<<<<<<<<<<<
* CHKERR( DMSetDefaultSection(self.dm, sec.sec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77setDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_76setDefaultSection[] = "DM.setDefaultSection(self, Section sec)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77setDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_95setDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_94setDefaultSection[] = "DM.setDefaultSection(self, Section sec)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_95setDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscSectionObject *__pyx_v_sec = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -203345,6 +218688,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77setDefaultSection(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -203355,7 +218699,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77setDefaultSection(PyObject *__p
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDefaultSection") < 0)) __PYX_ERR(40, 258, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDefaultSection") < 0)) __PYX_ERR(40, 313, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -203366,14 +218710,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77setDefaultSection(PyObject *__p
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDefaultSection", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 258, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDefaultSection", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 313, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setDefaultSection", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "sec", 0))) __PYX_ERR(40, 258, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_76setDefaultSection(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_sec);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "sec", 0))) __PYX_ERR(40, 313, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_94setDefaultSection(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_sec);
/* function exit code */
goto __pyx_L0;
@@ -203384,25 +218728,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_77setDefaultSection(PyObject *__p
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_76setDefaultSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94setDefaultSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setDefaultSection", 0);
- /* "PETSc/DM.pyx":259
+ /* "PETSc/DM.pyx":314
*
- * def setDefaultSection(self, Section sec not None):
+ * def setDefaultSection(self, Section sec):
* CHKERR( DMSetDefaultSection(self.dm, sec.sec) ) # <<<<<<<<<<<<<<
*
* def getDefaultSection(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDefaultSection(__pyx_v_self->dm, __pyx_v_sec->sec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 259, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDefaultSection(__pyx_v_self->dm, __pyx_v_sec->sec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 314, __pyx_L1_error)
- /* "PETSc/DM.pyx":258
+ /* "PETSc/DM.pyx":313
* #
*
- * def setDefaultSection(self, Section sec not None): # <<<<<<<<<<<<<<
+ * def setDefaultSection(self, Section sec): # <<<<<<<<<<<<<<
* CHKERR( DMSetDefaultSection(self.dm, sec.sec) )
*
*/
@@ -203419,7 +218763,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_76setDefaultSection(struct PyPets
return __pyx_r;
}
-/* "PETSc/DM.pyx":261
+/* "PETSc/DM.pyx":316
* CHKERR( DMSetDefaultSection(self.dm, sec.sec) )
*
* def getDefaultSection(self): # <<<<<<<<<<<<<<
@@ -203428,23 +218772,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_76setDefaultSection(struct PyPets
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_79getDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_78getDefaultSection[] = "DM.getDefaultSection(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_79getDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_97getDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_96getDefaultSection[] = "DM.getDefaultSection(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_97getDefaultSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDefaultSection (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDefaultSection", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDefaultSection", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_78getDefaultSection(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_96getDefaultSection(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_78getDefaultSection(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96getDefaultSection(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscSectionObject *__pyx_v_sec = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -203452,28 +218796,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_78getDefaultSection(struct PyPets
int __pyx_t_2;
__Pyx_RefNannySetupContext("getDefaultSection", 0);
- /* "PETSc/DM.pyx":262
+ /* "PETSc/DM.pyx":317
*
* def getDefaultSection(self):
* cdef Section sec = Section() # <<<<<<<<<<<<<<
* CHKERR( DMGetDefaultSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 262, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 317, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_sec = ((struct PyPetscSectionObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":263
+ /* "PETSc/DM.pyx":318
* def getDefaultSection(self):
* cdef Section sec = Section()
* CHKERR( DMGetDefaultSection(self.dm, &sec.sec) ) # <<<<<<<<<<<<<<
* PetscINCREF(sec.obj)
* return sec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDefaultSection(__pyx_v_self->dm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 263, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDefaultSection(__pyx_v_self->dm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 318, __pyx_L1_error)
- /* "PETSc/DM.pyx":264
+ /* "PETSc/DM.pyx":319
* cdef Section sec = Section()
* CHKERR( DMGetDefaultSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj) # <<<<<<<<<<<<<<
@@ -203482,19 +218826,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_78getDefaultSection(struct PyPets
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_sec->__pyx_base.obj);
- /* "PETSc/DM.pyx":265
+ /* "PETSc/DM.pyx":320
* CHKERR( DMGetDefaultSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj)
* return sec # <<<<<<<<<<<<<<
*
- * def setDefaultGlobalSection(self, Section sec not None):
+ * def setDefaultGlobalSection(self, Section sec):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_sec));
__pyx_r = ((PyObject *)__pyx_v_sec);
goto __pyx_L0;
- /* "PETSc/DM.pyx":261
+ /* "PETSc/DM.pyx":316
* CHKERR( DMSetDefaultSection(self.dm, sec.sec) )
*
* def getDefaultSection(self): # <<<<<<<<<<<<<<
@@ -203514,18 +218858,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_78getDefaultSection(struct PyPets
return __pyx_r;
}
-/* "PETSc/DM.pyx":267
+/* "PETSc/DM.pyx":322
* return sec
*
- * def setDefaultGlobalSection(self, Section sec not None): # <<<<<<<<<<<<<<
+ * def setDefaultGlobalSection(self, Section sec): # <<<<<<<<<<<<<<
* CHKERR( DMSetDefaultGlobalSection(self.dm, sec.sec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81setDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_80setDefaultGlobalSection[] = "DM.setDefaultGlobalSection(self, Section sec)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81setDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_99setDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_98setDefaultGlobalSection[] = "DM.setDefaultGlobalSection(self, Section sec)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_99setDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscSectionObject *__pyx_v_sec = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -203538,6 +218882,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81setDefaultGlobalSection(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -203548,7 +218893,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81setDefaultGlobalSection(PyObjec
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDefaultGlobalSection") < 0)) __PYX_ERR(40, 267, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setDefaultGlobalSection") < 0)) __PYX_ERR(40, 322, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -203559,14 +218904,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81setDefaultGlobalSection(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setDefaultGlobalSection", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 267, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setDefaultGlobalSection", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 322, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setDefaultGlobalSection", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "sec", 0))) __PYX_ERR(40, 267, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_80setDefaultGlobalSection(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_sec);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "sec", 0))) __PYX_ERR(40, 322, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_98setDefaultGlobalSection(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_sec);
/* function exit code */
goto __pyx_L0;
@@ -203577,25 +218922,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_81setDefaultGlobalSection(PyObjec
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_80setDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98setDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setDefaultGlobalSection", 0);
- /* "PETSc/DM.pyx":268
+ /* "PETSc/DM.pyx":323
*
- * def setDefaultGlobalSection(self, Section sec not None):
+ * def setDefaultGlobalSection(self, Section sec):
* CHKERR( DMSetDefaultGlobalSection(self.dm, sec.sec) ) # <<<<<<<<<<<<<<
*
* def getDefaultGlobalSection(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDefaultGlobalSection(__pyx_v_self->dm, __pyx_v_sec->sec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 268, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDefaultGlobalSection(__pyx_v_self->dm, __pyx_v_sec->sec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 323, __pyx_L1_error)
- /* "PETSc/DM.pyx":267
+ /* "PETSc/DM.pyx":322
* return sec
*
- * def setDefaultGlobalSection(self, Section sec not None): # <<<<<<<<<<<<<<
+ * def setDefaultGlobalSection(self, Section sec): # <<<<<<<<<<<<<<
* CHKERR( DMSetDefaultGlobalSection(self.dm, sec.sec) )
*
*/
@@ -203612,7 +218957,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_80setDefaultGlobalSection(struct
return __pyx_r;
}
-/* "PETSc/DM.pyx":270
+/* "PETSc/DM.pyx":325
* CHKERR( DMSetDefaultGlobalSection(self.dm, sec.sec) )
*
* def getDefaultGlobalSection(self): # <<<<<<<<<<<<<<
@@ -203621,23 +218966,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_80setDefaultGlobalSection(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_83getDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection[] = "DM.getDefaultGlobalSection(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_83getDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_101getDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_100getDefaultGlobalSection[] = "DM.getDefaultGlobalSection(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_101getDefaultGlobalSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDefaultGlobalSection (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDefaultGlobalSection", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDefaultGlobalSection", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_100getDefaultGlobalSection(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100getDefaultGlobalSection(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscSectionObject *__pyx_v_sec = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -203645,28 +218990,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("getDefaultGlobalSection", 0);
- /* "PETSc/DM.pyx":271
+ /* "PETSc/DM.pyx":326
*
* def getDefaultGlobalSection(self):
* cdef Section sec = Section() # <<<<<<<<<<<<<<
* CHKERR( DMGetDefaultGlobalSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 271, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_sec = ((struct PyPetscSectionObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":272
+ /* "PETSc/DM.pyx":327
* def getDefaultGlobalSection(self):
* cdef Section sec = Section()
* CHKERR( DMGetDefaultGlobalSection(self.dm, &sec.sec) ) # <<<<<<<<<<<<<<
* PetscINCREF(sec.obj)
* return sec
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDefaultGlobalSection(__pyx_v_self->dm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 272, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDefaultGlobalSection(__pyx_v_self->dm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 327, __pyx_L1_error)
- /* "PETSc/DM.pyx":273
+ /* "PETSc/DM.pyx":328
* cdef Section sec = Section()
* CHKERR( DMGetDefaultGlobalSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj) # <<<<<<<<<<<<<<
@@ -203675,19 +219020,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection(struct
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_sec->__pyx_base.obj);
- /* "PETSc/DM.pyx":274
+ /* "PETSc/DM.pyx":329
* CHKERR( DMGetDefaultGlobalSection(self.dm, &sec.sec) )
* PetscINCREF(sec.obj)
* return sec # <<<<<<<<<<<<<<
*
- * def createDefaultSF(self, Section localsec not None, Section globalsec not None):
+ * def createDefaultSF(self, Section localsec, Section globalsec):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_sec));
__pyx_r = ((PyObject *)__pyx_v_sec);
goto __pyx_L0;
- /* "PETSc/DM.pyx":270
+ /* "PETSc/DM.pyx":325
* CHKERR( DMSetDefaultGlobalSection(self.dm, sec.sec) )
*
* def getDefaultGlobalSection(self): # <<<<<<<<<<<<<<
@@ -203707,18 +219052,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection(struct
return __pyx_r;
}
-/* "PETSc/DM.pyx":276
+/* "PETSc/DM.pyx":331
* return sec
*
- * def createDefaultSF(self, Section localsec not None, Section globalsec not None): # <<<<<<<<<<<<<<
+ * def createDefaultSF(self, Section localsec, Section globalsec): # <<<<<<<<<<<<<<
* CHKERR( DMCreateDefaultSF(self.dm, localsec.sec, globalsec.sec) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85createDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_84createDefaultSF[] = "DM.createDefaultSF(self, Section localsec, Section globalsec)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85createDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_103createDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_102createDefaultSF[] = "DM.createDefaultSF(self, Section localsec, Section globalsec)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_103createDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscSectionObject *__pyx_v_localsec = 0;
struct PyPetscSectionObject *__pyx_v_globalsec = 0;
PyObject *__pyx_r = 0;
@@ -203732,7 +219077,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85createDefaultSF(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -203741,14 +219088,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85createDefaultSF(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_localsec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_globalsec)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createDefaultSF", 1, 2, 2, 1); __PYX_ERR(40, 276, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createDefaultSF", 1, 2, 2, 1); __PYX_ERR(40, 331, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createDefaultSF") < 0)) __PYX_ERR(40, 276, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createDefaultSF") < 0)) __PYX_ERR(40, 331, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -203761,15 +219109,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85createDefaultSF(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createDefaultSF", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 276, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createDefaultSF", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 331, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.createDefaultSF", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_localsec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "localsec", 0))) __PYX_ERR(40, 276, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_globalsec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "globalsec", 0))) __PYX_ERR(40, 276, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_84createDefaultSF(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_localsec, __pyx_v_globalsec);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_localsec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "localsec", 0))) __PYX_ERR(40, 331, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_globalsec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "globalsec", 0))) __PYX_ERR(40, 331, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_102createDefaultSF(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_localsec, __pyx_v_globalsec);
/* function exit code */
goto __pyx_L0;
@@ -203780,25 +219128,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_85createDefaultSF(PyObject *__pyx
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_84createDefaultSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_localsec, struct PyPetscSectionObject *__pyx_v_globalsec) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102createDefaultSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_localsec, struct PyPetscSectionObject *__pyx_v_globalsec) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("createDefaultSF", 0);
- /* "PETSc/DM.pyx":277
+ /* "PETSc/DM.pyx":332
*
- * def createDefaultSF(self, Section localsec not None, Section globalsec not None):
+ * def createDefaultSF(self, Section localsec, Section globalsec):
* CHKERR( DMCreateDefaultSF(self.dm, localsec.sec, globalsec.sec) ) # <<<<<<<<<<<<<<
*
* def getDefaultSF(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateDefaultSF(__pyx_v_self->dm, __pyx_v_localsec->sec, __pyx_v_globalsec->sec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 277, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateDefaultSF(__pyx_v_self->dm, __pyx_v_localsec->sec, __pyx_v_globalsec->sec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 332, __pyx_L1_error)
- /* "PETSc/DM.pyx":276
+ /* "PETSc/DM.pyx":331
* return sec
*
- * def createDefaultSF(self, Section localsec not None, Section globalsec not None): # <<<<<<<<<<<<<<
+ * def createDefaultSF(self, Section localsec, Section globalsec): # <<<<<<<<<<<<<<
* CHKERR( DMCreateDefaultSF(self.dm, localsec.sec, globalsec.sec) )
*
*/
@@ -203815,7 +219163,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_84createDefaultSF(struct PyPetscD
return __pyx_r;
}
-/* "PETSc/DM.pyx":279
+/* "PETSc/DM.pyx":334
* CHKERR( DMCreateDefaultSF(self.dm, localsec.sec, globalsec.sec) )
*
* def getDefaultSF(self): # <<<<<<<<<<<<<<
@@ -203824,23 +219172,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_84createDefaultSF(struct PyPetscD
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_87getDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_86getDefaultSF[] = "DM.getDefaultSF(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_87getDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_105getDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_104getDefaultSF[] = "DM.getDefaultSF(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_105getDefaultSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDefaultSF (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDefaultSF", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDefaultSF", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_104getDefaultSF(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104getDefaultSF(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscSFObject *__pyx_v_sf = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -203848,28 +219196,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(struct PyPetscDMOb
int __pyx_t_2;
__Pyx_RefNannySetupContext("getDefaultSF", 0);
- /* "PETSc/DM.pyx":280
+ /* "PETSc/DM.pyx":335
*
* def getDefaultSF(self):
* cdef SF sf = SF() # <<<<<<<<<<<<<<
* CHKERR( DMGetDefaultSF(self.dm, &sf.sf) )
* PetscINCREF(sf.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 280, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 335, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_sf = ((struct PyPetscSFObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":281
+ /* "PETSc/DM.pyx":336
* def getDefaultSF(self):
* cdef SF sf = SF()
* CHKERR( DMGetDefaultSF(self.dm, &sf.sf) ) # <<<<<<<<<<<<<<
* PetscINCREF(sf.obj)
* return sf
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDefaultSF(__pyx_v_self->dm, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 281, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDefaultSF(__pyx_v_self->dm, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 336, __pyx_L1_error)
- /* "PETSc/DM.pyx":282
+ /* "PETSc/DM.pyx":337
* cdef SF sf = SF()
* CHKERR( DMGetDefaultSF(self.dm, &sf.sf) )
* PetscINCREF(sf.obj) # <<<<<<<<<<<<<<
@@ -203878,7 +219226,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(struct PyPetscDMOb
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_sf->__pyx_base.obj);
- /* "PETSc/DM.pyx":283
+ /* "PETSc/DM.pyx":338
* CHKERR( DMGetDefaultSF(self.dm, &sf.sf) )
* PetscINCREF(sf.obj)
* return sf # <<<<<<<<<<<<<<
@@ -203890,7 +219238,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(struct PyPetscDMOb
__pyx_r = ((PyObject *)__pyx_v_sf);
goto __pyx_L0;
- /* "PETSc/DM.pyx":279
+ /* "PETSc/DM.pyx":334
* CHKERR( DMCreateDefaultSF(self.dm, localsec.sec, globalsec.sec) )
*
* def getDefaultSF(self): # <<<<<<<<<<<<<<
@@ -203910,7 +219258,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(struct PyPetscDMOb
return __pyx_r;
}
-/* "PETSc/DM.pyx":285
+/* "PETSc/DM.pyx":340
* return sf
*
* def getPointSF(self): # <<<<<<<<<<<<<<
@@ -203919,23 +219267,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_86getDefaultSF(struct PyPetscDMOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_89getPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_88getPointSF[] = "DM.getPointSF(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_89getPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_107getPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_106getPointSF[] = "DM.getPointSF(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_107getPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getPointSF (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getPointSF", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPointSF", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_88getPointSF(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_106getPointSF(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_88getPointSF(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106getPointSF(struct PyPetscDMObject *__pyx_v_self) {
struct PyPetscSFObject *__pyx_v_sf = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -203943,28 +219291,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_88getPointSF(struct PyPetscDMObje
int __pyx_t_2;
__Pyx_RefNannySetupContext("getPointSF", 0);
- /* "PETSc/DM.pyx":286
+ /* "PETSc/DM.pyx":341
*
* def getPointSF(self):
* cdef SF sf = SF() # <<<<<<<<<<<<<<
* CHKERR( DMGetPointSF(self.dm, &sf.sf) )
* PetscINCREF(sf.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 286, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 341, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_sf = ((struct PyPetscSFObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":287
+ /* "PETSc/DM.pyx":342
* def getPointSF(self):
* cdef SF sf = SF()
* CHKERR( DMGetPointSF(self.dm, &sf.sf) ) # <<<<<<<<<<<<<<
* PetscINCREF(sf.obj)
* return sf
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetPointSF(__pyx_v_self->dm, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 287, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetPointSF(__pyx_v_self->dm, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 342, __pyx_L1_error)
- /* "PETSc/DM.pyx":288
+ /* "PETSc/DM.pyx":343
* cdef SF sf = SF()
* CHKERR( DMGetPointSF(self.dm, &sf.sf) )
* PetscINCREF(sf.obj) # <<<<<<<<<<<<<<
@@ -203973,19 +219321,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_88getPointSF(struct PyPetscDMObje
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_sf->__pyx_base.obj);
- /* "PETSc/DM.pyx":289
+ /* "PETSc/DM.pyx":344
* CHKERR( DMGetPointSF(self.dm, &sf.sf) )
* PetscINCREF(sf.obj)
* return sf # <<<<<<<<<<<<<<
*
- * def setPointSF(self, SF sf not None):
+ * def setPointSF(self, SF sf):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_sf));
__pyx_r = ((PyObject *)__pyx_v_sf);
goto __pyx_L0;
- /* "PETSc/DM.pyx":285
+ /* "PETSc/DM.pyx":340
* return sf
*
* def getPointSF(self): # <<<<<<<<<<<<<<
@@ -204005,18 +219353,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_88getPointSF(struct PyPetscDMObje
return __pyx_r;
}
-/* "PETSc/DM.pyx":291
+/* "PETSc/DM.pyx":346
* return sf
*
- * def setPointSF(self, SF sf not None): # <<<<<<<<<<<<<<
+ * def setPointSF(self, SF sf): # <<<<<<<<<<<<<<
* CHKERR( DMSetPointSF(self.dm, sf.sf) )
*
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91setPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_90setPointSF[] = "DM.setPointSF(self, SF sf)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91setPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_109setPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_108setPointSF[] = "DM.setPointSF(self, SF sf)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_109setPointSF(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscSFObject *__pyx_v_sf = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -204029,6 +219377,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91setPointSF(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -204039,7 +219388,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91setPointSF(PyObject *__pyx_v_se
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPointSF") < 0)) __PYX_ERR(40, 291, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPointSF") < 0)) __PYX_ERR(40, 346, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -204050,14 +219399,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91setPointSF(PyObject *__pyx_v_se
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setPointSF", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 291, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setPointSF", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 346, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setPointSF", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sf), __pyx_ptype_8petsc4py_5PETSc_SF, 0, "sf", 0))) __PYX_ERR(40, 291, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_90setPointSF(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_sf);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sf), __pyx_ptype_8petsc4py_5PETSc_SF, 0, "sf", 0))) __PYX_ERR(40, 346, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_108setPointSF(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_sf);
/* function exit code */
goto __pyx_L0;
@@ -204068,25 +219417,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_91setPointSF(PyObject *__pyx_v_se
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_90setPointSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108setPointSF(struct PyPetscDMObject *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("setPointSF", 0);
- /* "PETSc/DM.pyx":292
+ /* "PETSc/DM.pyx":347
*
- * def setPointSF(self, SF sf not None):
+ * def setPointSF(self, SF sf):
* CHKERR( DMSetPointSF(self.dm, sf.sf) ) # <<<<<<<<<<<<<<
*
* def getNumLabels(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetPointSF(__pyx_v_self->dm, __pyx_v_sf->sf)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 292, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetPointSF(__pyx_v_self->dm, __pyx_v_sf->sf)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 347, __pyx_L1_error)
- /* "PETSc/DM.pyx":291
+ /* "PETSc/DM.pyx":346
* return sf
*
- * def setPointSF(self, SF sf not None): # <<<<<<<<<<<<<<
+ * def setPointSF(self, SF sf): # <<<<<<<<<<<<<<
* CHKERR( DMSetPointSF(self.dm, sf.sf) )
*
*/
@@ -204103,7 +219452,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_90setPointSF(struct PyPetscDMObje
return __pyx_r;
}
-/* "PETSc/DM.pyx":294
+/* "PETSc/DM.pyx":349
* CHKERR( DMSetPointSF(self.dm, sf.sf) )
*
* def getNumLabels(self): # <<<<<<<<<<<<<<
@@ -204112,23 +219461,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_90setPointSF(struct PyPetscDMObje
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_93getNumLabels(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_92getNumLabels[] = "DM.getNumLabels(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_93getNumLabels(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_111getNumLabels(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_110getNumLabels[] = "DM.getNumLabels(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_111getNumLabels(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getNumLabels (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getNumLabels", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getNumLabels", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(((struct PyPetscDMObject *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_110getNumLabels(((struct PyPetscDMObject *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(struct PyPetscDMObject *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getNumLabels(struct PyPetscDMObject *__pyx_v_self) {
PetscInt __pyx_v_nLabels;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -204136,7 +219485,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(struct PyPetscDMOb
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getNumLabels", 0);
- /* "PETSc/DM.pyx":295
+ /* "PETSc/DM.pyx":350
*
* def getNumLabels(self):
* cdef PetscInt nLabels = 0 # <<<<<<<<<<<<<<
@@ -204145,16 +219494,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(struct PyPetscDMOb
*/
__pyx_v_nLabels = 0;
- /* "PETSc/DM.pyx":296
+ /* "PETSc/DM.pyx":351
* def getNumLabels(self):
* cdef PetscInt nLabels = 0
* CHKERR( DMGetNumLabels(self.dm, &nLabels) ) # <<<<<<<<<<<<<<
* return toInt(nLabels)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetNumLabels(__pyx_v_self->dm, (&__pyx_v_nLabels))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(40, 296, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetNumLabels(__pyx_v_self->dm, (&__pyx_v_nLabels))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 351, __pyx_L1_error)
- /* "PETSc/DM.pyx":297
+ /* "PETSc/DM.pyx":352
* cdef PetscInt nLabels = 0
* CHKERR( DMGetNumLabels(self.dm, &nLabels) )
* return toInt(nLabels) # <<<<<<<<<<<<<<
@@ -204162,13 +219511,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(struct PyPetscDMOb
* def getLabelName(self, index):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nLabels); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 297, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_nLabels); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":294
+ /* "PETSc/DM.pyx":349
* CHKERR( DMSetPointSF(self.dm, sf.sf) )
*
* def getNumLabels(self): # <<<<<<<<<<<<<<
@@ -204187,7 +219536,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(struct PyPetscDMOb
return __pyx_r;
}
-/* "PETSc/DM.pyx":299
+/* "PETSc/DM.pyx":354
* return toInt(nLabels)
*
* def getLabelName(self, index): # <<<<<<<<<<<<<<
@@ -204196,9 +219545,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_92getNumLabels(struct PyPetscDMOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_95getLabelName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_94getLabelName[] = "DM.getLabelName(self, index)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_95getLabelName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_113getLabelName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_112getLabelName[] = "DM.getLabelName(self, index)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_113getLabelName(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_index = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -204211,6 +219560,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_95getLabelName(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -204221,7 +219571,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_95getLabelName(PyObject *__pyx_v_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelName") < 0)) __PYX_ERR(40, 299, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelName") < 0)) __PYX_ERR(40, 354, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -204232,20 +219582,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_95getLabelName(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getLabelName", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 299, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLabelName", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 354, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.getLabelName", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_index);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_112getLabelName(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_index);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_index) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getLabelName(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_index) {
PetscInt __pyx_v_cindex;
const char *__pyx_v_cname;
PyObject *__pyx_r = NULL;
@@ -204255,17 +219605,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(struct PyPetscDMOb
PyObject *__pyx_t_3 = NULL;
__Pyx_RefNannySetupContext("getLabelName", 0);
- /* "PETSc/DM.pyx":300
+ /* "PETSc/DM.pyx":355
*
* def getLabelName(self, index):
* cdef PetscInt cindex = asInt(index) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* CHKERR( DMGetLabelName(self.dm, cindex, &cname) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 300, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 355, __pyx_L1_error)
__pyx_v_cindex = __pyx_t_1;
- /* "PETSc/DM.pyx":301
+ /* "PETSc/DM.pyx":356
* def getLabelName(self, index):
* cdef PetscInt cindex = asInt(index)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -204274,16 +219624,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(struct PyPetscDMOb
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":302
+ /* "PETSc/DM.pyx":357
* cdef PetscInt cindex = asInt(index)
* cdef const_char *cname = NULL
* CHKERR( DMGetLabelName(self.dm, cindex, &cname) ) # <<<<<<<<<<<<<<
* return bytes2str(cname)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelName(__pyx_v_self->dm, __pyx_v_cindex, (&__pyx_v_cname))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 302, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelName(__pyx_v_self->dm, __pyx_v_cindex, (&__pyx_v_cname))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 357, __pyx_L1_error)
- /* "PETSc/DM.pyx":303
+ /* "PETSc/DM.pyx":358
* cdef const_char *cname = NULL
* CHKERR( DMGetLabelName(self.dm, cindex, &cname) )
* return bytes2str(cname) # <<<<<<<<<<<<<<
@@ -204291,13 +219641,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(struct PyPetscDMOb
* def hasLabel(self, name):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cname); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 303, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cname); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 358, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_r = __pyx_t_3;
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":299
+ /* "PETSc/DM.pyx":354
* return toInt(nLabels)
*
* def getLabelName(self, index): # <<<<<<<<<<<<<<
@@ -204316,7 +219666,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(struct PyPetscDMOb
return __pyx_r;
}
-/* "PETSc/DM.pyx":305
+/* "PETSc/DM.pyx":360
* return bytes2str(cname)
*
* def hasLabel(self, name): # <<<<<<<<<<<<<<
@@ -204325,9 +219675,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_94getLabelName(struct PyPetscDMOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_97hasLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_96hasLabel[] = "DM.hasLabel(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_97hasLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_115hasLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_114hasLabel[] = "DM.hasLabel(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_115hasLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -204340,6 +219690,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_97hasLabel(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -204350,7 +219701,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_97hasLabel(PyObject *__pyx_v_self
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "hasLabel") < 0)) __PYX_ERR(40, 305, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "hasLabel") < 0)) __PYX_ERR(40, 360, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -204361,20 +219712,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_97hasLabel(PyObject *__pyx_v_self
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("hasLabel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 305, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("hasLabel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 360, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.hasLabel", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_114hasLabel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114hasLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
PetscBool __pyx_v_flag;
const char *__pyx_v_cname;
PyObject *__pyx_r = NULL;
@@ -204384,7 +219735,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(struct PyPetscDMObject
__Pyx_RefNannySetupContext("hasLabel", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":306
+ /* "PETSc/DM.pyx":361
*
* def hasLabel(self, name):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -204393,7 +219744,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(struct PyPetscDMObject
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/DM.pyx":307
+ /* "PETSc/DM.pyx":362
* def hasLabel(self, name):
* cdef PetscBool flag = PETSC_FALSE
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -204402,42 +219753,42 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(struct PyPetscDMObject
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":308
+ /* "PETSc/DM.pyx":363
* cdef PetscBool flag = PETSC_FALSE
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMHasLabel(self.dm, cname, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 308, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 363, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":309
+ /* "PETSc/DM.pyx":364
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMHasLabel(self.dm, cname, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMHasLabel(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_flag))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 309, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMHasLabel(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_flag))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 364, __pyx_L1_error)
- /* "PETSc/DM.pyx":310
+ /* "PETSc/DM.pyx":365
* name = str2bytes(name, &cname)
* CHKERR( DMHasLabel(self.dm, cname, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def createLabel(self, name):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 310, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 365, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":305
+ /* "PETSc/DM.pyx":360
* return bytes2str(cname)
*
* def hasLabel(self, name): # <<<<<<<<<<<<<<
@@ -204457,8 +219808,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(struct PyPetscDMObject
return __pyx_r;
}
-/* "PETSc/DM.pyx":312
- * return <bint> flag
+/* "PETSc/DM.pyx":367
+ * return toBool(flag)
*
* def createLabel(self, name): # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
@@ -204466,9 +219817,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_96hasLabel(struct PyPetscDMObject
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_99createLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_98createLabel[] = "DM.createLabel(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_99createLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_117createLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_116createLabel[] = "DM.createLabel(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_117createLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -204481,6 +219832,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_99createLabel(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -204491,7 +219843,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_99createLabel(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createLabel") < 0)) __PYX_ERR(40, 312, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createLabel") < 0)) __PYX_ERR(40, 367, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -204502,20 +219854,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_99createLabel(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createLabel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 312, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createLabel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 367, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.createLabel", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_98createLabel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_116createLabel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98createLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116createLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cname;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -204524,7 +219876,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98createLabel(struct PyPetscDMObj
__Pyx_RefNannySetupContext("createLabel", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":313
+ /* "PETSc/DM.pyx":368
*
* def createLabel(self, name):
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -204533,29 +219885,29 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98createLabel(struct PyPetscDMObj
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":314
+ /* "PETSc/DM.pyx":369
* def createLabel(self, name):
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMCreateLabel(self.dm, cname) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 314, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 369, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":315
+ /* "PETSc/DM.pyx":370
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMCreateLabel(self.dm, cname) ) # <<<<<<<<<<<<<<
*
* def removeLabel(self, name):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateLabel(__pyx_v_self->dm, __pyx_v_cname)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 315, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateLabel(__pyx_v_self->dm, __pyx_v_cname)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 370, __pyx_L1_error)
- /* "PETSc/DM.pyx":312
- * return <bint> flag
+ /* "PETSc/DM.pyx":367
+ * return toBool(flag)
*
* def createLabel(self, name): # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
@@ -204576,7 +219928,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98createLabel(struct PyPetscDMObj
return __pyx_r;
}
-/* "PETSc/DM.pyx":317
+/* "PETSc/DM.pyx":372
* CHKERR( DMCreateLabel(self.dm, cname) )
*
* def removeLabel(self, name): # <<<<<<<<<<<<<<
@@ -204585,9 +219937,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_98createLabel(struct PyPetscDMObj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_101removeLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_100removeLabel[] = "DM.removeLabel(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_101removeLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_119removeLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_118removeLabel[] = "DM.removeLabel(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_119removeLabel(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -204600,6 +219952,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_101removeLabel(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -204610,7 +219963,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_101removeLabel(PyObject *__pyx_v_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "removeLabel") < 0)) __PYX_ERR(40, 317, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "removeLabel") < 0)) __PYX_ERR(40, 372, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -204621,20 +219974,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_101removeLabel(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("removeLabel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 317, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("removeLabel", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 372, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.removeLabel", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_118removeLabel(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118removeLabel(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cname;
DMLabel __pyx_v_clbl;
PyObject *__pyx_r = NULL;
@@ -204644,7 +219997,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(struct PyPetscDMOb
__Pyx_RefNannySetupContext("removeLabel", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":318
+ /* "PETSc/DM.pyx":373
*
* def removeLabel(self, name):
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -204653,7 +220006,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(struct PyPetscDMOb
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":319
+ /* "PETSc/DM.pyx":374
* def removeLabel(self, name):
* cdef const_char *cname = NULL
* cdef PetscDMLabel clbl = NULL # <<<<<<<<<<<<<<
@@ -204662,28 +220015,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(struct PyPetscDMOb
*/
__pyx_v_clbl = NULL;
- /* "PETSc/DM.pyx":320
+ /* "PETSc/DM.pyx":375
* cdef const_char *cname = NULL
* cdef PetscDMLabel clbl = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMRemoveLabel(self.dm, cname, &clbl) )
* # CHKERR( DMLabelDestroy(&clbl) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 320, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 375, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":321
+ /* "PETSc/DM.pyx":376
* cdef PetscDMLabel clbl = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMRemoveLabel(self.dm, cname, &clbl) ) # <<<<<<<<<<<<<<
* # CHKERR( DMLabelDestroy(&clbl) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRemoveLabel(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_clbl))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 321, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMRemoveLabel(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_clbl))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 376, __pyx_L1_error)
- /* "PETSc/DM.pyx":317
+ /* "PETSc/DM.pyx":372
* CHKERR( DMCreateLabel(self.dm, cname) )
*
* def removeLabel(self, name): # <<<<<<<<<<<<<<
@@ -204705,7 +220058,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(struct PyPetscDMOb
return __pyx_r;
}
-/* "PETSc/DM.pyx":324
+/* "PETSc/DM.pyx":379
* # CHKERR( DMLabelDestroy(&clbl) )
*
* def getLabelValue(self, name, point): # <<<<<<<<<<<<<<
@@ -204714,9 +220067,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_100removeLabel(struct PyPetscDMOb
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_103getLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_102getLabelValue[] = "DM.getLabelValue(self, name, point)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_103getLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_120getLabelValue[] = "DM.getLabelValue(self, name, point)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_point = 0;
PyObject *__pyx_r = 0;
@@ -204730,7 +220083,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_103getLabelValue(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -204739,14 +220094,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_103getLabelValue(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("getLabelValue", 1, 2, 2, 1); __PYX_ERR(40, 324, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLabelValue", 1, 2, 2, 1); __PYX_ERR(40, 379, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelValue") < 0)) __PYX_ERR(40, 324, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelValue") < 0)) __PYX_ERR(40, 379, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -204759,20 +220115,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_103getLabelValue(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getLabelValue", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 324, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLabelValue", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 379, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.getLabelValue", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_point);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_120getLabelValue(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_point);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point) {
PetscInt __pyx_v_cpoint;
PetscInt __pyx_v_value;
const char *__pyx_v_cname;
@@ -204784,18 +220140,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(struct PyPetscDM
__Pyx_RefNannySetupContext("getLabelValue", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":325
+ /* "PETSc/DM.pyx":380
*
* def getLabelValue(self, name, point):
* cdef PetscInt cpoint = asInt(point), value = 0 # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 325, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 380, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
__pyx_v_value = 0;
- /* "PETSc/DM.pyx":326
+ /* "PETSc/DM.pyx":381
* def getLabelValue(self, name, point):
* cdef PetscInt cpoint = asInt(point), value = 0
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -204804,28 +220160,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(struct PyPetscDM
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":327
+ /* "PETSc/DM.pyx":382
* cdef PetscInt cpoint = asInt(point), value = 0
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMGetLabelValue(self.dm, cname, cpoint, &value) )
* return toInt(value)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 327, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 382, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":328
+ /* "PETSc/DM.pyx":383
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMGetLabelValue(self.dm, cname, cpoint, &value) ) # <<<<<<<<<<<<<<
* return toInt(value)
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelValue(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cpoint, (&__pyx_v_value))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(40, 328, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelValue(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cpoint, (&__pyx_v_value))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 383, __pyx_L1_error)
- /* "PETSc/DM.pyx":329
+ /* "PETSc/DM.pyx":384
* name = str2bytes(name, &cname)
* CHKERR( DMGetLabelValue(self.dm, cname, cpoint, &value) )
* return toInt(value) # <<<<<<<<<<<<<<
@@ -204833,13 +220189,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(struct PyPetscDM
* def setLabelValue(self, name, point, value):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_value); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 329, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_value); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 384, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":324
+ /* "PETSc/DM.pyx":379
* # CHKERR( DMLabelDestroy(&clbl) )
*
* def getLabelValue(self, name, point): # <<<<<<<<<<<<<<
@@ -204859,7 +220215,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(struct PyPetscDM
return __pyx_r;
}
-/* "PETSc/DM.pyx":331
+/* "PETSc/DM.pyx":386
* return toInt(value)
*
* def setLabelValue(self, name, point, value): # <<<<<<<<<<<<<<
@@ -204868,9 +220224,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_102getLabelValue(struct PyPetscDM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_105setLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_104setLabelValue[] = "DM.setLabelValue(self, name, point, value)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_105setLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_123setLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_122setLabelValue[] = "DM.setLabelValue(self, name, point, value)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_123setLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_point = 0;
PyObject *__pyx_v_value = 0;
@@ -204885,8 +220241,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_105setLabelValue(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -204895,19 +220254,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_105setLabelValue(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setLabelValue", 1, 3, 3, 1); __PYX_ERR(40, 331, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setLabelValue", 1, 3, 3, 1); __PYX_ERR(40, 386, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setLabelValue", 1, 3, 3, 2); __PYX_ERR(40, 331, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setLabelValue", 1, 3, 3, 2); __PYX_ERR(40, 386, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setLabelValue") < 0)) __PYX_ERR(40, 331, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setLabelValue") < 0)) __PYX_ERR(40, 386, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -204922,20 +220283,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_105setLabelValue(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setLabelValue", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 331, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setLabelValue", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 386, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setLabelValue", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_104setLabelValue(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_point, __pyx_v_value);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_122setLabelValue(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_point, __pyx_v_value);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104setLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_122setLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value) {
PetscInt __pyx_v_cpoint;
PetscInt __pyx_v_cvalue;
const char *__pyx_v_cname;
@@ -204947,19 +220308,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104setLabelValue(struct PyPetscDM
__Pyx_RefNannySetupContext("setLabelValue", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":332
+ /* "PETSc/DM.pyx":387
*
* def setLabelValue(self, name, point, value):
* cdef PetscInt cpoint = asInt(point), cvalue = asInt(value) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 332, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 387, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 332, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 387, __pyx_L1_error)
__pyx_v_cvalue = __pyx_t_1;
- /* "PETSc/DM.pyx":333
+ /* "PETSc/DM.pyx":388
* def setLabelValue(self, name, point, value):
* cdef PetscInt cpoint = asInt(point), cvalue = asInt(value)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -204968,28 +220329,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104setLabelValue(struct PyPetscDM
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":334
+ /* "PETSc/DM.pyx":389
* cdef PetscInt cpoint = asInt(point), cvalue = asInt(value)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMSetLabelValue(self.dm, cname, cpoint, cvalue) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 334, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 389, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":335
+ /* "PETSc/DM.pyx":390
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMSetLabelValue(self.dm, cname, cpoint, cvalue) ) # <<<<<<<<<<<<<<
*
* def clearLabelValue(self, name, point, value):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetLabelValue(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cpoint, __pyx_v_cvalue)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(40, 335, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetLabelValue(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cpoint, __pyx_v_cvalue)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 390, __pyx_L1_error)
- /* "PETSc/DM.pyx":331
+ /* "PETSc/DM.pyx":386
* return toInt(value)
*
* def setLabelValue(self, name, point, value): # <<<<<<<<<<<<<<
@@ -205011,7 +220372,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104setLabelValue(struct PyPetscDM
return __pyx_r;
}
-/* "PETSc/DM.pyx":337
+/* "PETSc/DM.pyx":392
* CHKERR( DMSetLabelValue(self.dm, cname, cpoint, cvalue) )
*
* def clearLabelValue(self, name, point, value): # <<<<<<<<<<<<<<
@@ -205020,9 +220381,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_104setLabelValue(struct PyPetscDM
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_107clearLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_106clearLabelValue[] = "DM.clearLabelValue(self, name, point, value)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_107clearLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_125clearLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_124clearLabelValue[] = "DM.clearLabelValue(self, name, point, value)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_125clearLabelValue(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_point = 0;
PyObject *__pyx_v_value = 0;
@@ -205037,8 +220398,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_107clearLabelValue(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -205047,19 +220411,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_107clearLabelValue(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("clearLabelValue", 1, 3, 3, 1); __PYX_ERR(40, 337, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("clearLabelValue", 1, 3, 3, 1); __PYX_ERR(40, 392, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("clearLabelValue", 1, 3, 3, 2); __PYX_ERR(40, 337, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("clearLabelValue", 1, 3, 3, 2); __PYX_ERR(40, 392, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "clearLabelValue") < 0)) __PYX_ERR(40, 337, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "clearLabelValue") < 0)) __PYX_ERR(40, 392, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -205074,20 +220440,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_107clearLabelValue(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("clearLabelValue", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 337, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("clearLabelValue", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 392, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.clearLabelValue", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_106clearLabelValue(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_point, __pyx_v_value);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_124clearLabelValue(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_point, __pyx_v_value);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106clearLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_124clearLabelValue(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_point, PyObject *__pyx_v_value) {
PetscInt __pyx_v_cpoint;
PetscInt __pyx_v_cvalue;
const char *__pyx_v_cname;
@@ -205099,19 +220465,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106clearLabelValue(struct PyPetsc
__Pyx_RefNannySetupContext("clearLabelValue", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":338
+ /* "PETSc/DM.pyx":393
*
* def clearLabelValue(self, name, point, value):
* cdef PetscInt cpoint = asInt(point), cvalue = asInt(value) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 338, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 393, __pyx_L1_error)
__pyx_v_cpoint = __pyx_t_1;
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 338, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 393, __pyx_L1_error)
__pyx_v_cvalue = __pyx_t_1;
- /* "PETSc/DM.pyx":339
+ /* "PETSc/DM.pyx":394
* def clearLabelValue(self, name, point, value):
* cdef PetscInt cpoint = asInt(point), cvalue = asInt(value)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -205120,28 +220486,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106clearLabelValue(struct PyPetsc
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":340
+ /* "PETSc/DM.pyx":395
* cdef PetscInt cpoint = asInt(point), cvalue = asInt(value)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMClearLabelValue(self.dm, cname, cpoint, cvalue) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 340, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 395, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":341
+ /* "PETSc/DM.pyx":396
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMClearLabelValue(self.dm, cname, cpoint, cvalue) ) # <<<<<<<<<<<<<<
*
* def getLabelSize(self, name):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMClearLabelValue(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cpoint, __pyx_v_cvalue)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(40, 341, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMClearLabelValue(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cpoint, __pyx_v_cvalue)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 396, __pyx_L1_error)
- /* "PETSc/DM.pyx":337
+ /* "PETSc/DM.pyx":392
* CHKERR( DMSetLabelValue(self.dm, cname, cpoint, cvalue) )
*
* def clearLabelValue(self, name, point, value): # <<<<<<<<<<<<<<
@@ -205163,7 +220529,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106clearLabelValue(struct PyPetsc
return __pyx_r;
}
-/* "PETSc/DM.pyx":343
+/* "PETSc/DM.pyx":398
* CHKERR( DMClearLabelValue(self.dm, cname, cpoint, cvalue) )
*
* def getLabelSize(self, name): # <<<<<<<<<<<<<<
@@ -205172,9 +220538,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_106clearLabelValue(struct PyPetsc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_109getLabelSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_108getLabelSize[] = "DM.getLabelSize(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_109getLabelSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_127getLabelSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_126getLabelSize[] = "DM.getLabelSize(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_127getLabelSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -205187,6 +220553,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_109getLabelSize(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -205197,7 +220564,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_109getLabelSize(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelSize") < 0)) __PYX_ERR(40, 343, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelSize") < 0)) __PYX_ERR(40, 398, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -205208,20 +220575,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_109getLabelSize(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getLabelSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 343, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLabelSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 398, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.getLabelSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_126getLabelSize(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_126getLabelSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
PetscInt __pyx_v_size;
const char *__pyx_v_cname;
PyObject *__pyx_r = NULL;
@@ -205231,7 +220598,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMO
__Pyx_RefNannySetupContext("getLabelSize", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":344
+ /* "PETSc/DM.pyx":399
*
* def getLabelSize(self, name):
* cdef PetscInt size = 0 # <<<<<<<<<<<<<<
@@ -205240,7 +220607,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMO
*/
__pyx_v_size = 0;
- /* "PETSc/DM.pyx":345
+ /* "PETSc/DM.pyx":400
* def getLabelSize(self, name):
* cdef PetscInt size = 0
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -205249,28 +220616,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMO
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":346
+ /* "PETSc/DM.pyx":401
* cdef PetscInt size = 0
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMGetLabelSize(self.dm, cname, &size) )
* return toInt(size)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 346, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 401, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":347
+ /* "PETSc/DM.pyx":402
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMGetLabelSize(self.dm, cname, &size) ) # <<<<<<<<<<<<<<
* return toInt(size)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelSize(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_size))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 347, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelSize(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_size))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 402, __pyx_L1_error)
- /* "PETSc/DM.pyx":348
+ /* "PETSc/DM.pyx":403
* name = str2bytes(name, &cname)
* CHKERR( DMGetLabelSize(self.dm, cname, &size) )
* return toInt(size) # <<<<<<<<<<<<<<
@@ -205278,13 +220645,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMO
* def getLabelIdIS(self, name):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 348, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 403, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":343
+ /* "PETSc/DM.pyx":398
* CHKERR( DMClearLabelValue(self.dm, cname, cpoint, cvalue) )
*
* def getLabelSize(self, name): # <<<<<<<<<<<<<<
@@ -205304,7 +220671,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMO
return __pyx_r;
}
-/* "PETSc/DM.pyx":350
+/* "PETSc/DM.pyx":405
* return toInt(size)
*
* def getLabelIdIS(self, name): # <<<<<<<<<<<<<<
@@ -205313,9 +220680,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_108getLabelSize(struct PyPetscDMO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_111getLabelIdIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_110getLabelIdIS[] = "DM.getLabelIdIS(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_111getLabelIdIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_129getLabelIdIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_128getLabelIdIS[] = "DM.getLabelIdIS(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_129getLabelIdIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -205328,6 +220695,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_111getLabelIdIS(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -205338,7 +220706,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_111getLabelIdIS(PyObject *__pyx_v
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelIdIS") < 0)) __PYX_ERR(40, 350, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelIdIS") < 0)) __PYX_ERR(40, 405, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -205349,20 +220717,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_111getLabelIdIS(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getLabelIdIS", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 350, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLabelIdIS", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 405, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.getLabelIdIS", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_128getLabelIdIS(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_128getLabelIdIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cname;
struct PyPetscISObject *__pyx_v_lis = 0;
PyObject *__pyx_r = NULL;
@@ -205372,7 +220740,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(struct PyPetscDMO
__Pyx_RefNannySetupContext("getLabelIdIS", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":351
+ /* "PETSc/DM.pyx":406
*
* def getLabelIdIS(self, name):
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -205381,40 +220749,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(struct PyPetscDMO
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":352
+ /* "PETSc/DM.pyx":407
* def getLabelIdIS(self, name):
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef IS lis = IS()
* CHKERR( DMGetLabelIdIS(self.dm, cname, &lis.iset) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 352, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":353
+ /* "PETSc/DM.pyx":408
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef IS lis = IS() # <<<<<<<<<<<<<<
* CHKERR( DMGetLabelIdIS(self.dm, cname, &lis.iset) )
* return lis
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 353, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 408, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_lis = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":354
+ /* "PETSc/DM.pyx":409
* name = str2bytes(name, &cname)
* cdef IS lis = IS()
* CHKERR( DMGetLabelIdIS(self.dm, cname, &lis.iset) ) # <<<<<<<<<<<<<<
* return lis
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelIdIS(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_lis->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 354, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelIdIS(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_lis->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 409, __pyx_L1_error)
- /* "PETSc/DM.pyx":355
+ /* "PETSc/DM.pyx":410
* cdef IS lis = IS()
* CHKERR( DMGetLabelIdIS(self.dm, cname, &lis.iset) )
* return lis # <<<<<<<<<<<<<<
@@ -205426,7 +220794,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(struct PyPetscDMO
__pyx_r = ((PyObject *)__pyx_v_lis);
goto __pyx_L0;
- /* "PETSc/DM.pyx":350
+ /* "PETSc/DM.pyx":405
* return toInt(size)
*
* def getLabelIdIS(self, name): # <<<<<<<<<<<<<<
@@ -205447,7 +220815,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(struct PyPetscDMO
return __pyx_r;
}
-/* "PETSc/DM.pyx":357
+/* "PETSc/DM.pyx":412
* return lis
*
* def getStratumSize(self, name, value): # <<<<<<<<<<<<<<
@@ -205456,9 +220824,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_110getLabelIdIS(struct PyPetscDMO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_113getStratumSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_112getStratumSize[] = "DM.getStratumSize(self, name, value)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_113getStratumSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_131getStratumSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_130getStratumSize[] = "DM.getStratumSize(self, name, value)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_131getStratumSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_value = 0;
PyObject *__pyx_r = 0;
@@ -205472,7 +220840,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_113getStratumSize(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -205481,14 +220851,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_113getStratumSize(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("getStratumSize", 1, 2, 2, 1); __PYX_ERR(40, 357, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getStratumSize", 1, 2, 2, 1); __PYX_ERR(40, 412, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getStratumSize") < 0)) __PYX_ERR(40, 357, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getStratumSize") < 0)) __PYX_ERR(40, 412, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -205501,20 +220872,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_113getStratumSize(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getStratumSize", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 357, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getStratumSize", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 412, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.getStratumSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_value);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_130getStratumSize(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_value);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_130getStratumSize(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value) {
PetscInt __pyx_v_size;
PetscInt __pyx_v_cvalue;
const char *__pyx_v_cname;
@@ -205526,7 +220897,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscD
__Pyx_RefNannySetupContext("getStratumSize", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":358
+ /* "PETSc/DM.pyx":413
*
* def getStratumSize(self, name, value):
* cdef PetscInt size = 0 # <<<<<<<<<<<<<<
@@ -205535,17 +220906,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscD
*/
__pyx_v_size = 0;
- /* "PETSc/DM.pyx":359
+ /* "PETSc/DM.pyx":414
* def getStratumSize(self, name, value):
* cdef PetscInt size = 0
* cdef PetscInt cvalue = asInt(value) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 359, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 414, __pyx_L1_error)
__pyx_v_cvalue = __pyx_t_1;
- /* "PETSc/DM.pyx":360
+ /* "PETSc/DM.pyx":415
* cdef PetscInt size = 0
* cdef PetscInt cvalue = asInt(value)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -205554,28 +220925,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscD
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":361
+ /* "PETSc/DM.pyx":416
* cdef PetscInt cvalue = asInt(value)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMGetStratumSize(self.dm, cname, cvalue, &size) )
* return toInt(size)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 361, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 416, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":362
+ /* "PETSc/DM.pyx":417
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMGetStratumSize(self.dm, cname, cvalue, &size) ) # <<<<<<<<<<<<<<
* return toInt(size)
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetStratumSize(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cvalue, (&__pyx_v_size))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(40, 362, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetStratumSize(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cvalue, (&__pyx_v_size))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 417, __pyx_L1_error)
- /* "PETSc/DM.pyx":363
+ /* "PETSc/DM.pyx":418
* name = str2bytes(name, &cname)
* CHKERR( DMGetStratumSize(self.dm, cname, cvalue, &size) )
* return toInt(size) # <<<<<<<<<<<<<<
@@ -205583,13 +220954,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscD
* def getStratumIS(self, name, value):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_size); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 363, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_size); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 418, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":357
+ /* "PETSc/DM.pyx":412
* return lis
*
* def getStratumSize(self, name, value): # <<<<<<<<<<<<<<
@@ -205609,7 +220980,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscD
return __pyx_r;
}
-/* "PETSc/DM.pyx":365
+/* "PETSc/DM.pyx":420
* return toInt(size)
*
* def getStratumIS(self, name, value): # <<<<<<<<<<<<<<
@@ -205618,9 +220989,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_112getStratumSize(struct PyPetscD
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_115getStratumIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_114getStratumIS[] = "DM.getStratumIS(self, name, value)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_115getStratumIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_133getStratumIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_132getStratumIS[] = "DM.getStratumIS(self, name, value)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_133getStratumIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_value = 0;
PyObject *__pyx_r = 0;
@@ -205634,7 +221005,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_115getStratumIS(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -205643,14 +221016,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_115getStratumIS(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("getStratumIS", 1, 2, 2, 1); __PYX_ERR(40, 365, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getStratumIS", 1, 2, 2, 1); __PYX_ERR(40, 420, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getStratumIS") < 0)) __PYX_ERR(40, 365, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getStratumIS") < 0)) __PYX_ERR(40, 420, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -205663,20 +221037,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_115getStratumIS(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getStratumIS", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 365, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getStratumIS", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 420, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.getStratumIS", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_value);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_132getStratumIS(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_value);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_132getStratumIS(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value) {
PetscInt __pyx_v_cvalue;
const char *__pyx_v_cname;
struct PyPetscISObject *__pyx_v_sis = 0;
@@ -205688,17 +221062,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(struct PyPetscDMO
__Pyx_RefNannySetupContext("getStratumIS", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":366
+ /* "PETSc/DM.pyx":421
*
* def getStratumIS(self, name, value):
* cdef PetscInt cvalue = asInt(value) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 366, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 421, __pyx_L1_error)
__pyx_v_cvalue = __pyx_t_1;
- /* "PETSc/DM.pyx":367
+ /* "PETSc/DM.pyx":422
* def getStratumIS(self, name, value):
* cdef PetscInt cvalue = asInt(value)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -205707,40 +221081,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(struct PyPetscDMO
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":368
+ /* "PETSc/DM.pyx":423
* cdef PetscInt cvalue = asInt(value)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef IS sis = IS()
* CHKERR( DMGetStratumIS(self.dm, cname, cvalue, &sis.iset) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 368, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":369
+ /* "PETSc/DM.pyx":424
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef IS sis = IS() # <<<<<<<<<<<<<<
* CHKERR( DMGetStratumIS(self.dm, cname, cvalue, &sis.iset) )
* return sis
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 369, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_sis = ((struct PyPetscISObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":370
+ /* "PETSc/DM.pyx":425
* name = str2bytes(name, &cname)
* cdef IS sis = IS()
* CHKERR( DMGetStratumIS(self.dm, cname, cvalue, &sis.iset) ) # <<<<<<<<<<<<<<
* return sis
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetStratumIS(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cvalue, (&__pyx_v_sis->iset))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(40, 370, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetStratumIS(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cvalue, (&__pyx_v_sis->iset))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 425, __pyx_L1_error)
- /* "PETSc/DM.pyx":371
+ /* "PETSc/DM.pyx":426
* cdef IS sis = IS()
* CHKERR( DMGetStratumIS(self.dm, cname, cvalue, &sis.iset) )
* return sis # <<<<<<<<<<<<<<
@@ -205752,7 +221126,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(struct PyPetscDMO
__pyx_r = ((PyObject *)__pyx_v_sis);
goto __pyx_L0;
- /* "PETSc/DM.pyx":365
+ /* "PETSc/DM.pyx":420
* return toInt(size)
*
* def getStratumIS(self, name, value): # <<<<<<<<<<<<<<
@@ -205773,7 +221147,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(struct PyPetscDMO
return __pyx_r;
}
-/* "PETSc/DM.pyx":373
+/* "PETSc/DM.pyx":428
* return sis
*
* def clearLabelStratum(self, name, value): # <<<<<<<<<<<<<<
@@ -205782,9 +221156,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_114getStratumIS(struct PyPetscDMO
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_117clearLabelStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_116clearLabelStratum[] = "DM.clearLabelStratum(self, name, value)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_117clearLabelStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_135clearLabelStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_134clearLabelStratum[] = "DM.clearLabelStratum(self, name, value)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_135clearLabelStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_value = 0;
PyObject *__pyx_r = 0;
@@ -205798,7 +221172,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_117clearLabelStratum(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -205807,14 +221183,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_117clearLabelStratum(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("clearLabelStratum", 1, 2, 2, 1); __PYX_ERR(40, 373, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("clearLabelStratum", 1, 2, 2, 1); __PYX_ERR(40, 428, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "clearLabelStratum") < 0)) __PYX_ERR(40, 373, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "clearLabelStratum") < 0)) __PYX_ERR(40, 428, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -205827,20 +221204,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_117clearLabelStratum(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("clearLabelStratum", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 373, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("clearLabelStratum", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 428, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.clearLabelStratum", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_116clearLabelStratum(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_value);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_134clearLabelStratum(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_value);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116clearLabelStratum(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_134clearLabelStratum(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_value) {
PetscInt __pyx_v_cvalue;
const char *__pyx_v_cname;
PyObject *__pyx_r = NULL;
@@ -205851,17 +221228,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116clearLabelStratum(struct PyPet
__Pyx_RefNannySetupContext("clearLabelStratum", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":374
+ /* "PETSc/DM.pyx":429
*
* def clearLabelStratum(self, name, value):
* cdef PetscInt cvalue = asInt(value) # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(40, 374, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(40, 429, __pyx_L1_error)
__pyx_v_cvalue = __pyx_t_1;
- /* "PETSc/DM.pyx":375
+ /* "PETSc/DM.pyx":430
* def clearLabelStratum(self, name, value):
* cdef PetscInt cvalue = asInt(value)
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -205870,28 +221247,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116clearLabelStratum(struct PyPet
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":376
+ /* "PETSc/DM.pyx":431
* cdef PetscInt cvalue = asInt(value)
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* CHKERR( DMClearLabelStratum(self.dm, cname, cvalue) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 376, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 431, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DM.pyx":377
+ /* "PETSc/DM.pyx":432
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* CHKERR( DMClearLabelStratum(self.dm, cname, cvalue) ) # <<<<<<<<<<<<<<
*
* def setLabelOutput(self, name, output):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMClearLabelStratum(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cvalue)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(40, 377, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMClearLabelStratum(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_cvalue)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 432, __pyx_L1_error)
- /* "PETSc/DM.pyx":373
+ /* "PETSc/DM.pyx":428
* return sis
*
* def clearLabelStratum(self, name, value): # <<<<<<<<<<<<<<
@@ -205913,7 +221290,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116clearLabelStratum(struct PyPet
return __pyx_r;
}
-/* "PETSc/DM.pyx":379
+/* "PETSc/DM.pyx":434
* CHKERR( DMClearLabelStratum(self.dm, cname, cvalue) )
*
* def setLabelOutput(self, name, output): # <<<<<<<<<<<<<<
@@ -205922,9 +221299,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_116clearLabelStratum(struct PyPet
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_119setLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_118setLabelOutput[] = "DM.setLabelOutput(self, name, output)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_119setLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_137setLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_136setLabelOutput[] = "DM.setLabelOutput(self, name, output)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_137setLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_output = 0;
PyObject *__pyx_r = 0;
@@ -205938,7 +221315,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_119setLabelOutput(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -205947,14 +221326,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_119setLabelOutput(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_output)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setLabelOutput", 1, 2, 2, 1); __PYX_ERR(40, 379, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setLabelOutput", 1, 2, 2, 1); __PYX_ERR(40, 434, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setLabelOutput") < 0)) __PYX_ERR(40, 379, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setLabelOutput") < 0)) __PYX_ERR(40, 434, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -205967,20 +221347,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_119setLabelOutput(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setLabelOutput", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 379, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setLabelOutput", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 434, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.setLabelOutput", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_118setLabelOutput(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_output);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_136setLabelOutput(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name, __pyx_v_output);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118setLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_output) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_136setLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name, PyObject *__pyx_v_output) {
const char *__pyx_v_cname;
PetscBool __pyx_v_coutput;
PyObject *__pyx_r = NULL;
@@ -205991,7 +221371,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118setLabelOutput(struct PyPetscD
__Pyx_RefNannySetupContext("setLabelOutput", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":380
+ /* "PETSc/DM.pyx":435
*
* def setLabelOutput(self, name, output):
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -206000,38 +221380,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118setLabelOutput(struct PyPetscD
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":381
+ /* "PETSc/DM.pyx":436
* def setLabelOutput(self, name, output):
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscBool coutput = output
* CHKERR( DMSetLabelOutput(self.dm, cname, coutput) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 381, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 436, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":382
+ /* "PETSc/DM.pyx":437
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscBool coutput = output # <<<<<<<<<<<<<<
* CHKERR( DMSetLabelOutput(self.dm, cname, coutput) )
*
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_output)); if (unlikely(PyErr_Occurred())) __PYX_ERR(40, 382, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_output)); if (unlikely(PyErr_Occurred())) __PYX_ERR(40, 437, __pyx_L1_error)
__pyx_v_coutput = __pyx_t_2;
- /* "PETSc/DM.pyx":383
+ /* "PETSc/DM.pyx":438
* name = str2bytes(name, &cname)
* cdef PetscBool coutput = output
* CHKERR( DMSetLabelOutput(self.dm, cname, coutput) ) # <<<<<<<<<<<<<<
*
* def getLabelOutput(self, name):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetLabelOutput(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_coutput)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(40, 383, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetLabelOutput(__pyx_v_self->dm, __pyx_v_cname, __pyx_v_coutput)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(40, 438, __pyx_L1_error)
- /* "PETSc/DM.pyx":379
+ /* "PETSc/DM.pyx":434
* CHKERR( DMClearLabelStratum(self.dm, cname, cvalue) )
*
* def setLabelOutput(self, name, output): # <<<<<<<<<<<<<<
@@ -206053,7 +221433,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118setLabelOutput(struct PyPetscD
return __pyx_r;
}
-/* "PETSc/DM.pyx":385
+/* "PETSc/DM.pyx":440
* CHKERR( DMSetLabelOutput(self.dm, cname, coutput) )
*
* def getLabelOutput(self, name): # <<<<<<<<<<<<<<
@@ -206062,9 +221442,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_118setLabelOutput(struct PyPetscD
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_2DM_120getLabelOutput[] = "DM.getLabelOutput(self, name)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_139getLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_138getLabelOutput[] = "DM.getLabelOutput(self, name)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_139getLabelOutput(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_name = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -206077,6 +221457,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelOutput(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -206087,7 +221468,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelOutput(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelOutput") < 0)) __PYX_ERR(40, 385, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getLabelOutput") < 0)) __PYX_ERR(40, 440, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -206098,20 +221479,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelOutput(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getLabelOutput", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 385, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getLabelOutput", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 440, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DM.getLabelOutput", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_138getLabelOutput(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_name);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_138getLabelOutput(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_name) {
const char *__pyx_v_cname;
PetscBool __pyx_v_coutput;
PyObject *__pyx_r = NULL;
@@ -206121,7 +221502,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(struct PyPetscD
__Pyx_RefNannySetupContext("getLabelOutput", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DM.pyx":386
+ /* "PETSc/DM.pyx":441
*
* def getLabelOutput(self, name):
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -206130,19 +221511,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(struct PyPetscD
*/
__pyx_v_cname = NULL;
- /* "PETSc/DM.pyx":387
+ /* "PETSc/DM.pyx":442
* def getLabelOutput(self, name):
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscBool coutput = PETSC_FALSE
* CHKERR( DMGetLabelOutput(self.dm, cname, &coutput) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 387, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 442, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DM.pyx":388
+ /* "PETSc/DM.pyx":443
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
* cdef PetscBool coutput = PETSC_FALSE # <<<<<<<<<<<<<<
@@ -206151,16 +221532,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(struct PyPetscD
*/
__pyx_v_coutput = PETSC_FALSE;
- /* "PETSc/DM.pyx":389
+ /* "PETSc/DM.pyx":444
* name = str2bytes(name, &cname)
* cdef PetscBool coutput = PETSC_FALSE
* CHKERR( DMGetLabelOutput(self.dm, cname, &coutput) ) # <<<<<<<<<<<<<<
* return coutput
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelOutput(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_coutput))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(40, 389, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabelOutput(__pyx_v_self->dm, __pyx_v_cname, (&__pyx_v_coutput))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(40, 444, __pyx_L1_error)
- /* "PETSc/DM.pyx":390
+ /* "PETSc/DM.pyx":445
* cdef PetscBool coutput = PETSC_FALSE
* CHKERR( DMGetLabelOutput(self.dm, cname, &coutput) )
* return coutput # <<<<<<<<<<<<<<
@@ -206168,13 +221549,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(struct PyPetscD
* # backward compatibility
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = __Pyx_PyInt_From_PetscBool(__pyx_v_coutput); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 390, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_PetscBool(__pyx_v_coutput); if (unlikely(!__pyx_t_1)) __PYX_ERR(40, 445, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L0;
- /* "PETSc/DM.pyx":385
+ /* "PETSc/DM.pyx":440
* CHKERR( DMSetLabelOutput(self.dm, cname, coutput) )
*
* def getLabelOutput(self, name): # <<<<<<<<<<<<<<
@@ -206194,6 +221575,1007 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_120getLabelOutput(struct PyPetscD
return __pyx_r;
}
+/* "PETSc/DM.pyx":452
+ * getMatrix = createMatrix = createMat
+ *
+ * def setKSPComputeOperators(self, operators, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_141setKSPComputeOperators(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_140setKSPComputeOperators[] = "DM.setKSPComputeOperators(self, operators, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_141setKSPComputeOperators(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_operators = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setKSPComputeOperators (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_operators,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_operators)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setKSPComputeOperators") < 0)) __PYX_ERR(40, 452, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_operators = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setKSPComputeOperators", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 452, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setKSPComputeOperators", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_140setKSPComputeOperators(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_operators, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_140setKSPComputeOperators(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_operators, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setKSPComputeOperators", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/DM.pyx":453
+ *
+ * def setKSPComputeOperators(self, operators, args=None, kargs=None):
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (operators, args, kargs)
+ */
+ __pyx_t_1 = (__pyx_v_args == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/DM.pyx":454
+ * def setKSPComputeOperators(self, operators, args=None, kargs=None):
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (operators, args, kargs)
+ * self.set_attr('__operators__', context)
+ */
+ __pyx_t_2 = (__pyx_v_kargs == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 454, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DM.pyx":455
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (operators, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__operators__', context)
+ * CHKERR( DMKSPSetComputeOperators(self.dm, KSP_ComputeOps, <void*>context) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 455, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_operators);
+ __Pyx_GIVEREF(__pyx_v_operators);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_operators);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/DM.pyx":456
+ * if kargs is None: kargs = {}
+ * context = (operators, args, kargs)
+ * self.set_attr('__operators__', context) # <<<<<<<<<<<<<<
+ * CHKERR( DMKSPSetComputeOperators(self.dm, KSP_ComputeOps, <void*>context) )
+ *
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__operators__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 456, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/DM.pyx":457
+ * context = (operators, args, kargs)
+ * self.set_attr('__operators__', context)
+ * CHKERR( DMKSPSetComputeOperators(self.dm, KSP_ComputeOps, <void*>context) ) # <<<<<<<<<<<<<<
+ *
+ * def createFieldDecomposition(self):
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMKSPSetComputeOperators(__pyx_v_self->dm, __pyx_f_8petsc4py_5PETSc_KSP_ComputeOps, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 457, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":452
+ * getMatrix = createMatrix = createMat
+ *
+ * def setKSPComputeOperators(self, operators, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setKSPComputeOperators", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":459
+ * CHKERR( DMKSPSetComputeOperators(self.dm, KSP_ComputeOps, <void*>context) )
+ *
+ * def createFieldDecomposition(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt clen = 0
+ * cdef PetscIS *cis = NULL
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_143createFieldDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_142createFieldDecomposition[] = "DM.createFieldDecomposition(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_143createFieldDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("createFieldDecomposition (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("createFieldDecomposition", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "createFieldDecomposition", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_142createFieldDecomposition(((struct PyPetscDMObject *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_142createFieldDecomposition(struct PyPetscDMObject *__pyx_v_self) {
+ PetscInt __pyx_v_clen;
+ IS *__pyx_v_cis;
+ DM *__pyx_v_cdm;
+ char **__pyx_v_cnamelist;
+ PyObject *__pyx_v_isets = 0;
+ PyObject *__pyx_v_dms = 0;
+ PyObject *__pyx_v_names = 0;
+ struct PyPetscDMObject *__pyx_v_dm = 0;
+ long __pyx_v_i;
+ PyObject *__pyx_v_name = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ PetscInt __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ int __pyx_t_5;
+ int __pyx_t_6;
+ __Pyx_RefNannySetupContext("createFieldDecomposition", 0);
+
+ /* "PETSc/DM.pyx":460
+ *
+ * def createFieldDecomposition(self):
+ * cdef PetscInt clen = 0 # <<<<<<<<<<<<<<
+ * cdef PetscIS *cis = NULL
+ * cdef PetscDM *cdm = NULL
+ */
+ __pyx_v_clen = 0;
+
+ /* "PETSc/DM.pyx":461
+ * def createFieldDecomposition(self):
+ * cdef PetscInt clen = 0
+ * cdef PetscIS *cis = NULL # <<<<<<<<<<<<<<
+ * cdef PetscDM *cdm = NULL
+ * cdef char** cnamelist = NULL
+ */
+ __pyx_v_cis = NULL;
+
+ /* "PETSc/DM.pyx":462
+ * cdef PetscInt clen = 0
+ * cdef PetscIS *cis = NULL
+ * cdef PetscDM *cdm = NULL # <<<<<<<<<<<<<<
+ * cdef char** cnamelist = NULL
+ *
+ */
+ __pyx_v_cdm = NULL;
+
+ /* "PETSc/DM.pyx":463
+ * cdef PetscIS *cis = NULL
+ * cdef PetscDM *cdm = NULL
+ * cdef char** cnamelist = NULL # <<<<<<<<<<<<<<
+ *
+ * CHKERR( DMCreateFieldDecomposition(self.dm, &clen, &cnamelist, &cis, &cdm) )
+ */
+ __pyx_v_cnamelist = NULL;
+
+ /* "PETSc/DM.pyx":465
+ * cdef char** cnamelist = NULL
+ *
+ * CHKERR( DMCreateFieldDecomposition(self.dm, &clen, &cnamelist, &cis, &cdm) ) # <<<<<<<<<<<<<<
+ *
+ * cdef list isets = [ref_IS(cis[i]) for i from 0 <= i < clen]
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCreateFieldDecomposition(__pyx_v_self->dm, (&__pyx_v_clen), (&__pyx_v_cnamelist), (&__pyx_v_cis), (&__pyx_v_cdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 465, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":467
+ * CHKERR( DMCreateFieldDecomposition(self.dm, &clen, &cnamelist, &cis, &cdm) )
+ *
+ * cdef list isets = [ref_IS(cis[i]) for i from 0 <= i < clen] # <<<<<<<<<<<<<<
+ * cdef list dms = []
+ * cdef list names = []
+ */
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 467, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_3 = __pyx_v_clen;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_ref_IS((__pyx_v_cis[__pyx_v_i]))); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 467, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_4))) __PYX_ERR(40, 467, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
+ __pyx_v_isets = ((PyObject*)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/DM.pyx":468
+ *
+ * cdef list isets = [ref_IS(cis[i]) for i from 0 <= i < clen]
+ * cdef list dms = [] # <<<<<<<<<<<<<<
+ * cdef list names = []
+ * cdef DM dm = None
+ */
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 468, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_v_dms = ((PyObject*)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/DM.pyx":469
+ * cdef list isets = [ref_IS(cis[i]) for i from 0 <= i < clen]
+ * cdef list dms = []
+ * cdef list names = [] # <<<<<<<<<<<<<<
+ * cdef DM dm = None
+ *
+ */
+ __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 469, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_v_names = ((PyObject*)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/DM.pyx":470
+ * cdef list dms = []
+ * cdef list names = []
+ * cdef DM dm = None # <<<<<<<<<<<<<<
+ *
+ * for i from 0 <= i < clen:
+ */
+ __Pyx_INCREF(Py_None);
+ __pyx_v_dm = ((struct PyPetscDMObject *)Py_None);
+
+ /* "PETSc/DM.pyx":472
+ * cdef DM dm = None
+ *
+ * for i from 0 <= i < clen: # <<<<<<<<<<<<<<
+ * if cdm != NULL:
+ * dm = subtype_DM(cdm[i])()
+ */
+ __pyx_t_3 = __pyx_v_clen;
+ for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
+
+ /* "PETSc/DM.pyx":473
+ *
+ * for i from 0 <= i < clen:
+ * if cdm != NULL: # <<<<<<<<<<<<<<
+ * dm = subtype_DM(cdm[i])()
+ * dm.dm = cdm[i]
+ */
+ __pyx_t_5 = ((__pyx_v_cdm != NULL) != 0);
+ if (__pyx_t_5) {
+
+ /* "PETSc/DM.pyx":474
+ * for i from 0 <= i < clen:
+ * if cdm != NULL:
+ * dm = subtype_DM(cdm[i])() # <<<<<<<<<<<<<<
+ * dm.dm = cdm[i]
+ * PetscINCREF(dm.obj)
+ */
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_subtype_DM((__pyx_v_cdm[__pyx_v_i]))); if (unlikely(!__pyx_t_2)) __PYX_ERR(40, 474, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 474, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+ if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_8petsc4py_5PETSc_DM))))) __PYX_ERR(40, 474, __pyx_L1_error)
+ __Pyx_DECREF_SET(__pyx_v_dm, ((struct PyPetscDMObject *)__pyx_t_4));
+ __pyx_t_4 = 0;
+
+ /* "PETSc/DM.pyx":475
+ * if cdm != NULL:
+ * dm = subtype_DM(cdm[i])()
+ * dm.dm = cdm[i] # <<<<<<<<<<<<<<
+ * PetscINCREF(dm.obj)
+ * dms.append(dm)
+ */
+ __pyx_v_dm->dm = (__pyx_v_cdm[__pyx_v_i]);
+
+ /* "PETSc/DM.pyx":476
+ * dm = subtype_DM(cdm[i])()
+ * dm.dm = cdm[i]
+ * PetscINCREF(dm.obj) # <<<<<<<<<<<<<<
+ * dms.append(dm)
+ * else:
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_dm->__pyx_base.obj);
+
+ /* "PETSc/DM.pyx":477
+ * dm.dm = cdm[i]
+ * PetscINCREF(dm.obj)
+ * dms.append(dm) # <<<<<<<<<<<<<<
+ * else:
+ * dms.append(None)
+ */
+ __pyx_t_6 = __Pyx_PyList_Append(__pyx_v_dms, ((PyObject *)__pyx_v_dm)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(40, 477, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":473
+ *
+ * for i from 0 <= i < clen:
+ * if cdm != NULL: # <<<<<<<<<<<<<<
+ * dm = subtype_DM(cdm[i])()
+ * dm.dm = cdm[i]
+ */
+ goto __pyx_L7;
+ }
+
+ /* "PETSc/DM.pyx":479
+ * dms.append(dm)
+ * else:
+ * dms.append(None) # <<<<<<<<<<<<<<
+ *
+ * name = bytes2str(cnamelist[i])
+ */
+ /*else*/ {
+ __pyx_t_6 = __Pyx_PyList_Append(__pyx_v_dms, Py_None); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(40, 479, __pyx_L1_error)
+ }
+ __pyx_L7:;
+
+ /* "PETSc/DM.pyx":481
+ * dms.append(None)
+ *
+ * name = bytes2str(cnamelist[i]) # <<<<<<<<<<<<<<
+ * names.append(name)
+ * CHKERR( PetscFree(cnamelist[i]) )
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_bytes2str((__pyx_v_cnamelist[__pyx_v_i])); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 481, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_XDECREF_SET(__pyx_v_name, __pyx_t_4);
+ __pyx_t_4 = 0;
+
+ /* "PETSc/DM.pyx":482
+ *
+ * name = bytes2str(cnamelist[i])
+ * names.append(name) # <<<<<<<<<<<<<<
+ * CHKERR( PetscFree(cnamelist[i]) )
+ *
+ */
+ __pyx_t_6 = __Pyx_PyList_Append(__pyx_v_names, __pyx_v_name); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(40, 482, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":483
+ * name = bytes2str(cnamelist[i])
+ * names.append(name)
+ * CHKERR( PetscFree(cnamelist[i]) ) # <<<<<<<<<<<<<<
+ *
+ * CHKERR( ISDestroy(&cis[i]) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree((__pyx_v_cnamelist[__pyx_v_i]))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 483, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":485
+ * CHKERR( PetscFree(cnamelist[i]) )
+ *
+ * CHKERR( ISDestroy(&cis[i]) ) # <<<<<<<<<<<<<<
+ * CHKERR( DMDestroy(&cdm[i]) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&(__pyx_v_cis[__pyx_v_i])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 485, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":486
+ *
+ * CHKERR( ISDestroy(&cis[i]) )
+ * CHKERR( DMDestroy(&cdm[i]) ) # <<<<<<<<<<<<<<
+ *
+ * CHKERR( PetscFree(cis) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDestroy((&(__pyx_v_cdm[__pyx_v_i])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 486, __pyx_L1_error)
+ }
+
+ /* "PETSc/DM.pyx":488
+ * CHKERR( DMDestroy(&cdm[i]) )
+ *
+ * CHKERR( PetscFree(cis) ) # <<<<<<<<<<<<<<
+ * CHKERR( PetscFree(cdm) )
+ * CHKERR( PetscFree(cnamelist) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_cis)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 488, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":489
+ *
+ * CHKERR( PetscFree(cis) )
+ * CHKERR( PetscFree(cdm) ) # <<<<<<<<<<<<<<
+ * CHKERR( PetscFree(cnamelist) )
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_cdm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 489, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":490
+ * CHKERR( PetscFree(cis) )
+ * CHKERR( PetscFree(cdm) )
+ * CHKERR( PetscFree(cnamelist) ) # <<<<<<<<<<<<<<
+ *
+ * return (names, isets, dms)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_cnamelist)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(40, 490, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":492
+ * CHKERR( PetscFree(cnamelist) )
+ *
+ * return (names, isets, dms) # <<<<<<<<<<<<<<
+ *
+ * def setSNESFunction(self, function, args=None, kargs=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(40, 492, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_INCREF(__pyx_v_names);
+ __Pyx_GIVEREF(__pyx_v_names);
+ PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_names);
+ __Pyx_INCREF(__pyx_v_isets);
+ __Pyx_GIVEREF(__pyx_v_isets);
+ PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_isets);
+ __Pyx_INCREF(__pyx_v_dms);
+ __Pyx_GIVEREF(__pyx_v_dms);
+ PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_dms);
+ __pyx_r = __pyx_t_4;
+ __pyx_t_4 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DM.pyx":459
+ * CHKERR( DMKSPSetComputeOperators(self.dm, KSP_ComputeOps, <void*>context) )
+ *
+ * def createFieldDecomposition(self): # <<<<<<<<<<<<<<
+ * cdef PetscInt clen = 0
+ * cdef PetscIS *cis = NULL
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.createFieldDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_isets);
+ __Pyx_XDECREF(__pyx_v_dms);
+ __Pyx_XDECREF(__pyx_v_names);
+ __Pyx_XDECREF((PyObject *)__pyx_v_dm);
+ __Pyx_XDECREF(__pyx_v_name);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":494
+ * return (names, isets, dms)
+ *
+ * def setSNESFunction(self, function, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if function is not None:
+ * if args is None: args = ()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_145setSNESFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_144setSNESFunction[] = "DM.setSNESFunction(self, function, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_145setSNESFunction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_function = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setSNESFunction (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_function,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_function)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSNESFunction") < 0)) __PYX_ERR(40, 494, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_function = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setSNESFunction", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 494, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setSNESFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_144setSNESFunction(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_function, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_144setSNESFunction(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_function, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setSNESFunction", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/DM.pyx":495
+ *
+ * def setSNESFunction(self, function, args=None, kargs=None):
+ * if function is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_1 = (__pyx_v_function != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/DM.pyx":496
+ * def setSNESFunction(self, function, args=None, kargs=None):
+ * if function is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (function, args, kargs)
+ */
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/DM.pyx":497
+ * if function is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (function, args, kargs)
+ * self.set_attr('__function__', context)
+ */
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 497, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DM.pyx":498
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (function, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__function__', context)
+ * CHKERR( DMSNESSetFunction(self.dm, SNES_Function, <void*>context) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 498, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_function);
+ __Pyx_GIVEREF(__pyx_v_function);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_function);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/DM.pyx":499
+ * if kargs is None: kargs = {}
+ * context = (function, args, kargs)
+ * self.set_attr('__function__', context) # <<<<<<<<<<<<<<
+ * CHKERR( DMSNESSetFunction(self.dm, SNES_Function, <void*>context) )
+ * else:
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__function__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 499, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/DM.pyx":500
+ * context = (function, args, kargs)
+ * self.set_attr('__function__', context)
+ * CHKERR( DMSNESSetFunction(self.dm, SNES_Function, <void*>context) ) # <<<<<<<<<<<<<<
+ * else:
+ * CHKERR( DMSNESSetFunction(self.dm, NULL, NULL) )
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSNESSetFunction(__pyx_v_self->dm, __pyx_f_8petsc4py_5PETSc_SNES_Function, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 500, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":495
+ *
+ * def setSNESFunction(self, function, args=None, kargs=None):
+ * if function is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/DM.pyx":502
+ * CHKERR( DMSNESSetFunction(self.dm, SNES_Function, <void*>context) )
+ * else:
+ * CHKERR( DMSNESSetFunction(self.dm, NULL, NULL) ) # <<<<<<<<<<<<<<
+ *
+ * def setSNESJacobian(self, jacobian, args=None, kargs=None):
+ */
+ /*else*/ {
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSNESSetFunction(__pyx_v_self->dm, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 502, __pyx_L1_error)
+ }
+ __pyx_L3:;
+
+ /* "PETSc/DM.pyx":494
+ * return (names, isets, dms)
+ *
+ * def setSNESFunction(self, function, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if function is not None:
+ * if args is None: args = ()
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setSNESFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DM.pyx":504
+ * CHKERR( DMSNESSetFunction(self.dm, NULL, NULL) )
+ *
+ * def setSNESJacobian(self, jacobian, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if jacobian is not None:
+ * if args is None: args = ()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_147setSNESJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_2DM_146setSNESJacobian[] = "DM.setSNESJacobian(self, jacobian, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_2DM_147setSNESJacobian(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_jacobian = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setSNESJacobian (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_jacobian,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_jacobian)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSNESJacobian") < 0)) __PYX_ERR(40, 504, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_jacobian = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setSNESJacobian", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(40, 504, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setSNESJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_2DM_146setSNESJacobian(((struct PyPetscDMObject *)__pyx_v_self), __pyx_v_jacobian, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_2DM_146setSNESJacobian(struct PyPetscDMObject *__pyx_v_self, PyObject *__pyx_v_jacobian, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setSNESJacobian", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/DM.pyx":505
+ *
+ * def setSNESJacobian(self, jacobian, args=None, kargs=None):
+ * if jacobian is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_1 = (__pyx_v_jacobian != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/DM.pyx":506
+ * def setSNESJacobian(self, jacobian, args=None, kargs=None):
+ * if jacobian is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (jacobian, args, kargs)
+ */
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/DM.pyx":507
+ * if jacobian is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (jacobian, args, kargs)
+ * self.set_attr('__jacobian__', context)
+ */
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 507, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DM.pyx":508
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (jacobian, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__jacobian__', context)
+ * CHKERR( DMSNESSetJacobian(self.dm, SNES_Jacobian, <void*>context) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 508, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_jacobian);
+ __Pyx_GIVEREF(__pyx_v_jacobian);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_jacobian);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/DM.pyx":509
+ * if kargs is None: kargs = {}
+ * context = (jacobian, args, kargs)
+ * self.set_attr('__jacobian__', context) # <<<<<<<<<<<<<<
+ * CHKERR( DMSNESSetJacobian(self.dm, SNES_Jacobian, <void*>context) )
+ * else:
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DM *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__jacobian__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(40, 509, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/DM.pyx":510
+ * context = (jacobian, args, kargs)
+ * self.set_attr('__jacobian__', context)
+ * CHKERR( DMSNESSetJacobian(self.dm, SNES_Jacobian, <void*>context) ) # <<<<<<<<<<<<<<
+ * else:
+ * CHKERR( DMSNESSetJacobian(self.dm, NULL, NULL) )
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSNESSetJacobian(__pyx_v_self->dm, __pyx_f_8petsc4py_5PETSc_SNES_Jacobian, ((void *)__pyx_v_context))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 510, __pyx_L1_error)
+
+ /* "PETSc/DM.pyx":505
+ *
+ * def setSNESJacobian(self, jacobian, args=None, kargs=None):
+ * if jacobian is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/DM.pyx":512
+ * CHKERR( DMSNESSetJacobian(self.dm, SNES_Jacobian, <void*>context) )
+ * else:
+ * CHKERR( DMSNESSetJacobian(self.dm, NULL, NULL) ) # <<<<<<<<<<<<<<
+ *
+ * # --------------------------------------------------------------------
+ */
+ /*else*/ {
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSNESSetJacobian(__pyx_v_self->dm, NULL, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(40, 512, __pyx_L1_error)
+ }
+ __pyx_L3:;
+
+ /* "PETSc/DM.pyx":504
+ * CHKERR( DMSNESSetFunction(self.dm, NULL, NULL) )
+ *
+ * def setSNESJacobian(self, jacobian, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if jacobian is not None:
+ * if args is None: args = ()
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DM.setSNESJacobian", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
/* "PETSc/DMDA.pyx":25
* #
*
@@ -206260,15 +222642,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_1create(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
+ CYTHON_FALLTHROUGH;
case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
+ CYTHON_FALLTHROUGH;
case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
+ CYTHON_FALLTHROUGH;
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -206279,46 +222671,55 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_1create(PyObject *__pyx_v_self,
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dim);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dof);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sizes);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_proc_sizes);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_boundary_type);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_stencil_type);
if (value) { values[5] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 6:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_stencil_width);
if (value) { values[6] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 7:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_setup);
if (value) { values[7] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 8:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ownership_ranges);
if (value) { values[8] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 9:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -206331,15 +222732,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_1create(PyObject *__pyx_v_self,
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
+ CYTHON_FALLTHROUGH;
case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
+ CYTHON_FALLTHROUGH;
case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
+ CYTHON_FALLTHROUGH;
case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
+ CYTHON_FALLTHROUGH;
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -206449,7 +222860,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
__Pyx_XGOTREF(__pyx_t_2);
__Pyx_XGOTREF(__pyx_t_3);
/*try:*/ {
- __pyx_t_4 = PySequence_Tuple(__pyx_v_dim); if (unlikely(!__pyx_t_4)) __PYX_ERR(41, 31, __pyx_L3_error)
+ __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_dim); if (unlikely(!__pyx_t_4)) __PYX_ERR(41, 31, __pyx_L3_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF_SET(__pyx_v_arg, __pyx_t_4);
__pyx_t_4 = 0;
@@ -206475,9 +222886,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- goto __pyx_L10_try_end;
+ goto __pyx_L8_try_end;
__pyx_L3_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/DMDA.pyx":32
@@ -206502,19 +222912,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
* except TypeError: pass
* else: dim, sizes = None, arg
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
goto __pyx_L1_error;
__pyx_L4_exception_handled:;
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_1);
__Pyx_XGIVEREF(__pyx_t_2);
__Pyx_XGIVEREF(__pyx_t_3);
__Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
- __pyx_L10_try_end:;
+ __pyx_L8_try_end:;
}
/* "PETSc/DMDA.pyx":35
@@ -206669,7 +223077,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
* if psizes is not None:
* pdim = asDims(psizes, &m, &n, &p)
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_gsizes, (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P)); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(41, 51, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_gsizes, (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P)); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 51, __pyx_L1_error)
__pyx_v_gdim = __pyx_t_9;
/* "PETSc/DMDA.pyx":50
@@ -206699,7 +223107,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
* if gdim>=0 and pdim>=0:
* assert gdim == pdim
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_psizes, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p)); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(41, 53, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_psizes, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p)); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 53, __pyx_L1_error)
__pyx_v_pdim = __pyx_t_9;
/* "PETSc/DMDA.pyx":52
@@ -206722,11 +223130,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
if (__pyx_t_8) {
} else {
__pyx_t_7 = __pyx_t_8;
- goto __pyx_L14_bool_binop_done;
+ goto __pyx_L12_bool_binop_done;
}
__pyx_t_8 = ((__pyx_v_pdim >= 0) != 0);
__pyx_t_7 = __pyx_t_8;
- __pyx_L14_bool_binop_done:;
+ __pyx_L12_bool_binop_done:;
if (__pyx_t_7) {
/* "PETSc/DMDA.pyx":55
@@ -206764,7 +223172,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
__pyx_t_7 = (__pyx_v_dim != Py_None);
__pyx_t_8 = (__pyx_t_7 != 0);
if (__pyx_t_8) {
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(41, 57, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 57, __pyx_L1_error)
__pyx_v_ndim = __pyx_t_9;
}
@@ -206778,7 +223186,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
__pyx_t_8 = (__pyx_v_dof != Py_None);
__pyx_t_7 = (__pyx_t_8 != 0);
if (__pyx_t_7) {
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(41, 58, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 58, __pyx_L1_error)
__pyx_v_ndof = __pyx_t_9;
}
@@ -206856,7 +223264,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
* if stencil_type is not None:
* stype = asStencil(stencil_type)
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(41, 68, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 68, __pyx_L1_error)
/* "PETSc/DMDA.pyx":67
* &lx, &ly, &lz)
@@ -206885,7 +223293,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
* if stencil_width is not None:
* swidth = asInt(stencil_width)
*/
- __pyx_t_10 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_10 == ((DMDAStencilType)-1L))) __PYX_ERR(41, 70, __pyx_L1_error)
+ __pyx_t_10 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_10 == ((DMDAStencilType)((DMDAStencilType)-1L)))) __PYX_ERR(41, 70, __pyx_L1_error)
__pyx_v_stype = __pyx_t_10;
/* "PETSc/DMDA.pyx":69
@@ -206915,7 +223323,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
* if setup and swidth == PETSC_DECIDE: swidth = 0
* # create the DMDA object
*/
- __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_9 == -1L && PyErr_Occurred())) __PYX_ERR(41, 72, __pyx_L1_error)
+ __pyx_t_9 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_9 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 72, __pyx_L1_error)
__pyx_v_swidth = __pyx_t_9;
/* "PETSc/DMDA.pyx":71
@@ -206938,11 +223346,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
if (__pyx_t_8) {
} else {
__pyx_t_7 = __pyx_t_8;
- goto __pyx_L25_bool_binop_done;
+ goto __pyx_L23_bool_binop_done;
}
__pyx_t_8 = ((__pyx_v_swidth == PETSC_DECIDE) != 0);
__pyx_t_7 = __pyx_t_8;
- __pyx_L25_bool_binop_done:;
+ __pyx_L23_bool_binop_done:;
if (__pyx_t_7) {
__pyx_v_swidth = 0;
}
@@ -206973,7 +223381,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
* M, N, P, m, n, p, lx, ly, lz,
* btx, bty, btz, stype, swidth,
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDACreateND(__pyx_v_ccomm, __pyx_v_ndim, __pyx_v_ndof, __pyx_v_M, __pyx_v_N, __pyx_v_P, __pyx_v_m, __pyx_v_n, __pyx_v_p, __pyx_v_lx, __pyx_v_ly, __pyx_v_lz, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz, __pyx_v_stype, __pyx_v_swidth, (&__pyx_v_newda))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(41, 77, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDACreateND(__pyx_v_ccomm, __pyx_v_ndim, __pyx_v_ndof, __pyx_v_M, __pyx_v_N, __pyx_v_P, __pyx_v_m, __pyx_v_n, __pyx_v_p, __pyx_v_lx, __pyx_v_ly, __pyx_v_lz, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz, __pyx_v_stype, __pyx_v_swidth, (&__pyx_v_newda))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(41, 77, __pyx_L1_error)
/* "PETSc/DMDA.pyx":81
* btx, bty, btz, stype, swidth,
@@ -206986,13 +223394,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_create(struct __pyx_obj_8petsc4
if (__pyx_t_8) {
} else {
__pyx_t_7 = __pyx_t_8;
- goto __pyx_L28_bool_binop_done;
+ goto __pyx_L26_bool_binop_done;
}
__pyx_t_8 = ((__pyx_v_ndim > 0) != 0);
__pyx_t_7 = __pyx_t_8;
- __pyx_L28_bool_binop_done:;
+ __pyx_L26_bool_binop_done:;
if (__pyx_t_7) {
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetUp(__pyx_v_newda)); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(41, 81, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetUp(__pyx_v_newda)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(41, 81, __pyx_L1_error)
}
/* "PETSc/DMDA.pyx":82
@@ -207082,9 +223490,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_3duplicate(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -207095,16 +223507,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_3duplicate(PyObject *__pyx_v_se
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dof);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_boundary_type);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_stencil_type);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_stencil_width);
@@ -207117,9 +223532,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_3duplicate(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -207265,7 +223684,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* &ndim,
* &M, &N, &P,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ndim), (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p), (&__pyx_v_ndof), (&__pyx_v_swidth), (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz), (&__pyx_v_stype))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 95, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ndim), (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p), (&__pyx_v_ndof), (&__pyx_v_swidth), (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz), (&__pyx_v_stype))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 95, __pyx_L1_error)
/* "PETSc/DMDA.pyx":102
* &btx, &bty, &btz,
@@ -207285,7 +223704,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* cdef MPI_Comm comm = MPI_COMM_NULL
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &comm) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetOwnershipRanges(__pyx_v_self->__pyx_base.dm, (&__pyx_v_lx), (&__pyx_v_ly), (&__pyx_v_lz))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 103, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetOwnershipRanges(__pyx_v_self->__pyx_base.dm, (&__pyx_v_lx), (&__pyx_v_ly), (&__pyx_v_lz))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 103, __pyx_L1_error)
/* "PETSc/DMDA.pyx":104
* cdef const_PetscInt *lx = NULL, *ly = NULL, *lz = NULL
@@ -207303,7 +223722,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* #
* if dof is not None:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->__pyx_base.dm), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 105, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_self->__pyx_base.dm), (&__pyx_v_comm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 105, __pyx_L1_error)
/* "PETSc/DMDA.pyx":107
* CHKERR( PetscObjectGetComm(<PetscObject>self.dm, &comm) )
@@ -207323,7 +223742,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* if boundary_type is not None:
* asBoundary(boundary_type, &btx, &bty, &btz)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(41, 108, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 108, __pyx_L1_error)
__pyx_v_ndof = __pyx_t_4;
/* "PETSc/DMDA.pyx":107
@@ -207353,7 +223772,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* if stencil_type is not None:
* stype = asStencil(stencil_type)
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(41, 110, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 110, __pyx_L1_error)
/* "PETSc/DMDA.pyx":109
* if dof is not None:
@@ -207382,7 +223801,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* if stencil_width is not None:
* swidth = asInt(stencil_width)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_5 == ((DMDAStencilType)-1L))) __PYX_ERR(41, 112, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_5 == ((DMDAStencilType)((DMDAStencilType)-1L)))) __PYX_ERR(41, 112, __pyx_L1_error)
__pyx_v_stype = __pyx_t_5;
/* "PETSc/DMDA.pyx":111
@@ -207412,7 +223831,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* #
* cdef DMDA da = DMDA()
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(41, 114, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 114, __pyx_L1_error)
__pyx_v_swidth = __pyx_t_4;
/* "PETSc/DMDA.pyx":113
@@ -207443,7 +223862,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* M, N, P, m, n, p, lx, ly, lz,
* btx, bty, btz, stype, swidth,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDACreateND(__pyx_v_comm, __pyx_v_ndim, __pyx_v_ndof, __pyx_v_M, __pyx_v_N, __pyx_v_P, __pyx_v_m, __pyx_v_n, __pyx_v_p, __pyx_v_lx, __pyx_v_ly, __pyx_v_lz, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz, __pyx_v_stype, __pyx_v_swidth, (&__pyx_v_da->__pyx_base.dm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 117, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDACreateND(__pyx_v_comm, __pyx_v_ndim, __pyx_v_ndof, __pyx_v_M, __pyx_v_N, __pyx_v_P, __pyx_v_m, __pyx_v_n, __pyx_v_p, __pyx_v_lx, __pyx_v_ly, __pyx_v_lz, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz, __pyx_v_stype, __pyx_v_swidth, (&__pyx_v_da->__pyx_base.dm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 117, __pyx_L1_error)
/* "PETSc/DMDA.pyx":121
* btx, bty, btz, stype, swidth,
@@ -207452,7 +223871,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_2duplicate(struct __pyx_obj_8pe
* return da
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetUp(__pyx_v_da->__pyx_base.dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 121, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetUp(__pyx_v_da->__pyx_base.dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 121, __pyx_L1_error)
/* "PETSc/DMDA.pyx":122
* &da.dm) )
@@ -207510,6 +223929,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_5setDim(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -207564,7 +223984,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_4setDim(struct __pyx_obj_8petsc
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_setDimension); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -207577,15 +223997,33 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_4setDim(struct __pyx_obj_8petsc
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_dim); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(41, 127, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_dim);
- __Pyx_GIVEREF(__pyx_v_dim);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_dim);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 127, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_dim};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 127, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_dim};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 127, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(41, 127, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_dim);
+ __Pyx_GIVEREF(__pyx_v_dim);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_dim);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 127, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_r = __pyx_t_1;
@@ -207658,7 +224096,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_6getDim(struct __pyx_obj_8petsc
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDimension); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 130, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -207724,6 +224162,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_9setDof(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -207773,7 +224212,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_8setDof(struct __pyx_obj_8petsc
* CHKERR( DMDASetDof(self.dm, ndof) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 133, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dof); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 133, __pyx_L1_error)
__pyx_v_ndof = __pyx_t_1;
/* "PETSc/DMDA.pyx":134
@@ -207783,7 +224222,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_8setDof(struct __pyx_obj_8petsc
*
* def getDof(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetDof(__pyx_v_self->__pyx_base.dm, __pyx_v_ndof)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 134, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetDof(__pyx_v_self->__pyx_base.dm, __pyx_v_ndof)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 134, __pyx_L1_error)
/* "PETSc/DMDA.pyx":132
* return self.getDimension()
@@ -207854,7 +224293,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_10getDof(struct __pyx_obj_8pets
* NULL,
* NULL, NULL, NULL,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_dof), NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 138, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_dof), NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 138, __pyx_L1_error)
/* "PETSc/DMDA.pyx":145
* NULL, NULL, NULL,
@@ -207913,6 +224352,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_13setSizes(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -207969,7 +224409,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_12setSizes(struct __pyx_obj_8pe
* cdef PetscInt gdim = PETSC_DECIDE
* cdef PetscInt M = 1
*/
- __pyx_t_1 = PySequence_Tuple(__pyx_v_sizes); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 148, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_sizes); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 148, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_gsizes = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
@@ -208017,7 +224457,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_12setSizes(struct __pyx_obj_8pe
* cdef PetscInt dim = PETSC_DECIDE
* CHKERR( DMDAGetDim(self.dm, &dim) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_gsizes, (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P)); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(41, 153, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_gsizes, (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P)); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 153, __pyx_L1_error)
__pyx_v_gdim = __pyx_t_2;
/* "PETSc/DMDA.pyx":154
@@ -208036,7 +224476,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_12setSizes(struct __pyx_obj_8pe
* if dim == PETSC_DECIDE:
* CHKERR( DMSetDimension(self.dm, gdim) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 155, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 155, __pyx_L1_error)
/* "PETSc/DMDA.pyx":156
* cdef PetscInt dim = PETSC_DECIDE
@@ -208055,7 +224495,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_12setSizes(struct __pyx_obj_8pe
* CHKERR( DMDASetSizes(self.dm, M, N, P) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDimension(__pyx_v_self->__pyx_base.dm, __pyx_v_gdim)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 157, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDimension(__pyx_v_self->__pyx_base.dm, __pyx_v_gdim)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 157, __pyx_L1_error)
/* "PETSc/DMDA.pyx":156
* cdef PetscInt dim = PETSC_DECIDE
@@ -208073,7 +224513,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_12setSizes(struct __pyx_obj_8pe
*
* def getSizes(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetSizes(__pyx_v_self->__pyx_base.dm, __pyx_v_M, __pyx_v_N, __pyx_v_P)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 158, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetSizes(__pyx_v_self->__pyx_base.dm, __pyx_v_M, __pyx_v_N, __pyx_v_P)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 158, __pyx_L1_error)
/* "PETSc/DMDA.pyx":147
* return toInt(dof)
@@ -208176,7 +224616,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_14getSizes(struct __pyx_obj_8pe
* &dim,
* &M, &N, &P,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P), NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 165, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), (&__pyx_v_M), (&__pyx_v_N), (&__pyx_v_P), NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 165, __pyx_L1_error)
/* "PETSc/DMDA.pyx":172
* NULL, NULL, NULL,
@@ -208235,6 +224675,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_17setProcSizes(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -208291,7 +224732,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_16setProcSizes(struct __pyx_obj
* cdef PetscInt pdim = PETSC_DECIDE
* cdef PetscInt m = PETSC_DECIDE
*/
- __pyx_t_1 = PySequence_Tuple(__pyx_v_proc_sizes); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 175, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PySequence_Tuple(__pyx_v_proc_sizes); if (unlikely(!__pyx_t_1)) __PYX_ERR(41, 175, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_psizes = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
@@ -208339,7 +224780,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_16setProcSizes(struct __pyx_obj
* cdef PetscInt dim = PETSC_DECIDE
* CHKERR( DMDAGetDim(self.dm, &dim) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_psizes, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p)); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(41, 180, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asDims(__pyx_v_psizes, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p)); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 180, __pyx_L1_error)
__pyx_v_pdim = __pyx_t_2;
/* "PETSc/DMDA.pyx":181
@@ -208358,7 +224799,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_16setProcSizes(struct __pyx_obj
* if dim == PETSC_DECIDE:
* CHKERR( DMSetDimension(self.dm, pdim) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 182, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 182, __pyx_L1_error)
/* "PETSc/DMDA.pyx":183
* cdef PetscInt dim = PETSC_DECIDE
@@ -208377,7 +224818,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_16setProcSizes(struct __pyx_obj
* CHKERR( DMDASetNumProcs(self.dm, m, n, p) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDimension(__pyx_v_self->__pyx_base.dm, __pyx_v_pdim)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 184, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMSetDimension(__pyx_v_self->__pyx_base.dm, __pyx_v_pdim)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 184, __pyx_L1_error)
/* "PETSc/DMDA.pyx":183
* cdef PetscInt dim = PETSC_DECIDE
@@ -208395,7 +224836,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_16setProcSizes(struct __pyx_obj
*
* def getProcSizes(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetNumProcs(__pyx_v_self->__pyx_base.dm, __pyx_v_m, __pyx_v_n, __pyx_v_p)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 185, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetNumProcs(__pyx_v_self->__pyx_base.dm, __pyx_v_m, __pyx_v_n, __pyx_v_p)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 185, __pyx_L1_error)
/* "PETSc/DMDA.pyx":174
* return toDims(dim, M, N, P)
@@ -208498,7 +224939,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_18getProcSizes(struct __pyx_obj
* &dim,
* NULL, NULL, NULL,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p), NULL, NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 192, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p), NULL, NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 192, __pyx_L1_error)
/* "PETSc/DMDA.pyx":199
* NULL, NULL, NULL,
@@ -208557,6 +224998,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_21setBoundaryType(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -208635,7 +225077,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_20setBoundaryType(struct __pyx_
* CHKERR( DMDASetBoundaryType(self.dm, btx, bty, btz) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 205, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 205, __pyx_L1_error)
/* "PETSc/DMDA.pyx":206
* cdef PetscDMBoundaryType btz = DM_BOUNDARY_NONE
@@ -208644,7 +225086,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_20setBoundaryType(struct __pyx_
*
* def getBoundaryType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetBoundaryType(__pyx_v_self->__pyx_base.dm, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 206, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetBoundaryType(__pyx_v_self->__pyx_base.dm, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 206, __pyx_L1_error)
/* "PETSc/DMDA.pyx":201
* return toDims(dim, m, n, p)
@@ -208745,7 +225187,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_22getBoundaryType(struct __pyx_
* &dim,
* NULL, NULL, NULL,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz), NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 213, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz), NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 213, __pyx_L1_error)
/* "PETSc/DMDA.pyx":220
* &btx, &bty, &btz,
@@ -208804,6 +225246,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_25setStencilType(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -208853,7 +225296,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_24setStencilType(struct __pyx_o
* CHKERR( DMDASetStencilType(self.dm, stype) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_1 == ((DMDAStencilType)-1L))) __PYX_ERR(41, 223, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_1 == ((DMDAStencilType)((DMDAStencilType)-1L)))) __PYX_ERR(41, 223, __pyx_L1_error)
__pyx_v_stype = __pyx_t_1;
/* "PETSc/DMDA.pyx":224
@@ -208863,7 +225306,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_24setStencilType(struct __pyx_o
*
* def getStencilType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilType(__pyx_v_self->__pyx_base.dm, __pyx_v_stype)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 224, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilType(__pyx_v_self->__pyx_base.dm, __pyx_v_stype)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 224, __pyx_L1_error)
/* "PETSc/DMDA.pyx":222
* return toDims(dim, btx, bty, btz)
@@ -208934,7 +225377,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_26getStencilType(struct __pyx_o
* NULL,
* NULL, NULL, NULL,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_stype))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 228, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_stype))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 228, __pyx_L1_error)
/* "PETSc/DMDA.pyx":235
* NULL, NULL, NULL,
@@ -208993,6 +225436,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_29setStencilWidth(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -209042,7 +225486,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_28setStencilWidth(struct __pyx_
* CHKERR( DMDASetStencilWidth(self.dm, swidth) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 238, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 238, __pyx_L1_error)
__pyx_v_swidth = __pyx_t_1;
/* "PETSc/DMDA.pyx":239
@@ -209052,7 +225496,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_28setStencilWidth(struct __pyx_
*
* def getStencilWidth(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilWidth(__pyx_v_self->__pyx_base.dm, __pyx_v_swidth)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 239, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilWidth(__pyx_v_self->__pyx_base.dm, __pyx_v_swidth)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 239, __pyx_L1_error)
/* "PETSc/DMDA.pyx":237
* return stype
@@ -209123,7 +225567,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_30getStencilWidth(struct __pyx_
* NULL,
* NULL, NULL, NULL,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_swidth), NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 243, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_swidth), NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 243, __pyx_L1_error)
/* "PETSc/DMDA.pyx":250
* NULL, NULL, NULL,
@@ -209183,7 +225627,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_33setStencil(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -209192,6 +225638,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_33setStencil(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_stencil_type)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_stencil_width)) != 0)) kw_args--;
else {
@@ -209242,7 +225689,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_32setStencil(struct __pyx_obj_8
* cdef PetscInt swidth = asInt(stencil_width)
* CHKERR( DMDASetStencilType(self.dm, stype) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_1 == ((DMDAStencilType)-1L))) __PYX_ERR(41, 253, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asStencil(__pyx_v_stencil_type); if (unlikely(__pyx_t_1 == ((DMDAStencilType)((DMDAStencilType)-1L)))) __PYX_ERR(41, 253, __pyx_L1_error)
__pyx_v_stype = __pyx_t_1;
/* "PETSc/DMDA.pyx":254
@@ -209252,7 +225699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_32setStencil(struct __pyx_obj_8
* CHKERR( DMDASetStencilType(self.dm, stype) )
* CHKERR( DMDASetStencilWidth(self.dm, swidth) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(41, 254, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_stencil_width); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 254, __pyx_L1_error)
__pyx_v_swidth = __pyx_t_2;
/* "PETSc/DMDA.pyx":255
@@ -209262,7 +225709,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_32setStencil(struct __pyx_obj_8
* CHKERR( DMDASetStencilWidth(self.dm, swidth) )
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilType(__pyx_v_self->__pyx_base.dm, __pyx_v_stype)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 255, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilType(__pyx_v_self->__pyx_base.dm, __pyx_v_stype)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 255, __pyx_L1_error)
/* "PETSc/DMDA.pyx":256
* cdef PetscInt swidth = asInt(stencil_width)
@@ -209271,7 +225718,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_32setStencil(struct __pyx_obj_8
*
* def getStencil(self):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilWidth(__pyx_v_self->__pyx_base.dm, __pyx_v_swidth)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 256, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetStencilWidth(__pyx_v_self->__pyx_base.dm, __pyx_v_swidth)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 256, __pyx_L1_error)
/* "PETSc/DMDA.pyx":252
* return toInt(swidth)
@@ -209354,7 +225801,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_34getStencil(struct __pyx_obj_8
* NULL,
* NULL, NULL, NULL,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_swidth), NULL, NULL, NULL, (&__pyx_v_stype))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 261, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (&__pyx_v_swidth), NULL, NULL, NULL, (&__pyx_v_stype))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 261, __pyx_L1_error)
/* "PETSc/DMDA.pyx":268
* NULL, NULL, NULL,
@@ -209466,7 +225913,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_36getRanges(struct __pyx_obj_8p
* CHKERR( DMDAGetCorners(self.dm,
* &x, &y, &z,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 274, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 274, __pyx_L1_error)
/* "PETSc/DMDA.pyx":275
* cdef PetscInt dim=0, x=0, y=0, z=0, m=0, n=0, p=0
@@ -209475,7 +225922,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_36getRanges(struct __pyx_obj_8p
* &x, &y, &z,
* &m, &n, &p) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 275, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 275, __pyx_L1_error)
/* "PETSc/DMDA.pyx":278
* &x, &y, &z,
@@ -209659,7 +226106,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_38getGhostRanges(struct __pyx_o
* CHKERR( DMDAGetGhostCorners(self.dm,
* &x, &y, &z,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 284, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 284, __pyx_L1_error)
/* "PETSc/DMDA.pyx":285
* cdef PetscInt dim=0, x=0, y=0, z=0, m=0, n=0, p=0
@@ -209668,7 +226115,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_38getGhostRanges(struct __pyx_o
* &x, &y, &z,
* &m, &n, &p) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetGhostCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 285, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetGhostCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 285, __pyx_L1_error)
/* "PETSc/DMDA.pyx":288
* &x, &y, &z,
@@ -209856,7 +226303,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_40getOwnershipRanges(struct __p
* &dim,
* NULL, NULL, NULL,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p), NULL, NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 295, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInfo(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim), NULL, NULL, NULL, (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p), NULL, NULL, NULL, NULL, NULL, NULL)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 295, __pyx_L1_error)
/* "PETSc/DMDA.pyx":302
* NULL, NULL, NULL,
@@ -209865,7 +226312,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_40getOwnershipRanges(struct __p
* return toOwnershipRanges(dim, m, n, p, lx, ly, lz)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetOwnershipRanges(__pyx_v_self->__pyx_base.dm, (&__pyx_v_lx), (&__pyx_v_ly), (&__pyx_v_lz))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 302, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetOwnershipRanges(__pyx_v_self->__pyx_base.dm, (&__pyx_v_lx), (&__pyx_v_ly), (&__pyx_v_lz))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 302, __pyx_L1_error)
/* "PETSc/DMDA.pyx":303
* NULL) )
@@ -209965,7 +226412,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_42getCorners(struct __pyx_obj_8
* CHKERR( DMDAGetCorners(self.dm,
* &x, &y, &z,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 307, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 307, __pyx_L1_error)
/* "PETSc/DMDA.pyx":308
* cdef PetscInt dim=0, x=0, y=0, z=0, m=0, n=0, p=0
@@ -209974,7 +226421,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_42getCorners(struct __pyx_obj_8
* &x, &y, &z,
* &m, &n, &p) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 308, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 308, __pyx_L1_error)
/* "PETSc/DMDA.pyx":311
* &x, &y, &z,
@@ -210140,7 +226587,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_44getGhostCorners(struct __pyx_
* CHKERR( DMDAGetGhostCorners(self.dm,
* &x, &y, &z,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 316, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 316, __pyx_L1_error)
/* "PETSc/DMDA.pyx":317
* cdef PetscInt dim=0, x=0, y=0, z=0, m=0, n=0, p=0
@@ -210149,7 +226596,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_44getGhostCorners(struct __pyx_
* &x, &y, &z,
* &m, &n, &p) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetGhostCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 317, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetGhostCorners(__pyx_v_self->__pyx_base.dm, (&__pyx_v_x), (&__pyx_v_y), (&__pyx_v_z), (&__pyx_v_m), (&__pyx_v_n), (&__pyx_v_p))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 317, __pyx_L1_error)
/* "PETSc/DMDA.pyx":320
* &x, &y, &z,
@@ -210275,7 +226722,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_47setFieldName(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -210284,6 +226733,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_47setFieldName(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else {
@@ -210335,7 +226785,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_46setFieldName(struct __pyx_obj
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 326, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 326, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/DMDA.pyx":327
@@ -210366,7 +226816,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_46setFieldName(struct __pyx_obj
*
* def getFieldName(self, field):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetFieldName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, __pyx_v_cval)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 329, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetFieldName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, __pyx_v_cval)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 329, __pyx_L1_error)
/* "PETSc/DMDA.pyx":325
* #
@@ -210414,6 +226864,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_49getFieldName(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -210465,7 +226916,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_48getFieldName(struct __pyx_obj
* cdef const_char *cval = NULL
* CHKERR( DMDAGetFieldName(self.dm, ival, &cval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 332, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 332, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/DMDA.pyx":333
@@ -210484,7 +226935,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_48getFieldName(struct __pyx_obj
* return bytes2str(cval)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetFieldName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, (&__pyx_v_cval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 334, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetFieldName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, (&__pyx_v_cval))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 334, __pyx_L1_error)
/* "PETSc/DMDA.pyx":335
* cdef const_char *cval = NULL
@@ -210522,7 +226973,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_48getFieldName(struct __pyx_obj
/* "PETSc/DMDA.pyx":339
* #
*
- * def getVecArray(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def getVecArray(self, Vec vec): # <<<<<<<<<<<<<<
* return _DMDA_Vec_array(self, vec)
*
*/
@@ -210543,6 +226994,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_51getVecArray(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -210591,7 +227043,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_50getVecArray(struct __pyx_obj_
/* "PETSc/DMDA.pyx":340
*
- * def getVecArray(self, Vec vec not None):
+ * def getVecArray(self, Vec vec):
* return _DMDA_Vec_array(self, vec) # <<<<<<<<<<<<<<
*
* #
@@ -210615,7 +227067,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_50getVecArray(struct __pyx_obj_
/* "PETSc/DMDA.pyx":339
* #
*
- * def getVecArray(self, Vec vec not None): # <<<<<<<<<<<<<<
+ * def getVecArray(self, Vec vec): # <<<<<<<<<<<<<<
* return _DMDA_Vec_array(self, vec)
*
*/
@@ -210667,11 +227119,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_53setUniformCoordinates(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -210682,26 +227140,31 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_53setUniformCoordinates(PyObjec
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xmin);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xmax);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ymin);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ymax);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_zmin);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_zmax);
@@ -210714,11 +227177,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_53setUniformCoordinates(PyObjec
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -210765,9 +227234,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_52setUniformCoordinates(struct
* cdef PetscReal _ymin = asReal(ymin), _ymax = asReal(ymax)
* cdef PetscReal _zmin = asReal(zmin), _zmax = asReal(zmax)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_xmin); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(41, 348, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_xmin); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(41, 348, __pyx_L1_error)
__pyx_v__xmin = __pyx_t_1;
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_xmax); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(41, 348, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_xmax); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(41, 348, __pyx_L1_error)
__pyx_v__xmax = __pyx_t_1;
/* "PETSc/DMDA.pyx":349
@@ -210777,9 +227246,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_52setUniformCoordinates(struct
* cdef PetscReal _zmin = asReal(zmin), _zmax = asReal(zmax)
* CHKERR( DMDASetUniformCoordinates(self.dm,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_ymin); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(41, 349, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_ymin); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(41, 349, __pyx_L1_error)
__pyx_v__ymin = __pyx_t_1;
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_ymax); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(41, 349, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_ymax); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(41, 349, __pyx_L1_error)
__pyx_v__ymax = __pyx_t_1;
/* "PETSc/DMDA.pyx":350
@@ -210789,9 +227258,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_52setUniformCoordinates(struct
* CHKERR( DMDASetUniformCoordinates(self.dm,
* _xmin, _xmax,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zmin); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(41, 350, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zmin); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(41, 350, __pyx_L1_error)
__pyx_v__zmin = __pyx_t_1;
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zmax); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(41, 350, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_zmax); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(41, 350, __pyx_L1_error)
__pyx_v__zmax = __pyx_t_1;
/* "PETSc/DMDA.pyx":351
@@ -210801,7 +227270,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_52setUniformCoordinates(struct
* _xmin, _xmax,
* _ymin, _ymax,
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetUniformCoordinates(__pyx_v_self->__pyx_base.dm, __pyx_v__xmin, __pyx_v__xmax, __pyx_v__ymin, __pyx_v__ymax, __pyx_v__zmin, __pyx_v__zmax)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 351, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetUniformCoordinates(__pyx_v_self->__pyx_base.dm, __pyx_v__xmin, __pyx_v__xmax, __pyx_v__ymin, __pyx_v__ymax, __pyx_v__zmin, __pyx_v__zmax)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 351, __pyx_L1_error)
/* "PETSc/DMDA.pyx":344
* #
@@ -210848,7 +227317,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_55setCoordinateName(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -210857,6 +227328,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_55setCoordinateName(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_index)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--;
else {
@@ -210908,7 +227380,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_54setCoordinateName(struct __py
* cdef const_char *cval = NULL
* name = str2bytes(name, &cval)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 357, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 357, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/DMDA.pyx":358
@@ -210939,7 +227411,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_54setCoordinateName(struct __py
*
* def getCoordinateName(self, index):
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetCoordinateName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, __pyx_v_cval)); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(41, 360, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetCoordinateName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, __pyx_v_cval)); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(41, 360, __pyx_L1_error)
/* "PETSc/DMDA.pyx":356
* _zmin, _zmax) )
@@ -210987,6 +227459,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_57getCoordinateName(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -211038,7 +227511,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_56getCoordinateName(struct __py
* cdef const_char *cval = NULL
* CHKERR( DMDAGetCoordinateName(self.dm, ival, &cval) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 363, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 363, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/DMDA.pyx":364
@@ -211057,7 +227530,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_56getCoordinateName(struct __py
* return bytes2str(cval)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCoordinateName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, (&__pyx_v_cval))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 365, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetCoordinateName(__pyx_v_self->__pyx_base.dm, __pyx_v_ival, (&__pyx_v_cval))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 365, __pyx_L1_error)
/* "PETSc/DMDA.pyx":366
* cdef const_char *cval = NULL
@@ -211148,7 +227621,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_58getBoundingBox(struct __pyx_o
* cdef PetscReal gmin[3], gmax[3]
* CHKERR( DMDAGetBoundingBox(self.dm, gmin, gmax) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 370, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 370, __pyx_L1_error)
/* "PETSc/DMDA.pyx":372
* CHKERR( DMDAGetDim(self.dm, &dim) )
@@ -211157,7 +227630,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_58getBoundingBox(struct __pyx_o
* return tuple([(toReal(gmin[i]), toReal(gmax[i]))
* for i from 0 <= i < dim])
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetBoundingBox(__pyx_v_self->__pyx_base.dm, __pyx_v_gmin, __pyx_v_gmax)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 372, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetBoundingBox(__pyx_v_self->__pyx_base.dm, __pyx_v_gmin, __pyx_v_gmax)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 372, __pyx_L1_error)
/* "PETSc/DMDA.pyx":373
* cdef PetscReal gmin[3], gmax[3]
@@ -211287,7 +227760,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_60getLocalBoundingBox(struct __
* cdef PetscReal lmin[3], lmax[3]
* CHKERR( DMDAGetLocalBoundingBox(self.dm, lmin, lmax) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 378, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 378, __pyx_L1_error)
/* "PETSc/DMDA.pyx":380
* CHKERR( DMDAGetDim(self.dm, &dim) )
@@ -211296,7 +227769,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_60getLocalBoundingBox(struct __
* return tuple([(toReal(lmin[i]), toReal(lmax[i]))
* for i from 0 <= i < dim])
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetLocalBoundingBox(__pyx_v_self->__pyx_base.dm, __pyx_v_lmin, __pyx_v_lmax)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 380, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetLocalBoundingBox(__pyx_v_self->__pyx_base.dm, __pyx_v_lmin, __pyx_v_lmax)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 380, __pyx_L1_error)
/* "PETSc/DMDA.pyx":381
* cdef PetscReal lmin[3], lmax[3]
@@ -211422,14 +227895,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_62createNaturalVec(struct __pyx
* return vn
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDACreateNaturalVector(__pyx_v_self->__pyx_base.dm, (&__pyx_v_vn->vec))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 388, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDACreateNaturalVector(__pyx_v_self->__pyx_base.dm, (&__pyx_v_vn->vec))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 388, __pyx_L1_error)
/* "PETSc/DMDA.pyx":389
* cdef Vec vn = Vec()
* CHKERR( DMDACreateNaturalVector(self.dm, &vn.vec) )
* return vn # <<<<<<<<<<<<<<
*
- * def globalToNatural(self, Vec vg not None, Vec vn not None, addv=None):
+ * def globalToNatural(self, Vec vg, Vec vn, addv=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_vn));
@@ -211459,7 +227932,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_62createNaturalVec(struct __pyx
/* "PETSc/DMDA.pyx":391
* return vn
*
- * def globalToNatural(self, Vec vg not None, Vec vn not None, addv=None): # <<<<<<<<<<<<<<
+ * def globalToNatural(self, Vec vg, Vec vn, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMDAGlobalToNaturalBegin(self.dm, vg.vec, im, vn.vec) )
*/
@@ -211483,8 +227956,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_65globalToNatural(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -211493,11 +227969,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_65globalToNatural(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vg)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vn)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("globalToNatural", 0, 2, 3, 1); __PYX_ERR(41, 391, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -211510,6 +227988,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_65globalToNatural(PyObject *__p
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -211551,36 +228030,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_64globalToNatural(struct __pyx_
/* "PETSc/DMDA.pyx":392
*
- * def globalToNatural(self, Vec vg not None, Vec vn not None, addv=None):
+ * def globalToNatural(self, Vec vg, Vec vn, addv=None):
* cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( DMDAGlobalToNaturalBegin(self.dm, vg.vec, im, vn.vec) )
* CHKERR( DMDAGlobalToNaturalEnd (self.dm, vg.vec, im, vn.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(41, 392, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(41, 392, __pyx_L1_error)
__pyx_v_im = __pyx_t_1;
/* "PETSc/DMDA.pyx":393
- * def globalToNatural(self, Vec vg not None, Vec vn not None, addv=None):
+ * def globalToNatural(self, Vec vg, Vec vn, addv=None):
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMDAGlobalToNaturalBegin(self.dm, vg.vec, im, vn.vec) ) # <<<<<<<<<<<<<<
* CHKERR( DMDAGlobalToNaturalEnd (self.dm, vg.vec, im, vn.vec) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGlobalToNaturalBegin(__pyx_v_self->__pyx_base.dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vn->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 393, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGlobalToNaturalBegin(__pyx_v_self->__pyx_base.dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vn->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 393, __pyx_L1_error)
/* "PETSc/DMDA.pyx":394
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMDAGlobalToNaturalBegin(self.dm, vg.vec, im, vn.vec) )
* CHKERR( DMDAGlobalToNaturalEnd (self.dm, vg.vec, im, vn.vec) ) # <<<<<<<<<<<<<<
*
- * def naturalToGlobal(self, Vec vn not None, Vec vg not None, addv=None):
+ * def naturalToGlobal(self, Vec vn, Vec vg, addv=None):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGlobalToNaturalEnd(__pyx_v_self->__pyx_base.dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vn->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 394, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGlobalToNaturalEnd(__pyx_v_self->__pyx_base.dm, __pyx_v_vg->vec, __pyx_v_im, __pyx_v_vn->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 394, __pyx_L1_error)
/* "PETSc/DMDA.pyx":391
* return vn
*
- * def globalToNatural(self, Vec vg not None, Vec vn not None, addv=None): # <<<<<<<<<<<<<<
+ * def globalToNatural(self, Vec vg, Vec vn, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMDAGlobalToNaturalBegin(self.dm, vg.vec, im, vn.vec) )
*/
@@ -211600,7 +228079,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_64globalToNatural(struct __pyx_
/* "PETSc/DMDA.pyx":396
* CHKERR( DMDAGlobalToNaturalEnd (self.dm, vg.vec, im, vn.vec) )
*
- * def naturalToGlobal(self, Vec vn not None, Vec vg not None, addv=None): # <<<<<<<<<<<<<<
+ * def naturalToGlobal(self, Vec vn, Vec vg, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMDANaturalToGlobalBegin(self.dm, vn.vec, im, vg.vec) )
*/
@@ -211624,8 +228103,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_67naturalToGlobal(PyObject *__p
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -211634,11 +228116,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_67naturalToGlobal(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vn)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vg)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("naturalToGlobal", 0, 2, 3, 1); __PYX_ERR(41, 396, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
@@ -211651,6 +228135,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_67naturalToGlobal(PyObject *__p
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -211692,22 +228177,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_66naturalToGlobal(struct __pyx_
/* "PETSc/DMDA.pyx":397
*
- * def naturalToGlobal(self, Vec vn not None, Vec vg not None, addv=None):
+ * def naturalToGlobal(self, Vec vn, Vec vg, addv=None):
* cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
* CHKERR( DMDANaturalToGlobalBegin(self.dm, vn.vec, im, vg.vec) )
* CHKERR( DMDANaturalToGlobalEnd (self.dm, vn.vec, im, vg.vec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(41, 397, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(41, 397, __pyx_L1_error)
__pyx_v_im = __pyx_t_1;
/* "PETSc/DMDA.pyx":398
- * def naturalToGlobal(self, Vec vn not None, Vec vg not None, addv=None):
+ * def naturalToGlobal(self, Vec vn, Vec vg, addv=None):
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMDANaturalToGlobalBegin(self.dm, vn.vec, im, vg.vec) ) # <<<<<<<<<<<<<<
* CHKERR( DMDANaturalToGlobalEnd (self.dm, vn.vec, im, vg.vec) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDANaturalToGlobalBegin(__pyx_v_self->__pyx_base.dm, __pyx_v_vn->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 398, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDANaturalToGlobalBegin(__pyx_v_self->__pyx_base.dm, __pyx_v_vn->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 398, __pyx_L1_error)
/* "PETSc/DMDA.pyx":399
* cdef PetscInsertMode im = insertmode(addv)
@@ -211716,12 +228201,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_66naturalToGlobal(struct __pyx_
*
* #
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDANaturalToGlobalEnd(__pyx_v_self->__pyx_base.dm, __pyx_v_vn->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 399, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDANaturalToGlobalEnd(__pyx_v_self->__pyx_base.dm, __pyx_v_vn->vec, __pyx_v_im, __pyx_v_vg->vec)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 399, __pyx_L1_error)
/* "PETSc/DMDA.pyx":396
* CHKERR( DMDAGlobalToNaturalEnd (self.dm, vg.vec, im, vn.vec) )
*
- * def naturalToGlobal(self, Vec vn not None, Vec vg not None, addv=None): # <<<<<<<<<<<<<<
+ * def naturalToGlobal(self, Vec vn, Vec vg, addv=None): # <<<<<<<<<<<<<<
* cdef PetscInsertMode im = insertmode(addv)
* CHKERR( DMDANaturalToGlobalBegin(self.dm, vn.vec, im, vg.vec) )
*/
@@ -211790,7 +228275,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_68getAO(struct __pyx_obj_8petsc
* PetscINCREF(ao.obj)
* return ao
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetAO(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ao->ao))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 405, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetAO(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ao->ao))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 405, __pyx_L1_error)
/* "PETSc/DMDA.pyx":406
* cdef AO ao = AO()
@@ -211898,7 +228383,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_70getScatter(struct __pyx_obj_8
* PetscINCREF(l2g.obj)
* PetscINCREF(g2l.obj)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetScatter(__pyx_v_self->__pyx_base.dm, (&__pyx_v_l2g->sct), (&__pyx_v_g2l->sct))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 412, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetScatter(__pyx_v_self->__pyx_base.dm, (&__pyx_v_l2g->sct), (&__pyx_v_g2l->sct))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 412, __pyx_L1_error)
/* "PETSc/DMDA.pyx":413
* cdef Scatter g2l = Scatter()
@@ -211988,8 +228473,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_73setRefinementFactor(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -212000,11 +228488,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_73setRefinementFactor(PyObject
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_refine_x);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_refine_y);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_refine_z);
@@ -212017,8 +228507,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_73setRefinementFactor(PyObject
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -212057,7 +228550,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_72setRefinementFactor(struct __
* refine[1] = asInt(refine_y)
* refine[2] = asInt(refine_z)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_refine_x); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 424, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_refine_x); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 424, __pyx_L1_error)
(__pyx_v_refine[0]) = __pyx_t_1;
/* "PETSc/DMDA.pyx":425
@@ -212067,7 +228560,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_72setRefinementFactor(struct __
* refine[2] = asInt(refine_z)
* CHKERR( DMDASetRefinementFactor(self.dm,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_refine_y); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 425, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_refine_y); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 425, __pyx_L1_error)
(__pyx_v_refine[1]) = __pyx_t_1;
/* "PETSc/DMDA.pyx":426
@@ -212077,7 +228570,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_72setRefinementFactor(struct __
* CHKERR( DMDASetRefinementFactor(self.dm,
* refine[0],
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_refine_z); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(41, 426, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_refine_z); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(41, 426, __pyx_L1_error)
(__pyx_v_refine[2]) = __pyx_t_1;
/* "PETSc/DMDA.pyx":427
@@ -212087,7 +228580,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_72setRefinementFactor(struct __
* refine[0],
* refine[1],
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetRefinementFactor(__pyx_v_self->__pyx_base.dm, (__pyx_v_refine[0]), (__pyx_v_refine[1]), (__pyx_v_refine[2]))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 427, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetRefinementFactor(__pyx_v_self->__pyx_base.dm, (__pyx_v_refine[0]), (__pyx_v_refine[1]), (__pyx_v_refine[2]))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 427, __pyx_L1_error)
/* "PETSc/DMDA.pyx":419
* #
@@ -212162,7 +228655,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_74getRefinementFactor(struct __
* CHKERR( DMDAGetRefinementFactor(self.dm,
* &refine[0],
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 434, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 434, __pyx_L1_error)
/* "PETSc/DMDA.pyx":435
* cdef PetscInt i, dim = 0, refine[3]
@@ -212171,7 +228664,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_74getRefinementFactor(struct __
* &refine[0],
* &refine[1],
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetRefinementFactor(__pyx_v_self->__pyx_base.dm, (&(__pyx_v_refine[0])), (&(__pyx_v_refine[1])), (&(__pyx_v_refine[2])))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 435, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetRefinementFactor(__pyx_v_self->__pyx_base.dm, (&(__pyx_v_refine[0])), (&(__pyx_v_refine[1])), (&(__pyx_v_refine[2])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 435, __pyx_L1_error)
/* "PETSc/DMDA.pyx":439
* &refine[1],
@@ -212241,6 +228734,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_77setInterpolationType(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -212290,7 +228784,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_76setInterpolationType(struct _
* CHKERR( DMDASetInterpolationType(self.dm, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_dainterpolationtype(__pyx_v_interp_type); if (unlikely(__pyx_t_1 == ((DMDAInterpolationType)-1L))) __PYX_ERR(41, 442, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_dainterpolationtype(__pyx_v_interp_type); if (unlikely(__pyx_t_1 == ((DMDAInterpolationType)((DMDAInterpolationType)-1L)))) __PYX_ERR(41, 442, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/DMDA.pyx":443
@@ -212300,7 +228794,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_76setInterpolationType(struct _
*
* def getInterpolationType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetInterpolationType(__pyx_v_self->__pyx_base.dm, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 443, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetInterpolationType(__pyx_v_self->__pyx_base.dm, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 443, __pyx_L1_error)
/* "PETSc/DMDA.pyx":441
* return tuple([toInt(refine[i]) for 0 <= i < dim])
@@ -212371,7 +228865,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_78getInterpolationType(struct _
* return <long>ival
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInterpolationType(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 447, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetInterpolationType(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 447, __pyx_L1_error)
/* "PETSc/DMDA.pyx":448
* cdef PetscDMDAInterpolationType ival = DMDA_INTERPOLATION_Q0
@@ -212430,6 +228924,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_81setElementType(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -212479,7 +228974,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_80setElementType(struct __pyx_o
* CHKERR( DMDASetElementType(self.dm, ival) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_daelementtype(__pyx_v_elem_type); if (unlikely(__pyx_t_1 == ((DMDAElementType)-1L))) __PYX_ERR(41, 453, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_daelementtype(__pyx_v_elem_type); if (unlikely(__pyx_t_1 == ((DMDAElementType)((DMDAElementType)-1L)))) __PYX_ERR(41, 453, __pyx_L1_error)
__pyx_v_ival = __pyx_t_1;
/* "PETSc/DMDA.pyx":454
@@ -212489,7 +228984,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_80setElementType(struct __pyx_o
*
* def getElementType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetElementType(__pyx_v_self->__pyx_base.dm, __pyx_v_ival)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(41, 454, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetElementType(__pyx_v_self->__pyx_base.dm, __pyx_v_ival)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(41, 454, __pyx_L1_error)
/* "PETSc/DMDA.pyx":452
* #
@@ -212560,7 +229055,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_82getElementType(struct __pyx_o
* return <long>ival
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetElementType(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 458, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetElementType(__pyx_v_self->__pyx_base.dm, (&__pyx_v_ival))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 458, __pyx_L1_error)
/* "PETSc/DMDA.pyx":459
* cdef PetscDMDAElementType ival = DMDA_ELEMENT_Q1
@@ -212620,6 +229115,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_85getElements(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -212637,6 +229133,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_4DMDA_85getElements(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -212720,7 +229217,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_84getElements(struct __pyx_obj_
* if elem_type is not None:
* etype = daelementtype(elem_type)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 467, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_DMDAGetDim(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 467, __pyx_L1_error)
/* "PETSc/DMDA.pyx":468
* cdef object elements
@@ -212740,7 +229237,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_84getElements(struct __pyx_obj_
* CHKERR( DMDASetElementType(self.dm, etype) )
* try:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_daelementtype(__pyx_v_elem_type); if (unlikely(__pyx_t_4 == ((DMDAElementType)-1L))) __PYX_ERR(41, 469, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_daelementtype(__pyx_v_elem_type); if (unlikely(__pyx_t_4 == ((DMDAElementType)((DMDAElementType)-1L)))) __PYX_ERR(41, 469, __pyx_L1_error)
__pyx_v_etype = __pyx_t_4;
/* "PETSc/DMDA.pyx":470
@@ -212750,7 +229247,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_84getElements(struct __pyx_obj_
* try:
* CHKERR( DMDAGetElements(self.dm, &nel, &nen, &elems) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetElementType(__pyx_v_self->__pyx_base.dm, __pyx_v_etype)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 470, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDASetElementType(__pyx_v_self->__pyx_base.dm, __pyx_v_etype)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 470, __pyx_L1_error)
/* "PETSc/DMDA.pyx":468
* cdef object elements
@@ -212777,7 +229274,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_84getElements(struct __pyx_obj_
* elements = array_i(nel*nen, elems)
* elements.shape = (toInt(nel), toInt(nen))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetElements(__pyx_v_self->__pyx_base.dm, (&__pyx_v_nel), (&__pyx_v_nen), (&__pyx_v_elems))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 472, __pyx_L5_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDAGetElements(__pyx_v_self->__pyx_base.dm, (&__pyx_v_nel), (&__pyx_v_nen), (&__pyx_v_elems))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 472, __pyx_L5_error)
/* "PETSc/DMDA.pyx":473
* try:
@@ -212823,7 +229320,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_84getElements(struct __pyx_obj_
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDARestoreElements(__pyx_v_self->__pyx_base.dm, (&__pyx_v_nel), (&__pyx_v_nen), (&__pyx_v_elems))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(41, 476, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDARestoreElements(__pyx_v_self->__pyx_base.dm, (&__pyx_v_nel), (&__pyx_v_nen), (&__pyx_v_elems))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(41, 476, __pyx_L1_error)
goto __pyx_L6;
}
/*exception exit:*/{
@@ -212844,9 +229341,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_84getElements(struct __pyx_obj_
__Pyx_XGOTREF(__pyx_t_15);
__pyx_t_1 = __pyx_lineno; __pyx_t_8 = __pyx_clineno; __pyx_t_9 = __pyx_filename;
{
- __pyx_t_16 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDARestoreElements(__pyx_v_self->__pyx_base.dm, (&__pyx_v_nel), (&__pyx_v_nen), (&__pyx_v_elems))); if (unlikely(__pyx_t_16 == -1)) __PYX_ERR(41, 476, __pyx_L8_error)
+ __pyx_t_16 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMDARestoreElements(__pyx_v_self->__pyx_base.dm, (&__pyx_v_nel), (&__pyx_v_nen), (&__pyx_v_elems))); if (unlikely(__pyx_t_16 == ((int)-1))) __PYX_ERR(41, 476, __pyx_L8_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_13);
__Pyx_XGIVEREF(__pyx_t_14);
@@ -212861,7 +229357,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_84getElements(struct __pyx_obj_
__pyx_lineno = __pyx_t_1; __pyx_clineno = __pyx_t_8; __pyx_filename = __pyx_t_9;
goto __pyx_L1_error;
__pyx_L8_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_13);
__Pyx_XGIVEREF(__pyx_t_14);
@@ -212951,7 +229446,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_3dim___get__(struct __pyx_obj_8
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDim); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 483, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213033,7 +229528,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_3dof___get__(struct __pyx_obj_8
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getDof); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 487, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213115,7 +229610,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_5sizes___get__(struct __pyx_obj
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 491, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213197,7 +229692,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_10proc_sizes___get__(struct __p
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getProcSizes); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 495, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213279,7 +229774,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_13boundary_type___get__(struct
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getBoundaryType); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 499, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213361,7 +229856,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_7stencil___get__(struct __pyx_o
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getStencil); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 503, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213443,7 +229938,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_12stencil_type___get__(struct _
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getStencilType); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 507, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213525,7 +230020,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_13stencil_width___get__(struct
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getStencilWidth); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 511, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213607,7 +230102,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_6ranges___get__(struct __pyx_ob
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getRanges); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 515, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213689,7 +230184,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_12ghost_ranges___get__(struct _
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getGhostRanges); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 519, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213771,7 +230266,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_7corners___get__(struct __pyx_o
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getCorners); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 523, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213853,7 +230348,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_4DMDA_13ghost_corners___get__(struct
__pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_getGhostCorners); if (unlikely(!__pyx_t_2)) __PYX_ERR(41, 527, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -213920,6 +230415,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_1create(PyObject *__pyx_v_sel
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -213937,6 +230433,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_1create(PyObject *__pyx_v_sel
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -213993,7 +230490,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_create(struct __pyx_obj_8pets
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 8, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 8, __pyx_L1_error)
/* "PETSc/DMPlex.pyx":9
* cdef PetscDM newdm = NULL
@@ -214065,10 +230562,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_3createFromCellList(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -214077,21 +230579,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_3createFromCellList(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dim)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cells)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("createFromCellList", 0, 3, 5, 1); __PYX_ERR(42, 12, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_coords)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("createFromCellList", 0, 3, 5, 2); __PYX_ERR(42, 12, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -214104,7 +230610,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_3createFromCellList(PyObject
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -214194,7 +230702,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_2createFromCellList(struct __
* cdef PetscInt numCells = 0
* cdef PetscInt numCorners = 0
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(42, 16, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 16, __pyx_L1_error)
__pyx_v_cdim = __pyx_t_3;
/* "PETSc/DMPlex.pyx":17
@@ -214441,7 +230949,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_2createFromCellList(struct __
* numCorners, interp, cellVertices,
* spaceDim, vertexCoords, &newdm) )
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateFromCellList(__pyx_v_ccomm, __pyx_v_cdim, __pyx_v_numCells, __pyx_v_numVertices, __pyx_v_numCorners, __pyx_v_interp, __pyx_v_cellVertices, __pyx_v_spaceDim, __pyx_v_vertexCoords, (&__pyx_v_newdm))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(42, 38, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateFromCellList(__pyx_v_ccomm, __pyx_v_cdim, __pyx_v_numCells, __pyx_v_numVertices, __pyx_v_numCorners, __pyx_v_interp, __pyx_v_cellVertices, __pyx_v_spaceDim, __pyx_v_vertexCoords, (&__pyx_v_newdm))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(42, 38, __pyx_L1_error)
/* "PETSc/DMPlex.pyx":41
* numCorners, interp, cellVertices,
@@ -214458,7 +230966,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_2createFromCellList(struct __
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
*
- * def createBoxMesh(self, dim, interpolate=True, comm=None):
+ * def createBoxMesh(self, dim, numFaces=1, interpolate=True, comm=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
@@ -214490,33 +230998,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_2createFromCellList(struct __
/* "PETSc/DMPlex.pyx":44
* return self
*
- * def createBoxMesh(self, dim, interpolate=True, comm=None): # <<<<<<<<<<<<<<
+ * def createBoxMesh(self, dim, numFaces=1, interpolate=True, comm=None): # <<<<<<<<<<<<<<
* cdef PetscInt cdim = asInt(dim)
- * cdef PetscBool interp = interpolate
+ * cdef PetscInt cnumFaces = asInt(numFaces)
*/
/* Python wrapper */
static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_5createBoxMesh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_4createBoxMesh[] = "DMPlex.createBoxMesh(self, dim, interpolate=True, comm=None)";
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_4createBoxMesh[] = "DMPlex.createBoxMesh(self, dim, numFaces=1, interpolate=True, comm=None)";
static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_5createBoxMesh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_dim = 0;
+ PyObject *__pyx_v_numFaces = 0;
PyObject *__pyx_v_interpolate = 0;
PyObject *__pyx_v_comm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("createBoxMesh (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_dim,&__pyx_n_s_interpolate,&__pyx_n_s_comm,0};
- PyObject* values[3] = {0,0,0};
- values[1] = ((PyObject *)Py_True);
- values[2] = ((PyObject *)Py_None);
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_dim,&__pyx_n_s_numFaces,&__pyx_n_s_interpolate,&__pyx_n_s_comm,0};
+ PyObject* values[4] = {0,0,0,0};
+ values[1] = ((PyObject *)__pyx_int_1);
+ values[2] = ((PyObject *)Py_True);
+ values[3] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -214525,50 +231040,64 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_5createBoxMesh(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dim)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numFaces);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
+ if (value) { values[3] = value; kw_args--; }
+ }
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createBoxMesh") < 0)) __PYX_ERR(42, 44, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
}
__pyx_v_dim = values[0];
- __pyx_v_interpolate = values[1];
- __pyx_v_comm = values[2];
+ __pyx_v_numFaces = values[1];
+ __pyx_v_interpolate = values[2];
+ __pyx_v_comm = values[3];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createBoxMesh", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 44, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createBoxMesh", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 44, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createBoxMesh", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_dim, __pyx_v_interpolate, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_dim, __pyx_v_numFaces, __pyx_v_interpolate, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_dim, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_dim, PyObject *__pyx_v_numFaces, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
PetscInt __pyx_v_cdim;
+ PetscInt __pyx_v_cnumFaces;
PetscBool __pyx_v_interp;
MPI_Comm __pyx_v_ccomm;
DM __pyx_v_newdm;
@@ -214582,55 +231111,65 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_o
/* "PETSc/DMPlex.pyx":45
*
- * def createBoxMesh(self, dim, interpolate=True, comm=None):
+ * def createBoxMesh(self, dim, numFaces=1, interpolate=True, comm=None):
* cdef PetscInt cdim = asInt(dim) # <<<<<<<<<<<<<<
+ * cdef PetscInt cnumFaces = asInt(numFaces)
* cdef PetscBool interp = interpolate
- * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 45, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_dim); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 45, __pyx_L1_error)
__pyx_v_cdim = __pyx_t_1;
/* "PETSc/DMPlex.pyx":46
- * def createBoxMesh(self, dim, interpolate=True, comm=None):
+ * def createBoxMesh(self, dim, numFaces=1, interpolate=True, comm=None):
* cdef PetscInt cdim = asInt(dim)
+ * cdef PetscInt cnumFaces = asInt(numFaces) # <<<<<<<<<<<<<<
+ * cdef PetscBool interp = interpolate
+ * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numFaces); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 46, __pyx_L1_error)
+ __pyx_v_cnumFaces = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":47
+ * cdef PetscInt cdim = asInt(dim)
+ * cdef PetscInt cnumFaces = asInt(numFaces)
* cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscDM newdm = NULL
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 46, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 47, __pyx_L1_error)
__pyx_v_interp = __pyx_t_2;
- /* "PETSc/DMPlex.pyx":47
- * cdef PetscInt cdim = asInt(dim)
+ /* "PETSc/DMPlex.pyx":48
+ * cdef PetscInt cnumFaces = asInt(numFaces)
* cdef PetscBool interp = interpolate
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
- * CHKERR( DMPlexCreateBoxMesh(ccomm,cdim, interp, &newdm) )
+ * CHKERR( DMPlexCreateBoxMesh(ccomm, cdim, cnumFaces, interp, &newdm) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 47, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 48, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_3;
- /* "PETSc/DMPlex.pyx":48
+ /* "PETSc/DMPlex.pyx":49
* cdef PetscBool interp = interpolate
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
- * CHKERR( DMPlexCreateBoxMesh(ccomm,cdim, interp, &newdm) )
+ * CHKERR( DMPlexCreateBoxMesh(ccomm, cdim, cnumFaces, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":49
+ /* "PETSc/DMPlex.pyx":50
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscDM newdm = NULL
- * CHKERR( DMPlexCreateBoxMesh(ccomm,cdim, interp, &newdm) ) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexCreateBoxMesh(ccomm, cdim, cnumFaces, interp, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateBoxMesh(__pyx_v_ccomm, __pyx_v_cdim, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 49, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateBoxMesh(__pyx_v_ccomm, __pyx_v_cdim, __pyx_v_cnumFaces, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 50, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":50
+ /* "PETSc/DMPlex.pyx":51
* cdef PetscDM newdm = NULL
- * CHKERR( DMPlexCreateBoxMesh(ccomm,cdim, interp, &newdm) )
+ * CHKERR( DMPlexCreateBoxMesh(ccomm, cdim, cnumFaces, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
* return self
*
@@ -214638,8 +231177,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_o
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":51
- * CHKERR( DMPlexCreateBoxMesh(ccomm,cdim, interp, &newdm) )
+ /* "PETSc/DMPlex.pyx":52
+ * CHKERR( DMPlexCreateBoxMesh(ccomm, cdim, cnumFaces, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
*
@@ -214653,9 +231192,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_o
/* "PETSc/DMPlex.pyx":44
* return self
*
- * def createBoxMesh(self, dim, interpolate=True, comm=None): # <<<<<<<<<<<<<<
+ * def createBoxMesh(self, dim, numFaces=1, interpolate=True, comm=None): # <<<<<<<<<<<<<<
* cdef PetscInt cdim = asInt(dim)
- * cdef PetscBool interp = interpolate
+ * cdef PetscInt cnumFaces = asInt(numFaces)
*/
/* function exit code */
@@ -214668,7 +231207,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_4createBoxMesh(struct __pyx_o
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":53
+/* "PETSc/DMPlex.pyx":54
* return self
*
* def createHexBoxMesh(self, numcells, boundary_type=None, comm=None): # <<<<<<<<<<<<<<
@@ -214696,8 +231235,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_7createHexBoxMesh(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -214706,11 +231248,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_7createHexBoxMesh(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numcells)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_boundary_type);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -214718,12 +231262,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_7createHexBoxMesh(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createHexBoxMesh") < 0)) __PYX_ERR(42, 53, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createHexBoxMesh") < 0)) __PYX_ERR(42, 54, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -214735,7 +231281,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_7createHexBoxMesh(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createHexBoxMesh", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 53, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createHexBoxMesh", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 54, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createHexBoxMesh", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -214767,7 +231313,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
int __pyx_t_6;
__Pyx_RefNannySetupContext("createHexBoxMesh", 0);
- /* "PETSc/DMPlex.pyx":54
+ /* "PETSc/DMPlex.pyx":55
*
* def createHexBoxMesh(self, numcells, boundary_type=None, comm=None):
* cdef PetscInt dim = 0, *icells = NULL # <<<<<<<<<<<<<<
@@ -214777,19 +231323,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
__pyx_v_dim = 0;
__pyx_v_icells = NULL;
- /* "PETSc/DMPlex.pyx":55
+ /* "PETSc/DMPlex.pyx":56
* def createHexBoxMesh(self, numcells, boundary_type=None, comm=None):
* cdef PetscInt dim = 0, *icells = NULL
* cdef object tmp = iarray_i(numcells, &dim, &icells) # <<<<<<<<<<<<<<
* cdef PetscDMBoundaryType btx = DM_BOUNDARY_NONE
* cdef PetscDMBoundaryType bty = DM_BOUNDARY_NONE
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_numcells, (&__pyx_v_dim), (&__pyx_v_icells))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 55, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_numcells, (&__pyx_v_dim), (&__pyx_v_icells))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 56, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_tmp = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":56
+ /* "PETSc/DMPlex.pyx":57
* cdef PetscInt dim = 0, *icells = NULL
* cdef object tmp = iarray_i(numcells, &dim, &icells)
* cdef PetscDMBoundaryType btx = DM_BOUNDARY_NONE # <<<<<<<<<<<<<<
@@ -214798,7 +231344,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
*/
__pyx_v_btx = DM_BOUNDARY_NONE;
- /* "PETSc/DMPlex.pyx":57
+ /* "PETSc/DMPlex.pyx":58
* cdef object tmp = iarray_i(numcells, &dim, &icells)
* cdef PetscDMBoundaryType btx = DM_BOUNDARY_NONE
* cdef PetscDMBoundaryType bty = DM_BOUNDARY_NONE # <<<<<<<<<<<<<<
@@ -214807,7 +231353,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
*/
__pyx_v_bty = DM_BOUNDARY_NONE;
- /* "PETSc/DMPlex.pyx":58
+ /* "PETSc/DMPlex.pyx":59
* cdef PetscDMBoundaryType btx = DM_BOUNDARY_NONE
* cdef PetscDMBoundaryType bty = DM_BOUNDARY_NONE
* cdef PetscDMBoundaryType btz = DM_BOUNDARY_NONE # <<<<<<<<<<<<<<
@@ -214816,7 +231362,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
*/
__pyx_v_btz = DM_BOUNDARY_NONE;
- /* "PETSc/DMPlex.pyx":59
+ /* "PETSc/DMPlex.pyx":60
* cdef PetscDMBoundaryType bty = DM_BOUNDARY_NONE
* cdef PetscDMBoundaryType btz = DM_BOUNDARY_NONE
* if boundary_type is not None: # <<<<<<<<<<<<<<
@@ -214827,16 +231373,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
__pyx_t_3 = (__pyx_t_2 != 0);
if (__pyx_t_3) {
- /* "PETSc/DMPlex.pyx":60
+ /* "PETSc/DMPlex.pyx":61
* cdef PetscDMBoundaryType btz = DM_BOUNDARY_NONE
* if boundary_type is not None:
* asBoundary(boundary_type, &btx, &bty, &btz) # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscDM newdm = NULL
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_4 == -1L && PyErr_Occurred())) __PYX_ERR(42, 60, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_asBoundary(__pyx_v_boundary_type, (&__pyx_v_btx), (&__pyx_v_bty), (&__pyx_v_btz)); if (unlikely(__pyx_t_4 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 61, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":59
+ /* "PETSc/DMPlex.pyx":60
* cdef PetscDMBoundaryType bty = DM_BOUNDARY_NONE
* cdef PetscDMBoundaryType btz = DM_BOUNDARY_NONE
* if boundary_type is not None: # <<<<<<<<<<<<<<
@@ -214845,17 +231391,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
*/
}
- /* "PETSc/DMPlex.pyx":61
+ /* "PETSc/DMPlex.pyx":62
* if boundary_type is not None:
* asBoundary(boundary_type, &btx, &bty, &btz)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexCreateHexBoxMesh(ccomm, dim, icells, btx, bty, btz, &newdm) )
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 61, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 62, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_5;
- /* "PETSc/DMPlex.pyx":62
+ /* "PETSc/DMPlex.pyx":63
* asBoundary(boundary_type, &btx, &bty, &btz)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -214864,16 +231410,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":63
+ /* "PETSc/DMPlex.pyx":64
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexCreateHexBoxMesh(ccomm, dim, icells, btx, bty, btz, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateHexBoxMesh(__pyx_v_ccomm, __pyx_v_dim, __pyx_v_icells, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz, (&__pyx_v_newdm))); if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(42, 63, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateHexBoxMesh(__pyx_v_ccomm, __pyx_v_dim, __pyx_v_icells, __pyx_v_btx, __pyx_v_bty, __pyx_v_btz, (&__pyx_v_newdm))); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(42, 64, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":64
+ /* "PETSc/DMPlex.pyx":65
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexCreateHexBoxMesh(ccomm, dim, icells, btx, bty, btz, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
@@ -214883,19 +231429,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":65
+ /* "PETSc/DMPlex.pyx":66
* CHKERR( DMPlexCreateHexBoxMesh(ccomm, dim, icells, btx, bty, btz, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
*
- * def createCGNS(self, cgid, interpolate=True, comm=None):
+ * def createFromFile(self, filename, interpolate=True, comm=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":53
+ /* "PETSc/DMPlex.pyx":54
* return self
*
* def createHexBoxMesh(self, numcells, boundary_type=None, comm=None): # <<<<<<<<<<<<<<
@@ -214915,7 +231461,209 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":67
+/* "PETSc/DMPlex.pyx":68
+ * return self
+ *
+ * def createFromFile(self, filename, interpolate=True, comm=None): # <<<<<<<<<<<<<<
+ * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
+ * cdef PetscBool interp = interpolate
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_8createFromFile[] = "DMPlex.createFromFile(self, filename, interpolate=True, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_filename = 0;
+ PyObject *__pyx_v_interpolate = 0;
+ PyObject *__pyx_v_comm = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("createFromFile (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_filename,&__pyx_n_s_interpolate,&__pyx_n_s_comm,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_True);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_filename)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createFromFile") < 0)) __PYX_ERR(42, 68, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_filename = values[0];
+ __pyx_v_interpolate = values[1];
+ __pyx_v_comm = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("createFromFile", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 68, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createFromFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_8createFromFile(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_filename, __pyx_v_interpolate, __pyx_v_comm);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
+ MPI_Comm __pyx_v_ccomm;
+ PetscBool __pyx_v_interp;
+ DM __pyx_v_newdm;
+ const char *__pyx_v_cfile;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ MPI_Comm __pyx_t_1;
+ PetscBool __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("createFromFile", 0);
+ __Pyx_INCREF(__pyx_v_filename);
+
+ /* "PETSc/DMPlex.pyx":69
+ *
+ * def createFromFile(self, filename, interpolate=True, comm=None):
+ * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
+ * cdef PetscBool interp = interpolate
+ * cdef PetscDM newdm = NULL
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 69, __pyx_L1_error)
+ __pyx_v_ccomm = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":70
+ * def createFromFile(self, filename, interpolate=True, comm=None):
+ * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
+ * cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
+ * cdef PetscDM newdm = NULL
+ * cdef const_char *cfile = NULL
+ */
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 70, __pyx_L1_error)
+ __pyx_v_interp = __pyx_t_2;
+
+ /* "PETSc/DMPlex.pyx":71
+ * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
+ * cdef PetscBool interp = interpolate
+ * cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
+ * cdef const_char *cfile = NULL
+ * filename = str2bytes(filename, &cfile)
+ */
+ __pyx_v_newdm = NULL;
+
+ /* "PETSc/DMPlex.pyx":72
+ * cdef PetscBool interp = interpolate
+ * cdef PetscDM newdm = NULL
+ * cdef const_char *cfile = NULL # <<<<<<<<<<<<<<
+ * filename = str2bytes(filename, &cfile)
+ * CHKERR( DMPlexCreateFromFile(ccomm, cfile, interp, &newdm) )
+ */
+ __pyx_v_cfile = NULL;
+
+ /* "PETSc/DMPlex.pyx":73
+ * cdef PetscDM newdm = NULL
+ * cdef const_char *cfile = NULL
+ * filename = str2bytes(filename, &cfile) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexCreateFromFile(ccomm, cfile, interp, &newdm) )
+ * PetscCLEAR(self.obj); self.dm = newdm
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_filename, (&__pyx_v_cfile)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 73, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/DMPlex.pyx":74
+ * cdef const_char *cfile = NULL
+ * filename = str2bytes(filename, &cfile)
+ * CHKERR( DMPlexCreateFromFile(ccomm, cfile, interp, &newdm) ) # <<<<<<<<<<<<<<
+ * PetscCLEAR(self.obj); self.dm = newdm
+ * return self
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateFromFile(__pyx_v_ccomm, __pyx_v_cfile, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 74, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":75
+ * filename = str2bytes(filename, &cfile)
+ * CHKERR( DMPlexCreateFromFile(ccomm, cfile, interp, &newdm) )
+ * PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
+ * return self
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
+ __pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
+
+ /* "PETSc/DMPlex.pyx":76
+ * CHKERR( DMPlexCreateFromFile(ccomm, cfile, interp, &newdm) )
+ * PetscCLEAR(self.obj); self.dm = newdm
+ * return self # <<<<<<<<<<<<<<
+ *
+ * def createCGNS(self, cgid, interpolate=True, comm=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_self));
+ __pyx_r = ((PyObject *)__pyx_v_self);
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":68
+ * return self
+ *
+ * def createFromFile(self, filename, interpolate=True, comm=None): # <<<<<<<<<<<<<<
+ * cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
+ * cdef PetscBool interp = interpolate
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createFromFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_filename);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":78
* return self
*
* def createCGNS(self, cgid, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -214924,9 +231672,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh(struct __py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createCGNS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_8createCGNS[] = "DMPlex.createCGNS(self, cgid, interpolate=True, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createCGNS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_10createCGNS[] = "DMPlex.createCGNS(self, cgid, interpolate=True, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_cgid = 0;
PyObject *__pyx_v_interpolate = 0;
PyObject *__pyx_v_comm = 0;
@@ -214943,8 +231691,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createCGNS(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -214953,11 +231704,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createCGNS(PyObject *__pyx_v
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cgid)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -214965,12 +231718,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createCGNS(PyObject *__pyx_v
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCGNS") < 0)) __PYX_ERR(42, 67, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCGNS") < 0)) __PYX_ERR(42, 78, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -214982,20 +231737,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createCGNS(PyObject *__pyx_v
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createCGNS", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 67, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createCGNS", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 78, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createCGNS", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_cgid, __pyx_v_interpolate, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNS(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_cgid, __pyx_v_interpolate, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cgid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cgid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
PetscBool __pyx_v_interp;
DM __pyx_v_newdm;
@@ -215008,27 +231763,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_
int __pyx_t_4;
__Pyx_RefNannySetupContext("createCGNS", 0);
- /* "PETSc/DMPlex.pyx":68
+ /* "PETSc/DMPlex.pyx":79
*
* def createCGNS(self, cgid, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 68, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 79, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":69
+ /* "PETSc/DMPlex.pyx":80
* def createCGNS(self, cgid, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* cdef PetscInt ccgid = asInt(cgid)
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 69, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 80, __pyx_L1_error)
__pyx_v_interp = __pyx_t_2;
- /* "PETSc/DMPlex.pyx":70
+ /* "PETSc/DMPlex.pyx":81
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -215037,26 +231792,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":71
+ /* "PETSc/DMPlex.pyx":82
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
* cdef PetscInt ccgid = asInt(cgid) # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateCGNS(ccomm, ccgid, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_cgid); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(42, 71, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_cgid); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 82, __pyx_L1_error)
__pyx_v_ccgid = __pyx_t_3;
- /* "PETSc/DMPlex.pyx":72
+ /* "PETSc/DMPlex.pyx":83
* cdef PetscDM newdm = NULL
* cdef PetscInt ccgid = asInt(cgid)
* CHKERR( DMPlexCreateCGNS(ccomm, ccgid, interp, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCGNS(__pyx_v_ccomm, __pyx_v_ccgid, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 72, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCGNS(__pyx_v_ccomm, __pyx_v_ccgid, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 83, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":73
+ /* "PETSc/DMPlex.pyx":84
* cdef PetscInt ccgid = asInt(cgid)
* CHKERR( DMPlexCreateCGNS(ccomm, ccgid, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
@@ -215066,7 +231821,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":74
+ /* "PETSc/DMPlex.pyx":85
* CHKERR( DMPlexCreateCGNS(ccomm, ccgid, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
@@ -215078,7 +231833,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":67
+ /* "PETSc/DMPlex.pyx":78
* return self
*
* def createCGNS(self, cgid, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215096,7 +231851,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":76
+/* "PETSc/DMPlex.pyx":87
* return self
*
* def createCGNSFromFile(self, filename, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215105,9 +231860,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_8createCGNS(struct __pyx_obj_
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNSFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile[] = "DMPlex.createCGNSFromFile(self, filename, interpolate=True, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNSFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createCGNSFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_12createCGNSFromFile[] = "DMPlex.createCGNSFromFile(self, filename, interpolate=True, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createCGNSFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_filename = 0;
PyObject *__pyx_v_interpolate = 0;
PyObject *__pyx_v_comm = 0;
@@ -215124,8 +231879,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNSFromFile(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -215134,11 +231892,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNSFromFile(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_filename)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -215146,12 +231906,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNSFromFile(PyObject
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCGNSFromFile") < 0)) __PYX_ERR(42, 76, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCGNSFromFile") < 0)) __PYX_ERR(42, 87, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -215163,20 +231925,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNSFromFile(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createCGNSFromFile", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 76, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createCGNSFromFile", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 87, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createCGNSFromFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_filename, __pyx_v_interpolate, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_12createCGNSFromFile(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_filename, __pyx_v_interpolate, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createCGNSFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
PetscBool __pyx_v_interp;
DM __pyx_v_newdm;
@@ -215190,27 +231952,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct _
__Pyx_RefNannySetupContext("createCGNSFromFile", 0);
__Pyx_INCREF(__pyx_v_filename);
- /* "PETSc/DMPlex.pyx":77
+ /* "PETSc/DMPlex.pyx":88
*
* def createCGNSFromFile(self, filename, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 77, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 88, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":78
+ /* "PETSc/DMPlex.pyx":89
* def createCGNSFromFile(self, filename, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* cdef const_char *cfile = NULL
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 78, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 89, __pyx_L1_error)
__pyx_v_interp = __pyx_t_2;
- /* "PETSc/DMPlex.pyx":79
+ /* "PETSc/DMPlex.pyx":90
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -215219,7 +231981,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct _
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":80
+ /* "PETSc/DMPlex.pyx":91
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
* cdef const_char *cfile = NULL # <<<<<<<<<<<<<<
@@ -215228,28 +231990,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct _
*/
__pyx_v_cfile = NULL;
- /* "PETSc/DMPlex.pyx":81
+ /* "PETSc/DMPlex.pyx":92
* cdef PetscDM newdm = NULL
* cdef const_char *cfile = NULL
* filename = str2bytes(filename, &cfile) # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateCGNSFromFile(ccomm, cfile, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_filename, (&__pyx_v_cfile)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 81, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_filename, (&__pyx_v_cfile)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/DMPlex.pyx":82
+ /* "PETSc/DMPlex.pyx":93
* cdef const_char *cfile = NULL
* filename = str2bytes(filename, &cfile)
* CHKERR( DMPlexCreateCGNSFromFile(ccomm, cfile, interp, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCGNSFromFile(__pyx_v_ccomm, __pyx_v_cfile, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 82, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCGNSFromFile(__pyx_v_ccomm, __pyx_v_cfile, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 93, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":83
+ /* "PETSc/DMPlex.pyx":94
* filename = str2bytes(filename, &cfile)
* CHKERR( DMPlexCreateCGNSFromFile(ccomm, cfile, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
@@ -215259,7 +232021,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct _
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":84
+ /* "PETSc/DMPlex.pyx":95
* CHKERR( DMPlexCreateCGNSFromFile(ccomm, cfile, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
@@ -215271,7 +232033,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct _
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":76
+ /* "PETSc/DMPlex.pyx":87
* return self
*
* def createCGNSFromFile(self, filename, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215291,7 +232053,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct _
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":86
+/* "PETSc/DMPlex.pyx":97
* return self
*
* def createExodusFromFile(self, filename, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215300,9 +232062,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile(struct _
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createExodusFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile[] = "DMPlex.createExodusFromFile(self, filename, interpolate=True, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createExodusFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodusFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_14createExodusFromFile[] = "DMPlex.createExodusFromFile(self, filename, interpolate=True, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodusFromFile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_filename = 0;
PyObject *__pyx_v_interpolate = 0;
PyObject *__pyx_v_comm = 0;
@@ -215319,8 +232081,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createExodusFromFile(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -215329,11 +232094,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createExodusFromFile(PyObje
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_filename)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -215341,12 +232108,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createExodusFromFile(PyObje
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createExodusFromFile") < 0)) __PYX_ERR(42, 86, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createExodusFromFile") < 0)) __PYX_ERR(42, 97, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -215358,20 +232127,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createExodusFromFile(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createExodusFromFile", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 86, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createExodusFromFile", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 97, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createExodusFromFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_filename, __pyx_v_interpolate, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodusFromFile(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_filename, __pyx_v_interpolate, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodusFromFile(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_filename, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
PetscBool __pyx_v_interp;
DM __pyx_v_newdm;
@@ -215385,27 +232154,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct
__Pyx_RefNannySetupContext("createExodusFromFile", 0);
__Pyx_INCREF(__pyx_v_filename);
- /* "PETSc/DMPlex.pyx":87
+ /* "PETSc/DMPlex.pyx":98
*
* def createExodusFromFile(self, filename, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 87, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 98, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":88
+ /* "PETSc/DMPlex.pyx":99
* def createExodusFromFile(self, filename, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* cdef const_char *cfile = NULL
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 88, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 99, __pyx_L1_error)
__pyx_v_interp = __pyx_t_2;
- /* "PETSc/DMPlex.pyx":89
+ /* "PETSc/DMPlex.pyx":100
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -215414,7 +232183,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":90
+ /* "PETSc/DMPlex.pyx":101
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
* cdef const_char *cfile = NULL # <<<<<<<<<<<<<<
@@ -215423,28 +232192,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct
*/
__pyx_v_cfile = NULL;
- /* "PETSc/DMPlex.pyx":91
+ /* "PETSc/DMPlex.pyx":102
* cdef PetscDM newdm = NULL
* cdef const_char *cfile = NULL
* filename = str2bytes(filename, &cfile) # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateExodusFromFile(ccomm, cfile, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_filename, (&__pyx_v_cfile)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 91, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_filename, (&__pyx_v_cfile)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 102, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_filename, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/DMPlex.pyx":92
+ /* "PETSc/DMPlex.pyx":103
* cdef const_char *cfile = NULL
* filename = str2bytes(filename, &cfile)
* CHKERR( DMPlexCreateExodusFromFile(ccomm, cfile, interp, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateExodusFromFile(__pyx_v_ccomm, __pyx_v_cfile, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 92, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateExodusFromFile(__pyx_v_ccomm, __pyx_v_cfile, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 103, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":93
+ /* "PETSc/DMPlex.pyx":104
* filename = str2bytes(filename, &cfile)
* CHKERR( DMPlexCreateExodusFromFile(ccomm, cfile, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
@@ -215454,7 +232223,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":94
+ /* "PETSc/DMPlex.pyx":105
* CHKERR( DMPlexCreateExodusFromFile(ccomm, cfile, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
@@ -215466,7 +232235,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":86
+ /* "PETSc/DMPlex.pyx":97
* return self
*
* def createExodusFromFile(self, filename, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215486,7 +232255,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":96
+/* "PETSc/DMPlex.pyx":107
* return self
*
* def createExodus(self, exoid, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215495,9 +232264,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodus(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_14createExodus[] = "DMPlex.createExodus(self, exoid, interpolate=True, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodus(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createExodus(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_16createExodus[] = "DMPlex.createExodus(self, exoid, interpolate=True, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createExodus(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_exoid = 0;
PyObject *__pyx_v_interpolate = 0;
PyObject *__pyx_v_comm = 0;
@@ -215514,8 +232283,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodus(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -215524,11 +232296,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodus(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_exoid)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -215536,12 +232310,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodus(PyObject *__py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createExodus") < 0)) __PYX_ERR(42, 96, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createExodus") < 0)) __PYX_ERR(42, 107, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -215553,20 +232329,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodus(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createExodus", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 96, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createExodus", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 107, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createExodus", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_exoid, __pyx_v_interpolate, __pyx_v_comm);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_16createExodus(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_exoid, __pyx_v_interpolate, __pyx_v_comm);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_exoid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createExodus(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_exoid, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
PetscBool __pyx_v_interp;
DM __pyx_v_newdm;
@@ -215579,27 +232355,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_o
int __pyx_t_4;
__Pyx_RefNannySetupContext("createExodus", 0);
- /* "PETSc/DMPlex.pyx":97
+ /* "PETSc/DMPlex.pyx":108
*
* def createExodus(self, exoid, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 97, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 108, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":98
+ /* "PETSc/DMPlex.pyx":109
* def createExodus(self, exoid, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* cdef PetscInt cexoid = asInt(exoid)
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 98, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 109, __pyx_L1_error)
__pyx_v_interp = __pyx_t_2;
- /* "PETSc/DMPlex.pyx":99
+ /* "PETSc/DMPlex.pyx":110
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -215608,26 +232384,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_o
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":100
+ /* "PETSc/DMPlex.pyx":111
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
* cdef PetscInt cexoid = asInt(exoid) # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateExodus(ccomm, cexoid, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_exoid); if (unlikely(__pyx_t_3 == -1L && PyErr_Occurred())) __PYX_ERR(42, 100, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_exoid); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 111, __pyx_L1_error)
__pyx_v_cexoid = __pyx_t_3;
- /* "PETSc/DMPlex.pyx":101
+ /* "PETSc/DMPlex.pyx":112
* cdef PetscDM newdm = NULL
* cdef PetscInt cexoid = asInt(exoid)
* CHKERR( DMPlexCreateExodus(ccomm, cexoid, interp, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateExodus(__pyx_v_ccomm, __pyx_v_cexoid, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 101, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateExodus(__pyx_v_ccomm, __pyx_v_cexoid, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 112, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":102
+ /* "PETSc/DMPlex.pyx":113
* cdef PetscInt cexoid = asInt(exoid)
* CHKERR( DMPlexCreateExodus(ccomm, cexoid, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
@@ -215637,7 +232413,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_o
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":103
+ /* "PETSc/DMPlex.pyx":114
* CHKERR( DMPlexCreateExodus(ccomm, cexoid, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
@@ -215649,7 +232425,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_o
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":96
+ /* "PETSc/DMPlex.pyx":107
* return self
*
* def createExodus(self, exoid, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215667,7 +232443,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_o
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":105
+/* "PETSc/DMPlex.pyx":116
* return self
*
* def createGmsh(self, Viewer viewer, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215676,9 +232452,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_14createExodus(struct __pyx_o
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_16createGmsh[] = "DMPlex.createGmsh(self, Viewer viewer, interpolate=True, comm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createGmsh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_18createGmsh[] = "DMPlex.createGmsh(self, Viewer viewer, interpolate=True, comm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createGmsh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscViewerObject *__pyx_v_viewer = 0;
PyObject *__pyx_v_interpolate = 0;
PyObject *__pyx_v_comm = 0;
@@ -215695,8 +232471,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -215705,11 +232484,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_viewer)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -215717,12 +232498,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createGmsh") < 0)) __PYX_ERR(42, 105, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createGmsh") < 0)) __PYX_ERR(42, 116, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -215734,14 +232517,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createGmsh", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 105, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createGmsh", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 116, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createGmsh", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 1, "viewer", 0))) __PYX_ERR(42, 105, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_viewer, __pyx_v_interpolate, __pyx_v_comm);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_viewer), __pyx_ptype_8petsc4py_5PETSc_Viewer, 0, "viewer", 0))) __PYX_ERR(42, 116, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_18createGmsh(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_viewer, __pyx_v_interpolate, __pyx_v_comm);
/* function exit code */
goto __pyx_L0;
@@ -215752,7 +232535,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh(PyObject *__pyx_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createGmsh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscViewerObject *__pyx_v_viewer, PyObject *__pyx_v_interpolate, PyObject *__pyx_v_comm) {
MPI_Comm __pyx_v_ccomm;
PetscBool __pyx_v_interp;
DM __pyx_v_newdm;
@@ -215763,27 +232546,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj
int __pyx_t_3;
__Pyx_RefNannySetupContext("createGmsh", 0);
- /* "PETSc/DMPlex.pyx":106
+ /* "PETSc/DMPlex.pyx":117
*
* def createGmsh(self, Viewer viewer, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT) # <<<<<<<<<<<<<<
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 106, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, __pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 117, __pyx_L1_error)
__pyx_v_ccomm = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":107
+ /* "PETSc/DMPlex.pyx":118
* def createGmsh(self, Viewer viewer, interpolate=True, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexCreateGmsh(ccomm, viewer.vwr, interp, &newdm) )
*/
- __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 107, __pyx_L1_error)
+ __pyx_t_2 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 118, __pyx_L1_error)
__pyx_v_interp = __pyx_t_2;
- /* "PETSc/DMPlex.pyx":108
+ /* "PETSc/DMPlex.pyx":119
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -215792,16 +232575,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":109
+ /* "PETSc/DMPlex.pyx":120
* cdef PetscBool interp = interpolate
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexCreateGmsh(ccomm, viewer.vwr, interp, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateGmsh(__pyx_v_ccomm, __pyx_v_viewer->vwr, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(42, 109, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateGmsh(__pyx_v_ccomm, __pyx_v_viewer->vwr, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(42, 120, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":110
+ /* "PETSc/DMPlex.pyx":121
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexCreateGmsh(ccomm, viewer.vwr, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
@@ -215811,7 +232594,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":111
+ /* "PETSc/DMPlex.pyx":122
* CHKERR( DMPlexCreateGmsh(ccomm, viewer.vwr, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
@@ -215823,7 +232606,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":105
+ /* "PETSc/DMPlex.pyx":116
* return self
*
* def createGmsh(self, Viewer viewer, interpolate=True, comm=None): # <<<<<<<<<<<<<<
@@ -215841,7 +232624,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":113
+/* "PETSc/DMPlex.pyx":124
* return self
*
* def createCohesiveSubmesh(self, hasLagrange, value): # <<<<<<<<<<<<<<
@@ -215850,9 +232633,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_16createGmsh(struct __pyx_obj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createCohesiveSubmesh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh[] = "DMPlex.createCohesiveSubmesh(self, hasLagrange, value)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createCohesiveSubmesh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_21createCohesiveSubmesh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_20createCohesiveSubmesh[] = "DMPlex.createCohesiveSubmesh(self, hasLagrange, value)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_21createCohesiveSubmesh(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_hasLagrange = 0;
PyObject *__pyx_v_value = 0;
PyObject *__pyx_r = 0;
@@ -215866,7 +232649,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createCohesiveSubmesh(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -215875,14 +232660,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createCohesiveSubmesh(PyObj
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_hasLagrange)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createCohesiveSubmesh", 1, 2, 2, 1); __PYX_ERR(42, 113, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createCohesiveSubmesh", 1, 2, 2, 1); __PYX_ERR(42, 124, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCohesiveSubmesh") < 0)) __PYX_ERR(42, 113, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCohesiveSubmesh") < 0)) __PYX_ERR(42, 124, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -215895,20 +232681,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createCohesiveSubmesh(PyObj
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createCohesiveSubmesh", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 113, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createCohesiveSubmesh", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 124, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createCohesiveSubmesh", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_hasLagrange, __pyx_v_value);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_20createCohesiveSubmesh(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_hasLagrange, __pyx_v_value);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_hasLagrange, PyObject *__pyx_v_value) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20createCohesiveSubmesh(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_hasLagrange, PyObject *__pyx_v_value) {
PetscBool __pyx_v_flag;
PetscInt __pyx_v_cvalue;
struct PyPetscDMObject *__pyx_v_subdm = 0;
@@ -215920,48 +232706,48 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh(struc
int __pyx_t_4;
__Pyx_RefNannySetupContext("createCohesiveSubmesh", 0);
- /* "PETSc/DMPlex.pyx":114
+ /* "PETSc/DMPlex.pyx":125
*
* def createCohesiveSubmesh(self, hasLagrange, value):
* cdef PetscBool flag = hasLagrange # <<<<<<<<<<<<<<
* cdef PetscInt cvalue = asInt(value)
* cdef DM subdm = DMPlex()
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_hasLagrange)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 114, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_hasLagrange)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 125, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":115
+ /* "PETSc/DMPlex.pyx":126
* def createCohesiveSubmesh(self, hasLagrange, value):
* cdef PetscBool flag = hasLagrange
* cdef PetscInt cvalue = asInt(value) # <<<<<<<<<<<<<<
* cdef DM subdm = DMPlex()
* CHKERR( DMPlexCreateCohesiveSubmesh(self.dm, flag, NULL, cvalue, &subdm.dm) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_2 == -1L && PyErr_Occurred())) __PYX_ERR(42, 115, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_value); if (unlikely(__pyx_t_2 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 126, __pyx_L1_error)
__pyx_v_cvalue = __pyx_t_2;
- /* "PETSc/DMPlex.pyx":116
+ /* "PETSc/DMPlex.pyx":127
* cdef PetscBool flag = hasLagrange
* cdef PetscInt cvalue = asInt(value)
* cdef DM subdm = DMPlex() # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateCohesiveSubmesh(self.dm, flag, NULL, cvalue, &subdm.dm) )
* return subdm
*/
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_DMPlex), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 116, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_DMPlex), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__pyx_v_subdm = ((struct PyPetscDMObject *)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/DMPlex.pyx":117
+ /* "PETSc/DMPlex.pyx":128
* cdef PetscInt cvalue = asInt(value)
* cdef DM subdm = DMPlex()
* CHKERR( DMPlexCreateCohesiveSubmesh(self.dm, flag, NULL, cvalue, &subdm.dm) ) # <<<<<<<<<<<<<<
* return subdm
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCohesiveSubmesh(__pyx_v_self->__pyx_base.dm, __pyx_v_flag, NULL, __pyx_v_cvalue, (&__pyx_v_subdm->dm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 117, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCohesiveSubmesh(__pyx_v_self->__pyx_base.dm, __pyx_v_flag, NULL, __pyx_v_cvalue, (&__pyx_v_subdm->dm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 128, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":118
+ /* "PETSc/DMPlex.pyx":129
* cdef DM subdm = DMPlex()
* CHKERR( DMPlexCreateCohesiveSubmesh(self.dm, flag, NULL, cvalue, &subdm.dm) )
* return subdm # <<<<<<<<<<<<<<
@@ -215973,7 +232759,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh(struc
__pyx_r = ((PyObject *)__pyx_v_subdm);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":113
+ /* "PETSc/DMPlex.pyx":124
* return self
*
* def createCohesiveSubmesh(self, hasLagrange, value): # <<<<<<<<<<<<<<
@@ -215993,7 +232779,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh(struc
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":120
+/* "PETSc/DMPlex.pyx":131
* return subdm
*
* def getChart(self): # <<<<<<<<<<<<<<
@@ -216002,23 +232788,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh(struc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_21getChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_20getChart[] = "DMPlex.getChart(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_21getChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_23getChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_22getChart[] = "DMPlex.getChart(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_23getChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getChart (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getChart", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getChart", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_22getChart(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_22getChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
PyObject *__pyx_r = NULL;
@@ -216029,7 +232815,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("getChart", 0);
- /* "PETSc/DMPlex.pyx":121
+ /* "PETSc/DMPlex.pyx":132
*
* def getChart(self):
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -216039,16 +232825,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":122
+ /* "PETSc/DMPlex.pyx":133
* def getChart(self):
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* return toInt(pStart), toInt(pEnd)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 122, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 133, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":123
+ /* "PETSc/DMPlex.pyx":134
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* return toInt(pStart), toInt(pEnd) # <<<<<<<<<<<<<<
@@ -216056,11 +232842,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8
* def setChart(self, pStart, pEnd):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_pStart); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 123, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_pStart); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 134, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_pEnd); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 123, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_pEnd); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 134, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 123, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 134, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
@@ -216072,7 +232858,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":120
+ /* "PETSc/DMPlex.pyx":131
* return subdm
*
* def getChart(self): # <<<<<<<<<<<<<<
@@ -216093,7 +232879,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":125
+/* "PETSc/DMPlex.pyx":136
* return toInt(pStart), toInt(pEnd)
*
* def setChart(self, pStart, pEnd): # <<<<<<<<<<<<<<
@@ -216102,9 +232888,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_20getChart(struct __pyx_obj_8
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_23setChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_22setChart[] = "DMPlex.setChart(self, pStart, pEnd)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_23setChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_25setChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_24setChart[] = "DMPlex.setChart(self, pStart, pEnd)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_25setChart(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_pStart = 0;
PyObject *__pyx_v_pEnd = 0;
PyObject *__pyx_r = 0;
@@ -216118,7 +232904,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_23setChart(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -216127,14 +232915,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_23setChart(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pStart)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pEnd)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setChart", 1, 2, 2, 1); __PYX_ERR(42, 125, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setChart", 1, 2, 2, 1); __PYX_ERR(42, 136, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setChart") < 0)) __PYX_ERR(42, 125, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setChart") < 0)) __PYX_ERR(42, 136, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -216147,20 +232936,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_23setChart(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setChart", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 125, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setChart", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 136, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setChart", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_22setChart(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_pStart, __pyx_v_pEnd);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_24setChart(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_pStart, __pyx_v_pEnd);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_22setChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_pStart, PyObject *__pyx_v_pEnd) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24setChart(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_pStart, PyObject *__pyx_v_pEnd) {
PetscInt __pyx_v_cStart;
PetscInt __pyx_v_cEnd;
PyObject *__pyx_r = NULL;
@@ -216169,36 +232958,36 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_22setChart(struct __pyx_obj_8
int __pyx_t_2;
__Pyx_RefNannySetupContext("setChart", 0);
- /* "PETSc/DMPlex.pyx":126
+ /* "PETSc/DMPlex.pyx":137
*
* def setChart(self, pStart, pEnd):
* cdef PetscInt cStart = asInt(pStart) # <<<<<<<<<<<<<<
* cdef PetscInt cEnd = asInt(pEnd)
* CHKERR( DMPlexSetChart(self.dm, cStart, cEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pStart); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 126, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pStart); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 137, __pyx_L1_error)
__pyx_v_cStart = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":127
+ /* "PETSc/DMPlex.pyx":138
* def setChart(self, pStart, pEnd):
* cdef PetscInt cStart = asInt(pStart)
* cdef PetscInt cEnd = asInt(pEnd) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetChart(self.dm, cStart, cEnd) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pEnd); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 127, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_pEnd); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 138, __pyx_L1_error)
__pyx_v_cEnd = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":128
+ /* "PETSc/DMPlex.pyx":139
* cdef PetscInt cStart = asInt(pStart)
* cdef PetscInt cEnd = asInt(pEnd)
* CHKERR( DMPlexSetChart(self.dm, cStart, cEnd) ) # <<<<<<<<<<<<<<
*
* def getConeSize(self, p):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetChart(__pyx_v_self->__pyx_base.dm, __pyx_v_cStart, __pyx_v_cEnd)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 128, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetChart(__pyx_v_self->__pyx_base.dm, __pyx_v_cStart, __pyx_v_cEnd)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 139, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":125
+ /* "PETSc/DMPlex.pyx":136
* return toInt(pStart), toInt(pEnd)
*
* def setChart(self, pStart, pEnd): # <<<<<<<<<<<<<<
@@ -216218,7 +233007,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_22setChart(struct __pyx_obj_8
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":130
+/* "PETSc/DMPlex.pyx":141
* CHKERR( DMPlexSetChart(self.dm, cStart, cEnd) )
*
* def getConeSize(self, p): # <<<<<<<<<<<<<<
@@ -216227,9 +233016,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_22setChart(struct __pyx_obj_8
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_25getConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_24getConeSize[] = "DMPlex.getConeSize(self, p)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_25getConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_27getConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_26getConeSize[] = "DMPlex.getConeSize(self, p)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_27getConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -216242,6 +233031,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_25getConeSize(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -216252,7 +233042,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_25getConeSize(PyObject *__pyx
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getConeSize") < 0)) __PYX_ERR(42, 130, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getConeSize") < 0)) __PYX_ERR(42, 141, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -216263,20 +233053,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_25getConeSize(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getConeSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 130, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getConeSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 141, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getConeSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_26getConeSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26getConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -216290,17 +233080,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_ob
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getConeSize", 0);
- /* "PETSc/DMPlex.pyx":131
+ /* "PETSc/DMPlex.pyx":142
*
* def getConeSize(self, p):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 131, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 142, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":132
+ /* "PETSc/DMPlex.pyx":143
* def getConeSize(self, p):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -216310,16 +233100,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_ob
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":133
+ /* "PETSc/DMPlex.pyx":144
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt csize = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 133, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 144, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":134
+ /* "PETSc/DMPlex.pyx":145
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -216339,12 +233129,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_ob
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 134, __pyx_L1_error)
+ __PYX_ERR(42, 145, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":135
+ /* "PETSc/DMPlex.pyx":146
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt csize = 0 # <<<<<<<<<<<<<<
@@ -216353,16 +233143,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_ob
*/
__pyx_v_csize = 0;
- /* "PETSc/DMPlex.pyx":136
+ /* "PETSc/DMPlex.pyx":147
* assert cp>=pStart and cp<pEnd
* cdef PetscInt csize = 0
* CHKERR( DMPlexGetConeSize(self.dm, cp, &csize) ) # <<<<<<<<<<<<<<
* return toInt(csize)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_csize))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 136, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_csize))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 147, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":137
+ /* "PETSc/DMPlex.pyx":148
* cdef PetscInt csize = 0
* CHKERR( DMPlexGetConeSize(self.dm, cp, &csize) )
* return toInt(csize) # <<<<<<<<<<<<<<
@@ -216370,13 +233160,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_ob
* def setConeSize(self, p, size):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_csize); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 137, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_csize); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 148, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":130
+ /* "PETSc/DMPlex.pyx":141
* CHKERR( DMPlexSetChart(self.dm, cStart, cEnd) )
*
* def getConeSize(self, p): # <<<<<<<<<<<<<<
@@ -216395,7 +233185,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_ob
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":139
+/* "PETSc/DMPlex.pyx":150
* return toInt(csize)
*
* def setConeSize(self, p, size): # <<<<<<<<<<<<<<
@@ -216404,9 +233194,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_24getConeSize(struct __pyx_ob
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_27setConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_26setConeSize[] = "DMPlex.setConeSize(self, p, size)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_27setConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_29setConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_28setConeSize[] = "DMPlex.setConeSize(self, p, size)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_29setConeSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_size = 0;
PyObject *__pyx_r = 0;
@@ -216420,7 +233210,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_27setConeSize(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -216429,14 +233221,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_27setConeSize(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setConeSize", 1, 2, 2, 1); __PYX_ERR(42, 139, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConeSize", 1, 2, 2, 1); __PYX_ERR(42, 150, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConeSize") < 0)) __PYX_ERR(42, 139, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConeSize") < 0)) __PYX_ERR(42, 150, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -216449,20 +233242,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_27setConeSize(PyObject *__pyx
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConeSize", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 139, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConeSize", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 150, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setConeSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_size);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_28setConeSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_size);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28setConeSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -216475,17 +233268,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(struct __pyx_ob
int __pyx_t_4;
__Pyx_RefNannySetupContext("setConeSize", 0);
- /* "PETSc/DMPlex.pyx":140
+ /* "PETSc/DMPlex.pyx":151
*
* def setConeSize(self, p, size):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 140, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 151, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":141
+ /* "PETSc/DMPlex.pyx":152
* def setConeSize(self, p, size):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -216495,16 +233288,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(struct __pyx_ob
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":142
+ /* "PETSc/DMPlex.pyx":153
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt csize = asInt(size)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 142, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 153, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":143
+ /* "PETSc/DMPlex.pyx":154
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -216524,31 +233317,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(struct __pyx_ob
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 143, __pyx_L1_error)
+ __PYX_ERR(42, 154, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":144
+ /* "PETSc/DMPlex.pyx":155
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt csize = asInt(size) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetConeSize(self.dm, cp, csize) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 144, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 155, __pyx_L1_error)
__pyx_v_csize = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":145
+ /* "PETSc/DMPlex.pyx":156
* assert cp>=pStart and cp<pEnd
* cdef PetscInt csize = asInt(size)
* CHKERR( DMPlexSetConeSize(self.dm, cp, csize) ) # <<<<<<<<<<<<<<
*
* def getCone(self, p):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_csize)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 145, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_csize)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 156, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":139
+ /* "PETSc/DMPlex.pyx":150
* return toInt(csize)
*
* def setConeSize(self, p, size): # <<<<<<<<<<<<<<
@@ -216568,7 +233361,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(struct __pyx_ob
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":147
+/* "PETSc/DMPlex.pyx":158
* CHKERR( DMPlexSetConeSize(self.dm, cp, csize) )
*
* def getCone(self, p): # <<<<<<<<<<<<<<
@@ -216577,9 +233370,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_26setConeSize(struct __pyx_ob
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_29getCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_28getCone[] = "DMPlex.getCone(self, p)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_29getCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31getCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_30getCone[] = "DMPlex.getCone(self, p)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31getCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -216592,6 +233385,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_29getCone(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -216602,7 +233396,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_29getCone(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getCone") < 0)) __PYX_ERR(42, 147, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getCone") < 0)) __PYX_ERR(42, 158, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -216613,20 +233407,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_29getCone(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getCone", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 147, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getCone", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 158, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getCone", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_30getCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30getCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -216641,17 +233435,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getCone", 0);
- /* "PETSc/DMPlex.pyx":148
+ /* "PETSc/DMPlex.pyx":159
*
* def getCone(self, p):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 148, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 159, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":149
+ /* "PETSc/DMPlex.pyx":160
* def getCone(self, p):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -216661,16 +233455,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":150
+ /* "PETSc/DMPlex.pyx":161
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ncone = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 150, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 161, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":151
+ /* "PETSc/DMPlex.pyx":162
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -216690,12 +233484,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 151, __pyx_L1_error)
+ __PYX_ERR(42, 162, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":152
+ /* "PETSc/DMPlex.pyx":163
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ncone = 0 # <<<<<<<<<<<<<<
@@ -216704,7 +233498,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
*/
__pyx_v_ncone = 0;
- /* "PETSc/DMPlex.pyx":153
+ /* "PETSc/DMPlex.pyx":164
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ncone = 0
* cdef const_PetscInt *icone = NULL # <<<<<<<<<<<<<<
@@ -216713,25 +233507,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
*/
__pyx_v_icone = NULL;
- /* "PETSc/DMPlex.pyx":154
+ /* "PETSc/DMPlex.pyx":165
* cdef PetscInt ncone = 0
* cdef const_PetscInt *icone = NULL
* CHKERR( DMPlexGetConeSize(self.dm, cp, &ncone) ) # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetCone(self.dm, cp, &icone) )
* return array_i(ncone, icone)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_ncone))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 154, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_ncone))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 165, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":155
+ /* "PETSc/DMPlex.pyx":166
* cdef const_PetscInt *icone = NULL
* CHKERR( DMPlexGetConeSize(self.dm, cp, &ncone) )
* CHKERR( DMPlexGetCone(self.dm, cp, &icone) ) # <<<<<<<<<<<<<<
* return array_i(ncone, icone)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetCone(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_icone))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 155, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetCone(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_icone))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 166, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":156
+ /* "PETSc/DMPlex.pyx":167
* CHKERR( DMPlexGetConeSize(self.dm, cp, &ncone) )
* CHKERR( DMPlexGetCone(self.dm, cp, &icone) )
* return array_i(ncone, icone) # <<<<<<<<<<<<<<
@@ -216739,13 +233533,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
* def setCone(self, p, cone, orientation=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_ncone, __pyx_v_icone)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 156, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_ncone, __pyx_v_icone)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 167, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":147
+ /* "PETSc/DMPlex.pyx":158
* CHKERR( DMPlexSetConeSize(self.dm, cp, csize) )
*
* def getCone(self, p): # <<<<<<<<<<<<<<
@@ -216764,7 +233558,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":158
+/* "PETSc/DMPlex.pyx":169
* return array_i(ncone, icone)
*
* def setCone(self, p, cone, orientation=None): # <<<<<<<<<<<<<<
@@ -216773,9 +233567,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_28getCone(struct __pyx_obj_8p
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31setCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_30setCone[] = "DMPlex.setCone(self, p, cone, orientation=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31setCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_33setCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_32setCone[] = "DMPlex.setCone(self, p, cone, orientation=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_33setCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_cone = 0;
PyObject *__pyx_v_orientation = 0;
@@ -216791,8 +233585,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31setCone(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -216801,11 +233598,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31setCone(PyObject *__pyx_v_s
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cone)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setCone", 0, 2, 3, 1); __PYX_ERR(42, 158, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCone", 0, 2, 3, 1); __PYX_ERR(42, 169, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_orientation);
@@ -216813,11 +233612,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31setCone(PyObject *__pyx_v_s
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCone") < 0)) __PYX_ERR(42, 158, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCone") < 0)) __PYX_ERR(42, 169, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -216830,20 +233630,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_31setCone(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setCone", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 158, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCone", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 169, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setCone", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_cone, __pyx_v_orientation);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_32setCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_cone, __pyx_v_orientation);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_cone, PyObject *__pyx_v_orientation) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_32setCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_cone, PyObject *__pyx_v_orientation) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -216862,17 +233662,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
__Pyx_INCREF(__pyx_v_cone);
__Pyx_INCREF(__pyx_v_orientation);
- /* "PETSc/DMPlex.pyx":159
+ /* "PETSc/DMPlex.pyx":170
*
* def setCone(self, p, cone, orientation=None):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 159, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 170, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":160
+ /* "PETSc/DMPlex.pyx":171
* def setCone(self, p, cone, orientation=None):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -216882,16 +233682,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":161
+ /* "PETSc/DMPlex.pyx":172
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* #
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 161, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 172, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":162
+ /* "PETSc/DMPlex.pyx":173
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -216911,12 +233711,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 162, __pyx_L1_error)
+ __PYX_ERR(42, 173, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":164
+ /* "PETSc/DMPlex.pyx":175
* assert cp>=pStart and cp<pEnd
* #
* cdef PetscInt ncone = 0 # <<<<<<<<<<<<<<
@@ -216925,7 +233725,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
*/
__pyx_v_ncone = 0;
- /* "PETSc/DMPlex.pyx":165
+ /* "PETSc/DMPlex.pyx":176
* #
* cdef PetscInt ncone = 0
* cdef PetscInt *icone = NULL # <<<<<<<<<<<<<<
@@ -216934,37 +233734,37 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
*/
__pyx_v_icone = NULL;
- /* "PETSc/DMPlex.pyx":166
+ /* "PETSc/DMPlex.pyx":177
* cdef PetscInt ncone = 0
* cdef PetscInt *icone = NULL
* cone = iarray_i(cone, &ncone, &icone) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetConeSize(self.dm, cp, ncone) )
* CHKERR( DMPlexSetCone(self.dm, cp, icone) )
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_cone, (&__pyx_v_ncone), (&__pyx_v_icone))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 166, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_cone, (&__pyx_v_ncone), (&__pyx_v_icone))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 177, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_cone, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/DMPlex.pyx":167
+ /* "PETSc/DMPlex.pyx":178
* cdef PetscInt *icone = NULL
* cone = iarray_i(cone, &ncone, &icone)
* CHKERR( DMPlexSetConeSize(self.dm, cp, ncone) ) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetCone(self.dm, cp, icone) )
* #
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_ncone)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 167, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_ncone)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 178, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":168
+ /* "PETSc/DMPlex.pyx":179
* cone = iarray_i(cone, &ncone, &icone)
* CHKERR( DMPlexSetConeSize(self.dm, cp, ncone) )
* CHKERR( DMPlexSetCone(self.dm, cp, icone) ) # <<<<<<<<<<<<<<
* #
* cdef PetscInt norie = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetCone(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_icone)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 168, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetCone(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_icone)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 179, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":170
+ /* "PETSc/DMPlex.pyx":181
* CHKERR( DMPlexSetCone(self.dm, cp, icone) )
* #
* cdef PetscInt norie = 0 # <<<<<<<<<<<<<<
@@ -216973,7 +233773,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
*/
__pyx_v_norie = 0;
- /* "PETSc/DMPlex.pyx":171
+ /* "PETSc/DMPlex.pyx":182
* #
* cdef PetscInt norie = 0
* cdef PetscInt *iorie = NULL # <<<<<<<<<<<<<<
@@ -216982,7 +233782,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
*/
__pyx_v_iorie = NULL;
- /* "PETSc/DMPlex.pyx":172
+ /* "PETSc/DMPlex.pyx":183
* cdef PetscInt norie = 0
* cdef PetscInt *iorie = NULL
* if orientation is not None: # <<<<<<<<<<<<<<
@@ -216993,19 +233793,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "PETSc/DMPlex.pyx":173
+ /* "PETSc/DMPlex.pyx":184
* cdef PetscInt *iorie = NULL
* if orientation is not None:
* orientation = iarray_i(orientation, &norie, &iorie) # <<<<<<<<<<<<<<
* assert norie == ncone
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) )
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_orientation, (&__pyx_v_norie), (&__pyx_v_iorie))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 173, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_orientation, (&__pyx_v_norie), (&__pyx_v_iorie))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_orientation, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/DMPlex.pyx":174
+ /* "PETSc/DMPlex.pyx":185
* if orientation is not None:
* orientation = iarray_i(orientation, &norie, &iorie)
* assert norie == ncone # <<<<<<<<<<<<<<
@@ -217016,21 +233816,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_norie == __pyx_v_ncone) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 174, __pyx_L1_error)
+ __PYX_ERR(42, 185, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":175
+ /* "PETSc/DMPlex.pyx":186
* orientation = iarray_i(orientation, &norie, &iorie)
* assert norie == ncone
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) ) # <<<<<<<<<<<<<<
*
* def insertCone(self, p, conePos, conePoint):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_iorie)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 175, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_iorie)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 186, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":172
+ /* "PETSc/DMPlex.pyx":183
* cdef PetscInt norie = 0
* cdef PetscInt *iorie = NULL
* if orientation is not None: # <<<<<<<<<<<<<<
@@ -217039,7 +233839,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
*/
}
- /* "PETSc/DMPlex.pyx":158
+ /* "PETSc/DMPlex.pyx":169
* return array_i(ncone, icone)
*
* def setCone(self, p, cone, orientation=None): # <<<<<<<<<<<<<<
@@ -217062,7 +233862,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":177
+/* "PETSc/DMPlex.pyx":188
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) )
*
* def insertCone(self, p, conePos, conePoint): # <<<<<<<<<<<<<<
@@ -217071,9 +233871,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_30setCone(struct __pyx_obj_8p
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_33insertCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_32insertCone[] = "DMPlex.insertCone(self, p, conePos, conePoint)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_33insertCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_34insertCone[] = "DMPlex.insertCone(self, p, conePos, conePoint)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_conePos = 0;
PyObject *__pyx_v_conePoint = 0;
@@ -217088,8 +233888,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_33insertCone(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -217098,19 +233901,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_33insertCone(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_conePos)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("insertCone", 1, 3, 3, 1); __PYX_ERR(42, 177, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("insertCone", 1, 3, 3, 1); __PYX_ERR(42, 188, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_conePoint)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("insertCone", 1, 3, 3, 2); __PYX_ERR(42, 177, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("insertCone", 1, 3, 3, 2); __PYX_ERR(42, 188, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "insertCone") < 0)) __PYX_ERR(42, 177, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "insertCone") < 0)) __PYX_ERR(42, 188, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -217125,20 +233930,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_33insertCone(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("insertCone", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 177, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("insertCone", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 188, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.insertCone", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_32insertCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_conePos, __pyx_v_conePoint);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_conePos, __pyx_v_conePoint);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_32insertCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_conePoint) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_conePoint) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_cconePos;
PetscInt __pyx_v_cconePoint;
@@ -217148,46 +233953,46 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_32insertCone(struct __pyx_obj
int __pyx_t_2;
__Pyx_RefNannySetupContext("insertCone", 0);
- /* "PETSc/DMPlex.pyx":178
+ /* "PETSc/DMPlex.pyx":189
*
* def insertCone(self, p, conePos, conePoint):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt cconePos = asInt(conePos)
* cdef PetscInt cconePoint = asInt(conePoint)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 178, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 189, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":179
+ /* "PETSc/DMPlex.pyx":190
* def insertCone(self, p, conePos, conePoint):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt cconePos = asInt(conePos) # <<<<<<<<<<<<<<
* cdef PetscInt cconePoint = asInt(conePoint)
* CHKERR( DMPlexInsertCone(self.dm,cp,cconePos,cconePoint) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_conePos); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 179, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_conePos); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 190, __pyx_L1_error)
__pyx_v_cconePos = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":180
+ /* "PETSc/DMPlex.pyx":191
* cdef PetscInt cp = asInt(p)
* cdef PetscInt cconePos = asInt(conePos)
* cdef PetscInt cconePoint = asInt(conePoint) # <<<<<<<<<<<<<<
* CHKERR( DMPlexInsertCone(self.dm,cp,cconePos,cconePoint) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_conePoint); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 180, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_conePoint); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 191, __pyx_L1_error)
__pyx_v_cconePoint = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":181
+ /* "PETSc/DMPlex.pyx":192
* cdef PetscInt cconePos = asInt(conePos)
* cdef PetscInt cconePoint = asInt(conePoint)
* CHKERR( DMPlexInsertCone(self.dm,cp,cconePos,cconePoint) ) # <<<<<<<<<<<<<<
*
* def insertConeOrientation(self, p, conePos, coneOrientation):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexInsertCone(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cconePos, __pyx_v_cconePoint)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 181, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexInsertCone(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cconePos, __pyx_v_cconePoint)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 192, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":177
+ /* "PETSc/DMPlex.pyx":188
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) )
*
* def insertCone(self, p, conePos, conePoint): # <<<<<<<<<<<<<<
@@ -217207,7 +234012,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_32insertCone(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":183
+/* "PETSc/DMPlex.pyx":194
* CHKERR( DMPlexInsertCone(self.dm,cp,cconePos,cconePoint) )
*
* def insertConeOrientation(self, p, conePos, coneOrientation): # <<<<<<<<<<<<<<
@@ -217216,9 +234021,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_32insertCone(struct __pyx_obj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation[] = "DMPlex.insertConeOrientation(self, p, conePos, coneOrientation)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_37insertConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_36insertConeOrientation[] = "DMPlex.insertConeOrientation(self, p, conePos, coneOrientation)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_37insertConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_conePos = 0;
PyObject *__pyx_v_coneOrientation = 0;
@@ -217233,8 +234038,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertConeOrientation(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -217243,19 +234051,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertConeOrientation(PyObj
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_conePos)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("insertConeOrientation", 1, 3, 3, 1); __PYX_ERR(42, 183, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("insertConeOrientation", 1, 3, 3, 1); __PYX_ERR(42, 194, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_coneOrientation)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("insertConeOrientation", 1, 3, 3, 2); __PYX_ERR(42, 183, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("insertConeOrientation", 1, 3, 3, 2); __PYX_ERR(42, 194, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "insertConeOrientation") < 0)) __PYX_ERR(42, 183, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "insertConeOrientation") < 0)) __PYX_ERR(42, 194, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -217270,20 +234080,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertConeOrientation(PyObj
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("insertConeOrientation", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 183, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("insertConeOrientation", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 194, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.insertConeOrientation", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_conePos, __pyx_v_coneOrientation);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_36insertConeOrientation(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_conePos, __pyx_v_coneOrientation);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_coneOrientation) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36insertConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_conePos, PyObject *__pyx_v_coneOrientation) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_cconePos;
PetscInt __pyx_v_cconeOrientation;
@@ -217293,46 +234103,46 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation(struc
int __pyx_t_2;
__Pyx_RefNannySetupContext("insertConeOrientation", 0);
- /* "PETSc/DMPlex.pyx":184
+ /* "PETSc/DMPlex.pyx":195
*
* def insertConeOrientation(self, p, conePos, coneOrientation):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt cconePos = asInt(conePos)
* cdef PetscInt cconeOrientation = asInt(coneOrientation)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 184, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 195, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":185
+ /* "PETSc/DMPlex.pyx":196
* def insertConeOrientation(self, p, conePos, coneOrientation):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt cconePos = asInt(conePos) # <<<<<<<<<<<<<<
* cdef PetscInt cconeOrientation = asInt(coneOrientation)
* CHKERR( DMPlexInsertConeOrientation(self.dm, cp, cconePos, cconeOrientation) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_conePos); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 185, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_conePos); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 196, __pyx_L1_error)
__pyx_v_cconePos = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":186
+ /* "PETSc/DMPlex.pyx":197
* cdef PetscInt cp = asInt(p)
* cdef PetscInt cconePos = asInt(conePos)
* cdef PetscInt cconeOrientation = asInt(coneOrientation) # <<<<<<<<<<<<<<
* CHKERR( DMPlexInsertConeOrientation(self.dm, cp, cconePos, cconeOrientation) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_coneOrientation); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 186, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_coneOrientation); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 197, __pyx_L1_error)
__pyx_v_cconeOrientation = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":187
+ /* "PETSc/DMPlex.pyx":198
* cdef PetscInt cconePos = asInt(conePos)
* cdef PetscInt cconeOrientation = asInt(coneOrientation)
* CHKERR( DMPlexInsertConeOrientation(self.dm, cp, cconePos, cconeOrientation) ) # <<<<<<<<<<<<<<
*
* def getConeOrientation(self, p):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexInsertConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cconePos, __pyx_v_cconeOrientation)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 187, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexInsertConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cconePos, __pyx_v_cconeOrientation)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 198, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":183
+ /* "PETSc/DMPlex.pyx":194
* CHKERR( DMPlexInsertCone(self.dm,cp,cconePos,cconePoint) )
*
* def insertConeOrientation(self, p, conePos, coneOrientation): # <<<<<<<<<<<<<<
@@ -217352,7 +234162,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation(struc
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":189
+/* "PETSc/DMPlex.pyx":200
* CHKERR( DMPlexInsertConeOrientation(self.dm, cp, cconePos, cconeOrientation) )
*
* def getConeOrientation(self, p): # <<<<<<<<<<<<<<
@@ -217361,9 +234171,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation(struc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_37getConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_36getConeOrientation[] = "DMPlex.getConeOrientation(self, p)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_37getConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_39getConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_38getConeOrientation[] = "DMPlex.getConeOrientation(self, p)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_39getConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -217376,6 +234186,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_37getConeOrientation(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -217386,7 +234197,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_37getConeOrientation(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getConeOrientation") < 0)) __PYX_ERR(42, 189, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getConeOrientation") < 0)) __PYX_ERR(42, 200, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -217397,20 +234208,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_37getConeOrientation(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getConeOrientation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 189, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getConeOrientation", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 200, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getConeOrientation", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_38getConeOrientation(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38getConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -217425,17 +234236,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getConeOrientation", 0);
- /* "PETSc/DMPlex.pyx":190
+ /* "PETSc/DMPlex.pyx":201
*
* def getConeOrientation(self, p):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 190, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 201, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":191
+ /* "PETSc/DMPlex.pyx":202
* def getConeOrientation(self, p):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -217445,16 +234256,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":192
+ /* "PETSc/DMPlex.pyx":203
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt norie = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 192, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 203, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":193
+ /* "PETSc/DMPlex.pyx":204
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -217474,12 +234285,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 193, __pyx_L1_error)
+ __PYX_ERR(42, 204, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":194
+ /* "PETSc/DMPlex.pyx":205
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt norie = 0 # <<<<<<<<<<<<<<
@@ -217488,7 +234299,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
*/
__pyx_v_norie = 0;
- /* "PETSc/DMPlex.pyx":195
+ /* "PETSc/DMPlex.pyx":206
* assert cp>=pStart and cp<pEnd
* cdef PetscInt norie = 0
* cdef const_PetscInt *iorie = NULL # <<<<<<<<<<<<<<
@@ -217497,25 +234308,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
*/
__pyx_v_iorie = NULL;
- /* "PETSc/DMPlex.pyx":196
+ /* "PETSc/DMPlex.pyx":207
* cdef PetscInt norie = 0
* cdef const_PetscInt *iorie = NULL
* CHKERR( DMPlexGetConeSize(self.dm, cp, &norie) ) # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetConeOrientation(self.dm, cp, &iorie) )
* return array_i(norie, iorie)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_norie))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 196, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_norie))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 207, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":197
+ /* "PETSc/DMPlex.pyx":208
* cdef const_PetscInt *iorie = NULL
* CHKERR( DMPlexGetConeSize(self.dm, cp, &norie) )
* CHKERR( DMPlexGetConeOrientation(self.dm, cp, &iorie) ) # <<<<<<<<<<<<<<
* return array_i(norie, iorie)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_iorie))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 197, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_iorie))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 208, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":198
+ /* "PETSc/DMPlex.pyx":209
* CHKERR( DMPlexGetConeSize(self.dm, cp, &norie) )
* CHKERR( DMPlexGetConeOrientation(self.dm, cp, &iorie) )
* return array_i(norie, iorie) # <<<<<<<<<<<<<<
@@ -217523,13 +234334,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
* def setConeOrientation(self, p, orientation):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_norie, __pyx_v_iorie)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 198, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_norie, __pyx_v_iorie)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 209, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":189
+ /* "PETSc/DMPlex.pyx":200
* CHKERR( DMPlexInsertConeOrientation(self.dm, cp, cconePos, cconeOrientation) )
*
* def getConeOrientation(self, p): # <<<<<<<<<<<<<<
@@ -217548,7 +234359,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":200
+/* "PETSc/DMPlex.pyx":211
* return array_i(norie, iorie)
*
* def setConeOrientation(self, p, orientation): # <<<<<<<<<<<<<<
@@ -217557,9 +234368,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_36getConeOrientation(struct _
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_39setConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_38setConeOrientation[] = "DMPlex.setConeOrientation(self, p, orientation)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_39setConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_41setConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_40setConeOrientation[] = "DMPlex.setConeOrientation(self, p, orientation)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_41setConeOrientation(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_orientation = 0;
PyObject *__pyx_r = 0;
@@ -217573,7 +234384,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_39setConeOrientation(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -217582,14 +234395,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_39setConeOrientation(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_orientation)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setConeOrientation", 1, 2, 2, 1); __PYX_ERR(42, 200, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConeOrientation", 1, 2, 2, 1); __PYX_ERR(42, 211, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConeOrientation") < 0)) __PYX_ERR(42, 200, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setConeOrientation") < 0)) __PYX_ERR(42, 211, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -217602,20 +234416,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_39setConeOrientation(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setConeOrientation", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 200, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setConeOrientation", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 211, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setConeOrientation", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_orientation);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_40setConeOrientation(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_orientation);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_orientation) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40setConeOrientation(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_orientation) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -217632,17 +234446,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
__Pyx_RefNannySetupContext("setConeOrientation", 0);
__Pyx_INCREF(__pyx_v_orientation);
- /* "PETSc/DMPlex.pyx":201
+ /* "PETSc/DMPlex.pyx":212
*
* def setConeOrientation(self, p, orientation):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 201, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 212, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":202
+ /* "PETSc/DMPlex.pyx":213
* def setConeOrientation(self, p, orientation):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -217652,16 +234466,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":203
+ /* "PETSc/DMPlex.pyx":214
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ncone = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 203, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 214, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":204
+ /* "PETSc/DMPlex.pyx":215
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -217681,12 +234495,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 204, __pyx_L1_error)
+ __PYX_ERR(42, 215, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":205
+ /* "PETSc/DMPlex.pyx":216
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ncone = 0 # <<<<<<<<<<<<<<
@@ -217695,16 +234509,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
*/
__pyx_v_ncone = 0;
- /* "PETSc/DMPlex.pyx":206
+ /* "PETSc/DMPlex.pyx":217
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ncone = 0
* CHKERR( DMPlexGetConeSize(self.dm, cp, &ncone) ) # <<<<<<<<<<<<<<
* cdef PetscInt norie = 0
* cdef PetscInt *iorie = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_ncone))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 206, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetConeSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_ncone))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 217, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":207
+ /* "PETSc/DMPlex.pyx":218
* cdef PetscInt ncone = 0
* CHKERR( DMPlexGetConeSize(self.dm, cp, &ncone) )
* cdef PetscInt norie = 0 # <<<<<<<<<<<<<<
@@ -217713,7 +234527,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
*/
__pyx_v_norie = 0;
- /* "PETSc/DMPlex.pyx":208
+ /* "PETSc/DMPlex.pyx":219
* CHKERR( DMPlexGetConeSize(self.dm, cp, &ncone) )
* cdef PetscInt norie = 0
* cdef PetscInt *iorie = NULL # <<<<<<<<<<<<<<
@@ -217722,19 +234536,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
*/
__pyx_v_iorie = NULL;
- /* "PETSc/DMPlex.pyx":209
+ /* "PETSc/DMPlex.pyx":220
* cdef PetscInt norie = 0
* cdef PetscInt *iorie = NULL
* orientation = iarray_i(orientation, &norie, &iorie) # <<<<<<<<<<<<<<
* assert norie == ncone
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) )
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_orientation, (&__pyx_v_norie), (&__pyx_v_iorie))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 209, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_orientation, (&__pyx_v_norie), (&__pyx_v_iorie))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 220, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_orientation, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/DMPlex.pyx":210
+ /* "PETSc/DMPlex.pyx":221
* cdef PetscInt *iorie = NULL
* orientation = iarray_i(orientation, &norie, &iorie)
* assert norie == ncone # <<<<<<<<<<<<<<
@@ -217745,21 +234559,21 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_norie == __pyx_v_ncone) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 210, __pyx_L1_error)
+ __PYX_ERR(42, 221, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":211
+ /* "PETSc/DMPlex.pyx":222
* orientation = iarray_i(orientation, &norie, &iorie)
* assert norie == ncone
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) ) # <<<<<<<<<<<<<<
*
* def getSupportSize(self, p):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_iorie)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 211, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetConeOrientation(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_iorie)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 222, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":200
+ /* "PETSc/DMPlex.pyx":211
* return array_i(norie, iorie)
*
* def setConeOrientation(self, p, orientation): # <<<<<<<<<<<<<<
@@ -217781,7 +234595,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":213
+/* "PETSc/DMPlex.pyx":224
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) )
*
* def getSupportSize(self, p): # <<<<<<<<<<<<<<
@@ -217790,9 +234604,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_38setConeOrientation(struct _
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_41getSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_40getSupportSize[] = "DMPlex.getSupportSize(self, p)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_41getSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_43getSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_42getSupportSize[] = "DMPlex.getSupportSize(self, p)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_43getSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -217805,6 +234619,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_41getSupportSize(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -217815,7 +234630,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_41getSupportSize(PyObject *__
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSupportSize") < 0)) __PYX_ERR(42, 213, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSupportSize") < 0)) __PYX_ERR(42, 224, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -217826,20 +234641,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_41getSupportSize(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getSupportSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 213, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getSupportSize", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 224, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getSupportSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_42getSupportSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42getSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -217853,17 +234668,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getSupportSize", 0);
- /* "PETSc/DMPlex.pyx":214
+ /* "PETSc/DMPlex.pyx":225
*
* def getSupportSize(self, p):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 214, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 225, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":215
+ /* "PETSc/DMPlex.pyx":226
* def getSupportSize(self, p):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -217873,16 +234688,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":216
+ /* "PETSc/DMPlex.pyx":227
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ssize = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 216, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 227, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":217
+ /* "PETSc/DMPlex.pyx":228
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -217902,12 +234717,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 217, __pyx_L1_error)
+ __PYX_ERR(42, 228, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":218
+ /* "PETSc/DMPlex.pyx":229
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ssize = 0 # <<<<<<<<<<<<<<
@@ -217916,16 +234731,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx
*/
__pyx_v_ssize = 0;
- /* "PETSc/DMPlex.pyx":219
+ /* "PETSc/DMPlex.pyx":230
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ssize = 0
* CHKERR( DMPlexGetSupportSize(self.dm, cp, &ssize) ) # <<<<<<<<<<<<<<
* return toInt(ssize)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_ssize))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 219, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_ssize))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 230, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":220
+ /* "PETSc/DMPlex.pyx":231
* cdef PetscInt ssize = 0
* CHKERR( DMPlexGetSupportSize(self.dm, cp, &ssize) )
* return toInt(ssize) # <<<<<<<<<<<<<<
@@ -217933,13 +234748,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx
* def setSupportSize(self, p, size):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ssize); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 220, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_ssize); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 231, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":213
+ /* "PETSc/DMPlex.pyx":224
* CHKERR( DMPlexSetConeOrientation(self.dm, cp, iorie) )
*
* def getSupportSize(self, p): # <<<<<<<<<<<<<<
@@ -217958,7 +234773,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":222
+/* "PETSc/DMPlex.pyx":233
* return toInt(ssize)
*
* def setSupportSize(self, p, size): # <<<<<<<<<<<<<<
@@ -217967,9 +234782,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_40getSupportSize(struct __pyx
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_43setSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_42setSupportSize[] = "DMPlex.setSupportSize(self, p, size)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_43setSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_45setSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_44setSupportSize[] = "DMPlex.setSupportSize(self, p, size)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_45setSupportSize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_size = 0;
PyObject *__pyx_r = 0;
@@ -217983,7 +234798,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_43setSupportSize(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -217992,14 +234809,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_43setSupportSize(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_size)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setSupportSize", 1, 2, 2, 1); __PYX_ERR(42, 222, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSupportSize", 1, 2, 2, 1); __PYX_ERR(42, 233, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSupportSize") < 0)) __PYX_ERR(42, 222, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSupportSize") < 0)) __PYX_ERR(42, 233, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -218012,20 +234830,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_43setSupportSize(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setSupportSize", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 222, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSupportSize", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 233, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setSupportSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_size);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_44setSupportSize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_size);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44setSupportSize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_size) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -218038,17 +234856,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(struct __pyx
int __pyx_t_4;
__Pyx_RefNannySetupContext("setSupportSize", 0);
- /* "PETSc/DMPlex.pyx":223
+ /* "PETSc/DMPlex.pyx":234
*
* def setSupportSize(self, p, size):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 223, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 234, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":224
+ /* "PETSc/DMPlex.pyx":235
* def setSupportSize(self, p, size):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -218058,16 +234876,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(struct __pyx
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":225
+ /* "PETSc/DMPlex.pyx":236
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ssize = asInt(size)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 225, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 236, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":226
+ /* "PETSc/DMPlex.pyx":237
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -218087,31 +234905,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(struct __pyx
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 226, __pyx_L1_error)
+ __PYX_ERR(42, 237, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":227
+ /* "PETSc/DMPlex.pyx":238
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ssize = asInt(size) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetSupportSize(self.dm, cp, ssize) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 227, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_size); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 238, __pyx_L1_error)
__pyx_v_ssize = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":228
+ /* "PETSc/DMPlex.pyx":239
* assert cp>=pStart and cp<pEnd
* cdef PetscInt ssize = asInt(size)
* CHKERR( DMPlexSetSupportSize(self.dm, cp, ssize) ) # <<<<<<<<<<<<<<
*
* def getSupport(self, p):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_ssize)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 228, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_ssize)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 239, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":222
+ /* "PETSc/DMPlex.pyx":233
* return toInt(ssize)
*
* def setSupportSize(self, p, size): # <<<<<<<<<<<<<<
@@ -218131,7 +234949,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(struct __pyx
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":230
+/* "PETSc/DMPlex.pyx":241
* CHKERR( DMPlexSetSupportSize(self.dm, cp, ssize) )
*
* def getSupport(self, p): # <<<<<<<<<<<<<<
@@ -218140,9 +234958,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_42setSupportSize(struct __pyx
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_45getSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_44getSupport[] = "DMPlex.getSupport(self, p)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_45getSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_47getSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_46getSupport[] = "DMPlex.getSupport(self, p)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_47getSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -218155,6 +234973,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_45getSupport(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -218165,7 +234984,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_45getSupport(PyObject *__pyx_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSupport") < 0)) __PYX_ERR(42, 230, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getSupport") < 0)) __PYX_ERR(42, 241, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -218176,20 +234995,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_45getSupport(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getSupport", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 230, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getSupport", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 241, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getSupport", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_46getSupport(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46getSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -218204,17 +235023,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getSupport", 0);
- /* "PETSc/DMPlex.pyx":231
+ /* "PETSc/DMPlex.pyx":242
*
* def getSupport(self, p):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 231, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 242, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":232
+ /* "PETSc/DMPlex.pyx":243
* def getSupport(self, p):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -218224,16 +235043,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":233
+ /* "PETSc/DMPlex.pyx":244
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt nsupp = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 233, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 244, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":234
+ /* "PETSc/DMPlex.pyx":245
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -218253,12 +235072,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 234, __pyx_L1_error)
+ __PYX_ERR(42, 245, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":235
+ /* "PETSc/DMPlex.pyx":246
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt nsupp = 0 # <<<<<<<<<<<<<<
@@ -218267,7 +235086,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
*/
__pyx_v_nsupp = 0;
- /* "PETSc/DMPlex.pyx":236
+ /* "PETSc/DMPlex.pyx":247
* assert cp>=pStart and cp<pEnd
* cdef PetscInt nsupp = 0
* cdef const_PetscInt *isupp = NULL # <<<<<<<<<<<<<<
@@ -218276,25 +235095,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
*/
__pyx_v_isupp = NULL;
- /* "PETSc/DMPlex.pyx":237
+ /* "PETSc/DMPlex.pyx":248
* cdef PetscInt nsupp = 0
* cdef const_PetscInt *isupp = NULL
* CHKERR( DMPlexGetSupportSize(self.dm, cp, &nsupp) ) # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetSupport(self.dm, cp, &isupp) )
* return array_i(nsupp, isupp)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_nsupp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 237, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_nsupp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 248, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":238
+ /* "PETSc/DMPlex.pyx":249
* cdef const_PetscInt *isupp = NULL
* CHKERR( DMPlexGetSupportSize(self.dm, cp, &nsupp) )
* CHKERR( DMPlexGetSupport(self.dm, cp, &isupp) ) # <<<<<<<<<<<<<<
* return array_i(nsupp, isupp)
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetSupport(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_isupp))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 238, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetSupport(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_isupp))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 249, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":239
+ /* "PETSc/DMPlex.pyx":250
* CHKERR( DMPlexGetSupportSize(self.dm, cp, &nsupp) )
* CHKERR( DMPlexGetSupport(self.dm, cp, &isupp) )
* return array_i(nsupp, isupp) # <<<<<<<<<<<<<<
@@ -218302,13 +235121,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
* def setSupport(self, p, supp):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_nsupp, __pyx_v_isupp)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 239, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_nsupp, __pyx_v_isupp)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 250, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_r = __pyx_t_5;
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":230
+ /* "PETSc/DMPlex.pyx":241
* CHKERR( DMPlexSetSupportSize(self.dm, cp, ssize) )
*
* def getSupport(self, p): # <<<<<<<<<<<<<<
@@ -218327,7 +235146,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":241
+/* "PETSc/DMPlex.pyx":252
* return array_i(nsupp, isupp)
*
* def setSupport(self, p, supp): # <<<<<<<<<<<<<<
@@ -218336,9 +235155,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_44getSupport(struct __pyx_obj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_47setSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_46setSupport[] = "DMPlex.setSupport(self, p, supp)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_47setSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_49setSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_48setSupport[] = "DMPlex.setSupport(self, p, supp)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_49setSupport(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_supp = 0;
PyObject *__pyx_r = 0;
@@ -218352,7 +235171,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_47setSupport(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -218361,14 +235182,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_47setSupport(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_supp)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("setSupport", 1, 2, 2, 1); __PYX_ERR(42, 241, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSupport", 1, 2, 2, 1); __PYX_ERR(42, 252, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSupport") < 0)) __PYX_ERR(42, 241, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setSupport") < 0)) __PYX_ERR(42, 252, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
goto __pyx_L5_argtuple_error;
@@ -218381,20 +235203,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_47setSupport(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setSupport", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 241, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setSupport", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 252, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setSupport", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_supp);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_48setSupport(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_supp);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_supp) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48setSupport(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_supp) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -218410,17 +235232,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj
__Pyx_RefNannySetupContext("setSupport", 0);
__Pyx_INCREF(__pyx_v_supp);
- /* "PETSc/DMPlex.pyx":242
+ /* "PETSc/DMPlex.pyx":253
*
* def setSupport(self, p, supp):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 242, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 253, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":243
+ /* "PETSc/DMPlex.pyx":254
* def setSupport(self, p, supp):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -218430,16 +235252,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":244
+ /* "PETSc/DMPlex.pyx":255
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscInt nsupp = 0
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 244, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 255, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":245
+ /* "PETSc/DMPlex.pyx":256
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -218459,12 +235281,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 245, __pyx_L1_error)
+ __PYX_ERR(42, 256, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":246
+ /* "PETSc/DMPlex.pyx":257
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscInt nsupp = 0 # <<<<<<<<<<<<<<
@@ -218473,7 +235295,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj
*/
__pyx_v_nsupp = 0;
- /* "PETSc/DMPlex.pyx":247
+ /* "PETSc/DMPlex.pyx":258
* assert cp>=pStart and cp<pEnd
* cdef PetscInt nsupp = 0
* cdef PetscInt *isupp = NULL # <<<<<<<<<<<<<<
@@ -218482,37 +235304,37 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj
*/
__pyx_v_isupp = NULL;
- /* "PETSc/DMPlex.pyx":248
+ /* "PETSc/DMPlex.pyx":259
* cdef PetscInt nsupp = 0
* cdef PetscInt *isupp = NULL
* supp = iarray_i(supp, &nsupp, &isupp) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetSupportSize(self.dm, cp, nsupp) )
* CHKERR( DMPlexSetSupport(self.dm, cp, isupp) )
*/
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_supp, (&__pyx_v_nsupp), (&__pyx_v_isupp))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 248, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_supp, (&__pyx_v_nsupp), (&__pyx_v_isupp))); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 259, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF_SET(__pyx_v_supp, __pyx_t_5);
__pyx_t_5 = 0;
- /* "PETSc/DMPlex.pyx":249
+ /* "PETSc/DMPlex.pyx":260
* cdef PetscInt *isupp = NULL
* supp = iarray_i(supp, &nsupp, &isupp)
* CHKERR( DMPlexSetSupportSize(self.dm, cp, nsupp) ) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetSupport(self.dm, cp, isupp) )
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_nsupp)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 249, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetSupportSize(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_nsupp)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 260, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":250
+ /* "PETSc/DMPlex.pyx":261
* supp = iarray_i(supp, &nsupp, &isupp)
* CHKERR( DMPlexSetSupportSize(self.dm, cp, nsupp) )
* CHKERR( DMPlexSetSupport(self.dm, cp, isupp) ) # <<<<<<<<<<<<<<
*
* def getMaxSizes(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetSupport(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_isupp)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 250, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetSupport(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_isupp)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 261, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":241
+ /* "PETSc/DMPlex.pyx":252
* return array_i(nsupp, isupp)
*
* def setSupport(self, p, supp): # <<<<<<<<<<<<<<
@@ -218534,7 +235356,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":252
+/* "PETSc/DMPlex.pyx":263
* CHKERR( DMPlexSetSupport(self.dm, cp, isupp) )
*
* def getMaxSizes(self): # <<<<<<<<<<<<<<
@@ -218543,23 +235365,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_46setSupport(struct __pyx_obj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_49getMaxSizes(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_48getMaxSizes[] = "DMPlex.getMaxSizes(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_49getMaxSizes(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_51getMaxSizes(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_50getMaxSizes[] = "DMPlex.getMaxSizes(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_51getMaxSizes(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getMaxSizes (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getMaxSizes", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getMaxSizes", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_50getMaxSizes(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_50getMaxSizes(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PetscInt __pyx_v_maxConeSize;
PetscInt __pyx_v_maxSupportSize;
PyObject *__pyx_r = NULL;
@@ -218570,7 +235392,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_ob
PyObject *__pyx_t_4 = NULL;
__Pyx_RefNannySetupContext("getMaxSizes", 0);
- /* "PETSc/DMPlex.pyx":253
+ /* "PETSc/DMPlex.pyx":264
*
* def getMaxSizes(self):
* cdef PetscInt maxConeSize = 0, maxSupportSize = 0 # <<<<<<<<<<<<<<
@@ -218580,16 +235402,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_ob
__pyx_v_maxConeSize = 0;
__pyx_v_maxSupportSize = 0;
- /* "PETSc/DMPlex.pyx":254
+ /* "PETSc/DMPlex.pyx":265
* def getMaxSizes(self):
* cdef PetscInt maxConeSize = 0, maxSupportSize = 0
* CHKERR( DMPlexGetMaxSizes(self.dm, &maxConeSize, &maxSupportSize) ) # <<<<<<<<<<<<<<
* return toInt(maxConeSize), toInt(maxSupportSize)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetMaxSizes(__pyx_v_self->__pyx_base.dm, (&__pyx_v_maxConeSize), (&__pyx_v_maxSupportSize))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 254, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetMaxSizes(__pyx_v_self->__pyx_base.dm, (&__pyx_v_maxConeSize), (&__pyx_v_maxSupportSize))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 265, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":255
+ /* "PETSc/DMPlex.pyx":266
* cdef PetscInt maxConeSize = 0, maxSupportSize = 0
* CHKERR( DMPlexGetMaxSizes(self.dm, &maxConeSize, &maxSupportSize) )
* return toInt(maxConeSize), toInt(maxSupportSize) # <<<<<<<<<<<<<<
@@ -218597,11 +235419,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_ob
* def symmetrize(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_maxConeSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 255, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_maxConeSize); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 266, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_maxSupportSize); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 255, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_maxSupportSize); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 266, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 255, __pyx_L1_error)
+ __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 266, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_2);
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
@@ -218613,7 +235435,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_ob
__pyx_t_4 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":252
+ /* "PETSc/DMPlex.pyx":263
* CHKERR( DMPlexSetSupport(self.dm, cp, isupp) )
*
* def getMaxSizes(self): # <<<<<<<<<<<<<<
@@ -218634,7 +235456,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_ob
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":257
+/* "PETSc/DMPlex.pyx":268
* return toInt(maxConeSize), toInt(maxSupportSize)
*
* def symmetrize(self): # <<<<<<<<<<<<<<
@@ -218643,38 +235465,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_48getMaxSizes(struct __pyx_ob
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_51symmetrize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_50symmetrize[] = "DMPlex.symmetrize(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_51symmetrize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_53symmetrize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_52symmetrize[] = "DMPlex.symmetrize(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_53symmetrize(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("symmetrize (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("symmetrize", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "symmetrize", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_50symmetrize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_52symmetrize(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_50symmetrize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_52symmetrize(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("symmetrize", 0);
- /* "PETSc/DMPlex.pyx":258
+ /* "PETSc/DMPlex.pyx":269
*
* def symmetrize(self):
* CHKERR( DMPlexSymmetrize(self.dm) ) # <<<<<<<<<<<<<<
*
* def stratify(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSymmetrize(__pyx_v_self->__pyx_base.dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 258, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSymmetrize(__pyx_v_self->__pyx_base.dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 269, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":257
+ /* "PETSc/DMPlex.pyx":268
* return toInt(maxConeSize), toInt(maxSupportSize)
*
* def symmetrize(self): # <<<<<<<<<<<<<<
@@ -218694,7 +235516,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_50symmetrize(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":260
+/* "PETSc/DMPlex.pyx":271
* CHKERR( DMPlexSymmetrize(self.dm) )
*
* def stratify(self): # <<<<<<<<<<<<<<
@@ -218703,38 +235525,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_50symmetrize(struct __pyx_obj
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_53stratify(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_52stratify[] = "DMPlex.stratify(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_53stratify(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_55stratify(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_54stratify[] = "DMPlex.stratify(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_55stratify(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("stratify (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("stratify", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "stratify", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_52stratify(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_54stratify(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_52stratify(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_54stratify(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("stratify", 0);
- /* "PETSc/DMPlex.pyx":261
+ /* "PETSc/DMPlex.pyx":272
*
* def stratify(self):
* CHKERR( DMPlexStratify(self.dm) ) # <<<<<<<<<<<<<<
*
* def orient(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexStratify(__pyx_v_self->__pyx_base.dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 261, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexStratify(__pyx_v_self->__pyx_base.dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 272, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":260
+ /* "PETSc/DMPlex.pyx":271
* CHKERR( DMPlexSymmetrize(self.dm) )
*
* def stratify(self): # <<<<<<<<<<<<<<
@@ -218754,7 +235576,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_52stratify(struct __pyx_obj_8
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":263
+/* "PETSc/DMPlex.pyx":274
* CHKERR( DMPlexStratify(self.dm) )
*
* def orient(self): # <<<<<<<<<<<<<<
@@ -218763,38 +235585,38 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_52stratify(struct __pyx_obj_8
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_55orient(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_54orient[] = "DMPlex.orient(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_55orient(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_57orient(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_56orient[] = "DMPlex.orient(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_57orient(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("orient (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("orient", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "orient", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_54orient(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_56orient(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_54orient(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56orient(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
int __pyx_t_1;
__Pyx_RefNannySetupContext("orient", 0);
- /* "PETSc/DMPlex.pyx":264
+ /* "PETSc/DMPlex.pyx":275
*
* def orient(self):
* CHKERR( DMPlexOrient(self.dm) ) # <<<<<<<<<<<<<<
*
* def getCellNumbering(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexOrient(__pyx_v_self->__pyx_base.dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 264, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexOrient(__pyx_v_self->__pyx_base.dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 275, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":263
+ /* "PETSc/DMPlex.pyx":274
* CHKERR( DMPlexStratify(self.dm) )
*
* def orient(self): # <<<<<<<<<<<<<<
@@ -218814,7 +235636,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_54orient(struct __pyx_obj_8pe
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":266
+/* "PETSc/DMPlex.pyx":277
* CHKERR( DMPlexOrient(self.dm) )
*
* def getCellNumbering(self): # <<<<<<<<<<<<<<
@@ -218823,23 +235645,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_54orient(struct __pyx_obj_8pe
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_57getCellNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_56getCellNumbering[] = "DMPlex.getCellNumbering(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_57getCellNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_59getCellNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_58getCellNumbering[] = "DMPlex.getCellNumbering(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_59getCellNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getCellNumbering (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getCellNumbering", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getCellNumbering", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_58getCellNumbering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getCellNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
struct PyPetscISObject *__pyx_v_iset = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -218847,28 +235669,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(struct __p
int __pyx_t_2;
__Pyx_RefNannySetupContext("getCellNumbering", 0);
- /* "PETSc/DMPlex.pyx":267
+ /* "PETSc/DMPlex.pyx":278
*
* def getCellNumbering(self):
* cdef IS iset = IS() # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetCellNumbering(self.dm, &iset.iset) )
* PetscINCREF(iset.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 267, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 278, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_iset = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":268
+ /* "PETSc/DMPlex.pyx":279
* def getCellNumbering(self):
* cdef IS iset = IS()
* CHKERR( DMPlexGetCellNumbering(self.dm, &iset.iset) ) # <<<<<<<<<<<<<<
* PetscINCREF(iset.obj)
* return iset
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetCellNumbering(__pyx_v_self->__pyx_base.dm, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 268, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetCellNumbering(__pyx_v_self->__pyx_base.dm, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 279, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":269
+ /* "PETSc/DMPlex.pyx":280
* cdef IS iset = IS()
* CHKERR( DMPlexGetCellNumbering(self.dm, &iset.iset) )
* PetscINCREF(iset.obj) # <<<<<<<<<<<<<<
@@ -218877,7 +235699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(struct __p
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_iset->__pyx_base.obj);
- /* "PETSc/DMPlex.pyx":270
+ /* "PETSc/DMPlex.pyx":281
* CHKERR( DMPlexGetCellNumbering(self.dm, &iset.iset) )
* PetscINCREF(iset.obj)
* return iset # <<<<<<<<<<<<<<
@@ -218889,7 +235711,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(struct __p
__pyx_r = ((PyObject *)__pyx_v_iset);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":266
+ /* "PETSc/DMPlex.pyx":277
* CHKERR( DMPlexOrient(self.dm) )
*
* def getCellNumbering(self): # <<<<<<<<<<<<<<
@@ -218909,7 +235731,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(struct __p
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":272
+/* "PETSc/DMPlex.pyx":283
* return iset
*
* def getVertexNumbering(self): # <<<<<<<<<<<<<<
@@ -218918,23 +235740,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_56getCellNumbering(struct __p
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_59getVertexNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering[] = "DMPlex.getVertexNumbering(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_59getVertexNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_61getVertexNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_60getVertexNumbering[] = "DMPlex.getVertexNumbering(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_61getVertexNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getVertexNumbering (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getVertexNumbering", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getVertexNumbering", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_60getVertexNumbering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60getVertexNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
struct PyPetscISObject *__pyx_v_iset = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -218942,28 +235764,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(struct _
int __pyx_t_2;
__Pyx_RefNannySetupContext("getVertexNumbering", 0);
- /* "PETSc/DMPlex.pyx":273
+ /* "PETSc/DMPlex.pyx":284
*
* def getVertexNumbering(self):
* cdef IS iset = IS() # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetVertexNumbering(self.dm, &iset.iset) )
* PetscINCREF(iset.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 273, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_iset = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":274
+ /* "PETSc/DMPlex.pyx":285
* def getVertexNumbering(self):
* cdef IS iset = IS()
* CHKERR( DMPlexGetVertexNumbering(self.dm, &iset.iset) ) # <<<<<<<<<<<<<<
* PetscINCREF(iset.obj)
* return iset
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetVertexNumbering(__pyx_v_self->__pyx_base.dm, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 274, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetVertexNumbering(__pyx_v_self->__pyx_base.dm, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 285, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":275
+ /* "PETSc/DMPlex.pyx":286
* cdef IS iset = IS()
* CHKERR( DMPlexGetVertexNumbering(self.dm, &iset.iset) )
* PetscINCREF(iset.obj) # <<<<<<<<<<<<<<
@@ -218972,7 +235794,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(struct _
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_iset->__pyx_base.obj);
- /* "PETSc/DMPlex.pyx":276
+ /* "PETSc/DMPlex.pyx":287
* CHKERR( DMPlexGetVertexNumbering(self.dm, &iset.iset) )
* PetscINCREF(iset.obj)
* return iset # <<<<<<<<<<<<<<
@@ -218984,7 +235806,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(struct _
__pyx_r = ((PyObject *)__pyx_v_iset);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":272
+ /* "PETSc/DMPlex.pyx":283
* return iset
*
* def getVertexNumbering(self): # <<<<<<<<<<<<<<
@@ -219004,7 +235826,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(struct _
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":278
+/* "PETSc/DMPlex.pyx":289
* return iset
*
* def createPointNumbering(self): # <<<<<<<<<<<<<<
@@ -219013,23 +235835,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering(struct _
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_61createPointNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_60createPointNumbering[] = "DMPlex.createPointNumbering(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_61createPointNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_63createPointNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_62createPointNumbering[] = "DMPlex.createPointNumbering(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_63createPointNumbering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("createPointNumbering (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("createPointNumbering", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "createPointNumbering", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_60createPointNumbering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_62createPointNumbering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60createPointNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62createPointNumbering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
struct PyPetscISObject *__pyx_v_iset = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -219037,28 +235859,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60createPointNumbering(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("createPointNumbering", 0);
- /* "PETSc/DMPlex.pyx":279
+ /* "PETSc/DMPlex.pyx":290
*
* def createPointNumbering(self):
* cdef IS iset = IS() # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreatePointNumbering(self.dm, &iset.iset) )
* return iset
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 279, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 290, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_iset = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":280
+ /* "PETSc/DMPlex.pyx":291
* def createPointNumbering(self):
* cdef IS iset = IS()
* CHKERR( DMPlexCreatePointNumbering(self.dm, &iset.iset) ) # <<<<<<<<<<<<<<
* return iset
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreatePointNumbering(__pyx_v_self->__pyx_base.dm, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 280, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreatePointNumbering(__pyx_v_self->__pyx_base.dm, (&__pyx_v_iset->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 291, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":281
+ /* "PETSc/DMPlex.pyx":292
* cdef IS iset = IS()
* CHKERR( DMPlexCreatePointNumbering(self.dm, &iset.iset) )
* return iset # <<<<<<<<<<<<<<
@@ -219070,7 +235892,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60createPointNumbering(struct
__pyx_r = ((PyObject *)__pyx_v_iset);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":278
+ /* "PETSc/DMPlex.pyx":289
* return iset
*
* def createPointNumbering(self): # <<<<<<<<<<<<<<
@@ -219090,7 +235912,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60createPointNumbering(struct
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":283
+/* "PETSc/DMPlex.pyx":294
* return iset
*
* def getDepth(self): # <<<<<<<<<<<<<<
@@ -219099,23 +235921,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_60createPointNumbering(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_63getDepth(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_62getDepth[] = "DMPlex.getDepth(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_63getDepth(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepth(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_64getDepth[] = "DMPlex.getDepth(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepth(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getDepth (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getDepth", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getDepth", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepth(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepth(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PetscInt __pyx_v_depth;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -219123,7 +235945,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(struct __pyx_obj_8
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getDepth", 0);
- /* "PETSc/DMPlex.pyx":284
+ /* "PETSc/DMPlex.pyx":295
*
* def getDepth(self):
* cdef PetscInt depth = 0 # <<<<<<<<<<<<<<
@@ -219132,16 +235954,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(struct __pyx_obj_8
*/
__pyx_v_depth = 0;
- /* "PETSc/DMPlex.pyx":285
+ /* "PETSc/DMPlex.pyx":296
* def getDepth(self):
* cdef PetscInt depth = 0
* CHKERR( DMPlexGetDepth(self.dm,&depth) ) # <<<<<<<<<<<<<<
* return toInt(depth)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetDepth(__pyx_v_self->__pyx_base.dm, (&__pyx_v_depth))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 285, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetDepth(__pyx_v_self->__pyx_base.dm, (&__pyx_v_depth))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 296, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":286
+ /* "PETSc/DMPlex.pyx":297
* cdef PetscInt depth = 0
* CHKERR( DMPlexGetDepth(self.dm,&depth) )
* return toInt(depth) # <<<<<<<<<<<<<<
@@ -219149,13 +235971,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(struct __pyx_obj_8
* def getDepthStratum(self, svalue):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 286, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_depth); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 297, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":283
+ /* "PETSc/DMPlex.pyx":294
* return iset
*
* def getDepth(self): # <<<<<<<<<<<<<<
@@ -219174,7 +235996,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(struct __pyx_obj_8
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":288
+/* "PETSc/DMPlex.pyx":299
* return toInt(depth)
*
* def getDepthStratum(self, svalue): # <<<<<<<<<<<<<<
@@ -219183,9 +236005,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_62getDepth(struct __pyx_obj_8
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepthStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_64getDepthStratum[] = "DMPlex.getDepthStratum(self, svalue)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepthStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getDepthStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_66getDepthStratum[] = "DMPlex.getDepthStratum(self, svalue)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getDepthStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_svalue = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -219198,6 +236020,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepthStratum(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -219208,7 +236031,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepthStratum(PyObject *_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getDepthStratum") < 0)) __PYX_ERR(42, 288, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getDepthStratum") < 0)) __PYX_ERR(42, 299, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -219219,20 +236042,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepthStratum(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getDepthStratum", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 288, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getDepthStratum", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 299, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getDepthStratum", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_svalue);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_66getDepthStratum(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_svalue);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getDepthStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue) {
PetscInt __pyx_v_csvalue;
PetscInt __pyx_v_sStart;
PetscInt __pyx_v_sEnd;
@@ -219245,28 +236068,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(struct __py
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getDepthStratum", 0);
- /* "PETSc/DMPlex.pyx":289
+ /* "PETSc/DMPlex.pyx":300
*
* def getDepthStratum(self, svalue):
* cdef PetscInt csvalue = asInt(svalue), sStart = 0, sEnd = 0 # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetDepthStratum(self.dm, csvalue, &sStart, &sEnd) )
* return (toInt(sStart), toInt(sEnd))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_svalue); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 289, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_svalue); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 300, __pyx_L1_error)
__pyx_v_csvalue = __pyx_t_1;
__pyx_v_sStart = 0;
__pyx_v_sEnd = 0;
- /* "PETSc/DMPlex.pyx":290
+ /* "PETSc/DMPlex.pyx":301
* def getDepthStratum(self, svalue):
* cdef PetscInt csvalue = asInt(svalue), sStart = 0, sEnd = 0
* CHKERR( DMPlexGetDepthStratum(self.dm, csvalue, &sStart, &sEnd) ) # <<<<<<<<<<<<<<
* return (toInt(sStart), toInt(sEnd))
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetDepthStratum(__pyx_v_self->__pyx_base.dm, __pyx_v_csvalue, (&__pyx_v_sStart), (&__pyx_v_sEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 290, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetDepthStratum(__pyx_v_self->__pyx_base.dm, __pyx_v_csvalue, (&__pyx_v_sStart), (&__pyx_v_sEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 301, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":291
+ /* "PETSc/DMPlex.pyx":302
* cdef PetscInt csvalue = asInt(svalue), sStart = 0, sEnd = 0
* CHKERR( DMPlexGetDepthStratum(self.dm, csvalue, &sStart, &sEnd) )
* return (toInt(sStart), toInt(sEnd)) # <<<<<<<<<<<<<<
@@ -219274,11 +236097,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(struct __py
* def getHeightStratum(self, svalue):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sStart); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 291, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sStart); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 302, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sEnd); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 291, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sEnd); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 302, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 291, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 302, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -219290,7 +236113,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(struct __py
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":288
+ /* "PETSc/DMPlex.pyx":299
* return toInt(depth)
*
* def getDepthStratum(self, svalue): # <<<<<<<<<<<<<<
@@ -219311,7 +236134,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(struct __py
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":293
+/* "PETSc/DMPlex.pyx":304
* return (toInt(sStart), toInt(sEnd))
*
* def getHeightStratum(self, svalue): # <<<<<<<<<<<<<<
@@ -219320,9 +236143,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_64getDepthStratum(struct __py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getHeightStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_66getHeightStratum[] = "DMPlex.getHeightStratum(self, svalue)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getHeightStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getHeightStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_68getHeightStratum[] = "DMPlex.getHeightStratum(self, svalue)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getHeightStratum(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_svalue = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -219335,6 +236158,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getHeightStratum(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -219345,7 +236169,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getHeightStratum(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getHeightStratum") < 0)) __PYX_ERR(42, 293, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getHeightStratum") < 0)) __PYX_ERR(42, 304, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -219356,20 +236180,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getHeightStratum(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getHeightStratum", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 293, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getHeightStratum", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 304, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getHeightStratum", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_svalue);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_68getHeightStratum(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_svalue);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getHeightStratum(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_svalue) {
PetscInt __pyx_v_csvalue;
PetscInt __pyx_v_sStart;
PetscInt __pyx_v_sEnd;
@@ -219382,28 +236206,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(struct __p
PyObject *__pyx_t_5 = NULL;
__Pyx_RefNannySetupContext("getHeightStratum", 0);
- /* "PETSc/DMPlex.pyx":294
+ /* "PETSc/DMPlex.pyx":305
*
* def getHeightStratum(self, svalue):
* cdef PetscInt csvalue = asInt(svalue), sStart = 0, sEnd = 0 # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetHeightStratum(self.dm, csvalue, &sStart, &sEnd) )
* return (toInt(sStart), toInt(sEnd))
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_svalue); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 294, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_svalue); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 305, __pyx_L1_error)
__pyx_v_csvalue = __pyx_t_1;
__pyx_v_sStart = 0;
__pyx_v_sEnd = 0;
- /* "PETSc/DMPlex.pyx":295
+ /* "PETSc/DMPlex.pyx":306
* def getHeightStratum(self, svalue):
* cdef PetscInt csvalue = asInt(svalue), sStart = 0, sEnd = 0
* CHKERR( DMPlexGetHeightStratum(self.dm, csvalue, &sStart, &sEnd) ) # <<<<<<<<<<<<<<
* return (toInt(sStart), toInt(sEnd))
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetHeightStratum(__pyx_v_self->__pyx_base.dm, __pyx_v_csvalue, (&__pyx_v_sStart), (&__pyx_v_sEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 295, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetHeightStratum(__pyx_v_self->__pyx_base.dm, __pyx_v_csvalue, (&__pyx_v_sStart), (&__pyx_v_sEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 306, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":296
+ /* "PETSc/DMPlex.pyx":307
* cdef PetscInt csvalue = asInt(svalue), sStart = 0, sEnd = 0
* CHKERR( DMPlexGetHeightStratum(self.dm, csvalue, &sStart, &sEnd) )
* return (toInt(sStart), toInt(sEnd)) # <<<<<<<<<<<<<<
@@ -219411,11 +236235,11 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(struct __p
* def getMeet(self, points):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sStart); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 296, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sStart); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 307, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sEnd); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 296, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_sEnd); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 307, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 296, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 307, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
@@ -219427,7 +236251,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(struct __p
__pyx_t_5 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":293
+ /* "PETSc/DMPlex.pyx":304
* return (toInt(sStart), toInt(sEnd))
*
* def getHeightStratum(self, svalue): # <<<<<<<<<<<<<<
@@ -219448,7 +236272,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(struct __p
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":298
+/* "PETSc/DMPlex.pyx":309
* return (toInt(sStart), toInt(sEnd))
*
* def getMeet(self, points): # <<<<<<<<<<<<<<
@@ -219457,9 +236281,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_66getHeightStratum(struct __p
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getMeet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_68getMeet[] = "DMPlex.getMeet(self, points)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getMeet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getMeet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_70getMeet[] = "DMPlex.getMeet(self, points)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getMeet(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_points = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -219472,6 +236296,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getMeet(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -219482,7 +236307,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getMeet(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMeet") < 0)) __PYX_ERR(42, 298, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getMeet") < 0)) __PYX_ERR(42, 309, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -219493,20 +236318,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getMeet(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getMeet", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 298, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getMeet", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 309, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getMeet", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_points);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_70getMeet(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_points);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getMeet(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points) {
PetscInt __pyx_v_numPoints;
PetscInt *__pyx_v_ipoints;
PetscInt __pyx_v_numCoveringPoints;
@@ -219527,7 +236352,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
__Pyx_RefNannySetupContext("getMeet", 0);
__Pyx_INCREF(__pyx_v_points);
- /* "PETSc/DMPlex.pyx":299
+ /* "PETSc/DMPlex.pyx":310
*
* def getMeet(self, points):
* cdef PetscInt numPoints = 0 # <<<<<<<<<<<<<<
@@ -219536,7 +236361,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
*/
__pyx_v_numPoints = 0;
- /* "PETSc/DMPlex.pyx":300
+ /* "PETSc/DMPlex.pyx":311
* def getMeet(self, points):
* cdef PetscInt numPoints = 0
* cdef PetscInt *ipoints = NULL # <<<<<<<<<<<<<<
@@ -219545,7 +236370,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
*/
__pyx_v_ipoints = NULL;
- /* "PETSc/DMPlex.pyx":301
+ /* "PETSc/DMPlex.pyx":312
* cdef PetscInt numPoints = 0
* cdef PetscInt *ipoints = NULL
* cdef PetscInt numCoveringPoints = 0 # <<<<<<<<<<<<<<
@@ -219554,7 +236379,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
*/
__pyx_v_numCoveringPoints = 0;
- /* "PETSc/DMPlex.pyx":302
+ /* "PETSc/DMPlex.pyx":313
* cdef PetscInt *ipoints = NULL
* cdef PetscInt numCoveringPoints = 0
* cdef const_PetscInt *coveringPoints = NULL # <<<<<<<<<<<<<<
@@ -219563,28 +236388,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
*/
__pyx_v_coveringPoints = NULL;
- /* "PETSc/DMPlex.pyx":303
+ /* "PETSc/DMPlex.pyx":314
* cdef PetscInt numCoveringPoints = 0
* cdef const_PetscInt *coveringPoints = NULL
* points = iarray_i(points, &numPoints, &ipoints) # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
* try:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_points, (&__pyx_v_numPoints), (&__pyx_v_ipoints))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 303, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_points, (&__pyx_v_numPoints), (&__pyx_v_ipoints))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 314, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_points, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":304
+ /* "PETSc/DMPlex.pyx":315
* cdef const_PetscInt *coveringPoints = NULL
* points = iarray_i(points, &numPoints, &ipoints)
* CHKERR( DMPlexGetMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) ) # <<<<<<<<<<<<<<
* try:
* return array_i(numCoveringPoints, coveringPoints)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetMeet(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 304, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetMeet(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 315, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":305
+ /* "PETSc/DMPlex.pyx":316
* points = iarray_i(points, &numPoints, &ipoints)
* CHKERR( DMPlexGetMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
* try: # <<<<<<<<<<<<<<
@@ -219593,7 +236418,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
*/
/*try:*/ {
- /* "PETSc/DMPlex.pyx":306
+ /* "PETSc/DMPlex.pyx":317
* CHKERR( DMPlexGetMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
* try:
* return array_i(numCoveringPoints, coveringPoints) # <<<<<<<<<<<<<<
@@ -219601,14 +236426,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
* CHKERR( DMPlexRestoreMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_numCoveringPoints, __pyx_v_coveringPoints)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 306, __pyx_L4_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_numCoveringPoints, __pyx_v_coveringPoints)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 317, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L3_return;
}
- /* "PETSc/DMPlex.pyx":308
+ /* "PETSc/DMPlex.pyx":319
* return array_i(numCoveringPoints, coveringPoints)
* finally:
* CHKERR( DMPlexRestoreMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) ) # <<<<<<<<<<<<<<
@@ -219632,9 +236457,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
__Pyx_XGOTREF(__pyx_t_10);
__pyx_t_2 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
{
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreMeet(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(42, 308, __pyx_L7_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreMeet(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(42, 319, __pyx_L7_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -219649,7 +236473,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
__pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
goto __pyx_L1_error;
__pyx_L7_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -219665,14 +236488,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
__pyx_L3_return: {
__pyx_t_10 = __pyx_r;
__pyx_r = 0;
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreMeet(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(42, 308, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreMeet(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(42, 319, __pyx_L1_error)
__pyx_r = __pyx_t_10;
__pyx_t_10 = 0;
goto __pyx_L0;
}
}
- /* "PETSc/DMPlex.pyx":298
+ /* "PETSc/DMPlex.pyx":309
* return (toInt(sStart), toInt(sEnd))
*
* def getMeet(self, points): # <<<<<<<<<<<<<<
@@ -219692,7 +236515,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":310
+/* "PETSc/DMPlex.pyx":321
* CHKERR( DMPlexRestoreMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
*
* def getJoin(self, points): # <<<<<<<<<<<<<<
@@ -219701,9 +236524,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_68getMeet(struct __pyx_obj_8p
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getJoin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_70getJoin[] = "DMPlex.getJoin(self, points)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getJoin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getJoin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_72getJoin[] = "DMPlex.getJoin(self, points)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getJoin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_points = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -219716,6 +236539,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getJoin(PyObject *__pyx_v_s
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -219726,7 +236550,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getJoin(PyObject *__pyx_v_s
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getJoin") < 0)) __PYX_ERR(42, 310, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getJoin") < 0)) __PYX_ERR(42, 321, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -219737,20 +236561,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getJoin(PyObject *__pyx_v_s
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getJoin", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 310, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getJoin", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 321, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getJoin", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_points);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_72getJoin(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_points);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getJoin(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_points) {
PetscInt __pyx_v_numPoints;
PetscInt *__pyx_v_ipoints;
PetscInt __pyx_v_numCoveringPoints;
@@ -219771,7 +236595,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
__Pyx_RefNannySetupContext("getJoin", 0);
__Pyx_INCREF(__pyx_v_points);
- /* "PETSc/DMPlex.pyx":311
+ /* "PETSc/DMPlex.pyx":322
*
* def getJoin(self, points):
* cdef PetscInt numPoints = 0 # <<<<<<<<<<<<<<
@@ -219780,7 +236604,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
*/
__pyx_v_numPoints = 0;
- /* "PETSc/DMPlex.pyx":312
+ /* "PETSc/DMPlex.pyx":323
* def getJoin(self, points):
* cdef PetscInt numPoints = 0
* cdef PetscInt *ipoints = NULL # <<<<<<<<<<<<<<
@@ -219789,7 +236613,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
*/
__pyx_v_ipoints = NULL;
- /* "PETSc/DMPlex.pyx":313
+ /* "PETSc/DMPlex.pyx":324
* cdef PetscInt numPoints = 0
* cdef PetscInt *ipoints = NULL
* cdef PetscInt numCoveringPoints = 0 # <<<<<<<<<<<<<<
@@ -219798,7 +236622,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
*/
__pyx_v_numCoveringPoints = 0;
- /* "PETSc/DMPlex.pyx":314
+ /* "PETSc/DMPlex.pyx":325
* cdef PetscInt *ipoints = NULL
* cdef PetscInt numCoveringPoints = 0
* cdef const_PetscInt *coveringPoints = NULL # <<<<<<<<<<<<<<
@@ -219807,28 +236631,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
*/
__pyx_v_coveringPoints = NULL;
- /* "PETSc/DMPlex.pyx":315
+ /* "PETSc/DMPlex.pyx":326
* cdef PetscInt numCoveringPoints = 0
* cdef const_PetscInt *coveringPoints = NULL
* points = iarray_i(points, &numPoints, &ipoints) # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
* try:
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_points, (&__pyx_v_numPoints), (&__pyx_v_ipoints))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 315, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_points, (&__pyx_v_numPoints), (&__pyx_v_ipoints))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_points, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":316
+ /* "PETSc/DMPlex.pyx":327
* cdef const_PetscInt *coveringPoints = NULL
* points = iarray_i(points, &numPoints, &ipoints)
* CHKERR( DMPlexGetJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) ) # <<<<<<<<<<<<<<
* try:
* return array_i(numCoveringPoints, coveringPoints)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetJoin(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 316, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetJoin(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 327, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":317
+ /* "PETSc/DMPlex.pyx":328
* points = iarray_i(points, &numPoints, &ipoints)
* CHKERR( DMPlexGetJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
* try: # <<<<<<<<<<<<<<
@@ -219837,7 +236661,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
*/
/*try:*/ {
- /* "PETSc/DMPlex.pyx":318
+ /* "PETSc/DMPlex.pyx":329
* CHKERR( DMPlexGetJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
* try:
* return array_i(numCoveringPoints, coveringPoints) # <<<<<<<<<<<<<<
@@ -219845,14 +236669,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
* CHKERR( DMPlexRestoreJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_numCoveringPoints, __pyx_v_coveringPoints)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 318, __pyx_L4_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_numCoveringPoints, __pyx_v_coveringPoints)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 329, __pyx_L4_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_r = __pyx_t_1;
__pyx_t_1 = 0;
goto __pyx_L3_return;
}
- /* "PETSc/DMPlex.pyx":320
+ /* "PETSc/DMPlex.pyx":331
* return array_i(numCoveringPoints, coveringPoints)
* finally:
* CHKERR( DMPlexRestoreJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) ) # <<<<<<<<<<<<<<
@@ -219876,9 +236700,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
__Pyx_XGOTREF(__pyx_t_10);
__pyx_t_2 = __pyx_lineno; __pyx_t_3 = __pyx_clineno; __pyx_t_4 = __pyx_filename;
{
- __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreJoin(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_11 == -1)) __PYX_ERR(42, 320, __pyx_L7_error)
+ __pyx_t_11 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreJoin(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(42, 331, __pyx_L7_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -219893,7 +236716,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
__pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_3; __pyx_filename = __pyx_t_4;
goto __pyx_L1_error;
__pyx_L7_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_8);
__Pyx_XGIVEREF(__pyx_t_9);
@@ -219909,14 +236731,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
__pyx_L3_return: {
__pyx_t_10 = __pyx_r;
__pyx_r = 0;
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreJoin(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(42, 320, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreJoin(__pyx_v_self->__pyx_base.dm, __pyx_v_numPoints, __pyx_v_ipoints, (&__pyx_v_numCoveringPoints), (&__pyx_v_coveringPoints))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(42, 331, __pyx_L1_error)
__pyx_r = __pyx_t_10;
__pyx_t_10 = 0;
goto __pyx_L0;
}
}
- /* "PETSc/DMPlex.pyx":310
+ /* "PETSc/DMPlex.pyx":321
* CHKERR( DMPlexRestoreMeet(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
*
* def getJoin(self, points): # <<<<<<<<<<<<<<
@@ -219936,7 +236758,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":322
+/* "PETSc/DMPlex.pyx":333
* CHKERR( DMPlexRestoreJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
*
* def getTransitiveClosure(self, p, useCone=True): # <<<<<<<<<<<<<<
@@ -219945,9 +236767,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_70getJoin(struct __pyx_obj_8p
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getTransitiveClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure[] = "DMPlex.getTransitiveClosure(self, p, useCone=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getTransitiveClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_75getTransitiveClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_74getTransitiveClosure[] = "DMPlex.getTransitiveClosure(self, p, useCone=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_75getTransitiveClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_p = 0;
PyObject *__pyx_v_useCone = 0;
PyObject *__pyx_r = 0;
@@ -219962,7 +236784,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getTransitiveClosure(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -219971,6 +236795,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getTransitiveClosure(PyObje
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_useCone);
@@ -219978,11 +236803,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getTransitiveClosure(PyObje
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getTransitiveClosure") < 0)) __PYX_ERR(42, 322, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getTransitiveClosure") < 0)) __PYX_ERR(42, 333, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -219993,20 +236819,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getTransitiveClosure(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getTransitiveClosure", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 322, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getTransitiveClosure", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 333, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getTransitiveClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_useCone);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_74getTransitiveClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p, __pyx_v_useCone);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_useCone) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_74getTransitiveClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p, PyObject *__pyx_v_useCone) {
PetscInt __pyx_v_cp;
PetscInt __pyx_v_pStart;
PetscInt __pyx_v_pEnd;
@@ -220035,17 +236861,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
PyObject *__pyx_t_17 = NULL;
__Pyx_RefNannySetupContext("getTransitiveClosure", 0);
- /* "PETSc/DMPlex.pyx":323
+ /* "PETSc/DMPlex.pyx":334
*
* def getTransitiveClosure(self, p, useCone=True):
* cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 323, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 334, __pyx_L1_error)
__pyx_v_cp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":324
+ /* "PETSc/DMPlex.pyx":335
* def getTransitiveClosure(self, p, useCone=True):
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0 # <<<<<<<<<<<<<<
@@ -220055,16 +236881,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
__pyx_v_pStart = 0;
__pyx_v_pEnd = 0;
- /* "PETSc/DMPlex.pyx":325
+ /* "PETSc/DMPlex.pyx":336
* cdef PetscInt cp = asInt(p)
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) ) # <<<<<<<<<<<<<<
* assert cp>=pStart and cp<pEnd
* cdef PetscBool cuseCone = useCone
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 325, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetChart(__pyx_v_self->__pyx_base.dm, (&__pyx_v_pStart), (&__pyx_v_pEnd))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 336, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":326
+ /* "PETSc/DMPlex.pyx":337
* cdef PetscInt pStart = 0, pEnd = 0
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd # <<<<<<<<<<<<<<
@@ -220084,22 +236910,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
__pyx_L3_bool_binop_done:;
if (unlikely(!__pyx_t_3)) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 326, __pyx_L1_error)
+ __PYX_ERR(42, 337, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":327
+ /* "PETSc/DMPlex.pyx":338
* CHKERR( DMPlexGetChart(self.dm, &pStart, &pEnd) )
* assert cp>=pStart and cp<pEnd
* cdef PetscBool cuseCone = useCone # <<<<<<<<<<<<<<
* cdef PetscInt numPoints = 0
* cdef PetscInt *points = NULL
*/
- __pyx_t_5 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_useCone)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 327, __pyx_L1_error)
+ __pyx_t_5 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_useCone)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 338, __pyx_L1_error)
__pyx_v_cuseCone = __pyx_t_5;
- /* "PETSc/DMPlex.pyx":328
+ /* "PETSc/DMPlex.pyx":339
* assert cp>=pStart and cp<pEnd
* cdef PetscBool cuseCone = useCone
* cdef PetscInt numPoints = 0 # <<<<<<<<<<<<<<
@@ -220108,7 +236934,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
*/
__pyx_v_numPoints = 0;
- /* "PETSc/DMPlex.pyx":329
+ /* "PETSc/DMPlex.pyx":340
* cdef PetscBool cuseCone = useCone
* cdef PetscInt numPoints = 0
* cdef PetscInt *points = NULL # <<<<<<<<<<<<<<
@@ -220117,16 +236943,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
*/
__pyx_v_points = NULL;
- /* "PETSc/DMPlex.pyx":330
+ /* "PETSc/DMPlex.pyx":341
* cdef PetscInt numPoints = 0
* cdef PetscInt *points = NULL
* CHKERR( DMPlexGetTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) ) # <<<<<<<<<<<<<<
* try:
* out = array_i(2*numPoints,points)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetTransitiveClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cuseCone, (&__pyx_v_numPoints), (&__pyx_v_points))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 330, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetTransitiveClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cuseCone, (&__pyx_v_numPoints), (&__pyx_v_points))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 341, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":331
+ /* "PETSc/DMPlex.pyx":342
* cdef PetscInt *points = NULL
* CHKERR( DMPlexGetTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) )
* try: # <<<<<<<<<<<<<<
@@ -220135,20 +236961,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
*/
/*try:*/ {
- /* "PETSc/DMPlex.pyx":332
+ /* "PETSc/DMPlex.pyx":343
* CHKERR( DMPlexGetTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) )
* try:
* out = array_i(2*numPoints,points) # <<<<<<<<<<<<<<
* finally:
* CHKERR( DMPlexRestoreTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) )
*/
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((2 * __pyx_v_numPoints), __pyx_v_points)); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 332, __pyx_L6_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i((2 * __pyx_v_numPoints), __pyx_v_points)); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 343, __pyx_L6_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_v_out = ((PyArrayObject *)__pyx_t_6);
__pyx_t_6 = 0;
}
- /* "PETSc/DMPlex.pyx":334
+ /* "PETSc/DMPlex.pyx":345
* out = array_i(2*numPoints,points)
* finally:
* CHKERR( DMPlexRestoreTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) ) # <<<<<<<<<<<<<<
@@ -220157,7 +236983,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
*/
/*finally:*/ {
/*normal exit:*/{
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreTransitiveClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cuseCone, (&__pyx_v_numPoints), (&__pyx_v_points))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 334, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreTransitiveClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cuseCone, (&__pyx_v_numPoints), (&__pyx_v_points))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 345, __pyx_L1_error)
goto __pyx_L7;
}
/*exception exit:*/{
@@ -220176,9 +237002,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
__Pyx_XGOTREF(__pyx_t_14);
__pyx_t_2 = __pyx_lineno; __pyx_t_7 = __pyx_clineno; __pyx_t_8 = __pyx_filename;
{
- __pyx_t_15 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreTransitiveClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cuseCone, (&__pyx_v_numPoints), (&__pyx_v_points))); if (unlikely(__pyx_t_15 == -1)) __PYX_ERR(42, 334, __pyx_L9_error)
+ __pyx_t_15 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexRestoreTransitiveClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, __pyx_v_cuseCone, (&__pyx_v_numPoints), (&__pyx_v_points))); if (unlikely(__pyx_t_15 == ((int)-1))) __PYX_ERR(42, 345, __pyx_L9_error)
}
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_12);
__Pyx_XGIVEREF(__pyx_t_13);
@@ -220193,7 +237018,6 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
__pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_7; __pyx_filename = __pyx_t_8;
goto __pyx_L1_error;
__pyx_L9_error:;
- __Pyx_PyThreadState_assign
if (PY_MAJOR_VERSION >= 3) {
__Pyx_XGIVEREF(__pyx_t_12);
__Pyx_XGIVEREF(__pyx_t_13);
@@ -220209,80 +237033,845 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure(struct
__pyx_L7:;
}
- /* "PETSc/DMPlex.pyx":335
- * finally:
- * CHKERR( DMPlexRestoreTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) )
- * return out[::2],out[1::2] # <<<<<<<<<<<<<<
+ /* "PETSc/DMPlex.pyx":346
+ * finally:
+ * CHKERR( DMPlexRestoreTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) )
+ * return out[::2],out[1::2] # <<<<<<<<<<<<<<
+ *
+ * def vecGetClosure(self, Section sec, Vec vec, p):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_6 = PyObject_GetItem(((PyObject *)__pyx_v_out), __pyx_slice__66); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 346, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_6);
+ __pyx_t_16 = PyObject_GetItem(((PyObject *)__pyx_v_out), __pyx_slice__67); if (unlikely(!__pyx_t_16)) __PYX_ERR(42, 346, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_16);
+ __pyx_t_17 = PyTuple_New(2); if (unlikely(!__pyx_t_17)) __PYX_ERR(42, 346, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_17);
+ __Pyx_GIVEREF(__pyx_t_6);
+ PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_6);
+ __Pyx_GIVEREF(__pyx_t_16);
+ PyTuple_SET_ITEM(__pyx_t_17, 1, __pyx_t_16);
+ __pyx_t_6 = 0;
+ __pyx_t_16 = 0;
+ __pyx_r = __pyx_t_17;
+ __pyx_t_17 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":333
+ * CHKERR( DMPlexRestoreJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
+ *
+ * def getTransitiveClosure(self, p, useCone=True): # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(p)
+ * cdef PetscInt pStart = 0, pEnd = 0
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_6);
+ __Pyx_XDECREF(__pyx_t_16);
+ __Pyx_XDECREF(__pyx_t_17);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getTransitiveClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_out);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":348
+ * return out[::2],out[1::2]
+ *
+ * def vecGetClosure(self, Section sec, Vec vec, p): # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(p), csize = 0
+ * cdef PetscScalar *cvals = NULL
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77vecGetClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_76vecGetClosure[] = "DMPlex.vecGetClosure(self, Section sec, Vec vec, p)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77vecGetClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscSectionObject *__pyx_v_sec = 0;
+ struct PyPetscVecObject *__pyx_v_vec = 0;
+ PyObject *__pyx_v_p = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("vecGetClosure (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_sec,&__pyx_n_s_vec,&__pyx_n_s_p,0};
+ PyObject* values[3] = {0,0,0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sec)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("vecGetClosure", 1, 3, 3, 1); __PYX_ERR(42, 348, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("vecGetClosure", 1, 3, 3, 2); __PYX_ERR(42, 348, __pyx_L3_error)
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "vecGetClosure") < 0)) __PYX_ERR(42, 348, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ }
+ __pyx_v_sec = ((struct PyPetscSectionObject *)values[0]);
+ __pyx_v_vec = ((struct PyPetscVecObject *)values[1]);
+ __pyx_v_p = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("vecGetClosure", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 348, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.vecGetClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "sec", 0))) __PYX_ERR(42, 348, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(42, 348, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_76vecGetClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_sec, __pyx_v_vec, __pyx_v_p);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76vecGetClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_p) {
+ PetscInt __pyx_v_cp;
+ PetscInt __pyx_v_csize;
+ PetscScalar *__pyx_v_cvals;
+ PyArrayObject *__pyx_v_closure = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ char const *__pyx_t_5;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *__pyx_t_8 = NULL;
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_11 = NULL;
+ int __pyx_t_12;
+ __Pyx_RefNannySetupContext("vecGetClosure", 0);
+
+ /* "PETSc/DMPlex.pyx":349
+ *
+ * def vecGetClosure(self, Section sec, Vec vec, p):
+ * cdef PetscInt cp = asInt(p), csize = 0 # <<<<<<<<<<<<<<
+ * cdef PetscScalar *cvals = NULL
+ * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 349, __pyx_L1_error)
+ __pyx_v_cp = __pyx_t_1;
+ __pyx_v_csize = 0;
+
+ /* "PETSc/DMPlex.pyx":350
+ * def vecGetClosure(self, Section sec, Vec vec, p):
+ * cdef PetscInt cp = asInt(p), csize = 0
+ * cdef PetscScalar *cvals = NULL # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ * try:
+ */
+ __pyx_v_cvals = NULL;
+
+ /* "PETSc/DMPlex.pyx":351
+ * cdef PetscInt cp = asInt(p), csize = 0
+ * cdef PetscScalar *cvals = NULL
+ * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) ) # <<<<<<<<<<<<<<
+ * try:
+ * closure = array_s(csize, cvals)
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecGetClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 351, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":352
+ * cdef PetscScalar *cvals = NULL
+ * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ * try: # <<<<<<<<<<<<<<
+ * closure = array_s(csize, cvals)
+ * finally:
+ */
+ /*try:*/ {
+
+ /* "PETSc/DMPlex.pyx":353
+ * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ * try:
+ * closure = array_s(csize, cvals) # <<<<<<<<<<<<<<
+ * finally:
+ * CHKERR( DMPlexVecRestoreClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ */
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_s(__pyx_v_csize, __pyx_v_cvals)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 353, __pyx_L4_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_v_closure = ((PyArrayObject *)__pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DMPlex.pyx":355
+ * closure = array_s(csize, cvals)
+ * finally:
+ * CHKERR( DMPlexVecRestoreClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) ) # <<<<<<<<<<<<<<
+ * return closure
+ *
+ */
+ /*finally:*/ {
+ /*normal exit:*/{
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecRestoreClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 355, __pyx_L1_error)
+ goto __pyx_L5;
+ }
+ /*exception exit:*/{
+ __Pyx_PyThreadState_declare
+ __pyx_L4_error:;
+ __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
+ __Pyx_PyThreadState_assign
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
+ if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8);
+ __Pyx_XGOTREF(__pyx_t_6);
+ __Pyx_XGOTREF(__pyx_t_7);
+ __Pyx_XGOTREF(__pyx_t_8);
+ __Pyx_XGOTREF(__pyx_t_9);
+ __Pyx_XGOTREF(__pyx_t_10);
+ __Pyx_XGOTREF(__pyx_t_11);
+ __pyx_t_2 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
+ {
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecRestoreClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(42, 355, __pyx_L7_error)
+ }
+ if (PY_MAJOR_VERSION >= 3) {
+ __Pyx_XGIVEREF(__pyx_t_9);
+ __Pyx_XGIVEREF(__pyx_t_10);
+ __Pyx_XGIVEREF(__pyx_t_11);
+ __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
+ }
+ __Pyx_XGIVEREF(__pyx_t_6);
+ __Pyx_XGIVEREF(__pyx_t_7);
+ __Pyx_XGIVEREF(__pyx_t_8);
+ __Pyx_ErrRestore(__pyx_t_6, __pyx_t_7, __pyx_t_8);
+ __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
+ __pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_4; __pyx_filename = __pyx_t_5;
+ goto __pyx_L1_error;
+ __pyx_L7_error:;
+ if (PY_MAJOR_VERSION >= 3) {
+ __Pyx_XGIVEREF(__pyx_t_9);
+ __Pyx_XGIVEREF(__pyx_t_10);
+ __Pyx_XGIVEREF(__pyx_t_11);
+ __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
+ }
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
+ goto __pyx_L1_error;
+ }
+ __pyx_L5:;
+ }
+
+ /* "PETSc/DMPlex.pyx":356
+ * finally:
+ * CHKERR( DMPlexVecRestoreClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ * return closure # <<<<<<<<<<<<<<
+ *
+ * def getVecClosure(self, Section sec or None, Vec vec, point):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_closure));
+ __pyx_r = ((PyObject *)__pyx_v_closure);
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":348
+ * return out[::2],out[1::2]
+ *
+ * def vecGetClosure(self, Section sec, Vec vec, p): # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(p), csize = 0
+ * cdef PetscScalar *cvals = NULL
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.vecGetClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_closure);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":358
+ * return closure
+ *
+ * def getVecClosure(self, Section sec or None, Vec vec, point): # <<<<<<<<<<<<<<
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point), csize = 0
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_79getVecClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_78getVecClosure[] = "DMPlex.getVecClosure(self, Section sec, Vec vec, point)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_79getVecClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscSectionObject *__pyx_v_sec = 0;
+ struct PyPetscVecObject *__pyx_v_vec = 0;
+ PyObject *__pyx_v_point = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getVecClosure (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_sec,&__pyx_n_s_vec,&__pyx_n_s_point,0};
+ PyObject* values[3] = {0,0,0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sec)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("getVecClosure", 1, 3, 3, 1); __PYX_ERR(42, 358, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("getVecClosure", 1, 3, 3, 2); __PYX_ERR(42, 358, __pyx_L3_error)
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getVecClosure") < 0)) __PYX_ERR(42, 358, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ }
+ __pyx_v_sec = ((struct PyPetscSectionObject *)values[0]);
+ __pyx_v_vec = ((struct PyPetscVecObject *)values[1]);
+ __pyx_v_point = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("getVecClosure", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 358, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getVecClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 1, "sec", 0))) __PYX_ERR(42, 358, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(42, 358, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_78getVecClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_sec, __pyx_v_vec, __pyx_v_point);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78getVecClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_point) {
+ PetscSection __pyx_v_csec;
+ PetscInt __pyx_v_cp;
+ PetscInt __pyx_v_csize;
+ PetscScalar *__pyx_v_cvals;
+ PyArrayObject *__pyx_v_closure = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscSection __pyx_t_1;
+ int __pyx_t_2;
+ PetscInt __pyx_t_3;
+ int __pyx_t_4;
+ PyObject *__pyx_t_5 = NULL;
+ int __pyx_t_6;
+ char const *__pyx_t_7;
+ PyObject *__pyx_t_8 = NULL;
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_11 = NULL;
+ PyObject *__pyx_t_12 = NULL;
+ PyObject *__pyx_t_13 = NULL;
+ int __pyx_t_14;
+ __Pyx_RefNannySetupContext("getVecClosure", 0);
+
+ /* "PETSc/DMPlex.pyx":359
+ *
+ * def getVecClosure(self, Section sec or None, Vec vec, point):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(point), csize = 0
+ * cdef PetscScalar *cvals = NULL
+ */
+ __pyx_t_2 = (((PyObject *)__pyx_v_sec) != Py_None);
+ if ((__pyx_t_2 != 0)) {
+ __pyx_t_1 = __pyx_v_sec->sec;
+ } else {
+ __pyx_t_1 = NULL;
+ }
+ __pyx_v_csec = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":360
+ * def getVecClosure(self, Section sec or None, Vec vec, point):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point), csize = 0 # <<<<<<<<<<<<<<
+ * cdef PetscScalar *cvals = NULL
+ * CHKERR( DMPlexVecGetClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 360, __pyx_L1_error)
+ __pyx_v_cp = __pyx_t_3;
+ __pyx_v_csize = 0;
+
+ /* "PETSc/DMPlex.pyx":361
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point), csize = 0
+ * cdef PetscScalar *cvals = NULL # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexVecGetClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ * try:
+ */
+ __pyx_v_cvals = NULL;
+
+ /* "PETSc/DMPlex.pyx":362
+ * cdef PetscInt cp = asInt(point), csize = 0
+ * cdef PetscScalar *cvals = NULL
+ * CHKERR( DMPlexVecGetClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) ) # <<<<<<<<<<<<<<
+ * try:
+ * closure = array_s(csize, cvals)
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecGetClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_csec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 362, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":363
+ * cdef PetscScalar *cvals = NULL
+ * CHKERR( DMPlexVecGetClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ * try: # <<<<<<<<<<<<<<
+ * closure = array_s(csize, cvals)
+ * finally:
+ */
+ /*try:*/ {
+
+ /* "PETSc/DMPlex.pyx":364
+ * CHKERR( DMPlexVecGetClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ * try:
+ * closure = array_s(csize, cvals) # <<<<<<<<<<<<<<
+ * finally:
+ * CHKERR( DMPlexVecRestoreClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ */
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_s(__pyx_v_csize, __pyx_v_cvals)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 364, __pyx_L4_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __pyx_v_closure = ((PyArrayObject *)__pyx_t_5);
+ __pyx_t_5 = 0;
+ }
+
+ /* "PETSc/DMPlex.pyx":366
+ * closure = array_s(csize, cvals)
+ * finally:
+ * CHKERR( DMPlexVecRestoreClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) ) # <<<<<<<<<<<<<<
+ * return closure
+ *
+ */
+ /*finally:*/ {
+ /*normal exit:*/{
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecRestoreClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_csec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 366, __pyx_L1_error)
+ goto __pyx_L5;
+ }
+ /*exception exit:*/{
+ __Pyx_PyThreadState_declare
+ __pyx_L4_error:;
+ __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
+ __Pyx_PyThreadState_assign
+ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13);
+ if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10) < 0)) __Pyx_ErrFetch(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10);
+ __Pyx_XGOTREF(__pyx_t_8);
+ __Pyx_XGOTREF(__pyx_t_9);
+ __Pyx_XGOTREF(__pyx_t_10);
+ __Pyx_XGOTREF(__pyx_t_11);
+ __Pyx_XGOTREF(__pyx_t_12);
+ __Pyx_XGOTREF(__pyx_t_13);
+ __pyx_t_4 = __pyx_lineno; __pyx_t_6 = __pyx_clineno; __pyx_t_7 = __pyx_filename;
+ {
+ __pyx_t_14 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecRestoreClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_csec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_14 == ((int)-1))) __PYX_ERR(42, 366, __pyx_L7_error)
+ }
+ if (PY_MAJOR_VERSION >= 3) {
+ __Pyx_XGIVEREF(__pyx_t_11);
+ __Pyx_XGIVEREF(__pyx_t_12);
+ __Pyx_XGIVEREF(__pyx_t_13);
+ __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
+ }
+ __Pyx_XGIVEREF(__pyx_t_8);
+ __Pyx_XGIVEREF(__pyx_t_9);
+ __Pyx_XGIVEREF(__pyx_t_10);
+ __Pyx_ErrRestore(__pyx_t_8, __pyx_t_9, __pyx_t_10);
+ __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
+ __pyx_lineno = __pyx_t_4; __pyx_clineno = __pyx_t_6; __pyx_filename = __pyx_t_7;
+ goto __pyx_L1_error;
+ __pyx_L7_error:;
+ if (PY_MAJOR_VERSION >= 3) {
+ __Pyx_XGIVEREF(__pyx_t_11);
+ __Pyx_XGIVEREF(__pyx_t_12);
+ __Pyx_XGIVEREF(__pyx_t_13);
+ __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13);
+ }
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
+ __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
+ __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0;
+ goto __pyx_L1_error;
+ }
+ __pyx_L5:;
+ }
+
+ /* "PETSc/DMPlex.pyx":367
+ * finally:
+ * CHKERR( DMPlexVecRestoreClosure(self.dm, csec, vec.vec, cp, &csize, &cvals) )
+ * return closure # <<<<<<<<<<<<<<
+ *
+ * def setVecClosure(self, Section sec or None, Vec vec, point, values, addv=None):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_closure));
+ __pyx_r = ((PyObject *)__pyx_v_closure);
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":358
+ * return closure
+ *
+ * def getVecClosure(self, Section sec or None, Vec vec, point): # <<<<<<<<<<<<<<
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point), csize = 0
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getVecClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_closure);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":369
+ * return closure
+ *
+ * def setVecClosure(self, Section sec or None, Vec vec, point, values, addv=None): # <<<<<<<<<<<<<<
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setVecClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_80setVecClosure[] = "DMPlex.setVecClosure(self, Section sec, Vec vec, point, values, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setVecClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscSectionObject *__pyx_v_sec = 0;
+ struct PyPetscVecObject *__pyx_v_vec = 0;
+ PyObject *__pyx_v_point = 0;
+ PyObject *__pyx_v_values = 0;
+ PyObject *__pyx_v_addv = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setVecClosure (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_sec,&__pyx_n_s_vec,&__pyx_n_s_point,&__pyx_n_s_values,&__pyx_n_s_addv,0};
+ PyObject* values[5] = {0,0,0,0,0};
+ values[4] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sec)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("setVecClosure", 0, 4, 5, 1); __PYX_ERR(42, 369, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("setVecClosure", 0, 4, 5, 2); __PYX_ERR(42, 369, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("setVecClosure", 0, 4, 5, 3); __PYX_ERR(42, 369, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 4:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
+ if (value) { values[4] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setVecClosure") < 0)) __PYX_ERR(42, 369, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_sec = ((struct PyPetscSectionObject *)values[0]);
+ __pyx_v_vec = ((struct PyPetscVecObject *)values[1]);
+ __pyx_v_point = values[2];
+ __pyx_v_values = values[3];
+ __pyx_v_addv = values[4];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setVecClosure", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 369, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setVecClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 1, "sec", 0))) __PYX_ERR(42, 369, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(42, 369, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_80setVecClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_sec, __pyx_v_vec, __pyx_v_point, __pyx_v_values, __pyx_v_addv);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setVecClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_point, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
+ PetscSection __pyx_v_csec;
+ PetscInt __pyx_v_cp;
+ PetscInt __pyx_v_csize;
+ PetscScalar *__pyx_v_cvals;
+ CYTHON_UNUSED PyObject *__pyx_v_tmp = 0;
+ InsertMode __pyx_v_im;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscSection __pyx_t_1;
+ int __pyx_t_2;
+ PetscInt __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ InsertMode __pyx_t_5;
+ int __pyx_t_6;
+ __Pyx_RefNannySetupContext("setVecClosure", 0);
+
+ /* "PETSc/DMPlex.pyx":370
+ *
+ * def setVecClosure(self, Section sec or None, Vec vec, point, values, addv=None):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(point)
+ * cdef PetscInt csize = 0
+ */
+ __pyx_t_2 = (((PyObject *)__pyx_v_sec) != Py_None);
+ if ((__pyx_t_2 != 0)) {
+ __pyx_t_1 = __pyx_v_sec->sec;
+ } else {
+ __pyx_t_1 = NULL;
+ }
+ __pyx_v_csec = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":371
+ * def setVecClosure(self, Section sec or None, Vec vec, point, values, addv=None):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point) # <<<<<<<<<<<<<<
+ * cdef PetscInt csize = 0
+ * cdef PetscScalar *cvals = NULL
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 371, __pyx_L1_error)
+ __pyx_v_cp = __pyx_t_3;
+
+ /* "PETSc/DMPlex.pyx":372
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point)
+ * cdef PetscInt csize = 0 # <<<<<<<<<<<<<<
+ * cdef PetscScalar *cvals = NULL
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
+ */
+ __pyx_v_csize = 0;
+
+ /* "PETSc/DMPlex.pyx":373
+ * cdef PetscInt cp = asInt(point)
+ * cdef PetscInt csize = 0
+ * cdef PetscScalar *cvals = NULL # <<<<<<<<<<<<<<
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
+ * cdef PetscInsertMode im = insertmode(addv)
+ */
+ __pyx_v_cvals = NULL;
+
+ /* "PETSc/DMPlex.pyx":374
+ * cdef PetscInt csize = 0
+ * cdef PetscScalar *cvals = NULL
+ * cdef object tmp = iarray_s(values, &csize, &cvals) # <<<<<<<<<<<<<<
+ * cdef PetscInsertMode im = insertmode(addv)
+ * CHKERR( DMPlexVecSetClosure(self.dm, csec, vec.vec, cp, cvals, im) )
+ */
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_values, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 374, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_v_tmp = __pyx_t_4;
+ __pyx_t_4 = 0;
+
+ /* "PETSc/DMPlex.pyx":375
+ * cdef PetscScalar *cvals = NULL
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
+ * cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexVecSetClosure(self.dm, csec, vec.vec, cp, cvals, im) )
*
- * def vecGetClosure(self, Section sec, Vec vec, p):
*/
- __Pyx_XDECREF(__pyx_r);
- __pyx_t_6 = PyObject_GetItem(((PyObject *)__pyx_v_out), __pyx_slice__63); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 335, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __pyx_t_16 = PyObject_GetItem(((PyObject *)__pyx_v_out), __pyx_slice__64); if (unlikely(!__pyx_t_16)) __PYX_ERR(42, 335, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_16);
- __pyx_t_17 = PyTuple_New(2); if (unlikely(!__pyx_t_17)) __PYX_ERR(42, 335, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_17);
- __Pyx_GIVEREF(__pyx_t_6);
- PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_16);
- PyTuple_SET_ITEM(__pyx_t_17, 1, __pyx_t_16);
- __pyx_t_6 = 0;
- __pyx_t_16 = 0;
- __pyx_r = __pyx_t_17;
- __pyx_t_17 = 0;
- goto __pyx_L0;
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_5 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(42, 375, __pyx_L1_error)
+ __pyx_v_im = __pyx_t_5;
- /* "PETSc/DMPlex.pyx":322
- * CHKERR( DMPlexRestoreJoin(self.dm, numPoints, ipoints, &numCoveringPoints, &coveringPoints) )
+ /* "PETSc/DMPlex.pyx":376
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
+ * cdef PetscInsertMode im = insertmode(addv)
+ * CHKERR( DMPlexVecSetClosure(self.dm, csec, vec.vec, cp, cvals, im) ) # <<<<<<<<<<<<<<
*
- * def getTransitiveClosure(self, p, useCone=True): # <<<<<<<<<<<<<<
- * cdef PetscInt cp = asInt(p)
- * cdef PetscInt pStart = 0, pEnd = 0
+ * def setMatClosure(self, Section sec or None, Section gsec or None,
+ */
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecSetClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_csec, __pyx_v_vec->vec, __pyx_v_cp, __pyx_v_cvals, __pyx_v_im)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(42, 376, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":369
+ * return closure
+ *
+ * def setVecClosure(self, Section sec or None, Vec vec, point, values, addv=None): # <<<<<<<<<<<<<<
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscInt cp = asInt(point)
*/
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_6);
- __Pyx_XDECREF(__pyx_t_16);
- __Pyx_XDECREF(__pyx_t_17);
- __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getTransitiveClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setVecClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_out);
+ __Pyx_XDECREF(__pyx_v_tmp);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":337
- * return out[::2],out[1::2]
+/* "PETSc/DMPlex.pyx":378
+ * CHKERR( DMPlexVecSetClosure(self.dm, csec, vec.vec, cp, cvals, im) )
*
- * def vecGetClosure(self, Section sec, Vec vec, p): # <<<<<<<<<<<<<<
- * cdef PetscInt cp = asInt(p), csize = 0
- * cdef PetscScalar *cvals = NULL
+ * def setMatClosure(self, Section sec or None, Section gsec or None, # <<<<<<<<<<<<<<
+ * Mat mat, point, values, addv=None):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_75vecGetClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_74vecGetClosure[] = "DMPlex.vecGetClosure(self, Section sec, Vec vec, p)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_75vecGetClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_83setMatClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_82setMatClosure[] = "DMPlex.setMatClosure(self, Section sec, Section gsec, Mat mat, point, values, addv=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_83setMatClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscSectionObject *__pyx_v_sec = 0;
- struct PyPetscVecObject *__pyx_v_vec = 0;
- PyObject *__pyx_v_p = 0;
+ struct PyPetscSectionObject *__pyx_v_gsec = 0;
+ struct PyPetscMatObject *__pyx_v_mat = 0;
+ PyObject *__pyx_v_point = 0;
+ PyObject *__pyx_v_values = 0;
+ PyObject *__pyx_v_addv = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("vecGetClosure (wrapper)", 0);
+ __Pyx_RefNannySetupContext("setMatClosure (wrapper)", 0);
{
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_sec,&__pyx_n_s_vec,&__pyx_n_s_p,0};
- PyObject* values[3] = {0,0,0};
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_sec,&__pyx_n_s_gsec,&__pyx_n_s_mat,&__pyx_n_s_point,&__pyx_n_s_values,&__pyx_n_s_addv,0};
+ PyObject* values[6] = {0,0,0,0,0,0};
+
+ /* "PETSc/DMPlex.pyx":379
+ *
+ * def setMatClosure(self, Section sec or None, Section gsec or None,
+ * Mat mat, point, values, addv=None): # <<<<<<<<<<<<<<
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscSection cgsec = gsec.sec if gsec is not None else NULL
+ */
+ values[5] = ((PyObject *)Py_None);
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
+ case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
+ case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -220291,42 +237880,80 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_75vecGetClosure(PyObject *__p
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
- if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gsec)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("vecGetClosure", 1, 3, 3, 1); __PYX_ERR(42, 337, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMatClosure", 0, 5, 6, 1); __PYX_ERR(42, 378, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
- if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
+ if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mat)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("setMatClosure", 0, 5, 6, 2); __PYX_ERR(42, 378, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 3:
+ if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("vecGetClosure", 1, 3, 3, 2); __PYX_ERR(42, 337, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMatClosure", 0, 5, 6, 3); __PYX_ERR(42, 378, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 4:
+ if (likely((values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("setMatClosure", 0, 5, 6, 4); __PYX_ERR(42, 378, __pyx_L3_error)
+ }
+ CYTHON_FALLTHROUGH;
+ case 5:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_addv);
+ if (value) { values[5] = value; kw_args--; }
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "vecGetClosure") < 0)) __PYX_ERR(42, 337, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setMatClosure") < 0)) __PYX_ERR(42, 378, __pyx_L3_error)
}
- } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
- goto __pyx_L5_argtuple_error;
} else {
- values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
- values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
+ case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
}
__pyx_v_sec = ((struct PyPetscSectionObject *)values[0]);
- __pyx_v_vec = ((struct PyPetscVecObject *)values[1]);
- __pyx_v_p = values[2];
+ __pyx_v_gsec = ((struct PyPetscSectionObject *)values[1]);
+ __pyx_v_mat = ((struct PyPetscMatObject *)values[2]);
+ __pyx_v_point = values[3];
+ __pyx_v_values = values[4];
+ __pyx_v_addv = values[5];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("vecGetClosure", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 337, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setMatClosure", 0, 5, 6, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 378, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.vecGetClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setMatClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 1, "sec", 0))) __PYX_ERR(42, 337, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "vec", 0))) __PYX_ERR(42, 337, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_74vecGetClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_sec, __pyx_v_vec, __pyx_v_p);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 1, "sec", 0))) __PYX_ERR(42, 378, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gsec), __pyx_ptype_8petsc4py_5PETSc_Section, 1, "gsec", 0))) __PYX_ERR(42, 378, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mat), __pyx_ptype_8petsc4py_5PETSc_Mat, 0, "mat", 0))) __PYX_ERR(42, 379, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_82setMatClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_sec, __pyx_v_gsec, __pyx_v_mat, __pyx_v_point, __pyx_v_values, __pyx_v_addv);
+
+ /* "PETSc/DMPlex.pyx":378
+ * CHKERR( DMPlexVecSetClosure(self.dm, csec, vec.vec, cp, cvals, im) )
+ *
+ * def setMatClosure(self, Section sec or None, Section gsec or None, # <<<<<<<<<<<<<<
+ * Mat mat, point, values, addv=None):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ */
/* function exit code */
goto __pyx_L0;
@@ -220337,173 +237964,137 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_75vecGetClosure(PyObject *__p
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_74vecGetClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, PyObject *__pyx_v_p) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82setMatClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscSectionObject *__pyx_v_gsec, struct PyPetscMatObject *__pyx_v_mat, PyObject *__pyx_v_point, PyObject *__pyx_v_values, PyObject *__pyx_v_addv) {
+ PetscSection __pyx_v_csec;
+ PetscSection __pyx_v_cgsec;
PetscInt __pyx_v_cp;
PetscInt __pyx_v_csize;
PetscScalar *__pyx_v_cvals;
- PyArrayObject *__pyx_v_closure = NULL;
+ CYTHON_UNUSED PyObject *__pyx_v_tmp = 0;
+ InsertMode __pyx_v_im;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PetscInt __pyx_t_1;
+ PetscSection __pyx_t_1;
int __pyx_t_2;
- PyObject *__pyx_t_3 = NULL;
- int __pyx_t_4;
- char const *__pyx_t_5;
- PyObject *__pyx_t_6 = NULL;
- PyObject *__pyx_t_7 = NULL;
- PyObject *__pyx_t_8 = NULL;
- PyObject *__pyx_t_9 = NULL;
- PyObject *__pyx_t_10 = NULL;
- PyObject *__pyx_t_11 = NULL;
- int __pyx_t_12;
- __Pyx_RefNannySetupContext("vecGetClosure", 0);
+ PetscInt __pyx_t_3;
+ PyObject *__pyx_t_4 = NULL;
+ InsertMode __pyx_t_5;
+ int __pyx_t_6;
+ __Pyx_RefNannySetupContext("setMatClosure", 0);
- /* "PETSc/DMPlex.pyx":338
- *
- * def vecGetClosure(self, Section sec, Vec vec, p):
- * cdef PetscInt cp = asInt(p), csize = 0 # <<<<<<<<<<<<<<
- * cdef PetscScalar *cvals = NULL
- * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ /* "PETSc/DMPlex.pyx":380
+ * def setMatClosure(self, Section sec or None, Section gsec or None,
+ * Mat mat, point, values, addv=None):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL # <<<<<<<<<<<<<<
+ * cdef PetscSection cgsec = gsec.sec if gsec is not None else NULL
+ * cdef PetscInt cp = asInt(point)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 338, __pyx_L1_error)
- __pyx_v_cp = __pyx_t_1;
- __pyx_v_csize = 0;
+ __pyx_t_2 = (((PyObject *)__pyx_v_sec) != Py_None);
+ if ((__pyx_t_2 != 0)) {
+ __pyx_t_1 = __pyx_v_sec->sec;
+ } else {
+ __pyx_t_1 = NULL;
+ }
+ __pyx_v_csec = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":339
- * def vecGetClosure(self, Section sec, Vec vec, p):
- * cdef PetscInt cp = asInt(p), csize = 0
- * cdef PetscScalar *cvals = NULL # <<<<<<<<<<<<<<
- * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
- * try:
+ /* "PETSc/DMPlex.pyx":381
+ * Mat mat, point, values, addv=None):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscSection cgsec = gsec.sec if gsec is not None else NULL # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(point)
+ * cdef PetscInt csize = 0
*/
- __pyx_v_cvals = NULL;
+ __pyx_t_2 = (((PyObject *)__pyx_v_gsec) != Py_None);
+ if ((__pyx_t_2 != 0)) {
+ __pyx_t_1 = __pyx_v_gsec->sec;
+ } else {
+ __pyx_t_1 = NULL;
+ }
+ __pyx_v_cgsec = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":340
- * cdef PetscInt cp = asInt(p), csize = 0
+ /* "PETSc/DMPlex.pyx":382
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
+ * cdef PetscSection cgsec = gsec.sec if gsec is not None else NULL
+ * cdef PetscInt cp = asInt(point) # <<<<<<<<<<<<<<
+ * cdef PetscInt csize = 0
* cdef PetscScalar *cvals = NULL
- * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) ) # <<<<<<<<<<<<<<
- * try:
- * closure = array_s(csize, cvals)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecGetClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 340, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_3 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 382, __pyx_L1_error)
+ __pyx_v_cp = __pyx_t_3;
- /* "PETSc/DMPlex.pyx":341
+ /* "PETSc/DMPlex.pyx":383
+ * cdef PetscSection cgsec = gsec.sec if gsec is not None else NULL
+ * cdef PetscInt cp = asInt(point)
+ * cdef PetscInt csize = 0 # <<<<<<<<<<<<<<
* cdef PetscScalar *cvals = NULL
- * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
- * try: # <<<<<<<<<<<<<<
- * closure = array_s(csize, cvals)
- * finally:
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
*/
- /*try:*/ {
+ __pyx_v_csize = 0;
- /* "PETSc/DMPlex.pyx":342
- * CHKERR( DMPlexVecGetClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
- * try:
- * closure = array_s(csize, cvals) # <<<<<<<<<<<<<<
- * finally:
- * CHKERR( DMPlexVecRestoreClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
+ /* "PETSc/DMPlex.pyx":384
+ * cdef PetscInt cp = asInt(point)
+ * cdef PetscInt csize = 0
+ * cdef PetscScalar *cvals = NULL # <<<<<<<<<<<<<<
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
+ * cdef PetscInsertMode im = insertmode(addv)
*/
- __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_s(__pyx_v_csize, __pyx_v_cvals)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 342, __pyx_L4_error)
- __Pyx_GOTREF(__pyx_t_3);
- __pyx_v_closure = ((PyArrayObject *)__pyx_t_3);
- __pyx_t_3 = 0;
- }
+ __pyx_v_cvals = NULL;
- /* "PETSc/DMPlex.pyx":344
- * closure = array_s(csize, cvals)
- * finally:
- * CHKERR( DMPlexVecRestoreClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) ) # <<<<<<<<<<<<<<
- * return closure
+ /* "PETSc/DMPlex.pyx":385
+ * cdef PetscInt csize = 0
+ * cdef PetscScalar *cvals = NULL
+ * cdef object tmp = iarray_s(values, &csize, &cvals) # <<<<<<<<<<<<<<
+ * cdef PetscInsertMode im = insertmode(addv)
+ * CHKERR( DMPlexMatSetClosure(self.dm, csec, cgsec, mat.mat, cp, cvals, im) )
+ */
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_s(__pyx_v_values, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 385, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_v_tmp = __pyx_t_4;
+ __pyx_t_4 = 0;
+
+ /* "PETSc/DMPlex.pyx":386
+ * cdef PetscScalar *cvals = NULL
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
+ * cdef PetscInsertMode im = insertmode(addv) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexMatSetClosure(self.dm, csec, cgsec, mat.mat, cp, cvals, im) )
*
*/
- /*finally:*/ {
- /*normal exit:*/{
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecRestoreClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 344, __pyx_L1_error)
- goto __pyx_L5;
- }
- /*exception exit:*/{
- __Pyx_PyThreadState_declare
- __pyx_L4_error:;
- __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
- __Pyx_PyThreadState_assign
- __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
- if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8);
- __Pyx_XGOTREF(__pyx_t_6);
- __Pyx_XGOTREF(__pyx_t_7);
- __Pyx_XGOTREF(__pyx_t_8);
- __Pyx_XGOTREF(__pyx_t_9);
- __Pyx_XGOTREF(__pyx_t_10);
- __Pyx_XGOTREF(__pyx_t_11);
- __pyx_t_2 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
- {
- __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexVecRestoreClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_cp, (&__pyx_v_csize), (&__pyx_v_cvals))); if (unlikely(__pyx_t_12 == -1)) __PYX_ERR(42, 344, __pyx_L7_error)
- }
- __Pyx_PyThreadState_assign
- if (PY_MAJOR_VERSION >= 3) {
- __Pyx_XGIVEREF(__pyx_t_9);
- __Pyx_XGIVEREF(__pyx_t_10);
- __Pyx_XGIVEREF(__pyx_t_11);
- __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
- }
- __Pyx_XGIVEREF(__pyx_t_6);
- __Pyx_XGIVEREF(__pyx_t_7);
- __Pyx_XGIVEREF(__pyx_t_8);
- __Pyx_ErrRestore(__pyx_t_6, __pyx_t_7, __pyx_t_8);
- __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
- __pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_4; __pyx_filename = __pyx_t_5;
- goto __pyx_L1_error;
- __pyx_L7_error:;
- __Pyx_PyThreadState_assign
- if (PY_MAJOR_VERSION >= 3) {
- __Pyx_XGIVEREF(__pyx_t_9);
- __Pyx_XGIVEREF(__pyx_t_10);
- __Pyx_XGIVEREF(__pyx_t_11);
- __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
- }
- __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
- __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
- __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
- goto __pyx_L1_error;
- }
- __pyx_L5:;
- }
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_addv); if (unlikely(__pyx_t_5 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(42, 386, __pyx_L1_error)
+ __pyx_v_im = __pyx_t_5;
- /* "PETSc/DMPlex.pyx":345
- * finally:
- * CHKERR( DMPlexVecRestoreClosure(self.dm, sec.sec, vec.vec, cp, &csize, &cvals) )
- * return closure # <<<<<<<<<<<<<<
+ /* "PETSc/DMPlex.pyx":387
+ * cdef object tmp = iarray_s(values, &csize, &cvals)
+ * cdef PetscInsertMode im = insertmode(addv)
+ * CHKERR( DMPlexMatSetClosure(self.dm, csec, cgsec, mat.mat, cp, cvals, im) ) # <<<<<<<<<<<<<<
*
* def generate(self, DMPlex boundary, name=None, interpolate=True):
*/
- __Pyx_XDECREF(__pyx_r);
- __Pyx_INCREF(((PyObject *)__pyx_v_closure));
- __pyx_r = ((PyObject *)__pyx_v_closure);
- goto __pyx_L0;
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexMatSetClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_csec, __pyx_v_cgsec, __pyx_v_mat->mat, __pyx_v_cp, __pyx_v_cvals, __pyx_v_im)); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(42, 387, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":337
- * return out[::2],out[1::2]
+ /* "PETSc/DMPlex.pyx":378
+ * CHKERR( DMPlexVecSetClosure(self.dm, csec, vec.vec, cp, cvals, im) )
*
- * def vecGetClosure(self, Section sec, Vec vec, p): # <<<<<<<<<<<<<<
- * cdef PetscInt cp = asInt(p), csize = 0
- * cdef PetscScalar *cvals = NULL
+ * def setMatClosure(self, Section sec or None, Section gsec or None, # <<<<<<<<<<<<<<
+ * Mat mat, point, values, addv=None):
+ * cdef PetscSection csec = sec.sec if sec is not None else NULL
*/
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_3);
- __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.vecGetClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setMatClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_closure);
+ __Pyx_XDECREF(__pyx_v_tmp);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":347
- * return closure
+/* "PETSc/DMPlex.pyx":389
+ * CHKERR( DMPlexMatSetClosure(self.dm, csec, cgsec, mat.mat, cp, cvals, im) )
*
* def generate(self, DMPlex boundary, name=None, interpolate=True): # <<<<<<<<<<<<<<
* cdef PetscBool interp = interpolate
@@ -220511,9 +238102,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_74vecGetClosure(struct __pyx_
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_76generate[] = "DMPlex.generate(self, DMPlex boundary, name=None, interpolate=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_85generate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_84generate[] = "DMPlex.generate(self, DMPlex boundary, name=None, interpolate=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_85generate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_boundary = 0;
PyObject *__pyx_v_name = 0;
PyObject *__pyx_v_interpolate = 0;
@@ -220530,8 +238121,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -220540,11 +238134,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate(PyObject *__pyx_v_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_boundary)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_name);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_interpolate);
@@ -220552,12 +238148,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate(PyObject *__pyx_v_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "generate") < 0)) __PYX_ERR(42, 347, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "generate") < 0)) __PYX_ERR(42, 389, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -220569,14 +238167,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("generate", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 347, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("generate", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 389, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.generate", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_boundary), __pyx_ptype_8petsc4py_5PETSc_DMPlex, 1, "boundary", 0))) __PYX_ERR(42, 347, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_boundary, __pyx_v_name, __pyx_v_interpolate);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_boundary), __pyx_ptype_8petsc4py_5PETSc_DMPlex, 0, "boundary", 0))) __PYX_ERR(42, 389, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_84generate(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_boundary, __pyx_v_name, __pyx_v_interpolate);
/* function exit code */
goto __pyx_L0;
@@ -220587,7 +238185,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate(PyObject *__pyx_v_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_boundary, PyObject *__pyx_v_name, PyObject *__pyx_v_interpolate) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84generate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_boundary, PyObject *__pyx_v_name, PyObject *__pyx_v_interpolate) {
PetscBool __pyx_v_interp;
const char *__pyx_v_cname;
DM __pyx_v_newdm;
@@ -220600,17 +238198,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8
__Pyx_RefNannySetupContext("generate", 0);
__Pyx_INCREF(__pyx_v_name);
- /* "PETSc/DMPlex.pyx":348
+ /* "PETSc/DMPlex.pyx":390
*
* def generate(self, DMPlex boundary, name=None, interpolate=True):
* cdef PetscBool interp = interpolate # <<<<<<<<<<<<<<
* cdef const_char *cname = NULL
* if name: name = str2bytes(name, &cname)
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 348, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_interpolate)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 390, __pyx_L1_error)
__pyx_v_interp = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":349
+ /* "PETSc/DMPlex.pyx":391
* def generate(self, DMPlex boundary, name=None, interpolate=True):
* cdef PetscBool interp = interpolate
* cdef const_char *cname = NULL # <<<<<<<<<<<<<<
@@ -220619,22 +238217,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8
*/
__pyx_v_cname = NULL;
- /* "PETSc/DMPlex.pyx":350
+ /* "PETSc/DMPlex.pyx":392
* cdef PetscBool interp = interpolate
* cdef const_char *cname = NULL
* if name: name = str2bytes(name, &cname) # <<<<<<<<<<<<<<
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexGenerate(boundary.dm, cname, interp, &newdm) )
*/
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_name); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(42, 350, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_name); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(42, 392, __pyx_L1_error)
if (__pyx_t_2) {
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 350, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_name, (&__pyx_v_cname)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 392, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_name, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/DMPlex.pyx":351
+ /* "PETSc/DMPlex.pyx":393
* cdef const_char *cname = NULL
* if name: name = str2bytes(name, &cname)
* cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
@@ -220643,16 +238241,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8
*/
__pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":352
+ /* "PETSc/DMPlex.pyx":394
* if name: name = str2bytes(name, &cname)
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexGenerate(boundary.dm, cname, interp, &newdm) ) # <<<<<<<<<<<<<<
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGenerate(__pyx_v_boundary->__pyx_base.dm, __pyx_v_cname, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 352, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGenerate(__pyx_v_boundary->__pyx_base.dm, __pyx_v_cname, __pyx_v_interp, (&__pyx_v_newdm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 394, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":353
+ /* "PETSc/DMPlex.pyx":395
* cdef PetscDM newdm = NULL
* CHKERR( DMPlexGenerate(boundary.dm, cname, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
@@ -220662,7 +238260,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
__pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":354
+ /* "PETSc/DMPlex.pyx":396
* CHKERR( DMPlexGenerate(boundary.dm, cname, interp, &newdm) )
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
@@ -220674,8 +238272,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":347
- * return closure
+ /* "PETSc/DMPlex.pyx":389
+ * CHKERR( DMPlexMatSetClosure(self.dm, csec, cgsec, mat.mat, cp, cvals, im) )
*
* def generate(self, DMPlex boundary, name=None, interpolate=True): # <<<<<<<<<<<<<<
* cdef PetscBool interp = interpolate
@@ -220694,7 +238292,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":356
+/* "PETSc/DMPlex.pyx":398
* return self
*
* def setTriangleOptions(self, opts): # <<<<<<<<<<<<<<
@@ -220703,9 +238301,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_76generate(struct __pyx_obj_8
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_79setTriangleOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions[] = "DMPlex.setTriangleOptions(self, opts)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_79setTriangleOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_87setTriangleOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_86setTriangleOptions[] = "DMPlex.setTriangleOptions(self, opts)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_87setTriangleOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_opts = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -220718,6 +238316,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_79setTriangleOptions(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -220728,7 +238327,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_79setTriangleOptions(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTriangleOptions") < 0)) __PYX_ERR(42, 356, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTriangleOptions") < 0)) __PYX_ERR(42, 398, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -220739,20 +238338,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_79setTriangleOptions(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTriangleOptions", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 356, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTriangleOptions", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 398, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setTriangleOptions", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_opts);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_86setTriangleOptions(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_opts);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86setTriangleOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts) {
const char *__pyx_v_copts;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -220761,7 +238360,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions(struct _
__Pyx_RefNannySetupContext("setTriangleOptions", 0);
__Pyx_INCREF(__pyx_v_opts);
- /* "PETSc/DMPlex.pyx":357
+ /* "PETSc/DMPlex.pyx":399
*
* def setTriangleOptions(self, opts):
* cdef const_char *copts = NULL # <<<<<<<<<<<<<<
@@ -220770,28 +238369,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions(struct _
*/
__pyx_v_copts = NULL;
- /* "PETSc/DMPlex.pyx":358
+ /* "PETSc/DMPlex.pyx":400
* def setTriangleOptions(self, opts):
* cdef const_char *copts = NULL
* opts = str2bytes(opts, &copts) # <<<<<<<<<<<<<<
* CHKERR( DMPlexTriangleSetOptions(self.dm, copts) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_opts, (&__pyx_v_copts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 358, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_opts, (&__pyx_v_copts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 400, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_opts, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":359
+ /* "PETSc/DMPlex.pyx":401
* cdef const_char *copts = NULL
* opts = str2bytes(opts, &copts)
* CHKERR( DMPlexTriangleSetOptions(self.dm, copts) ) # <<<<<<<<<<<<<<
*
* def setTetGenOptions(self, opts):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexTriangleSetOptions(__pyx_v_self->__pyx_base.dm, __pyx_v_copts)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 359, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexTriangleSetOptions(__pyx_v_self->__pyx_base.dm, __pyx_v_copts)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 401, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":356
+ /* "PETSc/DMPlex.pyx":398
* return self
*
* def setTriangleOptions(self, opts): # <<<<<<<<<<<<<<
@@ -220813,7 +238412,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions(struct _
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":361
+/* "PETSc/DMPlex.pyx":403
* CHKERR( DMPlexTriangleSetOptions(self.dm, copts) )
*
* def setTetGenOptions(self, opts): # <<<<<<<<<<<<<<
@@ -220822,9 +238421,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions(struct _
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setTetGenOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions[] = "DMPlex.setTetGenOptions(self, opts)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setTetGenOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setTetGenOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_88setTetGenOptions[] = "DMPlex.setTetGenOptions(self, opts)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setTetGenOptions(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_opts = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -220837,6 +238436,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setTetGenOptions(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -220847,7 +238447,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setTetGenOptions(PyObject *
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTetGenOptions") < 0)) __PYX_ERR(42, 361, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setTetGenOptions") < 0)) __PYX_ERR(42, 403, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -220858,20 +238458,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setTetGenOptions(PyObject *
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setTetGenOptions", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 361, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setTetGenOptions", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 403, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setTetGenOptions", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_opts);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_88setTetGenOptions(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_opts);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_88setTetGenOptions(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_opts) {
const char *__pyx_v_copts;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -220880,7 +238480,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions(struct __p
__Pyx_RefNannySetupContext("setTetGenOptions", 0);
__Pyx_INCREF(__pyx_v_opts);
- /* "PETSc/DMPlex.pyx":362
+ /* "PETSc/DMPlex.pyx":404
*
* def setTetGenOptions(self, opts):
* cdef const_char *copts = NULL # <<<<<<<<<<<<<<
@@ -220889,28 +238489,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions(struct __p
*/
__pyx_v_copts = NULL;
- /* "PETSc/DMPlex.pyx":363
+ /* "PETSc/DMPlex.pyx":405
* def setTetGenOptions(self, opts):
* cdef const_char *copts = NULL
* opts = str2bytes(opts, &copts) # <<<<<<<<<<<<<<
* CHKERR( DMPlexTetgenSetOptions(self.dm, copts) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_opts, (&__pyx_v_copts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 363, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_opts, (&__pyx_v_copts)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 405, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_opts, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":364
+ /* "PETSc/DMPlex.pyx":406
* cdef const_char *copts = NULL
* opts = str2bytes(opts, &copts)
* CHKERR( DMPlexTetgenSetOptions(self.dm, copts) ) # <<<<<<<<<<<<<<
*
* def createSquareBoundary(self, lower, upper, edges):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexTetgenSetOptions(__pyx_v_self->__pyx_base.dm, __pyx_v_copts)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 364, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexTetgenSetOptions(__pyx_v_self->__pyx_base.dm, __pyx_v_copts)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 406, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":361
+ /* "PETSc/DMPlex.pyx":403
* CHKERR( DMPlexTriangleSetOptions(self.dm, copts) )
*
* def setTetGenOptions(self, opts): # <<<<<<<<<<<<<<
@@ -220932,7 +238532,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions(struct __p
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":366
+/* "PETSc/DMPlex.pyx":408
* CHKERR( DMPlexTetgenSetOptions(self.dm, copts) )
*
* def createSquareBoundary(self, lower, upper, edges): # <<<<<<<<<<<<<<
@@ -220941,9 +238541,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions(struct __p
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_83createSquareBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary[] = "DMPlex.createSquareBoundary(self, lower, upper, edges)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_83createSquareBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_91createSquareBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_90createSquareBoundary[] = "DMPlex.createSquareBoundary(self, lower, upper, edges)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_91createSquareBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_lower = 0;
PyObject *__pyx_v_upper = 0;
PyObject *__pyx_v_edges = 0;
@@ -220958,8 +238558,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_83createSquareBoundary(PyObje
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -220968,19 +238571,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_83createSquareBoundary(PyObje
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lower)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_upper)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createSquareBoundary", 1, 3, 3, 1); __PYX_ERR(42, 366, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSquareBoundary", 1, 3, 3, 1); __PYX_ERR(42, 408, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_edges)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createSquareBoundary", 1, 3, 3, 2); __PYX_ERR(42, 366, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSquareBoundary", 1, 3, 3, 2); __PYX_ERR(42, 408, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSquareBoundary") < 0)) __PYX_ERR(42, 366, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSquareBoundary") < 0)) __PYX_ERR(42, 408, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -220995,20 +238600,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_83createSquareBoundary(PyObje
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createSquareBoundary", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 366, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSquareBoundary", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 408, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createSquareBoundary", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_lower, __pyx_v_upper, __pyx_v_edges);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_90createSquareBoundary(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_lower, __pyx_v_upper, __pyx_v_edges);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_edges) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_90createSquareBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_edges) {
PetscInt __pyx_v_nlow;
PetscInt __pyx_v_nup;
PetscInt __pyx_v_nedg;
@@ -221024,7 +238629,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct
__Pyx_INCREF(__pyx_v_upper);
__Pyx_INCREF(__pyx_v_edges);
- /* "PETSc/DMPlex.pyx":367
+ /* "PETSc/DMPlex.pyx":409
*
* def createSquareBoundary(self, lower, upper, edges):
* cdef PetscInt nlow = 0, nup = 0, nedg = 0 # <<<<<<<<<<<<<<
@@ -221035,7 +238640,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct
__pyx_v_nup = 0;
__pyx_v_nedg = 0;
- /* "PETSc/DMPlex.pyx":368
+ /* "PETSc/DMPlex.pyx":410
* def createSquareBoundary(self, lower, upper, edges):
* cdef PetscInt nlow = 0, nup = 0, nedg = 0
* cdef PetscInt *iedg = NULL # <<<<<<<<<<<<<<
@@ -221044,7 +238649,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct
*/
__pyx_v_iedg = NULL;
- /* "PETSc/DMPlex.pyx":369
+ /* "PETSc/DMPlex.pyx":411
* cdef PetscInt nlow = 0, nup = 0, nedg = 0
* cdef PetscInt *iedg = NULL
* cdef PetscReal *ilow = NULL, *iup = NULL # <<<<<<<<<<<<<<
@@ -221054,52 +238659,52 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct
__pyx_v_ilow = NULL;
__pyx_v_iup = NULL;
- /* "PETSc/DMPlex.pyx":370
+ /* "PETSc/DMPlex.pyx":412
* cdef PetscInt *iedg = NULL
* cdef PetscReal *ilow = NULL, *iup = NULL
* lower = iarray_r(lower, &nlow, &ilow) # <<<<<<<<<<<<<<
* upper = iarray_r(upper, &nup, &iup)
* edges = iarray_i(edges, &nedg, &iedg)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_lower, (&__pyx_v_nlow), (&__pyx_v_ilow))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 370, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_lower, (&__pyx_v_nlow), (&__pyx_v_ilow))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 412, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_lower, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":371
+ /* "PETSc/DMPlex.pyx":413
* cdef PetscReal *ilow = NULL, *iup = NULL
* lower = iarray_r(lower, &nlow, &ilow)
* upper = iarray_r(upper, &nup, &iup) # <<<<<<<<<<<<<<
* edges = iarray_i(edges, &nedg, &iedg)
* CHKERR( DMPlexCreateSquareBoundary(self.dm, ilow, iup, iedg) )
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_upper, (&__pyx_v_nup), (&__pyx_v_iup))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 371, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_upper, (&__pyx_v_nup), (&__pyx_v_iup))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 413, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_upper, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":372
+ /* "PETSc/DMPlex.pyx":414
* lower = iarray_r(lower, &nlow, &ilow)
* upper = iarray_r(upper, &nup, &iup)
* edges = iarray_i(edges, &nedg, &iedg) # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateSquareBoundary(self.dm, ilow, iup, iedg) )
* return self
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_edges, (&__pyx_v_nedg), (&__pyx_v_iedg))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 372, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_edges, (&__pyx_v_nedg), (&__pyx_v_iedg))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 414, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_edges, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":373
+ /* "PETSc/DMPlex.pyx":415
* upper = iarray_r(upper, &nup, &iup)
* edges = iarray_i(edges, &nedg, &iedg)
* CHKERR( DMPlexCreateSquareBoundary(self.dm, ilow, iup, iedg) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateSquareBoundary(__pyx_v_self->__pyx_base.dm, __pyx_v_ilow, __pyx_v_iup, __pyx_v_iedg)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 373, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateSquareBoundary(__pyx_v_self->__pyx_base.dm, __pyx_v_ilow, __pyx_v_iup, __pyx_v_iedg)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 415, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":374
+ /* "PETSc/DMPlex.pyx":416
* edges = iarray_i(edges, &nedg, &iedg)
* CHKERR( DMPlexCreateSquareBoundary(self.dm, ilow, iup, iedg) )
* return self # <<<<<<<<<<<<<<
@@ -221111,7 +238716,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":366
+ /* "PETSc/DMPlex.pyx":408
* CHKERR( DMPlexTetgenSetOptions(self.dm, copts) )
*
* def createSquareBoundary(self, lower, upper, edges): # <<<<<<<<<<<<<<
@@ -221133,7 +238738,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":376
+/* "PETSc/DMPlex.pyx":418
* return self
*
* def createCubeBoundary(self, lower, upper, faces): # <<<<<<<<<<<<<<
@@ -221142,9 +238747,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_85createCubeBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary[] = "DMPlex.createCubeBoundary(self, lower, upper, faces)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_85createCubeBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_93createCubeBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_92createCubeBoundary[] = "DMPlex.createCubeBoundary(self, lower, upper, faces)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_93createCubeBoundary(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_lower = 0;
PyObject *__pyx_v_upper = 0;
PyObject *__pyx_v_faces = 0;
@@ -221159,8 +238764,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_85createCubeBoundary(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221169,19 +238777,21 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_85createCubeBoundary(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lower)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_upper)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createCubeBoundary", 1, 3, 3, 1); __PYX_ERR(42, 376, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createCubeBoundary", 1, 3, 3, 1); __PYX_ERR(42, 418, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_faces)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createCubeBoundary", 1, 3, 3, 2); __PYX_ERR(42, 376, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createCubeBoundary", 1, 3, 3, 2); __PYX_ERR(42, 418, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCubeBoundary") < 0)) __PYX_ERR(42, 376, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createCubeBoundary") < 0)) __PYX_ERR(42, 418, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
@@ -221196,20 +238806,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_85createCubeBoundary(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createCubeBoundary", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 376, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createCubeBoundary", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 418, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createCubeBoundary", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_lower, __pyx_v_upper, __pyx_v_faces);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_92createCubeBoundary(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_lower, __pyx_v_upper, __pyx_v_faces);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_faces) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92createCubeBoundary(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_lower, PyObject *__pyx_v_upper, PyObject *__pyx_v_faces) {
PetscInt __pyx_v_nlow;
PetscInt __pyx_v_nup;
PetscInt __pyx_v_nfac;
@@ -221225,7 +238835,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct _
__Pyx_INCREF(__pyx_v_upper);
__Pyx_INCREF(__pyx_v_faces);
- /* "PETSc/DMPlex.pyx":377
+ /* "PETSc/DMPlex.pyx":419
*
* def createCubeBoundary(self, lower, upper, faces):
* cdef PetscInt nlow = 0, nup = 0, nfac = 0 # <<<<<<<<<<<<<<
@@ -221236,7 +238846,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct _
__pyx_v_nup = 0;
__pyx_v_nfac = 0;
- /* "PETSc/DMPlex.pyx":378
+ /* "PETSc/DMPlex.pyx":420
* def createCubeBoundary(self, lower, upper, faces):
* cdef PetscInt nlow = 0, nup = 0, nfac = 0
* cdef PetscInt *ifac = NULL # <<<<<<<<<<<<<<
@@ -221245,7 +238855,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct _
*/
__pyx_v_ifac = NULL;
- /* "PETSc/DMPlex.pyx":379
+ /* "PETSc/DMPlex.pyx":421
* cdef PetscInt nlow = 0, nup = 0, nfac = 0
* cdef PetscInt *ifac = NULL
* cdef PetscReal *ilow = NULL, *iup = NULL # <<<<<<<<<<<<<<
@@ -221255,52 +238865,52 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct _
__pyx_v_ilow = NULL;
__pyx_v_iup = NULL;
- /* "PETSc/DMPlex.pyx":380
+ /* "PETSc/DMPlex.pyx":422
* cdef PetscInt *ifac = NULL
* cdef PetscReal *ilow = NULL, *iup = NULL
* lower = iarray_r(lower, &nlow, &ilow) # <<<<<<<<<<<<<<
* upper = iarray_r(upper, &nup, &iup)
* faces = iarray_i(faces, &nfac, &ifac)
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_lower, (&__pyx_v_nlow), (&__pyx_v_ilow))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 380, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_lower, (&__pyx_v_nlow), (&__pyx_v_ilow))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 422, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_lower, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":381
+ /* "PETSc/DMPlex.pyx":423
* cdef PetscReal *ilow = NULL, *iup = NULL
* lower = iarray_r(lower, &nlow, &ilow)
* upper = iarray_r(upper, &nup, &iup) # <<<<<<<<<<<<<<
* faces = iarray_i(faces, &nfac, &ifac)
* CHKERR( DMPlexCreateCubeBoundary(self.dm, ilow, iup, ifac) )
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_upper, (&__pyx_v_nup), (&__pyx_v_iup))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 381, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_r(__pyx_v_upper, (&__pyx_v_nup), (&__pyx_v_iup))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_upper, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":382
+ /* "PETSc/DMPlex.pyx":424
* lower = iarray_r(lower, &nlow, &ilow)
* upper = iarray_r(upper, &nup, &iup)
* faces = iarray_i(faces, &nfac, &ifac) # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateCubeBoundary(self.dm, ilow, iup, ifac) )
* return self
*/
- __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_faces, (&__pyx_v_nfac), (&__pyx_v_ifac))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 382, __pyx_L1_error)
+ __pyx_t_1 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_faces, (&__pyx_v_nfac), (&__pyx_v_ifac))); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 424, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_faces, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":383
+ /* "PETSc/DMPlex.pyx":425
* upper = iarray_r(upper, &nup, &iup)
* faces = iarray_i(faces, &nfac, &ifac)
* CHKERR( DMPlexCreateCubeBoundary(self.dm, ilow, iup, ifac) ) # <<<<<<<<<<<<<<
* return self
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCubeBoundary(__pyx_v_self->__pyx_base.dm, __pyx_v_ilow, __pyx_v_iup, __pyx_v_ifac)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 383, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCubeBoundary(__pyx_v_self->__pyx_base.dm, __pyx_v_ilow, __pyx_v_iup, __pyx_v_ifac)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 425, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":384
+ /* "PETSc/DMPlex.pyx":426
* faces = iarray_i(faces, &nfac, &ifac)
* CHKERR( DMPlexCreateCubeBoundary(self.dm, ilow, iup, ifac) )
* return self # <<<<<<<<<<<<<<
@@ -221312,7 +238922,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct _
__pyx_r = ((PyObject *)__pyx_v_self);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":376
+ /* "PETSc/DMPlex.pyx":418
* return self
*
* def createCubeBoundary(self, lower, upper, faces): # <<<<<<<<<<<<<<
@@ -221334,7 +238944,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct _
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":386
+/* "PETSc/DMPlex.pyx":428
* return self
*
* def markBoundaryFaces(self, label): # <<<<<<<<<<<<<<
@@ -221343,9 +238953,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary(struct _
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_87markBoundaryFaces(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces[] = "DMPlex.markBoundaryFaces(self, label)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_87markBoundaryFaces(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_95markBoundaryFaces(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_94markBoundaryFaces[] = "DMPlex.markBoundaryFaces(self, label)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_95markBoundaryFaces(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_label = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -221358,6 +238968,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_87markBoundaryFaces(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221368,7 +238979,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_87markBoundaryFaces(PyObject
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "markBoundaryFaces") < 0)) __PYX_ERR(42, 386, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "markBoundaryFaces") < 0)) __PYX_ERR(42, 428, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -221379,20 +238990,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_87markBoundaryFaces(PyObject
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("markBoundaryFaces", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 386, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("markBoundaryFaces", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 428, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.markBoundaryFaces", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_label);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_94markBoundaryFaces(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_label);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_label) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_94markBoundaryFaces(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_label) {
const char *__pyx_v_cval;
DMLabel __pyx_v_clbl;
PyObject *__pyx_r = NULL;
@@ -221407,17 +239018,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
__Pyx_RefNannySetupContext("markBoundaryFaces", 0);
__Pyx_INCREF(__pyx_v_label);
- /* "PETSc/DMPlex.pyx":387
+ /* "PETSc/DMPlex.pyx":429
*
* def markBoundaryFaces(self, label):
* if not self.hasLabel(label): # <<<<<<<<<<<<<<
* self.createLabel(label)
* cdef const_char *cval = NULL
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_hasLabel); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 387, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_hasLabel); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 429, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -221427,36 +239038,54 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
}
}
if (!__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_label); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 387, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_label); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 429, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 387, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
- __Pyx_INCREF(__pyx_v_label);
- __Pyx_GIVEREF(__pyx_v_label);
- PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_label);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 387, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_label};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 429, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_3, __pyx_v_label};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 429, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 429, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ __Pyx_INCREF(__pyx_v_label);
+ __Pyx_GIVEREF(__pyx_v_label);
+ PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_v_label);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 429, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(42, 387, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(42, 429, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_6 = ((!__pyx_t_5) != 0);
if (__pyx_t_6) {
- /* "PETSc/DMPlex.pyx":388
+ /* "PETSc/DMPlex.pyx":430
* def markBoundaryFaces(self, label):
* if not self.hasLabel(label):
* self.createLabel(label) # <<<<<<<<<<<<<<
* cdef const_char *cval = NULL
* label = str2bytes(label, &cval)
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_createLabel); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 388, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_createLabel); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 430, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_4 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -221466,23 +239095,41 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
}
}
if (!__pyx_t_4) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_label); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 388, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_v_label); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 430, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
- __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 388, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
- __Pyx_INCREF(__pyx_v_label);
- __Pyx_GIVEREF(__pyx_v_label);
- PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_label);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 388, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_label};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 430, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[2] = {__pyx_t_4, __pyx_v_label};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-1, 1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 430, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 430, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = NULL;
+ __Pyx_INCREF(__pyx_v_label);
+ __Pyx_GIVEREF(__pyx_v_label);
+ PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_v_label);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 430, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ }
}
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":387
+ /* "PETSc/DMPlex.pyx":429
*
* def markBoundaryFaces(self, label):
* if not self.hasLabel(label): # <<<<<<<<<<<<<<
@@ -221491,7 +239138,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
*/
}
- /* "PETSc/DMPlex.pyx":389
+ /* "PETSc/DMPlex.pyx":431
* if not self.hasLabel(label):
* self.createLabel(label)
* cdef const_char *cval = NULL # <<<<<<<<<<<<<<
@@ -221500,19 +239147,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
*/
__pyx_v_cval = NULL;
- /* "PETSc/DMPlex.pyx":390
+ /* "PETSc/DMPlex.pyx":432
* self.createLabel(label)
* cdef const_char *cval = NULL
* label = str2bytes(label, &cval) # <<<<<<<<<<<<<<
* cdef PetscDMLabel clbl = NULL
* CHKERR( DMGetLabel(self.dm, cval, &clbl) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_label, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 390, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_label, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_label, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":391
+ /* "PETSc/DMPlex.pyx":433
* cdef const_char *cval = NULL
* label = str2bytes(label, &cval)
* cdef PetscDMLabel clbl = NULL # <<<<<<<<<<<<<<
@@ -221521,25 +239168,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
*/
__pyx_v_clbl = NULL;
- /* "PETSc/DMPlex.pyx":392
+ /* "PETSc/DMPlex.pyx":434
* label = str2bytes(label, &cval)
* cdef PetscDMLabel clbl = NULL
* CHKERR( DMGetLabel(self.dm, cval, &clbl) ) # <<<<<<<<<<<<<<
* CHKERR( DMPlexMarkBoundaryFaces(self.dm, clbl) )
*
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabel(__pyx_v_self->__pyx_base.dm, __pyx_v_cval, (&__pyx_v_clbl))); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(42, 392, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetLabel(__pyx_v_self->__pyx_base.dm, __pyx_v_cval, (&__pyx_v_clbl))); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(42, 434, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":393
+ /* "PETSc/DMPlex.pyx":435
* cdef PetscDMLabel clbl = NULL
* CHKERR( DMGetLabel(self.dm, cval, &clbl) )
* CHKERR( DMPlexMarkBoundaryFaces(self.dm, clbl) ) # <<<<<<<<<<<<<<
*
* def setAdjacencyUseCone(self, useCone=True):
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexMarkBoundaryFaces(__pyx_v_self->__pyx_base.dm, __pyx_v_clbl)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(42, 393, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexMarkBoundaryFaces(__pyx_v_self->__pyx_base.dm, __pyx_v_clbl)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(42, 435, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":386
+ /* "PETSc/DMPlex.pyx":428
* return self
*
* def markBoundaryFaces(self, label): # <<<<<<<<<<<<<<
@@ -221564,7 +239211,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":395
+/* "PETSc/DMPlex.pyx":437
* CHKERR( DMPlexMarkBoundaryFaces(self.dm, clbl) )
*
* def setAdjacencyUseCone(self, useCone=True): # <<<<<<<<<<<<<<
@@ -221573,9 +239220,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces(struct __
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setAdjacencyUseCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_88setAdjacencyUseCone[] = "DMPlex.setAdjacencyUseCone(self, useCone=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setAdjacencyUseCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_97setAdjacencyUseCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_96setAdjacencyUseCone[] = "DMPlex.setAdjacencyUseCone(self, useCone=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_97setAdjacencyUseCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_useCone = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -221589,6 +239236,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setAdjacencyUseCone(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221601,11 +239249,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setAdjacencyUseCone(PyObjec
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAdjacencyUseCone") < 0)) __PYX_ERR(42, 395, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAdjacencyUseCone") < 0)) __PYX_ERR(42, 437, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221614,20 +239263,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setAdjacencyUseCone(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setAdjacencyUseCone", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 395, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAdjacencyUseCone", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 437, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setAdjacencyUseCone", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_88setAdjacencyUseCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_useCone);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_96setAdjacencyUseCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_useCone);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_88setAdjacencyUseCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useCone) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_96setAdjacencyUseCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useCone) {
PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -221635,26 +239284,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_88setAdjacencyUseCone(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("setAdjacencyUseCone", 0);
- /* "PETSc/DMPlex.pyx":396
+ /* "PETSc/DMPlex.pyx":438
*
* def setAdjacencyUseCone(self, useCone=True):
* cdef PetscBool flag = useCone # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetAdjacencyUseCone(self.dm, flag) )
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_useCone)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 396, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_useCone)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 438, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":397
+ /* "PETSc/DMPlex.pyx":439
* def setAdjacencyUseCone(self, useCone=True):
* cdef PetscBool flag = useCone
* CHKERR( DMPlexSetAdjacencyUseCone(self.dm, flag) ) # <<<<<<<<<<<<<<
*
- * def setAdjacencyUseClosure(self, useClosure=True):
+ * def getAdjacencyUseCone(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetAdjacencyUseCone(__pyx_v_self->__pyx_base.dm, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 397, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetAdjacencyUseCone(__pyx_v_self->__pyx_base.dm, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 439, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":395
+ /* "PETSc/DMPlex.pyx":437
* CHKERR( DMPlexMarkBoundaryFaces(self.dm, clbl) )
*
* def setAdjacencyUseCone(self, useCone=True): # <<<<<<<<<<<<<<
@@ -221674,18 +239323,102 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_88setAdjacencyUseCone(struct
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":399
+/* "PETSc/DMPlex.pyx":441
+ * CHKERR( DMPlexSetAdjacencyUseCone(self.dm, flag) )
+ *
+ * def getAdjacencyUseCone(self): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseCone(self.dm, &flag) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99getAdjacencyUseCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_98getAdjacencyUseCone[] = "DMPlex.getAdjacencyUseCone(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99getAdjacencyUseCone(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getAdjacencyUseCone (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getAdjacencyUseCone", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getAdjacencyUseCone", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_98getAdjacencyUseCone(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98getAdjacencyUseCone(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+ PetscBool __pyx_v_flag;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getAdjacencyUseCone", 0);
+
+ /* "PETSc/DMPlex.pyx":442
+ *
+ * def getAdjacencyUseCone(self):
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetAdjacencyUseCone(self.dm, &flag) )
+ * return toBool(flag)
+ */
+ __pyx_v_flag = PETSC_FALSE;
+
+ /* "PETSc/DMPlex.pyx":443
+ * def getAdjacencyUseCone(self):
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseCone(self.dm, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetAdjacencyUseCone(__pyx_v_self->__pyx_base.dm, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 443, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":444
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseCone(self.dm, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
+ *
+ * def setAdjacencyUseClosure(self, useClosure=True):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 444, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":441
* CHKERR( DMPlexSetAdjacencyUseCone(self.dm, flag) )
*
+ * def getAdjacencyUseCone(self): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseCone(self.dm, &flag) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getAdjacencyUseCone", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":446
+ * return toBool(flag)
+ *
* def setAdjacencyUseClosure(self, useClosure=True): # <<<<<<<<<<<<<<
* cdef PetscBool flag = useClosure
* CHKERR( DMPlexSetAdjacencyUseClosure(self.dm, flag) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_91setAdjacencyUseClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_90setAdjacencyUseClosure[] = "DMPlex.setAdjacencyUseClosure(self, useClosure=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_91setAdjacencyUseClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_101setAdjacencyUseClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_100setAdjacencyUseClosure[] = "DMPlex.setAdjacencyUseClosure(self, useClosure=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_101setAdjacencyUseClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_useClosure = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -221699,6 +239432,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_91setAdjacencyUseClosure(PyOb
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221711,11 +239445,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_91setAdjacencyUseClosure(PyOb
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAdjacencyUseClosure") < 0)) __PYX_ERR(42, 399, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAdjacencyUseClosure") < 0)) __PYX_ERR(42, 446, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221724,20 +239459,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_91setAdjacencyUseClosure(PyOb
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setAdjacencyUseClosure", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 399, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setAdjacencyUseClosure", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 446, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setAdjacencyUseClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_90setAdjacencyUseClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_useClosure);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_100setAdjacencyUseClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_useClosure);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_90setAdjacencyUseClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useClosure) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100setAdjacencyUseClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useClosure) {
PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -221745,27 +239480,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_90setAdjacencyUseClosure(stru
int __pyx_t_2;
__Pyx_RefNannySetupContext("setAdjacencyUseClosure", 0);
- /* "PETSc/DMPlex.pyx":400
+ /* "PETSc/DMPlex.pyx":447
*
* def setAdjacencyUseClosure(self, useClosure=True):
* cdef PetscBool flag = useClosure # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetAdjacencyUseClosure(self.dm, flag) )
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_useClosure)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 400, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_useClosure)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 447, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":401
+ /* "PETSc/DMPlex.pyx":448
* def setAdjacencyUseClosure(self, useClosure=True):
* cdef PetscBool flag = useClosure
* CHKERR( DMPlexSetAdjacencyUseClosure(self.dm, flag) ) # <<<<<<<<<<<<<<
*
- * def getPartitioner(self):
+ * def getAdjacencyUseClosure(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetAdjacencyUseClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 401, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetAdjacencyUseClosure(__pyx_v_self->__pyx_base.dm, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 448, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":399
- * CHKERR( DMPlexSetAdjacencyUseCone(self.dm, flag) )
+ /* "PETSc/DMPlex.pyx":446
+ * return toBool(flag)
*
* def setAdjacencyUseClosure(self, useClosure=True): # <<<<<<<<<<<<<<
* cdef PetscBool flag = useClosure
@@ -221784,32 +239519,641 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_90setAdjacencyUseClosure(stru
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":403
+/* "PETSc/DMPlex.pyx":450
+ * CHKERR( DMPlexSetAdjacencyUseClosure(self.dm, flag) )
+ *
+ * def getAdjacencyUseClosure(self): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseClosure(self.dm, &flag) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103getAdjacencyUseClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_102getAdjacencyUseClosure[] = "DMPlex.getAdjacencyUseClosure(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103getAdjacencyUseClosure(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getAdjacencyUseClosure (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getAdjacencyUseClosure", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getAdjacencyUseClosure", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_102getAdjacencyUseClosure(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102getAdjacencyUseClosure(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+ PetscBool __pyx_v_flag;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getAdjacencyUseClosure", 0);
+
+ /* "PETSc/DMPlex.pyx":451
+ *
+ * def getAdjacencyUseClosure(self):
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetAdjacencyUseClosure(self.dm, &flag) )
+ * return toBool(flag)
+ */
+ __pyx_v_flag = PETSC_FALSE;
+
+ /* "PETSc/DMPlex.pyx":452
+ * def getAdjacencyUseClosure(self):
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseClosure(self.dm, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetAdjacencyUseClosure(__pyx_v_self->__pyx_base.dm, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 452, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":453
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseClosure(self.dm, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
+ *
+ * def setAdjacencyUseAnchors(self, useAnchors=True):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 453, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":450
* CHKERR( DMPlexSetAdjacencyUseClosure(self.dm, flag) )
*
+ * def getAdjacencyUseClosure(self): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseClosure(self.dm, &flag) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getAdjacencyUseClosure", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":455
+ * return toBool(flag)
+ *
+ * def setAdjacencyUseAnchors(self, useAnchors=True): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = useAnchors
+ * CHKERR( DMPlexSetAdjacencyUseAnchors(self.dm, flag) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setAdjacencyUseAnchors(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_104setAdjacencyUseAnchors[] = "DMPlex.setAdjacencyUseAnchors(self, useAnchors=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setAdjacencyUseAnchors(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_useAnchors = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setAdjacencyUseAnchors (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_useAnchors,0};
+ PyObject* values[1] = {0};
+ values[0] = ((PyObject *)Py_True);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_useAnchors);
+ if (value) { values[0] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setAdjacencyUseAnchors") < 0)) __PYX_ERR(42, 455, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_useAnchors = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setAdjacencyUseAnchors", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 455, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setAdjacencyUseAnchors", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_104setAdjacencyUseAnchors(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_useAnchors);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_104setAdjacencyUseAnchors(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_useAnchors) {
+ PetscBool __pyx_v_flag;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscBool __pyx_t_1;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("setAdjacencyUseAnchors", 0);
+
+ /* "PETSc/DMPlex.pyx":456
+ *
+ * def setAdjacencyUseAnchors(self, useAnchors=True):
+ * cdef PetscBool flag = useAnchors # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexSetAdjacencyUseAnchors(self.dm, flag) )
+ *
+ */
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_useAnchors)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 456, __pyx_L1_error)
+ __pyx_v_flag = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":457
+ * def setAdjacencyUseAnchors(self, useAnchors=True):
+ * cdef PetscBool flag = useAnchors
+ * CHKERR( DMPlexSetAdjacencyUseAnchors(self.dm, flag) ) # <<<<<<<<<<<<<<
+ *
+ * def getAdjacencyUseAnchors(self):
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetAdjacencyUseAnchors(__pyx_v_self->__pyx_base.dm, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 457, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":455
+ * return toBool(flag)
+ *
+ * def setAdjacencyUseAnchors(self, useAnchors=True): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = useAnchors
+ * CHKERR( DMPlexSetAdjacencyUseAnchors(self.dm, flag) )
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setAdjacencyUseAnchors", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":459
+ * CHKERR( DMPlexSetAdjacencyUseAnchors(self.dm, flag) )
+ *
+ * def getAdjacencyUseAnchors(self): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseAnchors(self.dm, &flag) )
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_107getAdjacencyUseAnchors(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_106getAdjacencyUseAnchors[] = "DMPlex.getAdjacencyUseAnchors(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_107getAdjacencyUseAnchors(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getAdjacencyUseAnchors (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("getAdjacencyUseAnchors", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getAdjacencyUseAnchors", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_106getAdjacencyUseAnchors(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_106getAdjacencyUseAnchors(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+ PetscBool __pyx_v_flag;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ __Pyx_RefNannySetupContext("getAdjacencyUseAnchors", 0);
+
+ /* "PETSc/DMPlex.pyx":460
+ *
+ * def getAdjacencyUseAnchors(self):
+ * cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetAdjacencyUseAnchors(self.dm, &flag) )
+ * return toBool(flag)
+ */
+ __pyx_v_flag = PETSC_FALSE;
+
+ /* "PETSc/DMPlex.pyx":461
+ * def getAdjacencyUseAnchors(self):
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseAnchors(self.dm, &flag) ) # <<<<<<<<<<<<<<
+ * return toBool(flag)
+ *
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetAdjacencyUseAnchors(__pyx_v_self->__pyx_base.dm, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 461, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":462
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseAnchors(self.dm, &flag) )
+ * return toBool(flag) # <<<<<<<<<<<<<<
+ *
+ * def getAdjacency(self, p):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 462, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_r = __pyx_t_2;
+ __pyx_t_2 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":459
+ * CHKERR( DMPlexSetAdjacencyUseAnchors(self.dm, flag) )
+ *
+ * def getAdjacencyUseAnchors(self): # <<<<<<<<<<<<<<
+ * cdef PetscBool flag = PETSC_FALSE
+ * CHKERR( DMPlexGetAdjacencyUseAnchors(self.dm, &flag) )
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getAdjacencyUseAnchors", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":464
+ * return toBool(flag)
+ *
+ * def getAdjacency(self, p): # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(p)
+ * cdef PetscInt nadj = PETSC_DETERMINE
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_109getAdjacency(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_108getAdjacency[] = "DMPlex.getAdjacency(self, p)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_109getAdjacency(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_p = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getAdjacency (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_p,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getAdjacency") < 0)) __PYX_ERR(42, 464, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_p = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("getAdjacency", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 464, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getAdjacency", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_108getAdjacency(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_p);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_108getAdjacency(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_p) {
+ PetscInt __pyx_v_cp;
+ PetscInt __pyx_v_nadj;
+ PetscInt *__pyx_v_iadj;
+ PyArrayObject *__pyx_v_adjacency = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ char const *__pyx_t_5;
+ PyObject *__pyx_t_6 = NULL;
+ PyObject *__pyx_t_7 = NULL;
+ PyObject *__pyx_t_8 = NULL;
+ PyObject *__pyx_t_9 = NULL;
+ PyObject *__pyx_t_10 = NULL;
+ PyObject *__pyx_t_11 = NULL;
+ int __pyx_t_12;
+ __Pyx_RefNannySetupContext("getAdjacency", 0);
+
+ /* "PETSc/DMPlex.pyx":465
+ *
+ * def getAdjacency(self, p):
+ * cdef PetscInt cp = asInt(p) # <<<<<<<<<<<<<<
+ * cdef PetscInt nadj = PETSC_DETERMINE
+ * cdef PetscInt *iadj = NULL
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_p); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 465, __pyx_L1_error)
+ __pyx_v_cp = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":466
+ * def getAdjacency(self, p):
+ * cdef PetscInt cp = asInt(p)
+ * cdef PetscInt nadj = PETSC_DETERMINE # <<<<<<<<<<<<<<
+ * cdef PetscInt *iadj = NULL
+ * CHKERR( DMPlexGetAdjacency(self.dm, cp, &nadj, &iadj) )
+ */
+ __pyx_v_nadj = PETSC_DETERMINE;
+
+ /* "PETSc/DMPlex.pyx":467
+ * cdef PetscInt cp = asInt(p)
+ * cdef PetscInt nadj = PETSC_DETERMINE
+ * cdef PetscInt *iadj = NULL # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetAdjacency(self.dm, cp, &nadj, &iadj) )
+ * try:
+ */
+ __pyx_v_iadj = NULL;
+
+ /* "PETSc/DMPlex.pyx":468
+ * cdef PetscInt nadj = PETSC_DETERMINE
+ * cdef PetscInt *iadj = NULL
+ * CHKERR( DMPlexGetAdjacency(self.dm, cp, &nadj, &iadj) ) # <<<<<<<<<<<<<<
+ * try:
+ * adjacency = array_i(nadj, iadj)
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetAdjacency(__pyx_v_self->__pyx_base.dm, __pyx_v_cp, (&__pyx_v_nadj), (&__pyx_v_iadj))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 468, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":469
+ * cdef PetscInt *iadj = NULL
+ * CHKERR( DMPlexGetAdjacency(self.dm, cp, &nadj, &iadj) )
+ * try: # <<<<<<<<<<<<<<
+ * adjacency = array_i(nadj, iadj)
+ * finally:
+ */
+ /*try:*/ {
+
+ /* "PETSc/DMPlex.pyx":470
+ * CHKERR( DMPlexGetAdjacency(self.dm, cp, &nadj, &iadj) )
+ * try:
+ * adjacency = array_i(nadj, iadj) # <<<<<<<<<<<<<<
+ * finally:
+ * CHKERR( PetscFree(iadj) )
+ */
+ __pyx_t_3 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_i(__pyx_v_nadj, __pyx_v_iadj)); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 470, __pyx_L4_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_v_adjacency = ((PyArrayObject *)__pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DMPlex.pyx":472
+ * adjacency = array_i(nadj, iadj)
+ * finally:
+ * CHKERR( PetscFree(iadj) ) # <<<<<<<<<<<<<<
+ * return adjacency
+ *
+ */
+ /*finally:*/ {
+ /*normal exit:*/{
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_iadj)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 472, __pyx_L1_error)
+ goto __pyx_L5;
+ }
+ /*exception exit:*/{
+ __Pyx_PyThreadState_declare
+ __pyx_L4_error:;
+ __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
+ __Pyx_PyThreadState_assign
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11);
+ if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8) < 0)) __Pyx_ErrFetch(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8);
+ __Pyx_XGOTREF(__pyx_t_6);
+ __Pyx_XGOTREF(__pyx_t_7);
+ __Pyx_XGOTREF(__pyx_t_8);
+ __Pyx_XGOTREF(__pyx_t_9);
+ __Pyx_XGOTREF(__pyx_t_10);
+ __Pyx_XGOTREF(__pyx_t_11);
+ __pyx_t_2 = __pyx_lineno; __pyx_t_4 = __pyx_clineno; __pyx_t_5 = __pyx_filename;
+ {
+ __pyx_t_12 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_iadj)); if (unlikely(__pyx_t_12 == ((int)-1))) __PYX_ERR(42, 472, __pyx_L7_error)
+ }
+ if (PY_MAJOR_VERSION >= 3) {
+ __Pyx_XGIVEREF(__pyx_t_9);
+ __Pyx_XGIVEREF(__pyx_t_10);
+ __Pyx_XGIVEREF(__pyx_t_11);
+ __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
+ }
+ __Pyx_XGIVEREF(__pyx_t_6);
+ __Pyx_XGIVEREF(__pyx_t_7);
+ __Pyx_XGIVEREF(__pyx_t_8);
+ __Pyx_ErrRestore(__pyx_t_6, __pyx_t_7, __pyx_t_8);
+ __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
+ __pyx_lineno = __pyx_t_2; __pyx_clineno = __pyx_t_4; __pyx_filename = __pyx_t_5;
+ goto __pyx_L1_error;
+ __pyx_L7_error:;
+ if (PY_MAJOR_VERSION >= 3) {
+ __Pyx_XGIVEREF(__pyx_t_9);
+ __Pyx_XGIVEREF(__pyx_t_10);
+ __Pyx_XGIVEREF(__pyx_t_11);
+ __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
+ }
+ __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
+ __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0;
+ goto __pyx_L1_error;
+ }
+ __pyx_L5:;
+ }
+
+ /* "PETSc/DMPlex.pyx":473
+ * finally:
+ * CHKERR( PetscFree(iadj) )
+ * return adjacency # <<<<<<<<<<<<<<
+ *
+ * def setPartitioner(self, Partitioner part):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_adjacency));
+ __pyx_r = ((PyObject *)__pyx_v_adjacency);
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":464
+ * return toBool(flag)
+ *
+ * def getAdjacency(self, p): # <<<<<<<<<<<<<<
+ * cdef PetscInt cp = asInt(p)
+ * cdef PetscInt nadj = PETSC_DETERMINE
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getAdjacency", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_adjacency);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":475
+ * return adjacency
+ *
+ * def setPartitioner(self, Partitioner part): # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexSetPartitioner(self.dm, part.part) )
+ *
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_111setPartitioner(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_110setPartitioner[] = "DMPlex.setPartitioner(self, Partitioner part)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_111setPartitioner(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ struct PyPetscPartitionerObject *__pyx_v_part = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setPartitioner (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_part,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_part)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setPartitioner") < 0)) __PYX_ERR(42, 475, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_part = ((struct PyPetscPartitionerObject *)values[0]);
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setPartitioner", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 475, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setPartitioner", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_part), __pyx_ptype_8petsc4py_5PETSc_Partitioner, 0, "part", 0))) __PYX_ERR(42, 475, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_110setPartitioner(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_part);
+
+ /* function exit code */
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110setPartitioner(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscPartitionerObject *__pyx_v_part) {
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("setPartitioner", 0);
+
+ /* "PETSc/DMPlex.pyx":476
+ *
+ * def setPartitioner(self, Partitioner part):
+ * CHKERR( DMPlexSetPartitioner(self.dm, part.part) ) # <<<<<<<<<<<<<<
+ *
+ * def getPartitioner(self):
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetPartitioner(__pyx_v_self->__pyx_base.dm, __pyx_v_part->part)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 476, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":475
+ * return adjacency
+ *
+ * def setPartitioner(self, Partitioner part): # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexSetPartitioner(self.dm, part.part) )
+ *
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setPartitioner", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":478
+ * CHKERR( DMPlexSetPartitioner(self.dm, part.part) )
+ *
* def getPartitioner(self): # <<<<<<<<<<<<<<
* cdef Partitioner part = Partitioner()
* CHKERR( DMPlexGetPartitioner(self.dm, &part.part) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_93getPartitioner(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_92getPartitioner[] = "DMPlex.getPartitioner(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_93getPartitioner(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getPartitioner(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_112getPartitioner[] = "DMPlex.getPartitioner(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getPartitioner(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getPartitioner (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getPartitioner", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getPartitioner", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_112getPartitioner(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getPartitioner(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
struct PyPetscPartitionerObject *__pyx_v_part = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -221817,28 +240161,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(struct __pyx
int __pyx_t_2;
__Pyx_RefNannySetupContext("getPartitioner", 0);
- /* "PETSc/DMPlex.pyx":404
+ /* "PETSc/DMPlex.pyx":479
*
* def getPartitioner(self):
* cdef Partitioner part = Partitioner() # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetPartitioner(self.dm, &part.part) )
* PetscINCREF(part.obj)
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Partitioner), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 404, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Partitioner), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 479, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_part = ((struct PyPetscPartitionerObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":405
+ /* "PETSc/DMPlex.pyx":480
* def getPartitioner(self):
* cdef Partitioner part = Partitioner()
* CHKERR( DMPlexGetPartitioner(self.dm, &part.part) ) # <<<<<<<<<<<<<<
* PetscINCREF(part.obj)
* return part
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetPartitioner(__pyx_v_self->__pyx_base.dm, (&__pyx_v_part->part))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 405, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetPartitioner(__pyx_v_self->__pyx_base.dm, (&__pyx_v_part->part))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 480, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":406
+ /* "PETSc/DMPlex.pyx":481
* cdef Partitioner part = Partitioner()
* CHKERR( DMPlexGetPartitioner(self.dm, &part.part) )
* PetscINCREF(part.obj) # <<<<<<<<<<<<<<
@@ -221847,7 +240191,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(struct __pyx
*/
__pyx_f_8petsc4py_5PETSc_PetscINCREF(__pyx_v_part->__pyx_base.obj);
- /* "PETSc/DMPlex.pyx":407
+ /* "PETSc/DMPlex.pyx":482
* CHKERR( DMPlexGetPartitioner(self.dm, &part.part) )
* PetscINCREF(part.obj)
* return part # <<<<<<<<<<<<<<
@@ -221859,8 +240203,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(struct __pyx
__pyx_r = ((PyObject *)__pyx_v_part);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":403
- * CHKERR( DMPlexSetAdjacencyUseClosure(self.dm, flag) )
+ /* "PETSc/DMPlex.pyx":478
+ * CHKERR( DMPlexSetPartitioner(self.dm, part.part) )
*
* def getPartitioner(self): # <<<<<<<<<<<<<<
* cdef Partitioner part = Partitioner()
@@ -221879,7 +240223,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(struct __pyx
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":409
+/* "PETSc/DMPlex.pyx":484
* return part
*
* def distribute(self, overlap=0): # <<<<<<<<<<<<<<
@@ -221888,9 +240232,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_92getPartitioner(struct __pyx
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_95distribute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_94distribute[] = "DMPlex.distribute(self, overlap=0)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_95distribute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115distribute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_114distribute[] = "DMPlex.distribute(self, overlap=0)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115distribute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_overlap = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -221904,6 +240248,187 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_95distribute(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_overlap);
+ if (value) { values[0] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "distribute") < 0)) __PYX_ERR(42, 484, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_overlap = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("distribute", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 484, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_114distribute(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_overlap);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114distribute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap) {
+ DM __pyx_v_dmParallel;
+ PetscInt __pyx_v_coverlap;
+ struct PyPetscSFObject *__pyx_v_sf = 0;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ PyObject *__pyx_t_2 = NULL;
+ int __pyx_t_3;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("distribute", 0);
+
+ /* "PETSc/DMPlex.pyx":485
+ *
+ * def distribute(self, overlap=0):
+ * cdef PetscDM dmParallel = NULL # <<<<<<<<<<<<<<
+ * cdef PetscInt coverlap = asInt(overlap)
+ * cdef SF sf = SF()
+ */
+ __pyx_v_dmParallel = NULL;
+
+ /* "PETSc/DMPlex.pyx":486
+ * def distribute(self, overlap=0):
+ * cdef PetscDM dmParallel = NULL
+ * cdef PetscInt coverlap = asInt(overlap) # <<<<<<<<<<<<<<
+ * cdef SF sf = SF()
+ * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 486, __pyx_L1_error)
+ __pyx_v_coverlap = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":487
+ * cdef PetscDM dmParallel = NULL
+ * cdef PetscInt coverlap = asInt(overlap)
+ * cdef SF sf = SF() # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
+ * if dmParallel != NULL:
+ */
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 487, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_2);
+ __pyx_v_sf = ((struct PyPetscSFObject *)__pyx_t_2);
+ __pyx_t_2 = 0;
+
+ /* "PETSc/DMPlex.pyx":488
+ * cdef PetscInt coverlap = asInt(overlap)
+ * cdef SF sf = SF()
+ * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) ) # <<<<<<<<<<<<<<
+ * if dmParallel != NULL:
+ * PetscCLEAR(self.obj); self.dm = dmParallel
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexDistribute(__pyx_v_self->__pyx_base.dm, __pyx_v_coverlap, (&__pyx_v_sf->sf), (&__pyx_v_dmParallel))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(42, 488, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":489
+ * cdef SF sf = SF()
+ * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
+ * if dmParallel != NULL: # <<<<<<<<<<<<<<
+ * PetscCLEAR(self.obj); self.dm = dmParallel
+ * return sf
+ */
+ __pyx_t_4 = ((__pyx_v_dmParallel != NULL) != 0);
+ if (__pyx_t_4) {
+
+ /* "PETSc/DMPlex.pyx":490
+ * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
+ * if dmParallel != NULL:
+ * PetscCLEAR(self.obj); self.dm = dmParallel # <<<<<<<<<<<<<<
+ * return sf
+ *
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
+ __pyx_v_self->__pyx_base.dm = __pyx_v_dmParallel;
+
+ /* "PETSc/DMPlex.pyx":491
+ * if dmParallel != NULL:
+ * PetscCLEAR(self.obj); self.dm = dmParallel
+ * return sf # <<<<<<<<<<<<<<
+ *
+ * def distributeOverlap(self, overlap=0):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __Pyx_INCREF(((PyObject *)__pyx_v_sf));
+ __pyx_r = ((PyObject *)__pyx_v_sf);
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":489
+ * cdef SF sf = SF()
+ * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
+ * if dmParallel != NULL: # <<<<<<<<<<<<<<
+ * PetscCLEAR(self.obj); self.dm = dmParallel
+ * return sf
+ */
+ }
+
+ /* "PETSc/DMPlex.pyx":484
+ * return part
+ *
+ * def distribute(self, overlap=0): # <<<<<<<<<<<<<<
+ * cdef PetscDM dmParallel = NULL
+ * cdef PetscInt coverlap = asInt(overlap)
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_2);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF((PyObject *)__pyx_v_sf);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":493
+ * return sf
+ *
+ * def distributeOverlap(self, overlap=0): # <<<<<<<<<<<<<<
+ * cdef PetscInt coverlap = asInt(overlap)
+ * cdef SF sf = SF()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_117distributeOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_116distributeOverlap[] = "DMPlex.distributeOverlap(self, overlap=0)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_117distributeOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_overlap = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("distributeOverlap (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_overlap,0};
+ PyObject* values[1] = {0};
+ values[0] = ((PyObject *)__pyx_int_0);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221916,11 +240441,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_95distribute(PyObject *__pyx_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "distribute") < 0)) __PYX_ERR(42, 409, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "distributeOverlap") < 0)) __PYX_ERR(42, 493, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -221929,104 +240455,104 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_95distribute(PyObject *__pyx_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("distribute", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 409, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("distributeOverlap", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 493, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distributeOverlap", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_94distribute(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_overlap);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_116distributeOverlap(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_overlap);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_94distribute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap) {
- DM __pyx_v_dmParallel;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116distributeOverlap(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap) {
PetscInt __pyx_v_coverlap;
struct PyPetscSFObject *__pyx_v_sf = 0;
+ DM __pyx_v_dmOverlap;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
PetscInt __pyx_t_1;
PyObject *__pyx_t_2 = NULL;
int __pyx_t_3;
- __Pyx_RefNannySetupContext("distribute", 0);
+ __Pyx_RefNannySetupContext("distributeOverlap", 0);
- /* "PETSc/DMPlex.pyx":410
+ /* "PETSc/DMPlex.pyx":494
*
- * def distribute(self, overlap=0):
- * cdef PetscDM dmParallel = NULL # <<<<<<<<<<<<<<
- * cdef PetscInt coverlap = asInt(overlap)
- * cdef SF sf = SF()
- */
- __pyx_v_dmParallel = NULL;
-
- /* "PETSc/DMPlex.pyx":411
- * def distribute(self, overlap=0):
- * cdef PetscDM dmParallel = NULL
+ * def distributeOverlap(self, overlap=0):
* cdef PetscInt coverlap = asInt(overlap) # <<<<<<<<<<<<<<
* cdef SF sf = SF()
- * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
+ * cdef PetscDM dmOverlap = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 411, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 494, __pyx_L1_error)
__pyx_v_coverlap = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":412
- * cdef PetscDM dmParallel = NULL
+ /* "PETSc/DMPlex.pyx":495
+ * def distributeOverlap(self, overlap=0):
* cdef PetscInt coverlap = asInt(overlap)
* cdef SF sf = SF() # <<<<<<<<<<<<<<
- * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
- * PetscCLEAR(self.obj); self.dm = dmParallel
+ * cdef PetscDM dmOverlap = NULL
+ * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap,
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 412, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 495, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_sf = ((struct PyPetscSFObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":413
+ /* "PETSc/DMPlex.pyx":496
* cdef PetscInt coverlap = asInt(overlap)
* cdef SF sf = SF()
- * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) ) # <<<<<<<<<<<<<<
- * PetscCLEAR(self.obj); self.dm = dmParallel
- * return sf
+ * cdef PetscDM dmOverlap = NULL # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap,
+ * &sf.sf, &dmOverlap) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexDistribute(__pyx_v_self->__pyx_base.dm, __pyx_v_coverlap, (&__pyx_v_sf->sf), (&__pyx_v_dmParallel))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(42, 413, __pyx_L1_error)
+ __pyx_v_dmOverlap = NULL;
- /* "PETSc/DMPlex.pyx":414
+ /* "PETSc/DMPlex.pyx":497
* cdef SF sf = SF()
- * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
- * PetscCLEAR(self.obj); self.dm = dmParallel # <<<<<<<<<<<<<<
+ * cdef PetscDM dmOverlap = NULL
+ * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap, # <<<<<<<<<<<<<<
+ * &sf.sf, &dmOverlap) )
+ * PetscCLEAR(self.obj); self.dm = dmOverlap
+ */
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexDistributeOverlap(__pyx_v_self->__pyx_base.dm, __pyx_v_coverlap, (&__pyx_v_sf->sf), (&__pyx_v_dmOverlap))); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(42, 497, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":499
+ * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap,
+ * &sf.sf, &dmOverlap) )
+ * PetscCLEAR(self.obj); self.dm = dmOverlap # <<<<<<<<<<<<<<
* return sf
*
*/
__pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
- __pyx_v_self->__pyx_base.dm = __pyx_v_dmParallel;
+ __pyx_v_self->__pyx_base.dm = __pyx_v_dmOverlap;
- /* "PETSc/DMPlex.pyx":415
- * CHKERR( DMPlexDistribute(self.dm, coverlap, &sf.sf, &dmParallel) )
- * PetscCLEAR(self.obj); self.dm = dmParallel
+ /* "PETSc/DMPlex.pyx":500
+ * &sf.sf, &dmOverlap) )
+ * PetscCLEAR(self.obj); self.dm = dmOverlap
* return sf # <<<<<<<<<<<<<<
*
- * def distributeOverlap(self, overlap=0):
+ * def interpolate(self):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_sf));
__pyx_r = ((PyObject *)__pyx_v_sf);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":409
- * return part
+ /* "PETSc/DMPlex.pyx":493
+ * return sf
*
- * def distribute(self, overlap=0): # <<<<<<<<<<<<<<
- * cdef PetscDM dmParallel = NULL
+ * def distributeOverlap(self, overlap=0): # <<<<<<<<<<<<<<
* cdef PetscInt coverlap = asInt(overlap)
+ * cdef SF sf = SF()
*/
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distributeOverlap", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF((PyObject *)__pyx_v_sf);
@@ -222035,174 +240561,178 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_94distribute(struct __pyx_obj
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":417
+/* "PETSc/DMPlex.pyx":502
* return sf
*
- * def distributeOverlap(self, overlap=0): # <<<<<<<<<<<<<<
- * cdef PetscInt coverlap = asInt(overlap)
- * cdef SF sf = SF()
+ * def interpolate(self): # <<<<<<<<<<<<<<
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexInterpolate(self.dm, &newdm) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_97distributeOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_96distributeOverlap[] = "DMPlex.distributeOverlap(self, overlap=0)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_97distributeOverlap(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_overlap = 0;
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_119interpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_118interpolate[] = "DMPlex.interpolate(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_119interpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
- __Pyx_RefNannySetupContext("distributeOverlap (wrapper)", 0);
- {
- static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_overlap,0};
- PyObject* values[1] = {0};
- values[0] = ((PyObject *)__pyx_int_0);
- if (unlikely(__pyx_kwds)) {
- Py_ssize_t kw_args;
- const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
- switch (pos_args) {
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- kw_args = PyDict_Size(__pyx_kwds);
- switch (pos_args) {
- case 0:
- if (kw_args > 0) {
- PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_overlap);
- if (value) { values[0] = value; kw_args--; }
- }
- }
- if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "distributeOverlap") < 0)) __PYX_ERR(42, 417, __pyx_L3_error)
- }
- } else {
- switch (PyTuple_GET_SIZE(__pyx_args)) {
- case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
- case 0: break;
- default: goto __pyx_L5_argtuple_error;
- }
- }
- __pyx_v_overlap = values[0];
- }
- goto __pyx_L4_argument_unpacking_done;
- __pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("distributeOverlap", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 417, __pyx_L3_error)
- __pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distributeOverlap", __pyx_clineno, __pyx_lineno, __pyx_filename);
- __Pyx_RefNannyFinishContext();
- return NULL;
- __pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_96distributeOverlap(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_overlap);
+ __Pyx_RefNannySetupContext("interpolate (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("interpolate", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "interpolate", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_118interpolate(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_96distributeOverlap(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_overlap) {
- PetscInt __pyx_v_coverlap;
- struct PyPetscSFObject *__pyx_v_sf = 0;
- DM __pyx_v_dmOverlap;
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_118interpolate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+ DM __pyx_v_newdm;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
- PetscInt __pyx_t_1;
- PyObject *__pyx_t_2 = NULL;
- int __pyx_t_3;
- __Pyx_RefNannySetupContext("distributeOverlap", 0);
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("interpolate", 0);
- /* "PETSc/DMPlex.pyx":418
+ /* "PETSc/DMPlex.pyx":503
*
- * def distributeOverlap(self, overlap=0):
- * cdef PetscInt coverlap = asInt(overlap) # <<<<<<<<<<<<<<
- * cdef SF sf = SF()
- * cdef PetscDM dmOverlap = NULL
+ * def interpolate(self):
+ * cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexInterpolate(self.dm, &newdm) )
+ * PetscCLEAR(self.obj); self.dm = newdm
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_overlap); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 418, __pyx_L1_error)
- __pyx_v_coverlap = __pyx_t_1;
+ __pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":419
- * def distributeOverlap(self, overlap=0):
- * cdef PetscInt coverlap = asInt(overlap)
- * cdef SF sf = SF() # <<<<<<<<<<<<<<
- * cdef PetscDM dmOverlap = NULL
- * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap,
+ /* "PETSc/DMPlex.pyx":504
+ * def interpolate(self):
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexInterpolate(self.dm, &newdm) ) # <<<<<<<<<<<<<<
+ * PetscCLEAR(self.obj); self.dm = newdm
+ *
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_SF), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 419, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_2);
- __pyx_v_sf = ((struct PyPetscSFObject *)__pyx_t_2);
- __pyx_t_2 = 0;
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexInterpolate(__pyx_v_self->__pyx_base.dm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 504, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":420
- * cdef PetscInt coverlap = asInt(overlap)
- * cdef SF sf = SF()
- * cdef PetscDM dmOverlap = NULL # <<<<<<<<<<<<<<
- * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap,
- * &sf.sf, &dmOverlap) )
+ /* "PETSc/DMPlex.pyx":505
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexInterpolate(self.dm, &newdm) )
+ * PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
+ *
+ * def uninterpolate(self):
*/
- __pyx_v_dmOverlap = NULL;
+ __pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
+ __pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
- /* "PETSc/DMPlex.pyx":421
- * cdef SF sf = SF()
- * cdef PetscDM dmOverlap = NULL
- * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap, # <<<<<<<<<<<<<<
- * &sf.sf, &dmOverlap) )
- * PetscCLEAR(self.obj); self.dm = dmOverlap
+ /* "PETSc/DMPlex.pyx":502
+ * return sf
+ *
+ * def interpolate(self): # <<<<<<<<<<<<<<
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexInterpolate(self.dm, &newdm) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexDistributeOverlap(__pyx_v_self->__pyx_base.dm, __pyx_v_coverlap, (&__pyx_v_sf->sf), (&__pyx_v_dmOverlap))); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(42, 421, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":423
- * CHKERR( DMPlexDistributeOverlap(self.dm, coverlap,
- * &sf.sf, &dmOverlap) )
- * PetscCLEAR(self.obj); self.dm = dmOverlap # <<<<<<<<<<<<<<
- * return sf
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":507
+ * PetscCLEAR(self.obj); self.dm = newdm
*
+ * def uninterpolate(self): # <<<<<<<<<<<<<<
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexUninterpolate(self.dm, &newdm) )
*/
- __pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
- __pyx_v_self->__pyx_base.dm = __pyx_v_dmOverlap;
- /* "PETSc/DMPlex.pyx":424
- * &sf.sf, &dmOverlap) )
- * PetscCLEAR(self.obj); self.dm = dmOverlap
- * return sf # <<<<<<<<<<<<<<
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_121uninterpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_120uninterpolate[] = "DMPlex.uninterpolate(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_121uninterpolate(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("uninterpolate (wrapper)", 0);
+ if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
+ __Pyx_RaiseArgtupleInvalid("uninterpolate", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
+ if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "uninterpolate", 0))) return NULL;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_120uninterpolate(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_120uninterpolate(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+ DM __pyx_v_newdm;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ __Pyx_RefNannySetupContext("uninterpolate", 0);
+
+ /* "PETSc/DMPlex.pyx":508
*
- * def distributeField(self, SF sf not None,
+ * def uninterpolate(self):
+ * cdef PetscDM newdm = NULL # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexUninterpolate(self.dm, &newdm) )
+ * PetscCLEAR(self.obj); self.dm = newdm
*/
- __Pyx_XDECREF(__pyx_r);
- __Pyx_INCREF(((PyObject *)__pyx_v_sf));
- __pyx_r = ((PyObject *)__pyx_v_sf);
- goto __pyx_L0;
+ __pyx_v_newdm = NULL;
- /* "PETSc/DMPlex.pyx":417
- * return sf
+ /* "PETSc/DMPlex.pyx":509
+ * def uninterpolate(self):
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexUninterpolate(self.dm, &newdm) ) # <<<<<<<<<<<<<<
+ * PetscCLEAR(self.obj); self.dm = newdm
*
- * def distributeOverlap(self, overlap=0): # <<<<<<<<<<<<<<
- * cdef PetscInt coverlap = asInt(overlap)
- * cdef SF sf = SF()
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexUninterpolate(__pyx_v_self->__pyx_base.dm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 509, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":510
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexUninterpolate(self.dm, &newdm) )
+ * PetscCLEAR(self.obj); self.dm = newdm # <<<<<<<<<<<<<<
+ *
+ * def distributeField(self, SF sf, Section sec, Vec vec,
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
+ __pyx_v_self->__pyx_base.dm = __pyx_v_newdm;
+
+ /* "PETSc/DMPlex.pyx":507
+ * PetscCLEAR(self.obj); self.dm = newdm
+ *
+ * def uninterpolate(self): # <<<<<<<<<<<<<<
+ * cdef PetscDM newdm = NULL
+ * CHKERR( DMPlexUninterpolate(self.dm, &newdm) )
*/
/* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_XDECREF(__pyx_t_2);
- __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distributeOverlap", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.uninterpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
- __Pyx_XDECREF((PyObject *)__pyx_v_sf);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":426
- * return sf
+/* "PETSc/DMPlex.pyx":512
+ * PetscCLEAR(self.obj); self.dm = newdm
*
- * def distributeField(self, SF sf not None, # <<<<<<<<<<<<<<
- * Section sec not None, Vec vec not None,
+ * def distributeField(self, SF sf, Section sec, Vec vec, # <<<<<<<<<<<<<<
* Section newsec=None, Vec newvec=None):
+ * cdef MPI_Comm ccomm = MPI_COMM_NULL
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_98distributeField[] = "DMPlex.distributeField(self, SF sf, Section sec, Vec vec, Section newsec=None, Vec newvec=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_123distributeField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_122distributeField[] = "DMPlex.distributeField(self, SF sf, Section sec, Vec vec, Section newsec=None, Vec newvec=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_123distributeField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscSFObject *__pyx_v_sf = 0;
struct PyPetscSectionObject *__pyx_v_sec = 0;
struct PyPetscVecObject *__pyx_v_vec = 0;
@@ -222215,9 +240745,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *_
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_sf,&__pyx_n_s_sec,&__pyx_n_s_vec,&__pyx_n_s_newsec,&__pyx_n_s_newvec,0};
PyObject* values[5] = {0,0,0,0,0};
- /* "PETSc/DMPlex.pyx":428
- * def distributeField(self, SF sf not None,
- * Section sec not None, Vec vec not None,
+ /* "PETSc/DMPlex.pyx":513
+ *
+ * def distributeField(self, SF sf, Section sec, Vec vec,
* Section newsec=None, Vec newvec=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = MPI_COMM_NULL
* if newsec is None: newsec = Section()
@@ -222229,10 +240759,15 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -222241,21 +240776,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sf)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sec)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("distributeField", 0, 3, 5, 1); __PYX_ERR(42, 426, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("distributeField", 0, 3, 5, 1); __PYX_ERR(42, 512, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_vec)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("distributeField", 0, 3, 5, 2); __PYX_ERR(42, 426, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("distributeField", 0, 3, 5, 2); __PYX_ERR(42, 512, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_newsec);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_newvec);
@@ -222263,12 +240802,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "distributeField") < 0)) __PYX_ERR(42, 426, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "distributeField") < 0)) __PYX_ERR(42, 512, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
@@ -222284,25 +240825,25 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("distributeField", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 426, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("distributeField", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 512, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.distributeField", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sf), __pyx_ptype_8petsc4py_5PETSc_SF, 0, "sf", 0))) __PYX_ERR(42, 426, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "sec", 0))) __PYX_ERR(42, 427, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(42, 427, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_newsec), __pyx_ptype_8petsc4py_5PETSc_Section, 1, "newsec", 0))) __PYX_ERR(42, 428, __pyx_L1_error)
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_newvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "newvec", 0))) __PYX_ERR(42, 428, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_sf, __pyx_v_sec, __pyx_v_vec, __pyx_v_newsec, __pyx_v_newvec);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sf), __pyx_ptype_8petsc4py_5PETSc_SF, 0, "sf", 0))) __PYX_ERR(42, 512, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sec), __pyx_ptype_8petsc4py_5PETSc_Section, 0, "sec", 0))) __PYX_ERR(42, 512, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vec), __pyx_ptype_8petsc4py_5PETSc_Vec, 0, "vec", 0))) __PYX_ERR(42, 512, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_newsec), __pyx_ptype_8petsc4py_5PETSc_Section, 1, "newsec", 0))) __PYX_ERR(42, 513, __pyx_L1_error)
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_newvec), __pyx_ptype_8petsc4py_5PETSc_Vec, 1, "newvec", 0))) __PYX_ERR(42, 513, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_122distributeField(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_sf, __pyx_v_sec, __pyx_v_vec, __pyx_v_newsec, __pyx_v_newvec);
- /* "PETSc/DMPlex.pyx":426
- * return sf
+ /* "PETSc/DMPlex.pyx":512
+ * PetscCLEAR(self.obj); self.dm = newdm
*
- * def distributeField(self, SF sf not None, # <<<<<<<<<<<<<<
- * Section sec not None, Vec vec not None,
+ * def distributeField(self, SF sf, Section sec, Vec vec, # <<<<<<<<<<<<<<
* Section newsec=None, Vec newvec=None):
+ * cdef MPI_Comm ccomm = MPI_COMM_NULL
*/
/* function exit code */
@@ -222314,7 +240855,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField(PyObject *_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, struct PyPetscSectionObject *__pyx_v_newsec, struct PyPetscVecObject *__pyx_v_newvec) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_122distributeField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscSFObject *__pyx_v_sf, struct PyPetscSectionObject *__pyx_v_sec, struct PyPetscVecObject *__pyx_v_vec, struct PyPetscSectionObject *__pyx_v_newsec, struct PyPetscVecObject *__pyx_v_newvec) {
MPI_Comm __pyx_v_ccomm;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -222326,8 +240867,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
__Pyx_INCREF((PyObject *)__pyx_v_newsec);
__Pyx_INCREF((PyObject *)__pyx_v_newvec);
- /* "PETSc/DMPlex.pyx":429
- * Section sec not None, Vec vec not None,
+ /* "PETSc/DMPlex.pyx":514
+ * def distributeField(self, SF sf, Section sec, Vec vec,
* Section newsec=None, Vec newvec=None):
* cdef MPI_Comm ccomm = MPI_COMM_NULL # <<<<<<<<<<<<<<
* if newsec is None: newsec = Section()
@@ -222335,7 +240876,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
*/
__pyx_v_ccomm = MPI_COMM_NULL;
- /* "PETSc/DMPlex.pyx":430
+ /* "PETSc/DMPlex.pyx":515
* Section newsec=None, Vec newvec=None):
* cdef MPI_Comm ccomm = MPI_COMM_NULL
* if newsec is None: newsec = Section() # <<<<<<<<<<<<<<
@@ -222345,13 +240886,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
__pyx_t_1 = (((PyObject *)__pyx_v_newsec) == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 430, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 515, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_newsec, ((struct PyPetscSectionObject *)__pyx_t_3));
__pyx_t_3 = 0;
}
- /* "PETSc/DMPlex.pyx":431
+ /* "PETSc/DMPlex.pyx":516
* cdef MPI_Comm ccomm = MPI_COMM_NULL
* if newsec is None: newsec = Section()
* if newvec is None: newvec = Vec() # <<<<<<<<<<<<<<
@@ -222361,13 +240902,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
__pyx_t_2 = (((PyObject *)__pyx_v_newvec) == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 431, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Vec), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 516, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_newvec, ((struct PyPetscVecObject *)__pyx_t_3));
__pyx_t_3 = 0;
}
- /* "PETSc/DMPlex.pyx":432
+ /* "PETSc/DMPlex.pyx":517
* if newsec is None: newsec = Section()
* if newvec is None: newvec = Vec()
* if newsec.sec == NULL: # <<<<<<<<<<<<<<
@@ -222377,25 +240918,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
__pyx_t_1 = ((__pyx_v_newsec->sec == NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/DMPlex.pyx":433
+ /* "PETSc/DMPlex.pyx":518
* if newvec is None: newvec = Vec()
* if newsec.sec == NULL:
* CHKERR( PetscObjectGetComm(<PetscObject>sec.sec, &ccomm) ) # <<<<<<<<<<<<<<
* CHKERR( PetscSectionCreate(ccomm, &newsec.sec) )
* if newvec.vec == NULL:
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_sec->sec), (&__pyx_v_ccomm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 433, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_sec->sec), (&__pyx_v_ccomm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 518, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":434
+ /* "PETSc/DMPlex.pyx":519
* if newsec.sec == NULL:
* CHKERR( PetscObjectGetComm(<PetscObject>sec.sec, &ccomm) )
* CHKERR( PetscSectionCreate(ccomm, &newsec.sec) ) # <<<<<<<<<<<<<<
* if newvec.vec == NULL:
* CHKERR( PetscObjectGetComm(<PetscObject>vec.vec, &ccomm) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionCreate(__pyx_v_ccomm, (&__pyx_v_newsec->sec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 434, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSectionCreate(__pyx_v_ccomm, (&__pyx_v_newsec->sec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 519, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":432
+ /* "PETSc/DMPlex.pyx":517
* if newsec is None: newsec = Section()
* if newvec is None: newvec = Vec()
* if newsec.sec == NULL: # <<<<<<<<<<<<<<
@@ -222404,7 +240945,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
*/
}
- /* "PETSc/DMPlex.pyx":435
+ /* "PETSc/DMPlex.pyx":520
* CHKERR( PetscObjectGetComm(<PetscObject>sec.sec, &ccomm) )
* CHKERR( PetscSectionCreate(ccomm, &newsec.sec) )
* if newvec.vec == NULL: # <<<<<<<<<<<<<<
@@ -222414,25 +240955,25 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
__pyx_t_1 = ((__pyx_v_newvec->vec == NULL) != 0);
if (__pyx_t_1) {
- /* "PETSc/DMPlex.pyx":436
+ /* "PETSc/DMPlex.pyx":521
* CHKERR( PetscSectionCreate(ccomm, &newsec.sec) )
* if newvec.vec == NULL:
* CHKERR( PetscObjectGetComm(<PetscObject>vec.vec, &ccomm) ) # <<<<<<<<<<<<<<
* CHKERR( VecCreate(ccomm, &newvec.vec) )
* CHKERR( DMPlexDistributeField(self.dm, sf.sf,
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_vec->vec), (&__pyx_v_ccomm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 436, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetComm(((PetscObject)__pyx_v_vec->vec), (&__pyx_v_ccomm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 521, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":437
+ /* "PETSc/DMPlex.pyx":522
* if newvec.vec == NULL:
* CHKERR( PetscObjectGetComm(<PetscObject>vec.vec, &ccomm) )
* CHKERR( VecCreate(ccomm, &newvec.vec) ) # <<<<<<<<<<<<<<
* CHKERR( DMPlexDistributeField(self.dm, sf.sf,
* sec.sec, vec.vec,
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec->vec))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 437, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(VecCreate(__pyx_v_ccomm, (&__pyx_v_newvec->vec))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 522, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":435
+ /* "PETSc/DMPlex.pyx":520
* CHKERR( PetscObjectGetComm(<PetscObject>sec.sec, &ccomm) )
* CHKERR( PetscSectionCreate(ccomm, &newsec.sec) )
* if newvec.vec == NULL: # <<<<<<<<<<<<<<
@@ -222441,16 +240982,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
*/
}
- /* "PETSc/DMPlex.pyx":438
+ /* "PETSc/DMPlex.pyx":523
* CHKERR( PetscObjectGetComm(<PetscObject>vec.vec, &ccomm) )
* CHKERR( VecCreate(ccomm, &newvec.vec) )
* CHKERR( DMPlexDistributeField(self.dm, sf.sf, # <<<<<<<<<<<<<<
* sec.sec, vec.vec,
* newsec.sec, newvec.vec))
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexDistributeField(__pyx_v_self->__pyx_base.dm, __pyx_v_sf->sf, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_newsec->sec, __pyx_v_newvec->vec)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 438, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexDistributeField(__pyx_v_self->__pyx_base.dm, __pyx_v_sf->sf, __pyx_v_sec->sec, __pyx_v_vec->vec, __pyx_v_newsec->sec, __pyx_v_newvec->vec)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 523, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":441
+ /* "PETSc/DMPlex.pyx":526
* sec.sec, vec.vec,
* newsec.sec, newvec.vec))
* return (newsec, newvec) # <<<<<<<<<<<<<<
@@ -222458,7 +240999,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
* def createCoarsePointIS(self):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 441, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(((PyObject *)__pyx_v_newsec));
__Pyx_GIVEREF(((PyObject *)__pyx_v_newsec));
@@ -222470,12 +241011,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
__pyx_t_3 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":426
- * return sf
+ /* "PETSc/DMPlex.pyx":512
+ * PetscCLEAR(self.obj); self.dm = newdm
*
- * def distributeField(self, SF sf not None, # <<<<<<<<<<<<<<
- * Section sec not None, Vec vec not None,
+ * def distributeField(self, SF sf, Section sec, Vec vec, # <<<<<<<<<<<<<<
* Section newsec=None, Vec newvec=None):
+ * cdef MPI_Comm ccomm = MPI_COMM_NULL
*/
/* function exit code */
@@ -222491,7 +241032,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":443
+/* "PETSc/DMPlex.pyx":528
* return (newsec, newvec)
*
* def createCoarsePointIS(self): # <<<<<<<<<<<<<<
@@ -222500,23 +241041,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_98distributeField(struct __py
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_101createCoarsePointIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS[] = "DMPlex.createCoarsePointIS(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_101createCoarsePointIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_125createCoarsePointIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_124createCoarsePointIS[] = "DMPlex.createCoarsePointIS(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_125createCoarsePointIS(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("createCoarsePointIS (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("createCoarsePointIS", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "createCoarsePointIS", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_124createCoarsePointIS(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_124createCoarsePointIS(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
struct PyPetscISObject *__pyx_v_fpoint = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -222524,28 +241065,28 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("createCoarsePointIS", 0);
- /* "PETSc/DMPlex.pyx":444
+ /* "PETSc/DMPlex.pyx":529
*
* def createCoarsePointIS(self):
* cdef IS fpoint = IS() # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateCoarsePointIS(self.dm, &fpoint.iset) )
* return fpoint
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 444, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 529, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_fpoint = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":445
+ /* "PETSc/DMPlex.pyx":530
* def createCoarsePointIS(self):
* cdef IS fpoint = IS()
* CHKERR( DMPlexCreateCoarsePointIS(self.dm, &fpoint.iset) ) # <<<<<<<<<<<<<<
* return fpoint
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCoarsePointIS(__pyx_v_self->__pyx_base.dm, (&__pyx_v_fpoint->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 445, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateCoarsePointIS(__pyx_v_self->__pyx_base.dm, (&__pyx_v_fpoint->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 530, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":446
+ /* "PETSc/DMPlex.pyx":531
* cdef IS fpoint = IS()
* CHKERR( DMPlexCreateCoarsePointIS(self.dm, &fpoint.iset) )
* return fpoint # <<<<<<<<<<<<<<
@@ -222557,7 +241098,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS(struct
__pyx_r = ((PyObject *)__pyx_v_fpoint);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":443
+ /* "PETSc/DMPlex.pyx":528
* return (newsec, newvec)
*
* def createCoarsePointIS(self): # <<<<<<<<<<<<<<
@@ -222577,7 +241118,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS(struct
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":448
+/* "PETSc/DMPlex.pyx":533
* return fpoint
*
* def createSection(self, numComp, numDof, # <<<<<<<<<<<<<<
@@ -222586,9 +241127,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_102createSection[] = "DMPlex.createSection(self, numComp, numDof, bcField=None, bcComps=None, bcPoints=None, IS perm=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_127createSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_126createSection[] = "DMPlex.createSection(self, numComp, numDof, bcField=None, bcComps=None, bcPoints=None, IS perm=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_127createSection(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_numComp = 0;
PyObject *__pyx_v_numDof = 0;
PyObject *__pyx_v_bcField = 0;
@@ -222602,7 +241143,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_numComp,&__pyx_n_s_numDof,&__pyx_n_s_bcField,&__pyx_n_s_bcComps,&__pyx_n_s_bcPoints,&__pyx_n_s_perm,0};
PyObject* values[6] = {0,0,0,0,0,0};
- /* "PETSc/DMPlex.pyx":449
+ /* "PETSc/DMPlex.pyx":534
*
* def createSection(self, numComp, numDof,
* bcField=None, bcComps=None, bcPoints=None, # <<<<<<<<<<<<<<
@@ -222613,7 +241154,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__
values[3] = ((PyObject *)Py_None);
values[4] = ((PyObject *)Py_None);
- /* "PETSc/DMPlex.pyx":450
+ /* "PETSc/DMPlex.pyx":535
* def createSection(self, numComp, numDof,
* bcField=None, bcComps=None, bcPoints=None,
* IS perm=None): # <<<<<<<<<<<<<<
@@ -222626,11 +241167,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -222639,26 +241186,31 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numComp)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numDof)) != 0)) kw_args--;
else {
- __Pyx_RaiseArgtupleInvalid("createSection", 0, 2, 6, 1); __PYX_ERR(42, 448, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSection", 0, 2, 6, 1); __PYX_ERR(42, 533, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bcField);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bcComps);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_bcPoints);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_perm);
@@ -222666,14 +241218,18 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSection") < 0)) __PYX_ERR(42, 448, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "createSection") < 0)) __PYX_ERR(42, 533, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -222689,16 +241245,16 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("createSection", 0, 2, 6, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 448, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("createSection", 0, 2, 6, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 533, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.createSection", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_perm), __pyx_ptype_8petsc4py_5PETSc_IS, 1, "perm", 0))) __PYX_ERR(42, 450, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_numComp, __pyx_v_numDof, __pyx_v_bcField, __pyx_v_bcComps, __pyx_v_bcPoints, __pyx_v_perm);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_perm), __pyx_ptype_8petsc4py_5PETSc_IS, 1, "perm", 0))) __PYX_ERR(42, 535, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_126createSection(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_numComp, __pyx_v_numDof, __pyx_v_bcField, __pyx_v_bcComps, __pyx_v_bcPoints, __pyx_v_perm);
- /* "PETSc/DMPlex.pyx":448
+ /* "PETSc/DMPlex.pyx":533
* return fpoint
*
* def createSection(self, numComp, numDof, # <<<<<<<<<<<<<<
@@ -222715,7 +241271,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection(PyObject *__
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_numComp, PyObject *__pyx_v_numDof, PyObject *__pyx_v_bcField, PyObject *__pyx_v_bcComps, PyObject *__pyx_v_bcPoints, struct PyPetscISObject *__pyx_v_perm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_126createSection(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_numComp, PyObject *__pyx_v_numDof, PyObject *__pyx_v_bcField, PyObject *__pyx_v_bcComps, PyObject *__pyx_v_bcPoints, struct PyPetscISObject *__pyx_v_perm) {
PetscInt __pyx_v_dim;
PetscInt __pyx_v_ncomp;
PetscInt __pyx_v_ndof;
@@ -222747,7 +241303,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__Pyx_INCREF(__pyx_v_bcComps);
__Pyx_INCREF(__pyx_v_bcPoints);
- /* "PETSc/DMPlex.pyx":452
+ /* "PETSc/DMPlex.pyx":537
* IS perm=None):
* # topological dimension
* cdef PetscInt dim = 0 # <<<<<<<<<<<<<<
@@ -222756,16 +241312,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
__pyx_v_dim = 0;
- /* "PETSc/DMPlex.pyx":453
+ /* "PETSc/DMPlex.pyx":538
* # topological dimension
* cdef PetscInt dim = 0
* CHKERR( DMGetDimension(self.dm, &dim) ) # <<<<<<<<<<<<<<
* # components and DOFs
* cdef PetscInt ncomp = 0, ndof = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDimension(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 453, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDimension(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 538, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":455
+ /* "PETSc/DMPlex.pyx":540
* CHKERR( DMGetDimension(self.dm, &dim) )
* # components and DOFs
* cdef PetscInt ncomp = 0, ndof = 0 # <<<<<<<<<<<<<<
@@ -222775,7 +241331,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_v_ncomp = 0;
__pyx_v_ndof = 0;
- /* "PETSc/DMPlex.pyx":456
+ /* "PETSc/DMPlex.pyx":541
* # components and DOFs
* cdef PetscInt ncomp = 0, ndof = 0
* cdef PetscInt *icomp = NULL, *idof = NULL # <<<<<<<<<<<<<<
@@ -222785,31 +241341,31 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_v_icomp = NULL;
__pyx_v_idof = NULL;
- /* "PETSc/DMPlex.pyx":457
+ /* "PETSc/DMPlex.pyx":542
* cdef PetscInt ncomp = 0, ndof = 0
* cdef PetscInt *icomp = NULL, *idof = NULL
* numComp = iarray_i(numComp, &ncomp, &icomp) # <<<<<<<<<<<<<<
* numDof = iarray_i(numDof, &ndof, &idof)
* assert ndof == ncomp*(dim+1)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_numComp, (&__pyx_v_ncomp), (&__pyx_v_icomp))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 457, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_numComp, (&__pyx_v_ncomp), (&__pyx_v_icomp))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 542, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_numComp, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":458
+ /* "PETSc/DMPlex.pyx":543
* cdef PetscInt *icomp = NULL, *idof = NULL
* numComp = iarray_i(numComp, &ncomp, &icomp)
* numDof = iarray_i(numDof, &ndof, &idof) # <<<<<<<<<<<<<<
* assert ndof == ncomp*(dim+1)
* # boundary conditions
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_numDof, (&__pyx_v_ndof), (&__pyx_v_idof))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 458, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_numDof, (&__pyx_v_ndof), (&__pyx_v_idof))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 543, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_numDof, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":459
+ /* "PETSc/DMPlex.pyx":544
* numComp = iarray_i(numComp, &ncomp, &icomp)
* numDof = iarray_i(numDof, &ndof, &idof)
* assert ndof == ncomp*(dim+1) # <<<<<<<<<<<<<<
@@ -222820,12 +241376,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
if (unlikely(!Py_OptimizeFlag)) {
if (unlikely(!((__pyx_v_ndof == (__pyx_v_ncomp * (__pyx_v_dim + 1))) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 459, __pyx_L1_error)
+ __PYX_ERR(42, 544, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":461
+ /* "PETSc/DMPlex.pyx":546
* assert ndof == ncomp*(dim+1)
* # boundary conditions
* cdef PetscInt nbc = 0, i = 0 # <<<<<<<<<<<<<<
@@ -222835,7 +241391,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_v_nbc = 0;
__pyx_v_i = 0;
- /* "PETSc/DMPlex.pyx":462
+ /* "PETSc/DMPlex.pyx":547
* # boundary conditions
* cdef PetscInt nbc = 0, i = 0
* cdef PetscInt *bcfield = NULL # <<<<<<<<<<<<<<
@@ -222844,7 +241400,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
__pyx_v_bcfield = NULL;
- /* "PETSc/DMPlex.pyx":463
+ /* "PETSc/DMPlex.pyx":548
* cdef PetscInt nbc = 0, i = 0
* cdef PetscInt *bcfield = NULL
* cdef PetscIS *bccomps = NULL # <<<<<<<<<<<<<<
@@ -222853,7 +241409,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
__pyx_v_bccomps = NULL;
- /* "PETSc/DMPlex.pyx":464
+ /* "PETSc/DMPlex.pyx":549
* cdef PetscInt *bcfield = NULL
* cdef PetscIS *bccomps = NULL
* cdef PetscIS *bcpoints = NULL # <<<<<<<<<<<<<<
@@ -222862,7 +241418,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
__pyx_v_bcpoints = NULL;
- /* "PETSc/DMPlex.pyx":465
+ /* "PETSc/DMPlex.pyx":550
* cdef PetscIS *bccomps = NULL
* cdef PetscIS *bcpoints = NULL
* if bcField is not None: # <<<<<<<<<<<<<<
@@ -222873,19 +241429,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "PETSc/DMPlex.pyx":466
+ /* "PETSc/DMPlex.pyx":551
* cdef PetscIS *bcpoints = NULL
* if bcField is not None:
* bcField = iarray_i(bcField, &nbc, &bcfield) # <<<<<<<<<<<<<<
* if bcComps is not None:
* bcComps = list(bcComps)
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_bcField, (&__pyx_v_nbc), (&__pyx_v_bcfield))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 466, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_iarray_i(__pyx_v_bcField, (&__pyx_v_nbc), (&__pyx_v_bcfield))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 551, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_bcField, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":467
+ /* "PETSc/DMPlex.pyx":552
* if bcField is not None:
* bcField = iarray_i(bcField, &nbc, &bcfield)
* if bcComps is not None: # <<<<<<<<<<<<<<
@@ -222896,19 +241452,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_t_3 = (__pyx_t_4 != 0);
if (__pyx_t_3) {
- /* "PETSc/DMPlex.pyx":468
+ /* "PETSc/DMPlex.pyx":553
* bcField = iarray_i(bcField, &nbc, &bcfield)
* if bcComps is not None:
* bcComps = list(bcComps) # <<<<<<<<<<<<<<
* assert len(bcComps) == nbc
* tmp1 = oarray_p(empty_p(nbc), NULL, <void**>&bccomps)
*/
- __pyx_t_2 = PySequence_List(__pyx_v_bcComps); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 468, __pyx_L1_error)
+ __pyx_t_2 = PySequence_List(__pyx_v_bcComps); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF_SET(__pyx_v_bcComps, __pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":469
+ /* "PETSc/DMPlex.pyx":554
* if bcComps is not None:
* bcComps = list(bcComps)
* assert len(bcComps) == nbc # <<<<<<<<<<<<<<
@@ -222917,30 +241473,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_5 = PyObject_Length(__pyx_v_bcComps); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(42, 469, __pyx_L1_error)
+ __pyx_t_5 = PyObject_Length(__pyx_v_bcComps); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(42, 554, __pyx_L1_error)
if (unlikely(!((__pyx_t_5 == __pyx_v_nbc) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 469, __pyx_L1_error)
+ __PYX_ERR(42, 554, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":470
+ /* "PETSc/DMPlex.pyx":555
* bcComps = list(bcComps)
* assert len(bcComps) == nbc
* tmp1 = oarray_p(empty_p(nbc), NULL, <void**>&bccomps) # <<<<<<<<<<<<<<
* for i from 0 <= i < nbc:
* bccomps[i] = (<IS?>bcComps[<Py_ssize_t>i]).iset
*/
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_nbc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 470, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_nbc)); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 555, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_2, NULL, ((void **)(&__pyx_v_bccomps)))); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 470, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_2, NULL, ((void **)(&__pyx_v_bccomps)))); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 555, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_tmp1 = ((PyArrayObject *)__pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/DMPlex.pyx":471
+ /* "PETSc/DMPlex.pyx":556
* assert len(bcComps) == nbc
* tmp1 = oarray_p(empty_p(nbc), NULL, <void**>&bccomps)
* for i from 0 <= i < nbc: # <<<<<<<<<<<<<<
@@ -222950,22 +241506,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_t_7 = __pyx_v_nbc;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_7; __pyx_v_i++) {
- /* "PETSc/DMPlex.pyx":472
+ /* "PETSc/DMPlex.pyx":557
* tmp1 = oarray_p(empty_p(nbc), NULL, <void**>&bccomps)
* for i from 0 <= i < nbc:
* bccomps[i] = (<IS?>bcComps[<Py_ssize_t>i]).iset # <<<<<<<<<<<<<<
* if bcPoints is not None:
* bcPoints = list(bcPoints)
*/
- __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_bcComps, ((Py_ssize_t)__pyx_v_i), Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 472, __pyx_L1_error)
+ __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_bcComps, ((Py_ssize_t)__pyx_v_i), Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 557, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- if (!(likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(42, 472, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(42, 557, __pyx_L1_error)
__pyx_t_8 = ((struct PyPetscISObject *)__pyx_t_6)->iset;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
(__pyx_v_bccomps[__pyx_v_i]) = __pyx_t_8;
}
- /* "PETSc/DMPlex.pyx":467
+ /* "PETSc/DMPlex.pyx":552
* if bcField is not None:
* bcField = iarray_i(bcField, &nbc, &bcfield)
* if bcComps is not None: # <<<<<<<<<<<<<<
@@ -222974,7 +241530,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
}
- /* "PETSc/DMPlex.pyx":473
+ /* "PETSc/DMPlex.pyx":558
* for i from 0 <= i < nbc:
* bccomps[i] = (<IS?>bcComps[<Py_ssize_t>i]).iset
* if bcPoints is not None: # <<<<<<<<<<<<<<
@@ -222985,19 +241541,19 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_t_4 = (__pyx_t_3 != 0);
if (__pyx_t_4) {
- /* "PETSc/DMPlex.pyx":474
+ /* "PETSc/DMPlex.pyx":559
* bccomps[i] = (<IS?>bcComps[<Py_ssize_t>i]).iset
* if bcPoints is not None:
* bcPoints = list(bcPoints) # <<<<<<<<<<<<<<
* assert len(bcPoints) == nbc
* tmp2 = oarray_p(empty_p(nbc), NULL, <void**>&bcpoints)
*/
- __pyx_t_6 = PySequence_List(__pyx_v_bcPoints); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 474, __pyx_L1_error)
+ __pyx_t_6 = PySequence_List(__pyx_v_bcPoints); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 559, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF_SET(__pyx_v_bcPoints, __pyx_t_6);
__pyx_t_6 = 0;
- /* "PETSc/DMPlex.pyx":475
+ /* "PETSc/DMPlex.pyx":560
* if bcPoints is not None:
* bcPoints = list(bcPoints)
* assert len(bcPoints) == nbc # <<<<<<<<<<<<<<
@@ -223006,30 +241562,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
#ifndef CYTHON_WITHOUT_ASSERTIONS
if (unlikely(!Py_OptimizeFlag)) {
- __pyx_t_5 = PyObject_Length(__pyx_v_bcPoints); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(42, 475, __pyx_L1_error)
+ __pyx_t_5 = PyObject_Length(__pyx_v_bcPoints); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(42, 560, __pyx_L1_error)
if (unlikely(!((__pyx_t_5 == __pyx_v_nbc) != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 475, __pyx_L1_error)
+ __PYX_ERR(42, 560, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":476
+ /* "PETSc/DMPlex.pyx":561
* bcPoints = list(bcPoints)
* assert len(bcPoints) == nbc
* tmp2 = oarray_p(empty_p(nbc), NULL, <void**>&bcpoints) # <<<<<<<<<<<<<<
* for i from 0 <= i < nbc:
* bcpoints[i] = (<IS?>bcPoints[<Py_ssize_t>i]).iset
*/
- __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_nbc)); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 476, __pyx_L1_error)
+ __pyx_t_6 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_empty_p(__pyx_v_nbc)); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 561, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_6, NULL, ((void **)(&__pyx_v_bcpoints)))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 476, __pyx_L1_error)
+ __pyx_t_2 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_oarray_p(__pyx_t_6, NULL, ((void **)(&__pyx_v_bcpoints)))); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 561, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_v_tmp2 = ((PyArrayObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":477
+ /* "PETSc/DMPlex.pyx":562
* assert len(bcPoints) == nbc
* tmp2 = oarray_p(empty_p(nbc), NULL, <void**>&bcpoints)
* for i from 0 <= i < nbc: # <<<<<<<<<<<<<<
@@ -223039,22 +241595,22 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_t_7 = __pyx_v_nbc;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_7; __pyx_v_i++) {
- /* "PETSc/DMPlex.pyx":478
+ /* "PETSc/DMPlex.pyx":563
* tmp2 = oarray_p(empty_p(nbc), NULL, <void**>&bcpoints)
* for i from 0 <= i < nbc:
* bcpoints[i] = (<IS?>bcPoints[<Py_ssize_t>i]).iset # <<<<<<<<<<<<<<
* else:
* raise ValueError("bcPoints is a required argument")
*/
- __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_bcPoints, ((Py_ssize_t)__pyx_v_i), Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 478, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_bcPoints, ((Py_ssize_t)__pyx_v_i), Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- if (!(likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(42, 478, __pyx_L1_error)
+ if (!(likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_8petsc4py_5PETSc_IS)))) __PYX_ERR(42, 563, __pyx_L1_error)
__pyx_t_8 = ((struct PyPetscISObject *)__pyx_t_2)->iset;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
(__pyx_v_bcpoints[__pyx_v_i]) = __pyx_t_8;
}
- /* "PETSc/DMPlex.pyx":473
+ /* "PETSc/DMPlex.pyx":558
* for i from 0 <= i < nbc:
* bccomps[i] = (<IS?>bcComps[<Py_ssize_t>i]).iset
* if bcPoints is not None: # <<<<<<<<<<<<<<
@@ -223064,7 +241620,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
goto __pyx_L7;
}
- /* "PETSc/DMPlex.pyx":480
+ /* "PETSc/DMPlex.pyx":565
* bcpoints[i] = (<IS?>bcPoints[<Py_ssize_t>i]).iset
* else:
* raise ValueError("bcPoints is a required argument") # <<<<<<<<<<<<<<
@@ -223072,15 +241628,15 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
* assert bcComps is None
*/
/*else*/ {
- __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__65, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 480, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__68, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 565, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_Raise(__pyx_t_2, 0, 0, 0);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
- __PYX_ERR(42, 480, __pyx_L1_error)
+ __PYX_ERR(42, 565, __pyx_L1_error)
}
__pyx_L7:;
- /* "PETSc/DMPlex.pyx":465
+ /* "PETSc/DMPlex.pyx":550
* cdef PetscIS *bccomps = NULL
* cdef PetscIS *bcpoints = NULL
* if bcField is not None: # <<<<<<<<<<<<<<
@@ -223090,7 +241646,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
goto __pyx_L3;
}
- /* "PETSc/DMPlex.pyx":482
+ /* "PETSc/DMPlex.pyx":567
* raise ValueError("bcPoints is a required argument")
* else:
* assert bcComps is None # <<<<<<<<<<<<<<
@@ -223103,12 +241659,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_t_4 = (__pyx_v_bcComps == Py_None);
if (unlikely(!(__pyx_t_4 != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 482, __pyx_L1_error)
+ __PYX_ERR(42, 567, __pyx_L1_error)
}
}
#endif
- /* "PETSc/DMPlex.pyx":483
+ /* "PETSc/DMPlex.pyx":568
* else:
* assert bcComps is None
* assert bcPoints is None # <<<<<<<<<<<<<<
@@ -223120,14 +241676,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_t_4 = (__pyx_v_bcPoints == Py_None);
if (unlikely(!(__pyx_t_4 != 0))) {
PyErr_SetNone(PyExc_AssertionError);
- __PYX_ERR(42, 483, __pyx_L1_error)
+ __PYX_ERR(42, 568, __pyx_L1_error)
}
}
#endif
}
__pyx_L3:;
- /* "PETSc/DMPlex.pyx":485
+ /* "PETSc/DMPlex.pyx":570
* assert bcPoints is None
* # optional chart permutations
* cdef PetscIS cperm = NULL # <<<<<<<<<<<<<<
@@ -223136,7 +241692,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
*/
__pyx_v_cperm = NULL;
- /* "PETSc/DMPlex.pyx":486
+ /* "PETSc/DMPlex.pyx":571
* # optional chart permutations
* cdef PetscIS cperm = NULL
* if perm is not None: cperm = perm.iset # <<<<<<<<<<<<<<
@@ -223150,40 +241706,40 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
__pyx_v_cperm = __pyx_t_8;
}
- /* "PETSc/DMPlex.pyx":488
+ /* "PETSc/DMPlex.pyx":573
* if perm is not None: cperm = perm.iset
* # create section
* cdef Section sec = Section() # <<<<<<<<<<<<<<
* CHKERR( DMPlexCreateSection(self.dm, dim, ncomp, icomp, idof,
* nbc, bcfield, bccomps, bcpoints,
*/
- __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 488, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Section), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 573, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_v_sec = ((struct PyPetscSectionObject *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":489
+ /* "PETSc/DMPlex.pyx":574
* # create section
* cdef Section sec = Section()
* CHKERR( DMPlexCreateSection(self.dm, dim, ncomp, icomp, idof, # <<<<<<<<<<<<<<
* nbc, bcfield, bccomps, bcpoints,
* cperm, &sec.sec) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateSection(__pyx_v_self->__pyx_base.dm, __pyx_v_dim, __pyx_v_ncomp, __pyx_v_icomp, __pyx_v_idof, __pyx_v_nbc, __pyx_v_bcfield, __pyx_v_bccomps, __pyx_v_bcpoints, __pyx_v_cperm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 489, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexCreateSection(__pyx_v_self->__pyx_base.dm, __pyx_v_dim, __pyx_v_ncomp, __pyx_v_icomp, __pyx_v_idof, __pyx_v_nbc, __pyx_v_bcfield, __pyx_v_bccomps, __pyx_v_bcpoints, __pyx_v_cperm, (&__pyx_v_sec->sec))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 574, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":492
+ /* "PETSc/DMPlex.pyx":577
* nbc, bcfield, bccomps, bcpoints,
* cperm, &sec.sec) )
* return sec # <<<<<<<<<<<<<<
*
- * def setRefinementUniform(self, refinementUniform=True):
+ * def getPointLocal(self, point):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_sec));
__pyx_r = ((PyObject *)__pyx_v_sec);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":448
+ /* "PETSc/DMPlex.pyx":533
* return fpoint
*
* def createSection(self, numComp, numDof, # <<<<<<<<<<<<<<
@@ -223211,18 +241767,646 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_102createSection(struct __pyx
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":494
+/* "PETSc/DMPlex.pyx":579
+ * return sec
+ *
+ * def getPointLocal(self, point): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_129getPointLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_128getPointLocal[] = "DMPlex.getPointLocal(self, point)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_129getPointLocal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_point = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getPointLocal (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_point,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getPointLocal") < 0)) __PYX_ERR(42, 579, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_point = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("getPointLocal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 579, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_128getPointLocal(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_point);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_128getPointLocal(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point) {
+ PetscInt __pyx_v_start;
+ PetscInt __pyx_v_end;
+ PetscInt __pyx_v_cpoint;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ PyObject *__pyx_t_4 = NULL;
+ PyObject *__pyx_t_5 = NULL;
+ __Pyx_RefNannySetupContext("getPointLocal", 0);
+
+ /* "PETSc/DMPlex.pyx":580
+ *
+ * def getPointLocal(self, point):
+ * cdef PetscInt start = 0, end = 0 # <<<<<<<<<<<<<<
+ * cdef PetscInt cpoint = asInt(point)
+ * CHKERR( DMPlexGetPointLocal(self.dm, cpoint, &start, &end) )
+ */
+ __pyx_v_start = 0;
+ __pyx_v_end = 0;
+
+ /* "PETSc/DMPlex.pyx":581
+ * def getPointLocal(self, point):
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetPointLocal(self.dm, cpoint, &start, &end) )
+ * return toInt(start), toInt(end)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 581, __pyx_L1_error)
+ __pyx_v_cpoint = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":582
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ * CHKERR( DMPlexGetPointLocal(self.dm, cpoint, &start, &end) ) # <<<<<<<<<<<<<<
+ * return toInt(start), toInt(end)
+ *
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetPointLocal(__pyx_v_self->__pyx_base.dm, __pyx_v_cpoint, (&__pyx_v_start), (&__pyx_v_end))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 582, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":583
+ * cdef PetscInt cpoint = asInt(point)
+ * CHKERR( DMPlexGetPointLocal(self.dm, cpoint, &start, &end) )
+ * return toInt(start), toInt(end) # <<<<<<<<<<<<<<
+ *
+ * def getPointLocalField(self, point, field):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_start); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 583, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_end); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 583, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 583, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_r = __pyx_t_5;
+ __pyx_t_5 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":579
* return sec
*
+ * def getPointLocal(self, point): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointLocal", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":585
+ * return toInt(start), toInt(end)
+ *
+ * def getPointLocalField(self, point, field): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_131getPointLocalField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_130getPointLocalField[] = "DMPlex.getPointLocalField(self, point, field)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_131getPointLocalField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_point = 0;
+ PyObject *__pyx_v_field = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getPointLocalField (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_point,&__pyx_n_s_field,0};
+ PyObject* values[2] = {0,0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("getPointLocalField", 1, 2, 2, 1); __PYX_ERR(42, 585, __pyx_L3_error)
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getPointLocalField") < 0)) __PYX_ERR(42, 585, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ }
+ __pyx_v_point = values[0];
+ __pyx_v_field = values[1];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("getPointLocalField", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 585, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointLocalField", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_130getPointLocalField(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_point, __pyx_v_field);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_130getPointLocalField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point, PyObject *__pyx_v_field) {
+ PetscInt __pyx_v_start;
+ PetscInt __pyx_v_end;
+ PetscInt __pyx_v_cpoint;
+ PetscInt __pyx_v_cfield;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ PyObject *__pyx_t_4 = NULL;
+ PyObject *__pyx_t_5 = NULL;
+ __Pyx_RefNannySetupContext("getPointLocalField", 0);
+
+ /* "PETSc/DMPlex.pyx":586
+ *
+ * def getPointLocalField(self, point, field):
+ * cdef PetscInt start = 0, end = 0 # <<<<<<<<<<<<<<
+ * cdef PetscInt cpoint = asInt(point)
+ * cdef PetscInt cfield = asInt(field)
+ */
+ __pyx_v_start = 0;
+ __pyx_v_end = 0;
+
+ /* "PETSc/DMPlex.pyx":587
+ * def getPointLocalField(self, point, field):
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point) # <<<<<<<<<<<<<<
+ * cdef PetscInt cfield = asInt(field)
+ * CHKERR( DMPlexGetPointLocalField(self.dm, cpoint, cfield, &start, &end) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 587, __pyx_L1_error)
+ __pyx_v_cpoint = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":588
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ * cdef PetscInt cfield = asInt(field) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetPointLocalField(self.dm, cpoint, cfield, &start, &end) )
+ * return toInt(start), toInt(end)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 588, __pyx_L1_error)
+ __pyx_v_cfield = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":589
+ * cdef PetscInt cpoint = asInt(point)
+ * cdef PetscInt cfield = asInt(field)
+ * CHKERR( DMPlexGetPointLocalField(self.dm, cpoint, cfield, &start, &end) ) # <<<<<<<<<<<<<<
+ * return toInt(start), toInt(end)
+ *
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetPointLocalField(__pyx_v_self->__pyx_base.dm, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_start), (&__pyx_v_end))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 589, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":590
+ * cdef PetscInt cfield = asInt(field)
+ * CHKERR( DMPlexGetPointLocalField(self.dm, cpoint, cfield, &start, &end) )
+ * return toInt(start), toInt(end) # <<<<<<<<<<<<<<
+ *
+ * def getPointGlobal(self, point):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_start); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 590, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_end); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 590, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 590, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_r = __pyx_t_5;
+ __pyx_t_5 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":585
+ * return toInt(start), toInt(end)
+ *
+ * def getPointLocalField(self, point, field): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointLocalField", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":592
+ * return toInt(start), toInt(end)
+ *
+ * def getPointGlobal(self, point): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_133getPointGlobal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_132getPointGlobal[] = "DMPlex.getPointGlobal(self, point)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_133getPointGlobal(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_point = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getPointGlobal (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_point,0};
+ PyObject* values[1] = {0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getPointGlobal") < 0)) __PYX_ERR(42, 592, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ }
+ __pyx_v_point = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("getPointGlobal", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 592, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointGlobal", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_132getPointGlobal(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_point);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_132getPointGlobal(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point) {
+ PetscInt __pyx_v_start;
+ PetscInt __pyx_v_end;
+ PetscInt __pyx_v_cpoint;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ PyObject *__pyx_t_4 = NULL;
+ PyObject *__pyx_t_5 = NULL;
+ __Pyx_RefNannySetupContext("getPointGlobal", 0);
+
+ /* "PETSc/DMPlex.pyx":593
+ *
+ * def getPointGlobal(self, point):
+ * cdef PetscInt start = 0, end = 0 # <<<<<<<<<<<<<<
+ * cdef PetscInt cpoint = asInt(point)
+ * CHKERR( DMPlexGetPointGlobal(self.dm, cpoint, &start, &end) )
+ */
+ __pyx_v_start = 0;
+ __pyx_v_end = 0;
+
+ /* "PETSc/DMPlex.pyx":594
+ * def getPointGlobal(self, point):
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetPointGlobal(self.dm, cpoint, &start, &end) )
+ * return toInt(start), toInt(end)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 594, __pyx_L1_error)
+ __pyx_v_cpoint = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":595
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ * CHKERR( DMPlexGetPointGlobal(self.dm, cpoint, &start, &end) ) # <<<<<<<<<<<<<<
+ * return toInt(start), toInt(end)
+ *
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetPointGlobal(__pyx_v_self->__pyx_base.dm, __pyx_v_cpoint, (&__pyx_v_start), (&__pyx_v_end))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 595, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":596
+ * cdef PetscInt cpoint = asInt(point)
+ * CHKERR( DMPlexGetPointGlobal(self.dm, cpoint, &start, &end) )
+ * return toInt(start), toInt(end) # <<<<<<<<<<<<<<
+ *
+ * def getPointGlobalField(self, point, field):
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_start); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 596, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_end); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 596, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 596, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_r = __pyx_t_5;
+ __pyx_t_5 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":592
+ * return toInt(start), toInt(end)
+ *
+ * def getPointGlobal(self, point): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointGlobal", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":598
+ * return toInt(start), toInt(end)
+ *
+ * def getPointGlobalField(self, point, field): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_135getPointGlobalField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_134getPointGlobalField[] = "DMPlex.getPointGlobalField(self, point, field)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_135getPointGlobalField(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_point = 0;
+ PyObject *__pyx_v_field = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("getPointGlobalField (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_point,&__pyx_n_s_field,0};
+ PyObject* values[2] = {0,0};
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_point)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_field)) != 0)) kw_args--;
+ else {
+ __Pyx_RaiseArgtupleInvalid("getPointGlobalField", 1, 2, 2, 1); __PYX_ERR(42, 598, __pyx_L3_error)
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getPointGlobalField") < 0)) __PYX_ERR(42, 598, __pyx_L3_error)
+ }
+ } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
+ goto __pyx_L5_argtuple_error;
+ } else {
+ values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ }
+ __pyx_v_point = values[0];
+ __pyx_v_field = values[1];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("getPointGlobalField", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 598, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointGlobalField", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_134getPointGlobalField(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_point, __pyx_v_field);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_134getPointGlobalField(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_point, PyObject *__pyx_v_field) {
+ PetscInt __pyx_v_start;
+ PetscInt __pyx_v_end;
+ PetscInt __pyx_v_cpoint;
+ PetscInt __pyx_v_cfield;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PetscInt __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ PyObject *__pyx_t_4 = NULL;
+ PyObject *__pyx_t_5 = NULL;
+ __Pyx_RefNannySetupContext("getPointGlobalField", 0);
+
+ /* "PETSc/DMPlex.pyx":599
+ *
+ * def getPointGlobalField(self, point, field):
+ * cdef PetscInt start = 0, end = 0 # <<<<<<<<<<<<<<
+ * cdef PetscInt cpoint = asInt(point)
+ * cdef PetscInt cfield = asInt(field)
+ */
+ __pyx_v_start = 0;
+ __pyx_v_end = 0;
+
+ /* "PETSc/DMPlex.pyx":600
+ * def getPointGlobalField(self, point, field):
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point) # <<<<<<<<<<<<<<
+ * cdef PetscInt cfield = asInt(field)
+ * CHKERR( DMPlexGetPointGlobalField(self.dm, cpoint, cfield, &start, &end) )
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_point); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 600, __pyx_L1_error)
+ __pyx_v_cpoint = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":601
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ * cdef PetscInt cfield = asInt(field) # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexGetPointGlobalField(self.dm, cpoint, cfield, &start, &end) )
+ * return toInt(start), toInt(end)
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_field); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 601, __pyx_L1_error)
+ __pyx_v_cfield = __pyx_t_1;
+
+ /* "PETSc/DMPlex.pyx":602
+ * cdef PetscInt cpoint = asInt(point)
+ * cdef PetscInt cfield = asInt(field)
+ * CHKERR( DMPlexGetPointGlobalField(self.dm, cpoint, cfield, &start, &end) ) # <<<<<<<<<<<<<<
+ * return toInt(start), toInt(end)
+ *
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetPointGlobalField(__pyx_v_self->__pyx_base.dm, __pyx_v_cpoint, __pyx_v_cfield, (&__pyx_v_start), (&__pyx_v_end))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 602, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":603
+ * cdef PetscInt cfield = asInt(field)
+ * CHKERR( DMPlexGetPointGlobalField(self.dm, cpoint, cfield, &start, &end) )
+ * return toInt(start), toInt(end) # <<<<<<<<<<<<<<
+ *
+ * #
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_start); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 603, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_end); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 603, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 603, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ __Pyx_GIVEREF(__pyx_t_3);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
+ __pyx_t_3 = 0;
+ __pyx_t_4 = 0;
+ __pyx_r = __pyx_t_5;
+ __pyx_t_5 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":598
+ * return toInt(start), toInt(end)
+ *
+ * def getPointGlobalField(self, point, field): # <<<<<<<<<<<<<<
+ * cdef PetscInt start = 0, end = 0
+ * cdef PetscInt cpoint = asInt(point)
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_XDECREF(__pyx_t_4);
+ __Pyx_XDECREF(__pyx_t_5);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getPointGlobalField", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMPlex.pyx":607
+ * #
+ *
* def setRefinementUniform(self, refinementUniform=True): # <<<<<<<<<<<<<<
* cdef PetscBool flag = refinementUniform
* CHKERR( DMPlexSetRefinementUniform(self.dm, flag) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform[] = "DMPlex.setRefinementUniform(self, refinementUniform=True)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_137setRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_136setRefinementUniform[] = "DMPlex.setRefinementUniform(self, refinementUniform=True)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_137setRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_refinementUniform = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -223236,6 +242420,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setRefinementUniform(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -223248,11 +242433,12 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setRefinementUniform(PyObj
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRefinementUniform") < 0)) __PYX_ERR(42, 494, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRefinementUniform") < 0)) __PYX_ERR(42, 607, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -223261,20 +242447,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setRefinementUniform(PyObj
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setRefinementUniform", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 494, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setRefinementUniform", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 607, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setRefinementUniform", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_refinementUniform);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_136setRefinementUniform(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_refinementUniform);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementUniform) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_136setRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementUniform) {
PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -223282,27 +242468,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform(struc
int __pyx_t_2;
__Pyx_RefNannySetupContext("setRefinementUniform", 0);
- /* "PETSc/DMPlex.pyx":495
+ /* "PETSc/DMPlex.pyx":608
*
* def setRefinementUniform(self, refinementUniform=True):
* cdef PetscBool flag = refinementUniform # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetRefinementUniform(self.dm, flag) )
*
*/
- __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_refinementUniform)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 495, __pyx_L1_error)
+ __pyx_t_1 = ((PetscBool)__Pyx_PyInt_As_PetscBool(__pyx_v_refinementUniform)); if (unlikely(PyErr_Occurred())) __PYX_ERR(42, 608, __pyx_L1_error)
__pyx_v_flag = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":496
+ /* "PETSc/DMPlex.pyx":609
* def setRefinementUniform(self, refinementUniform=True):
* cdef PetscBool flag = refinementUniform
* CHKERR( DMPlexSetRefinementUniform(self.dm, flag) ) # <<<<<<<<<<<<<<
*
* def getRefinementUniform(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetRefinementUniform(__pyx_v_self->__pyx_base.dm, __pyx_v_flag)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 496, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetRefinementUniform(__pyx_v_self->__pyx_base.dm, __pyx_v_flag)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 609, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":494
- * return sec
+ /* "PETSc/DMPlex.pyx":607
+ * #
*
* def setRefinementUniform(self, refinementUniform=True): # <<<<<<<<<<<<<<
* cdef PetscBool flag = refinementUniform
@@ -223321,7 +242507,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform(struc
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":498
+/* "PETSc/DMPlex.pyx":611
* CHKERR( DMPlexSetRefinementUniform(self.dm, flag) )
*
* def getRefinementUniform(self): # <<<<<<<<<<<<<<
@@ -223330,23 +242516,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform(struc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_107getRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform[] = "DMPlex.getRefinementUniform(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_107getRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_139getRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_138getRefinementUniform[] = "DMPlex.getRefinementUniform(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_139getRefinementUniform(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getRefinementUniform (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getRefinementUniform", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRefinementUniform", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_138getRefinementUniform(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_138getRefinementUniform(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PetscBool __pyx_v_flag;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -223354,39 +242540,39 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform(struc
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getRefinementUniform", 0);
- /* "PETSc/DMPlex.pyx":499
+ /* "PETSc/DMPlex.pyx":612
*
* def getRefinementUniform(self):
* cdef PetscBool flag = PETSC_FALSE # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetRefinementUniform(self.dm, &flag) )
- * return <bint> flag
+ * return toBool(flag)
*/
__pyx_v_flag = PETSC_FALSE;
- /* "PETSc/DMPlex.pyx":500
+ /* "PETSc/DMPlex.pyx":613
* def getRefinementUniform(self):
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( DMPlexGetRefinementUniform(self.dm, &flag) ) # <<<<<<<<<<<<<<
- * return <bint> flag
+ * return toBool(flag)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetRefinementUniform(__pyx_v_self->__pyx_base.dm, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 500, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetRefinementUniform(__pyx_v_self->__pyx_base.dm, (&__pyx_v_flag))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 613, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":501
+ /* "PETSc/DMPlex.pyx":614
* cdef PetscBool flag = PETSC_FALSE
* CHKERR( DMPlexGetRefinementUniform(self.dm, &flag) )
- * return <bint> flag # <<<<<<<<<<<<<<
+ * return toBool(flag) # <<<<<<<<<<<<<<
*
* def setRefinementLimit(self, refinementLimit):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __Pyx_PyInt_From_PetscBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 501, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toBool(__pyx_v_flag); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":498
+ /* "PETSc/DMPlex.pyx":611
* CHKERR( DMPlexSetRefinementUniform(self.dm, flag) )
*
* def getRefinementUniform(self): # <<<<<<<<<<<<<<
@@ -223405,8 +242591,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform(struc
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":503
- * return <bint> flag
+/* "PETSc/DMPlex.pyx":616
+ * return toBool(flag)
*
* def setRefinementLimit(self, refinementLimit): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(refinementLimit)
@@ -223414,9 +242600,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform(struc
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_109setRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit[] = "DMPlex.setRefinementLimit(self, refinementLimit)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_109setRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_141setRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_140setRefinementLimit[] = "DMPlex.setRefinementLimit(self, refinementLimit)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_141setRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_refinementLimit = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -223429,6 +242615,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_109setRefinementLimit(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -223439,7 +242626,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_109setRefinementLimit(PyObjec
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRefinementLimit") < 0)) __PYX_ERR(42, 503, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setRefinementLimit") < 0)) __PYX_ERR(42, 616, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -223450,20 +242637,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_109setRefinementLimit(PyObjec
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setRefinementLimit", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 503, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setRefinementLimit", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 616, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.setRefinementLimit", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_refinementLimit);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_140setRefinementLimit(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_refinementLimit);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementLimit) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_140setRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_refinementLimit) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -223471,27 +242658,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit(struct
int __pyx_t_2;
__Pyx_RefNannySetupContext("setRefinementLimit", 0);
- /* "PETSc/DMPlex.pyx":504
+ /* "PETSc/DMPlex.pyx":617
*
* def setRefinementLimit(self, refinementLimit):
* cdef PetscReal rval = asReal(refinementLimit) # <<<<<<<<<<<<<<
* CHKERR( DMPlexSetRefinementLimit(self.dm, rval) )
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_refinementLimit); if (unlikely(__pyx_t_1 == -1.0 && PyErr_Occurred())) __PYX_ERR(42, 504, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asReal(__pyx_v_refinementLimit); if (unlikely(__pyx_t_1 == ((PetscReal)-1.0) && PyErr_Occurred())) __PYX_ERR(42, 617, __pyx_L1_error)
__pyx_v_rval = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":505
+ /* "PETSc/DMPlex.pyx":618
* def setRefinementLimit(self, refinementLimit):
* cdef PetscReal rval = asReal(refinementLimit)
* CHKERR( DMPlexSetRefinementLimit(self.dm, rval) ) # <<<<<<<<<<<<<<
*
* def getRefinementLimit(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetRefinementLimit(__pyx_v_self->__pyx_base.dm, __pyx_v_rval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 505, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexSetRefinementLimit(__pyx_v_self->__pyx_base.dm, __pyx_v_rval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 618, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":503
- * return <bint> flag
+ /* "PETSc/DMPlex.pyx":616
+ * return toBool(flag)
*
* def setRefinementLimit(self, refinementLimit): # <<<<<<<<<<<<<<
* cdef PetscReal rval = asReal(refinementLimit)
@@ -223510,7 +242697,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit(struct
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":507
+/* "PETSc/DMPlex.pyx":620
* CHKERR( DMPlexSetRefinementLimit(self.dm, rval) )
*
* def getRefinementLimit(self): # <<<<<<<<<<<<<<
@@ -223519,23 +242706,23 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_111getRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit[] = "DMPlex.getRefinementLimit(self)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_111getRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_143getRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_142getRefinementLimit[] = "DMPlex.getRefinementLimit(self)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_143getRefinementLimit(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("getRefinementLimit (wrapper)", 0);
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
__Pyx_RaiseArgtupleInvalid("getRefinementLimit", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return NULL;}
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "getRefinementLimit", 0))) return NULL;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_142getRefinementLimit(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_142getRefinementLimit(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self) {
PetscReal __pyx_v_rval;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -223543,7 +242730,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(struct
PyObject *__pyx_t_2 = NULL;
__Pyx_RefNannySetupContext("getRefinementLimit", 0);
- /* "PETSc/DMPlex.pyx":508
+ /* "PETSc/DMPlex.pyx":621
*
* def getRefinementLimit(self):
* cdef PetscReal rval = 0.0 # <<<<<<<<<<<<<<
@@ -223552,16 +242739,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(struct
*/
__pyx_v_rval = 0.0;
- /* "PETSc/DMPlex.pyx":509
+ /* "PETSc/DMPlex.pyx":622
* def getRefinementLimit(self):
* cdef PetscReal rval = 0.0
* CHKERR( DMPlexGetRefinementLimit(self.dm, &rval) ) # <<<<<<<<<<<<<<
* return toReal(rval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetRefinementLimit(__pyx_v_self->__pyx_base.dm, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(42, 509, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetRefinementLimit(__pyx_v_self->__pyx_base.dm, (&__pyx_v_rval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(42, 622, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":510
+ /* "PETSc/DMPlex.pyx":623
* cdef PetscReal rval = 0.0
* CHKERR( DMPlexGetRefinementLimit(self.dm, &rval) )
* return toReal(rval) # <<<<<<<<<<<<<<
@@ -223569,13 +242756,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(struct
* def getOrdering(self, otype):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 510, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_rval); if (unlikely(!__pyx_t_2)) __PYX_ERR(42, 623, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_r = __pyx_t_2;
__pyx_t_2 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":507
+ /* "PETSc/DMPlex.pyx":620
* CHKERR( DMPlexSetRefinementLimit(self.dm, rval) )
*
* def getRefinementLimit(self): # <<<<<<<<<<<<<<
@@ -223594,7 +242781,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(struct
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":512
+/* "PETSc/DMPlex.pyx":625
* return toReal(rval)
*
* def getOrdering(self, otype): # <<<<<<<<<<<<<<
@@ -223603,9 +242790,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit(struct
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_112getOrdering[] = "DMPlex.getOrdering(self, otype)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_145getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_144getOrdering[] = "DMPlex.getOrdering(self, otype)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_145getOrdering(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_otype = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -223618,6 +242805,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getOrdering(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -223628,7 +242816,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getOrdering(PyObject *__py
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getOrdering") < 0)) __PYX_ERR(42, 512, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "getOrdering") < 0)) __PYX_ERR(42, 625, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -223639,20 +242827,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getOrdering(PyObject *__py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("getOrdering", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 512, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("getOrdering", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 625, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.getOrdering", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_112getOrdering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_otype);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_144getOrdering(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_otype);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getOrdering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_otype) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_144getOrdering(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_otype) {
const char* __pyx_v_cval;
DMLabel __pyx_v_label;
struct PyPetscISObject *__pyx_v_perm = 0;
@@ -223663,7 +242851,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getOrdering(struct __pyx_o
__Pyx_RefNannySetupContext("getOrdering", 0);
__Pyx_INCREF(__pyx_v_otype);
- /* "PETSc/DMPlex.pyx":513
+ /* "PETSc/DMPlex.pyx":626
*
* def getOrdering(self, otype):
* cdef PetscMatOrderingType cval = NULL # <<<<<<<<<<<<<<
@@ -223672,7 +242860,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getOrdering(struct __pyx_o
*/
__pyx_v_cval = NULL;
- /* "PETSc/DMPlex.pyx":514
+ /* "PETSc/DMPlex.pyx":627
* def getOrdering(self, otype):
* cdef PetscMatOrderingType cval = NULL
* cdef PetscDMLabel label = NULL # <<<<<<<<<<<<<<
@@ -223681,52 +242869,52 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getOrdering(struct __pyx_o
*/
__pyx_v_label = NULL;
- /* "PETSc/DMPlex.pyx":515
+ /* "PETSc/DMPlex.pyx":628
* cdef PetscMatOrderingType cval = NULL
* cdef PetscDMLabel label = NULL
* otype = str2bytes(otype, &cval) # <<<<<<<<<<<<<<
* cdef IS perm = IS()
* CHKERR( DMPlexGetOrdering(self.dm, cval, label, &perm.iset) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_otype, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 515, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_otype, (&__pyx_v_cval)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 628, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF_SET(__pyx_v_otype, __pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":516
+ /* "PETSc/DMPlex.pyx":629
* cdef PetscDMLabel label = NULL
* otype = str2bytes(otype, &cval)
* cdef IS perm = IS() # <<<<<<<<<<<<<<
* CHKERR( DMPlexGetOrdering(self.dm, cval, label, &perm.iset) )
* return perm
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 516, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 629, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_perm = ((struct PyPetscISObject *)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/DMPlex.pyx":517
+ /* "PETSc/DMPlex.pyx":630
* otype = str2bytes(otype, &cval)
* cdef IS perm = IS()
* CHKERR( DMPlexGetOrdering(self.dm, cval, label, &perm.iset) ) # <<<<<<<<<<<<<<
* return perm
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetOrdering(__pyx_v_self->__pyx_base.dm, __pyx_v_cval, __pyx_v_label, (&__pyx_v_perm->iset))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 517, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexGetOrdering(__pyx_v_self->__pyx_base.dm, __pyx_v_cval, __pyx_v_label, (&__pyx_v_perm->iset))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 630, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":518
+ /* "PETSc/DMPlex.pyx":631
* cdef IS perm = IS()
* CHKERR( DMPlexGetOrdering(self.dm, cval, label, &perm.iset) )
* return perm # <<<<<<<<<<<<<<
*
- * def permute(self, IS perm not None):
+ * def permute(self, IS perm):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_perm));
__pyx_r = ((PyObject *)__pyx_v_perm);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":512
+ /* "PETSc/DMPlex.pyx":625
* return toReal(rval)
*
* def getOrdering(self, otype): # <<<<<<<<<<<<<<
@@ -223747,18 +242935,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_112getOrdering(struct __pyx_o
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":520
+/* "PETSc/DMPlex.pyx":633
* return perm
*
- * def permute(self, IS perm not None): # <<<<<<<<<<<<<<
+ * def permute(self, IS perm): # <<<<<<<<<<<<<<
* cdef DMPlex dm = <DMPlex>type(self)()
* CHKERR( DMPlexPermute(self.dm, perm.iset, &dm.dm) )
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115permute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_114permute[] = "DMPlex.permute(self, IS perm)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115permute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_147permute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_146permute[] = "DMPlex.permute(self, IS perm)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_147permute(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
struct PyPetscISObject *__pyx_v_perm = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -223771,6 +242959,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115permute(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -223781,7 +242970,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115permute(PyObject *__pyx_v_
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "permute") < 0)) __PYX_ERR(42, 520, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "permute") < 0)) __PYX_ERR(42, 633, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -223792,14 +242981,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115permute(PyObject *__pyx_v_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("permute", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 520, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("permute", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 633, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.permute", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_perm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "perm", 0))) __PYX_ERR(42, 520, __pyx_L1_error)
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_perm);
+ if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_perm), __pyx_ptype_8petsc4py_5PETSc_IS, 0, "perm", 0))) __PYX_ERR(42, 633, __pyx_L1_error)
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_146permute(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_perm);
/* function exit code */
goto __pyx_L0;
@@ -223810,7 +242999,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_115permute(PyObject *__pyx_v_
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscISObject *__pyx_v_perm) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_146permute(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, struct PyPetscISObject *__pyx_v_perm) {
struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_dm = 0;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -223820,16 +243009,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8
int __pyx_t_4;
__Pyx_RefNannySetupContext("permute", 0);
- /* "PETSc/DMPlex.pyx":521
+ /* "PETSc/DMPlex.pyx":634
*
- * def permute(self, IS perm not None):
+ * def permute(self, IS perm):
* cdef DMPlex dm = <DMPlex>type(self)() # <<<<<<<<<<<<<<
* CHKERR( DMPlexPermute(self.dm, perm.iset, &dm.dm) )
* return dm
*/
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
__pyx_t_2 = ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))); __pyx_t_3 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -223839,10 +243028,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8
}
}
if (__pyx_t_3) {
- __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 521, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 634, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
} else {
- __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 521, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 634, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
@@ -223852,16 +243041,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8
__pyx_v_dm = ((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_t_2);
__pyx_t_2 = 0;
- /* "PETSc/DMPlex.pyx":522
- * def permute(self, IS perm not None):
+ /* "PETSc/DMPlex.pyx":635
+ * def permute(self, IS perm):
* cdef DMPlex dm = <DMPlex>type(self)()
* CHKERR( DMPlexPermute(self.dm, perm.iset, &dm.dm) ) # <<<<<<<<<<<<<<
* return dm
*
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexPermute(__pyx_v_self->__pyx_base.dm, __pyx_v_perm->iset, (&__pyx_v_dm->__pyx_base.dm))); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(42, 522, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexPermute(__pyx_v_self->__pyx_base.dm, __pyx_v_perm->iset, (&__pyx_v_dm->__pyx_base.dm))); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(42, 635, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":523
+ /* "PETSc/DMPlex.pyx":636
* cdef DMPlex dm = <DMPlex>type(self)()
* CHKERR( DMPlexPermute(self.dm, perm.iset, &dm.dm) )
* return dm # <<<<<<<<<<<<<<
@@ -223873,10 +243062,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8
__pyx_r = ((PyObject *)__pyx_v_dm);
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":520
+ /* "PETSc/DMPlex.pyx":633
* return perm
*
- * def permute(self, IS perm not None): # <<<<<<<<<<<<<<
+ * def permute(self, IS perm): # <<<<<<<<<<<<<<
* cdef DMPlex dm = <DMPlex>type(self)()
* CHKERR( DMPlexPermute(self.dm, perm.iset, &dm.dm) )
*/
@@ -223895,7 +243084,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8
return __pyx_r;
}
-/* "PETSc/DMPlex.pyx":527
+/* "PETSc/DMPlex.pyx":640
* #
*
* def computeCellGeometryFVM(self, cell): # <<<<<<<<<<<<<<
@@ -223904,9 +243093,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_114permute(struct __pyx_obj_8
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_117computeCellGeometryFVM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM[] = "DMPlex.computeCellGeometryFVM(self, cell)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_117computeCellGeometryFVM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_149computeCellGeometryFVM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_148computeCellGeometryFVM[] = "DMPlex.computeCellGeometryFVM(self, cell)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_149computeCellGeometryFVM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_cell = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
@@ -223919,6 +243108,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_117computeCellGeometryFVM(PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -223929,7 +243119,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_117computeCellGeometryFVM(PyO
else goto __pyx_L5_argtuple_error;
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeCellGeometryFVM") < 0)) __PYX_ERR(42, 527, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "computeCellGeometryFVM") < 0)) __PYX_ERR(42, 640, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
goto __pyx_L5_argtuple_error;
@@ -223940,20 +243130,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_117computeCellGeometryFVM(PyO
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("computeCellGeometryFVM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 527, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("computeCellGeometryFVM", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 640, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMPlex.computeCellGeometryFVM", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_cell);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_148computeCellGeometryFVM(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_cell);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cell) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_148computeCellGeometryFVM(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_cell) {
PetscInt __pyx_v_dim;
PetscInt __pyx_v_ccell;
PetscReal __pyx_v_vol;
@@ -223969,7 +243159,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(str
PyObject *__pyx_t_6 = NULL;
__Pyx_RefNannySetupContext("computeCellGeometryFVM", 0);
- /* "PETSc/DMPlex.pyx":528
+ /* "PETSc/DMPlex.pyx":641
*
* def computeCellGeometryFVM(self, cell):
* cdef PetscInt dim = 0 # <<<<<<<<<<<<<<
@@ -223978,26 +243168,26 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(str
*/
__pyx_v_dim = 0;
- /* "PETSc/DMPlex.pyx":529
+ /* "PETSc/DMPlex.pyx":642
* def computeCellGeometryFVM(self, cell):
* cdef PetscInt dim = 0
* cdef PetscInt ccell = asInt(cell) # <<<<<<<<<<<<<<
* CHKERR( DMGetDimension(self.dm, &dim) )
* cdef PetscReal vol = 0, centroid[3], normal[3]
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_cell); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(42, 529, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_cell); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(42, 642, __pyx_L1_error)
__pyx_v_ccell = __pyx_t_1;
- /* "PETSc/DMPlex.pyx":530
+ /* "PETSc/DMPlex.pyx":643
* cdef PetscInt dim = 0
* cdef PetscInt ccell = asInt(cell)
* CHKERR( DMGetDimension(self.dm, &dim) ) # <<<<<<<<<<<<<<
* cdef PetscReal vol = 0, centroid[3], normal[3]
* CHKERR( DMPlexComputeCellGeometryFVM(self.dm, ccell, &vol, centroid, normal) )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDimension(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 530, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMGetDimension(__pyx_v_self->__pyx_base.dm, (&__pyx_v_dim))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 643, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":531
+ /* "PETSc/DMPlex.pyx":644
* cdef PetscInt ccell = asInt(cell)
* CHKERR( DMGetDimension(self.dm, &dim) )
* cdef PetscReal vol = 0, centroid[3], normal[3] # <<<<<<<<<<<<<<
@@ -224006,27 +243196,30 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(str
*/
__pyx_v_vol = 0.0;
- /* "PETSc/DMPlex.pyx":532
+ /* "PETSc/DMPlex.pyx":645
* CHKERR( DMGetDimension(self.dm, &dim) )
* cdef PetscReal vol = 0, centroid[3], normal[3]
* CHKERR( DMPlexComputeCellGeometryFVM(self.dm, ccell, &vol, centroid, normal) ) # <<<<<<<<<<<<<<
* return (toReal(vol), array_r(dim, centroid), array_r(dim, normal))
+ *
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexComputeCellGeometryFVM(__pyx_v_self->__pyx_base.dm, __pyx_v_ccell, (&__pyx_v_vol), __pyx_v_centroid, __pyx_v_normal)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(42, 532, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexComputeCellGeometryFVM(__pyx_v_self->__pyx_base.dm, __pyx_v_ccell, (&__pyx_v_vol), __pyx_v_centroid, __pyx_v_normal)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 645, __pyx_L1_error)
- /* "PETSc/DMPlex.pyx":533
+ /* "PETSc/DMPlex.pyx":646
* cdef PetscReal vol = 0, centroid[3], normal[3]
* CHKERR( DMPlexComputeCellGeometryFVM(self.dm, ccell, &vol, centroid, normal) )
* return (toReal(vol), array_r(dim, centroid), array_r(dim, normal)) # <<<<<<<<<<<<<<
+ *
+ * def constructGhostCells(self, labelName=None):
*/
__Pyx_XDECREF(__pyx_r);
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_vol); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 533, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_toReal(__pyx_v_vol); if (unlikely(!__pyx_t_3)) __PYX_ERR(42, 646, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_dim, __pyx_v_centroid)); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 533, __pyx_L1_error)
+ __pyx_t_4 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_dim, __pyx_v_centroid)); if (unlikely(!__pyx_t_4)) __PYX_ERR(42, 646, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_dim, __pyx_v_normal)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 533, __pyx_L1_error)
+ __pyx_t_5 = ((PyObject *)__pyx_f_8petsc4py_5PETSc_array_r(__pyx_v_dim, __pyx_v_normal)); if (unlikely(!__pyx_t_5)) __PYX_ERR(42, 646, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 533, __pyx_L1_error)
+ __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(42, 646, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_GIVEREF(__pyx_t_3);
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
@@ -224041,7 +243234,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(str
__pyx_t_6 = 0;
goto __pyx_L0;
- /* "PETSc/DMPlex.pyx":527
+ /* "PETSc/DMPlex.pyx":640
* #
*
* def computeCellGeometryFVM(self, cell): # <<<<<<<<<<<<<<
@@ -224063,6 +243256,171 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM(str
return __pyx_r;
}
+/* "PETSc/DMPlex.pyx":648
+ * return (toReal(vol), array_r(dim, centroid), array_r(dim, normal))
+ *
+ * def constructGhostCells(self, labelName=None): # <<<<<<<<<<<<<<
+ * cdef const_char *cname = NULL
+ * labelName = str2bytes(labelName, &cname)
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_151constructGhostCells(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_6DMPlex_150constructGhostCells[] = "DMPlex.constructGhostCells(self, labelName=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_6DMPlex_151constructGhostCells(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_labelName = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("constructGhostCells (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_labelName,0};
+ PyObject* values[1] = {0};
+ values[0] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_labelName);
+ if (value) { values[0] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "constructGhostCells") < 0)) __PYX_ERR(42, 648, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_labelName = values[0];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("constructGhostCells", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(42, 648, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.constructGhostCells", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_6DMPlex_150constructGhostCells(((struct __pyx_obj_8petsc4py_5PETSc_DMPlex *)__pyx_v_self), __pyx_v_labelName);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_6DMPlex_150constructGhostCells(struct __pyx_obj_8petsc4py_5PETSc_DMPlex *__pyx_v_self, PyObject *__pyx_v_labelName) {
+ const char *__pyx_v_cname;
+ PetscInt __pyx_v_numGhostCells;
+ DM __pyx_v_dmGhosted;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ PyObject *__pyx_t_1 = NULL;
+ int __pyx_t_2;
+ __Pyx_RefNannySetupContext("constructGhostCells", 0);
+ __Pyx_INCREF(__pyx_v_labelName);
+
+ /* "PETSc/DMPlex.pyx":649
+ *
+ * def constructGhostCells(self, labelName=None):
+ * cdef const_char *cname = NULL # <<<<<<<<<<<<<<
+ * labelName = str2bytes(labelName, &cname)
+ * cdef PetscInt numGhostCells = 0
+ */
+ __pyx_v_cname = NULL;
+
+ /* "PETSc/DMPlex.pyx":650
+ * def constructGhostCells(self, labelName=None):
+ * cdef const_char *cname = NULL
+ * labelName = str2bytes(labelName, &cname) # <<<<<<<<<<<<<<
+ * cdef PetscInt numGhostCells = 0
+ * cdef PetscDM dmGhosted = NULL
+ */
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_str2bytes(__pyx_v_labelName, (&__pyx_v_cname)); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 650, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF_SET(__pyx_v_labelName, __pyx_t_1);
+ __pyx_t_1 = 0;
+
+ /* "PETSc/DMPlex.pyx":651
+ * cdef const_char *cname = NULL
+ * labelName = str2bytes(labelName, &cname)
+ * cdef PetscInt numGhostCells = 0 # <<<<<<<<<<<<<<
+ * cdef PetscDM dmGhosted = NULL
+ * CHKERR( DMPlexConstructGhostCells(self.dm, cname, &numGhostCells, &dmGhosted))
+ */
+ __pyx_v_numGhostCells = 0;
+
+ /* "PETSc/DMPlex.pyx":652
+ * labelName = str2bytes(labelName, &cname)
+ * cdef PetscInt numGhostCells = 0
+ * cdef PetscDM dmGhosted = NULL # <<<<<<<<<<<<<<
+ * CHKERR( DMPlexConstructGhostCells(self.dm, cname, &numGhostCells, &dmGhosted))
+ * PetscCLEAR(self.obj); self.dm = dmGhosted
+ */
+ __pyx_v_dmGhosted = NULL;
+
+ /* "PETSc/DMPlex.pyx":653
+ * cdef PetscInt numGhostCells = 0
+ * cdef PetscDM dmGhosted = NULL
+ * CHKERR( DMPlexConstructGhostCells(self.dm, cname, &numGhostCells, &dmGhosted)) # <<<<<<<<<<<<<<
+ * PetscCLEAR(self.obj); self.dm = dmGhosted
+ * return toInt(numGhostCells)
+ */
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMPlexConstructGhostCells(__pyx_v_self->__pyx_base.dm, __pyx_v_cname, (&__pyx_v_numGhostCells), (&__pyx_v_dmGhosted))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(42, 653, __pyx_L1_error)
+
+ /* "PETSc/DMPlex.pyx":654
+ * cdef PetscDM dmGhosted = NULL
+ * CHKERR( DMPlexConstructGhostCells(self.dm, cname, &numGhostCells, &dmGhosted))
+ * PetscCLEAR(self.obj); self.dm = dmGhosted # <<<<<<<<<<<<<<
+ * return toInt(numGhostCells)
+ */
+ __pyx_f_8petsc4py_5PETSc_PetscCLEAR(__pyx_v_self->__pyx_base.__pyx_base.obj);
+ __pyx_v_self->__pyx_base.dm = __pyx_v_dmGhosted;
+
+ /* "PETSc/DMPlex.pyx":655
+ * CHKERR( DMPlexConstructGhostCells(self.dm, cname, &numGhostCells, &dmGhosted))
+ * PetscCLEAR(self.obj); self.dm = dmGhosted
+ * return toInt(numGhostCells) # <<<<<<<<<<<<<<
+ */
+ __Pyx_XDECREF(__pyx_r);
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_toInt(__pyx_v_numGhostCells); if (unlikely(!__pyx_t_1)) __PYX_ERR(42, 655, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_r = __pyx_t_1;
+ __pyx_t_1 = 0;
+ goto __pyx_L0;
+
+ /* "PETSc/DMPlex.pyx":648
+ * return (toReal(vol), array_r(dim, centroid), array_r(dim, normal))
+ *
+ * def constructGhostCells(self, labelName=None): # <<<<<<<<<<<<<<
+ * cdef const_char *cname = NULL
+ * labelName = str2bytes(labelName, &cname)
+ */
+
+ /* function exit code */
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_1);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMPlex.constructGhostCells", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_labelName);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
/* "PETSc/DMComposite.pyx":5
* cdef class DMComposite(DM):
*
@@ -224088,6 +243446,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_1create(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -224105,6 +243464,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_1create(PyObject *__pyx
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -224161,7 +243521,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_create(struct __pyx_obj
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(43, 8, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(43, 8, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":9
* cdef PetscDM newdm = NULL
@@ -224178,7 +243538,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_create(struct __pyx_obj
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
*
- * def addDM(self, DM dm not None, *args):
+ * def addDM(self, DM dm, *args):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
@@ -224206,7 +243566,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_create(struct __pyx_obj
/* "PETSc/DMComposite.pyx":12
* return self
*
- * def addDM(self, DM dm not None, *args): # <<<<<<<<<<<<<<
+ * def addDM(self, DM dm, *args): # <<<<<<<<<<<<<<
* """Add DM to composite"""
* CHKERR( DMCompositeAddDM(self.dm, dm.dm) )
*/
@@ -224239,6 +243599,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_3addDM(PyObject *__pyx_
switch (pos_args) {
default:
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
}
kw_args = PyDict_Size(__pyx_kwds);
@@ -224292,13 +243653,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_2addDM(struct __pyx_obj
__Pyx_INCREF((PyObject *)__pyx_v_dm);
/* "PETSc/DMComposite.pyx":14
- * def addDM(self, DM dm not None, *args):
+ * def addDM(self, DM dm, *args):
* """Add DM to composite"""
* CHKERR( DMCompositeAddDM(self.dm, dm.dm) ) # <<<<<<<<<<<<<<
* cdef object item
* for item in args:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeAddDM(__pyx_v_self->__pyx_base.dm, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 14, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeAddDM(__pyx_v_self->__pyx_base.dm, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 14, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":16
* CHKERR( DMCompositeAddDM(self.dm, dm.dm) )
@@ -224310,7 +243671,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_2addDM(struct __pyx_obj
__pyx_t_2 = __pyx_v_args; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
for (;;) {
if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_4); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(43, 16, __pyx_L1_error)
#else
__pyx_t_4 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_4)) __PYX_ERR(43, 16, __pyx_L1_error)
@@ -224339,7 +243700,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_2addDM(struct __pyx_obj
*
* def getNumber(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeAddDM(__pyx_v_self->__pyx_base.dm, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 18, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeAddDM(__pyx_v_self->__pyx_base.dm, __pyx_v_dm->dm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 18, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":16
* CHKERR( DMCompositeAddDM(self.dm, dm.dm) )
@@ -224354,7 +243715,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_2addDM(struct __pyx_obj
/* "PETSc/DMComposite.pyx":12
* return self
*
- * def addDM(self, DM dm not None, *args): # <<<<<<<<<<<<<<
+ * def addDM(self, DM dm, *args): # <<<<<<<<<<<<<<
* """Add DM to composite"""
* CHKERR( DMCompositeAddDM(self.dm, dm.dm) )
*/
@@ -224424,7 +243785,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_4getNumber(struct __pyx
* return toInt(n)
* getNumberDM = getNumber
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 23, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 23, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":24
* cdef PetscInt n = 0
@@ -224525,7 +243886,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_6getEntries(struct __py
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&cdms)
* CHKERR( DMCompositeGetEntriesArray(self.dm, cdms) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 31, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 31, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":32
* cdef PetscDM *cdms = NULL
@@ -224549,7 +243910,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_6getEntries(struct __py
* cdef DM entry = None
* cdef list entries = []
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetEntriesArray(__pyx_v_self->__pyx_base.dm, __pyx_v_cdms)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 33, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetEntriesArray(__pyx_v_self->__pyx_base.dm, __pyx_v_cdms)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 33, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":34
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&cdms)
@@ -224624,7 +243985,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_6getEntries(struct __py
* return tuple(entries)
*
*/
- __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_entries, ((PyObject *)__pyx_v_entry)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(43, 40, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyList_Append(__pyx_v_entries, ((PyObject *)__pyx_v_entry)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(43, 40, __pyx_L1_error)
}
/* "PETSc/DMComposite.pyx":41
@@ -224632,7 +243993,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_6getEntries(struct __py
* entries.append(entry)
* return tuple(entries) # <<<<<<<<<<<<<<
*
- * def scatter(self, Vec gvec not None, lvecs):
+ * def scatter(self, Vec gvec, lvecs):
*/
__Pyx_XDECREF(__pyx_r);
__pyx_t_2 = PyList_AsTuple(__pyx_v_entries); if (unlikely(!__pyx_t_2)) __PYX_ERR(43, 41, __pyx_L1_error)
@@ -224667,7 +244028,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_6getEntries(struct __py
/* "PETSc/DMComposite.pyx":43
* return tuple(entries)
*
- * def scatter(self, Vec gvec not None, lvecs): # <<<<<<<<<<<<<<
+ * def scatter(self, Vec gvec, lvecs): # <<<<<<<<<<<<<<
* """Scatter coupled global vector into split local vectors"""
* cdef PetscInt i, n = 0
*/
@@ -224689,7 +244050,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_9scatter(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -224698,6 +244061,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_9scatter(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gvec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lvecs)) != 0)) kw_args--;
else {
@@ -224751,7 +244115,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_8scatter(struct __pyx_o
__Pyx_RefNannySetupContext("scatter", 0);
/* "PETSc/DMComposite.pyx":45
- * def scatter(self, Vec gvec not None, lvecs):
+ * def scatter(self, Vec gvec, lvecs):
* """Scatter coupled global vector into split local vectors"""
* cdef PetscInt i, n = 0 # <<<<<<<<<<<<<<
* CHKERR( DMCompositeGetNumberDM(self.dm, &n) )
@@ -224766,7 +244130,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_8scatter(struct __pyx_o
* cdef PetscVec *clvecs = NULL
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&clvecs)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 46, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 46, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":47
* cdef PetscInt i, n = 0
@@ -224822,14 +244186,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_8scatter(struct __pyx_o
* clvecs[i] = (<Vec?>lvecs[<Py_ssize_t>i]).vec
* CHKERR( DMCompositeScatterArray(self.dm, gvec.vec, clvecs) ) # <<<<<<<<<<<<<<
*
- * def gather(self, Vec gvec not None, imode, lvecs):
+ * def gather(self, Vec gvec, imode, lvecs):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeScatterArray(__pyx_v_self->__pyx_base.dm, __pyx_v_gvec->vec, __pyx_v_clvecs)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 51, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeScatterArray(__pyx_v_self->__pyx_base.dm, __pyx_v_gvec->vec, __pyx_v_clvecs)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 51, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":43
* return tuple(entries)
*
- * def scatter(self, Vec gvec not None, lvecs): # <<<<<<<<<<<<<<
+ * def scatter(self, Vec gvec, lvecs): # <<<<<<<<<<<<<<
* """Scatter coupled global vector into split local vectors"""
* cdef PetscInt i, n = 0
*/
@@ -224852,7 +244216,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_8scatter(struct __pyx_o
/* "PETSc/DMComposite.pyx":53
* CHKERR( DMCompositeScatterArray(self.dm, gvec.vec, clvecs) )
*
- * def gather(self, Vec gvec not None, imode, lvecs): # <<<<<<<<<<<<<<
+ * def gather(self, Vec gvec, imode, lvecs): # <<<<<<<<<<<<<<
* """Gather split local vectors into coupled global vector"""
* cdef PetscInsertMode cimode = insertmode(imode)
*/
@@ -224875,8 +244239,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_11gather(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -224885,11 +244252,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_11gather(PyObject *__py
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gvec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_imode)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("gather", 1, 3, 3, 1); __PYX_ERR(43, 53, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lvecs)) != 0)) kw_args--;
else {
@@ -224947,13 +244316,13 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_10gather(struct __pyx_o
__Pyx_RefNannySetupContext("gather", 0);
/* "PETSc/DMComposite.pyx":55
- * def gather(self, Vec gvec not None, imode, lvecs):
+ * def gather(self, Vec gvec, imode, lvecs):
* """Gather split local vectors into coupled global vector"""
* cdef PetscInsertMode cimode = insertmode(imode) # <<<<<<<<<<<<<<
* cdef PetscInt i, n = 0
* CHKERR( DMCompositeGetNumberDM(self.dm, &n) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_imode); if (unlikely(__pyx_t_1 == ((InsertMode)-1L))) __PYX_ERR(43, 55, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_insertmode(__pyx_v_imode); if (unlikely(__pyx_t_1 == ((InsertMode)((InsertMode)-1L)))) __PYX_ERR(43, 55, __pyx_L1_error)
__pyx_v_cimode = __pyx_t_1;
/* "PETSc/DMComposite.pyx":56
@@ -224972,7 +244341,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_10gather(struct __pyx_o
* cdef PetscVec *clvecs = NULL
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&clvecs)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(43, 57, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(43, 57, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":58
* cdef PetscInt i, n = 0
@@ -225003,7 +244372,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_10gather(struct __pyx_o
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&clvecs)
* for i from 0 <= i < n: # <<<<<<<<<<<<<<
* clvecs[i] = (<Vec?>lvecs[<Py_ssize_t>i]).vec
- * CHKERR( DMCompositeGatherArray(self.dm, gvec.vec, cimode, clvecs) )
+ * CHKERR( DMCompositeGatherArray(self.dm, cimode, gvec.vec, clvecs) )
*/
__pyx_t_5 = __pyx_v_n;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_5; __pyx_v_i++) {
@@ -225012,7 +244381,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_10gather(struct __pyx_o
* cdef object tmp = oarray_p(empty_p(n), NULL, <void**>&clvecs)
* for i from 0 <= i < n:
* clvecs[i] = (<Vec?>lvecs[<Py_ssize_t>i]).vec # <<<<<<<<<<<<<<
- * CHKERR( DMCompositeGatherArray(self.dm, gvec.vec, cimode, clvecs) )
+ * CHKERR( DMCompositeGatherArray(self.dm, cimode, gvec.vec, clvecs) )
*
*/
__pyx_t_4 = __Pyx_GetItemInt(__pyx_v_lvecs, ((Py_ssize_t)__pyx_v_i), Py_ssize_t, 1, PyInt_FromSsize_t, 0, 1, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(43, 61, __pyx_L1_error)
@@ -225026,16 +244395,16 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_10gather(struct __pyx_o
/* "PETSc/DMComposite.pyx":62
* for i from 0 <= i < n:
* clvecs[i] = (<Vec?>lvecs[<Py_ssize_t>i]).vec
- * CHKERR( DMCompositeGatherArray(self.dm, gvec.vec, cimode, clvecs) ) # <<<<<<<<<<<<<<
+ * CHKERR( DMCompositeGatherArray(self.dm, cimode, gvec.vec, clvecs) ) # <<<<<<<<<<<<<<
*
* def getGlobalISs(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGatherArray(__pyx_v_self->__pyx_base.dm, __pyx_v_gvec->vec, __pyx_v_cimode, __pyx_v_clvecs)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(43, 62, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGatherArray(__pyx_v_self->__pyx_base.dm, __pyx_v_cimode, __pyx_v_gvec->vec, __pyx_v_clvecs)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(43, 62, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":53
* CHKERR( DMCompositeScatterArray(self.dm, gvec.vec, clvecs) )
*
- * def gather(self, Vec gvec not None, imode, lvecs): # <<<<<<<<<<<<<<
+ * def gather(self, Vec gvec, imode, lvecs): # <<<<<<<<<<<<<<
* """Gather split local vectors into coupled global vector"""
* cdef PetscInsertMode cimode = insertmode(imode)
*/
@@ -225056,7 +244425,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_10gather(struct __pyx_o
}
/* "PETSc/DMComposite.pyx":64
- * CHKERR( DMCompositeGatherArray(self.dm, gvec.vec, cimode, clvecs) )
+ * CHKERR( DMCompositeGatherArray(self.dm, cimode, gvec.vec, clvecs) )
*
* def getGlobalISs(self): # <<<<<<<<<<<<<<
* cdef PetscInt i, n = 0
@@ -225118,7 +244487,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_12getGlobalISs(struct _
* CHKERR( DMCompositeGetGlobalISs(self.dm, &cis) )
* cdef object isets = [ref_IS(cis[i]) for i from 0 <= i < n]
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 67, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 67, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":68
* cdef PetscIS *cis = NULL
@@ -225127,7 +244496,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_12getGlobalISs(struct _
* cdef object isets = [ref_IS(cis[i]) for i from 0 <= i < n]
* for i from 0 <= i < n:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetGlobalISs(__pyx_v_self->__pyx_base.dm, (&__pyx_v_cis))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 68, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetGlobalISs(__pyx_v_self->__pyx_base.dm, (&__pyx_v_cis))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 68, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":69
* CHKERR( DMCompositeGetNumberDM(self.dm, &n) )
@@ -225165,7 +244534,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_12getGlobalISs(struct _
* CHKERR( PetscFree(cis) )
* return isets
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&(__pyx_v_cis[__pyx_v_i])))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 71, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&(__pyx_v_cis[__pyx_v_i])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 71, __pyx_L1_error)
}
/* "PETSc/DMComposite.pyx":72
@@ -225175,7 +244544,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_12getGlobalISs(struct _
* return isets
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_cis)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 72, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_cis)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 72, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":73
* CHKERR( ISDestroy(&cis[i]) )
@@ -225190,7 +244559,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_12getGlobalISs(struct _
goto __pyx_L0;
/* "PETSc/DMComposite.pyx":64
- * CHKERR( DMCompositeGatherArray(self.dm, gvec.vec, cimode, clvecs) )
+ * CHKERR( DMCompositeGatherArray(self.dm, cimode, gvec.vec, clvecs) )
*
* def getGlobalISs(self): # <<<<<<<<<<<<<<
* cdef PetscInt i, n = 0
@@ -225273,7 +244642,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_14getLocalISs(struct __
* CHKERR( DMCompositeGetLocalISs(self.dm, &cis) )
* cdef object isets = [ref_IS(cis[i]) for i from 0 <= i < n]
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 78, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 78, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":79
* cdef PetscIS *cis = NULL
@@ -225282,7 +244651,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_14getLocalISs(struct __
* cdef object isets = [ref_IS(cis[i]) for i from 0 <= i < n]
* for i from 0 <= i < n:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetLocalISs(__pyx_v_self->__pyx_base.dm, (&__pyx_v_cis))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 79, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetLocalISs(__pyx_v_self->__pyx_base.dm, (&__pyx_v_cis))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 79, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":80
* CHKERR( DMCompositeGetNumberDM(self.dm, &n) )
@@ -225320,7 +244689,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_14getLocalISs(struct __
* CHKERR( PetscFree(cis) )
* return isets
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&(__pyx_v_cis[__pyx_v_i])))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 82, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISDestroy((&(__pyx_v_cis[__pyx_v_i])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 82, __pyx_L1_error)
}
/* "PETSc/DMComposite.pyx":83
@@ -225330,7 +244699,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_14getLocalISs(struct __
* return isets
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_cis)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 83, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_cis)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 83, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":84
* CHKERR( ISDestroy(&cis[i]) )
@@ -225428,7 +244797,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_16getLGMaps(struct __py
* CHKERR( DMCompositeGetISLocalToGlobalMappings(self.dm, &clgm) )
* cdef object lgms = [ref_LGMap(clgm[i]) for i from 0 <= i < n]
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 89, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetNumberDM(__pyx_v_self->__pyx_base.dm, (&__pyx_v_n))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 89, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":90
* cdef PetscLGMap *clgm = NULL
@@ -225437,7 +244806,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_16getLGMaps(struct __py
* cdef object lgms = [ref_LGMap(clgm[i]) for i from 0 <= i < n]
* for i from 0 <= i < n:
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetISLocalToGlobalMappings(__pyx_v_self->__pyx_base.dm, (&__pyx_v_clgm))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 90, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMCompositeGetISLocalToGlobalMappings(__pyx_v_self->__pyx_base.dm, (&__pyx_v_clgm))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 90, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":91
* CHKERR( DMCompositeGetNumberDM(self.dm, &n) )
@@ -225475,7 +244844,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_16getLGMaps(struct __py
* CHKERR( PetscFree(clgm) )
* return lgms
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingDestroy((&(__pyx_v_clgm[__pyx_v_i])))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 93, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(ISLocalToGlobalMappingDestroy((&(__pyx_v_clgm[__pyx_v_i])))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 93, __pyx_L1_error)
}
/* "PETSc/DMComposite.pyx":94
@@ -225485,14 +244854,14 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_16getLGMaps(struct __py
* return lgms
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_clgm)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(43, 94, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscFree(__pyx_v_clgm)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(43, 94, __pyx_L1_error)
/* "PETSc/DMComposite.pyx":95
* CHKERR( ISLocalToGlobalMappingDestroy(&clgm[i]) )
* CHKERR( PetscFree(clgm) )
* return lgms # <<<<<<<<<<<<<<
*
- * def getAccess(self, Vec gvec not None, locs=None):
+ * def getAccess(self, Vec gvec, locs=None):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(__pyx_v_lgms);
@@ -225523,7 +244892,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_16getLGMaps(struct __py
/* "PETSc/DMComposite.pyx":97
* return lgms
*
- * def getAccess(self, Vec gvec not None, locs=None): # <<<<<<<<<<<<<<
+ * def getAccess(self, Vec gvec, locs=None): # <<<<<<<<<<<<<<
* """Get access to specified parts of global vector.
*
*/
@@ -225546,7 +244915,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_19getAccess(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -225555,6 +244926,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_19getAccess(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_gvec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_locs);
@@ -225567,6 +244939,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11DMComposite_19getAccess(PyObject *_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -225629,7 +245002,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11DMComposite_18getAccess(struct __py
/* "PETSc/DMComposite.pyx":97
* return lgms
*
- * def getAccess(self, Vec gvec not None, locs=None): # <<<<<<<<<<<<<<
+ * def getAccess(self, Vec gvec, locs=None): # <<<<<<<<<<<<<<
* """Get access to specified parts of global vector.
*
*/
@@ -225671,6 +245044,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_1create(PyObject *__pyx_v_se
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -225688,6 +245062,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_1create(PyObject *__pyx_v_se
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -225744,7 +245119,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_create(struct __pyx_obj_8pet
* PetscCLEAR(self.obj); self.dm = newdm
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(44, 6, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellCreate(__pyx_v_ccomm, (&__pyx_v_newdm))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(44, 6, __pyx_L1_error)
/* "PETSc/DMShell.pyx":7
* cdef PetscDM newdm = NULL
@@ -225761,7 +245136,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_create(struct __pyx_obj_8pet
* PetscCLEAR(self.obj); self.dm = newdm
* return self # <<<<<<<<<<<<<<
*
- * def setMatrix(self, Mat mat not None):
+ * def setMatrix(self, Mat mat):
*/
__Pyx_XDECREF(__pyx_r);
__Pyx_INCREF(((PyObject *)__pyx_v_self));
@@ -225789,7 +245164,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_create(struct __pyx_obj_8pet
/* "PETSc/DMShell.pyx":10
* return self
*
- * def setMatrix(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setMatrix(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetMatrix(self.dm, mat.mat) )
*
*/
@@ -225810,6 +245185,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_3setMatrix(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -225857,17 +245233,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_2setMatrix(struct __pyx_obj_
/* "PETSc/DMShell.pyx":11
*
- * def setMatrix(self, Mat mat not None):
+ * def setMatrix(self, Mat mat):
* CHKERR( DMShellSetMatrix(self.dm, mat.mat) ) # <<<<<<<<<<<<<<
*
- * def setGlobalVector(self, Vec gv not None):
+ * def setGlobalVector(self, Vec gv):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetMatrix(__pyx_v_self->__pyx_base.dm, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(44, 11, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetMatrix(__pyx_v_self->__pyx_base.dm, __pyx_v_mat->mat)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(44, 11, __pyx_L1_error)
/* "PETSc/DMShell.pyx":10
* return self
*
- * def setMatrix(self, Mat mat not None): # <<<<<<<<<<<<<<
+ * def setMatrix(self, Mat mat): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetMatrix(self.dm, mat.mat) )
*
*/
@@ -225887,7 +245263,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_2setMatrix(struct __pyx_obj_
/* "PETSc/DMShell.pyx":13
* CHKERR( DMShellSetMatrix(self.dm, mat.mat) )
*
- * def setGlobalVector(self, Vec gv not None): # <<<<<<<<<<<<<<
+ * def setGlobalVector(self, Vec gv): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetGlobalVector(self.dm, gv.vec) )
*
*/
@@ -225908,6 +245284,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_5setGlobalVector(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -225955,17 +245332,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_4setGlobalVector(struct __py
/* "PETSc/DMShell.pyx":14
*
- * def setGlobalVector(self, Vec gv not None):
+ * def setGlobalVector(self, Vec gv):
* CHKERR( DMShellSetGlobalVector(self.dm, gv.vec) ) # <<<<<<<<<<<<<<
*
- * def setLocalVector(self, Vec lv not None):
+ * def setLocalVector(self, Vec lv):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetGlobalVector(__pyx_v_self->__pyx_base.dm, __pyx_v_gv->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(44, 14, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetGlobalVector(__pyx_v_self->__pyx_base.dm, __pyx_v_gv->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(44, 14, __pyx_L1_error)
/* "PETSc/DMShell.pyx":13
* CHKERR( DMShellSetMatrix(self.dm, mat.mat) )
*
- * def setGlobalVector(self, Vec gv not None): # <<<<<<<<<<<<<<
+ * def setGlobalVector(self, Vec gv): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetGlobalVector(self.dm, gv.vec) )
*
*/
@@ -225985,7 +245362,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_4setGlobalVector(struct __py
/* "PETSc/DMShell.pyx":16
* CHKERR( DMShellSetGlobalVector(self.dm, gv.vec) )
*
- * def setLocalVector(self, Vec lv not None): # <<<<<<<<<<<<<<
+ * def setLocalVector(self, Vec lv): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetLocalVector(self.dm, lv.vec) )
*
*/
@@ -226006,6 +245383,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_7setLocalVector(PyObject *__
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -226053,17 +245431,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_6setLocalVector(struct __pyx
/* "PETSc/DMShell.pyx":17
*
- * def setLocalVector(self, Vec lv not None):
+ * def setLocalVector(self, Vec lv):
* CHKERR( DMShellSetLocalVector(self.dm, lv.vec) ) # <<<<<<<<<<<<<<
*
* def setCreateGlobalVector(self, create_gvec, args=None, kargs=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalVector(__pyx_v_self->__pyx_base.dm, __pyx_v_lv->vec)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(44, 17, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalVector(__pyx_v_self->__pyx_base.dm, __pyx_v_lv->vec)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(44, 17, __pyx_L1_error)
/* "PETSc/DMShell.pyx":16
* CHKERR( DMShellSetGlobalVector(self.dm, gv.vec) )
*
- * def setLocalVector(self, Vec lv not None): # <<<<<<<<<<<<<<
+ * def setLocalVector(self, Vec lv): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetLocalVector(self.dm, lv.vec) )
*
*/
@@ -226108,8 +245486,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_9setCreateGlobalVector(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -226118,11 +245499,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_9setCreateGlobalVector(PyObj
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_create_gvec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -226135,7 +245518,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_9setCreateGlobalVector(PyObj
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -226207,7 +245592,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_8setCreateGlobalVector(struc
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 22, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 22, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -226252,7 +245637,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_8setCreateGlobalVector(struc
* else:
* CHKERR( DMShellSetCreateGlobalVector(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateGlobalVector(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 25, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateGlobalVector(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateGlobalVector)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 25, __pyx_L1_error)
/* "PETSc/DMShell.pyx":20
*
@@ -226272,7 +245657,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_8setCreateGlobalVector(struc
* def setCreateLocalVector(self, create_lvec, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateGlobalVector(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 27, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateGlobalVector(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 27, __pyx_L1_error)
}
__pyx_L3:;
@@ -226328,8 +245713,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_11setCreateLocalVector(PyObj
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -226338,11 +245726,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_11setCreateLocalVector(PyObj
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_create_lvec)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -226355,7 +245745,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_11setCreateLocalVector(PyObj
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -226427,7 +245819,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_10setCreateLocalVector(struc
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 32, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 32, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -226472,7 +245864,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_10setCreateLocalVector(struc
* else:
* CHKERR( DMShellSetCreateLocalVector(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateLocalVector(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 35, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateLocalVector(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateLocalVector)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 35, __pyx_L1_error)
/* "PETSc/DMShell.pyx":30
*
@@ -226492,7 +245884,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_10setCreateLocalVector(struc
* def setGlobalToLocal(self, begin, end, begin_args=None, begin_kargs=None,
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateLocalVector(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 37, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateLocalVector(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 37, __pyx_L1_error)
}
__pyx_L3:;
@@ -226561,11 +245953,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_13setGlobalToLocal(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -226574,26 +245972,31 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_13setGlobalToLocal(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setGlobalToLocal", 0, 2, 6, 1); __PYX_ERR(44, 39, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin_kargs);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end_args);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end_kargs);
@@ -226606,9 +246009,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_13setGlobalToLocal(PyObject
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -226706,7 +246113,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_12setGlobalToLocal(struct __
__pyx_t_1 = (__pyx_v_begin_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 44, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 44, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_begin_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -226797,7 +246204,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_12setGlobalToLocal(struct __
__pyx_t_2 = (__pyx_v_end_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 50, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 50, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_end_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -226858,9 +246265,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_12setGlobalToLocal(struct __
* cend = &DMSHELL_GlobalToLocalEnd
* CHKERR( DMShellSetGlobalToLocal(self.dm, cbegin, cend) ) # <<<<<<<<<<<<<<
*
- * def setGlobalToLocalVecScatter(self, Scatter gtol not None):
+ * def setGlobalToLocalVecScatter(self, Scatter gtol):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetGlobalToLocal(__pyx_v_self->__pyx_base.dm, __pyx_v_cbegin, __pyx_v_cend)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 54, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetGlobalToLocal(__pyx_v_self->__pyx_base.dm, __pyx_v_cbegin, __pyx_v_cend)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 54, __pyx_L1_error)
/* "PETSc/DMShell.pyx":39
* CHKERR( DMShellSetCreateLocalVector(self.dm, NULL) )
@@ -226891,7 +246298,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_12setGlobalToLocal(struct __
/* "PETSc/DMShell.pyx":56
* CHKERR( DMShellSetGlobalToLocal(self.dm, cbegin, cend) )
*
- * def setGlobalToLocalVecScatter(self, Scatter gtol not None): # <<<<<<<<<<<<<<
+ * def setGlobalToLocalVecScatter(self, Scatter gtol): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetGlobalToLocalVecScatter(self.dm, gtol.sct) )
*
*/
@@ -226912,6 +246319,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_15setGlobalToLocalVecScatter
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -226959,17 +246367,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_14setGlobalToLocalVecScatter
/* "PETSc/DMShell.pyx":57
*
- * def setGlobalToLocalVecScatter(self, Scatter gtol not None):
+ * def setGlobalToLocalVecScatter(self, Scatter gtol):
* CHKERR( DMShellSetGlobalToLocalVecScatter(self.dm, gtol.sct) ) # <<<<<<<<<<<<<<
*
* def setLocalToGlobal(self, begin, end, begin_args=None, begin_kargs=None,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetGlobalToLocalVecScatter(__pyx_v_self->__pyx_base.dm, __pyx_v_gtol->sct)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(44, 57, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetGlobalToLocalVecScatter(__pyx_v_self->__pyx_base.dm, __pyx_v_gtol->sct)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(44, 57, __pyx_L1_error)
/* "PETSc/DMShell.pyx":56
* CHKERR( DMShellSetGlobalToLocal(self.dm, cbegin, cend) )
*
- * def setGlobalToLocalVecScatter(self, Scatter gtol not None): # <<<<<<<<<<<<<<
+ * def setGlobalToLocalVecScatter(self, Scatter gtol): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetGlobalToLocalVecScatter(self.dm, gtol.sct) )
*
*/
@@ -227027,11 +246435,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_17setLocalToGlobal(PyObject
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -227040,26 +246454,31 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_17setLocalToGlobal(PyObject
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setLocalToGlobal", 0, 2, 6, 1); __PYX_ERR(44, 59, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin_kargs);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end_args);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end_kargs);
@@ -227072,9 +246491,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_17setLocalToGlobal(PyObject
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -227172,7 +246595,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_16setLocalToGlobal(struct __
__pyx_t_1 = (__pyx_v_begin_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 64, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 64, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_begin_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -227263,7 +246686,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_16setLocalToGlobal(struct __
__pyx_t_2 = (__pyx_v_end_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 70, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 70, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_end_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -227324,9 +246747,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_16setLocalToGlobal(struct __
* cend = &DMSHELL_LocalToGlobalEnd
* CHKERR( DMShellSetLocalToGlobal(self.dm, cbegin, cend) ) # <<<<<<<<<<<<<<
*
- * def setLocalToGlobalVecScatter(self, Scatter ltog not None):
+ * def setLocalToGlobalVecScatter(self, Scatter ltog):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToGlobal(__pyx_v_self->__pyx_base.dm, __pyx_v_cbegin, __pyx_v_cend)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 74, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToGlobal(__pyx_v_self->__pyx_base.dm, __pyx_v_cbegin, __pyx_v_cend)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 74, __pyx_L1_error)
/* "PETSc/DMShell.pyx":59
* CHKERR( DMShellSetGlobalToLocalVecScatter(self.dm, gtol.sct) )
@@ -227357,7 +246780,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_16setLocalToGlobal(struct __
/* "PETSc/DMShell.pyx":76
* CHKERR( DMShellSetLocalToGlobal(self.dm, cbegin, cend) )
*
- * def setLocalToGlobalVecScatter(self, Scatter ltog not None): # <<<<<<<<<<<<<<
+ * def setLocalToGlobalVecScatter(self, Scatter ltog): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetLocalToGlobalVecScatter(self.dm, ltog.sct) )
*
*/
@@ -227378,6 +246801,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_19setLocalToGlobalVecScatter
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -227425,17 +246849,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_18setLocalToGlobalVecScatter
/* "PETSc/DMShell.pyx":77
*
- * def setLocalToGlobalVecScatter(self, Scatter ltog not None):
+ * def setLocalToGlobalVecScatter(self, Scatter ltog):
* CHKERR( DMShellSetLocalToGlobalVecScatter(self.dm, ltog.sct) ) # <<<<<<<<<<<<<<
*
* def setLocalToLocal(self, begin, end, begin_args=None, begin_kargs=None,
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToGlobalVecScatter(__pyx_v_self->__pyx_base.dm, __pyx_v_ltog->sct)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(44, 77, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToGlobalVecScatter(__pyx_v_self->__pyx_base.dm, __pyx_v_ltog->sct)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(44, 77, __pyx_L1_error)
/* "PETSc/DMShell.pyx":76
* CHKERR( DMShellSetLocalToGlobal(self.dm, cbegin, cend) )
*
- * def setLocalToGlobalVecScatter(self, Scatter ltog not None): # <<<<<<<<<<<<<<
+ * def setLocalToGlobalVecScatter(self, Scatter ltog): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetLocalToGlobalVecScatter(self.dm, ltog.sct) )
*
*/
@@ -227493,11 +246917,17 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_21setLocalToLocal(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -227506,26 +246936,31 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_21setLocalToLocal(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setLocalToLocal", 0, 2, 6, 1); __PYX_ERR(44, 79, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin_args);
if (value) { values[2] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 3:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_begin_kargs);
if (value) { values[3] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 4:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end_args);
if (value) { values[4] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 5:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end_kargs);
@@ -227538,9 +246973,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_21setLocalToLocal(PyObject *
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
+ CYTHON_FALLTHROUGH;
case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
+ CYTHON_FALLTHROUGH;
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
@@ -227656,7 +247095,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_20setLocalToLocal(struct __p
__pyx_t_1 = (__pyx_v_begin_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 86, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 86, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_begin_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -227747,7 +247186,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_20setLocalToLocal(struct __p
__pyx_t_2 = (__pyx_v_end_kargs == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
if (__pyx_t_1) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 92, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 92, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_end_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -227808,9 +247247,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_20setLocalToLocal(struct __p
* cend = &DMSHELL_LocalToLocalEnd
* CHKERR( DMShellSetLocalToLocal(self.dm, cbegin, cend) ) # <<<<<<<<<<<<<<
*
- * def setLocalToLocalVecScatter(self, Scatter ltol not None):
+ * def setLocalToLocalVecScatter(self, Scatter ltol):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToLocal(__pyx_v_self->__pyx_base.dm, __pyx_v_cbegin, __pyx_v_cend)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 96, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToLocal(__pyx_v_self->__pyx_base.dm, __pyx_v_cbegin, __pyx_v_cend)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 96, __pyx_L1_error)
/* "PETSc/DMShell.pyx":79
* CHKERR( DMShellSetLocalToGlobalVecScatter(self.dm, ltog.sct) )
@@ -227841,7 +247280,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_20setLocalToLocal(struct __p
/* "PETSc/DMShell.pyx":98
* CHKERR( DMShellSetLocalToLocal(self.dm, cbegin, cend) )
*
- * def setLocalToLocalVecScatter(self, Scatter ltol not None): # <<<<<<<<<<<<<<
+ * def setLocalToLocalVecScatter(self, Scatter ltol): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetLocalToLocalVecScatter(self.dm, ltol.sct) )
*
*/
@@ -227862,6 +247301,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_23setLocalToLocalVecScatter(
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -227909,17 +247349,17 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_22setLocalToLocalVecScatter(
/* "PETSc/DMShell.pyx":99
*
- * def setLocalToLocalVecScatter(self, Scatter ltol not None):
+ * def setLocalToLocalVecScatter(self, Scatter ltol):
* CHKERR( DMShellSetLocalToLocalVecScatter(self.dm, ltol.sct) ) # <<<<<<<<<<<<<<
*
* def setCreateMatrix(self, create_matrix, args=None, kargs=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToLocalVecScatter(__pyx_v_self->__pyx_base.dm, __pyx_v_ltol->sct)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(44, 99, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetLocalToLocalVecScatter(__pyx_v_self->__pyx_base.dm, __pyx_v_ltol->sct)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(44, 99, __pyx_L1_error)
/* "PETSc/DMShell.pyx":98
* CHKERR( DMShellSetLocalToLocal(self.dm, cbegin, cend) )
*
- * def setLocalToLocalVecScatter(self, Scatter ltol not None): # <<<<<<<<<<<<<<
+ * def setLocalToLocalVecScatter(self, Scatter ltol): # <<<<<<<<<<<<<<
* CHKERR( DMShellSetLocalToLocalVecScatter(self.dm, ltol.sct) )
*
*/
@@ -227964,8 +247404,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_25setCreateMatrix(PyObject *
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -227974,11 +247417,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_25setCreateMatrix(PyObject *
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_create_matrix)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -227991,7 +247436,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_25setCreateMatrix(PyObject *
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -228063,7 +247510,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_24setCreateMatrix(struct __p
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 104, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 104, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -228108,7 +247555,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_24setCreateMatrix(struct __p
* else:
* CHKERR( DMShellSetCreateMatrix(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateMatrix(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 107, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateMatrix(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateMatrix)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 107, __pyx_L1_error)
/* "PETSc/DMShell.pyx":102
*
@@ -228128,7 +247575,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_24setCreateMatrix(struct __p
* def setCoarsen(self, coarsen, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateMatrix(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 109, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateMatrix(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 109, __pyx_L1_error)
}
__pyx_L3:;
@@ -228184,8 +247631,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_27setCoarsen(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -228194,11 +247644,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_27setCoarsen(PyObject *__pyx
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_coarsen)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -228211,7 +247663,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_27setCoarsen(PyObject *__pyx
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -228283,7 +247737,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_26setCoarsen(struct __pyx_ob
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 114, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 114, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -228328,7 +247782,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_26setCoarsen(struct __pyx_ob
* else:
* CHKERR( DMShellSetCoarsen(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCoarsen(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 117, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCoarsen(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_Coarsen)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 117, __pyx_L1_error)
/* "PETSc/DMShell.pyx":112
*
@@ -228348,7 +247802,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_26setCoarsen(struct __pyx_ob
* def setRefine(self, refine, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCoarsen(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 119, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCoarsen(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 119, __pyx_L1_error)
}
__pyx_L3:;
@@ -228404,8 +247858,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_29setRefine(PyObject *__pyx_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -228414,11 +247871,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_29setRefine(PyObject *__pyx_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_refine)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -228431,7 +247890,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_29setRefine(PyObject *__pyx_
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -228503,7 +247964,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_28setRefine(struct __pyx_obj
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 124, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 124, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -228548,7 +248009,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_28setRefine(struct __pyx_obj
* else:
* CHKERR( DMShellSetRefine(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetRefine(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 127, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetRefine(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_Refine)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 127, __pyx_L1_error)
/* "PETSc/DMShell.pyx":122
*
@@ -228568,7 +248029,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_28setRefine(struct __pyx_obj
* def setCreateInterpolation(self, create_interpolation, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetRefine(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 129, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetRefine(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 129, __pyx_L1_error)
}
__pyx_L3:;
@@ -228624,8 +248085,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_31setCreateInterpolation(PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -228634,11 +248098,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_31setCreateInterpolation(PyO
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_create_interpolation)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -228651,7 +248117,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_31setCreateInterpolation(PyO
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -228723,7 +248191,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_30setCreateInterpolation(str
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 134, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 134, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -228768,7 +248236,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_30setCreateInterpolation(str
* else:
* CHKERR( DMShellSetCreateInterpolation(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInterpolation(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 137, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInterpolation(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInterpolation)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 137, __pyx_L1_error)
/* "PETSc/DMShell.pyx":132
*
@@ -228788,7 +248256,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_30setCreateInterpolation(str
* def setCreateInjection(self, create_injection, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInterpolation(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 139, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInterpolation(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 139, __pyx_L1_error)
}
__pyx_L3:;
@@ -228844,8 +248312,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_33setCreateInjection(PyObjec
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -228854,11 +248325,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_33setCreateInjection(PyObjec
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_create_injection)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -228871,7 +248344,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_33setCreateInjection(PyObjec
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -228943,7 +248418,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_32setCreateInjection(struct
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 144, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 144, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
@@ -228988,7 +248463,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_32setCreateInjection(struct
* else:
* CHKERR( DMShellSetCreateInjection(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInjection(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 147, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInjection(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateInjection)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 147, __pyx_L1_error)
/* "PETSc/DMShell.pyx":142
*
@@ -229005,10 +248480,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_32setCreateInjection(struct
* else:
* CHKERR( DMShellSetCreateInjection(self.dm, NULL) ) # <<<<<<<<<<<<<<
*
- * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
+ * def setCreateRestriction(self, create_restriction, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInjection(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 149, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateInjection(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 149, __pyx_L1_error)
}
__pyx_L3:;
@@ -229039,15 +248514,242 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_32setCreateInjection(struct
/* "PETSc/DMShell.pyx":151
* CHKERR( DMShellSetCreateInjection(self.dm, NULL) )
*
+ * def setCreateRestriction(self, create_restriction, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if create_restriction is not None:
+ * if args is None: args = ()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateRestriction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_7DMShell_34setCreateRestriction[] = "DMShell.setCreateRestriction(self, create_restriction, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateRestriction(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_create_restriction = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setCreateRestriction (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_create_restriction,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_create_restriction)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCreateRestriction") < 0)) __PYX_ERR(44, 151, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_create_restriction = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setCreateRestriction", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(44, 151, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateRestriction", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateRestriction(((struct __pyx_obj_8petsc4py_5PETSc_DMShell *)__pyx_v_self), __pyx_v_create_restriction, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateRestriction(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_restriction, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setCreateRestriction", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/DMShell.pyx":152
+ *
+ * def setCreateRestriction(self, create_restriction, args=None, kargs=None):
+ * if create_restriction is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_1 = (__pyx_v_create_restriction != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/DMShell.pyx":153
+ * def setCreateRestriction(self, create_restriction, args=None, kargs=None):
+ * if create_restriction is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (create_restriction, args, kargs)
+ */
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/DMShell.pyx":154
+ * if create_restriction is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (create_restriction, args, kargs)
+ * self.set_attr('__create_restriction__', context)
+ */
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 154, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DMShell.pyx":155
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (create_restriction, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__create_restriction__', context)
+ * CHKERR( DMShellSetCreateRestriction(self.dm, DMSHELL_CreateRestriction) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 155, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_create_restriction);
+ __Pyx_GIVEREF(__pyx_v_create_restriction);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_create_restriction);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/DMShell.pyx":156
+ * if kargs is None: kargs = {}
+ * context = (create_restriction, args, kargs)
+ * self.set_attr('__create_restriction__', context) # <<<<<<<<<<<<<<
+ * CHKERR( DMShellSetCreateRestriction(self.dm, DMSHELL_CreateRestriction) )
+ * else:
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__create_restriction__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 156, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/DMShell.pyx":157
+ * context = (create_restriction, args, kargs)
+ * self.set_attr('__create_restriction__', context)
+ * CHKERR( DMShellSetCreateRestriction(self.dm, DMSHELL_CreateRestriction) ) # <<<<<<<<<<<<<<
+ * else:
+ * CHKERR( DMShellSetCreateRestriction(self.dm, NULL) )
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateRestriction(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateRestriction)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 157, __pyx_L1_error)
+
+ /* "PETSc/DMShell.pyx":152
+ *
+ * def setCreateRestriction(self, create_restriction, args=None, kargs=None):
+ * if create_restriction is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/DMShell.pyx":159
+ * CHKERR( DMShellSetCreateRestriction(self.dm, DMSHELL_CreateRestriction) )
+ * else:
+ * CHKERR( DMShellSetCreateRestriction(self.dm, NULL) ) # <<<<<<<<<<<<<<
+ *
+ * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
+ */
+ /*else*/ {
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateRestriction(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 159, __pyx_L1_error)
+ }
+ __pyx_L3:;
+
+ /* "PETSc/DMShell.pyx":151
+ * CHKERR( DMShellSetCreateInjection(self.dm, NULL) )
+ *
+ * def setCreateRestriction(self, create_restriction, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if create_restriction is not None:
+ * if args is None: args = ()
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateRestriction", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMShell.pyx":161
+ * CHKERR( DMShellSetCreateRestriction(self.dm, NULL) )
+ *
* def setCreateFieldDecomposition(self, decomp, args=None, kargs=None): # <<<<<<<<<<<<<<
* if decomp is not None:
* if args is None: args = ()
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateFieldDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecomposition[] = "DMShell.setCreateFieldDecomposition(self, decomp, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateFieldDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateFieldDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_7DMShell_36setCreateFieldDecomposition[] = "DMShell.setCreateFieldDecomposition(self, decomp, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateFieldDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_decomp = 0;
PyObject *__pyx_v_args = 0;
PyObject *__pyx_v_kargs = 0;
@@ -229064,8 +248766,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateFieldDecompositio
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -229074,11 +248779,467 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateFieldDecompositio
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_decomp)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCreateFieldDecomposition") < 0)) __PYX_ERR(44, 161, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_decomp = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setCreateFieldDecomposition", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(44, 161, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateFieldDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateFieldDecomposition(((struct __pyx_obj_8petsc4py_5PETSc_DMShell *)__pyx_v_self), __pyx_v_decomp, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateFieldDecomposition(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_decomp, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setCreateFieldDecomposition", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/DMShell.pyx":162
+ *
+ * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
+ * if decomp is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_1 = (__pyx_v_decomp != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/DMShell.pyx":163
+ * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
+ * if decomp is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (decomp, args, kargs)
+ */
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/DMShell.pyx":164
+ * if decomp is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (decomp, args, kargs)
+ * self.set_attr('__create_field_decomp__', context)
+ */
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 164, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DMShell.pyx":165
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (decomp, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__create_field_decomp__', context)
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 165, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_decomp);
+ __Pyx_GIVEREF(__pyx_v_decomp);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_decomp);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/DMShell.pyx":166
+ * if kargs is None: kargs = {}
+ * context = (decomp, args, kargs)
+ * self.set_attr('__create_field_decomp__', context) # <<<<<<<<<<<<<<
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) )
+ * else:
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__create_field_decomp__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 166, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/DMShell.pyx":167
+ * context = (decomp, args, kargs)
+ * self.set_attr('__create_field_decomp__', context)
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) ) # <<<<<<<<<<<<<<
+ * else:
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) )
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateFieldDecomposition(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 167, __pyx_L1_error)
+
+ /* "PETSc/DMShell.pyx":162
+ *
+ * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
+ * if decomp is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/DMShell.pyx":169
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) )
+ * else:
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) ) # <<<<<<<<<<<<<<
+ *
+ * def setCreateDomainDecomposition(self, decomp, args=None, kargs=None):
+ */
+ /*else*/ {
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateFieldDecomposition(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 169, __pyx_L1_error)
+ }
+ __pyx_L3:;
+
+ /* "PETSc/DMShell.pyx":161
+ * CHKERR( DMShellSetCreateRestriction(self.dm, NULL) )
+ *
+ * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if decomp is not None:
+ * if args is None: args = ()
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateFieldDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMShell.pyx":171
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) )
+ *
+ * def setCreateDomainDecomposition(self, decomp, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if decomp is not None:
+ * if args is None: args = ()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_39setCreateDomainDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_7DMShell_38setCreateDomainDecomposition[] = "DMShell.setCreateDomainDecomposition(self, decomp, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_39setCreateDomainDecomposition(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_decomp = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setCreateDomainDecomposition (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_decomp,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_decomp)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
+ case 1:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
+ if (value) { values[1] = value; kw_args--; }
+ }
+ CYTHON_FALLTHROUGH;
+ case 2:
+ if (kw_args > 0) {
+ PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
+ if (value) { values[2] = value; kw_args--; }
+ }
+ }
+ if (unlikely(kw_args > 0)) {
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCreateDomainDecomposition") < 0)) __PYX_ERR(44, 171, __pyx_L3_error)
+ }
+ } else {
+ switch (PyTuple_GET_SIZE(__pyx_args)) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ }
+ __pyx_v_decomp = values[0];
+ __pyx_v_args = values[1];
+ __pyx_v_kargs = values[2];
+ }
+ goto __pyx_L4_argument_unpacking_done;
+ __pyx_L5_argtuple_error:;
+ __Pyx_RaiseArgtupleInvalid("setCreateDomainDecomposition", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(44, 171, __pyx_L3_error)
+ __pyx_L3_error:;
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateDomainDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_RefNannyFinishContext();
+ return NULL;
+ __pyx_L4_argument_unpacking_done:;
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_7DMShell_38setCreateDomainDecomposition(((struct __pyx_obj_8petsc4py_5PETSc_DMShell *)__pyx_v_self), __pyx_v_decomp, __pyx_v_args, __pyx_v_kargs);
+
+ /* function exit code */
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_38setCreateDomainDecomposition(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_decomp, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+ PyObject *__pyx_v_context = NULL;
+ PyObject *__pyx_r = NULL;
+ __Pyx_RefNannyDeclarations
+ int __pyx_t_1;
+ int __pyx_t_2;
+ PyObject *__pyx_t_3 = NULL;
+ int __pyx_t_4;
+ __Pyx_RefNannySetupContext("setCreateDomainDecomposition", 0);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+
+ /* "PETSc/DMShell.pyx":172
+ *
+ * def setCreateDomainDecomposition(self, decomp, args=None, kargs=None):
+ * if decomp is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ __pyx_t_1 = (__pyx_v_decomp != Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+
+ /* "PETSc/DMShell.pyx":173
+ * def setCreateDomainDecomposition(self, decomp, args=None, kargs=None):
+ * if decomp is not None:
+ * if args is None: args = () # <<<<<<<<<<<<<<
+ * if kargs is None: kargs = {}
+ * context = (decomp, args, kargs)
+ */
+ __pyx_t_2 = (__pyx_v_args == Py_None);
+ __pyx_t_1 = (__pyx_t_2 != 0);
+ if (__pyx_t_1) {
+ __Pyx_INCREF(__pyx_empty_tuple);
+ __Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
+ }
+
+ /* "PETSc/DMShell.pyx":174
+ * if decomp is not None:
+ * if args is None: args = ()
+ * if kargs is None: kargs = {} # <<<<<<<<<<<<<<
+ * context = (decomp, args, kargs)
+ * self.set_attr('__create_domain_decomp__', context)
+ */
+ __pyx_t_1 = (__pyx_v_kargs == Py_None);
+ __pyx_t_2 = (__pyx_t_1 != 0);
+ if (__pyx_t_2) {
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 174, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
+ __pyx_t_3 = 0;
+ }
+
+ /* "PETSc/DMShell.pyx":175
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ * context = (decomp, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__create_domain_decomp__', context)
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, DMSHELL_CreateDomainDecomposition) )
+ */
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 175, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_INCREF(__pyx_v_decomp);
+ __Pyx_GIVEREF(__pyx_v_decomp);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_decomp);
+ __Pyx_INCREF(__pyx_v_args);
+ __Pyx_GIVEREF(__pyx_v_args);
+ PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
+ __Pyx_INCREF(__pyx_v_kargs);
+ __Pyx_GIVEREF(__pyx_v_kargs);
+ PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_kargs);
+ __pyx_v_context = ((PyObject*)__pyx_t_3);
+ __pyx_t_3 = 0;
+
+ /* "PETSc/DMShell.pyx":176
+ * if kargs is None: kargs = {}
+ * context = (decomp, args, kargs)
+ * self.set_attr('__create_domain_decomp__', context) # <<<<<<<<<<<<<<
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, DMSHELL_CreateDomainDecomposition) )
+ * else:
+ */
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__create_domain_decomp__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 176, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+
+ /* "PETSc/DMShell.pyx":177
+ * context = (decomp, args, kargs)
+ * self.set_attr('__create_domain_decomp__', context)
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, DMSHELL_CreateDomainDecomposition) ) # <<<<<<<<<<<<<<
+ * else:
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, NULL) )
+ */
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateDomainDecomposition(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateDomainDecomposition)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 177, __pyx_L1_error)
+
+ /* "PETSc/DMShell.pyx":172
+ *
+ * def setCreateDomainDecomposition(self, decomp, args=None, kargs=None):
+ * if decomp is not None: # <<<<<<<<<<<<<<
+ * if args is None: args = ()
+ * if kargs is None: kargs = {}
+ */
+ goto __pyx_L3;
+ }
+
+ /* "PETSc/DMShell.pyx":179
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, DMSHELL_CreateDomainDecomposition) )
+ * else:
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, NULL) ) # <<<<<<<<<<<<<<
+ *
+ * def setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None):
+ */
+ /*else*/ {
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateDomainDecomposition(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 179, __pyx_L1_error)
+ }
+ __pyx_L3:;
+
+ /* "PETSc/DMShell.pyx":171
+ * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) )
+ *
+ * def setCreateDomainDecomposition(self, decomp, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if decomp is not None:
+ * if args is None: args = ()
+ */
+
+ /* function exit code */
+ __pyx_r = Py_None; __Pyx_INCREF(Py_None);
+ goto __pyx_L0;
+ __pyx_L1_error:;
+ __Pyx_XDECREF(__pyx_t_3);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateDomainDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __pyx_r = NULL;
+ __pyx_L0:;
+ __Pyx_XDECREF(__pyx_v_context);
+ __Pyx_XDECREF(__pyx_v_args);
+ __Pyx_XDECREF(__pyx_v_kargs);
+ __Pyx_XGIVEREF(__pyx_r);
+ __Pyx_RefNannyFinishContext();
+ return __pyx_r;
+}
+
+/* "PETSc/DMShell.pyx":181
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, NULL) )
+ *
+ * def setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if scatter is not None:
+ * if args is None: args = ()
+ */
+
+/* Python wrapper */
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_41setCreateDomainDecompositionScatters(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_7DMShell_40setCreateDomainDecompositionScatters[] = "DMShell.setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_41setCreateDomainDecompositionScatters(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+ PyObject *__pyx_v_scatter = 0;
+ PyObject *__pyx_v_args = 0;
+ PyObject *__pyx_v_kargs = 0;
+ PyObject *__pyx_r = 0;
+ __Pyx_RefNannyDeclarations
+ __Pyx_RefNannySetupContext("setCreateDomainDecompositionScatters (wrapper)", 0);
+ {
+ static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_scatter,&__pyx_n_s_args,&__pyx_n_s_kargs,0};
+ PyObject* values[3] = {0,0,0};
+ values[1] = ((PyObject *)Py_None);
+ values[2] = ((PyObject *)Py_None);
+ if (unlikely(__pyx_kwds)) {
+ Py_ssize_t kw_args;
+ const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
+ switch (pos_args) {
+ case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
+ case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
+ case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
+ case 0: break;
+ default: goto __pyx_L5_argtuple_error;
+ }
+ kw_args = PyDict_Size(__pyx_kwds);
+ switch (pos_args) {
+ case 0:
+ if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_scatter)) != 0)) kw_args--;
+ else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -229086,37 +249247,39 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateFieldDecompositio
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCreateFieldDecomposition") < 0)) __PYX_ERR(44, 151, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCreateDomainDecompositionScatters") < 0)) __PYX_ERR(44, 181, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
}
}
- __pyx_v_decomp = values[0];
+ __pyx_v_scatter = values[0];
__pyx_v_args = values[1];
__pyx_v_kargs = values[2];
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setCreateFieldDecomposition", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(44, 151, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCreateDomainDecompositionScatters", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(44, 181, __pyx_L3_error)
__pyx_L3_error:;
- __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateFieldDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateDomainDecompositionScatters", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecomposition(((struct __pyx_obj_8petsc4py_5PETSc_DMShell *)__pyx_v_self), __pyx_v_decomp, __pyx_v_args, __pyx_v_kargs);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_7DMShell_40setCreateDomainDecompositionScatters(((struct __pyx_obj_8petsc4py_5PETSc_DMShell *)__pyx_v_self), __pyx_v_scatter, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecomposition(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_decomp, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_40setCreateDomainDecompositionScatters(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_scatter, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -229124,27 +249287,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecompositio
int __pyx_t_2;
PyObject *__pyx_t_3 = NULL;
int __pyx_t_4;
- __Pyx_RefNannySetupContext("setCreateFieldDecomposition", 0);
+ __Pyx_RefNannySetupContext("setCreateDomainDecompositionScatters", 0);
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/DMShell.pyx":152
+ /* "PETSc/DMShell.pyx":182
*
- * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
- * if decomp is not None: # <<<<<<<<<<<<<<
+ * def setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None):
+ * if scatter is not None: # <<<<<<<<<<<<<<
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
- __pyx_t_1 = (__pyx_v_decomp != Py_None);
+ __pyx_t_1 = (__pyx_v_scatter != Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/DMShell.pyx":153
- * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
- * if decomp is not None:
+ /* "PETSc/DMShell.pyx":183
+ * def setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None):
+ * if scatter is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
* if kargs is None: kargs = {}
- * context = (decomp, args, kargs)
+ * context = (scatter, args, kargs)
*/
__pyx_t_2 = (__pyx_v_args == Py_None);
__pyx_t_1 = (__pyx_t_2 != 0);
@@ -229153,34 +249316,34 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecompositio
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/DMShell.pyx":154
- * if decomp is not None:
+ /* "PETSc/DMShell.pyx":184
+ * if scatter is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
- * context = (decomp, args, kargs)
- * self.set_attr('__create_field_decomp__', context)
+ * context = (scatter, args, kargs)
+ * self.set_attr('__create_domain_decomp_scatters__', context)
*/
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 154, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 184, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/DMShell.pyx":155
+ /* "PETSc/DMShell.pyx":185
* if args is None: args = ()
* if kargs is None: kargs = {}
- * context = (decomp, args, kargs) # <<<<<<<<<<<<<<
- * self.set_attr('__create_field_decomp__', context)
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) )
+ * context = (scatter, args, kargs) # <<<<<<<<<<<<<<
+ * self.set_attr('__create_domain_decomp_scatters__', context)
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, DMSHELL_CreateDomainDecompositionScatters) )
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 155, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 185, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __Pyx_INCREF(__pyx_v_decomp);
- __Pyx_GIVEREF(__pyx_v_decomp);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_decomp);
+ __Pyx_INCREF(__pyx_v_scatter);
+ __Pyx_GIVEREF(__pyx_v_scatter);
+ PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_scatter);
__Pyx_INCREF(__pyx_v_args);
__Pyx_GIVEREF(__pyx_v_args);
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_args);
@@ -229190,53 +249353,53 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecompositio
__pyx_v_context = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/DMShell.pyx":156
+ /* "PETSc/DMShell.pyx":186
* if kargs is None: kargs = {}
- * context = (decomp, args, kargs)
- * self.set_attr('__create_field_decomp__', context) # <<<<<<<<<<<<<<
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) )
+ * context = (scatter, args, kargs)
+ * self.set_attr('__create_domain_decomp_scatters__', context) # <<<<<<<<<<<<<<
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, DMSHELL_CreateDomainDecompositionScatters) )
* else:
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__create_field_decomp__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 156, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__create_domain_decomp_scatters__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 186, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/DMShell.pyx":157
- * context = (decomp, args, kargs)
- * self.set_attr('__create_field_decomp__', context)
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) ) # <<<<<<<<<<<<<<
+ /* "PETSc/DMShell.pyx":187
+ * context = (scatter, args, kargs)
+ * self.set_attr('__create_domain_decomp_scatters__', context)
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, DMSHELL_CreateDomainDecompositionScatters) ) # <<<<<<<<<<<<<<
* else:
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) )
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateFieldDecomposition(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateFieldDecomposition)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 157, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateDomainDecompositionScatters(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateDomainDecompositionScatters)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 187, __pyx_L1_error)
- /* "PETSc/DMShell.pyx":152
+ /* "PETSc/DMShell.pyx":182
*
- * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None):
- * if decomp is not None: # <<<<<<<<<<<<<<
+ * def setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None):
+ * if scatter is not None: # <<<<<<<<<<<<<<
* if args is None: args = ()
* if kargs is None: kargs = {}
*/
goto __pyx_L3;
}
- /* "PETSc/DMShell.pyx":159
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, DMSHELL_CreateFieldDecomposition) )
+ /* "PETSc/DMShell.pyx":189
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, DMSHELL_CreateDomainDecompositionScatters) )
* else:
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) ) # <<<<<<<<<<<<<<
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, NULL) ) # <<<<<<<<<<<<<<
*
* def setCreateSubDM(self, create_subdm, args=None, kargs=None):
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateFieldDecomposition(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 159, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateDomainDecompositionScatters(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 189, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/DMShell.pyx":151
- * CHKERR( DMShellSetCreateInjection(self.dm, NULL) )
+ /* "PETSc/DMShell.pyx":181
+ * CHKERR( DMShellSetCreateDomainDecomposition(self.dm, NULL) )
*
- * def setCreateFieldDecomposition(self, decomp, args=None, kargs=None): # <<<<<<<<<<<<<<
- * if decomp is not None:
+ * def setCreateDomainDecompositionScatters(self, scatter, args=None, kargs=None): # <<<<<<<<<<<<<<
+ * if scatter is not None:
* if args is None: args = ()
*/
@@ -229245,7 +249408,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecompositio
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_3);
- __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateFieldDecomposition", __pyx_clineno, __pyx_lineno, __pyx_filename);
+ __Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateDomainDecompositionScatters", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_context);
@@ -229256,8 +249419,8 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecompositio
return __pyx_r;
}
-/* "PETSc/DMShell.pyx":161
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) )
+/* "PETSc/DMShell.pyx":191
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, NULL) )
*
* def setCreateSubDM(self, create_subdm, args=None, kargs=None): # <<<<<<<<<<<<<<
* if create_subdm is not None:
@@ -229265,9 +249428,9 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecompositio
*/
/* Python wrapper */
-static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateSubDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static char __pyx_doc_8petsc4py_5PETSc_7DMShell_36setCreateSubDM[] = "DMShell.setCreateSubDM(self, create_subdm, args=None, kargs=None)";
-static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateSubDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_43setCreateSubDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
+static char __pyx_doc_8petsc4py_5PETSc_7DMShell_42setCreateSubDM[] = "DMShell.setCreateSubDM(self, create_subdm, args=None, kargs=None)";
+static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_43setCreateSubDM(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PyObject *__pyx_v_create_subdm = 0;
PyObject *__pyx_v_args = 0;
PyObject *__pyx_v_kargs = 0;
@@ -229284,8 +249447,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateSubDM(PyObject *_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -229294,11 +249460,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateSubDM(PyObject *_
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_create_subdm)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kargs);
@@ -229306,12 +249474,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateSubDM(PyObject *_
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCreateSubDM") < 0)) __PYX_ERR(44, 161, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setCreateSubDM") < 0)) __PYX_ERR(44, 191, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -229323,20 +249493,20 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateSubDM(PyObject *_
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("setCreateSubDM", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(44, 161, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("setCreateSubDM", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(44, 191, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc.DMShell.setCreateSubDM", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
- __pyx_r = __pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(((struct __pyx_obj_8petsc4py_5PETSc_DMShell *)__pyx_v_self), __pyx_v_create_subdm, __pyx_v_args, __pyx_v_kargs);
+ __pyx_r = __pyx_pf_8petsc4py_5PETSc_7DMShell_42setCreateSubDM(((struct __pyx_obj_8petsc4py_5PETSc_DMShell *)__pyx_v_self), __pyx_v_create_subdm, __pyx_v_args, __pyx_v_kargs);
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
-static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_subdm, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
+static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_42setCreateSubDM(struct __pyx_obj_8petsc4py_5PETSc_DMShell *__pyx_v_self, PyObject *__pyx_v_create_subdm, PyObject *__pyx_v_args, PyObject *__pyx_v_kargs) {
PyObject *__pyx_v_context = NULL;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
@@ -229348,7 +249518,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __py
__Pyx_INCREF(__pyx_v_args);
__Pyx_INCREF(__pyx_v_kargs);
- /* "PETSc/DMShell.pyx":162
+ /* "PETSc/DMShell.pyx":192
*
* def setCreateSubDM(self, create_subdm, args=None, kargs=None):
* if create_subdm is not None: # <<<<<<<<<<<<<<
@@ -229359,7 +249529,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __py
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- /* "PETSc/DMShell.pyx":163
+ /* "PETSc/DMShell.pyx":193
* def setCreateSubDM(self, create_subdm, args=None, kargs=None):
* if create_subdm is not None:
* if args is None: args = () # <<<<<<<<<<<<<<
@@ -229373,7 +249543,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __py
__Pyx_DECREF_SET(__pyx_v_args, __pyx_empty_tuple);
}
- /* "PETSc/DMShell.pyx":164
+ /* "PETSc/DMShell.pyx":194
* if create_subdm is not None:
* if args is None: args = ()
* if kargs is None: kargs = {} # <<<<<<<<<<<<<<
@@ -229383,20 +249553,20 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __py
__pyx_t_1 = (__pyx_v_kargs == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 164, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 194, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_kargs, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/DMShell.pyx":165
+ /* "PETSc/DMShell.pyx":195
* if args is None: args = ()
* if kargs is None: kargs = {}
* context = (create_subdm, args, kargs) # <<<<<<<<<<<<<<
* self.set_attr('__create_subdm__', context)
* CHKERR( DMShellSetCreateSubDM(self.dm, DMSHELL_CreateSubDM) )
*/
- __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 165, __pyx_L1_error)
+ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 195, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_INCREF(__pyx_v_create_subdm);
__Pyx_GIVEREF(__pyx_v_create_subdm);
@@ -229410,27 +249580,27 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __py
__pyx_v_context = ((PyObject*)__pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/DMShell.pyx":166
+ /* "PETSc/DMShell.pyx":196
* if kargs is None: kargs = {}
* context = (create_subdm, args, kargs)
* self.set_attr('__create_subdm__', context) # <<<<<<<<<<<<<<
* CHKERR( DMShellSetCreateSubDM(self.dm, DMSHELL_CreateSubDM) )
* else:
*/
- __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__create_subdm__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 166, __pyx_L1_error)
+ __pyx_t_3 = ((struct __pyx_vtabstruct_8petsc4py_5PETSc_DMShell *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.set_attr(((struct PyPetscObjectObject *)__pyx_v_self), ((char *)"__create_subdm__"), __pyx_v_context); if (unlikely(!__pyx_t_3)) __PYX_ERR(44, 196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/DMShell.pyx":167
+ /* "PETSc/DMShell.pyx":197
* context = (create_subdm, args, kargs)
* self.set_attr('__create_subdm__', context)
* CHKERR( DMShellSetCreateSubDM(self.dm, DMSHELL_CreateSubDM) ) # <<<<<<<<<<<<<<
* else:
* CHKERR( DMShellSetCreateSubDM(self.dm, NULL) )
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateSubDM(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 167, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateSubDM(__pyx_v_self->__pyx_base.dm, __pyx_f_8petsc4py_5PETSc_DMSHELL_CreateSubDM)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 197, __pyx_L1_error)
- /* "PETSc/DMShell.pyx":162
+ /* "PETSc/DMShell.pyx":192
*
* def setCreateSubDM(self, create_subdm, args=None, kargs=None):
* if create_subdm is not None: # <<<<<<<<<<<<<<
@@ -229440,18 +249610,18 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_7DMShell_36setCreateSubDM(struct __py
goto __pyx_L3;
}
- /* "PETSc/DMShell.pyx":169
+ /* "PETSc/DMShell.pyx":199
* CHKERR( DMShellSetCreateSubDM(self.dm, DMSHELL_CreateSubDM) )
* else:
* CHKERR( DMShellSetCreateSubDM(self.dm, NULL) ) # <<<<<<<<<<<<<<
*/
/*else*/ {
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateSubDM(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(44, 169, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(DMShellSetCreateSubDM(__pyx_v_self->__pyx_base.dm, NULL)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(44, 199, __pyx_L1_error)
}
__pyx_L3:;
- /* "PETSc/DMShell.pyx":161
- * CHKERR( DMShellSetCreateFieldDecomposition(self.dm, NULL) )
+ /* "PETSc/DMShell.pyx":191
+ * CHKERR( DMShellSetCreateDomainDecompositionScatters(self.dm, NULL) )
*
* def setCreateSubDM(self, create_subdm, args=None, kargs=None): # <<<<<<<<<<<<<<
* if create_subdm is not None:
@@ -229566,7 +249736,7 @@ static void __pyx_pf_8petsc4py_5PETSc_2SF_2__dealloc__(struct PyPetscSFObject *_
* self.sf = NULL
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFDestroy((&__pyx_v_self->sf))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(45, 18, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFDestroy((&__pyx_v_self->sf))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(45, 18, __pyx_L1_error)
/* "PETSc/SF.pyx":19
* def __dealloc__(self):
@@ -229588,7 +249758,7 @@ static void __pyx_pf_8petsc4py_5PETSc_2SF_2__dealloc__(struct PyPetscSFObject *_
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
- __Pyx_WriteUnraisable("petsc4py.PETSc.SF.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.SF.__dealloc__", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
@@ -229618,6 +249788,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_5view(PyObject *__pyx_v_self, PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -229635,6 +249806,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_5view(PyObject *__pyx_v_self, PyO
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -229701,7 +249873,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_4view(struct PyPetscSFObject *__p
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFView(__pyx_v_self->sf, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(45, 24, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFView(__pyx_v_self->sf, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(45, 24, __pyx_L1_error)
/* "PETSc/SF.pyx":21
* self.sf = NULL
@@ -229761,7 +249933,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_6destroy(struct PyPetscSFObject *
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFDestroy((&__pyx_v_self->sf))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(45, 27, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFDestroy((&__pyx_v_self->sf))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(45, 27, __pyx_L1_error)
/* "PETSc/SF.pyx":28
* def destroy(self):
@@ -229818,6 +249990,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_9create(PyObject *__pyx_v_self, P
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -229835,6 +250008,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_9create(PyObject *__pyx_v_self, P
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -229891,7 +250065,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_8create(struct PyPetscSFObject *_
* PetscCLEAR(self.obj); self.sf = newsf
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFCreate(__pyx_v_ccomm, (&__pyx_v_newsf))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(45, 33, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFCreate(__pyx_v_ccomm, (&__pyx_v_newsf))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(45, 33, __pyx_L1_error)
/* "PETSc/SF.pyx":34
* cdef PetscSF newsf = NULL
@@ -229957,6 +250131,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_11setType(PyObject *__pyx_v_self,
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -230028,7 +250203,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_10setType(struct PyPetscSFObject
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetType(__pyx_v_self->sf, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(45, 40, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetType(__pyx_v_self->sf, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(45, 40, __pyx_L1_error)
/* "PETSc/SF.pyx":37
* return self
@@ -230101,7 +250276,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_12getType(struct PyPetscSFObject
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetType(((PetscObject)__pyx_v_self->sf), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(45, 44, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscObjectGetType(((PetscObject)__pyx_v_self->sf), (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(45, 44, __pyx_L1_error)
/* "PETSc/SF.pyx":45
* cdef PetscSFType cval = NULL
@@ -230174,7 +250349,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_14setFromOptions(struct PyPetscSF
*
* def setUp(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetFromOptions(__pyx_v_self->sf)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(45, 48, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetFromOptions(__pyx_v_self->sf)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(45, 48, __pyx_L1_error)
/* "PETSc/SF.pyx":47
* return bytes2str(cval)
@@ -230234,7 +250409,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_16setUp(struct PyPetscSFObject *_
*
* def reset(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetUp(__pyx_v_self->sf)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(45, 51, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetUp(__pyx_v_self->sf)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(45, 51, __pyx_L1_error)
/* "PETSc/SF.pyx":50
* CHKERR( PetscSFSetFromOptions(self.sf) )
@@ -230294,7 +250469,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_18reset(struct PyPetscSFObject *_
*
* #
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFReset(__pyx_v_self->sf)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(45, 54, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFReset(__pyx_v_self->sf)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(45, 54, __pyx_L1_error)
/* "PETSc/SF.pyx":53
* CHKERR( PetscSFSetUp(self.sf) )
@@ -230398,7 +250573,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_20getGraph(struct PyPetscSFObject
* local = array_i(nleaves, ilocal)
* remote = []
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFGetGraph(__pyx_v_self->sf, (&__pyx_v_nroots), (&__pyx_v_nleaves), (&__pyx_v_ilocal), (&__pyx_v_iremote))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(45, 62, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFGetGraph(__pyx_v_self->sf, (&__pyx_v_nroots), (&__pyx_v_nleaves), (&__pyx_v_ilocal), (&__pyx_v_iremote))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(45, 62, __pyx_L1_error)
/* "PETSc/SF.pyx":63
* cdef const_PetscSFNode *iremote = NULL
@@ -230454,7 +250629,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_20getGraph(struct PyPetscSFObject
if (likely(!__pyx_t_5)) {
if (likely(PyList_CheckExact(__pyx_t_3))) {
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(45, 65, __pyx_L1_error)
#else
__pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) __PYX_ERR(45, 65, __pyx_L1_error)
@@ -230462,7 +250637,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_20getGraph(struct PyPetscSFObject
#endif
} else {
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(45, 65, __pyx_L1_error)
#else
__pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) __PYX_ERR(45, 65, __pyx_L1_error)
@@ -230474,7 +250649,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_20getGraph(struct PyPetscSFObject
if (unlikely(!__pyx_t_2)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(45, 65, __pyx_L1_error)
}
break;
@@ -230491,10 +250666,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_20getGraph(struct PyPetscSFObject
* remote.append( sfnode )
* return toInt(nroots), toInt(nleaves), local, remote
*/
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_i); if (unlikely(__pyx_t_6 == -1L && PyErr_Occurred())) __PYX_ERR(45, 66, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_i); if (unlikely(__pyx_t_6 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(45, 66, __pyx_L1_error)
__pyx_t_2 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_iremote[__pyx_t_6]).rank); if (unlikely(!__pyx_t_2)) __PYX_ERR(45, 66, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_i); if (unlikely(__pyx_t_6 == -1L && PyErr_Occurred())) __PYX_ERR(45, 66, __pyx_L1_error)
+ __pyx_t_6 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_i); if (unlikely(__pyx_t_6 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(45, 66, __pyx_L1_error)
__pyx_t_7 = __pyx_f_8petsc4py_5PETSc_toInt((__pyx_v_iremote[__pyx_t_6]).index); if (unlikely(!__pyx_t_7)) __PYX_ERR(45, 66, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(45, 66, __pyx_L1_error)
@@ -230515,7 +250690,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_20getGraph(struct PyPetscSFObject
* return toInt(nroots), toInt(nleaves), local, remote
*
*/
- __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_remote, __pyx_v_sfnode); if (unlikely(__pyx_t_9 == -1)) __PYX_ERR(45, 67, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_remote, __pyx_v_sfnode); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(45, 67, __pyx_L1_error)
/* "PETSc/SF.pyx":65
* local = array_i(nleaves, ilocal)
@@ -230610,9 +250785,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_23setGraph(PyObject *__pyx_v_self
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
+ CYTHON_FALLTHROUGH;
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -230621,16 +250800,19 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_23setGraph(PyObject *__pyx_v_self
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nroots)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_nleaves)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setGraph", 1, 4, 4, 1); __PYX_ERR(45, 70, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_local)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("setGraph", 1, 4, 4, 2); __PYX_ERR(45, 70, __pyx_L3_error)
}
+ CYTHON_FALLTHROUGH;
case 3:
if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_remote)) != 0)) kw_args--;
else {
@@ -230700,7 +250882,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
* cdef PetscInt cnleaves = asInt(nleaves)
* cdef PetscInt nlocal = 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nroots); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(45, 71, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nroots); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(45, 71, __pyx_L1_error)
__pyx_v_cnroots = __pyx_t_1;
/* "PETSc/SF.pyx":72
@@ -230710,7 +250892,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
* cdef PetscInt nlocal = 0
* cdef PetscInt *ilocal = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nleaves); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(45, 72, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_nleaves); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(45, 72, __pyx_L1_error)
__pyx_v_cnleaves = __pyx_t_1;
/* "PETSc/SF.pyx":73
@@ -230766,7 +250948,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_t_4 = __Pyx_PyInt_As_size_t(__pyx_t_3); if (unlikely((__pyx_t_4 == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(45, 77, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc(__pyx_t_4, (&__pyx_v_iremote))); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(45, 77, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscMalloc(__pyx_t_4, (&__pyx_v_iremote))); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(45, 77, __pyx_L1_error)
/* "PETSc/SF.pyx":78
* cdef PetscSFNode* iremote = NULL
@@ -230796,7 +250978,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
if (likely(!__pyx_t_7)) {
if (likely(PyList_CheckExact(__pyx_t_3))) {
if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_6); __Pyx_INCREF(__pyx_t_2); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(45, 79, __pyx_L1_error)
#else
__pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_2)) __PYX_ERR(45, 79, __pyx_L1_error)
@@ -230804,7 +250986,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
#endif
} else {
if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
__pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_6); __Pyx_INCREF(__pyx_t_2); __pyx_t_6++; if (unlikely(0 < 0)) __PYX_ERR(45, 79, __pyx_L1_error)
#else
__pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_2)) __PYX_ERR(45, 79, __pyx_L1_error)
@@ -230816,7 +250998,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
if (unlikely(!__pyx_t_2)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
else __PYX_ERR(45, 79, __pyx_L1_error)
}
break;
@@ -230825,7 +251007,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
}
if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
PyObject* sequence = __pyx_t_2;
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if !CYTHON_COMPILING_IN_PYPY
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
@@ -230835,7 +251017,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(45, 79, __pyx_L1_error)
}
- #if CYTHON_COMPILING_IN_CPYTHON
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_9 = PyTuple_GET_ITEM(sequence, 1);
@@ -230885,7 +251067,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
* iremote[i].index = asInt(index)
* i += 1
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_rank); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(45, 80, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_rank); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(45, 80, __pyx_L1_error)
(__pyx_v_iremote[__pyx_v_i]).rank = __pyx_t_1;
/* "PETSc/SF.pyx":81
@@ -230895,7 +251077,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
* i += 1
* CHKERR( PetscSFSetGraph(self.sf, cnroots, cnleaves, ilocal, PETSC_COPY_VALUES, iremote, PETSC_OWN_POINTER) )
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(45, 81, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_index); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(45, 81, __pyx_L1_error)
(__pyx_v_iremote[__pyx_v_i]).index = __pyx_t_1;
/* "PETSc/SF.pyx":82
@@ -230924,7 +251106,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_22setGraph(struct PyPetscSFObject
*
* def setRankOrder(self, flag):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetGraph(__pyx_v_self->sf, __pyx_v_cnroots, __pyx_v_cnleaves, __pyx_v_ilocal, PETSC_COPY_VALUES, __pyx_v_iremote, PETSC_OWN_POINTER)); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(45, 83, __pyx_L1_error)
+ __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetGraph(__pyx_v_self->sf, __pyx_v_cnroots, __pyx_v_cnleaves, __pyx_v_ilocal, PETSC_COPY_VALUES, __pyx_v_iremote, PETSC_OWN_POINTER)); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(45, 83, __pyx_L1_error)
/* "PETSc/SF.pyx":70
* return toInt(nroots), toInt(nleaves), local, remote
@@ -230978,6 +251160,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_2SF_25setRankOrder(PyObject *__pyx_v_
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -231037,7 +251220,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_24setRankOrder(struct PyPetscSFOb
*
* #
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetRankOrder(__pyx_v_self->sf, __pyx_v_bval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(45, 87, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFSetRankOrder(__pyx_v_self->sf, __pyx_v_bval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(45, 87, __pyx_L1_error)
/* "PETSc/SF.pyx":85
* CHKERR( PetscSFSetGraph(self.sf, cnroots, cnleaves, ilocal, PETSC_COPY_VALUES, iremote, PETSC_OWN_POINTER) )
@@ -231111,7 +251294,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_26getMulti(struct PyPetscSFObject
* PetscINCREF(sf.obj)
* return sf
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFGetMultiSF(__pyx_v_self->sf, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(45, 93, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFGetMultiSF(__pyx_v_self->sf, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(45, 93, __pyx_L1_error)
/* "PETSc/SF.pyx":94
* cdef SF sf = SF()
@@ -231206,7 +251389,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2SF_28createInverse(struct PyPetscSFO
* return sf
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFCreateInverseSF(__pyx_v_self->sf, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(45, 99, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscSFCreateInverseSF(__pyx_v_self->sf, (&__pyx_v_sf->sf))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(45, 99, __pyx_L1_error)
/* "PETSc/SF.pyx":100
* cdef SF sf = SF()
@@ -231326,6 +251509,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_3view(PyObject *__pyx_v
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -231343,6 +251527,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_3view(PyObject *__pyx_v
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -231409,7 +251594,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_2view(struct PyPetscPar
*
* def destroy(self):
*/
- __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerView(__pyx_v_self->part, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == -1)) __PYX_ERR(46, 21, __pyx_L1_error)
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerView(__pyx_v_self->part, __pyx_v_vwr)); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(46, 21, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":18
* self.part = NULL
@@ -231469,7 +251654,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_4destroy(struct PyPetsc
* return self
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerDestroy((&__pyx_v_self->part))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(46, 24, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerDestroy((&__pyx_v_self->part))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(46, 24, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":25
* def destroy(self):
@@ -231526,6 +251711,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_7create(PyObject *__pyx
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -231543,6 +251729,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_7create(PyObject *__pyx
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -231599,7 +251786,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_6create(struct PyPetscP
* PetscCLEAR(self.obj); self.part = newpart
* return self
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerCreate(__pyx_v_ccomm, (&__pyx_v_newpart))); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(46, 30, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerCreate(__pyx_v_ccomm, (&__pyx_v_newpart))); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(46, 30, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":31
* cdef PetscPartitioner newpart = NULL
@@ -231665,6 +251852,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_9setType(PyObject *__py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -231736,7 +251924,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_8setType(struct PyPetsc
*
* def getType(self):
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerSetType(__pyx_v_self->part, __pyx_v_cval)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(46, 37, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerSetType(__pyx_v_self->part, __pyx_v_cval)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(46, 37, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":34
* return self
@@ -231809,7 +251997,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_10getType(struct PyPets
* return bytes2str(cval)
*
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerGetType(__pyx_v_self->part, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(46, 41, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerGetType(__pyx_v_self->part, (&__pyx_v_cval))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(46, 41, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":42
* cdef PetscPartitionerType cval = NULL
@@ -231882,7 +252070,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_12setFromOptions(struct
*
* def setUp(self):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerSetFromOptions(__pyx_v_self->part)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(46, 45, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerSetFromOptions(__pyx_v_self->part)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(46, 45, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":44
* return bytes2str(cval)
@@ -231942,7 +252130,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_14setUp(struct PyPetscP
*
* def setShellPartition(self, numProcs, sizes=None, points=None):
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerSetUp(__pyx_v_self->part)); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(46, 48, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerSetUp(__pyx_v_self->part)); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(46, 48, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":47
* CHKERR( PetscPartitionerSetFromOptions(self.part) )
@@ -231992,8 +252180,11 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_17setShellPartition(PyO
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -232002,11 +252193,13 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_17setShellPartition(PyO
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_numProcs)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sizes);
if (value) { values[1] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 2:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_points);
@@ -232019,7 +252212,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_11Partitioner_17setShellPartition(PyO
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
+ CYTHON_FALLTHROUGH;
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
break;
default: goto __pyx_L5_argtuple_error;
@@ -232069,7 +252264,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_16setShellPartition(str
* cdef PetscInt *csizes = NULL
* cdef PetscInt *cpoints = NULL
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numProcs); if (unlikely(__pyx_t_1 == -1L && PyErr_Occurred())) __PYX_ERR(46, 51, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_asInt(__pyx_v_numProcs); if (unlikely(__pyx_t_1 == ((PetscInt)-1L) && PyErr_Occurred())) __PYX_ERR(46, 51, __pyx_L1_error)
__pyx_v_cnumProcs = __pyx_t_1;
/* "PETSc/Partitioner.pyx":52
@@ -232201,7 +252396,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_16setShellPartition(str
* if points is not None:
* points = iarray_i(points, NULL, &cpoints)
*/
- __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__66, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(46, 61, __pyx_L1_error)
+ __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__69, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(46, 61, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_Raise(__pyx_t_5, 0, 0, 0);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
@@ -232263,7 +252458,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_11Partitioner_16setShellPartition(str
* CHKERR( PetscPartitionerShellSetPartition(self.part, cnumProcs, # <<<<<<<<<<<<<<
* csizes, cpoints) )
*/
- __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerShellSetPartition(__pyx_v_self->part, __pyx_v_cnumProcs, __pyx_v_csizes, __pyx_v_cpoints)); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(46, 64, __pyx_L1_error)
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPartitionerShellSetPartition(__pyx_v_self->part, __pyx_v_cnumProcs, __pyx_v_csizes, __pyx_v_cpoints)); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(46, 64, __pyx_L1_error)
/* "PETSc/Partitioner.pyx":50
* CHKERR( PetscPartitionerSetUp(self.part) )
@@ -232331,7 +252526,7 @@ static CYTHON_INLINE int __pyx_f_8petsc4py_5PETSc_setref(void *__pyx_v_d, void *
* dest[0] = source
* return 0
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF((&__pyx_v_source))); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(47, 6, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_CHKERR(__pyx_f_8petsc4py_5PETSc_PetscINCREF((&__pyx_v_source))); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(47, 6, __pyx_L1_error)
/* "PETSc/CAPI.pyx":7
* cdef PetscObject source = <PetscObject> s
@@ -232668,7 +252863,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscObject_New(PetscObject __pyx_v_
* return retv
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_setref((&(__pyx_v_retv->obj[0])), __pyx_v_arg); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(47, 40, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_setref((&(__pyx_v_retv->obj[0])), __pyx_v_arg); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(47, 40, __pyx_L1_error)
/* "PETSc/CAPI.pyx":41
* cdef Object retv = subtype_Object(arg)()
@@ -232892,7 +253087,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscViewer_New(PetscViewer __pyx_v_
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->vwr), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 59, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->vwr), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 59, __pyx_L1_error)
/* "PETSc/CAPI.pyx":60
* cdef Viewer retv = Viewer()
@@ -233039,7 +253234,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscRandom_New(PetscRandom __pyx_v_
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->rnd), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 72, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->rnd), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 72, __pyx_L1_error)
/* "PETSc/CAPI.pyx":73
* cdef Random retv = Random()
@@ -233186,7 +253381,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscIS_New(IS __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->iset), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 85, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->iset), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 85, __pyx_L1_error)
/* "PETSc/CAPI.pyx":86
* cdef IS retv = IS()
@@ -233333,7 +253528,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscLGMap_New(ISLocalToGlobalMappin
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->lgm), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 98, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->lgm), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 98, __pyx_L1_error)
/* "PETSc/CAPI.pyx":99
* cdef LGMap retv = LGMap()
@@ -233480,7 +253675,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscSF_New(PetscSF __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->sf), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 111, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->sf), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 111, __pyx_L1_error)
/* "PETSc/CAPI.pyx":112
* cdef SF retv = SF()
@@ -233627,7 +253822,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscVec_New(Vec __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->vec), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 124, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->vec), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 124, __pyx_L1_error)
/* "PETSc/CAPI.pyx":125
* cdef Vec retv = Vec()
@@ -233774,7 +253969,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscScatter_New(VecScatter __pyx_v_
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->sct), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 137, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->sct), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 137, __pyx_L1_error)
/* "PETSc/CAPI.pyx":138
* cdef Scatter retv = Scatter()
@@ -233921,7 +254116,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscSection_New(PetscSection __pyx_
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->sec), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 150, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->sec), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 150, __pyx_L1_error)
/* "PETSc/CAPI.pyx":151
* cdef Section retv = Section()
@@ -234068,7 +254263,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscMat_New(Mat __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->mat), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 163, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->mat), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 163, __pyx_L1_error)
/* "PETSc/CAPI.pyx":164
* cdef Mat retv = Mat()
@@ -234215,7 +254410,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscPC_New(PC __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->pc), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 176, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->pc), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 176, __pyx_L1_error)
/* "PETSc/CAPI.pyx":177
* cdef PC retv = PC()
@@ -234362,7 +254557,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscKSP_New(KSP __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->ksp), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 189, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->ksp), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 189, __pyx_L1_error)
/* "PETSc/CAPI.pyx":190
* cdef KSP retv = KSP()
@@ -234509,7 +254704,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscSNES_New(SNES __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->snes), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 202, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->snes), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 202, __pyx_L1_error)
/* "PETSc/CAPI.pyx":203
* cdef SNES retv = SNES()
@@ -234656,7 +254851,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscTS_New(TS __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->ts), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 215, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->ts), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 215, __pyx_L1_error)
/* "PETSc/CAPI.pyx":216
* cdef TS retv = TS()
@@ -234803,7 +254998,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscTAO_New(Tao __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->tao), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 228, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->tao), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 228, __pyx_L1_error)
/* "PETSc/CAPI.pyx":229
* cdef TAO retv = TAO()
@@ -234950,7 +255145,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscAO_New(AO __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->ao), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 241, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->ao), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 241, __pyx_L1_error)
/* "PETSc/CAPI.pyx":242
* cdef AO retv = AO()
@@ -235102,7 +255297,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscDM_New(DM __pyx_v_arg) {
* return retv
*
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->dm), __pyx_v_arg); if (unlikely(__pyx_t_3 == -1)) __PYX_ERR(47, 254, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->dm), __pyx_v_arg); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(47, 254, __pyx_L1_error)
/* "PETSc/CAPI.pyx":255
* cdef DM retv = subtype_DM(arg)()
@@ -235250,7 +255445,7 @@ static PyObject *__pyx_f_8petsc4py_5PETSc_PyPetscPartitioner_New(PetscPartitione
* return retv
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->part), __pyx_v_arg); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(47, 267, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_setref((&__pyx_v_retv->part), __pyx_v_arg); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(47, 267, __pyx_L1_error)
/* "PETSc/CAPI.pyx":268
* cdef Partitioner retv = Partitioner()
@@ -235362,7 +255557,7 @@ static PetscPartitioner __pyx_f_8petsc4py_5PETSc_PyPetscPartitioner_Get(PyObject
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":192
+/* "PETSc/PETSc.pyx":196
* cdef object tracebacklist = []
*
* cdef int traceback(MPI_Comm comm, # <<<<<<<<<<<<<<
@@ -235383,16 +255578,16 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
PyObject *__pyx_t_1 = NULL;
PyObject *__pyx_t_2 = NULL;
PyObject *__pyx_t_3 = NULL;
- Py_ssize_t __pyx_t_4;
+ int __pyx_t_4;
PyObject *__pyx_t_5 = NULL;
int __pyx_t_6;
int __pyx_t_7;
#ifdef WITH_THREAD
- PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();
+ PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
#endif
__Pyx_RefNannySetupContext("traceback", 0);
- /* "PETSc/PETSc.pyx":200
+ /* "PETSc/PETSc.pyx":204
* const_char *mess,
* void *ctx) with gil:
* cdef PetscLogDouble mem=0 # <<<<<<<<<<<<<<
@@ -235401,7 +255596,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
__pyx_v_mem = 0.0;
- /* "PETSc/PETSc.pyx":201
+ /* "PETSc/PETSc.pyx":205
* void *ctx) with gil:
* cdef PetscLogDouble mem=0
* cdef PetscLogDouble rss=0 # <<<<<<<<<<<<<<
@@ -235410,7 +255605,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
__pyx_v_rss = 0.0;
- /* "PETSc/PETSc.pyx":202
+ /* "PETSc/PETSc.pyx":206
* cdef PetscLogDouble mem=0
* cdef PetscLogDouble rss=0
* cdef const_char *text=NULL # <<<<<<<<<<<<<<
@@ -235419,7 +255614,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
__pyx_v_text = NULL;
- /* "PETSc/PETSc.pyx":204
+ /* "PETSc/PETSc.pyx":208
* cdef const_char *text=NULL
* global tracebacklist
* cdef object tbl = tracebacklist # <<<<<<<<<<<<<<
@@ -235429,40 +255624,40 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__Pyx_INCREF(__pyx_v_8petsc4py_5PETSc_tracebacklist);
__pyx_v_tbl = __pyx_v_8petsc4py_5PETSc_tracebacklist;
- /* "PETSc/PETSc.pyx":205
+ /* "PETSc/PETSc.pyx":209
* global tracebacklist
* cdef object tbl = tracebacklist
* fun = bytes2str(cfun) # <<<<<<<<<<<<<<
* fnm = bytes2str(cfile)
* m = "%s() line %d in %s" % (fun, line, fnm)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cfun); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 205, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cfun); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 209, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_fun = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":206
+ /* "PETSc/PETSc.pyx":210
* cdef object tbl = tracebacklist
* fun = bytes2str(cfun)
* fnm = bytes2str(cfile) # <<<<<<<<<<<<<<
* m = "%s() line %d in %s" % (fun, line, fnm)
* tbl.insert(0, m)
*/
- __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cfile); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 206, __pyx_L1_error)
+ __pyx_t_1 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_cfile); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_v_fnm = __pyx_t_1;
__pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":207
+ /* "PETSc/PETSc.pyx":211
* fun = bytes2str(cfun)
* fnm = bytes2str(cfile)
* m = "%s() line %d in %s" % (fun, line, fnm) # <<<<<<<<<<<<<<
* tbl.insert(0, m)
* if p != PETSC_ERROR_INITIAL:
*/
- __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 207, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_line); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 211, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 207, __pyx_L1_error)
+ __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 211, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_INCREF(__pyx_v_fun);
__Pyx_GIVEREF(__pyx_v_fun);
@@ -235473,24 +255668,24 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__Pyx_GIVEREF(__pyx_v_fnm);
PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_fnm);
__pyx_t_1 = 0;
- __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_s_line_d_in_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 207, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_s_line_d_in_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 211, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_v_m = ((PyObject*)__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":208
+ /* "PETSc/PETSc.pyx":212
* fnm = bytes2str(cfile)
* m = "%s() line %d in %s" % (fun, line, fnm)
* tbl.insert(0, m) # <<<<<<<<<<<<<<
* if p != PETSC_ERROR_INITIAL:
* return n
*/
- __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_tbl, __pyx_n_s_insert); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 208, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_tbl, __pyx_n_s_insert); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 212, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__pyx_t_3 = NULL;
__pyx_t_4 = 0;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) {
__pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2);
if (likely(__pyx_t_3)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2);
@@ -235500,24 +255695,42 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__pyx_t_4 = 1;
}
}
- __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(11, 208, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (__pyx_t_3) {
- __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ #if CYTHON_FAST_PYCALL
+ if (PyFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_int_0, __pyx_v_m};
+ __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 212, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ #if CYTHON_FAST_PYCCALL
+ if (__Pyx_PyFastCFunction_Check(__pyx_t_2)) {
+ PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_int_0, __pyx_v_m};
+ __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_2, __pyx_temp+1-__pyx_t_4, 2+__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 212, __pyx_L1_error)
+ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_GOTREF(__pyx_t_1);
+ } else
+ #endif
+ {
+ __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(11, 212, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_5);
+ if (__pyx_t_3) {
+ __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL;
+ }
+ __Pyx_INCREF(__pyx_int_0);
+ __Pyx_GIVEREF(__pyx_int_0);
+ PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_int_0);
+ __Pyx_INCREF(__pyx_v_m);
+ __Pyx_GIVEREF(__pyx_v_m);
+ PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_m);
+ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 212, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
- __Pyx_INCREF(__pyx_int_0);
- __Pyx_GIVEREF(__pyx_int_0);
- PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_int_0);
- __Pyx_INCREF(__pyx_v_m);
- __Pyx_GIVEREF(__pyx_v_m);
- PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_v_m);
- __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 208, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":209
+ /* "PETSc/PETSc.pyx":213
* m = "%s() line %d in %s" % (fun, line, fnm)
* tbl.insert(0, m)
* if p != PETSC_ERROR_INITIAL: # <<<<<<<<<<<<<<
@@ -235527,7 +255740,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__pyx_t_6 = ((__pyx_v_p != PETSC_ERROR_INITIAL) != 0);
if (__pyx_t_6) {
- /* "PETSc/PETSc.pyx":210
+ /* "PETSc/PETSc.pyx":214
* tbl.insert(0, m)
* if p != PETSC_ERROR_INITIAL:
* return n # <<<<<<<<<<<<<<
@@ -235537,7 +255750,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__pyx_r = __pyx_v_n;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":209
+ /* "PETSc/PETSc.pyx":213
* m = "%s() line %d in %s" % (fun, line, fnm)
* tbl.insert(0, m)
* if p != PETSC_ERROR_INITIAL: # <<<<<<<<<<<<<<
@@ -235546,16 +255759,16 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
}
- /* "PETSc/PETSc.pyx":212
+ /* "PETSc/PETSc.pyx":216
* return n
* #
* del tbl[1:] # clear any previous stuff # <<<<<<<<<<<<<<
* if n == PETSC_ERR_MEM: # special case
* PetscMallocGetCurrentUsage(&mem)
*/
- if (__Pyx_PyObject_DelSlice(__pyx_v_tbl, 1, 0, NULL, NULL, &__pyx_slice__67, 1, 0, 1) < 0) __PYX_ERR(11, 212, __pyx_L1_error)
+ if (__Pyx_PyObject_DelSlice(__pyx_v_tbl, 1, 0, NULL, NULL, &__pyx_slice__70, 1, 0, 1) < 0) __PYX_ERR(11, 216, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":213
+ /* "PETSc/PETSc.pyx":217
* #
* del tbl[1:] # clear any previous stuff
* if n == PETSC_ERR_MEM: # special case # <<<<<<<<<<<<<<
@@ -235565,7 +255778,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__pyx_t_6 = ((__pyx_v_n == PETSC_ERR_MEM) != 0);
if (__pyx_t_6) {
- /* "PETSc/PETSc.pyx":214
+ /* "PETSc/PETSc.pyx":218
* del tbl[1:] # clear any previous stuff
* if n == PETSC_ERR_MEM: # special case
* PetscMallocGetCurrentUsage(&mem) # <<<<<<<<<<<<<<
@@ -235574,7 +255787,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
PetscMallocGetCurrentUsage((&__pyx_v_mem));
- /* "PETSc/PETSc.pyx":215
+ /* "PETSc/PETSc.pyx":219
* if n == PETSC_ERR_MEM: # special case
* PetscMallocGetCurrentUsage(&mem)
* PetscMemoryGetCurrentUsage(&rss) # <<<<<<<<<<<<<<
@@ -235583,18 +255796,18 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
PetscMemoryGetCurrentUsage((&__pyx_v_rss));
- /* "PETSc/PETSc.pyx":218
+ /* "PETSc/PETSc.pyx":222
* m = ("Out of memory. "
* "Allocated: %d, "
* "Used by process: %d") % (mem, rss) # <<<<<<<<<<<<<<
* tbl.append(m)
* else:
*/
- __pyx_t_1 = PyFloat_FromDouble(__pyx_v_mem); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 218, __pyx_L1_error)
+ __pyx_t_1 = PyFloat_FromDouble(__pyx_v_mem); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_2 = PyFloat_FromDouble(__pyx_v_rss); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 218, __pyx_L1_error)
+ __pyx_t_2 = PyFloat_FromDouble(__pyx_v_rss); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(11, 218, __pyx_L1_error)
+ __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(11, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
@@ -235602,22 +255815,22 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_2);
__pyx_t_1 = 0;
__pyx_t_2 = 0;
- __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_Out_of_memory_Allocated_d_Used_b, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 218, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_Out_of_memory_Allocated_d_Used_b, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 222, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF_SET(__pyx_v_m, ((PyObject*)__pyx_t_2));
__pyx_t_2 = 0;
- /* "PETSc/PETSc.pyx":219
+ /* "PETSc/PETSc.pyx":223
* "Allocated: %d, "
* "Used by process: %d") % (mem, rss)
* tbl.append(m) # <<<<<<<<<<<<<<
* else:
* PetscErrorMessage(n, &text, NULL)
*/
- __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_tbl, __pyx_v_m); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(11, 219, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_tbl, __pyx_v_m); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(11, 223, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":213
+ /* "PETSc/PETSc.pyx":217
* #
* del tbl[1:] # clear any previous stuff
* if n == PETSC_ERR_MEM: # special case # <<<<<<<<<<<<<<
@@ -235627,7 +255840,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
goto __pyx_L4;
}
- /* "PETSc/PETSc.pyx":221
+ /* "PETSc/PETSc.pyx":225
* tbl.append(m)
* else:
* PetscErrorMessage(n, &text, NULL) # <<<<<<<<<<<<<<
@@ -235639,7 +255852,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
}
__pyx_L4:;
- /* "PETSc/PETSc.pyx":222
+ /* "PETSc/PETSc.pyx":226
* else:
* PetscErrorMessage(n, &text, NULL)
* if text != NULL: tbl.append(bytes2str(text)) # <<<<<<<<<<<<<<
@@ -235648,13 +255861,13 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
__pyx_t_6 = ((__pyx_v_text != NULL) != 0);
if (__pyx_t_6) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_text); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 222, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_text); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_tbl, __pyx_t_2); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(11, 222, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_tbl, __pyx_t_2); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(11, 226, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
- /* "PETSc/PETSc.pyx":223
+ /* "PETSc/PETSc.pyx":227
* PetscErrorMessage(n, &text, NULL)
* if text != NULL: tbl.append(bytes2str(text))
* if mess != NULL: tbl.append(bytes2str(mess)) # <<<<<<<<<<<<<<
@@ -235663,13 +255876,13 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
*/
__pyx_t_6 = ((__pyx_v_mess != NULL) != 0);
if (__pyx_t_6) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_mess); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 223, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_bytes2str(__pyx_v_mess); if (unlikely(!__pyx_t_2)) __PYX_ERR(11, 227, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
- __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_tbl, __pyx_t_2); if (unlikely(__pyx_t_7 == -1)) __PYX_ERR(11, 223, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_tbl, __pyx_t_2); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(11, 227, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
}
- /* "PETSc/PETSc.pyx":224
+ /* "PETSc/PETSc.pyx":228
* if text != NULL: tbl.append(bytes2str(text))
* if mess != NULL: tbl.append(bytes2str(mess))
* <void>comm; <void>ctx; # unused # <<<<<<<<<<<<<<
@@ -235679,7 +255892,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
((void)__pyx_v_comm);
((void)__pyx_v_ctx);
- /* "PETSc/PETSc.pyx":225
+ /* "PETSc/PETSc.pyx":229
* if mess != NULL: tbl.append(bytes2str(mess))
* <void>comm; <void>ctx; # unused
* return n # <<<<<<<<<<<<<<
@@ -235689,7 +255902,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__pyx_r = __pyx_v_n;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":192
+ /* "PETSc/PETSc.pyx":196
* cdef object tracebacklist = []
*
* cdef int traceback(MPI_Comm comm, # <<<<<<<<<<<<<<
@@ -235703,7 +255916,7 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_5);
- __Pyx_WriteUnraisable("petsc4py.PETSc.traceback", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
+ __Pyx_WriteUnraisable("petsc4py.PETSc.traceback", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_tbl);
@@ -235712,12 +255925,12 @@ static int __pyx_f_8petsc4py_5PETSc_traceback(MPI_Comm __pyx_v_comm, int __pyx_v
__Pyx_XDECREF(__pyx_v_m);
__Pyx_RefNannyFinishContext();
#ifdef WITH_THREAD
- PyGILState_Release(__pyx_gilstate_save);
+ __Pyx_PyGILState_Release(__pyx_gilstate_save);
#endif
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":227
+/* "PETSc/PETSc.pyx":231
* return n
*
* cdef int PetscPythonErrorHandler( # <<<<<<<<<<<<<<
@@ -235730,7 +255943,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler(MPI_Comm __pyx_v_com
int __pyx_t_1;
int __pyx_t_2;
- /* "PETSc/PETSc.pyx":237
+ /* "PETSc/PETSc.pyx":241
* void *ctx) nogil:
* global tracebacklist
* if Py_IsInitialized() and (<void*>tracebacklist) != NULL: # <<<<<<<<<<<<<<
@@ -235748,7 +255961,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler(MPI_Comm __pyx_v_com
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/PETSc.pyx":238
+ /* "PETSc/PETSc.pyx":242
* global tracebacklist
* if Py_IsInitialized() and (<void*>tracebacklist) != NULL:
* return traceback(comm, line, cfun, cfile, n, p, mess, ctx) # <<<<<<<<<<<<<<
@@ -235758,7 +255971,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler(MPI_Comm __pyx_v_com
__pyx_r = __pyx_f_8petsc4py_5PETSc_traceback(__pyx_v_comm, __pyx_v_line, __pyx_v_cfun, __pyx_v_cfile, __pyx_v_n, __pyx_v_p, __pyx_v_mess, __pyx_v_ctx);
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":237
+ /* "PETSc/PETSc.pyx":241
* void *ctx) nogil:
* global tracebacklist
* if Py_IsInitialized() and (<void*>tracebacklist) != NULL: # <<<<<<<<<<<<<<
@@ -235767,7 +255980,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler(MPI_Comm __pyx_v_com
*/
}
- /* "PETSc/PETSc.pyx":240
+ /* "PETSc/PETSc.pyx":244
* return traceback(comm, line, cfun, cfile, n, p, mess, ctx)
* else:
* return PetscTBEH(comm, line, cfun, cfile, n, p, mess, ctx) # <<<<<<<<<<<<<<
@@ -235779,7 +255992,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler(MPI_Comm __pyx_v_com
goto __pyx_L0;
}
- /* "PETSc/PETSc.pyx":227
+ /* "PETSc/PETSc.pyx":231
* return n
*
* cdef int PetscPythonErrorHandler( # <<<<<<<<<<<<<<
@@ -235792,7 +256005,7 @@ static int __pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler(MPI_Comm __pyx_v_com
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":273
+/* "PETSc/PETSc.pyx":277
* cdef char** PyPetsc_Argv = NULL
*
* cdef int getinitargs(object args, int *argc, char **argv[]) except -1: # <<<<<<<<<<<<<<
@@ -235824,7 +256037,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__Pyx_RefNannySetupContext("getinitargs", 0);
__Pyx_INCREF(__pyx_v_args);
- /* "PETSc/PETSc.pyx":275
+ /* "PETSc/PETSc.pyx":279
* cdef int getinitargs(object args, int *argc, char **argv[]) except -1:
* # allocate command line arguments
* cdef int i, c = 0 # <<<<<<<<<<<<<<
@@ -235833,7 +256046,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
*/
__pyx_v_c = 0;
- /* "PETSc/PETSc.pyx":276
+ /* "PETSc/PETSc.pyx":280
* # allocate command line arguments
* cdef int i, c = 0
* cdef char **v = NULL # <<<<<<<<<<<<<<
@@ -235842,7 +256055,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
*/
__pyx_v_v = NULL;
- /* "PETSc/PETSc.pyx":277
+ /* "PETSc/PETSc.pyx":281
* cdef int i, c = 0
* cdef char **v = NULL
* if args is None: args = [] # <<<<<<<<<<<<<<
@@ -235852,45 +256065,45 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__pyx_t_1 = (__pyx_v_args == Py_None);
__pyx_t_2 = (__pyx_t_1 != 0);
if (__pyx_t_2) {
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 277, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 281, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF_SET(__pyx_v_args, __pyx_t_3);
__pyx_t_3 = 0;
}
- /* "PETSc/PETSc.pyx":278
+ /* "PETSc/PETSc.pyx":282
* cdef char **v = NULL
* if args is None: args = []
* args = [str(a).encode() for a in args] # <<<<<<<<<<<<<<
* args = [a for a in args if a]
* c = <int> len(args)
*/
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
if (likely(PyList_CheckExact(__pyx_v_args)) || PyTuple_CheckExact(__pyx_v_args)) {
__pyx_t_4 = __pyx_v_args; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
__pyx_t_6 = NULL;
} else {
- __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_6)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_6)) __PYX_ERR(11, 282, __pyx_L1_error)
}
for (;;) {
if (likely(!__pyx_t_6)) {
if (likely(PyList_CheckExact(__pyx_t_4))) {
if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_7 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 278, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_7 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 282, __pyx_L1_error)
#else
- __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
} else {
if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 278, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 282, __pyx_L1_error)
#else
- __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
}
@@ -235899,8 +256112,8 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
if (unlikely(!__pyx_t_7)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(11, 278, __pyx_L1_error)
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ else __PYX_ERR(11, 282, __pyx_L1_error)
}
break;
}
@@ -235908,19 +256121,19 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
}
__Pyx_XDECREF_SET(__pyx_v_a, __pyx_t_7);
__pyx_t_7 = 0;
- __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_INCREF(__pyx_v_a);
__Pyx_GIVEREF(__pyx_v_a);
PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_a);
- __pyx_t_9 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_9 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_encode); if (unlikely(!__pyx_t_8)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_encode); if (unlikely(!__pyx_t_8)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_9 = NULL;
- if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
+ if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_9)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
@@ -235930,53 +256143,53 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
}
}
if (__pyx_t_9) {
- __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
} else {
- __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 278, __pyx_L1_error)
+ __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 282, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_7))) __PYX_ERR(11, 278, __pyx_L1_error)
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_7))) __PYX_ERR(11, 282, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_args, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/PETSc.pyx":279
+ /* "PETSc/PETSc.pyx":283
* if args is None: args = []
* args = [str(a).encode() for a in args]
* args = [a for a in args if a] # <<<<<<<<<<<<<<
* c = <int> len(args)
* v = <char**> malloc(<size_t>(c+1)*sizeof(char*))
*/
- __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 279, __pyx_L1_error)
+ __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
if (likely(PyList_CheckExact(__pyx_v_args)) || PyTuple_CheckExact(__pyx_v_args)) {
__pyx_t_4 = __pyx_v_args; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
__pyx_t_6 = NULL;
} else {
- __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(11, 279, __pyx_L1_error)
+ __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_args); if (unlikely(!__pyx_t_4)) __PYX_ERR(11, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
- __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_6)) __PYX_ERR(11, 279, __pyx_L1_error)
+ __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_6)) __PYX_ERR(11, 283, __pyx_L1_error)
}
for (;;) {
if (likely(!__pyx_t_6)) {
if (likely(PyList_CheckExact(__pyx_t_4))) {
if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_7 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 279, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_7 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 283, __pyx_L1_error)
#else
- __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 279, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
} else {
if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
- #if CYTHON_COMPILING_IN_CPYTHON
- __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 279, __pyx_L1_error)
+ #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
+ __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(11, 283, __pyx_L1_error)
#else
- __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 279, __pyx_L1_error)
+ __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(11, 283, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
}
@@ -235985,8 +256198,8 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
if (unlikely(!__pyx_t_7)) {
PyObject* exc_type = PyErr_Occurred();
if (exc_type) {
- if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
- else __PYX_ERR(11, 279, __pyx_L1_error)
+ if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
+ else __PYX_ERR(11, 283, __pyx_L1_error)
}
break;
}
@@ -235994,26 +256207,26 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
}
__Pyx_XDECREF_SET(__pyx_v_a, __pyx_t_7);
__pyx_t_7 = 0;
- __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_a); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(11, 279, __pyx_L1_error)
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_a); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(11, 283, __pyx_L1_error)
if (__pyx_t_2) {
- if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_v_a))) __PYX_ERR(11, 279, __pyx_L1_error)
+ if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_v_a))) __PYX_ERR(11, 283, __pyx_L1_error)
}
}
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF_SET(__pyx_v_args, __pyx_t_3);
__pyx_t_3 = 0;
- /* "PETSc/PETSc.pyx":280
+ /* "PETSc/PETSc.pyx":284
* args = [str(a).encode() for a in args]
* args = [a for a in args if a]
* c = <int> len(args) # <<<<<<<<<<<<<<
* v = <char**> malloc(<size_t>(c+1)*sizeof(char*))
* if v == NULL: raise MemoryError
*/
- __pyx_t_5 = PyObject_Length(__pyx_v_args); if (unlikely(__pyx_t_5 == -1)) __PYX_ERR(11, 280, __pyx_L1_error)
+ __pyx_t_5 = PyObject_Length(__pyx_v_args); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(11, 284, __pyx_L1_error)
__pyx_v_c = ((int)__pyx_t_5);
- /* "PETSc/PETSc.pyx":281
+ /* "PETSc/PETSc.pyx":285
* args = [a for a in args if a]
* c = <int> len(args)
* v = <char**> malloc(<size_t>(c+1)*sizeof(char*)) # <<<<<<<<<<<<<<
@@ -236022,7 +256235,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
*/
__pyx_v_v = ((char **)malloc((((size_t)(__pyx_v_c + 1)) * (sizeof(char *)))));
- /* "PETSc/PETSc.pyx":282
+ /* "PETSc/PETSc.pyx":286
* c = <int> len(args)
* v = <char**> malloc(<size_t>(c+1)*sizeof(char*))
* if v == NULL: raise MemoryError # <<<<<<<<<<<<<<
@@ -236031,10 +256244,10 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
*/
__pyx_t_2 = ((__pyx_v_v == NULL) != 0);
if (__pyx_t_2) {
- PyErr_NoMemory(); __PYX_ERR(11, 282, __pyx_L1_error)
+ PyErr_NoMemory(); __PYX_ERR(11, 286, __pyx_L1_error)
}
- /* "PETSc/PETSc.pyx":283
+ /* "PETSc/PETSc.pyx":287
* v = <char**> malloc(<size_t>(c+1)*sizeof(char*))
* if v == NULL: raise MemoryError
* memset(v, 0, <size_t>(c+1)*sizeof(char*)) # <<<<<<<<<<<<<<
@@ -236043,7 +256256,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
*/
memset(__pyx_v_v, 0, (((size_t)(__pyx_v_c + 1)) * (sizeof(char *))));
- /* "PETSc/PETSc.pyx":284
+ /* "PETSc/PETSc.pyx":288
* if v == NULL: raise MemoryError
* memset(v, 0, <size_t>(c+1)*sizeof(char*))
* try: # <<<<<<<<<<<<<<
@@ -236059,7 +256272,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__Pyx_XGOTREF(__pyx_t_12);
/*try:*/ {
- /* "PETSc/PETSc.pyx":285
+ /* "PETSc/PETSc.pyx":289
* memset(v, 0, <size_t>(c+1)*sizeof(char*))
* try:
* for 0 <= i < c: # <<<<<<<<<<<<<<
@@ -236069,20 +256282,20 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__pyx_t_13 = __pyx_v_c;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_13; __pyx_v_i++) {
- /* "PETSc/PETSc.pyx":286
+ /* "PETSc/PETSc.pyx":290
* try:
* for 0 <= i < c:
* v[i] = strdup(args[i]) # <<<<<<<<<<<<<<
* if v[i] == NULL:
* raise MemoryError
*/
- __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_args, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 286, __pyx_L10_error)
+ __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_args, __pyx_v_i, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_3)) __PYX_ERR(11, 290, __pyx_L10_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_14 = __Pyx_PyObject_AsString(__pyx_t_3); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(11, 286, __pyx_L10_error)
+ __pyx_t_14 = __Pyx_PyObject_AsWritableString(__pyx_t_3); if (unlikely((!__pyx_t_14) && PyErr_Occurred())) __PYX_ERR(11, 290, __pyx_L10_error)
(__pyx_v_v[__pyx_v_i]) = strdup(__pyx_t_14);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/PETSc.pyx":287
+ /* "PETSc/PETSc.pyx":291
* for 0 <= i < c:
* v[i] = strdup(args[i])
* if v[i] == NULL: # <<<<<<<<<<<<<<
@@ -236092,16 +256305,16 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__pyx_t_2 = (((__pyx_v_v[__pyx_v_i]) == NULL) != 0);
if (__pyx_t_2) {
- /* "PETSc/PETSc.pyx":288
+ /* "PETSc/PETSc.pyx":292
* v[i] = strdup(args[i])
* if v[i] == NULL:
* raise MemoryError # <<<<<<<<<<<<<<
* except:
* delinitargs(&c, &v); raise
*/
- PyErr_NoMemory(); __PYX_ERR(11, 288, __pyx_L10_error)
+ PyErr_NoMemory(); __PYX_ERR(11, 292, __pyx_L10_error)
- /* "PETSc/PETSc.pyx":287
+ /* "PETSc/PETSc.pyx":291
* for 0 <= i < c:
* v[i] = strdup(args[i])
* if v[i] == NULL: # <<<<<<<<<<<<<<
@@ -236111,7 +256324,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
}
}
- /* "PETSc/PETSc.pyx":284
+ /* "PETSc/PETSc.pyx":288
* if v == NULL: raise MemoryError
* memset(v, 0, <size_t>(c+1)*sizeof(char*))
* try: # <<<<<<<<<<<<<<
@@ -236122,16 +256335,15 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
__Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
__Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
- goto __pyx_L17_try_end;
+ goto __pyx_L15_try_end;
__pyx_L10_error:;
- __Pyx_PyThreadState_assign
__Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
__Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/PETSc.pyx":289
+ /* "PETSc/PETSc.pyx":293
* if v[i] == NULL:
* raise MemoryError
* except: # <<<<<<<<<<<<<<
@@ -236140,12 +256352,12 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
*/
/*except:*/ {
__Pyx_AddTraceback("petsc4py.PETSc.getinitargs", __pyx_clineno, __pyx_lineno, __pyx_filename);
- if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_4, &__pyx_t_7) < 0) __PYX_ERR(11, 289, __pyx_L12_except_error)
+ if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_4, &__pyx_t_7) < 0) __PYX_ERR(11, 293, __pyx_L12_except_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GOTREF(__pyx_t_7);
- /* "PETSc/PETSc.pyx":290
+ /* "PETSc/PETSc.pyx":294
* raise MemoryError
* except:
* delinitargs(&c, &v); raise # <<<<<<<<<<<<<<
@@ -236158,27 +256370,26 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__Pyx_XGIVEREF(__pyx_t_7);
__Pyx_ErrRestoreWithState(__pyx_t_3, __pyx_t_4, __pyx_t_7);
__pyx_t_3 = 0; __pyx_t_4 = 0; __pyx_t_7 = 0;
- __PYX_ERR(11, 290, __pyx_L12_except_error)
+ __PYX_ERR(11, 294, __pyx_L12_except_error)
}
__pyx_L12_except_error:;
- /* "PETSc/PETSc.pyx":284
+ /* "PETSc/PETSc.pyx":288
* if v == NULL: raise MemoryError
* memset(v, 0, <size_t>(c+1)*sizeof(char*))
* try: # <<<<<<<<<<<<<<
* for 0 <= i < c:
* v[i] = strdup(args[i])
*/
- __Pyx_PyThreadState_assign
__Pyx_XGIVEREF(__pyx_t_10);
__Pyx_XGIVEREF(__pyx_t_11);
__Pyx_XGIVEREF(__pyx_t_12);
__Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12);
goto __pyx_L1_error;
- __pyx_L17_try_end:;
+ __pyx_L15_try_end:;
}
- /* "PETSc/PETSc.pyx":291
+ /* "PETSc/PETSc.pyx":295
* except:
* delinitargs(&c, &v); raise
* argc[0] = c; argv[0] = v # <<<<<<<<<<<<<<
@@ -236188,7 +256399,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
(__pyx_v_argc[0]) = __pyx_v_c;
(__pyx_v_argv[0]) = __pyx_v_v;
- /* "PETSc/PETSc.pyx":292
+ /* "PETSc/PETSc.pyx":296
* delinitargs(&c, &v); raise
* argc[0] = c; argv[0] = v
* return 0 # <<<<<<<<<<<<<<
@@ -236198,7 +256409,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":273
+ /* "PETSc/PETSc.pyx":277
* cdef char** PyPetsc_Argv = NULL
*
* cdef int getinitargs(object args, int *argc, char **argv[]) except -1: # <<<<<<<<<<<<<<
@@ -236222,7 +256433,7 @@ static int __pyx_f_8petsc4py_5PETSc_getinitargs(PyObject *__pyx_v_args, int *__p
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":294
+/* "PETSc/PETSc.pyx":298
* return 0
*
* cdef void delinitargs(int *argc, char **argv[]) nogil: # <<<<<<<<<<<<<<
@@ -236238,7 +256449,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
int __pyx_t_2;
int __pyx_t_3;
- /* "PETSc/PETSc.pyx":296
+ /* "PETSc/PETSc.pyx":300
* cdef void delinitargs(int *argc, char **argv[]) nogil:
* # dallocate command line arguments
* cdef int i, c = argc[0] # <<<<<<<<<<<<<<
@@ -236247,7 +256458,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
*/
__pyx_v_c = (__pyx_v_argc[0]);
- /* "PETSc/PETSc.pyx":297
+ /* "PETSc/PETSc.pyx":301
* # dallocate command line arguments
* cdef int i, c = argc[0]
* cdef char** v = argv[0] # <<<<<<<<<<<<<<
@@ -236256,7 +256467,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
*/
__pyx_v_v = (__pyx_v_argv[0]);
- /* "PETSc/PETSc.pyx":298
+ /* "PETSc/PETSc.pyx":302
* cdef int i, c = argc[0]
* cdef char** v = argv[0]
* argc[0] = 0; argv[0] = NULL; # <<<<<<<<<<<<<<
@@ -236266,7 +256477,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
(__pyx_v_argc[0]) = 0;
(__pyx_v_argv[0]) = NULL;
- /* "PETSc/PETSc.pyx":299
+ /* "PETSc/PETSc.pyx":303
* cdef char** v = argv[0]
* argc[0] = 0; argv[0] = NULL;
* if c >= 0 and v != NULL: # <<<<<<<<<<<<<<
@@ -236284,7 +256495,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
__pyx_L4_bool_binop_done:;
if (__pyx_t_1) {
- /* "PETSc/PETSc.pyx":300
+ /* "PETSc/PETSc.pyx":304
* argc[0] = 0; argv[0] = NULL;
* if c >= 0 and v != NULL:
* for 0 <= i < c: # <<<<<<<<<<<<<<
@@ -236294,7 +256505,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
__pyx_t_3 = __pyx_v_c;
for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_3; __pyx_v_i++) {
- /* "PETSc/PETSc.pyx":301
+ /* "PETSc/PETSc.pyx":305
* if c >= 0 and v != NULL:
* for 0 <= i < c:
* if v[i] != NULL: free(v[i]) # <<<<<<<<<<<<<<
@@ -236307,7 +256518,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
}
}
- /* "PETSc/PETSc.pyx":302
+ /* "PETSc/PETSc.pyx":306
* for 0 <= i < c:
* if v[i] != NULL: free(v[i])
* free(v) # <<<<<<<<<<<<<<
@@ -236316,7 +256527,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
*/
free(__pyx_v_v);
- /* "PETSc/PETSc.pyx":299
+ /* "PETSc/PETSc.pyx":303
* cdef char** v = argv[0]
* argc[0] = 0; argv[0] = NULL;
* if c >= 0 and v != NULL: # <<<<<<<<<<<<<<
@@ -236325,7 +256536,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
*/
}
- /* "PETSc/PETSc.pyx":294
+ /* "PETSc/PETSc.pyx":298
* return 0
*
* cdef void delinitargs(int *argc, char **argv[]) nogil: # <<<<<<<<<<<<<<
@@ -236336,7 +256547,7 @@ static void __pyx_f_8petsc4py_5PETSc_delinitargs(int *__pyx_v_argc, char ***__py
/* function exit code */
}
-/* "PETSc/PETSc.pyx":304
+/* "PETSc/PETSc.pyx":308
* free(v)
*
* cdef void finalize() nogil: # <<<<<<<<<<<<<<
@@ -236348,7 +256559,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
int __pyx_v_ierr;
int __pyx_t_1;
- /* "PETSc/PETSc.pyx":305
+ /* "PETSc/PETSc.pyx":309
*
* cdef void finalize() nogil:
* cdef int ierr = 0 # <<<<<<<<<<<<<<
@@ -236357,7 +256568,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
__pyx_v_ierr = 0;
- /* "PETSc/PETSc.pyx":308
+ /* "PETSc/PETSc.pyx":312
* # deallocate command line arguments
* global PyPetsc_Argc; global PyPetsc_Argv;
* delinitargs(&PyPetsc_Argc, &PyPetsc_Argv) # <<<<<<<<<<<<<<
@@ -236366,7 +256577,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
__pyx_f_8petsc4py_5PETSc_delinitargs((&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argc), (&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argv));
- /* "PETSc/PETSc.pyx":310
+ /* "PETSc/PETSc.pyx":314
* delinitargs(&PyPetsc_Argc, &PyPetsc_Argv)
* # manage PETSc finalization
* if not (<int>PetscInitializeCalled): return # <<<<<<<<<<<<<<
@@ -236378,7 +256589,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
goto __pyx_L0;
}
- /* "PETSc/PETSc.pyx":311
+ /* "PETSc/PETSc.pyx":315
* # manage PETSc finalization
* if not (<int>PetscInitializeCalled): return
* if (<int>PetscFinalizeCalled): return # <<<<<<<<<<<<<<
@@ -236390,7 +256601,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
goto __pyx_L0;
}
- /* "PETSc/PETSc.pyx":313
+ /* "PETSc/PETSc.pyx":317
* if (<int>PetscFinalizeCalled): return
* # deinstall Python error handler
* ierr = PetscPopErrorHandler() # <<<<<<<<<<<<<<
@@ -236399,7 +256610,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
__pyx_v_ierr = PetscPopErrorHandler();
- /* "PETSc/PETSc.pyx":314
+ /* "PETSc/PETSc.pyx":318
* # deinstall Python error handler
* ierr = PetscPopErrorHandler()
* if ierr != 0: # <<<<<<<<<<<<<<
@@ -236409,7 +256620,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
__pyx_t_1 = ((__pyx_v_ierr != 0) != 0);
if (__pyx_t_1) {
- /* "PETSc/PETSc.pyx":315
+ /* "PETSc/PETSc.pyx":319
* ierr = PetscPopErrorHandler()
* if ierr != 0:
* fprintf(stderr, "PetscPopErrorHandler() failed " # <<<<<<<<<<<<<<
@@ -236418,7 +256629,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
fprintf(stderr, ((char *)"PetscPopErrorHandler() failed [error code: %d]\n"), __pyx_v_ierr);
- /* "PETSc/PETSc.pyx":314
+ /* "PETSc/PETSc.pyx":318
* # deinstall Python error handler
* ierr = PetscPopErrorHandler()
* if ierr != 0: # <<<<<<<<<<<<<<
@@ -236427,7 +256638,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
}
- /* "PETSc/PETSc.pyx":318
+ /* "PETSc/PETSc.pyx":322
* "[error code: %d]\n", ierr)
* # finalize PETSc
* ierr = PetscFinalize() # <<<<<<<<<<<<<<
@@ -236436,7 +256647,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
__pyx_v_ierr = PetscFinalize();
- /* "PETSc/PETSc.pyx":319
+ /* "PETSc/PETSc.pyx":323
* # finalize PETSc
* ierr = PetscFinalize()
* if ierr != 0: # <<<<<<<<<<<<<<
@@ -236446,7 +256657,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
__pyx_t_1 = ((__pyx_v_ierr != 0) != 0);
if (__pyx_t_1) {
- /* "PETSc/PETSc.pyx":320
+ /* "PETSc/PETSc.pyx":324
* ierr = PetscFinalize()
* if ierr != 0:
* fprintf(stderr, "PetscFinalize() failed " # <<<<<<<<<<<<<<
@@ -236455,7 +256666,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
fprintf(stderr, ((char *)"PetscFinalize() failed [error code: %d]\n"), __pyx_v_ierr);
- /* "PETSc/PETSc.pyx":319
+ /* "PETSc/PETSc.pyx":323
* # finalize PETSc
* ierr = PetscFinalize()
* if ierr != 0: # <<<<<<<<<<<<<<
@@ -236464,7 +256675,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
*/
}
- /* "PETSc/PETSc.pyx":304
+ /* "PETSc/PETSc.pyx":308
* free(v)
*
* cdef void finalize() nogil: # <<<<<<<<<<<<<<
@@ -236476,7 +256687,7 @@ static void __pyx_f_8petsc4py_5PETSc_finalize(void) {
__pyx_L0:;
}
-/* "PETSc/PETSc.pyx":324
+/* "PETSc/PETSc.pyx":328
* # and we are done, see you later !!
*
* cdef int initialize(object args, object comm) except -1: # <<<<<<<<<<<<<<
@@ -236493,7 +256704,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
MPI_Comm __pyx_t_3;
__Pyx_RefNannySetupContext("initialize", 0);
- /* "PETSc/PETSc.pyx":325
+ /* "PETSc/PETSc.pyx":329
*
* cdef int initialize(object args, object comm) except -1:
* if (<int>PetscInitializeCalled): return 1 # <<<<<<<<<<<<<<
@@ -236506,7 +256717,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
goto __pyx_L0;
}
- /* "PETSc/PETSc.pyx":326
+ /* "PETSc/PETSc.pyx":330
* cdef int initialize(object args, object comm) except -1:
* if (<int>PetscInitializeCalled): return 1
* if (<int>PetscFinalizeCalled): return 0 # <<<<<<<<<<<<<<
@@ -236519,35 +256730,35 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
goto __pyx_L0;
}
- /* "PETSc/PETSc.pyx":329
+ /* "PETSc/PETSc.pyx":333
* # allocate command line arguments
* global PyPetsc_Argc; global PyPetsc_Argv;
* getinitargs(args, &PyPetsc_Argc, &PyPetsc_Argv) # <<<<<<<<<<<<<<
* # communicator
* global PETSC_COMM_WORLD
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_getinitargs(__pyx_v_args, (&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argc), (&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argv)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 329, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_getinitargs(__pyx_v_args, (&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argc), (&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argv)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 333, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":332
+ /* "PETSc/PETSc.pyx":336
* # communicator
* global PETSC_COMM_WORLD
* PETSC_COMM_WORLD = def_Comm(comm, PETSC_COMM_WORLD) # <<<<<<<<<<<<<<
* # initialize PETSc
* CHKERR( PetscInitialize(&PyPetsc_Argc, &PyPetsc_Argv, NULL, NULL) )
*/
- __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, PETSC_COMM_WORLD); if (unlikely(PyErr_Occurred())) __PYX_ERR(11, 332, __pyx_L1_error)
+ __pyx_t_3 = __pyx_f_8petsc4py_5PETSc_def_Comm(__pyx_v_comm, PETSC_COMM_WORLD); if (unlikely(PyErr_Occurred())) __PYX_ERR(11, 336, __pyx_L1_error)
PETSC_COMM_WORLD = __pyx_t_3;
- /* "PETSc/PETSc.pyx":334
+ /* "PETSc/PETSc.pyx":338
* PETSC_COMM_WORLD = def_Comm(comm, PETSC_COMM_WORLD)
* # initialize PETSc
* CHKERR( PetscInitialize(&PyPetsc_Argc, &PyPetsc_Argv, NULL, NULL) ) # <<<<<<<<<<<<<<
* # install Python error handler
* cdef PetscErrorHandlerFunction handler = NULL
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscInitialize((&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argc), (&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argv), NULL, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 334, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscInitialize((&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argc), (&__pyx_v_8petsc4py_5PETSc_PyPetsc_Argv), NULL, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 338, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":336
+ /* "PETSc/PETSc.pyx":340
* CHKERR( PetscInitialize(&PyPetsc_Argc, &PyPetsc_Argv, NULL, NULL) )
* # install Python error handler
* cdef PetscErrorHandlerFunction handler = NULL # <<<<<<<<<<<<<<
@@ -236556,7 +256767,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
*/
__pyx_v_handler = NULL;
- /* "PETSc/PETSc.pyx":337
+ /* "PETSc/PETSc.pyx":341
* # install Python error handler
* cdef PetscErrorHandlerFunction handler = NULL
* handler = <PetscErrorHandlerFunction>PetscPythonErrorHandler # <<<<<<<<<<<<<<
@@ -236565,16 +256776,16 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
*/
__pyx_v_handler = ((PetscErrorHandlerFunction)__pyx_f_8petsc4py_5PETSc_PetscPythonErrorHandler);
- /* "PETSc/PETSc.pyx":338
+ /* "PETSc/PETSc.pyx":342
* cdef PetscErrorHandlerFunction handler = NULL
* handler = <PetscErrorHandlerFunction>PetscPythonErrorHandler
* CHKERR( PetscPushErrorHandler(handler, NULL) ) # <<<<<<<<<<<<<<
* # register finalization function
* if Py_AtExit(finalize) < 0:
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPushErrorHandler(__pyx_v_handler, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 338, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPushErrorHandler(__pyx_v_handler, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 342, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":340
+ /* "PETSc/PETSc.pyx":344
* CHKERR( PetscPushErrorHandler(handler, NULL) )
* # register finalization function
* if Py_AtExit(finalize) < 0: # <<<<<<<<<<<<<<
@@ -236584,7 +256795,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
__pyx_t_1 = ((Py_AtExit(__pyx_f_8petsc4py_5PETSc_finalize) < 0) != 0);
if (__pyx_t_1) {
- /* "PETSc/PETSc.pyx":341
+ /* "PETSc/PETSc.pyx":345
* # register finalization function
* if Py_AtExit(finalize) < 0:
* PySys_WriteStderr(b"warning: could not register %s with Py_AtExit()", # <<<<<<<<<<<<<<
@@ -236593,7 +256804,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
*/
PySys_WriteStderr(((char *)"warning: could not register %s with Py_AtExit()"), ((char *)"PetscFinalize()"));
- /* "PETSc/PETSc.pyx":340
+ /* "PETSc/PETSc.pyx":344
* CHKERR( PetscPushErrorHandler(handler, NULL) )
* # register finalization function
* if Py_AtExit(finalize) < 0: # <<<<<<<<<<<<<<
@@ -236602,7 +256813,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
*/
}
- /* "PETSc/PETSc.pyx":343
+ /* "PETSc/PETSc.pyx":347
* PySys_WriteStderr(b"warning: could not register %s with Py_AtExit()",
* b"PetscFinalize()")
* return 1 # and we are done, enjoy !! # <<<<<<<<<<<<<<
@@ -236612,7 +256823,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
__pyx_r = 1;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":324
+ /* "PETSc/PETSc.pyx":328
* # and we are done, see you later !!
*
* cdef int initialize(object args, object comm) except -1: # <<<<<<<<<<<<<<
@@ -236629,7 +256840,7 @@ static int __pyx_f_8petsc4py_5PETSc_initialize(PyObject *__pyx_v_args, PyObject
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":382
+/* "PETSc/PETSc.pyx":386
* """
*
* cdef int register() except -1: # <<<<<<<<<<<<<<
@@ -236644,7 +256855,7 @@ static int __pyx_f_8petsc4py_5PETSc_register(void) {
int __pyx_t_2;
__Pyx_RefNannySetupContext("register", 0);
- /* "PETSc/PETSc.pyx":384
+ /* "PETSc/PETSc.pyx":388
* cdef int register() except -1:
* global registercalled
* if registercalled: return 0 # <<<<<<<<<<<<<<
@@ -236657,7 +256868,7 @@ static int __pyx_f_8petsc4py_5PETSc_register(void) {
goto __pyx_L0;
}
- /* "PETSc/PETSc.pyx":385
+ /* "PETSc/PETSc.pyx":389
* global registercalled
* if registercalled: return 0
* registercalled = True # <<<<<<<<<<<<<<
@@ -236666,214 +256877,214 @@ static int __pyx_f_8petsc4py_5PETSc_register(void) {
*/
__pyx_v_8petsc4py_5PETSc_registercalled = 1;
- /* "PETSc/PETSc.pyx":387
+ /* "PETSc/PETSc.pyx":391
* registercalled = True
* # register citation
* CHKERR( PetscCitationsRegister(citation, NULL) ) # <<<<<<<<<<<<<<
* # make sure all PETSc packages are initialized
* CHKERR( PetscInitializePackageAll() )
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCitationsRegister(__pyx_v_8petsc4py_5PETSc_citation, NULL)); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 387, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscCitationsRegister(__pyx_v_8petsc4py_5PETSc_citation, NULL)); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 391, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":389
+ /* "PETSc/PETSc.pyx":393
* CHKERR( PetscCitationsRegister(citation, NULL) )
* # make sure all PETSc packages are initialized
* CHKERR( PetscInitializePackageAll() ) # <<<<<<<<<<<<<<
* # register custom implementations
* import_libpetsc4py()
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscInitializePackageAll()); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 389, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscInitializePackageAll()); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 393, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":391
+ /* "PETSc/PETSc.pyx":395
* CHKERR( PetscInitializePackageAll() )
* # register custom implementations
* import_libpetsc4py() # <<<<<<<<<<<<<<
* CHKERR( PetscPythonRegisterAll() )
* # register Python types
*/
- __pyx_t_2 = import_libpetsc4py(); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 391, __pyx_L1_error)
+ __pyx_t_2 = import_libpetsc4py(); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 395, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":392
+ /* "PETSc/PETSc.pyx":396
* # register custom implementations
* import_libpetsc4py()
* CHKERR( PetscPythonRegisterAll() ) # <<<<<<<<<<<<<<
* # register Python types
* PyPetscType_Register(PETSC_OBJECT_CLASSID, Object)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPythonRegisterAll()); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 392, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_CHKERR(PetscPythonRegisterAll()); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 396, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":394
+ /* "PETSc/PETSc.pyx":398
* CHKERR( PetscPythonRegisterAll() )
* # register Python types
* PyPetscType_Register(PETSC_OBJECT_CLASSID, Object) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_VIEWER_CLASSID, Viewer)
* PyPetscType_Register(PETSC_RANDOM_CLASSID, Random)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_OBJECT_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Object); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 394, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_OBJECT_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Object); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 398, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":395
+ /* "PETSc/PETSc.pyx":399
* # register Python types
* PyPetscType_Register(PETSC_OBJECT_CLASSID, Object)
* PyPetscType_Register(PETSC_VIEWER_CLASSID, Viewer) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_RANDOM_CLASSID, Random)
* PyPetscType_Register(PETSC_IS_CLASSID, IS)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_VIEWER_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Viewer); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 395, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_VIEWER_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Viewer); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 399, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":396
+ /* "PETSc/PETSc.pyx":400
* PyPetscType_Register(PETSC_OBJECT_CLASSID, Object)
* PyPetscType_Register(PETSC_VIEWER_CLASSID, Viewer)
* PyPetscType_Register(PETSC_RANDOM_CLASSID, Random) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_IS_CLASSID, IS)
* PyPetscType_Register(PETSC_LGMAP_CLASSID, LGMap)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_RANDOM_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Random); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 396, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_RANDOM_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Random); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 400, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":397
+ /* "PETSc/PETSc.pyx":401
* PyPetscType_Register(PETSC_VIEWER_CLASSID, Viewer)
* PyPetscType_Register(PETSC_RANDOM_CLASSID, Random)
* PyPetscType_Register(PETSC_IS_CLASSID, IS) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_LGMAP_CLASSID, LGMap)
* PyPetscType_Register(PETSC_SF_CLASSID, SF)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(IS_CLASSID, __pyx_ptype_8petsc4py_5PETSc_IS); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 397, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(IS_CLASSID, __pyx_ptype_8petsc4py_5PETSc_IS); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 401, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":398
+ /* "PETSc/PETSc.pyx":402
* PyPetscType_Register(PETSC_RANDOM_CLASSID, Random)
* PyPetscType_Register(PETSC_IS_CLASSID, IS)
* PyPetscType_Register(PETSC_LGMAP_CLASSID, LGMap) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_SF_CLASSID, SF)
* PyPetscType_Register(PETSC_VEC_CLASSID, Vec)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(IS_LTOGM_CLASSID, __pyx_ptype_8petsc4py_5PETSc_LGMap); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 398, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(IS_LTOGM_CLASSID, __pyx_ptype_8petsc4py_5PETSc_LGMap); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 402, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":399
+ /* "PETSc/PETSc.pyx":403
* PyPetscType_Register(PETSC_IS_CLASSID, IS)
* PyPetscType_Register(PETSC_LGMAP_CLASSID, LGMap)
* PyPetscType_Register(PETSC_SF_CLASSID, SF) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_VEC_CLASSID, Vec)
* PyPetscType_Register(PETSC_SCATTER_CLASSID, Scatter)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSCSF_CLASSID, __pyx_ptype_8petsc4py_5PETSc_SF); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 399, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSCSF_CLASSID, __pyx_ptype_8petsc4py_5PETSc_SF); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 403, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":400
+ /* "PETSc/PETSc.pyx":404
* PyPetscType_Register(PETSC_LGMAP_CLASSID, LGMap)
* PyPetscType_Register(PETSC_SF_CLASSID, SF)
* PyPetscType_Register(PETSC_VEC_CLASSID, Vec) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_SCATTER_CLASSID, Scatter)
* PyPetscType_Register(PETSC_SECTION_CLASSID, Section)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(VEC_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Vec); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 400, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(VEC_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Vec); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 404, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":401
+ /* "PETSc/PETSc.pyx":405
* PyPetscType_Register(PETSC_SF_CLASSID, SF)
* PyPetscType_Register(PETSC_VEC_CLASSID, Vec)
* PyPetscType_Register(PETSC_SCATTER_CLASSID, Scatter) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_SECTION_CLASSID, Section)
* PyPetscType_Register(PETSC_MAT_CLASSID, Mat)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(VEC_SCATTER_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Scatter); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 401, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(VEC_SCATTER_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Scatter); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 405, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":402
+ /* "PETSc/PETSc.pyx":406
* PyPetscType_Register(PETSC_VEC_CLASSID, Vec)
* PyPetscType_Register(PETSC_SCATTER_CLASSID, Scatter)
* PyPetscType_Register(PETSC_SECTION_CLASSID, Section) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_MAT_CLASSID, Mat)
* PyPetscType_Register(PETSC_NULLSPACE_CLASSID, NullSpace)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_SECTION_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Section); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 402, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSC_SECTION_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Section); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 406, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":403
+ /* "PETSc/PETSc.pyx":407
* PyPetscType_Register(PETSC_SCATTER_CLASSID, Scatter)
* PyPetscType_Register(PETSC_SECTION_CLASSID, Section)
* PyPetscType_Register(PETSC_MAT_CLASSID, Mat) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_NULLSPACE_CLASSID, NullSpace)
* PyPetscType_Register(PETSC_PC_CLASSID, PC)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(MAT_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Mat); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 403, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(MAT_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Mat); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 407, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":404
+ /* "PETSc/PETSc.pyx":408
* PyPetscType_Register(PETSC_SECTION_CLASSID, Section)
* PyPetscType_Register(PETSC_MAT_CLASSID, Mat)
* PyPetscType_Register(PETSC_NULLSPACE_CLASSID, NullSpace) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_PC_CLASSID, PC)
* PyPetscType_Register(PETSC_KSP_CLASSID, KSP)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(MAT_NULLSPACE_CLASSID, __pyx_ptype_8petsc4py_5PETSc_NullSpace); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 404, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(MAT_NULLSPACE_CLASSID, __pyx_ptype_8petsc4py_5PETSc_NullSpace); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 408, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":405
+ /* "PETSc/PETSc.pyx":409
* PyPetscType_Register(PETSC_MAT_CLASSID, Mat)
* PyPetscType_Register(PETSC_NULLSPACE_CLASSID, NullSpace)
* PyPetscType_Register(PETSC_PC_CLASSID, PC) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_KSP_CLASSID, KSP)
* PyPetscType_Register(PETSC_SNES_CLASSID, SNES)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PC_CLASSID, __pyx_ptype_8petsc4py_5PETSc_PC); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 405, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PC_CLASSID, __pyx_ptype_8petsc4py_5PETSc_PC); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 409, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":406
+ /* "PETSc/PETSc.pyx":410
* PyPetscType_Register(PETSC_NULLSPACE_CLASSID, NullSpace)
* PyPetscType_Register(PETSC_PC_CLASSID, PC)
* PyPetscType_Register(PETSC_KSP_CLASSID, KSP) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_SNES_CLASSID, SNES)
* PyPetscType_Register(PETSC_TS_CLASSID, TS)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(KSP_CLASSID, __pyx_ptype_8petsc4py_5PETSc_KSP); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 406, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(KSP_CLASSID, __pyx_ptype_8petsc4py_5PETSc_KSP); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 410, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":407
+ /* "PETSc/PETSc.pyx":411
* PyPetscType_Register(PETSC_PC_CLASSID, PC)
* PyPetscType_Register(PETSC_KSP_CLASSID, KSP)
* PyPetscType_Register(PETSC_SNES_CLASSID, SNES) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_TS_CLASSID, TS)
* PyPetscType_Register(PETSC_TAO_CLASSID, TAO)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(SNES_CLASSID, __pyx_ptype_8petsc4py_5PETSc_SNES); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 407, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(SNES_CLASSID, __pyx_ptype_8petsc4py_5PETSc_SNES); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 411, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":408
+ /* "PETSc/PETSc.pyx":412
* PyPetscType_Register(PETSC_KSP_CLASSID, KSP)
* PyPetscType_Register(PETSC_SNES_CLASSID, SNES)
* PyPetscType_Register(PETSC_TS_CLASSID, TS) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_TAO_CLASSID, TAO)
* PyPetscType_Register(PETSC_AO_CLASSID, AO)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(TS_CLASSID, __pyx_ptype_8petsc4py_5PETSc_TS); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 408, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(TS_CLASSID, __pyx_ptype_8petsc4py_5PETSc_TS); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 412, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":409
+ /* "PETSc/PETSc.pyx":413
* PyPetscType_Register(PETSC_SNES_CLASSID, SNES)
* PyPetscType_Register(PETSC_TS_CLASSID, TS)
* PyPetscType_Register(PETSC_TAO_CLASSID, TAO) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_AO_CLASSID, AO)
* PyPetscType_Register(PETSC_DM_CLASSID, DM)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(TAO_CLASSID, __pyx_ptype_8petsc4py_5PETSc_TAO); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 409, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(TAO_CLASSID, __pyx_ptype_8petsc4py_5PETSc_TAO); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 413, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":410
+ /* "PETSc/PETSc.pyx":414
* PyPetscType_Register(PETSC_TS_CLASSID, TS)
* PyPetscType_Register(PETSC_TAO_CLASSID, TAO)
* PyPetscType_Register(PETSC_AO_CLASSID, AO) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_DM_CLASSID, DM)
* PyPetscType_Register(PETSC_PARTITIONER_CLASSID, Partitioner)
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(AO_CLASSID, __pyx_ptype_8petsc4py_5PETSc_AO); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 410, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(AO_CLASSID, __pyx_ptype_8petsc4py_5PETSc_AO); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 414, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":411
+ /* "PETSc/PETSc.pyx":415
* PyPetscType_Register(PETSC_TAO_CLASSID, TAO)
* PyPetscType_Register(PETSC_AO_CLASSID, AO)
* PyPetscType_Register(PETSC_DM_CLASSID, DM) # <<<<<<<<<<<<<<
* PyPetscType_Register(PETSC_PARTITIONER_CLASSID, Partitioner)
* return 0 # and we are done, enjoy !!
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(DM_CLASSID, __pyx_ptype_8petsc4py_5PETSc_DM); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 411, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(DM_CLASSID, __pyx_ptype_8petsc4py_5PETSc_DM); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 415, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":412
+ /* "PETSc/PETSc.pyx":416
* PyPetscType_Register(PETSC_AO_CLASSID, AO)
* PyPetscType_Register(PETSC_DM_CLASSID, DM)
* PyPetscType_Register(PETSC_PARTITIONER_CLASSID, Partitioner) # <<<<<<<<<<<<<<
* return 0 # and we are done, enjoy !!
*
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSCPARTITIONER_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Partitioner); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 412, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_PyPetscType_Register(PETSCPARTITIONER_CLASSID, __pyx_ptype_8petsc4py_5PETSc_Partitioner); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 416, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":413
+ /* "PETSc/PETSc.pyx":417
* PyPetscType_Register(PETSC_DM_CLASSID, DM)
* PyPetscType_Register(PETSC_PARTITIONER_CLASSID, Partitioner)
* return 0 # and we are done, enjoy !! # <<<<<<<<<<<<<<
@@ -236883,7 +257094,7 @@ static int __pyx_f_8petsc4py_5PETSc_register(void) {
__pyx_r = 0;
goto __pyx_L0;
- /* "PETSc/PETSc.pyx":382
+ /* "PETSc/PETSc.pyx":386
* """
*
* cdef int register() except -1: # <<<<<<<<<<<<<<
@@ -236900,7 +257111,7 @@ static int __pyx_f_8petsc4py_5PETSc_register(void) {
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":417
+/* "PETSc/PETSc.pyx":421
* # --------------------------------------------------------------------
*
* def _initialize(args=None, comm=None): # <<<<<<<<<<<<<<
@@ -236928,7 +257139,9 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_1_initialize(PyObject *__pyx_self, Py
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -236939,6 +257152,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_1_initialize(PyObject *__pyx_self, Py
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_args);
if (value) { values[0] = value; kw_args--; }
}
+ CYTHON_FALLTHROUGH;
case 1:
if (kw_args > 0) {
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_comm);
@@ -236946,12 +257160,14 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_1_initialize(PyObject *__pyx_self, Py
}
}
if (unlikely(kw_args > 0)) {
- if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_initialize") < 0)) __PYX_ERR(11, 417, __pyx_L3_error)
+ if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_initialize") < 0)) __PYX_ERR(11, 421, __pyx_L3_error)
}
} else {
switch (PyTuple_GET_SIZE(__pyx_args)) {
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
+ CYTHON_FALLTHROUGH;
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
+ CYTHON_FALLTHROUGH;
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
@@ -236961,7 +257177,7 @@ static PyObject *__pyx_pw_8petsc4py_5PETSc_1_initialize(PyObject *__pyx_self, Py
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
- __Pyx_RaiseArgtupleInvalid("_initialize", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(11, 417, __pyx_L3_error)
+ __Pyx_RaiseArgtupleInvalid("_initialize", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(11, 421, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("petsc4py.PETSc._initialize", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
@@ -236983,43 +257199,43 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc__initialize(CYTHON_UNUSED PyObject *_
int __pyx_t_3;
__Pyx_RefNannySetupContext("_initialize", 0);
- /* "PETSc/PETSc.pyx":419
+ /* "PETSc/PETSc.pyx":423
* def _initialize(args=None, comm=None):
* global tracebacklist
* Error._traceback_ = tracebacklist # <<<<<<<<<<<<<<
* global PetscError
* PetscError = Error
*/
- __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Error); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 419, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Error); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 423, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (__Pyx_PyObject_SetAttrStr(__pyx_t_1, __pyx_n_s_traceback, __pyx_v_8petsc4py_5PETSc_tracebacklist) < 0) __PYX_ERR(11, 419, __pyx_L1_error)
+ if (__Pyx_PyObject_SetAttrStr(__pyx_t_1, __pyx_n_s_traceback, __pyx_v_8petsc4py_5PETSc_tracebacklist) < 0) __PYX_ERR(11, 423, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":421
+ /* "PETSc/PETSc.pyx":425
* Error._traceback_ = tracebacklist
* global PetscError
* PetscError = Error # <<<<<<<<<<<<<<
* #
* cdef int ready = initialize(args, comm)
*/
- __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Error); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 421, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Error); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 425, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_XGOTREF(__pyx_v_8petsc4py_5PETSc_PetscError);
__Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_PetscError, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":423
+ /* "PETSc/PETSc.pyx":427
* PetscError = Error
* #
* cdef int ready = initialize(args, comm) # <<<<<<<<<<<<<<
* if ready: register()
* #
*/
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_initialize(__pyx_v_args, __pyx_v_comm); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 423, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_initialize(__pyx_v_args, __pyx_v_comm); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 427, __pyx_L1_error)
__pyx_v_ready = __pyx_t_2;
- /* "PETSc/PETSc.pyx":424
+ /* "PETSc/PETSc.pyx":428
* #
* cdef int ready = initialize(args, comm)
* if ready: register() # <<<<<<<<<<<<<<
@@ -237028,10 +257244,10 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc__initialize(CYTHON_UNUSED PyObject *_
*/
__pyx_t_3 = (__pyx_v_ready != 0);
if (__pyx_t_3) {
- __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_register(); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 424, __pyx_L1_error)
+ __pyx_t_2 = __pyx_f_8petsc4py_5PETSc_register(); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 428, __pyx_L1_error)
}
- /* "PETSc/PETSc.pyx":427
+ /* "PETSc/PETSc.pyx":431
* #
* global __COMM_SELF__, __COMM_WORLD__
* __COMM_SELF__.comm = PETSC_COMM_SELF # <<<<<<<<<<<<<<
@@ -237040,7 +257256,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc__initialize(CYTHON_UNUSED PyObject *_
*/
__pyx_v_8petsc4py_5PETSc___COMM_SELF__->comm = PETSC_COMM_SELF;
- /* "PETSc/PETSc.pyx":428
+ /* "PETSc/PETSc.pyx":432
* global __COMM_SELF__, __COMM_WORLD__
* __COMM_SELF__.comm = PETSC_COMM_SELF
* __COMM_WORLD__.comm = PETSC_COMM_WORLD # <<<<<<<<<<<<<<
@@ -237049,7 +257265,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc__initialize(CYTHON_UNUSED PyObject *_
*/
__pyx_v_8petsc4py_5PETSc___COMM_WORLD__->comm = PETSC_COMM_WORLD;
- /* "PETSc/PETSc.pyx":431
+ /* "PETSc/PETSc.pyx":435
* #
* global PETSC_COMM_DEFAULT
* PETSC_COMM_DEFAULT = PETSC_COMM_WORLD # <<<<<<<<<<<<<<
@@ -237058,7 +257274,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc__initialize(CYTHON_UNUSED PyObject *_
*/
__pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT = PETSC_COMM_WORLD;
- /* "PETSc/PETSc.pyx":417
+ /* "PETSc/PETSc.pyx":421
* # --------------------------------------------------------------------
*
* def _initialize(args=None, comm=None): # <<<<<<<<<<<<<<
@@ -237079,7 +257295,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc__initialize(CYTHON_UNUSED PyObject *_
return __pyx_r;
}
-/* "PETSc/PETSc.pyx":433
+/* "PETSc/PETSc.pyx":437
* PETSC_COMM_DEFAULT = PETSC_COMM_WORLD
*
* def _finalize(): # <<<<<<<<<<<<<<
@@ -237111,7 +257327,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
int __pyx_t_1;
__Pyx_RefNannySetupContext("_finalize", 0);
- /* "PETSc/PETSc.pyx":434
+ /* "PETSc/PETSc.pyx":438
*
* def _finalize():
* finalize() # <<<<<<<<<<<<<<
@@ -237120,7 +257336,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
*/
__pyx_f_8petsc4py_5PETSc_finalize();
- /* "PETSc/PETSc.pyx":437
+ /* "PETSc/PETSc.pyx":441
* #
* global __COMM_SELF__
* __COMM_SELF__.comm = MPI_COMM_NULL # <<<<<<<<<<<<<<
@@ -237129,7 +257345,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
*/
__pyx_v_8petsc4py_5PETSc___COMM_SELF__->comm = MPI_COMM_NULL;
- /* "PETSc/PETSc.pyx":439
+ /* "PETSc/PETSc.pyx":443
* __COMM_SELF__.comm = MPI_COMM_NULL
* global __COMM_WORLD__
* __COMM_WORLD__.comm = MPI_COMM_NULL # <<<<<<<<<<<<<<
@@ -237138,7 +257354,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
*/
__pyx_v_8petsc4py_5PETSc___COMM_WORLD__->comm = MPI_COMM_NULL;
- /* "PETSc/PETSc.pyx":442
+ /* "PETSc/PETSc.pyx":446
* #
* global PETSC_COMM_DEFAULT
* PETSC_COMM_DEFAULT = MPI_COMM_NULL # <<<<<<<<<<<<<<
@@ -237147,7 +257363,7 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
*/
__pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT = MPI_COMM_NULL;
- /* "PETSc/PETSc.pyx":445
+ /* "PETSc/PETSc.pyx":449
* #
* global type_registry
* type_registry.clear() # <<<<<<<<<<<<<<
@@ -237155,12 +257371,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
* stage_registry.clear()
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_type_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "clear");
- __PYX_ERR(11, 445, __pyx_L1_error)
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "clear");
+ __PYX_ERR(11, 449, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_type_registry); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(11, 445, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_type_registry); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(11, 449, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":447
+ /* "PETSc/PETSc.pyx":451
* type_registry.clear()
* global stage_registry
* stage_registry.clear() # <<<<<<<<<<<<<<
@@ -237168,12 +257384,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
* class_registry.clear()
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_stage_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "clear");
- __PYX_ERR(11, 447, __pyx_L1_error)
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "clear");
+ __PYX_ERR(11, 451, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_stage_registry); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(11, 447, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_stage_registry); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(11, 451, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":449
+ /* "PETSc/PETSc.pyx":453
* stage_registry.clear()
* global class_registry
* class_registry.clear() # <<<<<<<<<<<<<<
@@ -237181,12 +257397,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
* event_registry.clear()
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_class_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "clear");
- __PYX_ERR(11, 449, __pyx_L1_error)
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "clear");
+ __PYX_ERR(11, 453, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_class_registry); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(11, 449, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_class_registry); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(11, 453, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":451
+ /* "PETSc/PETSc.pyx":455
* class_registry.clear()
* global event_registry
* event_registry.clear() # <<<<<<<<<<<<<<
@@ -237194,12 +257410,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
* citations_registry.clear()
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_event_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "clear");
- __PYX_ERR(11, 451, __pyx_L1_error)
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "clear");
+ __PYX_ERR(11, 455, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_event_registry); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(11, 451, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_event_registry); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(11, 455, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":453
+ /* "PETSc/PETSc.pyx":457
* event_registry.clear()
* global citations_registry
* citations_registry.clear() # <<<<<<<<<<<<<<
@@ -237207,12 +257423,12 @@ static PyObject *__pyx_pf_8petsc4py_5PETSc_2_finalize(CYTHON_UNUSED PyObject *__
* # --------------------------------------------------------------------
*/
if (unlikely(__pyx_v_8petsc4py_5PETSc_citations_registry == Py_None)) {
- PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "clear");
- __PYX_ERR(11, 453, __pyx_L1_error)
+ PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "clear");
+ __PYX_ERR(11, 457, __pyx_L1_error)
}
- __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_citations_registry); if (unlikely(__pyx_t_1 == -1)) __PYX_ERR(11, 453, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_PyDict_Clear(__pyx_v_8petsc4py_5PETSc_citations_registry); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(11, 457, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":433
+ /* "PETSc/PETSc.pyx":437
* PETSC_COMM_DEFAULT = PETSC_COMM_WORLD
*
* def _finalize(): # <<<<<<<<<<<<<<
@@ -237243,16 +257459,17 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Comm(PyTypeObject *t, PyObject *a
if (unlikely(!o)) return 0;
p = ((struct PyPetscCommObject *)o);
p->base = Py_None; Py_INCREF(Py_None);
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_4Comm_1__cinit__(o, a, k) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_4Comm_1__cinit__(o, a, k) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_Comm(PyObject *o) {
struct PyPetscCommObject *p = (struct PyPetscCommObject *)o;
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -237320,7 +257537,7 @@ static PyNumberMethods __pyx_tp_as_number_Comm = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
@@ -237336,7 +257553,7 @@ static PyNumberMethods __pyx_tp_as_number_Comm = {
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_coerce*/
#endif
0, /*nb_int*/
@@ -237346,16 +257563,16 @@ static PyNumberMethods __pyx_tp_as_number_Comm = {
0, /*reserved*/
#endif
0, /*nb_float*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_oct*/
#endif
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
@@ -237449,16 +257666,17 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Object(PyTypeObject *t, CYTHON_UN
p = ((struct PyPetscObjectObject *)o);
p->__pyx_vtab = __pyx_vtabptr_8petsc4py_5PETSc_Object;
p->__pyx___dummy__ = Py_None; Py_INCREF(Py_None);
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_6Object_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_6Object_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_Object(PyObject *o) {
struct PyPetscObjectObject *p = (struct PyPetscObjectObject *)o;
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -237569,23 +257787,24 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Object[] = {
{"setOptionsPrefix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_19setOptionsPrefix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_18setOptionsPrefix},
{"getOptionsPrefix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_21getOptionsPrefix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_20getOptionsPrefix},
{"setFromOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_23setFromOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_22setFromOptions},
- {"getComm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_25getComm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_24getComm},
- {"getName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_27getName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_26getName},
- {"setName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_29setName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_28setName},
- {"getClassId", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_31getClassId, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_30getClassId},
- {"getClassName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_33getClassName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_32getClassName},
- {"getRefCount", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_35getRefCount, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_34getRefCount},
- {"compose", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_37compose, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_36compose},
- {"query", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_39query, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_38query},
- {"incRef", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_41incRef, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_40incRef},
- {"decRef", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_43decRef, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_42decRef},
- {"getAttr", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_45getAttr, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_44getAttr},
- {"setAttr", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_47setAttr, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_46setAttr},
- {"getDict", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_49getDict, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_48getDict},
- {"stateIncrease", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_51stateIncrease, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_50stateIncrease},
- {"incrementTabLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_53incrementTabLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_52incrementTabLevel},
- {"setTabLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_55setTabLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_54setTabLevel},
- {"getTabLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_57getTabLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_56getTabLevel},
+ {"viewFromOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_25viewFromOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_24viewFromOptions},
+ {"getComm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_27getComm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_26getComm},
+ {"getName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_29getName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_28getName},
+ {"setName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_31setName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_30setName},
+ {"getClassId", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_33getClassId, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_32getClassId},
+ {"getClassName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_35getClassName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_34getClassName},
+ {"getRefCount", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_37getRefCount, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_36getRefCount},
+ {"compose", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_39compose, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_38compose},
+ {"query", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_41query, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_40query},
+ {"incRef", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_43incRef, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_42incRef},
+ {"decRef", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_45decRef, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_44decRef},
+ {"getAttr", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_47getAttr, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_46getAttr},
+ {"setAttr", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_49setAttr, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_48setAttr},
+ {"getDict", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_51getDict, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_50getDict},
+ {"stateIncrease", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_53stateIncrease, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_52stateIncrease},
+ {"incrementTabLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_55incrementTabLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_54incrementTabLevel},
+ {"setTabLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_57setTabLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_56setTabLevel},
+ {"getTabLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Object_59getTabLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Object_58getTabLevel},
{0, 0, 0, 0}
};
@@ -237606,7 +257825,7 @@ static PyNumberMethods __pyx_tp_as_number_Object = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
@@ -237622,7 +257841,7 @@ static PyNumberMethods __pyx_tp_as_number_Object = {
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_coerce*/
#endif
0, /*nb_int*/
@@ -237632,16 +257851,16 @@ static PyNumberMethods __pyx_tp_as_number_Object = {
0, /*reserved*/
#endif
0, /*nb_float*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_oct*/
#endif
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
@@ -237729,10 +257948,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Viewer(PyTypeObject *t, PyObject
if (unlikely(!o)) return 0;
p = ((struct PyPetscViewerObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_Viewer;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_6Viewer_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_6Viewer_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Viewer[] = {
@@ -237744,25 +257964,35 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Viewer[] = {
{"createMPIIO", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_15createMPIIO, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_14createMPIIO},
{"createVTK", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_17createVTK, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_16createVTK},
{"createHDF5", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_19createHDF5, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_18createHDF5},
- {"createNetCDF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_21createNetCDF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_20createNetCDF},
- {"createDraw", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_23createDraw, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_22createDraw},
- {"setType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_25setType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_24setType},
- {"getType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_27getType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_26getType},
- {"getFormat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_29getFormat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_28getFormat},
- {"pushFormat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_31pushFormat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_30pushFormat},
- {"popFormat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_33popFormat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_32popFormat},
- {"STDOUT", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDOUT, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_34STDOUT},
- {"STDERR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_37STDERR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_36STDERR},
- {"ASCII", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_39ASCII, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_38ASCII},
- {"BINARY", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_41BINARY, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_40BINARY},
- {"DRAW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_43DRAW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_42DRAW},
- {"flush", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_45flush, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_44flush},
- {"setFileMode", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_47setFileMode, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_46setFileMode},
- {"getFileMode", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_49getFileMode, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_48getFileMode},
- {"setFileName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_51setFileName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_50setFileName},
- {"getFileName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_53getFileName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_52getFileName},
- {"setDrawInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_55setDrawInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_54setDrawInfo},
- {"clearDraw", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_57clearDraw, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_56clearDraw},
+ {"createDraw", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_21createDraw, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_20createDraw},
+ {"setType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_23setType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_22setType},
+ {"getType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_25getType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_24getType},
+ {"getFormat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_27getFormat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_26getFormat},
+ {"pushFormat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_29pushFormat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_28pushFormat},
+ {"popFormat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_31popFormat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_30popFormat},
+ {"STDOUT", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_33STDOUT, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_32STDOUT},
+ {"STDERR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_35STDERR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_34STDERR},
+ {"ASCII", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_37ASCII, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_36ASCII},
+ {"BINARY", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_39BINARY, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_38BINARY},
+ {"DRAW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_41DRAW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_40DRAW},
+ {"setASCIITab", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_43setASCIITab, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_42setASCIITab},
+ {"getASCIITab", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_45getASCIITab, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_44getASCIITab},
+ {"addASCIITab", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_47addASCIITab, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_46addASCIITab},
+ {"subtractASCIITab", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_49subtractASCIITab, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_48subtractASCIITab},
+ {"pushASCIISynchronized", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_51pushASCIISynchronized, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_50pushASCIISynchronized},
+ {"popASCIISynchronized", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_53popASCIISynchronized, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_52popASCIISynchronized},
+ {"pushASCIITab", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_55pushASCIITab, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_54pushASCIITab},
+ {"popASCIITab", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_57popASCIITab, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_56popASCIITab},
+ {"useASCIITabs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_59useASCIITabs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_58useASCIITabs},
+ {"printfASCII", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_61printfASCII, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_60printfASCII},
+ {"printfASCIISynchronized", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_63printfASCIISynchronized, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_62printfASCIISynchronized},
+ {"flush", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_65flush, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_64flush},
+ {"setFileMode", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_67setFileMode, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_66setFileMode},
+ {"getFileMode", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_69getFileMode, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_68getFileMode},
+ {"setFileName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_71setFileName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_70setFileName},
+ {"getFileName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_73getFileName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_72getFileName},
+ {"setDrawInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_75setDrawInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_74setDrawInfo},
+ {"clearDraw", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6Viewer_77clearDraw, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6Viewer_76clearDraw},
{0, 0, 0, 0}
};
@@ -237831,10 +258061,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Random(PyTypeObject *t, PyObject
if (unlikely(!o)) return 0;
p = ((struct PyPetscRandomObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_Random;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_6Random_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_6Random_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_getprop_8petsc4py_5PETSc_6Random_seed(PyObject *o, CYTHON_UNUSED void *x) {
@@ -237952,10 +258183,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_IS(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscISObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_IS;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_2IS_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_2IS_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_getprop_8petsc4py_5PETSc_2IS_permutation(PyObject *o, CYTHON_UNUSED void *x) {
@@ -238139,10 +258371,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_LGMap(PyTypeObject *t, PyObject *
if (unlikely(!o)) return 0;
p = ((struct PyPetscLGMapObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_LGMap;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_5LGMap_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_5LGMap_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_getprop_8petsc4py_5PETSc_5LGMap_size(PyObject *o, CYTHON_UNUSED void *x) {
@@ -238170,22 +258403,24 @@ static PyObject *__pyx_getprop_8petsc4py_5PETSc_5LGMap_block_info(PyObject *o, C
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_LGMap[] = {
- {"view", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_5view, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_4view},
- {"destroy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_7destroy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_6destroy},
- {"create", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_9create, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_8create},
- {"createIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_11createIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_10createIS},
- {"createSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_13createSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_12createSF},
- {"getSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_15getSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_14getSize},
- {"getBlockSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_17getBlockSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_16getBlockSize},
- {"getIndices", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_19getIndices, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_18getIndices},
- {"getBlockIndices", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_21getBlockIndices, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_20getBlockIndices},
- {"getInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_23getInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_22getInfo},
- {"getBlockInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_25getBlockInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_24getBlockInfo},
- {"apply", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_27apply, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_26apply},
- {"applyBlock", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_29applyBlock, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_28applyBlock},
- {"applyIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_31applyIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_30applyIS},
- {"applyInverse", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyInverse, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_32applyInverse},
- {"applyBlockInverse", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyBlockInverse, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_34applyBlockInverse},
+ {"setType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_5setType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_4setType},
+ {"setFromOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_7setFromOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_6setFromOptions},
+ {"view", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_9view, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_8view},
+ {"destroy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_11destroy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_10destroy},
+ {"create", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_13create, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_12create},
+ {"createIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_15createIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_14createIS},
+ {"createSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_17createSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_16createSF},
+ {"getSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_19getSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_18getSize},
+ {"getBlockSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_21getBlockSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_20getBlockSize},
+ {"getIndices", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_23getIndices, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_22getIndices},
+ {"getBlockIndices", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_25getBlockIndices, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_24getBlockIndices},
+ {"getInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_27getInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_26getInfo},
+ {"getBlockInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_29getBlockInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_28getBlockInfo},
+ {"apply", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_31apply, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_30apply},
+ {"applyBlock", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_33applyBlock, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_32applyBlock},
+ {"applyIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_35applyIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_34applyIS},
+ {"applyInverse", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_37applyInverse, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_36applyInverse},
+ {"applyBlockInverse", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_5LGMap_39applyBlockInverse, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_5LGMap_38applyBlockInverse},
{0, 0, 0, 0}
};
@@ -238264,15 +258499,16 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_SF(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscSFObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_SF;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_2SF_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_2SF_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_SF(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -238371,10 +258607,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Vec(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscVecObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_Vec;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_3Vec_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_3Vec_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_sq_item_8petsc4py_5PETSc_Vec(PyObject *o, Py_ssize_t i) {
PyObject *r;
@@ -238571,28 +258808,29 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Vec[] = {
{"setValues", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_213setValues, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_212setValues},
{"setValuesBlocked", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_215setValuesBlocked, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_214setValuesBlocked},
{"setLGMap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_217setLGMap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_216setLGMap},
- {"setValueLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_219setValueLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_218setValueLocal},
- {"setValuesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_221setValuesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_220setValuesLocal},
- {"setValuesBlockedLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesBlockedLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_222setValuesBlockedLocal},
- {"assemblyBegin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_225assemblyBegin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_224assemblyBegin},
- {"assemblyEnd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_227assemblyEnd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_226assemblyEnd},
- {"assemble", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_229assemble, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_228assemble},
- {"strideScale", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_231strideScale, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_230strideScale},
- {"strideSum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_233strideSum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_232strideSum},
- {"strideMin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_235strideMin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_234strideMin},
- {"strideMax", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMax, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_236strideMax},
- {"strideNorm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_239strideNorm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_238strideNorm},
- {"strideScatter", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_241strideScatter, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_240strideScatter},
- {"strideGather", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_243strideGather, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_242strideGather},
- {"localForm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_245localForm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_244localForm},
- {"ghostUpdateBegin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_247ghostUpdateBegin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_246ghostUpdateBegin},
- {"ghostUpdateEnd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateEnd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_248ghostUpdateEnd},
- {"ghostUpdate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_250ghostUpdate},
- {"setMPIGhost", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_253setMPIGhost, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_252setMPIGhost},
- {"getSubVector", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_255getSubVector, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_254getSubVector},
- {"restoreSubVector", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_257restoreSubVector, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_256restoreSubVector},
- {"getNestSubVecs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_259getNestSubVecs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_258getNestSubVecs},
- {"setNestSubVecs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_261setNestSubVecs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_260setNestSubVecs},
+ {"getLGMap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_219getLGMap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_218getLGMap},
+ {"setValueLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_221setValueLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_220setValueLocal},
+ {"setValuesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_223setValuesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_222setValuesLocal},
+ {"setValuesBlockedLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_225setValuesBlockedLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_224setValuesBlockedLocal},
+ {"assemblyBegin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_227assemblyBegin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_226assemblyBegin},
+ {"assemblyEnd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_229assemblyEnd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_228assemblyEnd},
+ {"assemble", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_231assemble, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_230assemble},
+ {"strideScale", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_233strideScale, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_232strideScale},
+ {"strideSum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_235strideSum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_234strideSum},
+ {"strideMin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_237strideMin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_236strideMin},
+ {"strideMax", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_239strideMax, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_238strideMax},
+ {"strideNorm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_241strideNorm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_240strideNorm},
+ {"strideScatter", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_243strideScatter, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_242strideScatter},
+ {"strideGather", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_245strideGather, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_244strideGather},
+ {"localForm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_247localForm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_246localForm},
+ {"ghostUpdateBegin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_249ghostUpdateBegin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_248ghostUpdateBegin},
+ {"ghostUpdateEnd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_251ghostUpdateEnd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_250ghostUpdateEnd},
+ {"ghostUpdate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_253ghostUpdate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_252ghostUpdate},
+ {"setMPIGhost", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_255setMPIGhost, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_254setMPIGhost},
+ {"getSubVector", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_257getSubVector, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_256getSubVector},
+ {"restoreSubVector", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_259restoreSubVector, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_258restoreSubVector},
+ {"getNestSubVecs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_261getNestSubVecs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_260getNestSubVecs},
+ {"setNestSubVecs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Vec_263setNestSubVecs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Vec_262setNestSubVecs},
{0, 0, 0, 0}
};
@@ -238617,7 +258855,7 @@ static PyNumberMethods __pyx_tp_as_number_Vec = {
__pyx_pw_8petsc4py_5PETSc_3Vec_19__add__, /*nb_add*/
__pyx_pw_8petsc4py_5PETSc_3Vec_21__sub__, /*nb_subtract*/
__pyx_pw_8petsc4py_5PETSc_3Vec_23__mul__, /*nb_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
__pyx_pw_8petsc4py_5PETSc_3Vec_25__div__, /*nb_divide*/
#endif
0, /*nb_remainder*/
@@ -238637,7 +258875,7 @@ static PyNumberMethods __pyx_tp_as_number_Vec = {
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_coerce*/
#endif
0, /*nb_int*/
@@ -238647,16 +258885,16 @@ static PyNumberMethods __pyx_tp_as_number_Vec = {
0, /*reserved*/
#endif
0, /*nb_float*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_oct*/
#endif
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_hex*/
#endif
__pyx_pw_8petsc4py_5PETSc_3Vec_9__iadd__, /*nb_inplace_add*/
__pyx_pw_8petsc4py_5PETSc_3Vec_11__isub__, /*nb_inplace_subtract*/
__pyx_pw_8petsc4py_5PETSc_3Vec_13__imul__, /*nb_inplace_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
__pyx_pw_8petsc4py_5PETSc_3Vec_15__idiv__, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
@@ -238780,10 +259018,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Scatter(PyTypeObject *t, PyObject
if (unlikely(!o)) return 0;
p = ((struct PyPetscScatterObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_Scatter;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_7Scatter_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_7Scatter_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Scatter[] = {
@@ -238866,15 +259105,16 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Section(PyTypeObject *t, PyObject
if (unlikely(!o)) return 0;
p = ((struct PyPetscSectionObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_Section;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_7Section_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_7Section_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_Section(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -238997,10 +259237,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Mat(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscMatObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_Mat;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_3Mat_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_3Mat_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_sq_item_8petsc4py_5PETSc_Mat(PyObject *o, Py_ssize_t i) {
PyObject *r;
@@ -239098,7 +259339,7 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Mat[] = {
{"createNormal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_67createNormal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_66createNormal},
{"createTranspose", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_69createTranspose, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_68createTranspose},
{"createLRC", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_71createLRC, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_70createLRC},
- {"createSubMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_72createSubMatrix},
+ {"createSubMatrixVirtual", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_73createSubMatrixVirtual, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_72createSubMatrixVirtual},
{"createNest", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_75createNest, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_74createNest},
{"createPython", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_77createPython, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_76createPython},
{"setPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_79setPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_78setPythonContext},
@@ -239154,96 +259395,101 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Mat[] = {
{"setValuesBlockedIJV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_179setValuesBlockedIJV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_178setValuesBlockedIJV},
{"setValuesBlockedCSR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_181setValuesBlockedCSR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_180setValuesBlockedCSR},
{"setLGMap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_183setLGMap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_182setLGMap},
- {"setValueLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_185setValueLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_184setValueLocal},
- {"setValuesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_187setValuesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_186setValuesLocal},
- {"setValuesLocalRCV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocalRCV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_188setValuesLocalRCV},
- {"setValuesLocalIJV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalIJV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_190setValuesLocalIJV},
- {"setValuesLocalCSR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalCSR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_192setValuesLocalCSR},
- {"setValuesBlockedLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesBlockedLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_194setValuesBlockedLocal},
- {"setValuesBlockedLocalRCV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocalRCV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocalRCV},
- {"setValuesBlockedLocalIJV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalIJV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalIJV},
- {"setValuesBlockedLocalCSR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalCSR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalCSR},
- {"setStencil", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_203setStencil, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_202setStencil},
- {"setValueStencil", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_205setValueStencil, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_204setValueStencil},
- {"setValueBlockedStencil", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueBlockedStencil, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_206setValueBlockedStencil},
- {"zeroRows", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_209zeroRows, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_208zeroRows},
- {"zeroRowsLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRowsLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_210zeroRowsLocal},
- {"zeroRowsColumns", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsColumns, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_212zeroRowsColumns},
- {"storeValues", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_215storeValues, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_214storeValues},
- {"retrieveValues", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_217retrieveValues, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_216retrieveValues},
- {"assemblyBegin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_219assemblyBegin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_218assemblyBegin},
- {"assemblyEnd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyEnd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_220assemblyEnd},
- {"assemble", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_223assemble, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_222assemble},
- {"isAssembled", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_225isAssembled, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_224isAssembled},
- {"createVecs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_227createVecs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_226createVecs},
- {"createVecRight", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_229createVecRight, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_228createVecRight},
- {"createVecLeft", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_231createVecLeft, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_230createVecLeft},
- {"getColumnVector", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_233getColumnVector, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_232getColumnVector},
- {"getRedundantMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_235getRedundantMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_234getRedundantMatrix},
- {"getDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_237getDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_236getDiagonal},
- {"getRowSum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_239getRowSum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_238getRowSum},
- {"setDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_241setDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_240setDiagonal},
- {"diagonalScale", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_243diagonalScale, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_242diagonalScale},
- {"invertBlockDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_245invertBlockDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_244invertBlockDiagonal},
- {"setNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_247setNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_246setNullSpace},
- {"getNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_249getNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_248getNullSpace},
- {"setNearNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_251setNearNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_250setNearNullSpace},
- {"getNearNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_253getNearNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_252getNearNullSpace},
- {"mult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_255mult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_254mult},
- {"multAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_257multAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_256multAdd},
- {"multTranspose", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_259multTranspose, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_258multTranspose},
- {"multTransposeAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_261multTransposeAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_260multTransposeAdd},
- {"multHermitian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_263multHermitian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_262multHermitian},
- {"multHermitianAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_265multHermitianAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_264multHermitianAdd},
- {"SOR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_267SOR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_266SOR},
- {"getDiagonalBlock", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_269getDiagonalBlock, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_268getDiagonalBlock},
- {"increaseOverlap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_271increaseOverlap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_270increaseOverlap},
- {"getSubMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_273getSubMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_272getSubMatrix},
- {"getSubMatrices", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_275getSubMatrices, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_274getSubMatrices},
- {"getLocalSubMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_277getLocalSubMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_276getLocalSubMatrix},
- {"restoreLocalSubMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_279restoreLocalSubMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_278restoreLocalSubMatrix},
- {"norm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_281norm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_280norm},
- {"scale", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_283scale, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_282scale},
- {"shift", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_285shift, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_284shift},
- {"chop", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_287chop, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_286chop},
- {"axpy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_289axpy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_288axpy},
- {"aypx", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_291aypx, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_290aypx},
- {"matMultSymbolic", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_293matMultSymbolic, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_292matMultSymbolic},
- {"matMultNumeric", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_295matMultNumeric, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_294matMultNumeric},
- {"matMult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_297matMult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_296matMult},
- {"matTransposeMult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_299matTransposeMult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_298matTransposeMult},
- {"transposeMatMult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_301transposeMatMult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_300transposeMatMult},
- {"getOrdering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_303getOrdering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_302getOrdering},
- {"reorderForNonzeroDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_305reorderForNonzeroDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_304reorderForNonzeroDiagonal},
- {"factorLU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_307factorLU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_306factorLU},
- {"factorSymbolicLU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_309factorSymbolicLU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_308factorSymbolicLU},
- {"factorNumericLU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_311factorNumericLU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_310factorNumericLU},
- {"factorILU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_313factorILU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_312factorILU},
- {"factorSymbolicILU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_315factorSymbolicILU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_314factorSymbolicILU},
- {"factorCholesky", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_317factorCholesky, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_316factorCholesky},
- {"factorSymbolicCholesky", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_319factorSymbolicCholesky, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_318factorSymbolicCholesky},
- {"factorNumericCholesky", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_321factorNumericCholesky, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_320factorNumericCholesky},
- {"factorICC", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_323factorICC, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_322factorICC},
- {"factorSymbolicICC", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_325factorSymbolicICC, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_324factorSymbolicICC},
- {"getInertia", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_327getInertia, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_326getInertia},
- {"setUnfactored", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_329setUnfactored, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_328setUnfactored},
- {"setMumpsIcntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_331setMumpsIcntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_330setMumpsIcntl},
- {"getMumpsIcntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_333getMumpsIcntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_332getMumpsIcntl},
- {"setMumpsCntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_335setMumpsCntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_334setMumpsCntl},
- {"getMumpsCntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_337getMumpsCntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_336getMumpsCntl},
- {"getMumpsInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_339getMumpsInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_338getMumpsInfo},
- {"getMumpsInfog", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_341getMumpsInfog, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_340getMumpsInfog},
- {"getMumpsRinfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsRinfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_342getMumpsRinfo},
- {"getMumpsRinfog", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_345getMumpsRinfog, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_344getMumpsRinfog},
- {"solveForward", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_347solveForward, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_346solveForward},
- {"solveBackward", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_349solveBackward, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_348solveBackward},
- {"solve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_351solve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_350solve},
- {"solveTranspose", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_353solveTranspose, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_352solveTranspose},
- {"solveAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_355solveAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_354solveAdd},
- {"solveTransposeAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_357solveTransposeAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_356solveTransposeAdd},
- {"matSolve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_359matSolve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_358matSolve},
- {"getDenseArray", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_361getDenseArray, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_360getDenseArray},
- {"getDenseLocalMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_363getDenseLocalMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_362getDenseLocalMatrix},
+ {"getLGMap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_185getLGMap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_184getLGMap},
+ {"setValueLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_187setValueLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_186setValueLocal},
+ {"setValuesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_189setValuesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_188setValuesLocal},
+ {"setValuesLocalRCV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_191setValuesLocalRCV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_190setValuesLocalRCV},
+ {"setValuesLocalIJV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_193setValuesLocalIJV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_192setValuesLocalIJV},
+ {"setValuesLocalCSR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_195setValuesLocalCSR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_194setValuesLocalCSR},
+ {"setValuesBlockedLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_197setValuesBlockedLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_196setValuesBlockedLocal},
+ {"setValuesBlockedLocalRCV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_199setValuesBlockedLocalRCV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_198setValuesBlockedLocalRCV},
+ {"setValuesBlockedLocalIJV", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_201setValuesBlockedLocalIJV, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_200setValuesBlockedLocalIJV},
+ {"setValuesBlockedLocalCSR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_203setValuesBlockedLocalCSR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_202setValuesBlockedLocalCSR},
+ {"setStencil", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_205setStencil, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_204setStencil},
+ {"setValueStencil", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_207setValueStencil, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_206setValueStencil},
+ {"setValueBlockedStencil", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_209setValueBlockedStencil, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_208setValueBlockedStencil},
+ {"zeroRows", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_211zeroRows, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_210zeroRows},
+ {"zeroRowsLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_213zeroRowsLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_212zeroRowsLocal},
+ {"zeroRowsColumns", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_215zeroRowsColumns, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_214zeroRowsColumns},
+ {"storeValues", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_217storeValues, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_216storeValues},
+ {"retrieveValues", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_219retrieveValues, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_218retrieveValues},
+ {"assemblyBegin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_221assemblyBegin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_220assemblyBegin},
+ {"assemblyEnd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_223assemblyEnd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_222assemblyEnd},
+ {"assemble", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_225assemble, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_224assemble},
+ {"isAssembled", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_227isAssembled, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_226isAssembled},
+ {"createVecs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_229createVecs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_228createVecs},
+ {"createVecRight", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_231createVecRight, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_230createVecRight},
+ {"createVecLeft", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_233createVecLeft, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_232createVecLeft},
+ {"getColumnVector", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_235getColumnVector, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_234getColumnVector},
+ {"getRedundantMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_237getRedundantMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_236getRedundantMatrix},
+ {"getDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_239getDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_238getDiagonal},
+ {"getRowSum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_241getRowSum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_240getRowSum},
+ {"setDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_243setDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_242setDiagonal},
+ {"diagonalScale", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_245diagonalScale, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_244diagonalScale},
+ {"invertBlockDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_247invertBlockDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_246invertBlockDiagonal},
+ {"setNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_249setNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_248setNullSpace},
+ {"getNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_251getNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_250getNullSpace},
+ {"setTransposeNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_253setTransposeNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_252setTransposeNullSpace},
+ {"getTransposeNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_255getTransposeNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_254getTransposeNullSpace},
+ {"setNearNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_257setNearNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_256setNearNullSpace},
+ {"getNearNullSpace", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_259getNearNullSpace, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_258getNearNullSpace},
+ {"mult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_261mult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_260mult},
+ {"multAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_263multAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_262multAdd},
+ {"multTranspose", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_265multTranspose, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_264multTranspose},
+ {"multTransposeAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_267multTransposeAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_266multTransposeAdd},
+ {"multHermitian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_269multHermitian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_268multHermitian},
+ {"multHermitianAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_271multHermitianAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_270multHermitianAdd},
+ {"SOR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_273SOR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_272SOR},
+ {"getDiagonalBlock", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_275getDiagonalBlock, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_274getDiagonalBlock},
+ {"increaseOverlap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_277increaseOverlap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_276increaseOverlap},
+ {"createSubMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_279createSubMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_278createSubMatrix},
+ {"createSubMatrices", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_281createSubMatrices, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_280createSubMatrices},
+ {"getLocalSubMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_283getLocalSubMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_282getLocalSubMatrix},
+ {"restoreLocalSubMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_285restoreLocalSubMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_284restoreLocalSubMatrix},
+ {"norm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_287norm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_286norm},
+ {"scale", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_289scale, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_288scale},
+ {"shift", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_291shift, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_290shift},
+ {"chop", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_293chop, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_292chop},
+ {"axpy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_295axpy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_294axpy},
+ {"aypx", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_297aypx, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_296aypx},
+ {"matMultSymbolic", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_299matMultSymbolic, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_298matMultSymbolic},
+ {"matMultNumeric", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_301matMultNumeric, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_300matMultNumeric},
+ {"matMult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_303matMult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_302matMult},
+ {"matTransposeMult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_305matTransposeMult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_304matTransposeMult},
+ {"transposeMatMult", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_307transposeMatMult, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_306transposeMatMult},
+ {"PtAP", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_309PtAP, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_308PtAP},
+ {"getOrdering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_311getOrdering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_310getOrdering},
+ {"reorderForNonzeroDiagonal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_313reorderForNonzeroDiagonal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_312reorderForNonzeroDiagonal},
+ {"factorLU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_315factorLU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_314factorLU},
+ {"factorSymbolicLU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_317factorSymbolicLU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_316factorSymbolicLU},
+ {"factorNumericLU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_319factorNumericLU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_318factorNumericLU},
+ {"factorILU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_321factorILU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_320factorILU},
+ {"factorSymbolicILU", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_323factorSymbolicILU, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_322factorSymbolicILU},
+ {"factorCholesky", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_325factorCholesky, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_324factorCholesky},
+ {"factorSymbolicCholesky", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_327factorSymbolicCholesky, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_326factorSymbolicCholesky},
+ {"factorNumericCholesky", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_329factorNumericCholesky, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_328factorNumericCholesky},
+ {"factorICC", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_331factorICC, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_330factorICC},
+ {"factorSymbolicICC", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_333factorSymbolicICC, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_332factorSymbolicICC},
+ {"getInertia", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_335getInertia, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_334getInertia},
+ {"setUnfactored", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_337setUnfactored, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_336setUnfactored},
+ {"getLRCMats", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_339getLRCMats, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_338getLRCMats},
+ {"setMumpsIcntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_341setMumpsIcntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_340setMumpsIcntl},
+ {"getMumpsIcntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_343getMumpsIcntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_342getMumpsIcntl},
+ {"setMumpsCntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_345setMumpsCntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_344setMumpsCntl},
+ {"getMumpsCntl", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_347getMumpsCntl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_346getMumpsCntl},
+ {"getMumpsInfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_349getMumpsInfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_348getMumpsInfo},
+ {"getMumpsInfog", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_351getMumpsInfog, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_350getMumpsInfog},
+ {"getMumpsRinfo", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_353getMumpsRinfo, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_352getMumpsRinfo},
+ {"getMumpsRinfog", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_355getMumpsRinfog, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_354getMumpsRinfog},
+ {"solveForward", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_357solveForward, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_356solveForward},
+ {"solveBackward", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_359solveBackward, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_358solveBackward},
+ {"solve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_361solve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_360solve},
+ {"solveTranspose", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_363solveTranspose, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_362solveTranspose},
+ {"solveAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_365solveAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_364solveAdd},
+ {"solveTransposeAdd", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_367solveTransposeAdd, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_366solveTransposeAdd},
+ {"matSolve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_369matSolve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_368matSolve},
+ {"getDenseArray", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_371getDenseArray, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_370getDenseArray},
+ {"getDenseLocalMatrix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Mat_373getDenseLocalMatrix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Mat_372getDenseLocalMatrix},
{0, 0, 0, 0}
};
@@ -239266,7 +259512,7 @@ static PyNumberMethods __pyx_tp_as_number_Mat = {
__pyx_pw_8petsc4py_5PETSc_3Mat_17__add__, /*nb_add*/
__pyx_pw_8petsc4py_5PETSc_3Mat_19__sub__, /*nb_subtract*/
__pyx_pw_8petsc4py_5PETSc_3Mat_21__mul__, /*nb_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
__pyx_pw_8petsc4py_5PETSc_3Mat_23__div__, /*nb_divide*/
#endif
0, /*nb_remainder*/
@@ -239286,7 +259532,7 @@ static PyNumberMethods __pyx_tp_as_number_Mat = {
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_coerce*/
#endif
0, /*nb_int*/
@@ -239296,16 +259542,16 @@ static PyNumberMethods __pyx_tp_as_number_Mat = {
0, /*reserved*/
#endif
0, /*nb_float*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_oct*/
#endif
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_hex*/
#endif
__pyx_pw_8petsc4py_5PETSc_3Mat_7__iadd__, /*nb_inplace_add*/
__pyx_pw_8petsc4py_5PETSc_3Mat_9__isub__, /*nb_inplace_subtract*/
__pyx_pw_8petsc4py_5PETSc_3Mat_11__imul__, /*nb_inplace_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
__pyx_pw_8petsc4py_5PETSc_3Mat_13__idiv__, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
@@ -239412,10 +259658,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_NullSpace(PyTypeObject *t, PyObje
if (unlikely(!o)) return 0;
p = ((struct PyPetscNullSpaceObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_NullSpace;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_9NullSpace_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_9NullSpace_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_NullSpace[] = {
@@ -239428,6 +259675,7 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_NullSpace[] = {
{"getVecs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_9NullSpace_17getVecs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_9NullSpace_16getVecs},
{"getFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_9NullSpace_19getFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_9NullSpace_18getFunction},
{"remove", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_9NullSpace_21remove, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_9NullSpace_20remove},
+ {"test", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_9NullSpace_23test, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_9NullSpace_22test},
{0, 0, 0, 0}
};
@@ -239496,10 +259744,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_PC(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscPCObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_PC;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_2PC_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_2PC_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_PC[] = {
@@ -239576,10 +259825,11 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_PC[] = {
{"getMGSmoother", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_145getMGSmoother, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_144getMGSmoother},
{"getMGSmootherDown", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_147getMGSmootherDown, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_146getMGSmootherDown},
{"getMGSmootherUp", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_149getMGSmootherUp, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_148getMGSmootherUp},
- {"setMGCyclesOnLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCyclesOnLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_150setMGCyclesOnLevel},
- {"setMGRhs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_153setMGRhs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_152setMGRhs},
- {"setMGX", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_155setMGX, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_154setMGX},
- {"setMGR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_157setMGR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_156setMGR},
+ {"setMGCycleType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_151setMGCycleType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_150setMGCycleType},
+ {"setMGCycleTypeOnLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_153setMGCycleTypeOnLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_152setMGCycleTypeOnLevel},
+ {"setMGRhs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_155setMGRhs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_154setMGRhs},
+ {"setMGX", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_157setMGX, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_156setMGX},
+ {"setMGR", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2PC_159setMGR, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2PC_158setMGR},
{0, 0, 0, 0}
};
@@ -239648,10 +259898,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_KSP(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscKSPObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_KSP;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_3KSP_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_3KSP_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_getprop_8petsc4py_5PETSc_3KSP_appctx(PyObject *o, CYTHON_UNUSED void *x) {
@@ -240034,10 +260285,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_SNES(PyTypeObject *t, PyObject *a
if (unlikely(!o)) return 0;
p = ((struct PyPetscSNESObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_SNES;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_4SNES_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_4SNES_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_getprop_8petsc4py_5PETSc_4SNES_appctx(PyObject *o, CYTHON_UNUSED void *x) {
@@ -240206,6 +260458,20 @@ static int __pyx_setprop_8petsc4py_5PETSc_4SNES_its(PyObject *o, PyObject *v, CY
}
}
+static PyObject *__pyx_getprop_8petsc4py_5PETSc_4SNES_norm(PyObject *o, CYTHON_UNUSED void *x) {
+ return __pyx_pw_8petsc4py_5PETSc_4SNES_4norm_1__get__(o);
+}
+
+static int __pyx_setprop_8petsc4py_5PETSc_4SNES_norm(PyObject *o, PyObject *v, CYTHON_UNUSED void *x) {
+ if (v) {
+ return __pyx_pw_8petsc4py_5PETSc_4SNES_4norm_3__set__(o, v);
+ }
+ else {
+ PyErr_SetString(PyExc_NotImplementedError, "__del__");
+ return -1;
+ }
+}
+
static PyObject *__pyx_getprop_8petsc4py_5PETSc_4SNES_history(PyObject *o, CYTHON_UNUSED void *x) {
return __pyx_pw_8petsc4py_5PETSc_4SNES_7history_1__get__(o);
}
@@ -240307,60 +260573,67 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_SNES[] = {
{"computeFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_81computeFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_80computeFunction},
{"computeJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_83computeJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_82computeJacobian},
{"computeObjective", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_85computeObjective, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_84computeObjective},
- {"setTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_87setTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_86setTolerances},
- {"getTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_89getTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_88getTolerances},
- {"setNormSchedule", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_91setNormSchedule, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_90setNormSchedule},
- {"getNormSchedule", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_93getNormSchedule, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_92getNormSchedule},
- {"setConvergenceTest", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_95setConvergenceTest, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_94setConvergenceTest},
- {"getConvergenceTest", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_97getConvergenceTest, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_96getConvergenceTest},
- {"callConvergenceTest", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_99callConvergenceTest, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_98callConvergenceTest},
- {"setConvergenceHistory", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceHistory, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_100setConvergenceHistory},
- {"getConvergenceHistory", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_103getConvergenceHistory, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_102getConvergenceHistory},
- {"logConvergenceHistory", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_105logConvergenceHistory, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_104logConvergenceHistory},
- {"setResetCounters", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_107setResetCounters, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_106setResetCounters},
- {"setMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_109setMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_108setMonitor},
- {"getMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_111getMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_110getMonitor},
- {"cancelMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_113cancelMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_112cancelMonitor},
- {"monitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_115monitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_114monitor},
- {"setMaxFunctionEvaluations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_117setMaxFunctionEvaluations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_116setMaxFunctionEvaluations},
- {"getMaxFunctionEvaluations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_119getMaxFunctionEvaluations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_118getMaxFunctionEvaluations},
- {"getFunctionEvaluations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_121getFunctionEvaluations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_120getFunctionEvaluations},
- {"setMaxStepFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxStepFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_122setMaxStepFailures},
- {"getMaxStepFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_125getMaxStepFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_124getMaxStepFailures},
- {"getStepFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_127getStepFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_126getStepFailures},
- {"setMaxKSPFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxKSPFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_128setMaxKSPFailures},
- {"getMaxKSPFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_131getMaxKSPFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_130getMaxKSPFailures},
- {"getKSPFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_133getKSPFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_132getKSPFailures},
- {"setUp", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_135setUp, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_134setUp},
- {"reset", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_137reset, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_136reset},
- {"solve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_139solve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_138solve},
- {"setConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_141setConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_140setConvergedReason},
- {"getConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_143getConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_142getConvergedReason},
- {"setIterationNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_145setIterationNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_144setIterationNumber},
- {"getIterationNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_147getIterationNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_146getIterationNumber},
- {"getLinearSolveIterations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_149getLinearSolveIterations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_148getLinearSolveIterations},
- {"getRhs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_151getRhs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_150getRhs},
- {"getSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_153getSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_152getSolution},
- {"setSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_155setSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_154setSolution},
- {"getSolutionUpdate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_157getSolutionUpdate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_156getSolutionUpdate},
- {"setKSP", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_159setKSP, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_158setKSP},
- {"getKSP", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_161getKSP, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_160getKSP},
- {"setUseEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_163setUseEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_162setUseEW},
- {"getUseEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_165getUseEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_164getUseEW},
- {"setParamsEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_167setParamsEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_166setParamsEW},
- {"getParamsEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_169getParamsEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_168getParamsEW},
- {"setUseMF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_171setUseMF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_170setUseMF},
- {"getUseMF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_173getUseMF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_172getUseMF},
- {"setUseFD", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_175setUseFD, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_174setUseFD},
- {"getUseFD", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_177getUseFD, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_176getUseFD},
- {"setVariableBounds", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_179setVariableBounds, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_178setVariableBounds},
- {"getVIInactiveSet", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_181getVIInactiveSet, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_180getVIInactiveSet},
- {"createPython", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_183createPython, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_182createPython},
- {"setPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_185setPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_184setPythonContext},
- {"getPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_187getPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_186getPythonContext},
- {"setPythonType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_189setPythonType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_188setPythonType},
- {"getCompositeSNES", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_191getCompositeSNES, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_190getCompositeSNES},
- {"getCompositeNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_193getCompositeNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_192getCompositeNumber},
+ {"setNGS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_87setNGS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_86setNGS},
+ {"getNGS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_89getNGS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_88getNGS},
+ {"computeNGS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_91computeNGS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_90computeNGS},
+ {"setTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_93setTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_92setTolerances},
+ {"getTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_95getTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_94getTolerances},
+ {"setNormSchedule", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_97setNormSchedule, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_96setNormSchedule},
+ {"getNormSchedule", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_99getNormSchedule, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_98getNormSchedule},
+ {"setConvergenceTest", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_101setConvergenceTest, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_100setConvergenceTest},
+ {"getConvergenceTest", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_103getConvergenceTest, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_102getConvergenceTest},
+ {"callConvergenceTest", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_105callConvergenceTest, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_104callConvergenceTest},
+ {"setConvergenceHistory", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_107setConvergenceHistory, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_106setConvergenceHistory},
+ {"getConvergenceHistory", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_109getConvergenceHistory, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_108getConvergenceHistory},
+ {"logConvergenceHistory", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_111logConvergenceHistory, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_110logConvergenceHistory},
+ {"setResetCounters", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_113setResetCounters, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_112setResetCounters},
+ {"setMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_115setMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_114setMonitor},
+ {"getMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_117getMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_116getMonitor},
+ {"cancelMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_119cancelMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_118cancelMonitor},
+ {"monitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_121monitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_120monitor},
+ {"setMaxFunctionEvaluations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_123setMaxFunctionEvaluations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_122setMaxFunctionEvaluations},
+ {"getMaxFunctionEvaluations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_125getMaxFunctionEvaluations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_124getMaxFunctionEvaluations},
+ {"getFunctionEvaluations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_127getFunctionEvaluations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_126getFunctionEvaluations},
+ {"setMaxStepFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_129setMaxStepFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_128setMaxStepFailures},
+ {"getMaxStepFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_131getMaxStepFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_130getMaxStepFailures},
+ {"getStepFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_133getStepFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_132getStepFailures},
+ {"setMaxKSPFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_135setMaxKSPFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_134setMaxKSPFailures},
+ {"getMaxKSPFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_137getMaxKSPFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_136getMaxKSPFailures},
+ {"getKSPFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_139getKSPFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_138getKSPFailures},
+ {"setUp", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_141setUp, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_140setUp},
+ {"reset", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_143reset, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_142reset},
+ {"solve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_145solve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_144solve},
+ {"setConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_147setConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_146setConvergedReason},
+ {"getConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_149getConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_148getConvergedReason},
+ {"setIterationNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_151setIterationNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_150setIterationNumber},
+ {"getIterationNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_153getIterationNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_152getIterationNumber},
+ {"setFunctionNorm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_155setFunctionNorm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_154setFunctionNorm},
+ {"getFunctionNorm", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_157getFunctionNorm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_156getFunctionNorm},
+ {"getLinearSolveIterations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_159getLinearSolveIterations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_158getLinearSolveIterations},
+ {"getRhs", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_161getRhs, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_160getRhs},
+ {"getSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_163getSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_162getSolution},
+ {"setSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_165setSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_164setSolution},
+ {"getSolutionUpdate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_167getSolutionUpdate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_166getSolutionUpdate},
+ {"setKSP", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_169setKSP, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_168setKSP},
+ {"getKSP", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_171getKSP, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_170getKSP},
+ {"setUseEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_173setUseEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_172setUseEW},
+ {"getUseEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_175getUseEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_174getUseEW},
+ {"setParamsEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_177setParamsEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_176setParamsEW},
+ {"getParamsEW", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_179getParamsEW, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_178getParamsEW},
+ {"setUseMF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_181setUseMF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_180setUseMF},
+ {"getUseMF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_183getUseMF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_182getUseMF},
+ {"setUseFD", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_185setUseFD, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_184setUseFD},
+ {"getUseFD", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_187getUseFD, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_186getUseFD},
+ {"setVariableBounds", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_189setVariableBounds, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_188setVariableBounds},
+ {"getVIInactiveSet", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_191getVIInactiveSet, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_190getVIInactiveSet},
+ {"createPython", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_193createPython, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_192createPython},
+ {"setPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_195setPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_194setPythonContext},
+ {"getPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_197getPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_196getPythonContext},
+ {"setPythonType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_199setPythonType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_198setPythonType},
+ {"getCompositeSNES", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_201getCompositeSNES, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_200getCompositeSNES},
+ {"getCompositeNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_203getCompositeNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_202getCompositeNumber},
+ {"getNASMSNES", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_205getNASMSNES, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_204getNASMSNES},
+ {"getNASMNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_4SNES_207getNASMNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_4SNES_206getNASMNumber},
{0, 0, 0, 0}
};
@@ -240379,6 +260652,7 @@ static struct PyGetSetDef __pyx_getsets_8petsc4py_5PETSc_SNES[] = {
{(char *)"max_it", __pyx_getprop_8petsc4py_5PETSc_4SNES_max_it, __pyx_setprop_8petsc4py_5PETSc_4SNES_max_it, (char *)0, 0},
{(char *)"max_funcs", __pyx_getprop_8petsc4py_5PETSc_4SNES_max_funcs, __pyx_setprop_8petsc4py_5PETSc_4SNES_max_funcs, (char *)0, 0},
{(char *)"its", __pyx_getprop_8petsc4py_5PETSc_4SNES_its, __pyx_setprop_8petsc4py_5PETSc_4SNES_its, (char *)0, 0},
+ {(char *)"norm", __pyx_getprop_8petsc4py_5PETSc_4SNES_norm, __pyx_setprop_8petsc4py_5PETSc_4SNES_norm, (char *)0, 0},
{(char *)"history", __pyx_getprop_8petsc4py_5PETSc_4SNES_history, 0, (char *)0, 0},
{(char *)"reason", __pyx_getprop_8petsc4py_5PETSc_4SNES_reason, __pyx_setprop_8petsc4py_5PETSc_4SNES_reason, (char *)0, 0},
{(char *)"iterating", __pyx_getprop_8petsc4py_5PETSc_4SNES_iterating, 0, (char *)0, 0},
@@ -240454,10 +260728,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_TS(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscTSObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_TS;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_2TS_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_2TS_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_getprop_8petsc4py_5PETSc_2TS_appctx(PyObject *o, CYTHON_UNUSED void *x) {
@@ -240659,89 +260934,106 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_TS[] = {
{"create", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_9create, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_8create},
{"clone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_11clone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_10clone},
{"setType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_13setType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_12setType},
- {"getType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_15getType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_14getType},
- {"setProblemType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_17setProblemType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_16setProblemType},
- {"getProblemType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_19getProblemType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_18getProblemType},
- {"setEquationType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_21setEquationType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_20setEquationType},
- {"getEquationType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_23getEquationType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_22getEquationType},
- {"setOptionsPrefix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_25setOptionsPrefix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_24setOptionsPrefix},
- {"getOptionsPrefix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_27getOptionsPrefix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_26getOptionsPrefix},
- {"setFromOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_29setFromOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_28setFromOptions},
- {"setAppCtx", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_31setAppCtx, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_30setAppCtx},
- {"getAppCtx", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_33getAppCtx, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_32getAppCtx},
- {"setRHSFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_35setRHSFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_34setRHSFunction},
- {"setRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_37setRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_36setRHSJacobian},
- {"computeRHSFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_39computeRHSFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_38computeRHSFunction},
- {"computeRHSFunctionLinear", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_41computeRHSFunctionLinear, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_40computeRHSFunctionLinear},
- {"computeRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_42computeRHSJacobian},
- {"computeRHSJacobianConstant", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSJacobianConstant, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_44computeRHSJacobianConstant},
- {"getRHSFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_47getRHSFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_46getRHSFunction},
- {"getRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_49getRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_48getRHSJacobian},
- {"setIFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_51setIFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_50setIFunction},
- {"setIJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_53setIJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_52setIJacobian},
- {"computeIFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_55computeIFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_54computeIFunction},
- {"computeIJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_57computeIJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_56computeIJacobian},
- {"getIFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_59getIFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_58getIFunction},
- {"getIJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_61getIJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_60getIJacobian},
- {"setSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_63setSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_62setSolution},
- {"getSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_65getSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_64getSolution},
- {"getSNES", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_67getSNES, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_66getSNES},
- {"getKSP", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_69getKSP, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_68getKSP},
- {"getDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_71getDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_70getDM},
- {"setDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_73setDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_72setDM},
- {"setTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_75setTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_74setTime},
- {"getTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_77getTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_76getTime},
- {"getPrevTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_79getPrevTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_78getPrevTime},
- {"getSolveTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_81getSolveTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_80getSolveTime},
- {"setInitialTimeStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_83setInitialTimeStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_82setInitialTimeStep},
- {"setTimeStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_85setTimeStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_84setTimeStep},
- {"getTimeStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_87getTimeStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_86getTimeStep},
- {"setStepNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_89setStepNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_88setStepNumber},
- {"getStepNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_91getStepNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_90getStepNumber},
- {"setMaxTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_93setMaxTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_92setMaxTime},
- {"getMaxTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_95getMaxTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_94getMaxTime},
- {"setMaxSteps", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_97setMaxSteps, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_96setMaxSteps},
- {"getMaxSteps", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_99getMaxSteps, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_98getMaxSteps},
- {"setDuration", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_101setDuration, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_100setDuration},
- {"getDuration", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_103getDuration, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_102getDuration},
- {"getTotalSteps", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_105getTotalSteps, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_104getTotalSteps},
- {"getSNESIterations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_107getSNESIterations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_106getSNESIterations},
- {"getKSPIterations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_109getKSPIterations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_108getKSPIterations},
- {"setMaxStepRejections", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxStepRejections, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_110setMaxStepRejections},
- {"getStepRejections", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_113getStepRejections, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_112getStepRejections},
- {"setMaxSNESFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSNESFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_114setMaxSNESFailures},
- {"getSNESFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_117getSNESFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_116getSNESFailures},
- {"setErrorIfStepFails", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_119setErrorIfStepFails, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_118setErrorIfStepFails},
- {"setTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_121setTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_120setTolerances},
- {"getTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_123getTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_122getTolerances},
- {"setExactFinalTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_125setExactFinalTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_124setExactFinalTime},
- {"setConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_127setConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_126setConvergedReason},
- {"getConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_129getConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_128getConvergedReason},
- {"setMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_131setMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_130setMonitor},
- {"getMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_133getMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_132getMonitor},
- {"cancelMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_135cancelMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_134cancelMonitor},
- {"monitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_137monitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_136monitor},
- {"setPreStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_139setPreStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_138setPreStep},
- {"getPreStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_141getPreStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_140getPreStep},
- {"setPostStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_143setPostStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_142setPostStep},
- {"getPostStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_145getPostStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_144getPostStep},
- {"setUp", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_147setUp, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_146setUp},
- {"reset", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_149reset, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_148reset},
- {"step", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_151step, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_150step},
- {"rollBack", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_153rollBack, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_152rollBack},
- {"solve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_155solve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_154solve},
- {"interpolate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_157interpolate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_156interpolate},
- {"createPython", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_159createPython, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_158createPython},
- {"setPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_161setPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_160setPythonContext},
- {"getPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_163getPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_162getPythonContext},
- {"setPythonType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_165setPythonType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_164setPythonType},
- {"setTheta", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_167setTheta, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_166setTheta},
- {"getTheta", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_169getTheta, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_168getTheta},
- {"setThetaEndpoint", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_171setThetaEndpoint, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_170setThetaEndpoint},
- {"getThetaEndpoint", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_173getThetaEndpoint, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_172getThetaEndpoint},
- {"setAlphaRadius", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_175setAlphaRadius, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_174setAlphaRadius},
- {"setAlphaParams", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_177setAlphaParams, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_176setAlphaParams},
- {"getAlphaParams", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_179getAlphaParams, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_178getAlphaParams},
+ {"setRKType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_15setRKType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_14setRKType},
+ {"getType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_17getType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_16getType},
+ {"getRKType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_19getRKType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_18getRKType},
+ {"setProblemType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_21setProblemType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_20setProblemType},
+ {"getProblemType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_23getProblemType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_22getProblemType},
+ {"setEquationType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_25setEquationType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_24setEquationType},
+ {"getEquationType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_27getEquationType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_26getEquationType},
+ {"setOptionsPrefix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_29setOptionsPrefix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_28setOptionsPrefix},
+ {"getOptionsPrefix", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_31getOptionsPrefix, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_30getOptionsPrefix},
+ {"setFromOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_33setFromOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_32setFromOptions},
+ {"setAppCtx", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_35setAppCtx, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_34setAppCtx},
+ {"getAppCtx", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_37getAppCtx, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_36getAppCtx},
+ {"setRHSFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_39setRHSFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_38setRHSFunction},
+ {"setRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_41setRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_40setRHSJacobian},
+ {"computeRHSFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_43computeRHSFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_42computeRHSFunction},
+ {"computeRHSFunctionLinear", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_45computeRHSFunctionLinear, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_44computeRHSFunctionLinear},
+ {"computeRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_47computeRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_46computeRHSJacobian},
+ {"computeRHSJacobianConstant", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_49computeRHSJacobianConstant, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_48computeRHSJacobianConstant},
+ {"getRHSFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_51getRHSFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_50getRHSFunction},
+ {"getRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_53getRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_52getRHSJacobian},
+ {"setIFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_55setIFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_54setIFunction},
+ {"setIJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_57setIJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_56setIJacobian},
+ {"computeIFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_59computeIFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_58computeIFunction},
+ {"computeIJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_61computeIJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_60computeIJacobian},
+ {"getIFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_63getIFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_62getIFunction},
+ {"getIJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_65getIJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_64getIJacobian},
+ {"setI2Function", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_67setI2Function, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_66setI2Function},
+ {"setI2Jacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_69setI2Jacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_68setI2Jacobian},
+ {"computeI2Function", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_71computeI2Function, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_70computeI2Function},
+ {"computeI2Jacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_73computeI2Jacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_72computeI2Jacobian},
+ {"getI2Function", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_75getI2Function, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_74getI2Function},
+ {"getI2Jacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_77getI2Jacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_76getI2Jacobian},
+ {"setSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_79setSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_78setSolution},
+ {"getSolution", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_81getSolution, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_80getSolution},
+ {"setSolution2", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_83setSolution2, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_82setSolution2},
+ {"getSolution2", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_85getSolution2, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_84getSolution2},
+ {"getSNES", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_87getSNES, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_86getSNES},
+ {"getKSP", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_89getKSP, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_88getKSP},
+ {"getDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_91getDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_90getDM},
+ {"setDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_93setDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_92setDM},
+ {"setTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_95setTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_94setTime},
+ {"getTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_97getTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_96getTime},
+ {"getPrevTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_99getPrevTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_98getPrevTime},
+ {"getSolveTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_101getSolveTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_100getSolveTime},
+ {"setTimeStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_103setTimeStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_102setTimeStep},
+ {"getTimeStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_105getTimeStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_104getTimeStep},
+ {"setStepNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_107setStepNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_106setStepNumber},
+ {"getStepNumber", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_109getStepNumber, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_108getStepNumber},
+ {"setMaxTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_111setMaxTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_110setMaxTime},
+ {"getMaxTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_113getMaxTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_112getMaxTime},
+ {"setMaxSteps", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_115setMaxSteps, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_114setMaxSteps},
+ {"getMaxSteps", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_117getMaxSteps, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_116getMaxSteps},
+ {"getSNESIterations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_119getSNESIterations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_118getSNESIterations},
+ {"getKSPIterations", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_121getKSPIterations, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_120getKSPIterations},
+ {"setMaxStepRejections", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_123setMaxStepRejections, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_122setMaxStepRejections},
+ {"getStepRejections", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_125getStepRejections, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_124getStepRejections},
+ {"setMaxSNESFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_127setMaxSNESFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_126setMaxSNESFailures},
+ {"getSNESFailures", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_129getSNESFailures, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_128getSNESFailures},
+ {"setErrorIfStepFails", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_131setErrorIfStepFails, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_130setErrorIfStepFails},
+ {"setTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_133setTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_132setTolerances},
+ {"getTolerances", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_135getTolerances, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_134getTolerances},
+ {"setExactFinalTime", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_137setExactFinalTime, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_136setExactFinalTime},
+ {"setConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_139setConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_138setConvergedReason},
+ {"getConvergedReason", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_141getConvergedReason, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_140getConvergedReason},
+ {"setMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_143setMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_142setMonitor},
+ {"getMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_145getMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_144getMonitor},
+ {"cancelMonitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_147cancelMonitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_146cancelMonitor},
+ {"monitor", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_149monitor, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_148monitor},
+ {"setPreStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_151setPreStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_150setPreStep},
+ {"getPreStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_153getPreStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_152getPreStep},
+ {"setPostStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_155setPostStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_154setPostStep},
+ {"getPostStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_157getPostStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_156getPostStep},
+ {"setUp", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_159setUp, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_158setUp},
+ {"reset", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_161reset, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_160reset},
+ {"step", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_163step, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_162step},
+ {"rollBack", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_165rollBack, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_164rollBack},
+ {"solve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_167solve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_166solve},
+ {"interpolate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_169interpolate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_168interpolate},
+ {"setSaveTrajectory", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_171setSaveTrajectory, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_170setSaveTrajectory},
+ {"getCostIntegral", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_173getCostIntegral, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_172getCostIntegral},
+ {"setCostGradients", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_175setCostGradients, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_174setCostGradients},
+ {"getCostGradients", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_177getCostGradients, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_176getCostGradients},
+ {"setCostIntegrand", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_179setCostIntegrand, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_178setCostIntegrand},
+ {"adjointSetRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_181adjointSetRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_180adjointSetRHSJacobian},
+ {"adjointComputeRHSJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_183adjointComputeRHSJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_182adjointComputeRHSJacobian},
+ {"adjointSetSteps", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_185adjointSetSteps, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_184adjointSetSteps},
+ {"adjointSetUp", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_187adjointSetUp, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_186adjointSetUp},
+ {"adjointSolve", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_189adjointSolve, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_188adjointSolve},
+ {"adjointStep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_191adjointStep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_190adjointStep},
+ {"createPython", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_193createPython, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_192createPython},
+ {"setPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_195setPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_194setPythonContext},
+ {"getPythonContext", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_197getPythonContext, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_196getPythonContext},
+ {"setPythonType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_199setPythonType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_198setPythonType},
+ {"setTheta", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_201setTheta, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_200setTheta},
+ {"getTheta", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_203getTheta, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_202getTheta},
+ {"setThetaEndpoint", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_205setThetaEndpoint, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_204setThetaEndpoint},
+ {"getThetaEndpoint", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_207getThetaEndpoint, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_206getThetaEndpoint},
+ {"setAlphaRadius", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_209setAlphaRadius, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_208setAlphaRadius},
+ {"setAlphaParams", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_211setAlphaParams, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_210setAlphaParams},
+ {"getAlphaParams", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2TS_213getAlphaParams, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2TS_212getAlphaParams},
{0, 0, 0, 0}
};
@@ -240832,10 +261124,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_TAO(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscTAOObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_TAO;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_3TAO_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_3TAO_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyObject *__pyx_getprop_8petsc4py_5PETSc_3TAO_appctx(PyObject *o, CYTHON_UNUSED void *x) {
@@ -241090,10 +261383,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_AO(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscAOObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_AO;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_2AO_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_2AO_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_AO[] = {
@@ -241173,10 +261467,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_DM(PyTypeObject *t, PyObject *a,
if (unlikely(!o)) return 0;
p = ((struct PyPetscDMObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_DM;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_2DM_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_2DM_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_DM[] = {
@@ -241197,49 +261492,62 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_DM[] = {
{"setVecType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_31setVecType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_30setVecType},
{"createGlobalVec", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_33createGlobalVec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_32createGlobalVec},
{"createLocalVec", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_35createLocalVec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_34createLocalVec},
- {"globalToLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_37globalToLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_36globalToLocal},
- {"localToGlobal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_39localToGlobal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_38localToGlobal},
- {"localToLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_41localToLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_40localToLocal},
- {"getLGMap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_43getLGMap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_42getLGMap},
- {"getCoordinateDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_45getCoordinateDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_44getCoordinateDM},
- {"getCoordinateSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_47getCoordinateSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_46getCoordinateSection},
- {"setCoordinates", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_49setCoordinates, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_48setCoordinates},
- {"getCoordinates", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_51getCoordinates, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_50getCoordinates},
- {"setCoordinatesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_53setCoordinatesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_52setCoordinatesLocal},
- {"getCoordinatesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_55getCoordinatesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_54getCoordinatesLocal},
- {"setMatType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_57setMatType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_56setMatType},
- {"createMat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_59createMat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_58createMat},
- {"createInterpolation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_61createInterpolation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_60createInterpolation},
- {"createInjection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_63createInjection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_62createInjection},
- {"createAggregates", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_65createAggregates, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_64createAggregates},
- {"convert", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_67convert, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_66convert},
- {"refine", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_69refine, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_68refine},
- {"coarsen", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_71coarsen, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_70coarsen},
- {"refineHierarchy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_73refineHierarchy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_72refineHierarchy},
- {"coarsenHierarchy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_75coarsenHierarchy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_74coarsenHierarchy},
- {"setDefaultSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_77setDefaultSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_76setDefaultSection},
- {"getDefaultSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_79getDefaultSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_78getDefaultSection},
- {"setDefaultGlobalSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_81setDefaultGlobalSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_80setDefaultGlobalSection},
- {"getDefaultGlobalSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_83getDefaultGlobalSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_82getDefaultGlobalSection},
- {"createDefaultSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_85createDefaultSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_84createDefaultSF},
- {"getDefaultSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_87getDefaultSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_86getDefaultSF},
- {"getPointSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_89getPointSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_88getPointSF},
- {"setPointSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_91setPointSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_90setPointSF},
- {"getNumLabels", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_93getNumLabels, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_92getNumLabels},
- {"getLabelName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_95getLabelName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_94getLabelName},
- {"hasLabel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_97hasLabel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_96hasLabel},
- {"createLabel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_99createLabel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_98createLabel},
- {"removeLabel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_101removeLabel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_100removeLabel},
- {"getLabelValue", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_103getLabelValue, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_102getLabelValue},
- {"setLabelValue", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_105setLabelValue, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_104setLabelValue},
- {"clearLabelValue", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_107clearLabelValue, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_106clearLabelValue},
- {"getLabelSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_109getLabelSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_108getLabelSize},
- {"getLabelIdIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_111getLabelIdIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_110getLabelIdIS},
- {"getStratumSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_113getStratumSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_112getStratumSize},
- {"getStratumIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_115getStratumIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_114getStratumIS},
- {"clearLabelStratum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_117clearLabelStratum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_116clearLabelStratum},
- {"setLabelOutput", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_119setLabelOutput, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_118setLabelOutput},
- {"getLabelOutput", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelOutput, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_120getLabelOutput},
+ {"getGlobalVec", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_37getGlobalVec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_36getGlobalVec},
+ {"restoreGlobalVec", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_39restoreGlobalVec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_38restoreGlobalVec},
+ {"getLocalVec", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_41getLocalVec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_40getLocalVec},
+ {"restoreLocalVec", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_43restoreLocalVec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_42restoreLocalVec},
+ {"globalToLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_45globalToLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_44globalToLocal},
+ {"localToGlobal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_47localToGlobal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_46localToGlobal},
+ {"localToLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_49localToLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_48localToLocal},
+ {"getLGMap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_51getLGMap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_50getLGMap},
+ {"getCoordinateDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_53getCoordinateDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_52getCoordinateDM},
+ {"getCoordinateSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_55getCoordinateSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_54getCoordinateSection},
+ {"setCoordinates", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_57setCoordinates, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_56setCoordinates},
+ {"getCoordinates", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_59getCoordinates, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_58getCoordinates},
+ {"setCoordinatesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_61setCoordinatesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_60setCoordinatesLocal},
+ {"getCoordinatesLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_63getCoordinatesLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_62getCoordinatesLocal},
+ {"setMatType", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_65setMatType, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_64setMatType},
+ {"createMat", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_67createMat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_66createMat},
+ {"createInterpolation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_69createInterpolation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_68createInterpolation},
+ {"createInjection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_71createInjection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_70createInjection},
+ {"createAggregates", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_73createAggregates, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_72createAggregates},
+ {"convert", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_75convert, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_74convert},
+ {"refine", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_77refine, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_76refine},
+ {"coarsen", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_79coarsen, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_78coarsen},
+ {"refineHierarchy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_81refineHierarchy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_80refineHierarchy},
+ {"coarsenHierarchy", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_83coarsenHierarchy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_82coarsenHierarchy},
+ {"getRefineLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_85getRefineLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_84getRefineLevel},
+ {"setRefineLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_87setRefineLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_86setRefineLevel},
+ {"getCoarsenLevel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_89getCoarsenLevel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_88getCoarsenLevel},
+ {"adaptLabel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_91adaptLabel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_90adaptLabel},
+ {"adaptMetric", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_93adaptMetric, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_92adaptMetric},
+ {"setDefaultSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_95setDefaultSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_94setDefaultSection},
+ {"getDefaultSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_97getDefaultSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_96getDefaultSection},
+ {"setDefaultGlobalSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_99setDefaultGlobalSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_98setDefaultGlobalSection},
+ {"getDefaultGlobalSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_101getDefaultGlobalSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_100getDefaultGlobalSection},
+ {"createDefaultSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_103createDefaultSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_102createDefaultSF},
+ {"getDefaultSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_105getDefaultSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_104getDefaultSF},
+ {"getPointSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_107getPointSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_106getPointSF},
+ {"setPointSF", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_109setPointSF, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_108setPointSF},
+ {"getNumLabels", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_111getNumLabels, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_110getNumLabels},
+ {"getLabelName", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_113getLabelName, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_112getLabelName},
+ {"hasLabel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_115hasLabel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_114hasLabel},
+ {"createLabel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_117createLabel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_116createLabel},
+ {"removeLabel", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_119removeLabel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_118removeLabel},
+ {"getLabelValue", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_121getLabelValue, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_120getLabelValue},
+ {"setLabelValue", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_123setLabelValue, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_122setLabelValue},
+ {"clearLabelValue", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_125clearLabelValue, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_124clearLabelValue},
+ {"getLabelSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_127getLabelSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_126getLabelSize},
+ {"getLabelIdIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_129getLabelIdIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_128getLabelIdIS},
+ {"getStratumSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_131getStratumSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_130getStratumSize},
+ {"getStratumIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_133getStratumIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_132getStratumIS},
+ {"clearLabelStratum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_135clearLabelStratum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_134clearLabelStratum},
+ {"setLabelOutput", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_137setLabelOutput, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_136setLabelOutput},
+ {"getLabelOutput", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_139getLabelOutput, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_138getLabelOutput},
+ {"setKSPComputeOperators", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_141setKSPComputeOperators, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_140setKSPComputeOperators},
+ {"createFieldDecomposition", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_143createFieldDecomposition, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_142createFieldDecomposition},
+ {"setSNESFunction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_145setSNESFunction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_144setSNESFunction},
+ {"setSNESJacobian", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_2DM_147setSNESJacobian, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_2DM_146setSNESJacobian},
{0, 0, 0, 0}
};
@@ -241308,10 +261616,11 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Partitioner(PyTypeObject *t, PyOb
if (unlikely(!o)) return 0;
p = ((struct PyPetscPartitionerObject *)o);
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_8petsc4py_5PETSc_Object*)__pyx_vtabptr_8petsc4py_5PETSc_Partitioner;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_11Partitioner_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_11Partitioner_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Partitioner[] = {
@@ -241396,15 +261705,16 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc__IS_buffer(PyTypeObject *t, PyObj
if (unlikely(!o)) return 0;
p = ((struct __pyx_obj_8petsc4py_5PETSc__IS_buffer *)o);
p->__pyx_vtab = __pyx_vtabptr_8petsc4py_5PETSc__IS_buffer;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_10_IS_buffer_1__cinit__(o, a, k) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_10_IS_buffer_1__cinit__(o, a, k) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc__IS_buffer(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -241521,15 +261831,16 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc__Vec_buffer(PyTypeObject *t, PyOb
if (unlikely(!o)) return 0;
p = ((struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *)o);
p->__pyx_vtab = __pyx_vtabptr_8petsc4py_5PETSc__Vec_buffer;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_11_Vec_buffer_1__cinit__(o, a, k) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_11_Vec_buffer_1__cinit__(o, a, k) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc__Vec_buffer(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -241651,8 +261962,8 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc__Vec_LocalForm(PyTypeObject *t, C
static void __pyx_tp_dealloc_8petsc4py_5PETSc__Vec_LocalForm(PyObject *o) {
struct __pyx_obj_8petsc4py_5PETSc__Vec_LocalForm *p = (struct __pyx_obj_8petsc4py_5PETSc__Vec_LocalForm *)o;
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -241666,10 +261977,10 @@ static int __pyx_tp_traverse_8petsc4py_5PETSc__Vec_LocalForm(PyObject *o, visitp
int e;
struct __pyx_obj_8petsc4py_5PETSc__Vec_LocalForm *p = (struct __pyx_obj_8petsc4py_5PETSc__Vec_LocalForm *)o;
if (p->gvec) {
- e = (*v)(((PyObject*)p->gvec), a); if (e) return e;
+ e = (*v)(((PyObject *)p->gvec), a); if (e) return e;
}
if (p->lvec) {
- e = (*v)(((PyObject*)p->lvec), a); if (e) return e;
+ e = (*v)(((PyObject *)p->lvec), a); if (e) return e;
}
return 0;
}
@@ -241762,8 +262073,8 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc__Mat_Stencil(PyTypeObject *t, CYT
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc__Mat_Stencil(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -241916,16 +262227,17 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc__DMDA_Vec_array(PyTypeObject *t,
p->shape = ((PyObject*)Py_None); Py_INCREF(Py_None);
p->strides = ((PyObject*)Py_None); Py_INCREF(Py_None);
p->array = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_15_DMDA_Vec_array_1__cinit__(o, a, k) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_15_DMDA_Vec_array_1__cinit__(o, a, k) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc__DMDA_Vec_array(PyObject *o) {
struct __pyx_obj_8petsc4py_5PETSc__DMDA_Vec_array *p = (struct __pyx_obj_8petsc4py_5PETSc__DMDA_Vec_array *)o;
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -241943,7 +262255,7 @@ static int __pyx_tp_traverse_8petsc4py_5PETSc__DMDA_Vec_array(PyObject *o, visit
int e;
struct __pyx_obj_8petsc4py_5PETSc__DMDA_Vec_array *p = (struct __pyx_obj_8petsc4py_5PETSc__DMDA_Vec_array *)o;
if (p->vecbuf) {
- e = (*v)(((PyObject*)p->vecbuf), a); if (e) return e;
+ e = (*v)(((PyObject *)p->vecbuf), a); if (e) return e;
}
if (p->starts) {
e = (*v)(p->starts, a); if (e) return e;
@@ -241958,7 +262270,7 @@ static int __pyx_tp_traverse_8petsc4py_5PETSc__DMDA_Vec_array(PyObject *o, visit
e = (*v)(p->strides, a); if (e) return e;
}
if (p->array) {
- e = (*v)(((PyObject*)p->array), a); if (e) return e;
+ e = (*v)(((PyObject *)p->array), a); if (e) return e;
}
return 0;
}
@@ -242130,16 +262442,17 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc__DMComposite_access(PyTypeObject
p->locs_mem = Py_None; Py_INCREF(Py_None);
p->vecs_mem = Py_None; Py_INCREF(Py_None);
p->access = Py_None; Py_INCREF(Py_None);
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_19_DMComposite_access_1__cinit__(o, a, k) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_19_DMComposite_access_1__cinit__(o, a, k) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc__DMComposite_access(PyObject *o) {
struct __pyx_obj_8petsc4py_5PETSc__DMComposite_access *p = (struct __pyx_obj_8petsc4py_5PETSc__DMComposite_access *)o;
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -242268,8 +262581,8 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Options(PyTypeObject *t, CYTHON_U
static void __pyx_tp_dealloc_8petsc4py_5PETSc_Options(PyObject *o) {
struct __pyx_obj_8petsc4py_5PETSc_Options *p = (struct __pyx_obj_8petsc4py_5PETSc_Options *)o;
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -242447,8 +262760,8 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Sys(PyTypeObject *t, CYTHON_UNUSE
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_Sys(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -242469,8 +262782,9 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_Sys[] = {
{"sleep", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_21sleep, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_20sleep},
{"pushErrorHandler", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_23pushErrorHandler, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_22pushErrorHandler},
{"popErrorHandler", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_25popErrorHandler, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_24popErrorHandler},
- {"infoAllow", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_27infoAllow, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_26infoAllow},
- {"registerCitation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_29registerCitation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_28registerCitation},
+ {"popSignalHandler", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_27popSignalHandler, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_26popSignalHandler},
+ {"infoAllow", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_29infoAllow, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_28infoAllow},
+ {"registerCitation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_3Sys_31registerCitation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_3Sys_30registerCitation},
{0, 0, 0, 0}
};
@@ -242544,8 +262858,8 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_Log(PyTypeObject *t, CYTHON_UNUSE
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_Log(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -242633,15 +262947,16 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_LogStage(PyTypeObject *t, CYTHON_
o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0);
}
if (unlikely(!o)) return 0;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_8LogStage_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_8LogStage_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_LogStage(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -242721,7 +263036,7 @@ static PyNumberMethods __pyx_tp_as_number_LogStage = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
@@ -242737,7 +263052,7 @@ static PyNumberMethods __pyx_tp_as_number_LogStage = {
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_coerce*/
#endif
__pyx_pw_8petsc4py_5PETSc_8LogStage_3__int__, /*nb_int*/
@@ -242747,16 +263062,16 @@ static PyNumberMethods __pyx_tp_as_number_LogStage = {
0, /*reserved*/
#endif
0, /*nb_float*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_oct*/
#endif
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
@@ -242845,15 +263160,16 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_LogClass(PyTypeObject *t, CYTHON_
o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0);
}
if (unlikely(!o)) return 0;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_8LogClass_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_8LogClass_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_LogClass(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -242912,7 +263228,7 @@ static PyNumberMethods __pyx_tp_as_number_LogClass = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
@@ -242928,7 +263244,7 @@ static PyNumberMethods __pyx_tp_as_number_LogClass = {
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_coerce*/
#endif
__pyx_pw_8petsc4py_5PETSc_8LogClass_3__int__, /*nb_int*/
@@ -242938,16 +263254,16 @@ static PyNumberMethods __pyx_tp_as_number_LogClass = {
0, /*reserved*/
#endif
0, /*nb_float*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_oct*/
#endif
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
@@ -243036,15 +263352,16 @@ static PyObject *__pyx_tp_new_8petsc4py_5PETSc_LogEvent(PyTypeObject *t, CYTHON_
o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0);
}
if (unlikely(!o)) return 0;
- if (unlikely(__pyx_pw_8petsc4py_5PETSc_8LogEvent_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) {
- Py_DECREF(o); o = 0;
- }
+ if (unlikely(__pyx_pw_8petsc4py_5PETSc_8LogEvent_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad;
return o;
+ bad:
+ Py_DECREF(o); o = 0;
+ return NULL;
}
static void __pyx_tp_dealloc_8petsc4py_5PETSc_LogEvent(PyObject *o) {
- #if PY_VERSION_HEX >= 0x030400a1
- if (unlikely(Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
+ #if CYTHON_USE_TP_FINALIZE
+ if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) {
if (PyObject_CallFinalizerFromDealloc(o)) return;
}
#endif
@@ -243127,7 +263444,7 @@ static PyNumberMethods __pyx_tp_as_number_LogEvent = {
0, /*nb_add*/
0, /*nb_subtract*/
0, /*nb_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_divide*/
#endif
0, /*nb_remainder*/
@@ -243143,7 +263460,7 @@ static PyNumberMethods __pyx_tp_as_number_LogEvent = {
0, /*nb_and*/
0, /*nb_xor*/
0, /*nb_or*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_coerce*/
#endif
__pyx_pw_8petsc4py_5PETSc_8LogEvent_3__int__, /*nb_int*/
@@ -243153,16 +263470,16 @@ static PyNumberMethods __pyx_tp_as_number_LogEvent = {
0, /*reserved*/
#endif
0, /*nb_float*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_oct*/
#endif
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_hex*/
#endif
0, /*nb_inplace_add*/
0, /*nb_inplace_subtract*/
0, /*nb_inplace_multiply*/
- #if PY_MAJOR_VERSION < 3 || CYTHON_COMPILING_IN_PYPY
+ #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000)
0, /*nb_inplace_divide*/
#endif
0, /*nb_inplace_remainder*/
@@ -243520,61 +263837,78 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_DMPlex[] = {
{"createFromCellList", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_3createFromCellList, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_2createFromCellList},
{"createBoxMesh", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_5createBoxMesh, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_4createBoxMesh},
{"createHexBoxMesh", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_7createHexBoxMesh, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_6createHexBoxMesh},
- {"createCGNS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createCGNS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_8createCGNS},
- {"createCGNSFromFile", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNSFromFile, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_10createCGNSFromFile},
- {"createExodusFromFile", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createExodusFromFile, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_12createExodusFromFile},
- {"createExodus", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodus, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_14createExodus},
- {"createGmsh", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createGmsh, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_16createGmsh},
- {"createCohesiveSubmesh", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createCohesiveSubmesh, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_18createCohesiveSubmesh},
- {"getChart", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_21getChart, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_20getChart},
- {"setChart", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_23setChart, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_22setChart},
- {"getConeSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_25getConeSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_24getConeSize},
- {"setConeSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_27setConeSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_26setConeSize},
- {"getCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_29getCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_28getCone},
- {"setCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_31setCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_30setCone},
- {"insertCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_33insertCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_32insertCone},
- {"insertConeOrientation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertConeOrientation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_34insertConeOrientation},
- {"getConeOrientation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_37getConeOrientation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_36getConeOrientation},
- {"setConeOrientation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_39setConeOrientation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_38setConeOrientation},
- {"getSupportSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_41getSupportSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_40getSupportSize},
- {"setSupportSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_43setSupportSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_42setSupportSize},
- {"getSupport", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_45getSupport, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_44getSupport},
- {"setSupport", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_47setSupport, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_46setSupport},
- {"getMaxSizes", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_49getMaxSizes, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_48getMaxSizes},
- {"symmetrize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_51symmetrize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_50symmetrize},
- {"stratify", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_53stratify, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_52stratify},
- {"orient", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_55orient, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_54orient},
- {"getCellNumbering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_57getCellNumbering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_56getCellNumbering},
- {"getVertexNumbering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_59getVertexNumbering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_58getVertexNumbering},
- {"createPointNumbering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_61createPointNumbering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_60createPointNumbering},
- {"getDepth", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_63getDepth, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_62getDepth},
- {"getDepthStratum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepthStratum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_64getDepthStratum},
- {"getHeightStratum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getHeightStratum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_66getHeightStratum},
- {"getMeet", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getMeet, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_68getMeet},
- {"getJoin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getJoin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_70getJoin},
- {"getTransitiveClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getTransitiveClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_72getTransitiveClosure},
- {"vecGetClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_75vecGetClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_74vecGetClosure},
- {"generate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_77generate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_76generate},
- {"setTriangleOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_79setTriangleOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_78setTriangleOptions},
- {"setTetGenOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setTetGenOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_80setTetGenOptions},
- {"createSquareBoundary", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_83createSquareBoundary, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_82createSquareBoundary},
- {"createCubeBoundary", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_85createCubeBoundary, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_84createCubeBoundary},
- {"markBoundaryFaces", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_87markBoundaryFaces, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_86markBoundaryFaces},
- {"setAdjacencyUseCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setAdjacencyUseCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_88setAdjacencyUseCone},
- {"setAdjacencyUseClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_91setAdjacencyUseClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_90setAdjacencyUseClosure},
- {"getPartitioner", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_93getPartitioner, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_92getPartitioner},
- {"distribute", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_95distribute, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_94distribute},
- {"distributeOverlap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_97distributeOverlap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_96distributeOverlap},
- {"distributeField", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_99distributeField, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_98distributeField},
- {"createCoarsePointIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_101createCoarsePointIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_100createCoarsePointIS},
- {"createSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_103createSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_102createSection},
- {"setRefinementUniform", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setRefinementUniform, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_104setRefinementUniform},
- {"getRefinementUniform", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_107getRefinementUniform, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_106getRefinementUniform},
- {"setRefinementLimit", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_109setRefinementLimit, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_108setRefinementLimit},
- {"getRefinementLimit", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_111getRefinementLimit, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_110getRefinementLimit},
- {"getOrdering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getOrdering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_112getOrdering},
- {"permute", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_115permute, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_114permute},
- {"computeCellGeometryFVM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_117computeCellGeometryFVM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_116computeCellGeometryFVM},
+ {"createFromFile", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_9createFromFile, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_8createFromFile},
+ {"createCGNS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_11createCGNS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_10createCGNS},
+ {"createCGNSFromFile", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_13createCGNSFromFile, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_12createCGNSFromFile},
+ {"createExodusFromFile", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_15createExodusFromFile, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_14createExodusFromFile},
+ {"createExodus", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_17createExodus, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_16createExodus},
+ {"createGmsh", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_19createGmsh, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_18createGmsh},
+ {"createCohesiveSubmesh", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_21createCohesiveSubmesh, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_20createCohesiveSubmesh},
+ {"getChart", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_23getChart, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_22getChart},
+ {"setChart", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_25setChart, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_24setChart},
+ {"getConeSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_27getConeSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_26getConeSize},
+ {"setConeSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_29setConeSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_28setConeSize},
+ {"getCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_31getCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_30getCone},
+ {"setCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_33setCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_32setCone},
+ {"insertCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_35insertCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_34insertCone},
+ {"insertConeOrientation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_37insertConeOrientation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_36insertConeOrientation},
+ {"getConeOrientation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_39getConeOrientation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_38getConeOrientation},
+ {"setConeOrientation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_41setConeOrientation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_40setConeOrientation},
+ {"getSupportSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_43getSupportSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_42getSupportSize},
+ {"setSupportSize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_45setSupportSize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_44setSupportSize},
+ {"getSupport", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_47getSupport, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_46getSupport},
+ {"setSupport", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_49setSupport, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_48setSupport},
+ {"getMaxSizes", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_51getMaxSizes, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_50getMaxSizes},
+ {"symmetrize", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_53symmetrize, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_52symmetrize},
+ {"stratify", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_55stratify, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_54stratify},
+ {"orient", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_57orient, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_56orient},
+ {"getCellNumbering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_59getCellNumbering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_58getCellNumbering},
+ {"getVertexNumbering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_61getVertexNumbering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_60getVertexNumbering},
+ {"createPointNumbering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_63createPointNumbering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_62createPointNumbering},
+ {"getDepth", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_65getDepth, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_64getDepth},
+ {"getDepthStratum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_67getDepthStratum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_66getDepthStratum},
+ {"getHeightStratum", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_69getHeightStratum, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_68getHeightStratum},
+ {"getMeet", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_71getMeet, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_70getMeet},
+ {"getJoin", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_73getJoin, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_72getJoin},
+ {"getTransitiveClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_75getTransitiveClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_74getTransitiveClosure},
+ {"vecGetClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_77vecGetClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_76vecGetClosure},
+ {"getVecClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_79getVecClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_78getVecClosure},
+ {"setVecClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_81setVecClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_80setVecClosure},
+ {"setMatClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_83setMatClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_82setMatClosure},
+ {"generate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_85generate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_84generate},
+ {"setTriangleOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_87setTriangleOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_86setTriangleOptions},
+ {"setTetGenOptions", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_89setTetGenOptions, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_88setTetGenOptions},
+ {"createSquareBoundary", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_91createSquareBoundary, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_90createSquareBoundary},
+ {"createCubeBoundary", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_93createCubeBoundary, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_92createCubeBoundary},
+ {"markBoundaryFaces", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_95markBoundaryFaces, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_94markBoundaryFaces},
+ {"setAdjacencyUseCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_97setAdjacencyUseCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_96setAdjacencyUseCone},
+ {"getAdjacencyUseCone", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_99getAdjacencyUseCone, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_98getAdjacencyUseCone},
+ {"setAdjacencyUseClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_101setAdjacencyUseClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_100setAdjacencyUseClosure},
+ {"getAdjacencyUseClosure", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_103getAdjacencyUseClosure, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_102getAdjacencyUseClosure},
+ {"setAdjacencyUseAnchors", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_105setAdjacencyUseAnchors, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_104setAdjacencyUseAnchors},
+ {"getAdjacencyUseAnchors", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_107getAdjacencyUseAnchors, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_106getAdjacencyUseAnchors},
+ {"getAdjacency", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_109getAdjacency, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_108getAdjacency},
+ {"setPartitioner", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_111setPartitioner, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_110setPartitioner},
+ {"getPartitioner", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_113getPartitioner, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_112getPartitioner},
+ {"distribute", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_115distribute, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_114distribute},
+ {"distributeOverlap", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_117distributeOverlap, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_116distributeOverlap},
+ {"interpolate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_119interpolate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_118interpolate},
+ {"uninterpolate", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_121uninterpolate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_120uninterpolate},
+ {"distributeField", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_123distributeField, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_122distributeField},
+ {"createCoarsePointIS", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_125createCoarsePointIS, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_124createCoarsePointIS},
+ {"createSection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_127createSection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_126createSection},
+ {"getPointLocal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_129getPointLocal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_128getPointLocal},
+ {"getPointLocalField", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_131getPointLocalField, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_130getPointLocalField},
+ {"getPointGlobal", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_133getPointGlobal, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_132getPointGlobal},
+ {"getPointGlobalField", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_135getPointGlobalField, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_134getPointGlobalField},
+ {"setRefinementUniform", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_137setRefinementUniform, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_136setRefinementUniform},
+ {"getRefinementUniform", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_139getRefinementUniform, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_138getRefinementUniform},
+ {"setRefinementLimit", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_141setRefinementLimit, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_140setRefinementLimit},
+ {"getRefinementLimit", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_143getRefinementLimit, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_142getRefinementLimit},
+ {"getOrdering", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_145getOrdering, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_144getOrdering},
+ {"permute", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_147permute, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_146permute},
+ {"computeCellGeometryFVM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_149computeCellGeometryFVM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_148computeCellGeometryFVM},
+ {"constructGhostCells", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_6DMPlex_151constructGhostCells, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_6DMPlex_150constructGhostCells},
{0, 0, 0, 0}
};
@@ -243746,8 +264080,11 @@ static PyMethodDef __pyx_methods_8petsc4py_5PETSc_DMShell[] = {
{"setRefine", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_29setRefine, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_28setRefine},
{"setCreateInterpolation", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_31setCreateInterpolation, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_30setCreateInterpolation},
{"setCreateInjection", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_33setCreateInjection, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_32setCreateInjection},
- {"setCreateFieldDecomposition", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateFieldDecomposition, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_34setCreateFieldDecomposition},
- {"setCreateSubDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateSubDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_36setCreateSubDM},
+ {"setCreateRestriction", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_35setCreateRestriction, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_34setCreateRestriction},
+ {"setCreateFieldDecomposition", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_37setCreateFieldDecomposition, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_36setCreateFieldDecomposition},
+ {"setCreateDomainDecomposition", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_39setCreateDomainDecomposition, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_38setCreateDomainDecomposition},
+ {"setCreateDomainDecompositionScatters", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_41setCreateDomainDecompositionScatters, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_40setCreateDomainDecompositionScatters},
+ {"setCreateSubDM", (PyCFunction)__pyx_pw_8petsc4py_5PETSc_7DMShell_43setCreateSubDM, METH_VARARGS|METH_KEYWORDS, __pyx_doc_8petsc4py_5PETSc_7DMShell_42setCreateSubDM},
{0, 0, 0, 0}
};
@@ -243814,17 +264151,31 @@ static PyMethodDef __pyx_methods[] = {
};
#if PY_MAJOR_VERSION >= 3
+#if CYTHON_PEP489_MULTI_PHASE_INIT
+static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/
+static int __pyx_pymod_exec_PETSc(PyObject* module); /*proto*/
+static PyModuleDef_Slot __pyx_moduledef_slots[] = {
+ {Py_mod_create, (void*)__pyx_pymod_create},
+ {Py_mod_exec, (void*)__pyx_pymod_exec_PETSc},
+ {0, NULL}
+};
+#endif
+
static struct PyModuleDef __pyx_moduledef = {
- #if PY_VERSION_HEX < 0x03020000
- { PyObject_HEAD_INIT(NULL) NULL, 0, NULL },
- #else
PyModuleDef_HEAD_INIT,
- #endif
"PETSc",
0, /* m_doc */
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ 0, /* m_size */
+ #else
-1, /* m_size */
+ #endif
__pyx_methods /* m_methods */,
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ __pyx_moduledef_slots, /* m_slots */
+ #else
NULL, /* m_reload */
+ #endif
NULL, /* m_traverse */
NULL, /* m_clear */
(freefunc)__pyx_module_cleanup /* m_free */
@@ -243911,15 +264262,17 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_BMRM, __pyx_k_BMRM, sizeof(__pyx_k_BMRM), 0, 0, 1, 1},
{&__pyx_n_s_BOX, __pyx_k_BOX, sizeof(__pyx_k_BOX), 0, 0, 1, 1},
{&__pyx_n_s_BQPIP, __pyx_k_BQPIP, sizeof(__pyx_k_BQPIP), 0, 0, 1, 1},
- {&__pyx_n_s_BSTRM, __pyx_k_BSTRM, sizeof(__pyx_k_BSTRM), 0, 0, 1, 1},
{&__pyx_n_s_Barrier, __pyx_k_Barrier, sizeof(__pyx_k_Barrier), 0, 0, 1, 1},
{&__pyx_n_s_BoundaryType, __pyx_k_BoundaryType, sizeof(__pyx_k_BoundaryType), 0, 0, 1, 1},
{&__pyx_n_s_C, __pyx_k_C, sizeof(__pyx_k_C), 0, 0, 1, 1},
{&__pyx_n_s_CARTESIAN, __pyx_k_CARTESIAN, sizeof(__pyx_k_CARTESIAN), 0, 0, 1, 1},
{&__pyx_n_s_CG, __pyx_k_CG, sizeof(__pyx_k_CG), 0, 0, 1, 1},
+ {&__pyx_n_s_CGGLTR, __pyx_k_CGGLTR, sizeof(__pyx_k_CGGLTR), 0, 0, 1, 1},
{&__pyx_n_s_CGLS, __pyx_k_CGLS, sizeof(__pyx_k_CGLS), 0, 0, 1, 1},
+ {&__pyx_n_s_CGNASH, __pyx_k_CGNASH, sizeof(__pyx_k_CGNASH), 0, 0, 1, 1},
{&__pyx_n_s_CGNE, __pyx_k_CGNE, sizeof(__pyx_k_CGNE), 0, 0, 1, 1},
{&__pyx_n_s_CGS, __pyx_k_CGS, sizeof(__pyx_k_CGS), 0, 0, 1, 1},
+ {&__pyx_n_s_CGSTCG, __pyx_k_CGSTCG, sizeof(__pyx_k_CGSTCG), 0, 0, 1, 1},
{&__pyx_n_s_CHACO, __pyx_k_CHACO, sizeof(__pyx_k_CHACO), 0, 0, 1, 1},
{&__pyx_n_s_CHEBYSHEV, __pyx_k_CHEBYSHEV, sizeof(__pyx_k_CHEBYSHEV), 0, 0, 1, 1},
{&__pyx_n_s_CHOLESKY, __pyx_k_CHOLESKY, sizeof(__pyx_k_CHOLESKY), 0, 0, 1, 1},
@@ -244040,6 +264393,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_FBCGSR, __pyx_k_FBCGSR, sizeof(__pyx_k_FBCGSR), 0, 0, 1, 1},
{&__pyx_n_s_FCG, __pyx_k_FCG, sizeof(__pyx_k_FCG), 0, 0, 1, 1},
{&__pyx_n_s_FE, __pyx_k_FE, sizeof(__pyx_k_FE), 0, 0, 1, 1},
+ {&__pyx_n_s_FETIDP, __pyx_k_FETIDP, sizeof(__pyx_k_FETIDP), 0, 0, 1, 1},
{&__pyx_n_s_FFT, __pyx_k_FFT, sizeof(__pyx_k_FFT), 0, 0, 1, 1},
{&__pyx_n_s_FFTW, __pyx_k_FFTW, sizeof(__pyx_k_FFTW), 0, 0, 1, 1},
{&__pyx_n_s_FGMRES, __pyx_k_FGMRES, sizeof(__pyx_k_FGMRES), 0, 0, 1, 1},
@@ -244070,11 +264424,11 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_GEO, __pyx_k_GEO, sizeof(__pyx_k_GEO), 0, 0, 1, 1},
{&__pyx_n_s_GETROW_UPPERTRIANGULAR, __pyx_k_GETROW_UPPERTRIANGULAR, sizeof(__pyx_k_GETROW_UPPERTRIANGULAR), 0, 0, 1, 1},
{&__pyx_n_s_GHOSTED, __pyx_k_GHOSTED, sizeof(__pyx_k_GHOSTED), 0, 0, 1, 1},
- {&__pyx_n_s_GL, __pyx_k_GL, sizeof(__pyx_k_GL), 0, 0, 1, 1},
- {&__pyx_n_s_GLMapType, __pyx_k_GLMapType, sizeof(__pyx_k_GLMapType), 0, 0, 1, 1},
+ {&__pyx_kp_s_GIT_Date, __pyx_k_GIT_Date, sizeof(__pyx_k_GIT_Date), 0, 0, 1, 0},
+ {&__pyx_n_s_GLLE, __pyx_k_GLLE, sizeof(__pyx_k_GLLE), 0, 0, 1, 1},
+ {&__pyx_n_s_GLMapMode, __pyx_k_GLMapMode, sizeof(__pyx_k_GLMapMode), 0, 0, 1, 1},
{&__pyx_n_s_GLOBAL_MAX, __pyx_k_GLOBAL_MAX, sizeof(__pyx_k_GLOBAL_MAX), 0, 0, 1, 1},
{&__pyx_n_s_GLOBAL_SUM, __pyx_k_GLOBAL_SUM, sizeof(__pyx_k_GLOBAL_SUM), 0, 0, 1, 1},
- {&__pyx_n_s_GLTR, __pyx_k_GLTR, sizeof(__pyx_k_GLTR), 0, 0, 1, 1},
{&__pyx_n_s_GMRES, __pyx_k_GMRES, sizeof(__pyx_k_GMRES), 0, 0, 1, 1},
{&__pyx_n_s_GPCG, __pyx_k_GPCG, sizeof(__pyx_k_GPCG), 0, 0, 1, 1},
{&__pyx_n_s_GROPPCG, __pyx_k_GROPPCG, sizeof(__pyx_k_GROPPCG), 0, 0, 1, 1},
@@ -244084,6 +264438,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_H, __pyx_k_H, sizeof(__pyx_k_H), 0, 0, 1, 1},
{&__pyx_n_s_HALF, __pyx_k_HALF, sizeof(__pyx_k_HALF), 0, 0, 1, 1},
{&__pyx_n_s_HALF_SIZE, __pyx_k_HALF_SIZE, sizeof(__pyx_k_HALF_SIZE), 0, 0, 1, 1},
+ {&__pyx_n_s_HASH, __pyx_k_HASH, sizeof(__pyx_k_HASH), 0, 0, 1, 1},
{&__pyx_n_s_HDF5, __pyx_k_HDF5, sizeof(__pyx_k_HDF5), 0, 0, 1, 1},
{&__pyx_n_s_HDF5_VIZ, __pyx_k_HDF5_VIZ, sizeof(__pyx_k_HDF5_VIZ), 0, 0, 1, 1},
{&__pyx_n_s_HERMITIAN, __pyx_k_HERMITIAN, sizeof(__pyx_k_HERMITIAN), 0, 0, 1, 1},
@@ -244137,6 +264492,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_LCL, __pyx_k_LCL, sizeof(__pyx_k_LCL), 0, 0, 1, 1},
{&__pyx_n_s_LEFT, __pyx_k_LEFT, sizeof(__pyx_k_LEFT), 0, 0, 1, 1},
{&__pyx_n_s_LGMRES, __pyx_k_LGMRES, sizeof(__pyx_k_LGMRES), 0, 0, 1, 1},
+ {&__pyx_n_s_LGMapType, __pyx_k_LGMapType, sizeof(__pyx_k_LGMapType), 0, 0, 1, 1},
{&__pyx_n_s_LINEAR, __pyx_k_LINEAR, sizeof(__pyx_k_LINEAR), 0, 0, 1, 1},
{&__pyx_n_s_LMVM, __pyx_k_LMVM, sizeof(__pyx_k_LMVM), 0, 0, 1, 1},
{&__pyx_n_s_LOCAL, __pyx_k_LOCAL, sizeof(__pyx_k_LOCAL), 0, 0, 1, 1},
@@ -244162,6 +264518,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_MEMORYSCALABLE, __pyx_k_MEMORYSCALABLE, sizeof(__pyx_k_MEMORYSCALABLE), 0, 0, 1, 1},
{&__pyx_n_s_MFFD, __pyx_k_MFFD, sizeof(__pyx_k_MFFD), 0, 0, 1, 1},
{&__pyx_n_s_MG, __pyx_k_MG, sizeof(__pyx_k_MG), 0, 0, 1, 1},
+ {&__pyx_n_s_MGCycleType, __pyx_k_MGCycleType, sizeof(__pyx_k_MGCycleType), 0, 0, 1, 1},
{&__pyx_n_s_MGType, __pyx_k_MGType, sizeof(__pyx_k_MGType), 0, 0, 1, 1},
{&__pyx_n_s_MIMEX, __pyx_k_MIMEX, sizeof(__pyx_k_MIMEX), 0, 0, 1, 1},
{&__pyx_n_s_MINRES, __pyx_k_MINRES, sizeof(__pyx_k_MINRES), 0, 0, 1, 1},
@@ -244177,16 +264534,14 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_MPIAIJPERM, __pyx_k_MPIAIJPERM, sizeof(__pyx_k_MPIAIJPERM), 0, 0, 1, 1},
{&__pyx_n_s_MPIAIJVIENNACL, __pyx_k_MPIAIJVIENNACL, sizeof(__pyx_k_MPIAIJVIENNACL), 0, 0, 1, 1},
{&__pyx_n_s_MPIBAIJ, __pyx_k_MPIBAIJ, sizeof(__pyx_k_MPIBAIJ), 0, 0, 1, 1},
- {&__pyx_n_s_MPIBSTRM, __pyx_k_MPIBSTRM, sizeof(__pyx_k_MPIBSTRM), 0, 0, 1, 1},
{&__pyx_n_s_MPICUSP, __pyx_k_MPICUSP, sizeof(__pyx_k_MPICUSP), 0, 0, 1, 1},
{&__pyx_n_s_MPIDENSE, __pyx_k_MPIDENSE, sizeof(__pyx_k_MPIDENSE), 0, 0, 1, 1},
{&__pyx_n_s_MPIMAIJ, __pyx_k_MPIMAIJ, sizeof(__pyx_k_MPIMAIJ), 0, 0, 1, 1},
{&__pyx_n_s_MPISBAIJ, __pyx_k_MPISBAIJ, sizeof(__pyx_k_MPISBAIJ), 0, 0, 1, 1},
- {&__pyx_n_s_MPISBSTRM, __pyx_k_MPISBSTRM, sizeof(__pyx_k_MPISBSTRM), 0, 0, 1, 1},
{&__pyx_n_s_MPIVIENNACL, __pyx_k_MPIVIENNACL, sizeof(__pyx_k_MPIVIENNACL), 0, 0, 1, 1},
{&__pyx_n_s_MS, __pyx_k_MS, sizeof(__pyx_k_MS), 0, 0, 1, 1},
{&__pyx_n_s_MULTIPLICATIVE, __pyx_k_MULTIPLICATIVE, sizeof(__pyx_k_MULTIPLICATIVE), 0, 0, 1, 1},
- {&__pyx_n_s_MapType, __pyx_k_MapType, sizeof(__pyx_k_MapType), 0, 0, 1, 1},
+ {&__pyx_n_s_MapMode, __pyx_k_MapMode, sizeof(__pyx_k_MapMode), 0, 0, 1, 1},
{&__pyx_n_s_MatAssemblyType, __pyx_k_MatAssemblyType, sizeof(__pyx_k_MatAssemblyType), 0, 0, 1, 1},
{&__pyx_n_s_MatFactorShiftType, __pyx_k_MatFactorShiftType, sizeof(__pyx_k_MatFactorShiftType), 0, 0, 1, 1},
{&__pyx_n_s_MatInfoType, __pyx_k_MatInfoType, sizeof(__pyx_k_MatInfoType), 0, 0, 1, 1},
@@ -244202,14 +264557,12 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_N1, __pyx_k_N1, sizeof(__pyx_k_N1), 0, 0, 1, 1},
{&__pyx_n_s_N12, __pyx_k_N12, sizeof(__pyx_k_N12), 0, 0, 1, 1},
{&__pyx_n_s_N2, __pyx_k_N2, sizeof(__pyx_k_N2), 0, 0, 1, 1},
- {&__pyx_n_s_NASH, __pyx_k_NASH, sizeof(__pyx_k_NASH), 0, 0, 1, 1},
{&__pyx_n_s_NASM, __pyx_k_NASM, sizeof(__pyx_k_NASM), 0, 0, 1, 1},
{&__pyx_n_s_NATIVE, __pyx_k_NATIVE, sizeof(__pyx_k_NATIVE), 0, 0, 1, 1},
{&__pyx_n_s_NATURAL, __pyx_k_NATURAL, sizeof(__pyx_k_NATURAL), 0, 0, 1, 1},
{&__pyx_n_s_NCG, __pyx_k_NCG, sizeof(__pyx_k_NCG), 0, 0, 1, 1},
{&__pyx_n_s_ND, __pyx_k_ND, sizeof(__pyx_k_ND), 0, 0, 1, 1},
{&__pyx_n_s_NEST, __pyx_k_NEST, sizeof(__pyx_k_NEST), 0, 0, 1, 1},
- {&__pyx_n_s_NETCDF, __pyx_k_NETCDF, sizeof(__pyx_k_NETCDF), 0, 0, 1, 1},
{&__pyx_n_s_NETWORK, __pyx_k_NETWORK, sizeof(__pyx_k_NETWORK), 0, 0, 1, 1},
{&__pyx_n_s_NEWTONLS, __pyx_k_NEWTONLS, sizeof(__pyx_k_NEWTONLS), 0, 0, 1, 1},
{&__pyx_n_s_NEWTONTR, __pyx_k_NEWTONTR, sizeof(__pyx_k_NEWTONTR), 0, 0, 1, 1},
@@ -244277,12 +264630,15 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_PCFieldSplitSchurPreType, __pyx_k_PCFieldSplitSchurPreType, sizeof(__pyx_k_PCFieldSplitSchurPreType), 0, 0, 1, 1},
{&__pyx_n_s_PCGAMGType, __pyx_k_PCGAMGType, sizeof(__pyx_k_PCGAMGType), 0, 0, 1, 1},
{&__pyx_n_s_PCGASMType, __pyx_k_PCGASMType, sizeof(__pyx_k_PCGASMType), 0, 0, 1, 1},
+ {&__pyx_n_s_PCMGCycleType, __pyx_k_PCMGCycleType, sizeof(__pyx_k_PCMGCycleType), 0, 0, 1, 1},
{&__pyx_n_s_PCMGType, __pyx_k_PCMGType, sizeof(__pyx_k_PCMGType), 0, 0, 1, 1},
{&__pyx_n_s_PCSide, __pyx_k_PCSide, sizeof(__pyx_k_PCSide), 0, 0, 1, 1},
{&__pyx_n_s_PCType, __pyx_k_PCType, sizeof(__pyx_k_PCType), 0, 0, 1, 1},
{&__pyx_n_s_PD, __pyx_k_PD, sizeof(__pyx_k_PD), 0, 0, 1, 1},
{&__pyx_n_s_PERIODIC, __pyx_k_PERIODIC, sizeof(__pyx_k_PERIODIC), 0, 0, 1, 1},
{&__pyx_kp_s_PETSc_Error_d, __pyx_k_PETSc_Error_d, sizeof(__pyx_k_PETSc_Error_d), 0, 0, 1, 0},
+ {&__pyx_kp_s_PETSc_Error_pyx, __pyx_k_PETSc_Error_pyx, sizeof(__pyx_k_PETSc_Error_pyx), 0, 0, 1, 0},
+ {&__pyx_kp_s_PETSc_PETSc_pyx, __pyx_k_PETSc_PETSc_pyx, sizeof(__pyx_k_PETSc_PETSc_pyx), 0, 0, 1, 0},
{&__pyx_n_s_PFMG, __pyx_k_PFMG, sizeof(__pyx_k_PFMG), 0, 0, 1, 1},
{&__pyx_n_s_PGMRES, __pyx_k_PGMRES, sizeof(__pyx_k_PGMRES), 0, 0, 1, 1},
{&__pyx_n_s_PINFINITY, __pyx_k_PINFINITY, sizeof(__pyx_k_PINFINITY), 0, 0, 1, 1},
@@ -244325,6 +264681,15 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_RICHARDSON, __pyx_k_RICHARDSON, sizeof(__pyx_k_RICHARDSON), 0, 0, 1, 1},
{&__pyx_n_s_RIGHT, __pyx_k_RIGHT, sizeof(__pyx_k_RIGHT), 0, 0, 1, 1},
{&__pyx_n_s_RK, __pyx_k_RK, sizeof(__pyx_k_RK), 0, 0, 1, 1},
+ {&__pyx_n_s_RK1FE, __pyx_k_RK1FE, sizeof(__pyx_k_RK1FE), 0, 0, 1, 1},
+ {&__pyx_n_s_RK2A, __pyx_k_RK2A, sizeof(__pyx_k_RK2A), 0, 0, 1, 1},
+ {&__pyx_n_s_RK3, __pyx_k_RK3, sizeof(__pyx_k_RK3), 0, 0, 1, 1},
+ {&__pyx_n_s_RK3BS, __pyx_k_RK3BS, sizeof(__pyx_k_RK3BS), 0, 0, 1, 1},
+ {&__pyx_n_s_RK4, __pyx_k_RK4, sizeof(__pyx_k_RK4), 0, 0, 1, 1},
+ {&__pyx_n_s_RK5BS, __pyx_k_RK5BS, sizeof(__pyx_k_RK5BS), 0, 0, 1, 1},
+ {&__pyx_n_s_RK5DP, __pyx_k_RK5DP, sizeof(__pyx_k_RK5DP), 0, 0, 1, 1},
+ {&__pyx_n_s_RK5F, __pyx_k_RK5F, sizeof(__pyx_k_RK5F), 0, 0, 1, 1},
+ {&__pyx_n_s_RKType, __pyx_k_RKType, sizeof(__pyx_k_RKType), 0, 0, 1, 1},
{&__pyx_n_s_ROSW, __pyx_k_ROSW, sizeof(__pyx_k_ROSW), 0, 0, 1, 1},
{&__pyx_n_s_ROWLENGTH, __pyx_k_ROWLENGTH, sizeof(__pyx_k_ROWLENGTH), 0, 0, 1, 1},
{&__pyx_n_s_ROW_ORIENTED, __pyx_k_ROW_ORIENTED, sizeof(__pyx_k_ROW_ORIENTED), 0, 0, 1, 1},
@@ -244342,7 +264707,6 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_SAME_NZ, __pyx_k_SAME_NZ, sizeof(__pyx_k_SAME_NZ), 0, 0, 1, 1},
{&__pyx_n_s_SAWS, __pyx_k_SAWS, sizeof(__pyx_k_SAWS), 0, 0, 1, 1},
{&__pyx_n_s_SBAIJ, __pyx_k_SBAIJ, sizeof(__pyx_k_SBAIJ), 0, 0, 1, 1},
- {&__pyx_n_s_SBSTRM, __pyx_k_SBSTRM, sizeof(__pyx_k_SBSTRM), 0, 0, 1, 1},
{&__pyx_n_s_SCATTER, __pyx_k_SCATTER, sizeof(__pyx_k_SCATTER), 0, 0, 1, 1},
{&__pyx_n_s_SCATTER_FORWARD, __pyx_k_SCATTER_FORWARD, sizeof(__pyx_k_SCATTER_FORWARD), 0, 0, 1, 1},
{&__pyx_n_s_SCATTER_FORWARD_LOCAL, __pyx_k_SCATTER_FORWARD_LOCAL, sizeof(__pyx_k_SCATTER_FORWARD_LOCAL), 0, 0, 1, 1},
@@ -244361,13 +264725,11 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_SEQAIJPERM, __pyx_k_SEQAIJPERM, sizeof(__pyx_k_SEQAIJPERM), 0, 0, 1, 1},
{&__pyx_n_s_SEQAIJVIENNACL, __pyx_k_SEQAIJVIENNACL, sizeof(__pyx_k_SEQAIJVIENNACL), 0, 0, 1, 1},
{&__pyx_n_s_SEQBAIJ, __pyx_k_SEQBAIJ, sizeof(__pyx_k_SEQBAIJ), 0, 0, 1, 1},
- {&__pyx_n_s_SEQBSTRM, __pyx_k_SEQBSTRM, sizeof(__pyx_k_SEQBSTRM), 0, 0, 1, 1},
{&__pyx_n_s_SEQCUFFT, __pyx_k_SEQCUFFT, sizeof(__pyx_k_SEQCUFFT), 0, 0, 1, 1},
{&__pyx_n_s_SEQCUSP, __pyx_k_SEQCUSP, sizeof(__pyx_k_SEQCUSP), 0, 0, 1, 1},
{&__pyx_n_s_SEQDENSE, __pyx_k_SEQDENSE, sizeof(__pyx_k_SEQDENSE), 0, 0, 1, 1},
{&__pyx_n_s_SEQMAIJ, __pyx_k_SEQMAIJ, sizeof(__pyx_k_SEQMAIJ), 0, 0, 1, 1},
{&__pyx_n_s_SEQSBAIJ, __pyx_k_SEQSBAIJ, sizeof(__pyx_k_SEQSBAIJ), 0, 0, 1, 1},
- {&__pyx_n_s_SEQSBSTRM, __pyx_k_SEQSBSTRM, sizeof(__pyx_k_SEQSBSTRM), 0, 0, 1, 1},
{&__pyx_n_s_SEQVIENNACL, __pyx_k_SEQVIENNACL, sizeof(__pyx_k_SEQVIENNACL), 0, 0, 1, 1},
{&__pyx_n_s_SFType, __pyx_k_SFType, sizeof(__pyx_k_SFType), 0, 0, 1, 1},
{&__pyx_n_s_SHARED, __pyx_k_SHARED, sizeof(__pyx_k_SHARED), 0, 0, 1, 1},
@@ -244389,7 +264751,6 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_SSP, __pyx_k_SSP, sizeof(__pyx_k_SSP), 0, 0, 1, 1},
{&__pyx_n_s_STANDARD, __pyx_k_STANDARD, sizeof(__pyx_k_STANDARD), 0, 0, 1, 1},
{&__pyx_n_s_STAR, __pyx_k_STAR, sizeof(__pyx_k_STAR), 0, 0, 1, 1},
- {&__pyx_n_s_STCG, __pyx_k_STCG, sizeof(__pyx_k_STCG), 0, 0, 1, 1},
{&__pyx_n_s_STDERR, __pyx_k_STDERR, sizeof(__pyx_k_STDERR), 0, 0, 1, 1},
{&__pyx_n_s_STDOUT, __pyx_k_STDOUT, sizeof(__pyx_k_STDOUT), 0, 0, 1, 1},
{&__pyx_n_s_STEPOVER, __pyx_k_STEPOVER, sizeof(__pyx_k_STEPOVER), 0, 0, 1, 1},
@@ -244440,6 +264801,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_TSExactFinalTime, __pyx_k_TSExactFinalTime, sizeof(__pyx_k_TSExactFinalTime), 0, 0, 1, 1},
{&__pyx_n_s_TSIRM, __pyx_k_TSIRM, sizeof(__pyx_k_TSIRM), 0, 0, 1, 1},
{&__pyx_n_s_TSProblemType, __pyx_k_TSProblemType, sizeof(__pyx_k_TSProblemType), 0, 0, 1, 1},
+ {&__pyx_n_s_TSRKType, __pyx_k_TSRKType, sizeof(__pyx_k_TSRKType), 0, 0, 1, 1},
{&__pyx_n_s_TSType, __pyx_k_TSType, sizeof(__pyx_k_TSType), 0, 0, 1, 1},
{&__pyx_n_s_TWIST, __pyx_k_TWIST, sizeof(__pyx_k_TWIST), 0, 0, 1, 1},
{&__pyx_n_s_Type, __pyx_k_Type, sizeof(__pyx_k_Type), 0, 0, 1, 1},
@@ -244478,6 +264840,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_kp_s__10, __pyx_k__10, sizeof(__pyx_k__10), 0, 0, 1, 0},
{&__pyx_kp_s__2, __pyx_k__2, sizeof(__pyx_k__2), 0, 0, 1, 0},
{&__pyx_kp_s__32, __pyx_k__32, sizeof(__pyx_k__32), 0, 0, 1, 0},
+ {&__pyx_kp_s__33, __pyx_k__33, sizeof(__pyx_k__33), 0, 0, 1, 0},
{&__pyx_kp_b__5, __pyx_k__5, sizeof(__pyx_k__5), 0, 0, 0, 0},
{&__pyx_kp_s__5, __pyx_k__5, sizeof(__pyx_k__5), 0, 0, 1, 0},
{&__pyx_n_s_a, __pyx_k_a, sizeof(__pyx_k_a), 0, 0, 1, 1},
@@ -244486,6 +264849,8 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_kp_s_accessing_non_existent_buffer_se, __pyx_k_accessing_non_existent_buffer_se, sizeof(__pyx_k_accessing_non_existent_buffer_se), 0, 0, 1, 0},
{&__pyx_n_s_addFlops, __pyx_k_addFlops, sizeof(__pyx_k_addFlops), 0, 0, 1, 1},
{&__pyx_n_s_addv, __pyx_k_addv, sizeof(__pyx_k_addv), 0, 0, 1, 1},
+ {&__pyx_n_s_adjoint_steps, __pyx_k_adjoint_steps, sizeof(__pyx_k_adjoint_steps), 0, 0, 1, 1},
+ {&__pyx_n_s_adjointjacobian, __pyx_k_adjointjacobian, sizeof(__pyx_k_adjointjacobian), 0, 0, 1, 1},
{&__pyx_n_s_all, __pyx_k_all, sizeof(__pyx_k_all), 0, 0, 1, 1},
{&__pyx_n_s_alpha, __pyx_k_alpha, sizeof(__pyx_k_alpha), 0, 0, 1, 1},
{&__pyx_n_s_alpha2, __pyx_k_alpha2, sizeof(__pyx_k_alpha2), 0, 0, 1, 1},
@@ -244540,6 +264905,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_cells, __pyx_k_cells, sizeof(__pyx_k_cells), 0, 0, 1, 1},
{&__pyx_n_s_cgid, __pyx_k_cgid, sizeof(__pyx_k_cgid), 0, 0, 1, 1},
{&__pyx_n_s_citation, __pyx_k_citation, sizeof(__pyx_k_citation), 0, 0, 1, 1},
+ {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1},
{&__pyx_n_s_cmap, __pyx_k_cmap, sizeof(__pyx_k_cmap), 0, 0, 1, 1},
{&__pyx_n_s_coarsen, __pyx_k_coarsen, sizeof(__pyx_k_coarsen), 0, 0, 1, 1},
{&__pyx_n_s_col, __pyx_k_col, sizeof(__pyx_k_col), 0, 0, 1, 1},
@@ -244564,6 +264930,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_coords, __pyx_k_coords, sizeof(__pyx_k_coords), 0, 0, 1, 1},
{&__pyx_kp_s_coords_vertices_must_have_two_di, __pyx_k_coords_vertices_must_have_two_di, sizeof(__pyx_k_coords_vertices_must_have_two_di), 0, 0, 1, 0},
{&__pyx_n_s_copy, __pyx_k_copy, sizeof(__pyx_k_copy), 0, 0, 1, 1},
+ {&__pyx_n_s_cost, __pyx_k_cost, sizeof(__pyx_k_cost), 0, 0, 1, 1},
{&__pyx_n_s_count, __pyx_k_count, sizeof(__pyx_k_count), 0, 0, 1, 1},
{&__pyx_n_s_crank, __pyx_k_crank, sizeof(__pyx_k_crank), 0, 0, 1, 1},
{&__pyx_n_s_createGlobalVec, __pyx_k_createGlobalVec, sizeof(__pyx_k_createGlobalVec), 0, 0, 1, 1},
@@ -244583,11 +264950,13 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_create_interpolation, __pyx_k_create_interpolation, sizeof(__pyx_k_create_interpolation), 0, 0, 1, 1},
{&__pyx_n_s_create_lvec, __pyx_k_create_lvec, sizeof(__pyx_k_create_lvec), 0, 0, 1, 1},
{&__pyx_n_s_create_matrix, __pyx_k_create_matrix, sizeof(__pyx_k_create_matrix), 0, 0, 1, 1},
+ {&__pyx_n_s_create_restriction, __pyx_k_create_restriction, sizeof(__pyx_k_create_restriction), 0, 0, 1, 1},
{&__pyx_n_s_create_subdm, __pyx_k_create_subdm, sizeof(__pyx_k_create_subdm), 0, 0, 1, 1},
{&__pyx_n_s_crtol, __pyx_k_crtol, sizeof(__pyx_k_crtol), 0, 0, 1, 1},
{&__pyx_n_s_csize, __pyx_k_csize, sizeof(__pyx_k_csize), 0, 0, 1, 1},
{&__pyx_n_s_csr, __pyx_k_csr, sizeof(__pyx_k_csr), 0, 0, 1, 1},
{&__pyx_n_s_ctype, __pyx_k_ctype, sizeof(__pyx_k_ctype), 0, 0, 1, 1},
+ {&__pyx_n_s_cycle_type, __pyx_k_cycle_type, sizeof(__pyx_k_cycle_type), 0, 0, 1, 1},
{&__pyx_kp_s_d_s, __pyx_k_d_s, sizeof(__pyx_k_d_s), 0, 0, 1, 0},
{&__pyx_n_s_da, __pyx_k_da, sizeof(__pyx_k_da), 0, 0, 1, 1},
{&__pyx_n_s_data, __pyx_k_data, sizeof(__pyx_k_data), 0, 0, 1, 1},
@@ -244611,6 +264980,8 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_dm_type, __pyx_k_dm_type, sizeof(__pyx_k_dm_type), 0, 0, 1, 1},
{&__pyx_n_s_doc, __pyx_k_doc, sizeof(__pyx_k_doc), 0, 0, 1, 1},
{&__pyx_n_s_dof, __pyx_k_dof, sizeof(__pyx_k_dof), 0, 0, 1, 1},
+ {&__pyx_n_s_drdpfunction, __pyx_k_drdpfunction, sizeof(__pyx_k_drdpfunction), 0, 0, 1, 1},
+ {&__pyx_n_s_drdyfunction, __pyx_k_drdyfunction, sizeof(__pyx_k_drdyfunction), 0, 0, 1, 1},
{&__pyx_n_s_drop, __pyx_k_drop, sizeof(__pyx_k_drop), 0, 0, 1, 1},
{&__pyx_n_s_dt, __pyx_k_dt, sizeof(__pyx_k_dt), 0, 0, 1, 1},
{&__pyx_n_s_dtcol, __pyx_k_dtcol, sizeof(__pyx_k_dtcol), 0, 0, 1, 1},
@@ -244685,6 +265056,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_getDof, __pyx_k_getDof, sizeof(__pyx_k_getDof), 0, 0, 1, 1},
{&__pyx_n_s_getEquationType, __pyx_k_getEquationType, sizeof(__pyx_k_getEquationType), 0, 0, 1, 1},
{&__pyx_n_s_getFlops, __pyx_k_getFlops, sizeof(__pyx_k_getFlops), 0, 0, 1, 1},
+ {&__pyx_n_s_getFunctionNorm, __pyx_k_getFunctionNorm, sizeof(__pyx_k_getFunctionNorm), 0, 0, 1, 1},
{&__pyx_n_s_getFunctionTolerances, __pyx_k_getFunctionTolerances, sizeof(__pyx_k_getFunctionTolerances), 0, 0, 1, 1},
{&__pyx_n_s_getFunctionValue, __pyx_k_getFunctionValue, sizeof(__pyx_k_getFunctionValue), 0, 0, 1, 1},
{&__pyx_n_s_getGhostCorners, __pyx_k_getGhostCorners, sizeof(__pyx_k_getGhostCorners), 0, 0, 1, 1},
@@ -244764,6 +265136,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_gradient, __pyx_k_gradient, sizeof(__pyx_k_gradient), 0, 0, 1, 1},
{&__pyx_n_s_group, __pyx_k_group, sizeof(__pyx_k_group), 0, 0, 1, 1},
{&__pyx_n_s_grtol, __pyx_k_grtol, sizeof(__pyx_k_grtol), 0, 0, 1, 1},
+ {&__pyx_n_s_gsec, __pyx_k_gsec, sizeof(__pyx_k_gsec), 0, 0, 1, 1},
{&__pyx_n_s_gtol, __pyx_k_gtol, sizeof(__pyx_k_gtol), 0, 0, 1, 1},
{&__pyx_n_s_gttol, __pyx_k_gttol, sizeof(__pyx_k_gttol), 0, 0, 1, 1},
{&__pyx_n_s_gv, __pyx_k_gv, sizeof(__pyx_k_gv), 0, 0, 1, 1},
@@ -244773,8 +265146,6 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_hasLagrange, __pyx_k_hasLagrange, sizeof(__pyx_k_hasLagrange), 0, 0, 1, 1},
{&__pyx_n_s_hasName, __pyx_k_hasName, sizeof(__pyx_k_hasName), 0, 0, 1, 1},
{&__pyx_n_s_hessian, __pyx_k_hessian, sizeof(__pyx_k_hessian), 0, 0, 1, 1},
- {&__pyx_kp_s_home_devel_petsc4py_3_7_0_src_P, __pyx_k_home_devel_petsc4py_3_7_0_src_P, sizeof(__pyx_k_home_devel_petsc4py_3_7_0_src_P), 0, 0, 1, 0},
- {&__pyx_kp_s_home_devel_petsc4py_3_7_0_src_P_2, __pyx_k_home_devel_petsc4py_3_7_0_src_P_2, sizeof(__pyx_k_home_devel_petsc4py_3_7_0_src_P_2), 0, 0, 1, 0},
{&__pyx_n_s_hypretype, __pyx_k_hypretype, sizeof(__pyx_k_hypretype), 0, 0, 1, 1},
{&__pyx_n_s_icntl, __pyx_k_icntl, sizeof(__pyx_k_icntl), 0, 0, 1, 1},
{&__pyx_n_s_idx, __pyx_k_idx, sizeof(__pyx_k_idx), 0, 0, 1, 1},
@@ -244796,8 +265167,6 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_info, __pyx_k_info, sizeof(__pyx_k_info), 0, 0, 1, 1},
{&__pyx_n_s_infoAllow, __pyx_k_infoAllow, sizeof(__pyx_k_infoAllow), 0, 0, 1, 1},
{&__pyx_n_s_init, __pyx_k_init, sizeof(__pyx_k_init), 0, 0, 1, 1},
- {&__pyx_n_s_initial_time, __pyx_k_initial_time, sizeof(__pyx_k_initial_time), 0, 0, 1, 1},
- {&__pyx_n_s_initial_time_step, __pyx_k_initial_time_step, sizeof(__pyx_k_initial_time_step), 0, 0, 1, 1},
{&__pyx_n_s_initialguess, __pyx_k_initialguess, sizeof(__pyx_k_initialguess), 0, 0, 1, 1},
{&__pyx_n_s_initialize, __pyx_k_initialize, sizeof(__pyx_k_initialize), 0, 0, 1, 1},
{&__pyx_kp_s_input_arrays_have_incompatible_s, __pyx_k_input_arrays_have_incompatible_s, sizeof(__pyx_k_input_arrays_have_incompatible_s), 0, 0, 1, 0},
@@ -244841,11 +265210,13 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_ksp_type, __pyx_k_ksp_type, sizeof(__pyx_k_ksp_type), 0, 0, 1, 1},
{&__pyx_n_s_l, __pyx_k_l, sizeof(__pyx_k_l), 0, 0, 1, 1},
{&__pyx_n_s_label, __pyx_k_label, sizeof(__pyx_k_label), 0, 0, 1, 1},
+ {&__pyx_n_s_labelName, __pyx_k_labelName, sizeof(__pyx_k_labelName), 0, 0, 1, 1},
{&__pyx_n_s_left, __pyx_k_left, sizeof(__pyx_k_left), 0, 0, 1, 1},
{&__pyx_n_s_length, __pyx_k_length, sizeof(__pyx_k_length), 0, 0, 1, 1},
{&__pyx_n_s_level, __pyx_k_level, sizeof(__pyx_k_level), 0, 0, 1, 1},
{&__pyx_n_s_levels, __pyx_k_levels, sizeof(__pyx_k_levels), 0, 0, 1, 1},
{&__pyx_n_s_lgmap, __pyx_k_lgmap, sizeof(__pyx_k_lgmap), 0, 0, 1, 1},
+ {&__pyx_n_s_lgmap_type, __pyx_k_lgmap_type, sizeof(__pyx_k_lgmap_type), 0, 0, 1, 1},
{&__pyx_n_s_linear_its, __pyx_k_linear_its, sizeof(__pyx_k_linear_its), 0, 0, 1, 1},
{&__pyx_n_s_lits, __pyx_k_lits, sizeof(__pyx_k_lits), 0, 0, 1, 1},
{&__pyx_n_s_local, __pyx_k_local, sizeof(__pyx_k_local), 0, 0, 1, 1},
@@ -244862,7 +265233,6 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1},
{&__pyx_n_s_major, __pyx_k_major, sizeof(__pyx_k_major), 0, 0, 1, 1},
{&__pyx_n_s_mallocs, __pyx_k_mallocs, sizeof(__pyx_k_mallocs), 0, 0, 1, 1},
- {&__pyx_n_s_map_type, __pyx_k_map_type, sizeof(__pyx_k_map_type), 0, 0, 1, 1},
{&__pyx_n_s_mat, __pyx_k_mat, sizeof(__pyx_k_mat), 0, 0, 1, 1},
{&__pyx_n_s_matMult, __pyx_k_matMult, sizeof(__pyx_k_matMult), 0, 0, 1, 1},
{&__pyx_n_s_mat_type, __pyx_k_mat_type, sizeof(__pyx_k_mat_type), 0, 0, 1, 1},
@@ -244876,6 +265246,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_memory, __pyx_k_memory, sizeof(__pyx_k_memory), 0, 0, 1, 1},
{&__pyx_n_s_messageLength, __pyx_k_messageLength, sizeof(__pyx_k_messageLength), 0, 0, 1, 1},
{&__pyx_n_s_metaclass, __pyx_k_metaclass, sizeof(__pyx_k_metaclass), 0, 0, 1, 1},
+ {&__pyx_n_s_metric, __pyx_k_metric, sizeof(__pyx_k_metric), 0, 0, 1, 1},
{&__pyx_n_s_mgtype, __pyx_k_mgtype, sizeof(__pyx_k_mgtype), 0, 0, 1, 1},
{&__pyx_n_s_minor, __pyx_k_minor, sizeof(__pyx_k_minor), 0, 0, 1, 1},
{&__pyx_n_s_mirror, __pyx_k_mirror, sizeof(__pyx_k_mirror), 0, 0, 1, 1},
@@ -244886,14 +265257,15 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_mpi4py, __pyx_k_mpi4py, sizeof(__pyx_k_mpi4py), 0, 0, 1, 1},
{&__pyx_kp_s_mpi4py_MPI, __pyx_k_mpi4py_MPI, sizeof(__pyx_k_mpi4py_MPI), 0, 0, 1, 0},
{&__pyx_n_s_mpiabort, __pyx_k_mpiabort, sizeof(__pyx_k_mpiabort), 0, 0, 1, 1},
+ {&__pyx_n_s_msg, __pyx_k_msg, sizeof(__pyx_k_msg), 0, 0, 1, 1},
{&__pyx_n_s_mult, __pyx_k_mult, sizeof(__pyx_k_mult), 0, 0, 1, 1},
{&__pyx_n_s_n, __pyx_k_n, sizeof(__pyx_k_n), 0, 0, 1, 1},
{&__pyx_n_s_na, __pyx_k_na, sizeof(__pyx_k_na), 0, 0, 1, 1},
{&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1},
{&__pyx_n_s_name_2, __pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 0, 1, 1},
- {&__pyx_n_s_ncycle, __pyx_k_ncycle, sizeof(__pyx_k_ncycle), 0, 0, 1, 1},
{&__pyx_n_s_newsec, __pyx_k_newsec, sizeof(__pyx_k_newsec), 0, 0, 1, 1},
{&__pyx_n_s_newvec, __pyx_k_newvec, sizeof(__pyx_k_newvec), 0, 0, 1, 1},
+ {&__pyx_n_s_ngs, __pyx_k_ngs, sizeof(__pyx_k_ngs), 0, 0, 1, 1},
{&__pyx_n_s_nleaves, __pyx_k_nleaves, sizeof(__pyx_k_nleaves), 0, 0, 1, 1},
{&__pyx_n_s_nlevels, __pyx_k_nlevels, sizeof(__pyx_k_nlevels), 0, 0, 1, 1},
{&__pyx_n_s_nlocal, __pyx_k_nlocal, sizeof(__pyx_k_nlocal), 0, 0, 1, 1},
@@ -244914,6 +265286,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_kp_s_null_communicator, __pyx_k_null_communicator, sizeof(__pyx_k_null_communicator), 0, 0, 1, 0},
{&__pyx_n_s_numComp, __pyx_k_numComp, sizeof(__pyx_k_numComp), 0, 0, 1, 1},
{&__pyx_n_s_numDof, __pyx_k_numDof, sizeof(__pyx_k_numDof), 0, 0, 1, 1},
+ {&__pyx_n_s_numFaces, __pyx_k_numFaces, sizeof(__pyx_k_numFaces), 0, 0, 1, 1},
{&__pyx_n_s_numFields, __pyx_k_numFields, sizeof(__pyx_k_numFields), 0, 0, 1, 1},
{&__pyx_n_s_numMessages, __pyx_k_numMessages, sizeof(__pyx_k_numMessages), 0, 0, 1, 1},
{&__pyx_n_s_numProcs, __pyx_k_numProcs, sizeof(__pyx_k_numProcs), 0, 0, 1, 1},
@@ -244953,8 +265326,8 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_pEnd, __pyx_k_pEnd, sizeof(__pyx_k_pEnd), 0, 0, 1, 1},
{&__pyx_n_s_pStart, __pyx_k_pStart, sizeof(__pyx_k_pStart), 0, 0, 1, 1},
{&__pyx_n_s_parent, __pyx_k_parent, sizeof(__pyx_k_parent), 0, 0, 1, 1},
+ {&__pyx_n_s_part, __pyx_k_part, sizeof(__pyx_k_part), 0, 0, 1, 1},
{&__pyx_n_s_part_type, __pyx_k_part_type, sizeof(__pyx_k_part_type), 0, 0, 1, 1},
- {&__pyx_n_s_patch, __pyx_k_patch, sizeof(__pyx_k_patch), 0, 0, 1, 1},
{&__pyx_n_s_pc, __pyx_k_pc, sizeof(__pyx_k_pc), 0, 0, 1, 1},
{&__pyx_n_s_pc_type, __pyx_k_pc_type, sizeof(__pyx_k_pc_type), 0, 0, 1, 1},
{&__pyx_n_s_pd, __pyx_k_pd, sizeof(__pyx_k_pd), 0, 0, 1, 1},
@@ -244966,6 +265339,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_points, __pyx_k_points, sizeof(__pyx_k_points), 0, 0, 1, 1},
{&__pyx_n_s_pop, __pyx_k_pop, sizeof(__pyx_k_pop), 0, 0, 1, 1},
{&__pyx_n_s_popErrorHandler, __pyx_k_popErrorHandler, sizeof(__pyx_k_popErrorHandler), 0, 0, 1, 1},
+ {&__pyx_n_s_popSignalHandler, __pyx_k_popSignalHandler, sizeof(__pyx_k_popSignalHandler), 0, 0, 1, 1},
{&__pyx_n_s_position, __pyx_k_position, sizeof(__pyx_k_position), 0, 0, 1, 1},
{&__pyx_n_s_positive_definite, __pyx_k_positive_definite, sizeof(__pyx_k_positive_definite), 0, 0, 1, 1},
{&__pyx_n_s_poststep, __pyx_k_poststep, sizeof(__pyx_k_poststep), 0, 0, 1, 1},
@@ -245013,6 +265387,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_result, __pyx_k_result, sizeof(__pyx_k_result), 0, 0, 1, 1},
{&__pyx_n_s_reuse, __pyx_k_reuse, sizeof(__pyx_k_reuse), 0, 0, 1, 1},
{&__pyx_n_s_reverse, __pyx_k_reverse, sizeof(__pyx_k_reverse), 0, 0, 1, 1},
+ {&__pyx_n_s_rfunction, __pyx_k_rfunction, sizeof(__pyx_k_rfunction), 0, 0, 1, 1},
{&__pyx_n_s_rhs, __pyx_k_rhs, sizeof(__pyx_k_rhs), 0, 0, 1, 1},
{&__pyx_n_s_right, __pyx_k_right, sizeof(__pyx_k_right), 0, 0, 1, 1},
{&__pyx_n_s_rmap, __pyx_k_rmap, sizeof(__pyx_k_rmap), 0, 0, 1, 1},
@@ -245048,6 +265423,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_setDiagonal, __pyx_k_setDiagonal, sizeof(__pyx_k_setDiagonal), 0, 0, 1, 1},
{&__pyx_n_s_setDimension, __pyx_k_setDimension, sizeof(__pyx_k_setDimension), 0, 0, 1, 1},
{&__pyx_n_s_setEquationType, __pyx_k_setEquationType, sizeof(__pyx_k_setEquationType), 0, 0, 1, 1},
+ {&__pyx_n_s_setFunctionNorm, __pyx_k_setFunctionNorm, sizeof(__pyx_k_setFunctionNorm), 0, 0, 1, 1},
{&__pyx_n_s_setFunctionTolerances, __pyx_k_setFunctionTolerances, sizeof(__pyx_k_setFunctionTolerances), 0, 0, 1, 1},
{&__pyx_n_s_setInitialGuessKnoll, __pyx_k_setInitialGuessKnoll, sizeof(__pyx_k_setInitialGuessKnoll), 0, 0, 1, 1},
{&__pyx_n_s_setInitialGuessNonzero, __pyx_k_setInitialGuessNonzero, sizeof(__pyx_k_setInitialGuessNonzero), 0, 0, 1, 1},
@@ -245138,6 +265514,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_syncPrint, __pyx_k_syncPrint, sizeof(__pyx_k_syncPrint), 0, 0, 1, 1},
{&__pyx_n_s_t, __pyx_k_t, sizeof(__pyx_k_t), 0, 0, 1, 1},
{&__pyx_n_s_tab, __pyx_k_tab, sizeof(__pyx_k_tab), 0, 0, 1, 1},
+ {&__pyx_n_s_tabs, __pyx_k_tabs, sizeof(__pyx_k_tabs), 0, 0, 1, 1},
{&__pyx_n_s_tao_type, __pyx_k_tao_type, sizeof(__pyx_k_tao_type), 0, 0, 1, 1},
{&__pyx_n_s_tbline, __pyx_k_tbline, sizeof(__pyx_k_tbline), 0, 0, 1, 1},
{&__pyx_n_s_tblist, __pyx_k_tblist, sizeof(__pyx_k_tblist), 0, 0, 1, 1},
@@ -245169,6 +265546,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_kp_s_unknown_stencil_type_s, __pyx_k_unknown_stencil_type_s, sizeof(__pyx_k_unknown_stencil_type_s), 0, 0, 1, 0},
{&__pyx_n_s_update, __pyx_k_update, sizeof(__pyx_k_update), 0, 0, 1, 1},
{&__pyx_n_s_upper, __pyx_k_upper, sizeof(__pyx_k_upper), 0, 0, 1, 1},
+ {&__pyx_n_s_useAnchors, __pyx_k_useAnchors, sizeof(__pyx_k_useAnchors), 0, 0, 1, 1},
{&__pyx_n_s_useClosure, __pyx_k_useClosure, sizeof(__pyx_k_useClosure), 0, 0, 1, 1},
{&__pyx_n_s_useCone, __pyx_k_useCone, sizeof(__pyx_k_useCone), 0, 0, 1, 1},
{&__pyx_n_s_v, __pyx_k_v, sizeof(__pyx_k_v), 0, 0, 1, 1},
@@ -245189,6 +265567,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_viewer, __pyx_k_viewer, sizeof(__pyx_k_viewer), 0, 0, 1, 1},
{&__pyx_n_s_vl, __pyx_k_vl, sizeof(__pyx_k_vl), 0, 0, 1, 1},
{&__pyx_n_s_vlg, __pyx_k_vlg, sizeof(__pyx_k_vlg), 0, 0, 1, 1},
+ {&__pyx_n_s_vm, __pyx_k_vm, sizeof(__pyx_k_vm), 0, 0, 1, 1},
{&__pyx_n_s_vn, __pyx_k_vn, sizeof(__pyx_k_vn), 0, 0, 1, 1},
{&__pyx_n_s_vwr_type, __pyx_k_vwr_type, sizeof(__pyx_k_vwr_type), 0, 0, 1, 1},
{&__pyx_n_s_w, __pyx_k_w, sizeof(__pyx_k_w), 0, 0, 1, 1},
@@ -245196,6 +265575,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = {
{&__pyx_n_s_width, __pyx_k_width, sizeof(__pyx_k_width), 0, 0, 1, 1},
{&__pyx_n_s_x, __pyx_k_x, sizeof(__pyx_k_x), 0, 0, 1, 1},
{&__pyx_n_s_xdot, __pyx_k_xdot, sizeof(__pyx_k_xdot), 0, 0, 1, 1},
+ {&__pyx_n_s_xdotdot, __pyx_k_xdotdot, sizeof(__pyx_k_xdotdot), 0, 0, 1, 1},
{&__pyx_n_s_xl, __pyx_k_xl, sizeof(__pyx_k_xl), 0, 0, 1, 1},
{&__pyx_n_s_xmax, __pyx_k_xmax, sizeof(__pyx_k_xmax), 0, 0, 1, 1},
{&__pyx_n_s_xmin, __pyx_k_xmin, sizeof(__pyx_k_xmin), 0, 0, 1, 1},
@@ -245218,14 +265598,14 @@ static int __Pyx_InitCachedBuiltins(void) {
__pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(2, 70, __pyx_L1_error)
__pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(3, 47, __pyx_L1_error)
__pyx_builtin_KeyError = __Pyx_GetBuiltinName(__pyx_n_s_KeyError); if (!__pyx_builtin_KeyError) __PYX_ERR(3, 69, __pyx_L1_error)
- __pyx_builtin_SystemError = __Pyx_GetBuiltinName(__pyx_n_s_SystemError); if (!__pyx_builtin_SystemError) __PYX_ERR(4, 204, __pyx_L1_error)
- __pyx_builtin_Ellipsis = __Pyx_GetBuiltinName(__pyx_n_s_Ellipsis); if (!__pyx_builtin_Ellipsis) __PYX_ERR(5, 374, __pyx_L1_error)
- __pyx_builtin_NotImplementedError = __Pyx_GetBuiltinName(__pyx_n_s_NotImplementedError); if (!__pyx_builtin_NotImplementedError) __PYX_ERR(6, 540, __pyx_L1_error)
+ __pyx_builtin_SystemError = __Pyx_GetBuiltinName(__pyx_n_s_SystemError); if (!__pyx_builtin_SystemError) __PYX_ERR(4, 210, __pyx_L1_error)
+ __pyx_builtin_Ellipsis = __Pyx_GetBuiltinName(__pyx_n_s_Ellipsis); if (!__pyx_builtin_Ellipsis) __PYX_ERR(5, 375, __pyx_L1_error)
+ __pyx_builtin_NotImplementedError = __Pyx_GetBuiltinName(__pyx_n_s_NotImplementedError); if (!__pyx_builtin_NotImplementedError) __PYX_ERR(6, 546, __pyx_L1_error)
__pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(7, 293, __pyx_L1_error)
- __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(8, 299, __pyx_L1_error)
+ __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(8, 336, __pyx_L1_error)
__pyx_builtin_NotImplemented = __Pyx_GetBuiltinName(__pyx_n_s_NotImplemented); if (!__pyx_builtin_NotImplemented) __PYX_ERR(9, 23, __pyx_L1_error)
__pyx_builtin_AttributeError = __Pyx_GetBuiltinName(__pyx_n_s_AttributeError); if (!__pyx_builtin_AttributeError) __PYX_ERR(10, 38, __pyx_L1_error)
- __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_n_s_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(11, 282, __pyx_L1_error)
+ __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_n_s_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(11, 286, __pyx_L1_error)
return 0;
__pyx_L1_error:;
return -1;
@@ -245334,280 +265714,302 @@ static int __Pyx_InitCachedConstants(void) {
__Pyx_GOTREF(__pyx_tuple__12);
__Pyx_GIVEREF(__pyx_tuple__12);
- /* "PETSc/petscsys.pxi":79
+ /* "PETSc/petscsys.pxi":70
* if (bs < 1): raise ValueError(
* "block size %d must be positive" % toInt(bs))
* if n==PETSC_DECIDE and N==PETSC_DECIDE: raise ValueError( # <<<<<<<<<<<<<<
* "local and global sizes cannot be both 'DECIDE'")
* if (n > 0) and (n % bs): raise ValueError(
*/
- __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_local_and_global_sizes_cannot_be); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(14, 79, __pyx_L1_error)
+ __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_local_and_global_sizes_cannot_be); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(14, 70, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__13);
__Pyx_GIVEREF(__pyx_tuple__13);
- /* "PETSc/petscis.pxi":204
+ /* "PETSc/petscis.pxi":210
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p):
* if idx != 0: raise SystemError( # <<<<<<<<<<<<<<
* "accessing non-existent buffer segment")
* return self.getbuffer(p)
*/
- __pyx_tuple__14 = PyTuple_Pack(1, __pyx_kp_s_accessing_non_existent_buffer_se); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(4, 204, __pyx_L1_error)
+ __pyx_tuple__14 = PyTuple_Pack(1, __pyx_kp_s_accessing_non_existent_buffer_se); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(4, 210, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__14);
__Pyx_GIVEREF(__pyx_tuple__14);
- /* "PETSc/petscvec.pxi":505
+ /* "PETSc/petscvec.pxi":506
*
* def __getreadbuffer__(self, Py_ssize_t idx, void **p):
* if idx != 0: raise SystemError( # <<<<<<<<<<<<<<
* "accessing non-existent buffer segment")
* return self.getbuffer(p)
*/
- __pyx_tuple__15 = PyTuple_Pack(1, __pyx_kp_s_accessing_non_existent_buffer_se); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(5, 505, __pyx_L1_error)
+ __pyx_tuple__15 = PyTuple_Pack(1, __pyx_kp_s_accessing_non_existent_buffer_se); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(5, 506, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__15);
__Pyx_GIVEREF(__pyx_tuple__15);
- /* "PETSc/petscvec.pxi":510
+ /* "PETSc/petscvec.pxi":511
*
* def __getwritebuffer__(self, Py_ssize_t idx, void **p):
* if idx != 0: raise SystemError( # <<<<<<<<<<<<<<
* "accessing non-existent buffer segment")
* if self.readonly: raise TypeError(
*/
- __pyx_tuple__16 = PyTuple_Pack(1, __pyx_kp_s_accessing_non_existent_buffer_se); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(5, 510, __pyx_L1_error)
+ __pyx_tuple__16 = PyTuple_Pack(1, __pyx_kp_s_accessing_non_existent_buffer_se); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(5, 511, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__16);
__Pyx_GIVEREF(__pyx_tuple__16);
- /* "PETSc/petscvec.pxi":512
+ /* "PETSc/petscvec.pxi":513
* if idx != 0: raise SystemError(
* "accessing non-existent buffer segment")
* if self.readonly: raise TypeError( # <<<<<<<<<<<<<<
* "Object is not writable.")
* return self.getbuffer(p)
*/
- __pyx_tuple__17 = PyTuple_Pack(1, __pyx_kp_s_Object_is_not_writable); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(5, 512, __pyx_L1_error)
+ __pyx_tuple__17 = PyTuple_Pack(1, __pyx_kp_s_Object_is_not_writable); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(5, 513, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__17);
__Pyx_GIVEREF(__pyx_tuple__17);
- /* "PETSc/petscmat.pxi":473
+ /* "PETSc/petscmat.pxi":479
* elif isinstance(other, Vec):
* diag = other.copy()
* diag.scale(-1) # <<<<<<<<<<<<<<
* self.setDiagonal(diag, PETSC_ADD_VALUES)
* diag.destroy()
*/
- __pyx_tuple__18 = PyTuple_Pack(1, __pyx_int_neg_1); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(6, 473, __pyx_L1_error)
+ __pyx_tuple__18 = PyTuple_Pack(1, __pyx_int_neg_1); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(6, 479, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__18);
__Pyx_GIVEREF(__pyx_tuple__18);
- /* "PETSc/petscmat.pxi":532
+ /* "PETSc/petscmat.pxi":538
* cdef Mat mat_rsub(Mat self, other):
* cdef Mat mat = <Mat> mat_sub(self, other)
* mat.scale(-1) # <<<<<<<<<<<<<<
* return mat
*
*/
- __pyx_tuple__19 = PyTuple_Pack(1, __pyx_int_neg_1); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(6, 532, __pyx_L1_error)
+ __pyx_tuple__19 = PyTuple_Pack(1, __pyx_int_neg_1); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(6, 538, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__19);
__Pyx_GIVEREF(__pyx_tuple__19);
- /* "PETSc/petscmat.pxi":797
+ /* "PETSc/petscmat.pxi":803
* ("row indices must have two dimensions: "
* "rows.ndim=%d") % (PyArray_NDIM(ai)) )
* elif not PyArray_ISCONTIGUOUS(ai): raise ValueError( # <<<<<<<<<<<<<<
* "expecting a C-contiguous array")
* if PyArray_NDIM(aj) != 2: raise ValueError(
*/
- __pyx_tuple__20 = PyTuple_Pack(1, __pyx_kp_s_expecting_a_C_contiguous_array); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(6, 797, __pyx_L1_error)
+ __pyx_tuple__20 = PyTuple_Pack(1, __pyx_kp_s_expecting_a_C_contiguous_array); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(6, 803, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__20);
__Pyx_GIVEREF(__pyx_tuple__20);
- /* "PETSc/petscmat.pxi":802
+ /* "PETSc/petscmat.pxi":808
* ("column indices must have two dimensions: "
* "cols.ndim=%d") % (PyArray_NDIM(aj)) )
* elif not PyArray_ISCONTIGUOUS(aj): raise ValueError( # <<<<<<<<<<<<<<
* "expecting a C-contiguous array")
* if PyArray_NDIM(av) < 2: raise ValueError(
*/
- __pyx_tuple__21 = PyTuple_Pack(1, __pyx_kp_s_expecting_a_C_contiguous_array); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(6, 802, __pyx_L1_error)
+ __pyx_tuple__21 = PyTuple_Pack(1, __pyx_kp_s_expecting_a_C_contiguous_array); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(6, 808, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__21);
__Pyx_GIVEREF(__pyx_tuple__21);
- /* "PETSc/petscmat.pxi":807
+ /* "PETSc/petscmat.pxi":813
* ("values must have two or more dimensions: "
* "vals.ndim=%d") % (PyArray_NDIM(av)) )
* elif not PyArray_ISCONTIGUOUS(av): raise ValueError( # <<<<<<<<<<<<<<
* "expecting a C-contiguous array")
* # check various shapes
*/
- __pyx_tuple__22 = PyTuple_Pack(1, __pyx_kp_s_expecting_a_C_contiguous_array); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(6, 807, __pyx_L1_error)
+ __pyx_tuple__22 = PyTuple_Pack(1, __pyx_kp_s_expecting_a_C_contiguous_array); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(6, 813, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__22);
__Pyx_GIVEREF(__pyx_tuple__22);
- /* "PETSc/petscmat.pxi":943
+ /* "PETSc/petscmat.pxi":949
* cdef dict options = dict(opts)
* #
* cdef fill = options.pop('fill', None) # <<<<<<<<<<<<<<
* if fill is not None:
* info.fill = asReal(fill)
*/
- __pyx_tuple__23 = PyTuple_Pack(2, __pyx_n_s_fill, Py_None); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(6, 943, __pyx_L1_error)
+ __pyx_tuple__23 = PyTuple_Pack(2, __pyx_n_s_fill, Py_None); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(6, 949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__23);
__Pyx_GIVEREF(__pyx_tuple__23);
- /* "PETSc/petscmat.pxi":947
+ /* "PETSc/petscmat.pxi":953
* info.fill = asReal(fill)
* #
* cdef zeropivot = options.pop('zeropivot', None) # <<<<<<<<<<<<<<
* if zeropivot is not None:
* info.zeropivot = asReal(zeropivot)
*/
- __pyx_tuple__24 = PyTuple_Pack(2, __pyx_n_s_zeropivot, Py_None); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(6, 947, __pyx_L1_error)
+ __pyx_tuple__24 = PyTuple_Pack(2, __pyx_n_s_zeropivot, Py_None); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(6, 953, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__24);
__Pyx_GIVEREF(__pyx_tuple__24);
- /* "PETSc/petscmat.pxi":951
+ /* "PETSc/petscmat.pxi":957
* info.zeropivot = asReal(zeropivot)
* #
* cdef levels = options.pop('levels', None) # <<<<<<<<<<<<<<
* if levels is not None:
* info.levels = <PetscReal>asInt(levels)
*/
- __pyx_tuple__25 = PyTuple_Pack(2, __pyx_n_s_levels, Py_None); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(6, 951, __pyx_L1_error)
+ __pyx_tuple__25 = PyTuple_Pack(2, __pyx_n_s_levels, Py_None); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(6, 957, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__25);
__Pyx_GIVEREF(__pyx_tuple__25);
- /* "PETSc/petscmat.pxi":954
+ /* "PETSc/petscmat.pxi":960
* if levels is not None:
* info.levels = <PetscReal>asInt(levels)
* cdef diagonal_fill = options.pop('diagonal_fill', None) # <<<<<<<<<<<<<<
* if diagonal_fill is not None:
* info.diagonal_fill = <PetscReal>(<bint>diagonal_fill)
*/
- __pyx_tuple__26 = PyTuple_Pack(2, __pyx_n_s_diagonal_fill, Py_None); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(6, 954, __pyx_L1_error)
+ __pyx_tuple__26 = PyTuple_Pack(2, __pyx_n_s_diagonal_fill, Py_None); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(6, 960, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__26);
__Pyx_GIVEREF(__pyx_tuple__26);
- /* "PETSc/petscmat.pxi":958
+ /* "PETSc/petscmat.pxi":964
* info.diagonal_fill = <PetscReal>(<bint>diagonal_fill)
* #
* cdef dt = options.pop('dt', None) # <<<<<<<<<<<<<<
* if dt is not None:
* info.dt = asReal(dt)
*/
- __pyx_tuple__27 = PyTuple_Pack(2, __pyx_n_s_dt, Py_None); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(6, 958, __pyx_L1_error)
+ __pyx_tuple__27 = PyTuple_Pack(2, __pyx_n_s_dt, Py_None); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(6, 964, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__27);
__Pyx_GIVEREF(__pyx_tuple__27);
- /* "PETSc/petscmat.pxi":961
+ /* "PETSc/petscmat.pxi":967
* if dt is not None:
* info.dt = asReal(dt)
* cdef dtcol = options.pop('dtcol', None) # <<<<<<<<<<<<<<
* if dtcol is not None:
* info.dtcol = asReal(dtcol)
*/
- __pyx_tuple__28 = PyTuple_Pack(2, __pyx_n_s_dtcol, Py_None); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(6, 961, __pyx_L1_error)
+ __pyx_tuple__28 = PyTuple_Pack(2, __pyx_n_s_dtcol, Py_None); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(6, 967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__28);
__Pyx_GIVEREF(__pyx_tuple__28);
- /* "PETSc/petscmat.pxi":964
+ /* "PETSc/petscmat.pxi":970
* if dtcol is not None:
* info.dtcol = asReal(dtcol)
* cdef dtcount = options.pop('dtcount', None) # <<<<<<<<<<<<<<
* if dtcount is not None:
* info.dtcount = <PetscReal>asInt(dtcount)
*/
- __pyx_tuple__29 = PyTuple_Pack(2, __pyx_n_s_dtcount, Py_None); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(6, 964, __pyx_L1_error)
+ __pyx_tuple__29 = PyTuple_Pack(2, __pyx_n_s_dtcount, Py_None); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(6, 970, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__29);
__Pyx_GIVEREF(__pyx_tuple__29);
- /* "PETSc/petscmat.pxi":972
+ /* "PETSc/petscmat.pxi":978
* info.usedt = <PetscReal>PETSC_TRUE
* #
* cdef shifttype = options.pop('shifttype', None) # <<<<<<<<<<<<<<
* if shifttype is not None:
* info.shifttype = <PetscReal>matfactorshifttype(shifttype)
*/
- __pyx_tuple__30 = PyTuple_Pack(2, __pyx_n_s_shifttype, Py_None); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(6, 972, __pyx_L1_error)
+ __pyx_tuple__30 = PyTuple_Pack(2, __pyx_n_s_shifttype, Py_None); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(6, 978, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__30);
__Pyx_GIVEREF(__pyx_tuple__30);
- /* "PETSc/petscmat.pxi":975
+ /* "PETSc/petscmat.pxi":981
* if shifttype is not None:
* info.shifttype = <PetscReal>matfactorshifttype(shifttype)
* cdef shiftamount = options.pop('shiftamount', None) # <<<<<<<<<<<<<<
* if shiftamount is not None:
* info.shiftamount = asReal(shiftamount)
*/
- __pyx_tuple__31 = PyTuple_Pack(2, __pyx_n_s_shiftamount, Py_None); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(6, 975, __pyx_L1_error)
+ __pyx_tuple__31 = PyTuple_Pack(2, __pyx_n_s_shiftamount, Py_None); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(6, 981, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__31);
__Pyx_GIVEREF(__pyx_tuple__31);
- /* "PETSc/Sys.pyx":27
+ /* "PETSc/Sys.pyx":19
+ * vstr = bytes2str(cversion)
+ * if release != 0:
+ * date = vstr.split(",", 1)[-1].strip() # <<<<<<<<<<<<<<
+ * else:
+ * date = vstr.split("GIT Date:")[-1].strip()
+ */
+ __pyx_tuple__34 = PyTuple_Pack(2, __pyx_kp_s__33, __pyx_int_1); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(25, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__34);
+ __Pyx_GIVEREF(__pyx_tuple__34);
+
+ /* "PETSc/Sys.pyx":21
+ * date = vstr.split(",", 1)[-1].strip()
+ * else:
+ * date = vstr.split("GIT Date:")[-1].strip() # <<<<<<<<<<<<<<
+ * out.append(date)
+ * if author:
+ */
+ __pyx_tuple__35 = PyTuple_Pack(1, __pyx_kp_s_GIT_Date); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(25, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__35);
+ __Pyx_GIVEREF(__pyx_tuple__35);
+
+ /* "PETSc/Sys.pyx":24
* out.append(date)
* if author:
- * author = bytes2str(cauthorinfo).split('\n') # <<<<<<<<<<<<<<
- * author = [s.strip() for s in author if s]
+ * author = bytes2str(PETSC_AUTHOR_INFO).split('\n') # <<<<<<<<<<<<<<
+ * author = tuple([s.strip() for s in author if s])
* out.append(author)
*/
- __pyx_tuple__33 = PyTuple_Pack(1, __pyx_kp_s__32); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(25, 27, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__33);
- __Pyx_GIVEREF(__pyx_tuple__33);
+ __pyx_tuple__36 = PyTuple_Pack(1, __pyx_kp_s__32); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(25, 24, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__36);
+ __Pyx_GIVEREF(__pyx_tuple__36);
- /* "PETSc/Sys.pyx":41
- * cdef const_char *cdate = PETSC_VERSION_DATE
- * cdef const_char *cauthorinfo = PETSC_AUTHOR_INFO
- * author = bytes2str(cauthorinfo).split('\n') # <<<<<<<<<<<<<<
- * author = [s.strip() for s in author if s]
- * return dict(major = cmajor,
+ /* "PETSc/Sys.pyx":31
+ * @classmethod
+ * def getVersionInfo(cls):
+ * version, dev, date, author = cls.getVersion(True, True, True) # <<<<<<<<<<<<<<
+ * return dict(major = version[0],
+ * minor = version[1],
*/
- __pyx_tuple__34 = PyTuple_Pack(1, __pyx_kp_s__32); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(25, 41, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__34);
- __Pyx_GIVEREF(__pyx_tuple__34);
+ __pyx_tuple__37 = PyTuple_Pack(3, Py_True, Py_True, Py_True); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(25, 31, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__37);
+ __Pyx_GIVEREF(__pyx_tuple__37);
- /* "PETSc/Sys.pyx":73
+ /* "PETSc/Sys.pyx":61
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_WORLD)
* if ccomm == MPI_COMM_NULL:
* raise ValueError("null communicator") # <<<<<<<<<<<<<<
* global PETSC_COMM_DEFAULT
* PETSC_COMM_DEFAULT = ccomm
*/
- __pyx_tuple__35 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(25, 73, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__35);
- __Pyx_GIVEREF(__pyx_tuple__35);
+ __pyx_tuple__38 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(25, 61, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__38);
+ __Pyx_GIVEREF(__pyx_tuple__38);
- /* "PETSc/Sys.pyx":86
+ /* "PETSc/Sys.pyx":74
* cdef object end = kargs.get('end', '\n')
* if comm_rank(ccomm) == 0:
* if not args: args = ('',) # <<<<<<<<<<<<<<
* format = ['%s', sep] * len(args)
* format[-1] = end
*/
- __pyx_tuple__36 = PyTuple_Pack(1, __pyx_kp_s__10); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(25, 86, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__36);
- __Pyx_GIVEREF(__pyx_tuple__36);
+ __pyx_tuple__39 = PyTuple_Pack(1, __pyx_kp_s__10); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(25, 74, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__39);
+ __Pyx_GIVEREF(__pyx_tuple__39);
- /* "PETSc/Sys.pyx":103
+ /* "PETSc/Sys.pyx":91
* cdef object end = kargs.get('end', '\n')
* cdef object flush = kargs.get('flush', False)
* if not args: args = ('',) # <<<<<<<<<<<<<<
* format = ['%s', sep] * len(args)
* format[-1] = end
*/
- __pyx_tuple__37 = PyTuple_Pack(1, __pyx_kp_s__10); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(25, 103, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__37);
- __Pyx_GIVEREF(__pyx_tuple__37);
+ __pyx_tuple__40 = PyTuple_Pack(1, __pyx_kp_s__10); if (unlikely(!__pyx_tuple__40)) __PYX_ERR(25, 91, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__40);
+ __Pyx_GIVEREF(__pyx_tuple__40);
- /* "PETSc/Sys.pyx":175
+ /* "PETSc/Sys.pyx":167
* @classmethod
* def registerCitation(cls, citation):
* if not citation: raise ValueError("empty citation") # <<<<<<<<<<<<<<
* cdef const_char *cit = NULL
* citation = str2bytes(citation, &cit)
*/
- __pyx_tuple__38 = PyTuple_Pack(1, __pyx_kp_s_empty_citation); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(25, 175, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__38);
- __Pyx_GIVEREF(__pyx_tuple__38);
+ __pyx_tuple__41 = PyTuple_Pack(1, __pyx_kp_s_empty_citation); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(25, 167, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__41);
+ __Pyx_GIVEREF(__pyx_tuple__41);
/* "PETSc/Log.pyx":7
* @classmethod
@@ -245616,9 +266018,9 @@ static int __Pyx_InitCachedConstants(void) {
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_tuple__39 = PyTuple_Pack(1, __pyx_kp_s_empty_name); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(26, 7, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__39);
- __Pyx_GIVEREF(__pyx_tuple__39);
+ __pyx_tuple__42 = PyTuple_Pack(1, __pyx_kp_s_empty_name); if (unlikely(!__pyx_tuple__42)) __PYX_ERR(26, 7, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__42);
+ __Pyx_GIVEREF(__pyx_tuple__42);
/* "PETSc/Log.pyx":21
* @classmethod
@@ -245627,9 +266029,9 @@ static int __Pyx_InitCachedConstants(void) {
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_tuple__40 = PyTuple_Pack(1, __pyx_kp_s_empty_name); if (unlikely(!__pyx_tuple__40)) __PYX_ERR(26, 21, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__40);
- __Pyx_GIVEREF(__pyx_tuple__40);
+ __pyx_tuple__43 = PyTuple_Pack(1, __pyx_kp_s_empty_name); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(26, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__43);
+ __Pyx_GIVEREF(__pyx_tuple__43);
/* "PETSc/Log.pyx":35
* @classmethod
@@ -245638,9 +266040,9 @@ static int __Pyx_InitCachedConstants(void) {
* cdef const_char *cname = NULL
* name = str2bytes(name, &cname)
*/
- __pyx_tuple__41 = PyTuple_Pack(1, __pyx_kp_s_empty_name); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(26, 35, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__41);
- __Pyx_GIVEREF(__pyx_tuple__41);
+ __pyx_tuple__44 = PyTuple_Pack(1, __pyx_kp_s_empty_name); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(26, 35, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__44);
+ __Pyx_GIVEREF(__pyx_tuple__44);
/* "PETSc/Log.pyx":133
* def __set__(self, value):
@@ -245649,9 +266051,9 @@ static int __Pyx_InitCachedConstants(void) {
*
* #
*/
- __pyx_tuple__42 = PyTuple_Pack(1, __pyx_kp_s_readonly_attribute); if (unlikely(!__pyx_tuple__42)) __PYX_ERR(26, 133, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__42);
- __Pyx_GIVEREF(__pyx_tuple__42);
+ __pyx_tuple__45 = PyTuple_Pack(1, __pyx_kp_s_readonly_attribute); if (unlikely(!__pyx_tuple__45)) __PYX_ERR(26, 133, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__45);
+ __Pyx_GIVEREF(__pyx_tuple__45);
/* "PETSc/Log.pyx":213
* def __set__(self, value):
@@ -245660,9 +266062,9 @@ static int __Pyx_InitCachedConstants(void) {
*
* #
*/
- __pyx_tuple__43 = PyTuple_Pack(1, __pyx_kp_s_readonly_attribute); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(26, 213, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__43);
- __Pyx_GIVEREF(__pyx_tuple__43);
+ __pyx_tuple__46 = PyTuple_Pack(1, __pyx_kp_s_readonly_attribute); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(26, 213, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__46);
+ __Pyx_GIVEREF(__pyx_tuple__46);
/* "PETSc/Log.pyx":308
* def __set__(self, value):
@@ -245671,9 +266073,9 @@ static int __Pyx_InitCachedConstants(void) {
*
* #
*/
- __pyx_tuple__44 = PyTuple_Pack(1, __pyx_kp_s_readonly_attribute); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(26, 308, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__44);
- __Pyx_GIVEREF(__pyx_tuple__44);
+ __pyx_tuple__47 = PyTuple_Pack(1, __pyx_kp_s_readonly_attribute); if (unlikely(!__pyx_tuple__47)) __PYX_ERR(26, 308, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__47);
+ __Pyx_GIVEREF(__pyx_tuple__47);
/* "PETSc/Comm.pyx":25
* if not isinstance(self, Comm): return NotImplemented
@@ -245682,9 +266084,9 @@ static int __Pyx_InitCachedConstants(void) {
* cdef Comm s = self
* cdef Comm o = other
*/
- __pyx_tuple__45 = PyTuple_Pack(1, __pyx_kp_s_only_and); if (unlikely(!__pyx_tuple__45)) __PYX_ERR(9, 25, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__45);
- __Pyx_GIVEREF(__pyx_tuple__45);
+ __pyx_tuple__48 = PyTuple_Pack(1, __pyx_kp_s_only_and); if (unlikely(!__pyx_tuple__48)) __PYX_ERR(9, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__48);
+ __Pyx_GIVEREF(__pyx_tuple__48);
/* "PETSc/Comm.pyx":48
* if self.comm == MPI_COMM_NULL: return
@@ -245693,9 +266095,9 @@ static int __Pyx_InitCachedConstants(void) {
* CHKERR( PetscCommDestroy(&self.comm) )
* self.comm = MPI_COMM_NULL
*/
- __pyx_tuple__46 = PyTuple_Pack(1, __pyx_kp_s_communicator_not_owned); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(9, 48, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__46);
- __Pyx_GIVEREF(__pyx_tuple__46);
+ __pyx_tuple__49 = PyTuple_Pack(1, __pyx_kp_s_communicator_not_owned); if (unlikely(!__pyx_tuple__49)) __PYX_ERR(9, 48, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__49);
+ __Pyx_GIVEREF(__pyx_tuple__49);
/* "PETSc/Comm.pyx":56
* def duplicate(self):
@@ -245704,9 +266106,9 @@ static int __Pyx_InitCachedConstants(void) {
* cdef MPI_Comm newcomm = MPI_COMM_NULL
* CHKERR( PetscCommDuplicate(self.comm, &newcomm, NULL) )
*/
- __pyx_tuple__47 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__47)) __PYX_ERR(9, 56, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__47);
- __Pyx_GIVEREF(__pyx_tuple__47);
+ __pyx_tuple__50 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__50)) __PYX_ERR(9, 56, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__50);
+ __Pyx_GIVEREF(__pyx_tuple__50);
/* "PETSc/Comm.pyx":67
* def getSize(self):
@@ -245715,9 +266117,9 @@ static int __Pyx_InitCachedConstants(void) {
* cdef int size=0
* MPI_Comm_size(self.comm, &size)
*/
- __pyx_tuple__48 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__48)) __PYX_ERR(9, 67, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__48);
- __Pyx_GIVEREF(__pyx_tuple__48);
+ __pyx_tuple__51 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(9, 67, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__51);
+ __Pyx_GIVEREF(__pyx_tuple__51);
/* "PETSc/Comm.pyx":74
* def getRank(self):
@@ -245726,9 +266128,9 @@ static int __Pyx_InitCachedConstants(void) {
* cdef int rank=0
* MPI_Comm_rank(self.comm, &rank)
*/
- __pyx_tuple__49 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__49)) __PYX_ERR(9, 74, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__49);
- __Pyx_GIVEREF(__pyx_tuple__49);
+ __pyx_tuple__52 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__52)) __PYX_ERR(9, 74, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__52);
+ __Pyx_GIVEREF(__pyx_tuple__52);
/* "PETSc/Comm.pyx":81
* def barrier(self):
@@ -245737,9 +266139,9 @@ static int __Pyx_InitCachedConstants(void) {
* MPI_Barrier(self.comm)
*
*/
- __pyx_tuple__50 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__50)) __PYX_ERR(9, 81, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__50);
- __Pyx_GIVEREF(__pyx_tuple__50);
+ __pyx_tuple__53 = PyTuple_Pack(1, __pyx_kp_s_null_communicator); if (unlikely(!__pyx_tuple__53)) __PYX_ERR(9, 81, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__53);
+ __Pyx_GIVEREF(__pyx_tuple__53);
/* "PETSc/Object.pyx":21
* if op == 2: return (s.obj[0] == o.obj[0])
@@ -245748,9 +266150,9 @@ static int __Pyx_InitCachedConstants(void) {
*
* def __nonzero__(self):
*/
- __pyx_tuple__51 = PyTuple_Pack(1, __pyx_kp_s_only_and); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(10, 21, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__51);
- __Pyx_GIVEREF(__pyx_tuple__51);
+ __pyx_tuple__54 = PyTuple_Pack(1, __pyx_kp_s_only_and); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(10, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__54);
+ __Pyx_GIVEREF(__pyx_tuple__54);
/* "PETSc/Vec.pyx":406
* CHKERR( VecCUSPGetCUDAArrayWrite(self.vec, &hdl) )
@@ -245759,9 +266161,9 @@ static int __Pyx_InitCachedConstants(void) {
* return <Py_uintptr_t>hdl
*
*/
- __pyx_tuple__52 = PyTuple_Pack(1, __pyx_kp_s_Invalid_mode_expected_rw_r_or_w); if (unlikely(!__pyx_tuple__52)) __PYX_ERR(30, 406, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__52);
- __Pyx_GIVEREF(__pyx_tuple__52);
+ __pyx_tuple__55 = PyTuple_Pack(1, __pyx_kp_s_Invalid_mode_expected_rw_r_or_w); if (unlikely(!__pyx_tuple__55)) __PYX_ERR(30, 406, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__55);
+ __Pyx_GIVEREF(__pyx_tuple__55);
/* "PETSc/Vec.pyx":420
* CHKERR( VecCUSPRestoreCUDAArrayWrite(self.vec, &hdl) )
@@ -245770,56 +266172,56 @@ static int __Pyx_InitCachedConstants(void) {
*
* def duplicate(self, array=None):
*/
- __pyx_tuple__53 = PyTuple_Pack(1, __pyx_kp_s_Invalid_mode_expected_rw_r_or_w); if (unlikely(!__pyx_tuple__53)) __PYX_ERR(30, 420, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__53);
- __Pyx_GIVEREF(__pyx_tuple__53);
+ __pyx_tuple__56 = PyTuple_Pack(1, __pyx_kp_s_Invalid_mode_expected_rw_r_or_w); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(30, 420, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__56);
+ __Pyx_GIVEREF(__pyx_tuple__56);
- /* "PETSc/Vec.pyx":860
+ /* "PETSc/Vec.pyx":866
* "Vec buffer (read-only)"
* def __get__(self):
* return self.getBuffer(True) # <<<<<<<<<<<<<<
*
* property array_w:
*/
- __pyx_tuple__54 = PyTuple_Pack(1, Py_True); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(30, 860, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__54);
- __Pyx_GIVEREF(__pyx_tuple__54);
+ __pyx_tuple__57 = PyTuple_Pack(1, Py_True); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(30, 866, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__57);
+ __Pyx_GIVEREF(__pyx_tuple__57);
- /* "PETSc/Vec.pyx":868
+ /* "PETSc/Vec.pyx":874
* def __set__(self, value):
* cdef buf = self.getBuffer()
* with buf as array: array[:] = value # <<<<<<<<<<<<<<
*
* property array_r:
*/
- __pyx_slice__55 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__55)) __PYX_ERR(30, 868, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_slice__55);
- __Pyx_GIVEREF(__pyx_slice__55);
- __pyx_tuple__56 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(30, 868, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__56);
- __Pyx_GIVEREF(__pyx_tuple__56);
+ __pyx_slice__58 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__58)) __PYX_ERR(30, 874, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_slice__58);
+ __Pyx_GIVEREF(__pyx_slice__58);
+ __pyx_tuple__59 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__59)) __PYX_ERR(30, 874, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__59);
+ __Pyx_GIVEREF(__pyx_tuple__59);
- /* "PETSc/Vec.pyx":873
+ /* "PETSc/Vec.pyx":879
* "Vec array (read-only)"
* def __get__(self):
* return self.getArray(True) # <<<<<<<<<<<<<<
*
* property buffer:
*/
- __pyx_tuple__57 = PyTuple_Pack(1, Py_True); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(30, 873, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__57);
- __Pyx_GIVEREF(__pyx_tuple__57);
+ __pyx_tuple__60 = PyTuple_Pack(1, Py_True); if (unlikely(!__pyx_tuple__60)) __PYX_ERR(30, 879, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__60);
+ __Pyx_GIVEREF(__pyx_tuple__60);
- /* "PETSc/Mat.pyx":1055
+ /* "PETSc/Mat.pyx":1064
* cdef ndarray ibdiag = array_s(m*bs, cibdiag)
* ibdiag.shape = (toInt(m//bs), toInt(bs), toInt(bs))
* return ibdiag.transpose(0, 2, 1) # <<<<<<<<<<<<<<
*
* # null space
*/
- __pyx_tuple__58 = PyTuple_Pack(3, __pyx_int_0, __pyx_int_2, __pyx_int_1); if (unlikely(!__pyx_tuple__58)) __PYX_ERR(33, 1055, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__58);
- __Pyx_GIVEREF(__pyx_tuple__58);
+ __pyx_tuple__61 = PyTuple_Pack(3, __pyx_int_0, __pyx_int_2, __pyx_int_1); if (unlikely(!__pyx_tuple__61)) __PYX_ERR(33, 1064, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__61);
+ __Pyx_GIVEREF(__pyx_tuple__61);
/* "PETSc/SNES.pyx":179
* if comms is not None:
@@ -245828,9 +266230,9 @@ static int __Pyx_InitCachedConstants(void) {
* CHKERR( PetscMalloc(sizeof(MPI_Comm)*<size_t>clevels, &ccomms) )
* try:
*/
- __pyx_tuple__59 = PyTuple_Pack(1, __pyx_kp_s_Must_provide_as_many_communicato); if (unlikely(!__pyx_tuple__59)) __PYX_ERR(36, 179, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__59);
- __Pyx_GIVEREF(__pyx_tuple__59);
+ __pyx_tuple__62 = PyTuple_Pack(1, __pyx_kp_s_Must_provide_as_many_communicato); if (unlikely(!__pyx_tuple__62)) __PYX_ERR(36, 179, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__62);
+ __Pyx_GIVEREF(__pyx_tuple__62);
/* "PETSc/TAO.pyx":575
* self.setFunctionTolerances(**value)
@@ -245839,9 +266241,9 @@ static int __Pyx_InitCachedConstants(void) {
*
* property gtol:
*/
- __pyx_tuple__60 = PyTuple_Pack(1, __pyx_kp_s_expecting_tuple_list_or_dict); if (unlikely(!__pyx_tuple__60)) __PYX_ERR(38, 575, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__60);
- __Pyx_GIVEREF(__pyx_tuple__60);
+ __pyx_tuple__63 = PyTuple_Pack(1, __pyx_kp_s_expecting_tuple_list_or_dict); if (unlikely(!__pyx_tuple__63)) __PYX_ERR(38, 575, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__63);
+ __Pyx_GIVEREF(__pyx_tuple__63);
/* "PETSc/TAO.pyx":586
* self.getGradientTolerances(**value)
@@ -245850,9 +266252,9 @@ static int __Pyx_InitCachedConstants(void) {
*
* property ctol:
*/
- __pyx_tuple__61 = PyTuple_Pack(1, __pyx_kp_s_expecting_tuple_list_or_dict); if (unlikely(!__pyx_tuple__61)) __PYX_ERR(38, 586, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__61);
- __Pyx_GIVEREF(__pyx_tuple__61);
+ __pyx_tuple__64 = PyTuple_Pack(1, __pyx_kp_s_expecting_tuple_list_or_dict); if (unlikely(!__pyx_tuple__64)) __PYX_ERR(38, 586, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__64);
+ __Pyx_GIVEREF(__pyx_tuple__64);
/* "PETSc/TAO.pyx":597
* self.getConstraintTolerances(**value)
@@ -245861,34 +266263,34 @@ static int __Pyx_InitCachedConstants(void) {
*
* # --- iteration ---
*/
- __pyx_tuple__62 = PyTuple_Pack(1, __pyx_kp_s_expecting_tuple_list_or_dict); if (unlikely(!__pyx_tuple__62)) __PYX_ERR(38, 597, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__62);
- __Pyx_GIVEREF(__pyx_tuple__62);
+ __pyx_tuple__65 = PyTuple_Pack(1, __pyx_kp_s_expecting_tuple_list_or_dict); if (unlikely(!__pyx_tuple__65)) __PYX_ERR(38, 597, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__65);
+ __Pyx_GIVEREF(__pyx_tuple__65);
- /* "PETSc/DMPlex.pyx":335
+ /* "PETSc/DMPlex.pyx":346
* finally:
* CHKERR( DMPlexRestoreTransitiveClosure(self.dm, cp, cuseCone, &numPoints, &points) )
* return out[::2],out[1::2] # <<<<<<<<<<<<<<
*
* def vecGetClosure(self, Section sec, Vec vec, p):
*/
- __pyx_slice__63 = PySlice_New(Py_None, Py_None, __pyx_int_2); if (unlikely(!__pyx_slice__63)) __PYX_ERR(42, 335, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_slice__63);
- __Pyx_GIVEREF(__pyx_slice__63);
- __pyx_slice__64 = PySlice_New(__pyx_int_1, Py_None, __pyx_int_2); if (unlikely(!__pyx_slice__64)) __PYX_ERR(42, 335, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_slice__64);
- __Pyx_GIVEREF(__pyx_slice__64);
+ __pyx_slice__66 = PySlice_New(Py_None, Py_None, __pyx_int_2); if (unlikely(!__pyx_slice__66)) __PYX_ERR(42, 346, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_slice__66);
+ __Pyx_GIVEREF(__pyx_slice__66);
+ __pyx_slice__67 = PySlice_New(__pyx_int_1, Py_None, __pyx_int_2); if (unlikely(!__pyx_slice__67)) __PYX_ERR(42, 346, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_slice__67);
+ __Pyx_GIVEREF(__pyx_slice__67);
- /* "PETSc/DMPlex.pyx":480
+ /* "PETSc/DMPlex.pyx":565
* bcpoints[i] = (<IS?>bcPoints[<Py_ssize_t>i]).iset
* else:
* raise ValueError("bcPoints is a required argument") # <<<<<<<<<<<<<<
* else:
* assert bcComps is None
*/
- __pyx_tuple__65 = PyTuple_Pack(1, __pyx_kp_s_bcPoints_is_a_required_argument); if (unlikely(!__pyx_tuple__65)) __PYX_ERR(42, 480, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__65);
- __Pyx_GIVEREF(__pyx_tuple__65);
+ __pyx_tuple__68 = PyTuple_Pack(1, __pyx_kp_s_bcPoints_is_a_required_argument); if (unlikely(!__pyx_tuple__68)) __PYX_ERR(42, 565, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__68);
+ __Pyx_GIVEREF(__pyx_tuple__68);
/* "PETSc/Partitioner.pyx":61
* numProcs, toInt(nsize))
@@ -245897,20 +266299,64 @@ static int __Pyx_InitCachedConstants(void) {
* if points is not None:
* points = iarray_i(points, NULL, &cpoints)
*/
- __pyx_tuple__66 = PyTuple_Pack(1, __pyx_kp_s_Must_provide_both_sizes_and_poin); if (unlikely(!__pyx_tuple__66)) __PYX_ERR(46, 61, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__66);
- __Pyx_GIVEREF(__pyx_tuple__66);
+ __pyx_tuple__69 = PyTuple_Pack(1, __pyx_kp_s_Must_provide_both_sizes_and_poin); if (unlikely(!__pyx_tuple__69)) __PYX_ERR(46, 61, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__69);
+ __Pyx_GIVEREF(__pyx_tuple__69);
- /* "PETSc/PETSc.pyx":212
+ /* "PETSc/PETSc.pyx":216
* return n
* #
* del tbl[1:] # clear any previous stuff # <<<<<<<<<<<<<<
* if n == PETSC_ERR_MEM: # special case
* PetscMallocGetCurrentUsage(&mem)
*/
- __pyx_slice__67 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__67)) __PYX_ERR(11, 212, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_slice__67);
- __Pyx_GIVEREF(__pyx_slice__67);
+ __pyx_slice__70 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__70)) __PYX_ERR(11, 216, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_slice__70);
+ __Pyx_GIVEREF(__pyx_slice__70);
+
+ /* "PETSc/Const.pyx":15
+ * # --------------------------------------------------------------------
+ *
+ * class InsertMode(object): # <<<<<<<<<<<<<<
+ * # native
+ * NOT_SET_VALUES = PETSC_NOT_SET_VALUES
+ */
+ __pyx_tuple__71 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__71)) __PYX_ERR(0, 15, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__71);
+ __Pyx_GIVEREF(__pyx_tuple__71);
+
+ /* "PETSc/Const.pyx":36
+ * # --------------------------------------------------------------------
+ *
+ * class ScatterMode(object): # <<<<<<<<<<<<<<
+ * # native
+ * SCATTER_FORWARD = PETSC_SCATTER_FORWARD
+ */
+ __pyx_tuple__72 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__72)) __PYX_ERR(0, 36, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__72);
+ __Pyx_GIVEREF(__pyx_tuple__72);
+
+ /* "PETSc/Const.pyx":51
+ * # --------------------------------------------------------------------
+ *
+ * class NormType(object): # <<<<<<<<<<<<<<
+ * # native
+ * NORM_1 = PETSC_NORM_1
+ */
+ __pyx_tuple__73 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__73)) __PYX_ERR(0, 51, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__73);
+ __Pyx_GIVEREF(__pyx_tuple__73);
+
+ /* "PETSc/Error.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class Error(RuntimeError): # <<<<<<<<<<<<<<
+ *
+ * _traceback_ = []
+ */
+ __pyx_tuple__74 = PyTuple_Pack(1, __pyx_builtin_RuntimeError); if (unlikely(!__pyx_tuple__74)) __PYX_ERR(1, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__74);
+ __Pyx_GIVEREF(__pyx_tuple__74);
/* "PETSc/Error.pyx":7
* _traceback_ = []
@@ -245919,10 +266365,10 @@ static int __Pyx_InitCachedConstants(void) {
* self.ierr = ierr
* RuntimeError.__init__(self, self.ierr)
*/
- __pyx_tuple__68 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_ierr); if (unlikely(!__pyx_tuple__68)) __PYX_ERR(1, 7, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__68);
- __Pyx_GIVEREF(__pyx_tuple__68);
- __pyx_codeobj__69 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__68, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_devel_petsc4py_3_7_0_src_P, __pyx_n_s_init, 7, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__69)) __PYX_ERR(1, 7, __pyx_L1_error)
+ __pyx_tuple__75 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_ierr); if (unlikely(!__pyx_tuple__75)) __PYX_ERR(1, 7, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__75);
+ __Pyx_GIVEREF(__pyx_tuple__75);
+ __pyx_codeobj__76 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__75, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PETSc_Error_pyx, __pyx_n_s_init, 7, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__76)) __PYX_ERR(1, 7, __pyx_L1_error)
/* "PETSc/Error.pyx":11
* RuntimeError.__init__(self, self.ierr)
@@ -245931,10 +266377,10 @@ static int __Pyx_InitCachedConstants(void) {
* cdef int ierr = self.ierr
* return ierr != 0
*/
- __pyx_tuple__70 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_ierr); if (unlikely(!__pyx_tuple__70)) __PYX_ERR(1, 11, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__70);
- __Pyx_GIVEREF(__pyx_tuple__70);
- __pyx_codeobj__71 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__70, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_devel_petsc4py_3_7_0_src_P, __pyx_n_s_nonzero_2, 11, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__71)) __PYX_ERR(1, 11, __pyx_L1_error)
+ __pyx_tuple__77 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_ierr); if (unlikely(!__pyx_tuple__77)) __PYX_ERR(1, 11, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__77);
+ __Pyx_GIVEREF(__pyx_tuple__77);
+ __pyx_codeobj__78 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__77, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PETSc_Error_pyx, __pyx_n_s_nonzero_2, 11, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__78)) __PYX_ERR(1, 11, __pyx_L1_error)
/* "PETSc/Error.pyx":15
* return ierr != 0
@@ -245943,10 +266389,10 @@ static int __Pyx_InitCachedConstants(void) {
* return 'PETSc.Error(%d)' % self.ierr
*
*/
- __pyx_tuple__72 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__72)) __PYX_ERR(1, 15, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__72);
- __Pyx_GIVEREF(__pyx_tuple__72);
- __pyx_codeobj__73 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__72, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_devel_petsc4py_3_7_0_src_P, __pyx_n_s_repr, 15, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__73)) __PYX_ERR(1, 15, __pyx_L1_error)
+ __pyx_tuple__79 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__79)) __PYX_ERR(1, 15, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__79);
+ __Pyx_GIVEREF(__pyx_tuple__79);
+ __pyx_codeobj__80 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__79, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PETSc_Error_pyx, __pyx_n_s_repr, 15, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__80)) __PYX_ERR(1, 15, __pyx_L1_error)
/* "PETSc/Error.pyx":18
* return 'PETSc.Error(%d)' % self.ierr
@@ -245955,31 +266401,559 @@ static int __Pyx_InitCachedConstants(void) {
* cdef int csize=1, crank=0
* if not (<int>PetscFinalizeCalled):
*/
- __pyx_tuple__74 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_csize, __pyx_n_s_crank, __pyx_n_s_width, __pyx_n_s_rank, __pyx_n_s_tblist, __pyx_n_s_entry, __pyx_n_s_tbline); if (unlikely(!__pyx_tuple__74)) __PYX_ERR(1, 18, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__74);
- __Pyx_GIVEREF(__pyx_tuple__74);
- __pyx_codeobj__75 = (PyObject*)__Pyx_PyCode_New(1, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__74, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_devel_petsc4py_3_7_0_src_P, __pyx_n_s_str, 18, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__75)) __PYX_ERR(1, 18, __pyx_L1_error)
+ __pyx_tuple__81 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_csize, __pyx_n_s_crank, __pyx_n_s_width, __pyx_n_s_rank, __pyx_n_s_tblist, __pyx_n_s_entry, __pyx_n_s_tbline); if (unlikely(!__pyx_tuple__81)) __PYX_ERR(1, 18, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__81);
+ __Pyx_GIVEREF(__pyx_tuple__81);
+ __pyx_codeobj__82 = (PyObject*)__Pyx_PyCode_New(1, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__81, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PETSc_Error_pyx, __pyx_n_s_str, 18, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__82)) __PYX_ERR(1, 18, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":417
+ /* "PETSc/Viewer.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class ViewerType(object): # <<<<<<<<<<<<<<
+ * SOCKET = S_(PETSCVIEWERSOCKET)
+ * ASCII = S_(PETSCVIEWERASCII)
+ */
+ __pyx_tuple__83 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__83)) __PYX_ERR(27, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__83);
+ __Pyx_GIVEREF(__pyx_tuple__83);
+
+ /* "PETSc/Viewer.pyx":16
+ * SAWS = S_(PETSCVIEWERSAWS)
+ *
+ * class ViewerFormat(object): # <<<<<<<<<<<<<<
+ * DEFAULT = PETSC_VIEWER_DEFAULT
+ * ASCII_MATLAB = PETSC_VIEWER_ASCII_MATLAB
+ */
+ __pyx_tuple__84 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__84)) __PYX_ERR(27, 16, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__84);
+ __Pyx_GIVEREF(__pyx_tuple__84);
+
+ /* "PETSc/Viewer.pyx":48
+ * NOFORMAT = PETSC_VIEWER_NOFORMAT
+ *
+ * class FileMode(object): # <<<<<<<<<<<<<<
+ * # native
+ * READ = PETSC_FILE_MODE_READ
+ */
+ __pyx_tuple__85 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__85)) __PYX_ERR(27, 48, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__85);
+ __Pyx_GIVEREF(__pyx_tuple__85);
+
+ /* "PETSc/Viewer.pyx":59
+ * AU = UA = APPEND_UPDATE
+ *
+ * class DrawSize(object): # <<<<<<<<<<<<<<
+ * # native
+ * FULL_SIZE = PETSC_DRAW_FULL_SIZE
+ */
+ __pyx_tuple__86 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__86)) __PYX_ERR(27, 59, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__86);
+ __Pyx_GIVEREF(__pyx_tuple__86);
+
+ /* "PETSc/Random.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class RandomType(object): # <<<<<<<<<<<<<<
+ * RAND = S_(PETSCRAND)
+ * RAND48 = S_(PETSCRAND48)
+ */
+ __pyx_tuple__87 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__87)) __PYX_ERR(28, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__87);
+ __Pyx_GIVEREF(__pyx_tuple__87);
+
+ /* "PETSc/IS.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class ISType(object): # <<<<<<<<<<<<<<
+ * GENERAL = S_(ISGENERAL)
+ * BLOCK = S_(ISBLOCK)
+ */
+ __pyx_tuple__88 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__88)) __PYX_ERR(29, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__88);
+ __Pyx_GIVEREF(__pyx_tuple__88);
+
+ /* "PETSc/IS.pyx":343
+ *
+ *
+ * class GLMapMode(object): # <<<<<<<<<<<<<<
+ * MASK = PETSC_IS_GTOLM_MASK
+ * DROP = PETSC_IS_GTOLM_DROP
+ */
+ __pyx_tuple__89 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__89)) __PYX_ERR(29, 343, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__89);
+ __Pyx_GIVEREF(__pyx_tuple__89);
+
+ /* "PETSc/IS.pyx":348
+ *
+ *
+ * class LGMapType(object): # <<<<<<<<<<<<<<
+ * BASIC = S_(ISLOCALTOGLOBALMAPPINGBASIC)
+ * HASH = S_(ISLOCALTOGLOBALMAPPINGHASH)
+ */
+ __pyx_tuple__90 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__90)) __PYX_ERR(29, 348, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__90);
+ __Pyx_GIVEREF(__pyx_tuple__90);
+
+ /* "PETSc/Vec.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class VecType(object): # <<<<<<<<<<<<<<
+ * SEQ = S_(VECSEQ)
+ * MPI = S_(VECMPI)
+ */
+ __pyx_tuple__91 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__91)) __PYX_ERR(30, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__91);
+ __Pyx_GIVEREF(__pyx_tuple__91);
+
+ /* "PETSc/Vec.pyx":19
+ * NEST = S_(VECNEST)
+ *
+ * class VecOption(object): # <<<<<<<<<<<<<<
+ * IGNORE_OFF_PROC_ENTRIES = VEC_IGNORE_OFF_PROC_ENTRIES
+ * IGNORE_NEGATIVE_INDICES = VEC_IGNORE_NEGATIVE_INDICES
+ */
+ __pyx_tuple__92 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__92)) __PYX_ERR(30, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__92);
+ __Pyx_GIVEREF(__pyx_tuple__92);
+
+ /* "PETSc/Mat.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class MatType(object): # <<<<<<<<<<<<<<
+ * SAME = S_(MATSAME)
+ * MAIJ = S_(MATMAIJ)
+ */
+ __pyx_tuple__93 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__93)) __PYX_ERR(33, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__93);
+ __Pyx_GIVEREF(__pyx_tuple__93);
+
+ /* "PETSc/Mat.pyx":60
+ * PREALLOCATOR = S_(MATPREALLOCATOR)
+ *
+ * class MatOption(object): # <<<<<<<<<<<<<<
+ * UNUSED_NONZERO_LOCATION_ERR = MAT_UNUSED_NONZERO_LOCATION_ERR
+ * ROW_ORIENTED = MAT_ROW_ORIENTED
+ */
+ __pyx_tuple__94 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__94)) __PYX_ERR(33, 60, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__94);
+ __Pyx_GIVEREF(__pyx_tuple__94);
+
+ /* "PETSc/Mat.pyx":84
+ * SUBSET_OFF_PROC_ENTRIES = MAT_SUBSET_OFF_PROC_ENTRIES
+ *
+ * class MatAssemblyType(object): # <<<<<<<<<<<<<<
+ * # native
+ * FINAL_ASSEMBLY = MAT_FINAL_ASSEMBLY
+ */
+ __pyx_tuple__95 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__95)) __PYX_ERR(33, 84, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__95);
+ __Pyx_GIVEREF(__pyx_tuple__95);
+
+ /* "PETSc/Mat.pyx":92
+ * FLUSH = FLUSH_ASSEMBLY
+ *
+ * class MatInfoType(object): # <<<<<<<<<<<<<<
+ * LOCAL = MAT_LOCAL
+ * GLOBAL_MAX = MAT_GLOBAL_MAX
+ */
+ __pyx_tuple__96 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__96)) __PYX_ERR(33, 92, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__96);
+ __Pyx_GIVEREF(__pyx_tuple__96);
+
+ /* "PETSc/Mat.pyx":97
+ * GLOBAL_SUM = MAT_GLOBAL_SUM
+ *
+ * class MatStructure(object): # <<<<<<<<<<<<<<
+ * # native
+ * SAME_NONZERO_PATTERN = MAT_SAME_NONZERO_PATTERN
+ */
+ __pyx_tuple__97 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__97)) __PYX_ERR(33, 97, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__97);
+ __Pyx_GIVEREF(__pyx_tuple__97);
+
+ /* "PETSc/Mat.pyx":107
+ * DIFFERENT = DIFFERENT_NZ = DIFFERENT_NONZERO_PATTERN
+ *
+ * class MatOrderingType(object): # <<<<<<<<<<<<<<
+ * NATURAL = S_(MATORDERINGNATURAL)
+ * ND = S_(MATORDERINGND)
+ */
+ __pyx_tuple__98 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__98)) __PYX_ERR(33, 107, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__98);
+ __Pyx_GIVEREF(__pyx_tuple__98);
+
+ /* "PETSc/Mat.pyx":118
+ * AMD = S_(MATORDERINGAMD)
+ *
+ * class MatFactorShiftType(object): # <<<<<<<<<<<<<<
+ * # native
+ * NONE = MAT_SHIFT_NONE
+ */
+ __pyx_tuple__99 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__99)) __PYX_ERR(33, 118, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__99);
+ __Pyx_GIVEREF(__pyx_tuple__99);
+
+ /* "PETSc/Mat.pyx":128
+ * PD = MAT_SHIFT_POSITIVE_DEFINITE
+ *
+ * class MatSORType(object): # <<<<<<<<<<<<<<
+ * FORWARD_SWEEP = SOR_FORWARD_SWEEP
+ * BACKWARD_SWEEP = SOR_BACKWARD_SWEEP
+ */
+ __pyx_tuple__100 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__100)) __PYX_ERR(33, 128, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__100);
+ __Pyx_GIVEREF(__pyx_tuple__100);
+
+ /* "PETSc/PC.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class PCType(object): # <<<<<<<<<<<<<<
+ * # native
+ * NONE = S_(PCNONE)
+ */
+ __pyx_tuple__101 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__101)) __PYX_ERR(34, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__101);
+ __Pyx_GIVEREF(__pyx_tuple__101);
+
+ /* "PETSc/PC.pyx":49
+ * TELESCOPE = S_(PCTELESCOPE)
+ *
+ * class PCSide(object): # <<<<<<<<<<<<<<
+ * # native
+ * LEFT = PC_LEFT
+ */
+ __pyx_tuple__102 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__102)) __PYX_ERR(34, 49, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__102);
+ __Pyx_GIVEREF(__pyx_tuple__102);
+
+ /* "PETSc/PC.pyx":59
+ * S = SYMMETRIC
+ *
+ * class PCASMType(object): # <<<<<<<<<<<<<<
+ * NONE = PC_ASM_NONE
+ * BASIC = PC_ASM_BASIC
+ */
+ __pyx_tuple__103 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__103)) __PYX_ERR(34, 59, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__103);
+ __Pyx_GIVEREF(__pyx_tuple__103);
+
+ /* "PETSc/PC.pyx":65
+ * INTERPOLATE = PC_ASM_INTERPOLATE
+ *
+ * class PCGASMType(object): # <<<<<<<<<<<<<<
+ * NONE = PC_GASM_NONE
+ * BASIC = PC_GASM_BASIC
+ */
+ __pyx_tuple__104 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__104)) __PYX_ERR(34, 65, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__104);
+ __Pyx_GIVEREF(__pyx_tuple__104);
+
+ /* "PETSc/PC.pyx":71
+ * INTERPOLATE = PC_GASM_INTERPOLATE
+ *
+ * class PCMGType(object): # <<<<<<<<<<<<<<
+ * MULTIPLICATIVE = PC_MG_MULTIPLICATIVE
+ * ADDITIVE = PC_MG_ADDITIVE
+ */
+ __pyx_tuple__105 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__105)) __PYX_ERR(34, 71, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__105);
+ __Pyx_GIVEREF(__pyx_tuple__105);
+
+ /* "PETSc/PC.pyx":77
+ * KASKADE = PC_MG_KASKADE
+ *
+ * class PCMGCycleType(object): # <<<<<<<<<<<<<<
+ * V = PC_MG_CYCLE_V
+ * W = PC_MG_CYCLE_W
+ */
+ __pyx_tuple__106 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__106)) __PYX_ERR(34, 77, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__106);
+ __Pyx_GIVEREF(__pyx_tuple__106);
+
+ /* "PETSc/PC.pyx":81
+ * W = PC_MG_CYCLE_W
+ *
+ * class PCGAMGType(object): # <<<<<<<<<<<<<<
+ * AGG = S_(PCGAMGAGG)
+ * GEO = S_(PCGAMGGEO)
+ */
+ __pyx_tuple__107 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__107)) __PYX_ERR(34, 81, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__107);
+ __Pyx_GIVEREF(__pyx_tuple__107);
+
+ /* "PETSc/PC.pyx":86
+ * CLASSICAL = S_(PCGAMGCLASSICAL)
+ *
+ * class PCCompositeType(object): # <<<<<<<<<<<<<<
+ * ADDITIVE = PC_COMPOSITE_ADDITIVE
+ * MULTIPLICATIVE = PC_COMPOSITE_MULTIPLICATIVE
+ */
+ __pyx_tuple__108 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__108)) __PYX_ERR(34, 86, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__108);
+ __Pyx_GIVEREF(__pyx_tuple__108);
+
+ /* "PETSc/PC.pyx":93
+ * SCHUR = PC_COMPOSITE_SCHUR
+ *
+ * class PCFieldSplitSchurPreType(object): # <<<<<<<<<<<<<<
+ * SELF = PC_FIELDSPLIT_SCHUR_PRE_SELF
+ * SELFP = PC_FIELDSPLIT_SCHUR_PRE_SELFP
+ */
+ __pyx_tuple__109 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__109)) __PYX_ERR(34, 93, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__109);
+ __Pyx_GIVEREF(__pyx_tuple__109);
+
+ /* "PETSc/PC.pyx":100
+ * FULL = PC_FIELDSPLIT_SCHUR_PRE_FULL
+ *
+ * class PCFieldSplitSchurFactType(object): # <<<<<<<<<<<<<<
+ * DIAG = PC_FIELDSPLIT_SCHUR_FACT_DIAG
+ * LOWER = PC_FIELDSPLIT_SCHUR_FACT_LOWER
+ */
+ __pyx_tuple__110 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__110)) __PYX_ERR(34, 100, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__110);
+ __Pyx_GIVEREF(__pyx_tuple__110);
+
+ /* "PETSc/KSP.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class KSPType(object): # <<<<<<<<<<<<<<
+ * RICHARDSON = S_(KSPRICHARDSON)
+ * CHEBYSHEV = S_(KSPCHEBYSHEV)
+ */
+ __pyx_tuple__111 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__111)) __PYX_ERR(35, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__111);
+ __Pyx_GIVEREF(__pyx_tuple__111);
+
+ /* "PETSc/KSP.pyx":46
+ * FETIDP = S_(KSPFETIDP)
+ *
+ * class KSPNormType(object): # <<<<<<<<<<<<<<
+ * # native
+ * NORM_DEFAULT = KSP_NORM_DEFAULT
+ */
+ __pyx_tuple__112 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__112)) __PYX_ERR(35, 46, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__112);
+ __Pyx_GIVEREF(__pyx_tuple__112);
+
+ /* "PETSc/KSP.pyx":60
+ * NATURAL = NORM_NATURAL
+ *
+ * class KSPConvergedReason(object): # <<<<<<<<<<<<<<
+ * #iterating
+ * CONVERGED_ITERATING = KSP_CONVERGED_ITERATING
+ */
+ __pyx_tuple__113 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__113)) __PYX_ERR(35, 60, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__113);
+ __Pyx_GIVEREF(__pyx_tuple__113);
+
+ /* "PETSc/SNES.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class SNESType(object): # <<<<<<<<<<<<<<
+ * NEWTONLS = S_(SNESNEWTONLS)
+ * NEWTONTR = S_(SNESNEWTONTR)
+ */
+ __pyx_tuple__114 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__114)) __PYX_ERR(36, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__114);
+ __Pyx_GIVEREF(__pyx_tuple__114);
+
+ /* "PETSc/SNES.pyx":24
+ * COMPOSITE = S_(SNESCOMPOSITE)
+ *
+ * class SNESNormSchedule(object): # <<<<<<<<<<<<<<
+ * # native
+ * NORM_DEFAULT = SNES_NORM_DEFAULT
+ */
+ __pyx_tuple__115 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__115)) __PYX_ERR(36, 24, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__115);
+ __Pyx_GIVEREF(__pyx_tuple__115);
+
+ /* "PETSc/SNES.pyx":40
+ * INITIAL_FINAL_ONLY = NORM_INITIAL_FINAL_ONLY
+ *
+ * class SNESConvergedReason(object): # <<<<<<<<<<<<<<
+ * # iterating
+ * CONVERGED_ITERATING = SNES_CONVERGED_ITERATING
+ */
+ __pyx_tuple__116 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__116)) __PYX_ERR(36, 40, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__116);
+ __Pyx_GIVEREF(__pyx_tuple__116);
+
+ /* "PETSc/TS.pyx":3
+ * # -----------------------------------------------------------------------------
+ *
+ * class TSType(object): # <<<<<<<<<<<<<<
+ * # native
+ * EULER = S_(TSEULER)
+ */
+ __pyx_tuple__117 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__117)) __PYX_ERR(37, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__117);
+ __Pyx_GIVEREF(__pyx_tuple__117);
+
+ /* "PETSc/TS.pyx":29
+ * RUNGE_KUTTA = RK
+ *
+ * class TSRKType(object): # <<<<<<<<<<<<<<
+ * RK1FE = S_(TSRK1FE)
+ * RK2A = S_(TSRK2A)
+ */
+ __pyx_tuple__118 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__118)) __PYX_ERR(37, 29, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__118);
+ __Pyx_GIVEREF(__pyx_tuple__118);
+
+ /* "PETSc/TS.pyx":39
+ * RK5BS = S_(TSRK5BS)
+ *
+ * class TSProblemType(object): # <<<<<<<<<<<<<<
+ * LINEAR = TS_LINEAR
+ * NONLINEAR = TS_NONLINEAR
+ */
+ __pyx_tuple__119 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__119)) __PYX_ERR(37, 39, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__119);
+ __Pyx_GIVEREF(__pyx_tuple__119);
+
+ /* "PETSc/TS.pyx":43
+ * NONLINEAR = TS_NONLINEAR
+ *
+ * class TSEquationType(object): # <<<<<<<<<<<<<<
+ * UNSPECIFIED = TS_EQ_UNSPECIFIED
+ * EXPLICIT = TS_EQ_EXPLICIT
+ */
+ __pyx_tuple__120 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__120)) __PYX_ERR(37, 43, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__120);
+ __Pyx_GIVEREF(__pyx_tuple__120);
+
+ /* "PETSc/TS.pyx":58
+ * DAE_IMPLICIT_INDEXHI = TS_EQ_DAE_IMPLICIT_INDEXHI
+ *
+ * class TSExactFinalTime(object): # <<<<<<<<<<<<<<
+ * UNSPECIFIED = TS_EXACTFINALTIME_UNSPECIFIED
+ * STEPOVER = TS_EXACTFINALTIME_STEPOVER
+ */
+ __pyx_tuple__121 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__121)) __PYX_ERR(37, 58, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__121);
+ __Pyx_GIVEREF(__pyx_tuple__121);
+
+ /* "PETSc/TS.pyx":64
+ * MATCHSTEP = TS_EXACTFINALTIME_MATCHSTEP
+ *
+ * class TSConvergedReason(object): # <<<<<<<<<<<<<<
+ * # iterating
+ * CONVERGED_ITERATING = TS_CONVERGED_ITERATING
+ */
+ __pyx_tuple__122 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__122)) __PYX_ERR(37, 64, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__122);
+ __Pyx_GIVEREF(__pyx_tuple__122);
+
+ /* "PETSc/AO.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class AOType(object): # <<<<<<<<<<<<<<
+ * BASIC = S_(AOBASIC)
+ * ADVANCED = S_(AOADVANCED)
+ */
+ __pyx_tuple__123 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__123)) __PYX_ERR(39, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__123);
+ __Pyx_GIVEREF(__pyx_tuple__123);
+
+ /* "PETSc/DM.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class DMType(object): # <<<<<<<<<<<<<<
+ * DA = S_(DMDA_type)
+ * COMPOSITE = S_(DMCOMPOSITE)
+ */
+ __pyx_tuple__124 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__124)) __PYX_ERR(40, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__124);
+ __Pyx_GIVEREF(__pyx_tuple__124);
+
+ /* "PETSc/DM.pyx":15
+ * NETWORK = S_(DMNETWORK)
+ *
+ * class DMBoundaryType(object): # <<<<<<<<<<<<<<
+ * NONE = DM_BOUNDARY_NONE
+ * GHOSTED = DM_BOUNDARY_GHOSTED
+ */
+ __pyx_tuple__125 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__125)) __PYX_ERR(40, 15, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__125);
+ __Pyx_GIVEREF(__pyx_tuple__125);
+
+ /* "PETSc/DMDA.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class DMDAStencilType(object): # <<<<<<<<<<<<<<
+ * STAR = DMDA_STENCIL_STAR
+ * BOX = DMDA_STENCIL_BOX
+ */
+ __pyx_tuple__126 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__126)) __PYX_ERR(41, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__126);
+ __Pyx_GIVEREF(__pyx_tuple__126);
+
+ /* "PETSc/DMDA.pyx":7
+ * BOX = DMDA_STENCIL_BOX
+ *
+ * class DMDAInterpolationType(object): # <<<<<<<<<<<<<<
+ * Q0 = DMDA_INTERPOLATION_Q0
+ * Q1 = DMDA_INTERPOLATION_Q1
+ */
+ __pyx_tuple__127 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__127)) __PYX_ERR(41, 7, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__127);
+ __Pyx_GIVEREF(__pyx_tuple__127);
+
+ /* "PETSc/DMDA.pyx":11
+ * Q1 = DMDA_INTERPOLATION_Q1
+ *
+ * class DMDAElementType(object): # <<<<<<<<<<<<<<
+ * P1 = DMDA_ELEMENT_P1
+ * Q1 = DMDA_ELEMENT_Q1
+ */
+ __pyx_tuple__128 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__128)) __PYX_ERR(41, 11, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__128);
+ __Pyx_GIVEREF(__pyx_tuple__128);
+
+ /* "PETSc/SF.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class SFType(object): # <<<<<<<<<<<<<<
+ * BASIC = S_(PETSCSFBASIC)
+ * WINDOW = S_(PETSCSFWINDOW)
+ */
+ __pyx_tuple__129 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__129)) __PYX_ERR(45, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__129);
+ __Pyx_GIVEREF(__pyx_tuple__129);
+
+ /* "PETSc/Partitioner.pyx":3
+ * # --------------------------------------------------------------------
+ *
+ * class PartitionerType(object): # <<<<<<<<<<<<<<
+ * CHACO = S_(PETSCPARTITIONERCHACO)
+ * PARMETIS = S_(PETSCPARTITIONERPARMETIS)
+ */
+ __pyx_tuple__130 = PyTuple_Pack(1, __pyx_builtin_object); if (unlikely(!__pyx_tuple__130)) __PYX_ERR(46, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__130);
+ __Pyx_GIVEREF(__pyx_tuple__130);
+
+ /* "PETSc/PETSc.pyx":421
* # --------------------------------------------------------------------
*
* def _initialize(args=None, comm=None): # <<<<<<<<<<<<<<
* global tracebacklist
* Error._traceback_ = tracebacklist
*/
- __pyx_tuple__76 = PyTuple_Pack(3, __pyx_n_s_args, __pyx_n_s_comm, __pyx_n_s_ready); if (unlikely(!__pyx_tuple__76)) __PYX_ERR(11, 417, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_tuple__76);
- __Pyx_GIVEREF(__pyx_tuple__76);
- __pyx_codeobj__77 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__76, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_devel_petsc4py_3_7_0_src_P_2, __pyx_n_s_initialize, 417, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__77)) __PYX_ERR(11, 417, __pyx_L1_error)
+ __pyx_tuple__131 = PyTuple_Pack(3, __pyx_n_s_args, __pyx_n_s_comm, __pyx_n_s_ready); if (unlikely(!__pyx_tuple__131)) __PYX_ERR(11, 421, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_tuple__131);
+ __Pyx_GIVEREF(__pyx_tuple__131);
+ __pyx_codeobj__132 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__131, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PETSc_PETSc_pyx, __pyx_n_s_initialize, 421, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__132)) __PYX_ERR(11, 421, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":433
+ /* "PETSc/PETSc.pyx":437
* PETSC_COMM_DEFAULT = PETSC_COMM_WORLD
*
* def _finalize(): # <<<<<<<<<<<<<<
* finalize()
* #
*/
- __pyx_codeobj__78 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_home_devel_petsc4py_3_7_0_src_P_2, __pyx_n_s_finalize, 433, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__78)) __PYX_ERR(11, 433, __pyx_L1_error)
+ __pyx_codeobj__133 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_PETSc_PETSc_pyx, __pyx_n_s_finalize, 437, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__133)) __PYX_ERR(11, 437, __pyx_L1_error)
__Pyx_RefNannyFinishContext();
return 0;
__pyx_L1_error:;
@@ -246009,6 +266983,47 @@ PyMODINIT_FUNC initPETSc(void)
#else
PyMODINIT_FUNC PyInit_PETSc(void); /*proto*/
PyMODINIT_FUNC PyInit_PETSc(void)
+#if CYTHON_PEP489_MULTI_PHASE_INIT
+{
+ return PyModuleDef_Init(&__pyx_moduledef);
+}
+static int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name) {
+ PyObject *value = PyObject_GetAttrString(spec, from_name);
+ int result = 0;
+ if (likely(value)) {
+ result = PyDict_SetItemString(moddict, to_name, value);
+ Py_DECREF(value);
+ } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
+ PyErr_Clear();
+ } else {
+ result = -1;
+ }
+ return result;
+}
+static PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) {
+ PyObject *module = NULL, *moddict, *modname;
+ if (__pyx_m)
+ return __Pyx_NewRef(__pyx_m);
+ modname = PyObject_GetAttrString(spec, "name");
+ if (unlikely(!modname)) goto bad;
+ module = PyModule_NewObject(modname);
+ Py_DECREF(modname);
+ if (unlikely(!module)) goto bad;
+ moddict = PyModule_GetDict(module);
+ if (unlikely(!moddict)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__") < 0)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__") < 0)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__") < 0)) goto bad;
+ if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__") < 0)) goto bad;
+ return module;
+bad:
+ Py_XDECREF(module);
+ return NULL;
+}
+
+
+static int __pyx_pymod_exec_PETSc(PyObject *__pyx_pyinit_module)
+#endif
#endif
{
PyObject *__pyx_t_1 = NULL;
@@ -246018,8 +267033,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
PyObject *__pyx_t_5 = NULL;
PyObject *__pyx_t_6 = NULL;
PyObject *__pyx_t_7 = NULL;
- PyObject *__pyx_t_8 = NULL;
__Pyx_RefNannyDeclarations
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ if (__pyx_m && __pyx_m == __pyx_pyinit_module) return 0;
+ #endif
#if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
@@ -246046,6 +267063,9 @@ PyMODINIT_FUNC PyInit_PETSc(void)
#ifdef __Pyx_Generator_USED
if (__pyx_Generator_init() < 0) __PYX_ERR(48, 1, __pyx_L1_error)
#endif
+ #ifdef __Pyx_AsyncGen_USED
+ if (__pyx_AsyncGen_init() < 0) __PYX_ERR(48, 1, __pyx_L1_error)
+ #endif
#ifdef __Pyx_StopAsyncIteration_USED
if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(48, 1, __pyx_L1_error)
#endif
@@ -246057,15 +267077,21 @@ PyMODINIT_FUNC PyInit_PETSc(void)
#endif
#endif
/*--- Module creation code ---*/
+ #if CYTHON_PEP489_MULTI_PHASE_INIT
+ __pyx_m = __pyx_pyinit_module;
+ Py_INCREF(__pyx_m);
+ #else
#if PY_MAJOR_VERSION < 3
__pyx_m = Py_InitModule4("PETSc", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m);
#else
__pyx_m = PyModule_Create(&__pyx_moduledef);
#endif
if (unlikely(!__pyx_m)) __PYX_ERR(48, 1, __pyx_L1_error)
+ #endif
__pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(48, 1, __pyx_L1_error)
Py_INCREF(__pyx_d);
__pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(48, 1, __pyx_L1_error)
+ __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(48, 1, __pyx_L1_error)
#if CYTHON_COMPILING_IN_PYPY
Py_INCREF(__pyx_b);
#endif
@@ -246166,10 +267192,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__pyx_vtabptr_8petsc4py_5PETSc_Viewer = &__pyx_vtable_8petsc4py_5PETSc_Viewer;
__pyx_vtable_8petsc4py_5PETSc_Viewer.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Object;
PyPetscViewer_Type.tp_base = __pyx_ptype_8petsc4py_5PETSc_Object;
- if (PyType_Ready(&PyPetscViewer_Type) < 0) __PYX_ERR(27, 74, __pyx_L1_error)
+ if (PyType_Ready(&PyPetscViewer_Type) < 0) __PYX_ERR(27, 73, __pyx_L1_error)
PyPetscViewer_Type.tp_print = 0;
- if (__Pyx_SetVtable(PyPetscViewer_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_Viewer) < 0) __PYX_ERR(27, 74, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "Viewer", (PyObject *)&PyPetscViewer_Type) < 0) __PYX_ERR(27, 74, __pyx_L1_error)
+ if (__Pyx_SetVtable(PyPetscViewer_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_Viewer) < 0) __PYX_ERR(27, 73, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "Viewer", (PyObject *)&PyPetscViewer_Type) < 0) __PYX_ERR(27, 73, __pyx_L1_error)
if (PyPetscViewer_Type.tp_weaklistoffset == 0) PyPetscViewer_Type.tp_weaklistoffset = offsetof(struct PyPetscViewerObject, __pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_Viewer = &PyPetscViewer_Type;
__pyx_vtabptr_8petsc4py_5PETSc_Random = &__pyx_vtable_8petsc4py_5PETSc_Random;
@@ -246193,10 +267219,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__pyx_vtabptr_8petsc4py_5PETSc_LGMap = &__pyx_vtable_8petsc4py_5PETSc_LGMap;
__pyx_vtable_8petsc4py_5PETSc_LGMap.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Object;
PyPetscLGMap_Type.tp_base = __pyx_ptype_8petsc4py_5PETSc_Object;
- if (PyType_Ready(&PyPetscLGMap_Type) < 0) __PYX_ERR(29, 350, __pyx_L1_error)
+ if (PyType_Ready(&PyPetscLGMap_Type) < 0) __PYX_ERR(29, 355, __pyx_L1_error)
PyPetscLGMap_Type.tp_print = 0;
- if (__Pyx_SetVtable(PyPetscLGMap_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_LGMap) < 0) __PYX_ERR(29, 350, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "LGMap", (PyObject *)&PyPetscLGMap_Type) < 0) __PYX_ERR(29, 350, __pyx_L1_error)
+ if (__Pyx_SetVtable(PyPetscLGMap_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_LGMap) < 0) __PYX_ERR(29, 355, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "LGMap", (PyObject *)&PyPetscLGMap_Type) < 0) __PYX_ERR(29, 355, __pyx_L1_error)
if (PyPetscLGMap_Type.tp_weaklistoffset == 0) PyPetscLGMap_Type.tp_weaklistoffset = offsetof(struct PyPetscLGMapObject, __pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_LGMap = &PyPetscLGMap_Type;
__pyx_vtabptr_8petsc4py_5PETSc_SF = &__pyx_vtable_8petsc4py_5PETSc_SF;
@@ -246238,37 +267264,37 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__pyx_vtabptr_8petsc4py_5PETSc_Mat = &__pyx_vtable_8petsc4py_5PETSc_Mat;
__pyx_vtable_8petsc4py_5PETSc_Mat.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Object;
PyPetscMat_Type.tp_base = __pyx_ptype_8petsc4py_5PETSc_Object;
- if (PyType_Ready(&PyPetscMat_Type) < 0) __PYX_ERR(33, 148, __pyx_L1_error)
+ if (PyType_Ready(&PyPetscMat_Type) < 0) __PYX_ERR(33, 142, __pyx_L1_error)
PyPetscMat_Type.tp_print = 0;
- if (__Pyx_SetVtable(PyPetscMat_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_Mat) < 0) __PYX_ERR(33, 148, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "Mat", (PyObject *)&PyPetscMat_Type) < 0) __PYX_ERR(33, 148, __pyx_L1_error)
+ if (__Pyx_SetVtable(PyPetscMat_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_Mat) < 0) __PYX_ERR(33, 142, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "Mat", (PyObject *)&PyPetscMat_Type) < 0) __PYX_ERR(33, 142, __pyx_L1_error)
if (PyPetscMat_Type.tp_weaklistoffset == 0) PyPetscMat_Type.tp_weaklistoffset = offsetof(struct PyPetscMatObject, __pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_Mat = &PyPetscMat_Type;
__pyx_vtabptr_8petsc4py_5PETSc_NullSpace = &__pyx_vtable_8petsc4py_5PETSc_NullSpace;
__pyx_vtable_8petsc4py_5PETSc_NullSpace.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Object;
PyPetscNullSpace_Type.tp_base = __pyx_ptype_8petsc4py_5PETSc_Object;
- if (PyType_Ready(&PyPetscNullSpace_Type) < 0) __PYX_ERR(33, 1461, __pyx_L1_error)
+ if (PyType_Ready(&PyPetscNullSpace_Type) < 0) __PYX_ERR(33, 1504, __pyx_L1_error)
PyPetscNullSpace_Type.tp_print = 0;
- if (__Pyx_SetVtable(PyPetscNullSpace_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_NullSpace) < 0) __PYX_ERR(33, 1461, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "NullSpace", (PyObject *)&PyPetscNullSpace_Type) < 0) __PYX_ERR(33, 1461, __pyx_L1_error)
+ if (__Pyx_SetVtable(PyPetscNullSpace_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_NullSpace) < 0) __PYX_ERR(33, 1504, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "NullSpace", (PyObject *)&PyPetscNullSpace_Type) < 0) __PYX_ERR(33, 1504, __pyx_L1_error)
if (PyPetscNullSpace_Type.tp_weaklistoffset == 0) PyPetscNullSpace_Type.tp_weaklistoffset = offsetof(struct PyPetscNullSpaceObject, __pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_NullSpace = &PyPetscNullSpace_Type;
__pyx_vtabptr_8petsc4py_5PETSc_PC = &__pyx_vtable_8petsc4py_5PETSc_PC;
__pyx_vtable_8petsc4py_5PETSc_PC.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Object;
PyPetscPC_Type.tp_base = __pyx_ptype_8petsc4py_5PETSc_Object;
- if (PyType_Ready(&PyPetscPC_Type) < 0) __PYX_ERR(34, 104, __pyx_L1_error)
+ if (PyType_Ready(&PyPetscPC_Type) < 0) __PYX_ERR(34, 108, __pyx_L1_error)
PyPetscPC_Type.tp_print = 0;
- if (__Pyx_SetVtable(PyPetscPC_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_PC) < 0) __PYX_ERR(34, 104, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "PC", (PyObject *)&PyPetscPC_Type) < 0) __PYX_ERR(34, 104, __pyx_L1_error)
+ if (__Pyx_SetVtable(PyPetscPC_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_PC) < 0) __PYX_ERR(34, 108, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "PC", (PyObject *)&PyPetscPC_Type) < 0) __PYX_ERR(34, 108, __pyx_L1_error)
if (PyPetscPC_Type.tp_weaklistoffset == 0) PyPetscPC_Type.tp_weaklistoffset = offsetof(struct PyPetscPCObject, __pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_PC = &PyPetscPC_Type;
__pyx_vtabptr_8petsc4py_5PETSc_KSP = &__pyx_vtable_8petsc4py_5PETSc_KSP;
__pyx_vtable_8petsc4py_5PETSc_KSP.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Object;
PyPetscKSP_Type.tp_base = __pyx_ptype_8petsc4py_5PETSc_Object;
- if (PyType_Ready(&PyPetscKSP_Type) < 0) __PYX_ERR(35, 86, __pyx_L1_error)
+ if (PyType_Ready(&PyPetscKSP_Type) < 0) __PYX_ERR(35, 87, __pyx_L1_error)
PyPetscKSP_Type.tp_print = 0;
- if (__Pyx_SetVtable(PyPetscKSP_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_KSP) < 0) __PYX_ERR(35, 86, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "KSP", (PyObject *)&PyPetscKSP_Type) < 0) __PYX_ERR(35, 86, __pyx_L1_error)
+ if (__Pyx_SetVtable(PyPetscKSP_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_KSP) < 0) __PYX_ERR(35, 87, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "KSP", (PyObject *)&PyPetscKSP_Type) < 0) __PYX_ERR(35, 87, __pyx_L1_error)
if (PyPetscKSP_Type.tp_weaklistoffset == 0) PyPetscKSP_Type.tp_weaklistoffset = offsetof(struct PyPetscKSPObject, __pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_KSP = &PyPetscKSP_Type;
__pyx_vtabptr_8petsc4py_5PETSc_SNES = &__pyx_vtable_8petsc4py_5PETSc_SNES;
@@ -246283,10 +267309,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__pyx_vtabptr_8petsc4py_5PETSc_TS = &__pyx_vtable_8petsc4py_5PETSc_TS;
__pyx_vtable_8petsc4py_5PETSc_TS.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Object;
PyPetscTS_Type.tp_base = __pyx_ptype_8petsc4py_5PETSc_Object;
- if (PyType_Ready(&PyPetscTS_Type) < 0) __PYX_ERR(37, 69, __pyx_L1_error)
+ if (PyType_Ready(&PyPetscTS_Type) < 0) __PYX_ERR(37, 79, __pyx_L1_error)
PyPetscTS_Type.tp_print = 0;
- if (__Pyx_SetVtable(PyPetscTS_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_TS) < 0) __PYX_ERR(37, 69, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "TS", (PyObject *)&PyPetscTS_Type) < 0) __PYX_ERR(37, 69, __pyx_L1_error)
+ if (__Pyx_SetVtable(PyPetscTS_Type.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_TS) < 0) __PYX_ERR(37, 79, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "TS", (PyObject *)&PyPetscTS_Type) < 0) __PYX_ERR(37, 79, __pyx_L1_error)
if (PyPetscTS_Type.tp_weaklistoffset == 0) PyPetscTS_Type.tp_weaklistoffset = offsetof(struct PyPetscTSObject, __pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_TS = &PyPetscTS_Type;
__pyx_vtabptr_8petsc4py_5PETSc_TAO = &__pyx_vtable_8petsc4py_5PETSc_TAO;
@@ -246335,10 +267361,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__pyx_vtable_8petsc4py_5PETSc__IS_buffer.enter = (PyObject *(*)(struct __pyx_obj_8petsc4py_5PETSc__IS_buffer *))__pyx_f_8petsc4py_5PETSc_10_IS_buffer_enter;
__pyx_vtable_8petsc4py_5PETSc__IS_buffer.exit = (PyObject *(*)(struct __pyx_obj_8petsc4py_5PETSc__IS_buffer *))__pyx_f_8petsc4py_5PETSc_10_IS_buffer_exit;
__pyx_vtable_8petsc4py_5PETSc__IS_buffer.getbuffer = (Py_ssize_t (*)(struct __pyx_obj_8petsc4py_5PETSc__IS_buffer *, void **))__pyx_f_8petsc4py_5PETSc_10_IS_buffer_getbuffer;
- if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__IS_buffer) < 0) __PYX_ERR(4, 113, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__IS_buffer) < 0) __PYX_ERR(4, 119, __pyx_L1_error)
__pyx_type_8petsc4py_5PETSc__IS_buffer.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_8petsc4py_5PETSc__IS_buffer.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc__IS_buffer) < 0) __PYX_ERR(4, 113, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "_IS_buffer", (PyObject *)&__pyx_type_8petsc4py_5PETSc__IS_buffer) < 0) __PYX_ERR(4, 113, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_8petsc4py_5PETSc__IS_buffer.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc__IS_buffer) < 0) __PYX_ERR(4, 119, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "_IS_buffer", (PyObject *)&__pyx_type_8petsc4py_5PETSc__IS_buffer) < 0) __PYX_ERR(4, 119, __pyx_L1_error)
__pyx_ptype_8petsc4py_5PETSc__IS_buffer = &__pyx_type_8petsc4py_5PETSc__IS_buffer;
__pyx_vtabptr_8petsc4py_5PETSc__Vec_buffer = &__pyx_vtable_8petsc4py_5PETSc__Vec_buffer;
__pyx_vtable_8petsc4py_5PETSc__Vec_buffer.acquire = (int (*)(struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *))__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_acquire;
@@ -246348,18 +267374,18 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__pyx_vtable_8petsc4py_5PETSc__Vec_buffer.enter = (PyObject *(*)(struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *))__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_enter;
__pyx_vtable_8petsc4py_5PETSc__Vec_buffer.exit = (PyObject *(*)(struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *))__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_exit;
__pyx_vtable_8petsc4py_5PETSc__Vec_buffer.getbuffer = (Py_ssize_t (*)(struct __pyx_obj_8petsc4py_5PETSc__Vec_buffer *, void **))__pyx_f_8petsc4py_5PETSc_11_Vec_buffer_getbuffer;
- if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__Vec_buffer) < 0) __PYX_ERR(5, 413, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__Vec_buffer) < 0) __PYX_ERR(5, 414, __pyx_L1_error)
__pyx_type_8petsc4py_5PETSc__Vec_buffer.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_8petsc4py_5PETSc__Vec_buffer.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc__Vec_buffer) < 0) __PYX_ERR(5, 413, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "_Vec_buffer", (PyObject *)&__pyx_type_8petsc4py_5PETSc__Vec_buffer) < 0) __PYX_ERR(5, 413, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_8petsc4py_5PETSc__Vec_buffer.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc__Vec_buffer) < 0) __PYX_ERR(5, 414, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "_Vec_buffer", (PyObject *)&__pyx_type_8petsc4py_5PETSc__Vec_buffer) < 0) __PYX_ERR(5, 414, __pyx_L1_error)
__pyx_ptype_8petsc4py_5PETSc__Vec_buffer = &__pyx_type_8petsc4py_5PETSc__Vec_buffer;
- if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__Vec_LocalForm) < 0) __PYX_ERR(5, 533, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__Vec_LocalForm) < 0) __PYX_ERR(5, 534, __pyx_L1_error)
__pyx_type_8petsc4py_5PETSc__Vec_LocalForm.tp_print = 0;
- if (PyObject_SetAttrString(__pyx_m, "_Vec_LocalForm", (PyObject *)&__pyx_type_8petsc4py_5PETSc__Vec_LocalForm) < 0) __PYX_ERR(5, 533, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "_Vec_LocalForm", (PyObject *)&__pyx_type_8petsc4py_5PETSc__Vec_LocalForm) < 0) __PYX_ERR(5, 534, __pyx_L1_error)
__pyx_ptype_8petsc4py_5PETSc__Vec_LocalForm = &__pyx_type_8petsc4py_5PETSc__Vec_LocalForm;
- if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__Mat_Stencil) < 0) __PYX_ERR(6, 1017, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc__Mat_Stencil) < 0) __PYX_ERR(6, 1023, __pyx_L1_error)
__pyx_type_8petsc4py_5PETSc__Mat_Stencil.tp_print = 0;
- if (PyObject_SetAttrString(__pyx_m, "_Mat_Stencil", (PyObject *)&__pyx_type_8petsc4py_5PETSc__Mat_Stencil) < 0) __PYX_ERR(6, 1017, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "_Mat_Stencil", (PyObject *)&__pyx_type_8petsc4py_5PETSc__Mat_Stencil) < 0) __PYX_ERR(6, 1023, __pyx_L1_error)
__pyx_ptype_8petsc4py_5PETSc__Mat_Stencil = &__pyx_type_8petsc4py_5PETSc__Mat_Stencil;
__pyx_vtabptr_8petsc4py_5PETSc__DMDA_Vec_array = &__pyx_vtable_8petsc4py_5PETSc__DMDA_Vec_array;
__pyx_vtable_8petsc4py_5PETSc__DMDA_Vec_array.acquire = (int (*)(struct __pyx_obj_8petsc4py_5PETSc__DMDA_Vec_array *))__pyx_f_8petsc4py_5PETSc_15_DMDA_Vec_array_acquire;
@@ -246400,10 +267426,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__pyx_vtabptr_8petsc4py_5PETSc_ViewerHDF5 = &__pyx_vtable_8petsc4py_5PETSc_ViewerHDF5;
__pyx_vtable_8petsc4py_5PETSc_ViewerHDF5.__pyx_base = *__pyx_vtabptr_8petsc4py_5PETSc_Viewer;
__pyx_type_8petsc4py_5PETSc_ViewerHDF5.tp_base = __pyx_ptype_8petsc4py_5PETSc_Viewer;
- if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc_ViewerHDF5) < 0) __PYX_ERR(27, 322, __pyx_L1_error)
+ if (PyType_Ready(&__pyx_type_8petsc4py_5PETSc_ViewerHDF5) < 0) __PYX_ERR(27, 353, __pyx_L1_error)
__pyx_type_8petsc4py_5PETSc_ViewerHDF5.tp_print = 0;
- if (__Pyx_SetVtable(__pyx_type_8petsc4py_5PETSc_ViewerHDF5.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_ViewerHDF5) < 0) __PYX_ERR(27, 322, __pyx_L1_error)
- if (PyObject_SetAttrString(__pyx_m, "ViewerHDF5", (PyObject *)&__pyx_type_8petsc4py_5PETSc_ViewerHDF5) < 0) __PYX_ERR(27, 322, __pyx_L1_error)
+ if (__Pyx_SetVtable(__pyx_type_8petsc4py_5PETSc_ViewerHDF5.tp_dict, __pyx_vtabptr_8petsc4py_5PETSc_ViewerHDF5) < 0) __PYX_ERR(27, 353, __pyx_L1_error)
+ if (PyObject_SetAttrString(__pyx_m, "ViewerHDF5", (PyObject *)&__pyx_type_8petsc4py_5PETSc_ViewerHDF5) < 0) __PYX_ERR(27, 353, __pyx_L1_error)
if (__pyx_type_8petsc4py_5PETSc_ViewerHDF5.tp_weaklistoffset == 0) __pyx_type_8petsc4py_5PETSc_ViewerHDF5.tp_weaklistoffset = offsetof(struct __pyx_obj_8petsc4py_5PETSc_ViewerHDF5, __pyx_base.__pyx_base.__weakref__);
__pyx_ptype_8petsc4py_5PETSc_ViewerHDF5 = &__pyx_type_8petsc4py_5PETSc_ViewerHDF5;
__pyx_vtabptr_8petsc4py_5PETSc_DMDA = &__pyx_vtable_8petsc4py_5PETSc_DMDA;
@@ -246464,71 +267490,71 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__Pyx_GIVEREF(__pyx_t_1);
__pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":106
+ /* "PETSc/PETSc.pyx":109
* include "arraynpy.pxi"
*
* import_array() # <<<<<<<<<<<<<<
*
* IntType = PyArray_TypeObjectFromType(NPY_PETSC_INT)
*/
- __pyx_t_2 = _import_array(); if (unlikely(__pyx_t_2 == -1)) __PYX_ERR(11, 106, __pyx_L1_error)
+ __pyx_t_2 = _import_array(); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(11, 109, __pyx_L1_error)
- /* "PETSc/PETSc.pyx":108
+ /* "PETSc/PETSc.pyx":111
* import_array()
*
* IntType = PyArray_TypeObjectFromType(NPY_PETSC_INT) # <<<<<<<<<<<<<<
* RealType = PyArray_TypeObjectFromType(NPY_PETSC_REAL)
* ScalarType = PyArray_TypeObjectFromType(NPY_PETSC_SCALAR)
*/
- __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_INT); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 108, __pyx_L1_error)
+ __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_INT); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 111, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_IntType, __pyx_t_1) < 0) __PYX_ERR(11, 108, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_IntType, __pyx_t_1) < 0) __PYX_ERR(11, 111, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":109
+ /* "PETSc/PETSc.pyx":112
*
* IntType = PyArray_TypeObjectFromType(NPY_PETSC_INT)
* RealType = PyArray_TypeObjectFromType(NPY_PETSC_REAL) # <<<<<<<<<<<<<<
* ScalarType = PyArray_TypeObjectFromType(NPY_PETSC_SCALAR)
* ComplexType = PyArray_TypeObjectFromType(NPY_PETSC_COMPLEX)
*/
- __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_REAL); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 109, __pyx_L1_error)
+ __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_REAL); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 112, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_RealType, __pyx_t_1) < 0) __PYX_ERR(11, 109, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_RealType, __pyx_t_1) < 0) __PYX_ERR(11, 112, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":110
+ /* "PETSc/PETSc.pyx":113
* IntType = PyArray_TypeObjectFromType(NPY_PETSC_INT)
* RealType = PyArray_TypeObjectFromType(NPY_PETSC_REAL)
* ScalarType = PyArray_TypeObjectFromType(NPY_PETSC_SCALAR) # <<<<<<<<<<<<<<
* ComplexType = PyArray_TypeObjectFromType(NPY_PETSC_COMPLEX)
*
*/
- __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_SCALAR); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 110, __pyx_L1_error)
+ __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_SCALAR); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 113, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_ScalarType, __pyx_t_1) < 0) __PYX_ERR(11, 110, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_ScalarType, __pyx_t_1) < 0) __PYX_ERR(11, 113, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":111
+ /* "PETSc/PETSc.pyx":114
* RealType = PyArray_TypeObjectFromType(NPY_PETSC_REAL)
* ScalarType = PyArray_TypeObjectFromType(NPY_PETSC_SCALAR)
* ComplexType = PyArray_TypeObjectFromType(NPY_PETSC_COMPLEX) # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_COMPLEX); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 111, __pyx_L1_error)
+ __pyx_t_1 = PyArray_TypeObjectFromType(NPY_PETSC_COMPLEX); if (unlikely(!__pyx_t_1)) __PYX_ERR(11, 114, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_ComplexType, __pyx_t_1) < 0) __PYX_ERR(11, 111, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_ComplexType, __pyx_t_1) < 0) __PYX_ERR(11, 114, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/PETSc.pyx":145
+ /* "PETSc/PETSc.pyx":149
* # --------------------------------------------------------------------
*
* __doc__ = u""" # <<<<<<<<<<<<<<
* Portable, Extensible Toolkit for Scientific Computation
* """
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_doc, __pyx_kp_u_Portable_Extensible_Toolkit_for) < 0) __PYX_ERR(11, 145, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_doc, __pyx_kp_u_Portable_Extensible_Toolkit_for) < 0) __PYX_ERR(11, 149, __pyx_L1_error)
/* "PETSc/Const.pyx":3
* # --------------------------------------------------------------------
@@ -246609,15 +267635,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # native
* NOT_SET_VALUES = PETSC_NOT_SET_VALUES
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__71); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__71, __pyx_n_s_InsertMode, __pyx_n_s_InsertMode, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_InsertMode, __pyx_n_s_InsertMode, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
/* "PETSc/Const.pyx":17
* class InsertMode(object):
@@ -246626,10 +267647,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* INSERT_VALUES = PETSC_INSERT_VALUES
* ADD_VALUES = PETSC_ADD_VALUES
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(NOT_SET_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 17, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NOT_SET_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 17, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(NOT_SET_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 17, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_NOT_SET_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 17, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":18
* # native
@@ -246638,10 +267659,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* ADD_VALUES = PETSC_ADD_VALUES
* MAX_VALUES = PETSC_MAX_VALUES
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(INSERT_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 18, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INSERT_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 18, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(INSERT_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 18, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INSERT_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 18, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":19
* NOT_SET_VALUES = PETSC_NOT_SET_VALUES
@@ -246650,10 +267671,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* MAX_VALUES = PETSC_MAX_VALUES
* INSERT_ALL_VALUES = PETSC_INSERT_ALL_VALUES
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(ADD_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 19, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ADD_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 19, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(ADD_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ADD_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 19, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":20
* INSERT_VALUES = PETSC_INSERT_VALUES
@@ -246662,10 +267683,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* INSERT_ALL_VALUES = PETSC_INSERT_ALL_VALUES
* ADD_ALL_VALUES = PETSC_ADD_ALL_VALUES
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(MAX_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 20, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_MAX_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 20, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(MAX_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 20, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_MAX_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 20, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":21
* ADD_VALUES = PETSC_ADD_VALUES
@@ -246674,10 +267695,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* ADD_ALL_VALUES = PETSC_ADD_ALL_VALUES
* INSERT_BC_VALUES = PETSC_INSERT_BC_VALUES
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(INSERT_ALL_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 21, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INSERT_ALL_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 21, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(INSERT_ALL_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INSERT_ALL_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 21, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":22
* MAX_VALUES = PETSC_MAX_VALUES
@@ -246686,10 +267707,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* INSERT_BC_VALUES = PETSC_INSERT_BC_VALUES
* ADD_BC_VALUES = PETSC_ADD_BC_VALUES
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(ADD_ALL_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 22, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ADD_ALL_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 22, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(ADD_ALL_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 22, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ADD_ALL_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 22, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":23
* INSERT_ALL_VALUES = PETSC_INSERT_ALL_VALUES
@@ -246698,10 +267719,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* ADD_BC_VALUES = PETSC_ADD_BC_VALUES
* # aliases
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(INSERT_BC_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 23, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INSERT_BC_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 23, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(INSERT_BC_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 23, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INSERT_BC_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 23, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":24
* ADD_ALL_VALUES = PETSC_ADD_ALL_VALUES
@@ -246710,10 +267731,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # aliases
* INSERT = INSERT_VALUES
*/
- __pyx_t_5 = __Pyx_PyInt_From_InsertMode(ADD_BC_VALUES); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 24, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ADD_BC_VALUES, __pyx_t_5) < 0) __PYX_ERR(0, 24, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_InsertMode(ADD_BC_VALUES); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 24, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ADD_BC_VALUES, __pyx_t_4) < 0) __PYX_ERR(0, 24, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":26
* ADD_BC_VALUES = PETSC_ADD_BC_VALUES
@@ -246722,15 +267743,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* ADD = ADD_VALUES
* MAX = MAX_VALUES
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_INSERT_VALUES);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_INSERT_VALUES);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_INSERT_VALUES);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_INSERT_VALUES);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 26, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INSERT, __pyx_t_5) < 0) __PYX_ERR(0, 26, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 26, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INSERT, __pyx_t_4) < 0) __PYX_ERR(0, 26, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":27
* # aliases
@@ -246739,15 +267760,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* MAX = MAX_VALUES
* INSERT_ALL = INSERT_ALL_VALUES
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_ADD_VALUES);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_ADD_VALUES);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_ADD_VALUES);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_ADD_VALUES);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 27, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ADD, __pyx_t_5) < 0) __PYX_ERR(0, 27, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 27, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ADD, __pyx_t_4) < 0) __PYX_ERR(0, 27, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":28
* INSERT = INSERT_VALUES
@@ -246756,15 +267777,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* INSERT_ALL = INSERT_ALL_VALUES
* ADD_ALL = ADD_ALL_VALUES
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_MAX_VALUES);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_MAX_VALUES);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_MAX_VALUES);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_MAX_VALUES);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 28, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_MAX, __pyx_t_5) < 0) __PYX_ERR(0, 28, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 28, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_MAX, __pyx_t_4) < 0) __PYX_ERR(0, 28, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":29
* ADD = ADD_VALUES
@@ -246773,15 +267794,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* ADD_ALL = ADD_ALL_VALUES
* INSERT_BC = INSERT_BC_VALUES
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_INSERT_ALL_VALUES);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_INSERT_ALL_VALUES);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_INSERT_ALL_VALUES);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_INSERT_ALL_VALUES);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 29, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INSERT_ALL, __pyx_t_5) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 29, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INSERT_ALL, __pyx_t_4) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":30
* MAX = MAX_VALUES
@@ -246790,15 +267811,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* INSERT_BC = INSERT_BC_VALUES
* ADD_BC = ADD_BC_VALUES
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_ADD_ALL_VALUES);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_ADD_ALL_VALUES);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_ADD_ALL_VALUES);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_ADD_ALL_VALUES);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 30, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ADD_ALL, __pyx_t_5) < 0) __PYX_ERR(0, 30, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 30, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ADD_ALL, __pyx_t_4) < 0) __PYX_ERR(0, 30, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":31
* INSERT_ALL = INSERT_ALL_VALUES
@@ -246807,15 +267828,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* ADD_BC = ADD_BC_VALUES
*
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_INSERT_BC_VALUES);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_INSERT_BC_VALUES);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_INSERT_BC_VALUES);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_INSERT_BC_VALUES);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 31, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INSERT_BC, __pyx_t_5) < 0) __PYX_ERR(0, 31, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 31, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INSERT_BC, __pyx_t_4) < 0) __PYX_ERR(0, 31, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":32
* ADD_ALL = ADD_ALL_VALUES
@@ -246824,15 +267845,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* # --------------------------------------------------------------------
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_ADD_BC_VALUES);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_ADD_BC_VALUES);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_ADD_BC_VALUES);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_ADD_BC_VALUES);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 32, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ADD_BC, __pyx_t_5) < 0) __PYX_ERR(0, 32, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 32, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ADD_BC, __pyx_t_4) < 0) __PYX_ERR(0, 32, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":15
* # --------------------------------------------------------------------
@@ -246841,10 +267862,9 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # native
* NOT_SET_VALUES = PETSC_NOT_SET_VALUES
*/
- __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_InsertMode, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_InsertMode, __pyx_t_5) < 0) __PYX_ERR(0, 15, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_InsertMode, __pyx_tuple__71, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_InsertMode, __pyx_t_4) < 0) __PYX_ERR(0, 15, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -246856,15 +267876,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # native
* SCATTER_FORWARD = PETSC_SCATTER_FORWARD
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 36, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__72); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 36, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 36, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__72, __pyx_n_s_ScatterMode, __pyx_n_s_ScatterMode, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 36, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_ScatterMode, __pyx_n_s_ScatterMode, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 36, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
/* "PETSc/Const.pyx":38
* class ScatterMode(object):
@@ -246873,10 +267888,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* SCATTER_REVERSE = PETSC_SCATTER_REVERSE
* SCATTER_FORWARD_LOCAL = PETSC_SCATTER_FORWARD_LOCAL
*/
- __pyx_t_5 = __Pyx_PyInt_From_ScatterMode(SCATTER_FORWARD); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 38, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SCATTER_FORWARD, __pyx_t_5) < 0) __PYX_ERR(0, 38, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_ScatterMode(SCATTER_FORWARD); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 38, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_SCATTER_FORWARD, __pyx_t_4) < 0) __PYX_ERR(0, 38, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":39
* # native
@@ -246885,10 +267900,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* SCATTER_FORWARD_LOCAL = PETSC_SCATTER_FORWARD_LOCAL
* SCATTER_REVERSE_LOCAL = PETSC_SCATTER_REVERSE_LOCAL
*/
- __pyx_t_5 = __Pyx_PyInt_From_ScatterMode(SCATTER_REVERSE); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 39, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SCATTER_REVERSE, __pyx_t_5) < 0) __PYX_ERR(0, 39, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_ScatterMode(SCATTER_REVERSE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 39, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_SCATTER_REVERSE, __pyx_t_4) < 0) __PYX_ERR(0, 39, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":40
* SCATTER_FORWARD = PETSC_SCATTER_FORWARD
@@ -246897,10 +267912,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* SCATTER_REVERSE_LOCAL = PETSC_SCATTER_REVERSE_LOCAL
* SCATTER_LOCAL = PETSC_SCATTER_LOCAL
*/
- __pyx_t_5 = __Pyx_PyInt_From_ScatterMode(SCATTER_FORWARD_LOCAL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 40, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SCATTER_FORWARD_LOCAL, __pyx_t_5) < 0) __PYX_ERR(0, 40, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_ScatterMode(SCATTER_FORWARD_LOCAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 40, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_SCATTER_FORWARD_LOCAL, __pyx_t_4) < 0) __PYX_ERR(0, 40, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":41
* SCATTER_REVERSE = PETSC_SCATTER_REVERSE
@@ -246909,10 +267924,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* SCATTER_LOCAL = PETSC_SCATTER_LOCAL
* # aliases
*/
- __pyx_t_5 = __Pyx_PyInt_From_ScatterMode(SCATTER_REVERSE_LOCAL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 41, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SCATTER_REVERSE_LOCAL, __pyx_t_5) < 0) __PYX_ERR(0, 41, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_ScatterMode(SCATTER_REVERSE_LOCAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 41, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_SCATTER_REVERSE_LOCAL, __pyx_t_4) < 0) __PYX_ERR(0, 41, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":42
* SCATTER_FORWARD_LOCAL = PETSC_SCATTER_FORWARD_LOCAL
@@ -246921,10 +267936,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # aliases
* FORWARD = SCATTER_FORWARD
*/
- __pyx_t_5 = __Pyx_PyInt_From_ScatterMode(SCATTER_LOCAL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 42, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SCATTER_LOCAL, __pyx_t_5) < 0) __PYX_ERR(0, 42, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_ScatterMode(SCATTER_LOCAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_SCATTER_LOCAL, __pyx_t_4) < 0) __PYX_ERR(0, 42, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":44
* SCATTER_LOCAL = PETSC_SCATTER_LOCAL
@@ -246933,15 +267948,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* REVERSE = SCATTER_REVERSE
* FORWARD_LOCAL = SCATTER_FORWARD_LOCAL
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_SCATTER_FORWARD);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_SCATTER_FORWARD);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_FORWARD);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_FORWARD);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 44, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_FORWARD, __pyx_t_5) < 0) __PYX_ERR(0, 44, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_FORWARD, __pyx_t_4) < 0) __PYX_ERR(0, 44, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":45
* # aliases
@@ -246950,15 +267965,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* FORWARD_LOCAL = SCATTER_FORWARD_LOCAL
* REVERSE_LOCAL = SCATTER_REVERSE_LOCAL
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_SCATTER_REVERSE);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_SCATTER_REVERSE);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_REVERSE);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_REVERSE);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 45, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_REVERSE, __pyx_t_5) < 0) __PYX_ERR(0, 45, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 45, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_REVERSE, __pyx_t_4) < 0) __PYX_ERR(0, 45, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":46
* FORWARD = SCATTER_FORWARD
@@ -246967,15 +267982,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* REVERSE_LOCAL = SCATTER_REVERSE_LOCAL
*
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_SCATTER_FORWARD_LOCAL);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_SCATTER_FORWARD_LOCAL);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_FORWARD_LOCAL);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_FORWARD_LOCAL);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 46, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_FORWARD_LOCAL, __pyx_t_5) < 0) __PYX_ERR(0, 46, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_FORWARD_LOCAL, __pyx_t_4) < 0) __PYX_ERR(0, 46, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":47
* REVERSE = SCATTER_REVERSE
@@ -246984,15 +267999,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* # --------------------------------------------------------------------
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_SCATTER_REVERSE_LOCAL);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_SCATTER_REVERSE_LOCAL);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_REVERSE_LOCAL);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_SCATTER_REVERSE_LOCAL);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 47, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_REVERSE_LOCAL, __pyx_t_5) < 0) __PYX_ERR(0, 47, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 47, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_REVERSE_LOCAL, __pyx_t_4) < 0) __PYX_ERR(0, 47, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":36
* # --------------------------------------------------------------------
@@ -247001,10 +268016,9 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # native
* SCATTER_FORWARD = PETSC_SCATTER_FORWARD
*/
- __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_ScatterMode, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 36, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_ScatterMode, __pyx_t_5) < 0) __PYX_ERR(0, 36, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_ScatterMode, __pyx_tuple__72, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 36, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_ScatterMode, __pyx_t_4) < 0) __PYX_ERR(0, 36, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -247016,15 +268030,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # native
* NORM_1 = PETSC_NORM_1
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 51, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__73); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 51, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 51, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__73, __pyx_n_s_NormType, __pyx_n_s_NormType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 51, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_NormType, __pyx_n_s_NormType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 51, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
/* "PETSc/Const.pyx":53
* class NormType(object):
@@ -247033,10 +268042,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* NORM_2 = PETSC_NORM_2
* NORM_1_AND_2 = PETSC_NORM_1_AND_2
*/
- __pyx_t_5 = __Pyx_PyInt_From_NormType(NORM_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 53, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NORM_1, __pyx_t_5) < 0) __PYX_ERR(0, 53, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_NormType(NORM_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 53, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_NORM_1, __pyx_t_4) < 0) __PYX_ERR(0, 53, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":54
* # native
@@ -247045,10 +268054,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* NORM_1_AND_2 = PETSC_NORM_1_AND_2
* NORM_FROBENIUS = PETSC_NORM_FROBENIUS
*/
- __pyx_t_5 = __Pyx_PyInt_From_NormType(NORM_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 54, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NORM_2, __pyx_t_5) < 0) __PYX_ERR(0, 54, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_NormType(NORM_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 54, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_NORM_2, __pyx_t_4) < 0) __PYX_ERR(0, 54, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":55
* NORM_1 = PETSC_NORM_1
@@ -247057,10 +268066,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* NORM_FROBENIUS = PETSC_NORM_FROBENIUS
* NORM_INFINITY = PETSC_NORM_INFINITY
*/
- __pyx_t_5 = __Pyx_PyInt_From_NormType(NORM_1_AND_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NORM_1_AND_2, __pyx_t_5) < 0) __PYX_ERR(0, 55, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_NormType(NORM_1_AND_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 55, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_NORM_1_AND_2, __pyx_t_4) < 0) __PYX_ERR(0, 55, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":56
* NORM_2 = PETSC_NORM_2
@@ -247069,10 +268078,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* NORM_INFINITY = PETSC_NORM_INFINITY
* NORM_MAX = PETSC_NORM_MAX
*/
- __pyx_t_5 = __Pyx_PyInt_From_NormType(NORM_FROBENIUS); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 56, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NORM_FROBENIUS, __pyx_t_5) < 0) __PYX_ERR(0, 56, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_NormType(NORM_FROBENIUS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 56, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_NORM_FROBENIUS, __pyx_t_4) < 0) __PYX_ERR(0, 56, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":57
* NORM_1_AND_2 = PETSC_NORM_1_AND_2
@@ -247081,10 +268090,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* NORM_MAX = PETSC_NORM_MAX
* # aliases
*/
- __pyx_t_5 = __Pyx_PyInt_From_NormType(NORM_INFINITY); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 57, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NORM_INFINITY, __pyx_t_5) < 0) __PYX_ERR(0, 57, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_NormType(NORM_INFINITY); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 57, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_NORM_INFINITY, __pyx_t_4) < 0) __PYX_ERR(0, 57, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":58
* NORM_FROBENIUS = PETSC_NORM_FROBENIUS
@@ -247093,10 +268102,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # aliases
* N1 = NORM_1
*/
- __pyx_t_5 = __Pyx_PyInt_From_NormType(NORM_MAX); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 58, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NORM_MAX, __pyx_t_5) < 0) __PYX_ERR(0, 58, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_NormType(NORM_MAX); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 58, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_NORM_MAX, __pyx_t_4) < 0) __PYX_ERR(0, 58, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":60
* NORM_MAX = PETSC_NORM_MAX
@@ -247105,15 +268114,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* N2 = NORM_2
* N12 = NORM_1_AND_2
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_NORM_1);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_NORM_1);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_1);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_1);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 60, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_N1, __pyx_t_5) < 0) __PYX_ERR(0, 60, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 60, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_N1, __pyx_t_4) < 0) __PYX_ERR(0, 60, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":61
* # aliases
@@ -247122,15 +268131,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* N12 = NORM_1_AND_2
* MAX = NORM_MAX
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_NORM_2);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_NORM_2);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_2);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_2);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 61, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_N2, __pyx_t_5) < 0) __PYX_ERR(0, 61, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 61, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_N2, __pyx_t_4) < 0) __PYX_ERR(0, 61, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":62
* N1 = NORM_1
@@ -247139,15 +268148,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* MAX = NORM_MAX
* FROBENIUS = NORM_FROBENIUS
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_NORM_1_AND_2);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_NORM_1_AND_2);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_1_AND_2);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_1_AND_2);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 62, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_N12, __pyx_t_5) < 0) __PYX_ERR(0, 62, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 62, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_N12, __pyx_t_4) < 0) __PYX_ERR(0, 62, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":63
* N2 = NORM_2
@@ -247156,15 +268165,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* FROBENIUS = NORM_FROBENIUS
* INFINITY = NORM_INFINITY
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_NORM_MAX);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_NORM_MAX);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_MAX);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_MAX);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 63, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_MAX, __pyx_t_5) < 0) __PYX_ERR(0, 63, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 63, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_MAX, __pyx_t_4) < 0) __PYX_ERR(0, 63, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":64
* N12 = NORM_1_AND_2
@@ -247173,15 +268182,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* INFINITY = NORM_INFINITY
* # extra aliases
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_NORM_FROBENIUS);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_NORM_FROBENIUS);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_FROBENIUS);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_FROBENIUS);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 64, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_FROBENIUS, __pyx_t_5) < 0) __PYX_ERR(0, 64, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 64, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_FROBENIUS, __pyx_t_4) < 0) __PYX_ERR(0, 64, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":65
* MAX = NORM_MAX
@@ -247190,15 +268199,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # extra aliases
* FRB = FROBENIUS
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_NORM_INFINITY);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_NORM_INFINITY);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_INFINITY);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_NORM_INFINITY);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 65, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INFINITY, __pyx_t_5) < 0) __PYX_ERR(0, 65, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 65, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INFINITY, __pyx_t_4) < 0) __PYX_ERR(0, 65, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":67
* INFINITY = NORM_INFINITY
@@ -247207,15 +268216,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* INF = INFINITY
*
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_FROBENIUS);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_FROBENIUS);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_FROBENIUS);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_FROBENIUS);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 67, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_FRB, __pyx_t_5) < 0) __PYX_ERR(0, 67, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 67, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_FRB, __pyx_t_4) < 0) __PYX_ERR(0, 67, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":68
* # extra aliases
@@ -247224,15 +268233,15 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* # --------------------------------------------------------------------
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_INFINITY);
- if (unlikely(!__pyx_t_5)) {
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_INFINITY);
+ if (unlikely(!__pyx_t_4)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_INFINITY);
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_INFINITY);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 68, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_INF, __pyx_t_5) < 0) __PYX_ERR(0, 68, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 68, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_INF, __pyx_t_4) < 0) __PYX_ERR(0, 68, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Const.pyx":51
* # --------------------------------------------------------------------
@@ -247241,10 +268250,9 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* # native
* NORM_1 = PETSC_NORM_1
*/
- __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_NormType, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 51, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_NormType, __pyx_t_5) < 0) __PYX_ERR(0, 51, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_NormType, __pyx_tuple__73, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 51, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_NormType, __pyx_t_4) < 0) __PYX_ERR(0, 51, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -247256,15 +268264,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* _traceback_ = []
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 3, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__74); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 3, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_RuntimeError);
- __Pyx_GIVEREF(__pyx_builtin_RuntimeError);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_RuntimeError);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 3, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__74, __pyx_n_s_Error, __pyx_n_s_Error, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 3, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_Error, __pyx_n_s_Error, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
/* "PETSc/Error.pyx":5
* class Error(RuntimeError):
@@ -247273,10 +268276,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* def __init__(self, int ierr=0):
*/
- __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 5, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_traceback, __pyx_t_5) < 0) __PYX_ERR(1, 5, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 5, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_traceback, __pyx_t_4) < 0) __PYX_ERR(1, 5, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Error.pyx":7
* _traceback_ = []
@@ -247285,19 +268288,19 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* self.ierr = ierr
* RuntimeError.__init__(self, self.ierr)
*/
- __pyx_t_5 = __Pyx_PyInt_From_int(((int)0)); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 7, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(1, 7, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_6);
- __Pyx_GIVEREF(__pyx_t_5);
- PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5);
- __pyx_t_5 = 0;
- __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_1__init__, 0, __pyx_n_s_Error___init, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__69)); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 7, __pyx_L1_error)
+ __pyx_t_4 = __Pyx_PyInt_From_int(((int)0)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 7, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 7, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_t_6);
- __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_init, __pyx_t_5) < 0) __PYX_ERR(1, 7, __pyx_L1_error)
+ __Pyx_GIVEREF(__pyx_t_4);
+ PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
+ __pyx_t_4 = 0;
+ __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_1__init__, 0, __pyx_n_s_Error___init, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__76)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 7, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_t_5);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_init, __pyx_t_4) < 0) __PYX_ERR(1, 7, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Error.pyx":11
* RuntimeError.__init__(self, self.ierr)
@@ -247306,10 +268309,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef int ierr = self.ierr
* return ierr != 0
*/
- __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_3__nonzero__, 0, __pyx_n_s_Error___nonzero, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__71)); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 11, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_nonzero_2, __pyx_t_5) < 0) __PYX_ERR(1, 11, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_3__nonzero__, 0, __pyx_n_s_Error___nonzero, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__78)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 11, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_nonzero_2, __pyx_t_4) < 0) __PYX_ERR(1, 11, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Error.pyx":15
* return ierr != 0
@@ -247318,10 +268321,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* return 'PETSc.Error(%d)' % self.ierr
*
*/
- __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_5__repr__, 0, __pyx_n_s_Error___repr, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__73)); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 15, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_repr, __pyx_t_5) < 0) __PYX_ERR(1, 15, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_5__repr__, 0, __pyx_n_s_Error___repr, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__80)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 15, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_repr, __pyx_t_4) < 0) __PYX_ERR(1, 15, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Error.pyx":18
* return 'PETSc.Error(%d)' % self.ierr
@@ -247330,10 +268333,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef int csize=1, crank=0
* if not (<int>PetscFinalizeCalled):
*/
- __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_7__str__, 0, __pyx_n_s_Error___str, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__75)); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 18, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_str, __pyx_t_5) < 0) __PYX_ERR(1, 18, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_8petsc4py_5PETSc_5Error_7__str__, 0, __pyx_n_s_Error___str, NULL, __pyx_n_s_petsc4py_PETSc, __pyx_d, ((PyObject *)__pyx_codeobj__82)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 18, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_str, __pyx_t_4) < 0) __PYX_ERR(1, 18, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Error.pyx":3
* # --------------------------------------------------------------------
@@ -247342,10 +268345,9 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* _traceback_ = []
*/
- __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_Error, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_Error, __pyx_t_5) < 0) __PYX_ERR(1, 3, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_Error, __pyx_tuple__74, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_Error, __pyx_t_4) < 0) __PYX_ERR(1, 3, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
@@ -247353,9 +268355,9 @@ PyMODINIT_FUNC PyInit_PETSc(void)
/* "PETSc/Sys.pyx":6
*
* @classmethod
- * def getVersion(cls, patch=False, devel=False, # <<<<<<<<<<<<<<
- * date=False, author=False):
- * cdef int cmajor = PETSC_VERSION_MAJOR
+ * def getVersion(cls, devel=False, date=False, author=False): # <<<<<<<<<<<<<<
+ * cdef char cversion[256]
+ * cdef PetscInt major=0, minor=0, micro=0, release=0
*/
__pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_getVersion); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 6, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
@@ -247364,8 +268366,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef class Sys:
*
* @classmethod # <<<<<<<<<<<<<<
- * def getVersion(cls, patch=False, devel=False,
- * date=False, author=False):
+ * def getVersion(cls, devel=False, date=False, author=False):
+ * cdef char cversion[256]
*/
__pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 5, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
@@ -247374,355 +268376,379 @@ PyMODINIT_FUNC PyInit_PETSc(void)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":33
+ /* "PETSc/Sys.pyx":30
*
* @classmethod
* def getVersionInfo(cls): # <<<<<<<<<<<<<<
- * cdef int cmajor = PETSC_VERSION_MAJOR
- * cdef int cminor = PETSC_VERSION_MINOR
+ * version, dev, date, author = cls.getVersion(True, True, True)
+ * return dict(major = version[0],
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_getVersionInfo); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 33, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_getVersionInfo); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 30, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Sys.pyx":32
+ /* "PETSc/Sys.pyx":29
* return tuple(out)
*
* @classmethod # <<<<<<<<<<<<<<
* def getVersionInfo(cls):
- * cdef int cmajor = PETSC_VERSION_MAJOR
+ * version, dev, date, author = cls.getVersion(True, True, True)
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 32, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 29, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_getVersionInfo, __pyx_t_1) < 0) __PYX_ERR(25, 33, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_getVersionInfo, __pyx_t_1) < 0) __PYX_ERR(25, 30, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":54
+ /* "PETSc/Sys.pyx":42
*
* @classmethod
* def isInitialized(cls): # <<<<<<<<<<<<<<
- * return <bint>PetscInitializeCalled
+ * return toBool(PetscInitializeCalled)
*
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_isInitialized); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 54, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_isInitialized); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 42, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Sys.pyx":53
+ /* "PETSc/Sys.pyx":41
* # --- xxx ---
*
* @classmethod # <<<<<<<<<<<<<<
* def isInitialized(cls):
- * return <bint>PetscInitializeCalled
+ * return toBool(PetscInitializeCalled)
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 53, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 41, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_isInitialized, __pyx_t_3) < 0) __PYX_ERR(25, 54, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_isInitialized, __pyx_t_3) < 0) __PYX_ERR(25, 42, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":58
+ /* "PETSc/Sys.pyx":46
*
* @classmethod
* def isFinalized(cls): # <<<<<<<<<<<<<<
- * return <bint>PetscFinalizeCalled
+ * return toBool(PetscFinalizeCalled)
*
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_isFinalized); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 58, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_isFinalized); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 46, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Sys.pyx":57
- * return <bint>PetscInitializeCalled
+ /* "PETSc/Sys.pyx":45
+ * return toBool(PetscInitializeCalled)
*
* @classmethod # <<<<<<<<<<<<<<
* def isFinalized(cls):
- * return <bint>PetscFinalizeCalled
+ * return toBool(PetscFinalizeCalled)
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 57, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 45, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_isFinalized, __pyx_t_1) < 0) __PYX_ERR(25, 58, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_isFinalized, __pyx_t_1) < 0) __PYX_ERR(25, 46, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":64
+ /* "PETSc/Sys.pyx":52
*
* @classmethod
* def getDefaultComm(cls): # <<<<<<<<<<<<<<
* cdef Comm comm = Comm()
* comm.comm = PETSC_COMM_DEFAULT
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_getDefaultComm); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 64, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_getDefaultComm); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 52, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Sys.pyx":63
+ /* "PETSc/Sys.pyx":51
* # --- xxx ---
*
* @classmethod # <<<<<<<<<<<<<<
* def getDefaultComm(cls):
* cdef Comm comm = Comm()
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 63, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 51, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_getDefaultComm, __pyx_t_3) < 0) __PYX_ERR(25, 64, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_getDefaultComm, __pyx_t_3) < 0) __PYX_ERR(25, 52, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":70
+ /* "PETSc/Sys.pyx":58
*
* @classmethod
* def setDefaultComm(cls, comm): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_WORLD)
* if ccomm == MPI_COMM_NULL:
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_setDefaultComm); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 70, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_setDefaultComm); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 58, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Sys.pyx":69
+ /* "PETSc/Sys.pyx":57
* return comm
*
* @classmethod # <<<<<<<<<<<<<<
* def setDefaultComm(cls, comm):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_WORLD)
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 69, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 57, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_setDefaultComm, __pyx_t_1) < 0) __PYX_ERR(25, 70, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_setDefaultComm, __pyx_t_1) < 0) __PYX_ERR(25, 58, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":80
+ /* "PETSc/Sys.pyx":68
*
* @classmethod
* def Print(cls, *args, **kargs): # <<<<<<<<<<<<<<
* cdef object comm = kargs.get('comm', None)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_Print); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 80, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_Print); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 68, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Sys.pyx":79
+ /* "PETSc/Sys.pyx":67
* # --- xxx ---
*
* @classmethod # <<<<<<<<<<<<<<
* def Print(cls, *args, **kargs):
* cdef object comm = kargs.get('comm', None)
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 79, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 67, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_Print, __pyx_t_3) < 0) __PYX_ERR(25, 80, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_Print, __pyx_t_3) < 0) __PYX_ERR(25, 68, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":97
+ /* "PETSc/Sys.pyx":85
*
* @classmethod
* def syncPrint(cls, *args, **kargs): # <<<<<<<<<<<<<<
* cdef object comm = kargs.get('comm', None)
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_syncPrint); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 97, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_syncPrint); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 85, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Sys.pyx":96
+ /* "PETSc/Sys.pyx":84
* CHKERR( PetscPrintf(ccomm, m) )
*
* @classmethod # <<<<<<<<<<<<<<
* def syncPrint(cls, *args, **kargs):
* cdef object comm = kargs.get('comm', None)
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 96, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 84, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_syncPrint, __pyx_t_1) < 0) __PYX_ERR(25, 97, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_syncPrint, __pyx_t_1) < 0) __PYX_ERR(25, 85, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":113
+ /* "PETSc/Sys.pyx":101
*
* @classmethod
* def syncFlush(cls, comm=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* CHKERR( PetscSynchronizedFlush(ccomm, PETSC_STDOUT) )
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_syncFlush); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 113, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_syncFlush); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 101, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Sys.pyx":112
+ /* "PETSc/Sys.pyx":100
* if flush: CHKERR( PetscSynchronizedFlush(ccomm, PETSC_STDOUT) )
*
* @classmethod # <<<<<<<<<<<<<<
* def syncFlush(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 112, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 100, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_syncFlush, __pyx_t_3) < 0) __PYX_ERR(25, 113, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_syncFlush, __pyx_t_3) < 0) __PYX_ERR(25, 101, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":120
+ /* "PETSc/Sys.pyx":108
*
* @classmethod
* def splitOwnership(cls, size, bsize=None, comm=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef PetscInt bs=0, n=0, N=0
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_splitOwnership); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 120, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_splitOwnership); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 108, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Sys.pyx":119
+ /* "PETSc/Sys.pyx":107
* # --- xxx ---
*
* @classmethod # <<<<<<<<<<<<<<
* def splitOwnership(cls, size, bsize=None, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 119, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 107, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_splitOwnership, __pyx_t_1) < 0) __PYX_ERR(25, 120, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_splitOwnership, __pyx_t_1) < 0) __PYX_ERR(25, 108, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":133
+ /* "PETSc/Sys.pyx":121
*
* @classmethod
* def sleep(cls, seconds=1): # <<<<<<<<<<<<<<
* cdef int s = seconds
* CHKERR( PetscSleep(s) )
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_sleep); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 133, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_sleep); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 121, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Sys.pyx":132
+ /* "PETSc/Sys.pyx":120
* return (toInt(n), toInt(N))
*
* @classmethod # <<<<<<<<<<<<<<
* def sleep(cls, seconds=1):
* cdef int s = seconds
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 132, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_sleep, __pyx_t_3) < 0) __PYX_ERR(25, 133, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_sleep, __pyx_t_3) < 0) __PYX_ERR(25, 121, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":140
+ /* "PETSc/Sys.pyx":128
*
* @classmethod
* def pushErrorHandler(cls, errhandler): # <<<<<<<<<<<<<<
* cdef PetscErrorHandlerFunction handler = NULL
* if errhandler == "python":
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_pushErrorHandler); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 140, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_pushErrorHandler); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 128, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Sys.pyx":139
+ /* "PETSc/Sys.pyx":127
* # --- xxx ---
*
* @classmethod # <<<<<<<<<<<<<<
* def pushErrorHandler(cls, errhandler):
* cdef PetscErrorHandlerFunction handler = NULL
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 139, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 127, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_pushErrorHandler, __pyx_t_1) < 0) __PYX_ERR(25, 140, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_pushErrorHandler, __pyx_t_1) < 0) __PYX_ERR(25, 128, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":164
+ /* "PETSc/Sys.pyx":152
*
* @classmethod
* def popErrorHandler(cls): # <<<<<<<<<<<<<<
* CHKERR( PetscPopErrorHandler() )
*
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_popErrorHandler); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 164, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_popErrorHandler); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 152, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Sys.pyx":163
+ /* "PETSc/Sys.pyx":151
*
*
* @classmethod # <<<<<<<<<<<<<<
* def popErrorHandler(cls):
* CHKERR( PetscPopErrorHandler() )
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 163, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 151, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_popErrorHandler, __pyx_t_3) < 0) __PYX_ERR(25, 164, __pyx_L1_error)
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_popErrorHandler, __pyx_t_3) < 0) __PYX_ERR(25, 152, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":168
+ /* "PETSc/Sys.pyx":156
+ *
+ * @classmethod
+ * def popSignalHandler(cls): # <<<<<<<<<<<<<<
+ * CHKERR( PetscPopSignalHandler() )
+ *
+ */
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_popSignalHandler); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 156, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+
+ /* "PETSc/Sys.pyx":155
+ * CHKERR( PetscPopErrorHandler() )
+ *
+ * @classmethod # <<<<<<<<<<<<<<
+ * def popSignalHandler(cls):
+ * CHKERR( PetscPopSignalHandler() )
+ */
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 155, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_popSignalHandler, __pyx_t_1) < 0) __PYX_ERR(25, 156, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
+
+ /* "PETSc/Sys.pyx":160
*
* @classmethod
* def infoAllow(cls, flag): # <<<<<<<<<<<<<<
* cdef PetscBool tval = PETSC_FALSE
* if flag: tval = PETSC_TRUE
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_infoAllow); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 168, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_infoAllow); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 160, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Sys.pyx":167
- * CHKERR( PetscPopErrorHandler() )
+ /* "PETSc/Sys.pyx":159
+ * CHKERR( PetscPopSignalHandler() )
*
* @classmethod # <<<<<<<<<<<<<<
* def infoAllow(cls, flag):
* cdef PetscBool tval = PETSC_FALSE
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 167, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_infoAllow, __pyx_t_1) < 0) __PYX_ERR(25, 168, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 159, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_infoAllow, __pyx_t_3) < 0) __PYX_ERR(25, 160, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":174
+ /* "PETSc/Sys.pyx":166
*
* @classmethod
* def registerCitation(cls, citation): # <<<<<<<<<<<<<<
* if not citation: raise ValueError("empty citation")
* cdef const_char *cit = NULL
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_registerCitation); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 174, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys, __pyx_n_s_registerCitation); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 166, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Sys.pyx":173
+ /* "PETSc/Sys.pyx":165
* CHKERR( PetscInfoAllow(tval, NULL) )
*
* @classmethod # <<<<<<<<<<<<<<
* def registerCitation(cls, citation):
* if not citation: raise ValueError("empty citation")
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 173, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_registerCitation, __pyx_t_3) < 0) __PYX_ERR(25, 174, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 165, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Sys->tp_dict, __pyx_n_s_registerCitation, __pyx_t_1) < 0) __PYX_ERR(25, 166, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Sys);
- /* "PETSc/Sys.pyx":182
- * set_citation(citation, <bint>set)
+ /* "PETSc/Sys.pyx":174
+ * set_citation(citation, toBool(flag))
*
* cdef dict citations_registry = { } # <<<<<<<<<<<<<<
*
* cdef PetscBool get_citation(object citation):
*/
- __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) __PYX_ERR(25, 182, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(25, 174, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_XGOTREF(__pyx_v_8petsc4py_5PETSc_citations_registry);
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_citations_registry, ((PyObject*)__pyx_t_3));
- __Pyx_GIVEREF(__pyx_t_3);
- __pyx_t_3 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_citations_registry, ((PyObject*)__pyx_t_1));
+ __Pyx_GIVEREF(__pyx_t_1);
+ __pyx_t_1 = 0;
/* "PETSc/Log.pyx":6
*
@@ -247731,8 +268757,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* if not name: raise ValueError("empty name")
* cdef const_char *cname = NULL
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_Stage); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 6, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_Stage); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 6, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
/* "PETSc/Log.pyx":5
* cdef class Log:
@@ -247741,11 +268767,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def Stage(cls, name):
* if not name: raise ValueError("empty name")
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 5, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_Stage, __pyx_t_1) < 0) __PYX_ERR(26, 6, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 5, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_Stage, __pyx_t_3) < 0) __PYX_ERR(26, 6, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":20
@@ -247755,8 +268781,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* if not name: raise ValueError("empty name")
* cdef const_char *cname = NULL
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_Class); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 20, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_Class); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 20, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/Log.pyx":19
* return stage
@@ -247765,11 +268791,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def Class(cls, name):
* if not name: raise ValueError("empty name")
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 19, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_Class, __pyx_t_3) < 0) __PYX_ERR(26, 20, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_Class, __pyx_t_1) < 0) __PYX_ERR(26, 20, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":34
@@ -247779,8 +268805,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* if not name: raise ValueError("empty name")
* cdef const_char *cname = NULL
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_Event); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 34, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_Event); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 34, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
/* "PETSc/Log.pyx":33
* return klass
@@ -247789,11 +268815,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def Event(cls, name, klass=None):
* if not name: raise ValueError("empty name")
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 33, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_Event, __pyx_t_1) < 0) __PYX_ERR(26, 34, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 33, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_Event, __pyx_t_3) < 0) __PYX_ERR(26, 34, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":50
@@ -247803,8 +268829,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* if all: CHKERR( PetscLogAllBegin() )
* else: CHKERR( PetscLogDefaultBegin() )
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_begin); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 50, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_begin); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 50, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/Log.pyx":49
* return event
@@ -247813,11 +268839,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def begin(cls, all=False):
* if all: CHKERR( PetscLogAllBegin() )
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 49, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_begin, __pyx_t_3) < 0) __PYX_ERR(26, 50, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 49, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_begin, __pyx_t_1) < 0) __PYX_ERR(26, 50, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":55
@@ -247827,8 +268853,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef PetscViewer vwr = NULL
* if viewer is not None: vwr = viewer.vwr
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 55, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_view); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 55, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
/* "PETSc/Log.pyx":54
* else: CHKERR( PetscLogDefaultBegin() )
@@ -247837,11 +268863,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def view(cls, Viewer viewer=None):
* cdef PetscViewer vwr = NULL
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 54, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_view, __pyx_t_1) < 0) __PYX_ERR(26, 55, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 54, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_view, __pyx_t_3) < 0) __PYX_ERR(26, 55, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":62
@@ -247851,8 +268877,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* CHKERR( PetscLogDestroy() )
*
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_destroy); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 62, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_destroy); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 62, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/Log.pyx":61
* CHKERR( PetscLogView(vwr) )
@@ -247861,11 +268887,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def destroy(cls):
* CHKERR( PetscLogDestroy() )
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 61, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_destroy, __pyx_t_3) < 0) __PYX_ERR(26, 62, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 61, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_destroy, __pyx_t_1) < 0) __PYX_ERR(26, 62, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":66
@@ -247875,8 +268901,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef PetscLogDouble cflops=flops
* CHKERR( PetscLogFlops(cflops) )
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_logFlops); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 66, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_logFlops); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 66, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
/* "PETSc/Log.pyx":65
* CHKERR( PetscLogDestroy() )
@@ -247885,11 +268911,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def logFlops(cls, flops):
* cdef PetscLogDouble cflops=flops
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 65, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_logFlops, __pyx_t_1) < 0) __PYX_ERR(26, 66, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 65, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_logFlops, __pyx_t_3) < 0) __PYX_ERR(26, 66, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":71
@@ -247899,8 +268925,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef PetscLogDouble cflops=flops
* CHKERR( PetscLogFlops(cflops) )
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_addFlops); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 71, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_addFlops); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 71, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/Log.pyx":70
* CHKERR( PetscLogFlops(cflops) )
@@ -247909,11 +268935,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def addFlops(cls, flops):
* cdef PetscLogDouble cflops=flops
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 70, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_addFlops, __pyx_t_3) < 0) __PYX_ERR(26, 71, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 70, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_addFlops, __pyx_t_1) < 0) __PYX_ERR(26, 71, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":76
@@ -247923,8 +268949,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef PetscLogDouble cflops=0
* CHKERR( PetscGetFlops(&cflops) )
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_getFlops); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 76, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_getFlops); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 76, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
/* "PETSc/Log.pyx":75
* CHKERR( PetscLogFlops(cflops) )
@@ -247933,11 +268959,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def getFlops(cls):
* cdef PetscLogDouble cflops=0
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 75, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_getFlops, __pyx_t_1) < 0) __PYX_ERR(26, 76, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 75, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_getFlops, __pyx_t_3) < 0) __PYX_ERR(26, 76, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":82
@@ -247947,8 +268973,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef PetscLogDouble wctime=0
* CHKERR( PetscTime(&wctime) )
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_getTime); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 82, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_getTime); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 82, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/Log.pyx":81
* return cflops
@@ -247957,11 +268983,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def getTime(cls):
* cdef PetscLogDouble wctime=0
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 81, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_getTime, __pyx_t_3) < 0) __PYX_ERR(26, 82, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 81, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_getTime, __pyx_t_1) < 0) __PYX_ERR(26, 82, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":88
@@ -247971,8 +268997,8 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef PetscLogDouble cputime=0
* CHKERR( PetscGetCPUTime(&cputime) )
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_getCPUTime); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 88, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log, __pyx_n_s_getCPUTime); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 88, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
/* "PETSc/Log.pyx":87
* return wctime
@@ -247981,11 +269007,11 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* def getCPUTime(cls):
* cdef PetscLogDouble cputime=0
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 87, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_getCPUTime, __pyx_t_1) < 0) __PYX_ERR(26, 88, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 87, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Log->tp_dict, __pyx_n_s_getCPUTime, __pyx_t_3) < 0) __PYX_ERR(26, 88, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Log);
/* "PETSc/Log.pyx":178
@@ -247995,12 +269021,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* cdef LogStage get_LogStage(object name):
*/
- __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 178, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 178, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_XGOTREF(__pyx_v_8petsc4py_5PETSc_stage_registry);
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_stage_registry, ((PyObject*)__pyx_t_1));
- __Pyx_GIVEREF(__pyx_t_1);
- __pyx_t_1 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_stage_registry, ((PyObject*)__pyx_t_3));
+ __Pyx_GIVEREF(__pyx_t_3);
+ __pyx_t_3 = 0;
/* "PETSc/Log.pyx":240
*
@@ -248009,12 +269035,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* cdef LogClass get_LogClass(object name):
*/
- __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 240, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 240, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_XGOTREF(__pyx_v_8petsc4py_5PETSc_class_registry);
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_class_registry, ((PyObject*)__pyx_t_1));
- __Pyx_GIVEREF(__pyx_t_1);
- __pyx_t_1 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_class_registry, ((PyObject*)__pyx_t_3));
+ __Pyx_GIVEREF(__pyx_t_3);
+ __pyx_t_3 = 0;
/* "PETSc/Log.pyx":358
* return info
@@ -248023,12 +269049,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* cdef LogEvent get_LogEvent(object name):
*/
- __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(26, 358, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(26, 358, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_XGOTREF(__pyx_v_8petsc4py_5PETSc_event_registry);
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_event_registry, ((PyObject*)__pyx_t_1));
- __Pyx_GIVEREF(__pyx_t_1);
- __pyx_t_1 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_event_registry, ((PyObject*)__pyx_t_3));
+ __Pyx_GIVEREF(__pyx_t_3);
+ __pyx_t_3 = 0;
/* "PETSc/Comm.pyx":109
* # --- mpi4py compatibility API ---
@@ -248037,10 +269063,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* Clone = duplicate
* Dup = duplicate
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_destroy); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 109, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Free, __pyx_t_1) < 0) __PYX_ERR(9, 109, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_destroy); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 109, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Free, __pyx_t_3) < 0) __PYX_ERR(9, 109, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Comm);
/* "PETSc/Comm.pyx":110
@@ -248050,10 +269076,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* Dup = duplicate
* Get_size = getSize
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_duplicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 110, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Clone, __pyx_t_1) < 0) __PYX_ERR(9, 110, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_duplicate); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 110, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Clone, __pyx_t_3) < 0) __PYX_ERR(9, 110, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Comm);
/* "PETSc/Comm.pyx":111
@@ -248063,10 +269089,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* Get_size = getSize
* Get_rank = getRank
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_duplicate); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 111, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Dup, __pyx_t_1) < 0) __PYX_ERR(9, 111, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_duplicate); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 111, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Dup, __pyx_t_3) < 0) __PYX_ERR(9, 111, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Comm);
/* "PETSc/Comm.pyx":112
@@ -248076,10 +269102,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* Get_rank = getRank
* Barrier = barrier
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_getSize); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 112, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Get_size, __pyx_t_1) < 0) __PYX_ERR(9, 112, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_getSize); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 112, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Get_size, __pyx_t_3) < 0) __PYX_ERR(9, 112, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Comm);
/* "PETSc/Comm.pyx":113
@@ -248089,10 +269115,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* Barrier = barrier
*
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_getRank); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 113, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Get_rank, __pyx_t_1) < 0) __PYX_ERR(9, 113, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_getRank); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 113, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Get_rank, __pyx_t_3) < 0) __PYX_ERR(9, 113, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Comm);
/* "PETSc/Comm.pyx":114
@@ -248102,10 +269128,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* # --------------------------------------------------------------------
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_barrier); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 114, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Barrier, __pyx_t_1) < 0) __PYX_ERR(9, 114, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm, __pyx_n_s_barrier); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 114, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm->tp_dict, __pyx_n_s_Barrier, __pyx_t_3) < 0) __PYX_ERR(9, 114, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Comm);
/* "PETSc/Comm.pyx":118
@@ -248115,12 +269141,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef Comm __COMM_SELF__ = Comm()
* cdef Comm __COMM_WORLD__ = Comm()
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 118, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 118, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_XGOTREF(((PyObject *)__pyx_v_8petsc4py_5PETSc___COMM_NULL__));
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc___COMM_NULL__, ((struct PyPetscCommObject *)__pyx_t_1));
- __Pyx_GIVEREF(__pyx_t_1);
- __pyx_t_1 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc___COMM_NULL__, ((struct PyPetscCommObject *)__pyx_t_3));
+ __Pyx_GIVEREF(__pyx_t_3);
+ __pyx_t_3 = 0;
/* "PETSc/Comm.pyx":119
*
@@ -248129,12 +269155,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* cdef Comm __COMM_WORLD__ = Comm()
*
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 119, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 119, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_XGOTREF(((PyObject *)__pyx_v_8petsc4py_5PETSc___COMM_SELF__));
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc___COMM_SELF__, ((struct PyPetscCommObject *)__pyx_t_1));
- __Pyx_GIVEREF(__pyx_t_1);
- __pyx_t_1 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc___COMM_SELF__, ((struct PyPetscCommObject *)__pyx_t_3));
+ __Pyx_GIVEREF(__pyx_t_3);
+ __pyx_t_3 = 0;
/* "PETSc/Comm.pyx":120
* cdef Comm __COMM_NULL__ = Comm()
@@ -248143,12 +269169,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* COMM_NULL = __COMM_NULL__
*/
- __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(9, 120, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Comm), __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(9, 120, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_XGOTREF(((PyObject *)__pyx_v_8petsc4py_5PETSc___COMM_WORLD__));
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc___COMM_WORLD__, ((struct PyPetscCommObject *)__pyx_t_1));
- __Pyx_GIVEREF(__pyx_t_1);
- __pyx_t_1 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc___COMM_WORLD__, ((struct PyPetscCommObject *)__pyx_t_3));
+ __Pyx_GIVEREF(__pyx_t_3);
+ __pyx_t_3 = 0;
/* "PETSc/Comm.pyx":122
* cdef Comm __COMM_WORLD__ = Comm()
@@ -248186,29 +269212,29 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*/
__pyx_v_8petsc4py_5PETSc_PETSC_COMM_DEFAULT = MPI_COMM_NULL;
- /* "PETSc/Object.pyx":242
+ /* "PETSc/Object.pyx":249
* include "cyclicgc.pxi"
*
* cdef dict type_registry = { 0 : None } # <<<<<<<<<<<<<<
* __type_registry__ = type_registry
*
*/
- __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(10, 242, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem(__pyx_t_1, __pyx_int_0, Py_None) < 0) __PYX_ERR(10, 242, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(10, 249, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem(__pyx_t_3, __pyx_int_0, Py_None) < 0) __PYX_ERR(10, 249, __pyx_L1_error)
__Pyx_XGOTREF(__pyx_v_8petsc4py_5PETSc_type_registry);
- __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_type_registry, ((PyObject*)__pyx_t_1));
- __Pyx_GIVEREF(__pyx_t_1);
- __pyx_t_1 = 0;
+ __Pyx_DECREF_SET(__pyx_v_8petsc4py_5PETSc_type_registry, ((PyObject*)__pyx_t_3));
+ __Pyx_GIVEREF(__pyx_t_3);
+ __pyx_t_3 = 0;
- /* "PETSc/Object.pyx":243
+ /* "PETSc/Object.pyx":250
*
* cdef dict type_registry = { 0 : None }
* __type_registry__ = type_registry # <<<<<<<<<<<<<<
*
* cdef int PyPetscType_Register(int classid, type cls) except -1:
*/
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_type_registry, __pyx_v_8petsc4py_5PETSc_type_registry) < 0) __PYX_ERR(10, 243, __pyx_L1_error)
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_type_registry, __pyx_v_8petsc4py_5PETSc_type_registry) < 0) __PYX_ERR(10, 250, __pyx_L1_error)
/* "PETSc/Viewer.pyx":3
* # --------------------------------------------------------------------
@@ -248217,15 +269243,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* SOCKET = S_(PETSCVIEWERSOCKET)
* ASCII = S_(PETSCVIEWERASCII)
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 3, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__83); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 3, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_ViewerType, __pyx_n_s_ViewerType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_1 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_tuple__83, __pyx_n_s_ViewerType, __pyx_n_s_ViewerType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
/* "PETSc/Viewer.pyx":4
*
@@ -248234,10 +269255,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* ASCII = S_(PETSCVIEWERASCII)
* BINARY = S_(PETSCVIEWERBINARY)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERSOCKET); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 4, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SOCKET, __pyx_t_5) < 0) __PYX_ERR(27, 4, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERSOCKET); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 4, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_SOCKET, __pyx_t_4) < 0) __PYX_ERR(27, 4, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":5
* class ViewerType(object):
@@ -248246,10 +269267,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* BINARY = S_(PETSCVIEWERBINARY)
* STRING = S_(PETSCVIEWERSTRING)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERASCII); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 5, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII, __pyx_t_5) < 0) __PYX_ERR(27, 5, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERASCII); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 5, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII, __pyx_t_4) < 0) __PYX_ERR(27, 5, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":6
* SOCKET = S_(PETSCVIEWERSOCKET)
@@ -248258,10 +269279,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* STRING = S_(PETSCVIEWERSTRING)
* DRAW = S_(PETSCVIEWERDRAW)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERBINARY); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 6, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_BINARY, __pyx_t_5) < 0) __PYX_ERR(27, 6, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERBINARY); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 6, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_BINARY, __pyx_t_4) < 0) __PYX_ERR(27, 6, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":7
* ASCII = S_(PETSCVIEWERASCII)
@@ -248270,10 +269291,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* DRAW = S_(PETSCVIEWERDRAW)
* VU = S_(PETSCVIEWERVU)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERSTRING); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 7, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_STRING, __pyx_t_5) < 0) __PYX_ERR(27, 7, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERSTRING); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 7, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_STRING, __pyx_t_4) < 0) __PYX_ERR(27, 7, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":8
* BINARY = S_(PETSCVIEWERBINARY)
@@ -248282,10 +269303,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* VU = S_(PETSCVIEWERVU)
* MATHEMATICA = S_(PETSCVIEWERMATHEMATICA)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERDRAW); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 8, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_DRAW, __pyx_t_5) < 0) __PYX_ERR(27, 8, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERDRAW); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 8, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_DRAW, __pyx_t_4) < 0) __PYX_ERR(27, 8, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":9
* STRING = S_(PETSCVIEWERSTRING)
@@ -248294,82 +269315,70 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* MATHEMATICA = S_(PETSCVIEWERMATHEMATICA)
* HDF5 = S_(PETSCVIEWERHDF5)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERVU); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 9, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_VU, __pyx_t_5) < 0) __PYX_ERR(27, 9, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERVU); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 9, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_VU, __pyx_t_4) < 0) __PYX_ERR(27, 9, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":10
* DRAW = S_(PETSCVIEWERDRAW)
* VU = S_(PETSCVIEWERVU)
* MATHEMATICA = S_(PETSCVIEWERMATHEMATICA) # <<<<<<<<<<<<<<
* HDF5 = S_(PETSCVIEWERHDF5)
- * NETCDF = S_(PETSCVIEWERNETCDF)
+ * VTK = S_(PETSCVIEWERVTK)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERMATHEMATICA); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 10, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_MATHEMATICA, __pyx_t_5) < 0) __PYX_ERR(27, 10, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERMATHEMATICA); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 10, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_MATHEMATICA, __pyx_t_4) < 0) __PYX_ERR(27, 10, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":11
* VU = S_(PETSCVIEWERVU)
* MATHEMATICA = S_(PETSCVIEWERMATHEMATICA)
* HDF5 = S_(PETSCVIEWERHDF5) # <<<<<<<<<<<<<<
- * NETCDF = S_(PETSCVIEWERNETCDF)
* VTK = S_(PETSCVIEWERVTK)
+ * MATLAB = S_(PETSCVIEWERMATLAB)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERHDF5); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 11, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_HDF5, __pyx_t_5) < 0) __PYX_ERR(27, 11, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERHDF5); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 11, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_HDF5, __pyx_t_4) < 0) __PYX_ERR(27, 11, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":12
* MATHEMATICA = S_(PETSCVIEWERMATHEMATICA)
* HDF5 = S_(PETSCVIEWERHDF5)
- * NETCDF = S_(PETSCVIEWERNETCDF) # <<<<<<<<<<<<<<
- * VTK = S_(PETSCVIEWERVTK)
- * MATLAB = S_(PETSCVIEWERMATLAB)
- */
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERNETCDF); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 12, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NETCDF, __pyx_t_5) < 0) __PYX_ERR(27, 12, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
-
- /* "PETSc/Viewer.pyx":13
- * HDF5 = S_(PETSCVIEWERHDF5)
- * NETCDF = S_(PETSCVIEWERNETCDF)
* VTK = S_(PETSCVIEWERVTK) # <<<<<<<<<<<<<<
* MATLAB = S_(PETSCVIEWERMATLAB)
* SAWS = S_(PETSCVIEWERSAWS)
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERVTK); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 13, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_VTK, __pyx_t_5) < 0) __PYX_ERR(27, 13, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERVTK); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 12, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_VTK, __pyx_t_4) < 0) __PYX_ERR(27, 12, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":14
- * NETCDF = S_(PETSCVIEWERNETCDF)
+ /* "PETSc/Viewer.pyx":13
+ * HDF5 = S_(PETSCVIEWERHDF5)
* VTK = S_(PETSCVIEWERVTK)
* MATLAB = S_(PETSCVIEWERMATLAB) # <<<<<<<<<<<<<<
* SAWS = S_(PETSCVIEWERSAWS)
*
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERMATLAB); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 14, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_MATLAB, __pyx_t_5) < 0) __PYX_ERR(27, 14, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERMATLAB); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 13, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_MATLAB, __pyx_t_4) < 0) __PYX_ERR(27, 13, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":15
+ /* "PETSc/Viewer.pyx":14
* VTK = S_(PETSCVIEWERVTK)
* MATLAB = S_(PETSCVIEWERMATLAB)
* SAWS = S_(PETSCVIEWERSAWS) # <<<<<<<<<<<<<<
*
* class ViewerFormat(object):
*/
- __pyx_t_5 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERSAWS); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 15, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SAWS, __pyx_t_5) < 0) __PYX_ERR(27, 15, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __pyx_f_8petsc4py_5PETSc_S_(PETSCVIEWERSAWS); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 14, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_SAWS, __pyx_t_4) < 0) __PYX_ERR(27, 14, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
/* "PETSc/Viewer.pyx":3
* # --------------------------------------------------------------------
@@ -248378,915 +269387,896 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* SOCKET = S_(PETSCVIEWERSOCKET)
* ASCII = S_(PETSCVIEWERASCII)
*/
- __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_ViewerType, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_ViewerType, __pyx_t_5) < 0) __PYX_ERR(27, 3, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_ViewerType, __pyx_tuple__83, __pyx_t_1, NULL, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_ViewerType, __pyx_t_4) < 0) __PYX_ERR(27, 3, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Viewer.pyx":17
+ /* "PETSc/Viewer.pyx":16
* SAWS = S_(PETSCVIEWERSAWS)
*
* class ViewerFormat(object): # <<<<<<<<<<<<<<
* DEFAULT = PETSC_VIEWER_DEFAULT
* ASCII_MATLAB = PETSC_VIEWER_ASCII_MATLAB
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 17, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 17, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__84); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 16, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_ViewerFormat, __pyx_n_s_ViewerFormat, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 17, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_1 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_tuple__84, __pyx_n_s_ViewerFormat, __pyx_n_s_ViewerFormat, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 16, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Viewer.pyx":18
+ /* "PETSc/Viewer.pyx":17
*
* class ViewerFormat(object):
* DEFAULT = PETSC_VIEWER_DEFAULT # <<<<<<<<<<<<<<
* ASCII_MATLAB = PETSC_VIEWER_ASCII_MATLAB
* ASCII_MATHEMATICA = PETSC_VIEWER_ASCII_MATHEMATICA
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DEFAULT); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 18, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_DEFAULT, __pyx_t_5) < 0) __PYX_ERR(27, 18, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DEFAULT); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 17, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_DEFAULT, __pyx_t_4) < 0) __PYX_ERR(27, 17, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":19
+ /* "PETSc/Viewer.pyx":18
* class ViewerFormat(object):
* DEFAULT = PETSC_VIEWER_DEFAULT
* ASCII_MATLAB = PETSC_VIEWER_ASCII_MATLAB # <<<<<<<<<<<<<<
* ASCII_MATHEMATICA = PETSC_VIEWER_ASCII_MATHEMATICA
* ASCII_IMPL = PETSC_VIEWER_ASCII_IMPL
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_MATLAB); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 19, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_MATLAB, __pyx_t_5) < 0) __PYX_ERR(27, 19, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_MATLAB); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 18, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_MATLAB, __pyx_t_4) < 0) __PYX_ERR(27, 18, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":20
+ /* "PETSc/Viewer.pyx":19
* DEFAULT = PETSC_VIEWER_DEFAULT
* ASCII_MATLAB = PETSC_VIEWER_ASCII_MATLAB
* ASCII_MATHEMATICA = PETSC_VIEWER_ASCII_MATHEMATICA # <<<<<<<<<<<<<<
* ASCII_IMPL = PETSC_VIEWER_ASCII_IMPL
* ASCII_INFO = PETSC_VIEWER_ASCII_INFO
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_MATHEMATICA); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 20, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_MATHEMATICA, __pyx_t_5) < 0) __PYX_ERR(27, 20, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_MATHEMATICA); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 19, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_MATHEMATICA, __pyx_t_4) < 0) __PYX_ERR(27, 19, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":21
+ /* "PETSc/Viewer.pyx":20
* ASCII_MATLAB = PETSC_VIEWER_ASCII_MATLAB
* ASCII_MATHEMATICA = PETSC_VIEWER_ASCII_MATHEMATICA
* ASCII_IMPL = PETSC_VIEWER_ASCII_IMPL # <<<<<<<<<<<<<<
* ASCII_INFO = PETSC_VIEWER_ASCII_INFO
* ASCII_INFO_DETAIL = PETSC_VIEWER_ASCII_INFO_DETAIL
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_IMPL); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 21, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_IMPL, __pyx_t_5) < 0) __PYX_ERR(27, 21, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_IMPL); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 20, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_IMPL, __pyx_t_4) < 0) __PYX_ERR(27, 20, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":22
+ /* "PETSc/Viewer.pyx":21
* ASCII_MATHEMATICA = PETSC_VIEWER_ASCII_MATHEMATICA
* ASCII_IMPL = PETSC_VIEWER_ASCII_IMPL
* ASCII_INFO = PETSC_VIEWER_ASCII_INFO # <<<<<<<<<<<<<<
* ASCII_INFO_DETAIL = PETSC_VIEWER_ASCII_INFO_DETAIL
* ASCII_COMMON = PETSC_VIEWER_ASCII_COMMON
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_INFO); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 22, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_INFO, __pyx_t_5) < 0) __PYX_ERR(27, 22, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_INFO); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 21, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_INFO, __pyx_t_4) < 0) __PYX_ERR(27, 21, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":23
+ /* "PETSc/Viewer.pyx":22
* ASCII_IMPL = PETSC_VIEWER_ASCII_IMPL
* ASCII_INFO = PETSC_VIEWER_ASCII_INFO
* ASCII_INFO_DETAIL = PETSC_VIEWER_ASCII_INFO_DETAIL # <<<<<<<<<<<<<<
* ASCII_COMMON = PETSC_VIEWER_ASCII_COMMON
* ASCII_SYMMODU = PETSC_VIEWER_ASCII_SYMMODU
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_INFO_DETAIL); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 23, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_INFO_DETAIL, __pyx_t_5) < 0) __PYX_ERR(27, 23, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_INFO_DETAIL); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 22, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_INFO_DETAIL, __pyx_t_4) < 0) __PYX_ERR(27, 22, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":24
+ /* "PETSc/Viewer.pyx":23
* ASCII_INFO = PETSC_VIEWER_ASCII_INFO
* ASCII_INFO_DETAIL = PETSC_VIEWER_ASCII_INFO_DETAIL
* ASCII_COMMON = PETSC_VIEWER_ASCII_COMMON # <<<<<<<<<<<<<<
* ASCII_SYMMODU = PETSC_VIEWER_ASCII_SYMMODU
* ASCII_INDEX = PETSC_VIEWER_ASCII_INDEX
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_COMMON); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 24, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_COMMON, __pyx_t_5) < 0) __PYX_ERR(27, 24, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_COMMON); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 23, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_COMMON, __pyx_t_4) < 0) __PYX_ERR(27, 23, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":25
+ /* "PETSc/Viewer.pyx":24
* ASCII_INFO_DETAIL = PETSC_VIEWER_ASCII_INFO_DETAIL
* ASCII_COMMON = PETSC_VIEWER_ASCII_COMMON
* ASCII_SYMMODU = PETSC_VIEWER_ASCII_SYMMODU # <<<<<<<<<<<<<<
* ASCII_INDEX = PETSC_VIEWER_ASCII_INDEX
* ASCII_DENSE = PETSC_VIEWER_ASCII_DENSE
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_SYMMODU); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 25, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_SYMMODU, __pyx_t_5) < 0) __PYX_ERR(27, 25, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_SYMMODU); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 24, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_SYMMODU, __pyx_t_4) < 0) __PYX_ERR(27, 24, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":26
+ /* "PETSc/Viewer.pyx":25
* ASCII_COMMON = PETSC_VIEWER_ASCII_COMMON
* ASCII_SYMMODU = PETSC_VIEWER_ASCII_SYMMODU
* ASCII_INDEX = PETSC_VIEWER_ASCII_INDEX # <<<<<<<<<<<<<<
* ASCII_DENSE = PETSC_VIEWER_ASCII_DENSE
* ASCII_MATRIXMARKET= PETSC_VIEWER_ASCII_MATRIXMARKET
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_INDEX); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 26, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_INDEX, __pyx_t_5) < 0) __PYX_ERR(27, 26, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_INDEX); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 25, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_INDEX, __pyx_t_4) < 0) __PYX_ERR(27, 25, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":27
+ /* "PETSc/Viewer.pyx":26
* ASCII_SYMMODU = PETSC_VIEWER_ASCII_SYMMODU
* ASCII_INDEX = PETSC_VIEWER_ASCII_INDEX
* ASCII_DENSE = PETSC_VIEWER_ASCII_DENSE # <<<<<<<<<<<<<<
* ASCII_MATRIXMARKET= PETSC_VIEWER_ASCII_MATRIXMARKET
* ASCII_VTK = PETSC_VIEWER_ASCII_VTK
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_DENSE); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 27, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_DENSE, __pyx_t_5) < 0) __PYX_ERR(27, 27, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_DENSE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 26, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_DENSE, __pyx_t_4) < 0) __PYX_ERR(27, 26, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":28
+ /* "PETSc/Viewer.pyx":27
* ASCII_INDEX = PETSC_VIEWER_ASCII_INDEX
* ASCII_DENSE = PETSC_VIEWER_ASCII_DENSE
* ASCII_MATRIXMARKET= PETSC_VIEWER_ASCII_MATRIXMARKET # <<<<<<<<<<<<<<
* ASCII_VTK = PETSC_VIEWER_ASCII_VTK
* ASCII_VTK_CELL = PETSC_VIEWER_ASCII_VTK_CELL
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_MATRIXMARKET); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 28, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_MATRIXMARKET, __pyx_t_5) < 0) __PYX_ERR(27, 28, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_MATRIXMARKET); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 27, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_MATRIXMARKET, __pyx_t_4) < 0) __PYX_ERR(27, 27, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":29
+ /* "PETSc/Viewer.pyx":28
* ASCII_DENSE = PETSC_VIEWER_ASCII_DENSE
* ASCII_MATRIXMARKET= PETSC_VIEWER_ASCII_MATRIXMARKET
* ASCII_VTK = PETSC_VIEWER_ASCII_VTK # <<<<<<<<<<<<<<
* ASCII_VTK_CELL = PETSC_VIEWER_ASCII_VTK_CELL
* ASCII_VTK_COORDS = PETSC_VIEWER_ASCII_VTK_COORDS
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_VTK); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 29, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_VTK, __pyx_t_5) < 0) __PYX_ERR(27, 29, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_VTK); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 28, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_VTK, __pyx_t_4) < 0) __PYX_ERR(27, 28, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":30
+ /* "PETSc/Viewer.pyx":29
* ASCII_MATRIXMARKET= PETSC_VIEWER_ASCII_MATRIXMARKET
* ASCII_VTK = PETSC_VIEWER_ASCII_VTK
* ASCII_VTK_CELL = PETSC_VIEWER_ASCII_VTK_CELL # <<<<<<<<<<<<<<
* ASCII_VTK_COORDS = PETSC_VIEWER_ASCII_VTK_COORDS
* ASCII_PCICE = PETSC_VIEWER_ASCII_PCICE
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_VTK_CELL); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 30, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_VTK_CELL, __pyx_t_5) < 0) __PYX_ERR(27, 30, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_VTK_CELL); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 29, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_VTK_CELL, __pyx_t_4) < 0) __PYX_ERR(27, 29, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":31
+ /* "PETSc/Viewer.pyx":30
* ASCII_VTK = PETSC_VIEWER_ASCII_VTK
* ASCII_VTK_CELL = PETSC_VIEWER_ASCII_VTK_CELL
* ASCII_VTK_COORDS = PETSC_VIEWER_ASCII_VTK_COORDS # <<<<<<<<<<<<<<
* ASCII_PCICE = PETSC_VIEWER_ASCII_PCICE
* ASCII_PYTHON = PETSC_VIEWER_ASCII_PYTHON
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_VTK_COORDS); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 31, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_VTK_COORDS, __pyx_t_5) < 0) __PYX_ERR(27, 31, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_VTK_COORDS); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 30, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_VTK_COORDS, __pyx_t_4) < 0) __PYX_ERR(27, 30, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":32
+ /* "PETSc/Viewer.pyx":31
* ASCII_VTK_CELL = PETSC_VIEWER_ASCII_VTK_CELL
* ASCII_VTK_COORDS = PETSC_VIEWER_ASCII_VTK_COORDS
* ASCII_PCICE = PETSC_VIEWER_ASCII_PCICE # <<<<<<<<<<<<<<
* ASCII_PYTHON = PETSC_VIEWER_ASCII_PYTHON
* ASCII_FACTOR_INFO = PETSC_VIEWER_ASCII_FACTOR_INFO
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_PCICE); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 32, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_PCICE, __pyx_t_5) < 0) __PYX_ERR(27, 32, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_PCICE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 31, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_PCICE, __pyx_t_4) < 0) __PYX_ERR(27, 31, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":33
+ /* "PETSc/Viewer.pyx":32
* ASCII_VTK_COORDS = PETSC_VIEWER_ASCII_VTK_COORDS
* ASCII_PCICE = PETSC_VIEWER_ASCII_PCICE
* ASCII_PYTHON = PETSC_VIEWER_ASCII_PYTHON # <<<<<<<<<<<<<<
* ASCII_FACTOR_INFO = PETSC_VIEWER_ASCII_FACTOR_INFO
* ASCII_LATEX = PETSC_VIEWER_ASCII_LATEX
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_PYTHON); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 33, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_PYTHON, __pyx_t_5) < 0) __PYX_ERR(27, 33, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_PYTHON); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 32, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_PYTHON, __pyx_t_4) < 0) __PYX_ERR(27, 32, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":34
+ /* "PETSc/Viewer.pyx":33
* ASCII_PCICE = PETSC_VIEWER_ASCII_PCICE
* ASCII_PYTHON = PETSC_VIEWER_ASCII_PYTHON
* ASCII_FACTOR_INFO = PETSC_VIEWER_ASCII_FACTOR_INFO # <<<<<<<<<<<<<<
* ASCII_LATEX = PETSC_VIEWER_ASCII_LATEX
* ASCII_XML = PETSC_VIEWER_ASCII_XML
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_FACTOR_INFO); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 34, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_FACTOR_INFO, __pyx_t_5) < 0) __PYX_ERR(27, 34, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_FACTOR_INFO); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 33, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_FACTOR_INFO, __pyx_t_4) < 0) __PYX_ERR(27, 33, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":35
+ /* "PETSc/Viewer.pyx":34
* ASCII_PYTHON = PETSC_VIEWER_ASCII_PYTHON
* ASCII_FACTOR_INFO = PETSC_VIEWER_ASCII_FACTOR_INFO
* ASCII_LATEX = PETSC_VIEWER_ASCII_LATEX # <<<<<<<<<<<<<<
* ASCII_XML = PETSC_VIEWER_ASCII_XML
* DRAW_BASIC = PETSC_VIEWER_DRAW_BASIC
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_LATEX); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 35, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_LATEX, __pyx_t_5) < 0) __PYX_ERR(27, 35, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_LATEX); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 34, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_LATEX, __pyx_t_4) < 0) __PYX_ERR(27, 34, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":36
+ /* "PETSc/Viewer.pyx":35
* ASCII_FACTOR_INFO = PETSC_VIEWER_ASCII_FACTOR_INFO
* ASCII_LATEX = PETSC_VIEWER_ASCII_LATEX
* ASCII_XML = PETSC_VIEWER_ASCII_XML # <<<<<<<<<<<<<<
* DRAW_BASIC = PETSC_VIEWER_DRAW_BASIC
* DRAW_LG = PETSC_VIEWER_DRAW_LG
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_XML); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 36, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_ASCII_XML, __pyx_t_5) < 0) __PYX_ERR(27, 36, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_ASCII_XML); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 35, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_ASCII_XML, __pyx_t_4) < 0) __PYX_ERR(27, 35, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":37
+ /* "PETSc/Viewer.pyx":36
* ASCII_LATEX = PETSC_VIEWER_ASCII_LATEX
* ASCII_XML = PETSC_VIEWER_ASCII_XML
* DRAW_BASIC = PETSC_VIEWER_DRAW_BASIC # <<<<<<<<<<<<<<
* DRAW_LG = PETSC_VIEWER_DRAW_LG
* DRAW_CONTOUR = PETSC_VIEWER_DRAW_CONTOUR
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_BASIC); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 37, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_DRAW_BASIC, __pyx_t_5) < 0) __PYX_ERR(27, 37, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_BASIC); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 36, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_DRAW_BASIC, __pyx_t_4) < 0) __PYX_ERR(27, 36, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":38
+ /* "PETSc/Viewer.pyx":37
* ASCII_XML = PETSC_VIEWER_ASCII_XML
* DRAW_BASIC = PETSC_VIEWER_DRAW_BASIC
* DRAW_LG = PETSC_VIEWER_DRAW_LG # <<<<<<<<<<<<<<
* DRAW_CONTOUR = PETSC_VIEWER_DRAW_CONTOUR
* DRAW_PORTS = PETSC_VIEWER_DRAW_PORTS
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_LG); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 38, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_DRAW_LG, __pyx_t_5) < 0) __PYX_ERR(27, 38, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_LG); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 37, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_DRAW_LG, __pyx_t_4) < 0) __PYX_ERR(27, 37, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":39
+ /* "PETSc/Viewer.pyx":38
* DRAW_BASIC = PETSC_VIEWER_DRAW_BASIC
* DRAW_LG = PETSC_VIEWER_DRAW_LG
* DRAW_CONTOUR = PETSC_VIEWER_DRAW_CONTOUR # <<<<<<<<<<<<<<
* DRAW_PORTS = PETSC_VIEWER_DRAW_PORTS
* VTK_VTS = PETSC_VIEWER_VTK_VTS
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_CONTOUR); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 39, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_DRAW_CONTOUR, __pyx_t_5) < 0) __PYX_ERR(27, 39, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_CONTOUR); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 38, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_DRAW_CONTOUR, __pyx_t_4) < 0) __PYX_ERR(27, 38, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":40
+ /* "PETSc/Viewer.pyx":39
* DRAW_LG = PETSC_VIEWER_DRAW_LG
* DRAW_CONTOUR = PETSC_VIEWER_DRAW_CONTOUR
* DRAW_PORTS = PETSC_VIEWER_DRAW_PORTS # <<<<<<<<<<<<<<
* VTK_VTS = PETSC_VIEWER_VTK_VTS
* VTK_VTR = PETSC_VIEWER_VTK_VTR
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_PORTS); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 40, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_DRAW_PORTS, __pyx_t_5) < 0) __PYX_ERR(27, 40, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_DRAW_PORTS); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 39, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_DRAW_PORTS, __pyx_t_4) < 0) __PYX_ERR(27, 39, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":41
+ /* "PETSc/Viewer.pyx":40
* DRAW_CONTOUR = PETSC_VIEWER_DRAW_CONTOUR
* DRAW_PORTS = PETSC_VIEWER_DRAW_PORTS
* VTK_VTS = PETSC_VIEWER_VTK_VTS # <<<<<<<<<<<<<<
* VTK_VTR = PETSC_VIEWER_VTK_VTR
* VTK_VTU = PETSC_VIEWER_VTK_VTU
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_VTK_VTS); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 41, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_VTK_VTS, __pyx_t_5) < 0) __PYX_ERR(27, 41, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_VTK_VTS); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 40, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_VTK_VTS, __pyx_t_4) < 0) __PYX_ERR(27, 40, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":42
+ /* "PETSc/Viewer.pyx":41
* DRAW_PORTS = PETSC_VIEWER_DRAW_PORTS
* VTK_VTS = PETSC_VIEWER_VTK_VTS
* VTK_VTR = PETSC_VIEWER_VTK_VTR # <<<<<<<<<<<<<<
* VTK_VTU = PETSC_VIEWER_VTK_VTU
* BINARY_MATLAB = PETSC_VIEWER_BINARY_MATLAB
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_VTK_VTR); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 42, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_VTK_VTR, __pyx_t_5) < 0) __PYX_ERR(27, 42, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_VTK_VTR); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 41, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_VTK_VTR, __pyx_t_4) < 0) __PYX_ERR(27, 41, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":43
+ /* "PETSc/Viewer.pyx":42
* VTK_VTS = PETSC_VIEWER_VTK_VTS
* VTK_VTR = PETSC_VIEWER_VTK_VTR
* VTK_VTU = PETSC_VIEWER_VTK_VTU # <<<<<<<<<<<<<<
* BINARY_MATLAB = PETSC_VIEWER_BINARY_MATLAB
* NATIVE = PETSC_VIEWER_NATIVE
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_VTK_VTU); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 43, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_VTK_VTU, __pyx_t_5) < 0) __PYX_ERR(27, 43, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_VTK_VTU); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 42, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_VTK_VTU, __pyx_t_4) < 0) __PYX_ERR(27, 42, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":44
+ /* "PETSc/Viewer.pyx":43
* VTK_VTR = PETSC_VIEWER_VTK_VTR
* VTK_VTU = PETSC_VIEWER_VTK_VTU
* BINARY_MATLAB = PETSC_VIEWER_BINARY_MATLAB # <<<<<<<<<<<<<<
* NATIVE = PETSC_VIEWER_NATIVE
* HDF5_VIZ = PETSC_VIEWER_HDF5_VIZ
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_BINARY_MATLAB); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 44, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_BINARY_MATLAB, __pyx_t_5) < 0) __PYX_ERR(27, 44, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_BINARY_MATLAB); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 43, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_BINARY_MATLAB, __pyx_t_4) < 0) __PYX_ERR(27, 43, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":45
+ /* "PETSc/Viewer.pyx":44
* VTK_VTU = PETSC_VIEWER_VTK_VTU
* BINARY_MATLAB = PETSC_VIEWER_BINARY_MATLAB
* NATIVE = PETSC_VIEWER_NATIVE # <<<<<<<<<<<<<<
* HDF5_VIZ = PETSC_VIEWER_HDF5_VIZ
* NOFORMAT = PETSC_VIEWER_NOFORMAT
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_NATIVE); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 45, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NATIVE, __pyx_t_5) < 0) __PYX_ERR(27, 45, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_NATIVE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 44, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_NATIVE, __pyx_t_4) < 0) __PYX_ERR(27, 44, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":46
+ /* "PETSc/Viewer.pyx":45
* BINARY_MATLAB = PETSC_VIEWER_BINARY_MATLAB
* NATIVE = PETSC_VIEWER_NATIVE
* HDF5_VIZ = PETSC_VIEWER_HDF5_VIZ # <<<<<<<<<<<<<<
* NOFORMAT = PETSC_VIEWER_NOFORMAT
*
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_HDF5_VIZ); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 46, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_HDF5_VIZ, __pyx_t_5) < 0) __PYX_ERR(27, 46, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_HDF5_VIZ); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 45, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_HDF5_VIZ, __pyx_t_4) < 0) __PYX_ERR(27, 45, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":47
+ /* "PETSc/Viewer.pyx":46
* NATIVE = PETSC_VIEWER_NATIVE
* HDF5_VIZ = PETSC_VIEWER_HDF5_VIZ
* NOFORMAT = PETSC_VIEWER_NOFORMAT # <<<<<<<<<<<<<<
*
* class FileMode(object):
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_NOFORMAT); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 47, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_NOFORMAT, __pyx_t_5) < 0) __PYX_ERR(27, 47, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscViewerFormat(PETSC_VIEWER_NOFORMAT); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 46, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_NOFORMAT, __pyx_t_4) < 0) __PYX_ERR(27, 46, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":17
+ /* "PETSc/Viewer.pyx":16
* SAWS = S_(PETSCVIEWERSAWS)
*
* class ViewerFormat(object): # <<<<<<<<<<<<<<
* DEFAULT = PETSC_VIEWER_DEFAULT
* ASCII_MATLAB = PETSC_VIEWER_ASCII_MATLAB
*/
- __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_ViewerFormat, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 17, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_ViewerFormat, __pyx_t_5) < 0) __PYX_ERR(27, 17, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_ViewerFormat, __pyx_tuple__84, __pyx_t_1, NULL, 0, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 16, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_ViewerFormat, __pyx_t_4) < 0) __PYX_ERR(27, 16, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Viewer.pyx":49
+ /* "PETSc/Viewer.pyx":48
* NOFORMAT = PETSC_VIEWER_NOFORMAT
*
* class FileMode(object): # <<<<<<<<<<<<<<
* # native
* READ = PETSC_FILE_MODE_READ
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 49, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 49, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__85); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 48, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_FileMode, __pyx_n_s_FileMode, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 49, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_1 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_tuple__85, __pyx_n_s_FileMode, __pyx_n_s_FileMode, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 48, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Viewer.pyx":51
+ /* "PETSc/Viewer.pyx":50
* class FileMode(object):
* # native
* READ = PETSC_FILE_MODE_READ # <<<<<<<<<<<<<<
* WRITE = PETSC_FILE_MODE_WRITE
* APPEND = PETSC_FILE_MODE_APPEND
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_READ); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 51, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_READ, __pyx_t_5) < 0) __PYX_ERR(27, 51, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_READ); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 50, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_READ, __pyx_t_4) < 0) __PYX_ERR(27, 50, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":52
+ /* "PETSc/Viewer.pyx":51
* # native
* READ = PETSC_FILE_MODE_READ
* WRITE = PETSC_FILE_MODE_WRITE # <<<<<<<<<<<<<<
* APPEND = PETSC_FILE_MODE_APPEND
* UPDATE = PETSC_FILE_MODE_UPDATE
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_WRITE); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 52, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_WRITE, __pyx_t_5) < 0) __PYX_ERR(27, 52, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_WRITE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 51, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_WRITE, __pyx_t_4) < 0) __PYX_ERR(27, 51, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":53
+ /* "PETSc/Viewer.pyx":52
* READ = PETSC_FILE_MODE_READ
* WRITE = PETSC_FILE_MODE_WRITE
* APPEND = PETSC_FILE_MODE_APPEND # <<<<<<<<<<<<<<
* UPDATE = PETSC_FILE_MODE_UPDATE
* APPEND_UPDATE = PETSC_FILE_MODE_APPEND_UPDATE
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_APPEND); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 53, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_APPEND, __pyx_t_5) < 0) __PYX_ERR(27, 53, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_APPEND); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 52, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_APPEND, __pyx_t_4) < 0) __PYX_ERR(27, 52, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":54
+ /* "PETSc/Viewer.pyx":53
* WRITE = PETSC_FILE_MODE_WRITE
* APPEND = PETSC_FILE_MODE_APPEND
* UPDATE = PETSC_FILE_MODE_UPDATE # <<<<<<<<<<<<<<
* APPEND_UPDATE = PETSC_FILE_MODE_APPEND_UPDATE
* # aliases
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_UPDATE); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 54, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_UPDATE, __pyx_t_5) < 0) __PYX_ERR(27, 54, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_UPDATE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 53, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_UPDATE, __pyx_t_4) < 0) __PYX_ERR(27, 53, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":55
+ /* "PETSc/Viewer.pyx":54
* APPEND = PETSC_FILE_MODE_APPEND
* UPDATE = PETSC_FILE_MODE_UPDATE
* APPEND_UPDATE = PETSC_FILE_MODE_APPEND_UPDATE # <<<<<<<<<<<<<<
* # aliases
* R, W, A, U = READ, WRITE, APPEND, UPDATE
*/
- __pyx_t_5 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_APPEND_UPDATE); if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 55, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_5);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_APPEND_UPDATE, __pyx_t_5) < 0) __PYX_ERR(27, 55, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+ __pyx_t_4 = __Pyx_PyInt_From_PetscFileMode(FILE_MODE_APPEND_UPDATE); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 54, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_APPEND_UPDATE, __pyx_t_4) < 0) __PYX_ERR(27, 54, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- /* "PETSc/Viewer.pyx":57
+ /* "PETSc/Viewer.pyx":56
* APPEND_UPDATE = PETSC_FILE_MODE_APPEND_UPDATE
* # aliases
* R, W, A, U = READ, WRITE, APPEND, UPDATE # <<<<<<<<<<<<<<
* AU = UA = APPEND_UPDATE
*
*/
- __pyx_t_5 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_READ);
+ __pyx_t_4 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_READ);
+ if (unlikely(!__pyx_t_4)) {
+ PyErr_Clear();
+ __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_READ);
+ }
+ if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 56, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_5 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_WRITE);
if (unlikely(!__pyx_t_5)) {
PyErr_Clear();
- __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_READ);
+ __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_WRITE);
}
- if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 57, __pyx_L1_error)
+ if (unlikely(!__pyx_t_5)) __PYX_ERR(27, 56, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
- __pyx_t_6 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_WRITE);
+ __pyx_t_6 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_APPEND);
if (unlikely(!__pyx_t_6)) {
PyErr_Clear();
- __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_WRITE);
+ __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_APPEND);
}
- if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 57, __pyx_L1_error)
+ if (unlikely(!__pyx_t_6)) __PYX_ERR(27, 56, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
- __pyx_t_7 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_APPEND);
+ __pyx_t_7 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_UPDATE);
if (unlikely(!__pyx_t_7)) {
PyErr_Clear();
- __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_APPEND);
+ __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_UPDATE);
}
- if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 57, __pyx_L1_error)
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 56, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
- __pyx_t_8 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_UPDATE);
- if (unlikely(!__pyx_t_8)) {
- PyErr_Clear();
- __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_UPDATE);
- }
- if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 57, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_R, __pyx_t_5) < 0) __PYX_ERR(27, 57, __pyx_L1_error)
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_R, __pyx_t_4) < 0) __PYX_ERR(27, 56, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_W, __pyx_t_5) < 0) __PYX_ERR(27, 56, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_W, __pyx_t_6) < 0) __PYX_ERR(27, 57, __pyx_L1_error)
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_A, __pyx_t_6) < 0) __PYX_ERR(27, 56, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_A, __pyx_t_7) < 0) __PYX_ERR(27, 57, __pyx_L1_error)
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_U, __pyx_t_7) < 0) __PYX_ERR(27, 56, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_U, __pyx_t_8) < 0) __PYX_ERR(27, 57, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- /* "PETSc/Viewer.pyx":58
+ /* "PETSc/Viewer.pyx":57
* # aliases
* R, W, A, U = READ, WRITE, APPEND, UPDATE
* AU = UA = APPEND_UPDATE # <<<<<<<<<<<<<<
*
* class DrawSize(object):
*/
- __pyx_t_8 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_APPEND_UPDATE);
- if (unlikely(!__pyx_t_8)) {
+ __pyx_t_7 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_APPEND_UPDATE);
+ if (unlikely(!__pyx_t_7)) {
PyErr_Clear();
- __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_APPEND_UPDATE);
+ __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_APPEND_UPDATE);
}
- if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 58, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_AU, __pyx_t_8) < 0) __PYX_ERR(27, 58, __pyx_L1_error)
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_UA, __pyx_t_8) < 0) __PYX_ERR(27, 58, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 57, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_AU, __pyx_t_7) < 0) __PYX_ERR(27, 57, __pyx_L1_error)
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_UA, __pyx_t_7) < 0) __PYX_ERR(27, 57, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":49
+ /* "PETSc/Viewer.pyx":48
* NOFORMAT = PETSC_VIEWER_NOFORMAT
*
* class FileMode(object): # <<<<<<<<<<<<<<
* # native
* READ = PETSC_FILE_MODE_READ
*/
- __pyx_t_8 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_FileMode, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 49, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_FileMode, __pyx_t_8) < 0) __PYX_ERR(27, 49, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_7 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_FileMode, __pyx_tuple__85, __pyx_t_1, NULL, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 48, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_FileMode, __pyx_t_7) < 0) __PYX_ERR(27, 48, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Viewer.pyx":60
+ /* "PETSc/Viewer.pyx":59
* AU = UA = APPEND_UPDATE
*
* class DrawSize(object): # <<<<<<<<<<<<<<
* # native
* FULL_SIZE = PETSC_DRAW_FULL_SIZE
*/
- __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 60, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object);
- __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 60, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__86); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 59, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_3);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_t_1, __pyx_n_s_DrawSize, __pyx_n_s_DrawSize, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(27, 60, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_1 = __Pyx_Py3MetaclassPrepare(__pyx_t_3, __pyx_tuple__86, __pyx_n_s_DrawSize, __pyx_n_s_DrawSize, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 59, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Viewer.pyx":62
+ /* "PETSc/Viewer.pyx":61
* class DrawSize(object):
* # native
* FULL_SIZE = PETSC_DRAW_FULL_SIZE # <<<<<<<<<<<<<<
* HALF_SIZE = PETSC_DRAW_HALF_SIZE
* THIRD_SIZE = PETSC_DRAW_THIRD_SIZE
*/
- __pyx_t_8 = __Pyx_PyInt_From_int(PETSC_DRAW_FULL_SIZE); if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 62, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_FULL_SIZE, __pyx_t_8) < 0) __PYX_ERR(27, 62, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __Pyx_PyInt_From_int(PETSC_DRAW_FULL_SIZE); if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 61, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_FULL_SIZE, __pyx_t_7) < 0) __PYX_ERR(27, 61, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":63
+ /* "PETSc/Viewer.pyx":62
* # native
* FULL_SIZE = PETSC_DRAW_FULL_SIZE
* HALF_SIZE = PETSC_DRAW_HALF_SIZE # <<<<<<<<<<<<<<
* THIRD_SIZE = PETSC_DRAW_THIRD_SIZE
* QUARTER_SIZE = PETSC_DRAW_QUARTER_SIZE
*/
- __pyx_t_8 = __Pyx_PyInt_From_int(PETSC_DRAW_HALF_SIZE); if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 63, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_HALF_SIZE, __pyx_t_8) < 0) __PYX_ERR(27, 63, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __Pyx_PyInt_From_int(PETSC_DRAW_HALF_SIZE); if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 62, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_HALF_SIZE, __pyx_t_7) < 0) __PYX_ERR(27, 62, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":64
+ /* "PETSc/Viewer.pyx":63
* FULL_SIZE = PETSC_DRAW_FULL_SIZE
* HALF_SIZE = PETSC_DRAW_HALF_SIZE
* THIRD_SIZE = PETSC_DRAW_THIRD_SIZE # <<<<<<<<<<<<<<
* QUARTER_SIZE = PETSC_DRAW_QUARTER_SIZE
* # aliases
*/
- __pyx_t_8 = __Pyx_PyInt_From_int(PETSC_DRAW_THIRD_SIZE); if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 64, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_THIRD_SIZE, __pyx_t_8) < 0) __PYX_ERR(27, 64, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __Pyx_PyInt_From_int(PETSC_DRAW_THIRD_SIZE); if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 63, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_THIRD_SIZE, __pyx_t_7) < 0) __PYX_ERR(27, 63, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":65
+ /* "PETSc/Viewer.pyx":64
* HALF_SIZE = PETSC_DRAW_HALF_SIZE
* THIRD_SIZE = PETSC_DRAW_THIRD_SIZE
* QUARTER_SIZE = PETSC_DRAW_QUARTER_SIZE # <<<<<<<<<<<<<<
* # aliases
* FULL = FULL_SIZE
*/
- __pyx_t_8 = __Pyx_PyInt_From_int(PETSC_DRAW_QUARTER_SIZE); if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 65, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_QUARTER_SIZE, __pyx_t_8) < 0) __PYX_ERR(27, 65, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __Pyx_PyInt_From_int(PETSC_DRAW_QUARTER_SIZE); if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 64, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_QUARTER_SIZE, __pyx_t_7) < 0) __PYX_ERR(27, 64, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":67
+ /* "PETSc/Viewer.pyx":66
* QUARTER_SIZE = PETSC_DRAW_QUARTER_SIZE
* # aliases
* FULL = FULL_SIZE # <<<<<<<<<<<<<<
* HALF = HALF_SIZE
* THIRD = THIRD_SIZE
*/
- __pyx_t_8 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_FULL_SIZE);
- if (unlikely(!__pyx_t_8)) {
+ __pyx_t_7 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_FULL_SIZE);
+ if (unlikely(!__pyx_t_7)) {
PyErr_Clear();
- __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_FULL_SIZE);
+ __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_FULL_SIZE);
}
- if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 67, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_FULL, __pyx_t_8) < 0) __PYX_ERR(27, 67, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 66, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_FULL, __pyx_t_7) < 0) __PYX_ERR(27, 66, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":68
+ /* "PETSc/Viewer.pyx":67
* # aliases
* FULL = FULL_SIZE
* HALF = HALF_SIZE # <<<<<<<<<<<<<<
* THIRD = THIRD_SIZE
* QUARTER = QUARTER_SIZE
*/
- __pyx_t_8 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_HALF_SIZE);
- if (unlikely(!__pyx_t_8)) {
+ __pyx_t_7 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_HALF_SIZE);
+ if (unlikely(!__pyx_t_7)) {
PyErr_Clear();
- __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_HALF_SIZE);
+ __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_HALF_SIZE);
}
- if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 68, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_HALF, __pyx_t_8) < 0) __PYX_ERR(27, 68, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 67, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_HALF, __pyx_t_7) < 0) __PYX_ERR(27, 67, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":69
+ /* "PETSc/Viewer.pyx":68
* FULL = FULL_SIZE
* HALF = HALF_SIZE
* THIRD = THIRD_SIZE # <<<<<<<<<<<<<<
* QUARTER = QUARTER_SIZE
*
*/
- __pyx_t_8 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_THIRD_SIZE);
- if (unlikely(!__pyx_t_8)) {
+ __pyx_t_7 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_THIRD_SIZE);
+ if (unlikely(!__pyx_t_7)) {
PyErr_Clear();
- __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_THIRD_SIZE);
+ __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_THIRD_SIZE);
}
- if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 69, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_THIRD, __pyx_t_8) < 0) __PYX_ERR(27, 69, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 68, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_THIRD, __pyx_t_7) < 0) __PYX_ERR(27, 68, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":70
+ /* "PETSc/Viewer.pyx":69
* HALF = HALF_SIZE
* THIRD = THIRD_SIZE
* QUARTER = QUARTER_SIZE # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- __pyx_t_8 = PyObject_GetItem(__pyx_t_4, __pyx_n_s_QUARTER_SIZE);
- if (unlikely(!__pyx_t_8)) {
+ __pyx_t_7 = PyObject_GetItem(__pyx_t_1, __pyx_n_s_QUARTER_SIZE);
+ if (unlikely(!__pyx_t_7)) {
PyErr_Clear();
- __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_QUARTER_SIZE);
+ __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_QUARTER_SIZE);
}
- if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 70, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_QUARTER, __pyx_t_8) < 0) __PYX_ERR(27, 70, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 69, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_1, __pyx_n_s_QUARTER, __pyx_t_7) < 0) __PYX_ERR(27, 69, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
- /* "PETSc/Viewer.pyx":60
+ /* "PETSc/Viewer.pyx":59
* AU = UA = APPEND_UPDATE
*
* class DrawSize(object): # <<<<<<<<<<<<<<
* # native
* FULL_SIZE = PETSC_DRAW_FULL_SIZE
*/
- __pyx_t_8 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_DrawSize, __pyx_t_1, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(27, 60, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_DrawSize, __pyx_t_8) < 0) __PYX_ERR(27, 60, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_7 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_DrawSize, __pyx_tuple__86, __pyx_t_1, NULL, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(27, 59, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_DrawSize, __pyx_t_7) < 0) __PYX_ERR(27, 59, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- /* "PETSc/Viewer.pyx":76
+ /* "PETSc/Viewer.pyx":75
* cdef class Viewer(Object):
*
* Type = ViewerType # <<<<<<<<<<<<<<
* Format = ViewerFormat
* Mode = FileMode
*/
- __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ViewerType); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 76, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Type, __pyx_t_1) < 0) __PYX_ERR(27, 76, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ViewerType); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 75, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Type, __pyx_t_3) < 0) __PYX_ERR(27, 75, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":77
+ /* "PETSc/Viewer.pyx":76
*
* Type = ViewerType
* Format = ViewerFormat # <<<<<<<<<<<<<<
* Mode = FileMode
* Size = DrawSize
*/
- __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ViewerFormat); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 77, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Format, __pyx_t_1) < 0) __PYX_ERR(27, 77, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ViewerFormat); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 76, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Format, __pyx_t_3) < 0) __PYX_ERR(27, 76, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":78
+ /* "PETSc/Viewer.pyx":77
* Type = ViewerType
* Format = ViewerFormat
* Mode = FileMode # <<<<<<<<<<<<<<
* Size = DrawSize
*
*/
- __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_FileMode); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 78, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Mode, __pyx_t_1) < 0) __PYX_ERR(27, 78, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_FileMode); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 77, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Mode, __pyx_t_3) < 0) __PYX_ERR(27, 77, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":79
+ /* "PETSc/Viewer.pyx":78
* Format = ViewerFormat
* Mode = FileMode
* Size = DrawSize # <<<<<<<<<<<<<<
*
* #
*/
- __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_DrawSize); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 79, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Size, __pyx_t_1) < 0) __PYX_ERR(27, 79, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_DrawSize); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 78, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_Size, __pyx_t_3) < 0) __PYX_ERR(27, 78, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":234
+ /* "PETSc/Viewer.pyx":220
*
* @classmethod
* def STDOUT(cls, comm=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_STDOUT); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 234, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_STDOUT); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 220, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Viewer.pyx":233
+ /* "PETSc/Viewer.pyx":219
* CHKERR( PetscViewerPopFormat(self.vwr) )
*
* @classmethod # <<<<<<<<<<<<<<
* def STDOUT(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 233, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_STDOUT, __pyx_t_3) < 0) __PYX_ERR(27, 234, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 219, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_STDOUT, __pyx_t_1) < 0) __PYX_ERR(27, 220, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":242
+ /* "PETSc/Viewer.pyx":228
*
* @classmethod
* def STDERR(cls, comm=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_STDERR); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 242, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_STDERR); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 228, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Viewer.pyx":241
+ /* "PETSc/Viewer.pyx":227
* return viewer
*
* @classmethod # <<<<<<<<<<<<<<
* def STDERR(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 241, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_STDERR, __pyx_t_1) < 0) __PYX_ERR(27, 242, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 227, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_STDERR, __pyx_t_3) < 0) __PYX_ERR(27, 228, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":250
+ /* "PETSc/Viewer.pyx":236
*
* @classmethod
* def ASCII(cls, name, comm=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef const_char *cname = NULL
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_ASCII); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 250, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_ASCII); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 236, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Viewer.pyx":249
+ /* "PETSc/Viewer.pyx":235
* return viewer
*
* @classmethod # <<<<<<<<<<<<<<
* def ASCII(cls, name, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 249, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_ASCII, __pyx_t_3) < 0) __PYX_ERR(27, 250, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 235, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_ASCII, __pyx_t_1) < 0) __PYX_ERR(27, 236, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":259
+ /* "PETSc/Viewer.pyx":245
*
* @classmethod
* def BINARY(cls, comm=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
*/
- __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_BINARY); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 259, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
+ __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_BINARY); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 245, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
- /* "PETSc/Viewer.pyx":258
+ /* "PETSc/Viewer.pyx":244
* return viewer
*
* @classmethod # <<<<<<<<<<<<<<
* def BINARY(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 258, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_BINARY, __pyx_t_1) < 0) __PYX_ERR(27, 259, __pyx_L1_error)
+ __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 244, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_BINARY, __pyx_t_3) < 0) __PYX_ERR(27, 245, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":267
+ /* "PETSc/Viewer.pyx":253
*
* @classmethod
* def DRAW(cls, comm=None): # <<<<<<<<<<<<<<
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
* cdef Viewer viewer = Viewer()
*/
- __pyx_t_1 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_DRAW); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 267, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_GetNameInClass((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer, __pyx_n_s_DRAW); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 253, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
- /* "PETSc/Viewer.pyx":266
+ /* "PETSc/Viewer.pyx":252
* return viewer
*
* @classmethod # <<<<<<<<<<<<<<
* def DRAW(cls, comm=None):
* cdef MPI_Comm ccomm = def_Comm(comm, PETSC_COMM_DEFAULT)
*/
- __pyx_t_3 = __Pyx_Method_ClassMethod(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(27, 266, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_DRAW, __pyx_t_3) < 0) __PYX_ERR(27, 267, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_Method_ClassMethod(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(27, 252, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Viewer->tp_dict, __pyx_n_s_DRAW, __pyx_t_1) < 0) __PYX_ERR(27, 253, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Viewer);
- /* "PETSc/Viewer.pyx":363
+ /* "PETSc/Viewer.pyx":394
* # --------------------------------------------------------------------
*
* del ViewerType # <<<<<<<<<<<<<<
* del ViewerFormat
* del FileMode
*/
- if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_ViewerType) < 0) __PYX_ERR(27, 363, __pyx_L1_error)
+ if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_ViewerType) < 0) __PYX_ERR(27, 394, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":364
+ /* "PETSc/Viewer.pyx":395
*
* del ViewerType
* del ViewerFormat # <<<<<<<<<<<<<<
* del FileMode
* del DrawSize
*/
- if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_ViewerFormat) < 0) __PYX_ERR(27, 364, __pyx_L1_error)
+ if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_ViewerFormat) < 0) __PYX_ERR(27, 395, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":365
+ /* "PETSc/Viewer.pyx":396
* del ViewerType
* del ViewerFormat
* del FileMode # <<<<<<<<<<<<<<
* del DrawSize
*
*/
- if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_FileMode) < 0) __PYX_ERR(27, 365, __pyx_L1_error)
+ if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_FileMode) < 0) __PYX_ERR(27, 396, __pyx_L1_error)
- /* "PETSc/Viewer.pyx":366
+ /* "PETSc/Viewer.pyx":397
* del ViewerFormat
* del FileMode
* del DrawSize # <<<<<<<<<<<<<<
*
* # --------------------------------------------------------------------
*/
- if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_DrawSize) < 0) __PYX_ERR(27, 366, __pyx_L1_error)
+ if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_DrawSize) < 0) __PYX_ERR(27, 397, __pyx_L1_error)
/* "PETSc/Random.pyx":3
* # --------------------------------------------------------------------
@@ -249295,15 +270285,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* RAND = S_(PETSCRAND)
* RAND48 = S_(PETSCRAND48)
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(28, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_builtin_object);
- __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 3, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__87); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 3, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_3, __pyx_n_s_RandomType, __pyx_n_s_RandomType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(28, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__87, __pyx_n_s_RandomType, __pyx_n_s_RandomType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(28, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/Random.pyx":4
*
@@ -249312,10 +270297,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* RAND48 = S_(PETSCRAND48)
* SPRNG = S_(PETSCSPRNG)
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_S_(PETSCRAND); if (unlikely(!__pyx_t_8)) __PYX_ERR(28, 4, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_RAND, __pyx_t_8) < 0) __PYX_ERR(28, 4, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(PETSCRAND); if (unlikely(!__pyx_t_7)) __PYX_ERR(28, 4, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_RAND, __pyx_t_7) < 0) __PYX_ERR(28, 4, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/Random.pyx":5
* class RandomType(object):
@@ -249324,10 +270309,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* SPRNG = S_(PETSCSPRNG)
* RANDER48 = S_(PETSCRANDER48)
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_S_(PETSCRAND48); if (unlikely(!__pyx_t_8)) __PYX_ERR(28, 5, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_RAND48, __pyx_t_8) < 0) __PYX_ERR(28, 5, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(PETSCRAND48); if (unlikely(!__pyx_t_7)) __PYX_ERR(28, 5, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_RAND48, __pyx_t_7) < 0) __PYX_ERR(28, 5, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/Random.pyx":6
* RAND = S_(PETSCRAND)
@@ -249336,10 +270321,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* RANDER48 = S_(PETSCRANDER48)
*
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_S_(PETSCSPRNG); if (unlikely(!__pyx_t_8)) __PYX_ERR(28, 6, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_SPRNG, __pyx_t_8) < 0) __PYX_ERR(28, 6, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(PETSCSPRNG); if (unlikely(!__pyx_t_7)) __PYX_ERR(28, 6, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_SPRNG, __pyx_t_7) < 0) __PYX_ERR(28, 6, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/Random.pyx":7
* RAND48 = S_(PETSCRAND48)
@@ -249348,10 +270333,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* # --------------------------------------------------------------------
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_S_(PETSCRANDER48); if (unlikely(!__pyx_t_8)) __PYX_ERR(28, 7, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_RANDER48, __pyx_t_8) < 0) __PYX_ERR(28, 7, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(PETSCRANDER48); if (unlikely(!__pyx_t_7)) __PYX_ERR(28, 7, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_RANDER48, __pyx_t_7) < 0) __PYX_ERR(28, 7, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/Random.pyx":3
* # --------------------------------------------------------------------
@@ -249360,13 +270345,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* RAND = S_(PETSCRAND)
* RAND48 = S_(PETSCRAND48)
*/
- __pyx_t_8 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_RandomType, __pyx_t_3, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(28, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_RandomType, __pyx_t_8) < 0) __PYX_ERR(28, 3, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_7 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_RandomType, __pyx_tuple__87, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(28, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_RandomType, __pyx_t_7) < 0) __PYX_ERR(28, 3, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "PETSc/Random.pyx":13
* cdef class Random(Object):
@@ -249375,10 +270359,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* def __cinit__(self):
*/
- __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_RandomType); if (unlikely(!__pyx_t_3)) __PYX_ERR(28, 13, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Random->tp_dict, __pyx_n_s_Type, __pyx_t_3) < 0) __PYX_ERR(28, 13, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_RandomType); if (unlikely(!__pyx_t_1)) __PYX_ERR(28, 13, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_Random->tp_dict, __pyx_n_s_Type, __pyx_t_1) < 0) __PYX_ERR(28, 13, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_Random);
/* "PETSc/Random.pyx":100
@@ -249397,15 +270381,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* GENERAL = S_(ISGENERAL)
* BLOCK = S_(ISBLOCK)
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(29, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_builtin_object);
- __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 3, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__88); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 3, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_3, __pyx_n_s_ISType, __pyx_n_s_ISType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__88, __pyx_n_s_ISType, __pyx_n_s_ISType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(29, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/IS.pyx":4
*
@@ -249414,10 +270393,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* BLOCK = S_(ISBLOCK)
* STRIDE = S_(ISSTRIDE)
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_S_(ISGENERAL); if (unlikely(!__pyx_t_8)) __PYX_ERR(29, 4, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_GENERAL, __pyx_t_8) < 0) __PYX_ERR(29, 4, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(ISGENERAL); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 4, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_GENERAL, __pyx_t_7) < 0) __PYX_ERR(29, 4, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/IS.pyx":5
* class ISType(object):
@@ -249426,10 +270405,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* STRIDE = S_(ISSTRIDE)
*
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_S_(ISBLOCK); if (unlikely(!__pyx_t_8)) __PYX_ERR(29, 5, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_BLOCK, __pyx_t_8) < 0) __PYX_ERR(29, 5, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(ISBLOCK); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 5, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_BLOCK, __pyx_t_7) < 0) __PYX_ERR(29, 5, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/IS.pyx":6
* GENERAL = S_(ISGENERAL)
@@ -249438,10 +270417,10 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* # --------------------------------------------------------------------
*/
- __pyx_t_8 = __pyx_f_8petsc4py_5PETSc_S_(ISSTRIDE); if (unlikely(!__pyx_t_8)) __PYX_ERR(29, 6, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_STRIDE, __pyx_t_8) < 0) __PYX_ERR(29, 6, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(ISSTRIDE); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 6, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_STRIDE, __pyx_t_7) < 0) __PYX_ERR(29, 6, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/IS.pyx":3
* # --------------------------------------------------------------------
@@ -249450,13 +270429,12 @@ PyMODINIT_FUNC PyInit_PETSc(void)
* GENERAL = S_(ISGENERAL)
* BLOCK = S_(ISBLOCK)
*/
- __pyx_t_8 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_ISType, __pyx_t_3, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(29, 3, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_ISType, __pyx_t_8) < 0) __PYX_ERR(29, 3, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
- __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ __pyx_t_7 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_ISType, __pyx_tuple__88, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 3, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_ISType, __pyx_t_7) < 0) __PYX_ERR(29, 3, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
/* "PETSc/IS.pyx":12
* cdef class IS(Object):
@@ -249465,98 +270443,163 @@ PyMODINIT_FUNC PyInit_PETSc(void)
*
* #
*/
- __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ISType); if (unlikely(!__pyx_t_3)) __PYX_ERR(29, 12, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS->tp_dict, __pyx_n_s_Type, __pyx_t_3) < 0) __PYX_ERR(29, 12, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ISType); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 12, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_IS->tp_dict, __pyx_n_s_Type, __pyx_t_1) < 0) __PYX_ERR(29, 12, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_IS);
/* "PETSc/IS.pyx":343
*
*
- * class GLMapType(object): # <<<<<<<<<<<<<<
+ * class GLMapMode(object): # <<<<<<<<<<<<<<
* MASK = PETSC_IS_GTOLM_MASK
* DROP = PETSC_IS_GTOLM_DROP
*/
- __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(29, 343, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- __Pyx_INCREF(__pyx_builtin_object);
- __Pyx_GIVEREF(__pyx_builtin_object);
- PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_builtin_object);
- __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 343, __pyx_L1_error)
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__89); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 343, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
- __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_3, __pyx_n_s_GLMapType, __pyx_n_s_GLMapType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(29, 343, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_4);
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__89, __pyx_n_s_GLMapMode, __pyx_n_s_GLMapMode, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(29, 343, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
/* "PETSc/IS.pyx":344
*
- * class GLMapType(object):
+ * class GLMapMode(object):
* MASK = PETSC_IS_GTOLM_MASK # <<<<<<<<<<<<<<
* DROP = PETSC_IS_GTOLM_DROP
*
*/
- __pyx_t_8 = __Pyx_PyInt_From_ISGlobalToLocalMappingType(IS_GTOLM_MASK); if (unlikely(!__pyx_t_8)) __PYX_ERR(29, 344, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_MASK, __pyx_t_8) < 0) __PYX_ERR(29, 344, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __Pyx_PyInt_From_ISGlobalToLocalMappingMode(IS_GTOLM_MASK); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 344, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_MASK, __pyx_t_7) < 0) __PYX_ERR(29, 344, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/IS.pyx":345
- * class GLMapType(object):
+ * class GLMapMode(object):
* MASK = PETSC_IS_GTOLM_MASK
* DROP = PETSC_IS_GTOLM_DROP # <<<<<<<<<<<<<<
*
*
*/
- __pyx_t_8 = __Pyx_PyInt_From_ISGlobalToLocalMappingType(IS_GTOLM_DROP); if (unlikely(!__pyx_t_8)) __PYX_ERR(29, 345, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyObject_SetItem(__pyx_t_4, __pyx_n_s_DROP, __pyx_t_8) < 0) __PYX_ERR(29, 345, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+ __pyx_t_7 = __Pyx_PyInt_From_ISGlobalToLocalMappingMode(IS_GTOLM_DROP); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 345, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_DROP, __pyx_t_7) < 0) __PYX_ERR(29, 345, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
/* "PETSc/IS.pyx":343
*
*
- * class GLMapType(object): # <<<<<<<<<<<<<<
+ * class GLMapMode(object): # <<<<<<<<<<<<<<
* MASK = PETSC_IS_GTOLM_MASK
* DROP = PETSC_IS_GTOLM_DROP
*/
- __pyx_t_8 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_GLMapType, __pyx_t_3, __pyx_t_4, NULL, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(29, 343, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_8);
- if (PyDict_SetItem(__pyx_d, __pyx_n_s_GLMapType, __pyx_t_8) < 0) __PYX_ERR(29, 343, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
- __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+ __pyx_t_7 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_GLMapMode, __pyx_tuple__89, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 343, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_GLMapMode, __pyx_t_7) < 0) __PYX_ERR(29, 343, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+ __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+
+ /* "PETSc/IS.pyx":348
+ *
+ *
+ * class LGMapType(object): # <<<<<<<<<<<<<<
+ * BASIC = S_(ISLOCALTOGLOBALMAPPINGBASIC)
+ * HASH = S_(ISLOCALTOGLOBALMAPPINGHASH)
+ */
+ __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_tuple__90); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 348, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_tuple__90, __pyx_n_s_LGMapType, __pyx_n_s_LGMapType, (PyObject *) NULL, __pyx_n_s_petsc4py_PETSc, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(29, 348, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_3);
+
+ /* "PETSc/IS.pyx":349
+ *
+ * class LGMapType(object):
+ * BASIC = S_(ISLOCALTOGLOBALMAPPINGBASIC) # <<<<<<<<<<<<<<
+ * HASH = S_(ISLOCALTOGLOBALMAPPINGHASH)
+ *
+ */
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(ISLOCALTOGLOBALMAPPINGBASIC); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 349, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_BASIC, __pyx_t_7) < 0) __PYX_ERR(29, 349, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+
+ /* "PETSc/IS.pyx":350
+ * class LGMapType(object):
+ * BASIC = S_(ISLOCALTOGLOBALMAPPINGBASIC)
+ * HASH = S_(ISLOCALTOGLOBALMAPPINGHASH) # <<<<<<<<<<<<<<
+ *
+ *
+ */
+ __pyx_t_7 = __pyx_f_8petsc4py_5PETSc_S_(ISLOCALTOGLOBALMAPPINGHASH); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 350, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_HASH, __pyx_t_7) < 0) __PYX_ERR(29, 350, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+
+ /* "PETSc/IS.pyx":348
+ *
+ *
+ * class LGMapType(object): # <<<<<<<<<<<<<<
+ * BASIC = S_(ISLOCALTOGLOBALMAPPINGBASIC)
+ * HASH = S_(ISLOCALTOGLOBALMAPPINGHASH)
+ */
+ __pyx_t_7 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_LGMapType, __pyx_tuple__90, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(29, 348, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_7);
+ if (PyDict_SetItem(__pyx_d, __pyx_n_s_LGMapType, __pyx_t_7) < 0) __PYX_ERR(29, 348, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
- /* "PETSc/IS.pyx":352
+ /* "PETSc/IS.pyx":357
* cdef class LGMap(Object):
*
- * MapType = GLMapType # <<<<<<<<<<<<<<
+ * MapMode = GLMapMode # <<<<<<<<<<<<<<
*
+ * Type = LGMapType
+ */
+ __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_GLMapMode); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 357, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap->tp_dict, __pyx_n_s_MapMode, __pyx_t_1) < 0) __PYX_ERR(29, 357, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+ PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_LGMap);
+
+ /* "PETSc/IS.pyx":359
+ * MapMode = GLMapMode
+ *
+ * Type = LGMapType # <<<<<<<<<<<<<<
* #
+ *
*/
- __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_GLMapType); if (unlikely(!__pyx_t_3)) __PYX_ERR(29, 352, __pyx_L1_error)
- __Pyx_GOTREF(__pyx_t_3);
- if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap->tp_dict, __pyx_n_s_MapType, __pyx_t_3) < 0) __PYX_ERR(29, 352, __pyx_L1_error)
- __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
+ __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_LGMapType); if (unlikely(!__pyx_t_1)) __PYX_ERR(29, 359, __pyx_L1_error)
+ __Pyx_GOTREF(__pyx_t_1);
+ if (PyDict_SetItem((PyObject *)__pyx_ptype_8petsc4py_5PETSc_LGMap->tp_dict, __pyx_n_s_Type, __pyx_t_1) < 0) __PYX_ERR(29, 359, __pyx_L1_error)
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
PyType_Modified(__pyx_ptype_8petsc4py_5PETSc_LGMap);
- /* "PETSc/IS.pyx":556
+ /* "PETSc/IS.pyx":570
* # --------------------------------------------------------------------
*
* del ISType # <<<<<<<<<<<<<<
- * del GLMapType
- *
+ * del GLMapMode
+ * del LGMapType
*/
- if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_ISType) < 0) __PYX_ERR(29, 556, __pyx_L1_error)
+ if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_ISType) < 0) __PYX_ERR(29, 570, __pyx_L1_error)
- /* "PETSc/IS.pyx":557
+ /* "PETSc/IS.pyx":571
*
* del ISType
- * del GLMapType # <<<<<<<<<<<<<<
- *
+ * del GLMapMode # <<<<<<<<<<<<<<
+ * del LGMapType
+ * # --------------------------------------------------------------------
+ */
+ if (__Pyx_PyObject_DelAttrStr(__pyx_m, __pyx_n_s_GLMapMode) < 0) __PYX_ERR(29, 571, __pyx_L1_error)
+
+ /* "PETSc/IS.pyx":572
+ * del ISType
+ * del GLMapMode
+ * del LGMapType # <<<<<<<<<<<<<<